:root{--ink:#15213c;--muted:#5d6a7e;--red:#d8193e;--red-dark:#b51131;--pale:#fff0f3;--line:#e4e8ef;--paper:#fff;--blue:#edf6fc;--radius:14px;color-scheme:light;font-family:"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:#f8fafc;color:var(--ink);font-size:16px;line-height:1.75;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}button{font:inherit;cursor:pointer;color:inherit}img,svg{max-width:100%}img{display:block;height:auto}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,3vw,40px);line-height:1.5;letter-spacing:.015em;margin-bottom:16px}h2{font-size:23px;line-height:1.5;margin-bottom:18px}h3{font-size:18px;line-height:1.6;margin-bottom:10px}p{margin-bottom:16px}[hidden]{display:none!important}:focus-visible{outline:3px solid #227fae;outline-offset:4px}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:8px;left:8px;background:white;padding:12px;z-index:99}html{scroll-padding-top:84px}html:focus-within{scroll-behavior:smooth}
.site-header{background:#ffffffed;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{max-width:1440px;margin:auto;min-height:78px;padding:12px 36px;display:flex;align-items:center;gap:24px}.brand{color:var(--red);font-weight:900;font-style:italic;font-size:32px;letter-spacing:-1.5px;white-space:nowrap;line-height:1.2}.brand-mark{font-style:normal;font-size:21px;letter-spacing:-4px;margin-right:9px}.brand-tagline{font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:22px;max-width:185px;line-height:1.5}.site-nav{flex-shrink:0;display:flex;gap:32px;margin-left:auto;font-size:14px;font-weight:700;align-self:stretch;align-items:center}.site-nav a{white-space:nowrap;flex-shrink:0;padding:12px 0;border-bottom:3px solid transparent}.site-nav a[aria-current]{color:var(--red);border-color:var(--red)}.menu-toggle{display:none;margin-left:auto;border:1px solid var(--line);border-radius:8px;background:white;padding:8px 12px;font-size:14px;font-weight:700}
.brand-hero{height:340px;background:#eff6fb;position:relative;overflow:hidden;border-bottom:1px solid #dce8ef}.hero-art{position:absolute;right:0;top:0;width: min(100%,1100px);height:100%;object-fit:cover;object-position:76% 5%}.brand-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f4f9fff5 0%,#f4f9ffdd 22%,#f4f9ff70 40%,transparent 60%)}.hero-inner{max-width:1368px;padding:62px 36px;margin:auto;position:relative;z-index:1;pointer-events:none}.eyebrow{font-size:11px;letter-spacing:.17em;color:var(--red);font-weight:800;margin-bottom:16px}.hero-title{font-size:clamp(30px,3.1vw,44px);font-weight:900;line-height:1.55;letter-spacing:.025em;max-width:560px;text-wrap:balance;margin-bottom:16px}.hero-description{font-size:16px;max-width:440px}.hero-compact{height:165px}.hero-compact .hero-inner{padding-top:30px}.hero-compact .hero-title{font-size:27px;max-width:700px;margin-bottom:6px}.hero-compact .hero-art{width:660px;object-position:75% 5%}.hero-compact .eyebrow{margin-bottom:8px}.hero-compact .hero-description{font-size:14px;max-width:560px}
.reading-layout{max-width:1440px;padding:32px 36px 70px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:30px;align-items:start}.site-main{min-width:0}.site-sidebar{display:grid;gap:20px;padding-top:3px}.explore-block{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px}.explore-block h2{font-size:18px;margin-bottom:18px;padding-left:12px;border-left:4px solid var(--red)}.explore-block .section-heading{gap:8px;margin-bottom:14px}.explore-block .section-heading h2{margin-bottom:0}.explore-block .section-heading a{font-size:12px;white-space:nowrap}.explore-themes{display:flex;flex-wrap:wrap;gap:9px}.explore-themes>a{flex:0 0 auto;max-width:100%;background:var(--blue);border-radius:8px;padding:8px 11px;font-size:13px;color:#255674;display:flex;gap:8px;align-items:center}.explore-themes>a>span{min-width:0}.explore-themes small{font-size:10px;white-space:nowrap;color:#52768c}.explore-companies{display:grid}.explore-companies>a{display:grid;grid-template-columns:42px 1fr 8px;gap:7px;align-items:baseline;font-size:13px;padding:13px 0;border-bottom:1px solid var(--line)}.explore-companies>a:last-child{border:0;padding-bottom:0}.explore-companies .company-code{font-size:12px}.explore-companies>a>span:last-child{color:var(--red)}.x-card{background:linear-gradient(150deg,#fff,#fff5f7)}.x-card h2{border:0;padding:0;margin:10px 0;font-size:18px}.x-mark{font-size:28px;line-height:1}.x-card p{font-size:13px;color:var(--muted)}.x-link{background:var(--ink);color:white;padding:10px 13px;border-radius:9px;display:block;font-size:13px;text-align:center}.x-link:hover{color:white;background:var(--red-dark)}
.breadcrumb{display:flex;flex-wrap:wrap;gap:9px;font-size:12px;color:var(--muted);margin-bottom:22px;line-height:1.8}.breadcrumb a{color:var(--red)}.breadcrumb span:last-child{max-width:100%}.page-intro{margin-bottom:30px}.page-intro p{color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:18px;flex-wrap:wrap}.section-heading h2,.section-heading h3{margin-bottom:0}.section-heading h2:before{content:"";display:inline-block;width:5px;height:22px;border-radius:3px;background:var(--red);margin-right:12px;vertical-align:-3px}.section-heading>a{font-size:13px;font-weight:700;color:var(--red)}.section-heading>span{font-size:13px}.web-section{margin-bottom:38px}.subtle,.summary-help,.featured-notice{font-size:12px;color:var(--muted);line-height:1.8}.company-code{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600}.editorial-label{background:var(--pale);color:var(--red);border:1px solid #f5cbd4;padding:3px 12px;border-radius:20px;font-size:12px}.surface{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.article-card{min-width:0;background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .16s}.article-card:hover{box-shadow:0 6px 24px #2035560c}.card-image{display:block;aspect-ratio:16/9;background:#f1f4f7;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.thumbnail-fallback{height:100%;background:linear-gradient(140deg,#fff0f2,#f4f7fb);padding:18px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;overflow:hidden}.thumbnail-fallback>span{font-size:15px;color:var(--red);font-weight:900;font-style:italic}.thumbnail-fallback strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.65}.card-copy{padding:17px}.card-copy time{font-size:11px;color:var(--muted)}.card-copy h3{font-size:15px;line-height:1.8;margin:8px 0 10px}.card-summary{font-size:12px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-company{font-size:11px;line-height:1.6;font-weight:700;margin:12px 0}.theme-pills{display:flex;flex-wrap:wrap;gap:7px}.theme-pills a{font-size:11px;padding:4px 9px;background:var(--blue);border-radius:20px;color:#286589;line-height:1.6}.featured-card{display:grid;grid-template-columns:38% minmax(0,1fr)}.featured-card .card-image{height:100%;aspect-ratio:auto;min-height:260px}.featured-card .card-copy{padding:26px}.featured-card .card-copy h3{font-size:23px;line-height:1.7}.featured-card .card-summary{font-size:14px;-webkit-line-clamp:4}.featured-card .thumbnail-fallback{padding:28px}.featured-card .thumbnail-fallback strong{font-size:22px;-webkit-line-clamp:5}.featured-notice{padding:12px 4px}.featured-ratings{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.featured-ratings .section-heading h2{font-size:19px}.discovery-footer{background:var(--pale);padding:28px;border-radius:var(--radius)}.discovery-footer h2{font-size:22px}.discovery-footer p{font-size:14px}.primary-link{display:inline-block;background:var(--red);color:white;border-radius:8px;padding:10px 18px;font-weight:700;font-size:14px}.primary-link:hover{background:var(--red-dark);color:white}
.company-header{margin-bottom:30px}.company-description{font-size:16px;line-height:1.9}.classifications{display:flex;gap:8px;flex-wrap:wrap}.classifications>span{background:white;border:1px solid var(--line);border-radius:20px;padding:4px 12px;font-size:12px}.article-entry{margin-top:20px;border:1px solid #f2c9d2;border-radius:10px;padding:14px 18px;background:#fff6f8;display:grid;grid-template-columns:auto 1fr;gap:6px 16px;align-items:baseline}.article-entry>span{color:var(--red);font-size:12px;font-weight:800}.article-entry>a{font-size:14px;font-weight:700;line-height:1.7}.article-entry .entry-all{grid-column:2;font-size:12px;color:var(--red);font-weight:500}.target-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 10px}.target-card{background:linear-gradient(125deg,#fff1f4,#fff8f9);border:1px solid #fae0e6;border-radius:10px;padding:20px 12px;text-align:center;min-width:0}.target-card h3{font-size:12px;line-height:1.7;margin-bottom:7px}.target-card>strong{display:block;font-size:28px;line-height:1.4;font-variant-numeric:tabular-nums;font-weight:850}.target-card small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.summary-help{margin-bottom:24px}.rating-main{display:grid;gap:20px}.chart-panel{padding:22px}.chart-panel h3{font-size:18px}.unit-label{font-size:12px;color:var(--muted)}.target-chart{width:100%;height:auto;display:block;overflow:visible}.chart-scroll{min-width:0}.grid-line{stroke:#e4e9ef;stroke-width:1}.axis-label{font-size:12px;fill:#5d6a7e}.chart-point{cursor:help;stroke:white;stroke-width:1}.chart-point:focus{stroke:var(--ink);stroke-width:3;outline:0}.chart-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.chart-legend button{background:white;border:1px solid var(--line);border-radius:6px;padding:6px 9px;font-size:11px;display:flex;align-items:center;gap:5px}.chart-legend button[aria-pressed="false"]{opacity:.45;background:#eee}.legend-color{width:8px;height:8px}.chart-help{font-size:11px;color:var(--muted);margin-top:12px;margin-bottom:0}.rating-section{margin-bottom:30px}.rating-row{padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.rating-row-heading{display:flex;gap:16px;align-items:baseline;margin-bottom:9px;flex-wrap:wrap}.rating-row-heading time{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.rating-values{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;font-size:14px}.rating-values>div{display:flex;gap:12px;flex-wrap:wrap}.value-label{font-size:11px;color:var(--muted);min-width:48px}.value-arrow{color:#8c98a8;margin:0 5px}.pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.pill{font-size:10px;line-height:1.6;border-radius:4px;background:#f0f2f6;color:#69768b;padding:3px 7px}.rating-upgrade,.target-raise{background:#fff0f3;color:#b42043}.rating-downgrade,.target-lower{background:#eff4ff;color:#365baa}.coverage{font-size:12px;color:var(--red);background:var(--pale);padding:3px 10px;border-radius:20px}.rating-list{position:relative}.rating-list.is-collapsed{overflow:hidden}.rating-list.is-collapsed:after{content:"";position:absolute;bottom:0;left:0;right:0;height:35px;background:linear-gradient(transparent,white);pointer-events:none}.expand-button{margin-top:18px;width:100%;padding:12px;border:1px solid #efc6cf;border-radius:8px;background:#fff7f9;color:var(--red-dark);font-size:13px;font-weight:700}.history-panel{margin-top:34px}.empty-state{grid-column:1/-1;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:30px;color:var(--muted);font-size:14px}.rating-empty{margin-top:18px;text-align:center;padding:36px}.rating-empty>span{display:block;color:#b7c7d5;font-size:28px}.rating-empty h3{font-size:17px;color:var(--ink)}.rating-empty p{margin-bottom:0}
.article-page{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:36px}.article-page h1{font-size:clamp(25px,2.6vw,36px);line-height:1.65}.article-dates{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.article-summary{font-size:17px;line-height:1.95;margin:24px 0 30px;padding-bottom:26px;border-bottom:1px solid var(--line);white-space:pre-line}.article-body{max-width:760px;margin:35px auto 0;font-size:17px;line-height:2.05}.article-body>p{margin-bottom:26px}.article-body h2{font-size:25px;line-height:1.7;border-left:5px solid var(--red);padding-left:14px;margin:46px 0 22px}.article-body h3{font-size:21px;margin:30px 0 18px}.article-body ul,.article-body ol{padding-left:1.6em;margin-bottom:26px}.article-body li+li{margin-top:8px}.article-body a{color:#267398;text-decoration:underline}.article-body blockquote{margin:24px 0;padding:18px 24px;border-left:4px solid #80b4d3;background:#f0f8fc;color:#304b65}.article-body blockquote p:last-child{margin:0}.article-body pre{overflow:auto;background:#f0f3f7;padding:18px;border-radius:8px;font-size:13px;line-height:1.8}.article-body table{display:block;overflow:auto;width:100%;border-collapse:collapse;font-size:14px;margin:24px 0}.article-body td,.article-body th{border:1px solid var(--line);padding:10px 14px}.article-body th{background:#f6f8fb}.article-body hr{border:0;border-top:1px solid var(--line);margin:36px 0}.preview-figure{width:70%;margin:28px auto}.preview-figure img{width:100%;height:auto;object-fit:contain;border:1px solid var(--line);border-radius:8px}.preview-figure figcaption{font-size:12px;line-height:1.8;color:var(--muted);margin-top:9px;text-align:left}.preview-caption,.preview-source{display:block}.gallery-hint{font-size:12px;color:var(--muted);margin-bottom:10px}.preview-gallery-block{margin:28px 0}.preview-gallery{display:flex;overflow-x:auto;gap:16px;padding-bottom:12px;scroll-snap-type:x proximity}.preview-gallery .preview-figure{flex:0 0 82%;max-width:620px;width:auto;margin:0;scroll-snap-align:start}.preview-gallery .preview-figure img{width:100%;height:auto}.admonition.note{border:1px solid #f0bac7;border-radius:10px;background:#fff6f8;padding:22px 24px;margin:28px 0;font-size:16px;line-height:1.95}.admonition-title{font-weight:800;color:var(--red-dark);margin:0 0 10px!important}.admonition.note>:last-child{margin-bottom:0}.article-company{border-top:1px solid var(--line);margin-top:42px;padding-top:26px}.article-company h2{font-size:18px}.article-company p{font-size:14px}.article-company a{display:block;color:var(--red);font-size:13px;margin:10px 0}.article-end-cta{margin:28px 0;padding:24px;border-radius:12px;background:#fff0f3;font-size:14px}.article-end-cta h2{font-size:20px}.article-end-cta a{color:var(--red);font-weight:700}
.site-footer{border-top:1px solid var(--line);background:white;text-align:center;padding:40px 24px}.site-footer .brand{font-size:28px}.site-footer p{font-size:12px;color:var(--muted);margin:12px 0}.site-footer nav{display:flex;justify-content:center;gap:24px;font-size:12px;flex-wrap:wrap}.site-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(390px,calc(100% - 24px));height:100dvh;max-height:100dvh;border:0;background:#f7f9fc;padding:22px;overflow-y:auto;overscroll-behavior:contain;box-shadow:-15px 0 50px #12213730;color:var(--ink)}.site-drawer::backdrop{background:#0c1c365f}.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.drawer-heading h2{font-size:17px;margin:0}.drawer-close{background:white;border:1px solid var(--line);border-radius:6px;padding:7px 10px;font-size:12px;white-space:nowrap}.drawer-nav{display:grid;margin-bottom:20px;gap:4px}.drawer-nav a{padding:12px;border-bottom:1px solid var(--line);font-weight:700;font-size:15px}.site-drawer .explore-block{margin-bottom:16px}
@media(min-width:1600px){.reading-layout{max-width:1560px;grid-template-columns:minmax(0,1fr) 310px}.rating-main{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}.rating-main .rating-values{grid-template-columns:1fr}.header-inner{max-width:1560px}}
@media(max-width:1279px) and (min-width:1000px){.reading-layout{padding:28px 26px;grid-template-columns:minmax(0,1fr) 270px;gap:24px}.brand-tagline{display:none}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-card .card-copy{padding:22px}.featured-card .card-copy h3{font-size:20px}}
@media(max-width:999px){.site-header{position:sticky;top:0}.header-inner{min-height:64px;padding:12px 20px;gap:12px}.brand{font-size:28px}.brand-tagline,.site-nav{display:none}.menu-toggle:not([hidden]){display:block}.reading-layout{display:block;padding:24px 22px 48px}.site-sidebar{margin-top:30px;grid-template-columns:repeat(2,minmax(0,1fr))}.js-navigation .site-sidebar{display:none}.hero-inner{padding-left:24px}.brand-hero{height:285px}.hero-title{font-size:32px;max-width:430px}.hero-art{width:850px;max-width:none}.hero-compact{height:150px}.hero-compact .hero-title{font-size:25px;max-width:460px}.hero-compact .hero-art{width:540px}.article-page{padding:30px}.article-grid{gap:16px}.target-card>strong{font-size:26px}}
@media(max-width:600px){body{font-size:15px}.header-inner{padding:11px 16px}.brand{font-size:26px}.brand-mark{font-size:17px}.menu-toggle{font-size:12px;padding:7px 10px}.brand-hero{height:280px}.hero-art{width:625px;right:-80px;object-position:center}.brand-hero:after{background:linear-gradient(90deg,#f5fafff5,#f5faffd9 30%,#f5faff5e 57%,transparent 85%)}.hero-inner{padding:28px 20px}.hero-title{font-size:24px;max-width:195px;line-height:1.55}.hero-description{font-size:12px;max-width:170px;line-height:1.9}.hero-inner .eyebrow{font-size:8px;max-width:175px;letter-spacing:.13em;margin-bottom:12px}.hero-compact{height:140px}.hero-compact .hero-inner{padding:25px 20px}.hero-compact .hero-title{font-size:20px;max-width:225px;line-height:1.6}.hero-compact .hero-description{display:none}.hero-compact .hero-art{width:350px;right:-75px}.reading-layout{padding:22px 16px 40px}.section-heading{gap:10px;margin-bottom:15px}.section-heading h2{font-size:19px}.section-heading>a{font-size:11px}.section-heading h2:before{height:18px;width:4px;margin-right:8px;vertical-align:-2px}.web-section{margin-bottom:28px}.article-grid{grid-template-columns:1fr;gap:16px}.article-card .card-copy{padding:20px}.card-copy h3{font-size:18px;line-height:1.8}.card-summary{font-size:14px}.card-copy time,.card-company{font-size:12px}.theme-pills a{font-size:12px}.thumbnail-fallback{padding:25px}.thumbnail-fallback strong{font-size:22px}.featured-card{display:block}.featured-card .card-image{aspect-ratio:16/9;min-height:0}.featured-card .card-copy{padding:22px}.featured-card .card-copy h3{font-size:21px}.featured-card .thumbnail-fallback strong{font-size:21px;-webkit-line-clamp:3}.featured-ratings .section-heading h2{font-size:17px}.company-header h1{font-size:28px}.company-header .eyebrow{font-size:11px}.company-description{font-size:15px}.article-entry{display:block;padding:14px}.article-entry>span{display:block;margin-bottom:5px}.article-entry>a{display:block;font-size:13px}.article-entry .entry-all{margin-top:8px}.target-summary{gap:6px;margin-top:14px}.target-card{padding:14px 5px;border-radius:8px}.target-card h3{font-size:10px;line-height:1.7;min-height:34px;max-width:95px;margin:0 auto 7px}.target-card>strong{font-size:19px;letter-spacing:-.5px;white-space:nowrap}.target-card small{font-size:9px}.summary-help{font-size:11px;margin-bottom:18px}.surface{padding:18px 16px}.chart-panel h3{font-size:16px}.chart-scroll{overflow-x:auto;padding-bottom:4px}.target-chart{min-width:0}.chart-legend{gap:6px}.chart-legend button{font-size:11px;padding:6px 8px}.rating-values{grid-template-columns:1fr;font-size:13px;gap:5px}.rating-row-heading{gap:10px;font-size:14px}.rating-row{padding:16px 0}.pill{font-size:10px}.history-panel .section-heading h2{font-size:18px}.expand-button{font-size:12px;padding:12px 7px}.empty-state{padding:24px;font-size:14px}.article-page{padding:23px 19px;margin:0 -3px}.article-page h1{font-size:25px;line-height:1.65}.article-summary{font-size:16px;line-height:2}.article-body{font-size:16px;line-height:2}.article-body h2{font-size:21px;margin-top:34px;padding-left:10px}.article-body h3{font-size:18px}.preview-figure{width:100%;margin:24px 0}.preview-gallery .preview-figure{flex-basis:88%}.admonition.note{padding:18px 16px;font-size:15px}.article-body blockquote{padding:15px}.site-sidebar{grid-template-columns:1fr}.site-footer{padding:32px 20px}.site-footer nav{gap:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}



:root{--background:#faf8f3;--line:#e5e0d7;--blue:#f4f1e9}
body,.site-drawer{background:var(--background)}
.brand-hero{height:260px;background:var(--background);border-color:var(--line)}
.hero-art{width:min(100%,1200px);object-fit:cover;object-position:76% 5%}
.brand-hero:after{background:linear-gradient(90deg,#faf8f3 0%,#faf8f3ed 25%,#faf8f37a 46%,transparent 70%)}
.hero-inner{padding-top:40px;padding-bottom:30px}.hero-title{font-size:clamp(28px,3vw,40px)}
.hero-compact{height:140px}.hero-compact .hero-art{width:850px;object-position:76% 5%}
.header-inner{gap:18px}.site-nav{gap:22px}.brand-tagline{display:none}
.explore-themes>a,.theme-pills a{color:#63543e}.explore-themes small{color:#77694f}
.featured-overview.with-chart{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:22px;align-items:start}
.featured-overview.with-chart .featured-card{display:block}
.featured-overview.with-chart .card-image{height:auto;min-height:0;aspect-ratio:16/7}
.featured-overview.with-chart .card-copy{padding:18px 20px}
.featured-overview.with-chart .card-copy h3{font-size:21px;line-height:1.6}
.featured-overview.with-chart .card-summary{-webkit-line-clamp:3}
.featured-overview.with-chart .thumbnail-fallback{padding:15px 20px}
.featured-overview.with-chart .thumbnail-fallback strong{font-size:18px;-webkit-line-clamp:2}
.featured-company-name{font-size:18px;line-height:1.7;margin:0 0 12px}
.featured-chart{min-width:0}.featured-chart .chart-panel{padding:16px}.featured-chart .chart-panel h3{font-size:16px}
.chart-scroll{overflow-x:auto}.target-chart{min-width:0}
.chart-legend button{font-size:12px;min-height:34px;padding:6px 9px}
.chart-help,.chart-panel .subtle{font-size:12px}.axis-label{font-size:13px}
.ratings-link{display:inline-block;color:var(--red-dark);font-weight:700;font-size:14px;margin:12px 0}
.target-summary{margin:16px 0 8px}.target-card{padding:12px}.target-card>strong{font-size:27px}.summary-help{margin-bottom:18px}
.history-destination{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:30px}.history-destination h2{font-size:20px}.history-destination p{font-size:14px;color:var(--muted)}

.ratings-page .site-nav{gap:18px}
.ratings-intro h1{font-size:30px}.ratings-intro p{margin-bottom:10px}.ratings-intro .subtle{font-size:13px}
.ratings-filters{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:24px 0 14px}
.ratings-filters label{display:grid;gap:6px;font-size:14px;font-weight:700;flex:1 1 240px;min-width:0}
.ratings-filters select{font:inherit;font-weight:400;color:var(--ink);background:white;border:1px solid #c8c0b3;border-radius:6px;padding:10px;min-width:0;width:100%;max-width:100%}
.ratings-filters button{border:0;min-height:44px}.ratings-filters>a{font-size:14px;text-decoration:underline;padding:10px 0}
.ratings-selected{display:flex;flex-wrap:wrap;gap:10px}.ratings-selected a{background:white;border:1px solid var(--line);border-radius:20px;padding:6px 12px;font-size:13px}
#ratings-status{font-variant-numeric:tabular-nums;font-size:14px;margin:16px 0 8px}
.ratings-table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:12px}
.ratings-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;line-height:1.65;font-variant-numeric:tabular-nums}
.ratings-table th{background:#f2eee6;text-align:left;font-size:13px;padding:14px 12px}
.ratings-table td{padding:16px 12px;border-top:1px solid var(--line);vertical-align:top}
.ratings-table th:nth-child(1){width:11%}.ratings-table th:nth-child(2){width:19%}.ratings-table th:nth-child(3){width:17%}.ratings-table th:nth-child(4){width:15%}.ratings-table th:nth-child(5){width:21%}.ratings-table th:nth-child(6){width:17%}
.ratings-table td:first-child{white-space:nowrap}.ratings-table td>a{color:var(--red-dark)}
.ratings-table .pills{margin:0;gap:5px}.ratings-table .pill{font-size:11px}
.broker-cross-link{display:block;font-size:12px;margin-top:8px;line-height:1.6}
.ratings-table .value-arrow{margin:0 2px}
@media(min-width:1400px){.chart-panel:not(.featured-chart .chart-panel) .target-chart{max-height:340px}.featured-chart .target-chart{min-width:0}}
@media(min-width:1000px) and (max-width:1199px){.site-nav{gap:16px;font-size:13px}.ratings-page .header-inner{flex-wrap:wrap}.ratings-page .site-nav{margin-left:auto}}
@media(max-width:999px){.brand-hero{height:230px}.hero-inner{padding-top:28px}.hero-compact{height:140px}.featured-overview.with-chart{grid-template-columns:1fr}.featured-chart .target-chart{min-width:0}.ratings-page .menu-toggle{margin-left:auto}.ratings-page .ratings-table{min-width:0;width:100%;table-layout:fixed}}
@media(max-width:600px){.brand-hero{height:220px}.hero-art{width:625px;right:-80px}.brand-hero:after{background:linear-gradient(90deg,#faf8f3f5,#faf8f3dc 30%,#faf8f35e 57%,transparent 85%)}.hero-inner{padding:22px 20px}.hero-title{font-size:23px;max-width:195px}.hero-compact{height:130px}.hero-compact .hero-art{width:400px;right:-75px}.hero-compact .hero-title{font-size:20px}.featured-overview.with-chart .card-image{aspect-ratio:16/9}.featured-overview.with-chart .card-copy h3{font-size:21px}.target-card{padding:12px 5px}.target-card>strong{font-size:19px}.ratings-intro h1{font-size:25px}.ratings-filters{padding:16px;gap:12px}.ratings-filters label{flex-basis:100%}.ratings-filters button{font-size:14px}.ratings-table-wrap{border:0;background:none;overflow:visible}.ratings-page .ratings-table{min-width:0;display:block;table-layout:auto}.ratings-table thead{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.ratings-table tbody{display:block}.ratings-table tr{display:grid;grid-template-columns:1fr 1fr;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:12px;padding:12px;gap:10px}.ratings-table td{display:block;border:0;padding:0;min-width:0;font-size:14px}.ratings-table td:before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.ratings-table td:nth-child(2){grid-column:1/-1;grid-row:1}.ratings-table td:nth-child(4),.ratings-table td:nth-child(5),.ratings-table td:nth-child(6){grid-column:1/-1;border-top:1px solid var(--line);padding-top:8px}.ratings-table .broker-cross-link{font-size:11px;margin-top:4px}.ratings-page .reading-layout{padding:20px 16px 40px}}
.target-chart.responsive-chart,.featured-chart .target-chart.responsive-chart{min-width:0;max-height:none;width:100%}.responsive-chart .axis-label{font-size:12px}

:root{--background:#f9f9f8;--line:#e5e3de;--blue:#EDF6FC}
body,.site-drawer{background:var(--background)}
.header-inner{gap:24px;flex-wrap:wrap}.header-brand{display:flex;align-items:center;gap:12px;min-width:0;white-space:normal;letter-spacing:0;font-style:normal;flex:0 1 auto}
.brand-face{display:block;flex:0 0 56px;width:56px;height:56px;border-radius:50%;border:1px solid #f0d8d9;background-image:url('/assets/brand/mentai-hero.png');background-repeat:no-repeat;background-size:205px 82px;background-position:71% 15%;background-color:white}
.brand-text{display:grid;gap:5px;min-width:0}.brand-name{font-size:22px;line-height:1.4;font-weight:800}.brand-subcopy{font-size:13px;color:var(--muted);font-weight:500;line-height:1.5}.site-nav{gap:20px}.ratings-page .site-nav{margin-left:auto}
.brand-hero,.hero-compact{height:auto;min-height:245px;background:var(--background);border-color:var(--line)}
.hero-art,.hero-compact .hero-art{width:min(100%,1150px);height:100%;max-width:none;right:0;object-fit:contain;object-position:right center}
.brand-hero:after{background:linear-gradient(90deg,#f9f9f8 0%,#f9f9f8f5 28%,#f9f9f8c9 43%,transparent 65%)}
.hero-inner,.hero-compact .hero-inner{padding:26px 36px;max-width:1440px}.hero-title,.hero-compact .hero-title{font-size:30px;max-width:540px;margin-bottom:12px}.hero-description,.hero-compact .hero-description{display:block;font-size:15px;line-height:1.9;max-width:570px;margin-bottom:0}.hero-inner .eyebrow{margin-bottom:10px}
.featured-section{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.featured-overview.with-chart{align-items:stretch;gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}
.featured-story,.featured-chart{min-width:0}.featured-story .article-card{border:0;border-radius:0;box-shadow:none;height:100%}.featured-overview.with-chart .card-copy{padding:16px 0 0}.featured-overview .card-summary,.featured-overview .thumbnail-fallback strong{display:block;overflow:visible;-webkit-line-clamp:unset}.featured-overview .card-image{border-radius:9px}
.featured-chart{display:flex;flex-direction:column;border-left:1px solid var(--line);padding-left:24px}.featured-chart .chart-panel{border:0;border-radius:0;padding:0;background:none;flex:1}.featured-chart>.ratings-link{margin-bottom:0}.featured-company-name{margin:0 0 12px;font-size:18px;line-height:1.6}
.card-company{font-size:14px;font-weight:700}.card-company a{color:#245f83;text-decoration:underline;text-underline-offset:3px}.card-company a:after{content:' →'}.card-company a:hover{color:#174564}
.theme-pills a,.explore-themes>a{background:#EDF6FC;color:#245f83;border:1px solid #c8e1f2;font-size:14px;line-height:1.6;padding:8px 12px}.theme-pills a:hover,.theme-pills a:focus-visible,.explore-themes>a:hover,.explore-themes>a:focus-visible{background:#dceefb;border-color:#69a6ce;color:#174564}.explore-themes small{color:#416780;font-size:12px}
.summary-title{font-size:16px;margin:20px 0 10px}.target-summary{gap:0;background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:0 0 10px}.target-card{background:white;border:0;border-right:1px solid var(--line);border-radius:0;padding:16px 18px;text-align:left}.target-card:last-child{border-right:0}.target-card h3{font-size:14px;min-height:0;max-width:none;margin:0 0 7px}.target-card>strong{font-size:28px;line-height:1.35;white-space:normal;letter-spacing:0}.target-card .amount-unit{font-size:14px;font-weight:500;margin-left:5px}.target-card small{font-size:12px;margin-top:5px}.summary-help{font-size:13px}
.recent-history{margin-bottom:32px}.recent-history h2{font-size:21px}.company-history th:nth-child(1){width:16%}.company-history th:nth-child(2){width:20%}.company-history th:nth-child(3){width:19%}.company-history th:nth-child(4){width:25%}.company-history th:nth-child(5){width:20%}.company-history th,.company-history td{padding:13px 10px}.history-continuation{height:18px;background:linear-gradient(#eeeae5,transparent);margin:0 8px;pointer-events:none}.recent-history>.ratings-link{margin-top:14px}
.shared-x-block{background:white;border:1px solid #efc6cf;border-radius:12px;overflow:hidden;min-width:0;max-width:100%}.x-cta{padding:20px}.x-cta-heading{display:flex;align-items:center;gap:12px}.x-cta h2{font-size:18px;line-height:1.5;margin:0}.x-cta p{font-size:14px;line-height:1.8;margin:12px 0}.x-account{display:block;font-size:14px;font-weight:700;margin:8px 0 14px}.x-follow{display:block;background:var(--red);color:white;font-size:14px;font-weight:700;text-align:center;padding:11px;border-radius:7px}.x-follow:hover{background:var(--red-dark);color:white}
@media(min-width:1000px) and (max-width:1279px){.header-inner{padding:14px 26px;gap:12px}.brand-name{font-size:21px}.site-nav{gap:16px;font-size:13px}.brand-hero .hero-description{max-width:520px}.featured-section{padding:20px}.featured-chart{padding-left:18px}.featured-overview.with-chart{gap:18px}}
@media(max-width:999px){.header-inner{flex-wrap:nowrap;gap:12px}.header-brand{flex:1;gap:9px}.brand-face{flex-basis:48px;width:48px;height:48px;background-size:176px 70px}.brand-name{font-size:20px}.brand-subcopy{font-size:12px}.menu-toggle{flex-shrink:0}.featured-overview.with-chart{grid-template-columns:1fr}.featured-chart{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:20px}.hero-inner,.hero-compact .hero-inner{padding:24px}.hero-title,.hero-compact .hero-title{max-width:450px}.hero-description,.hero-compact .hero-description{max-width:470px}.hero-art,.hero-compact .hero-art{width:100%;object-fit:contain;object-position:right center}.brand-hero:after{background:linear-gradient(90deg,#f9f9f8f5,#f9f9f8eb 35%,#f9f9f89e 60%,transparent)}.recent-history .ratings-table-wrap{overflow:auto}.company-history{min-width:0;width:100%;table-layout:fixed}}
@media(max-width:600px){.header-inner{padding:10px 12px;gap:8px;align-items:center}.brand-face{flex-basis:42px;width:42px;height:42px;background-size:154px 62px}.brand-name{font-size:17px;line-height:1.4}.brand-subcopy{font-size:11px;line-height:1.5}.brand-text{gap:3px}.menu-toggle{padding:8px 7px;font-size:12px}.brand-hero,.hero-compact{min-height:0}.hero-art,.hero-compact .hero-art{width:100%;height:auto;top:0;right:0;object-fit:contain}.brand-hero:after{background:linear-gradient(180deg,transparent 0,#f9f9f82b 80px,#f9f9f8 160px);pointer-events:none}.hero-inner,.hero-compact .hero-inner{padding:145px 20px 22px}.hero-title,.hero-compact .hero-title{font-size:24px;max-width:none;line-height:1.55;margin-bottom:10px}.hero-description,.hero-compact .hero-description{font-size:14px;max-width:none;line-height:1.9}.hero-inner .eyebrow{font-size:10px;max-width:none}.featured-section{padding:18px}.featured-overview.with-chart .card-copy{padding:16px 0 0}.featured-chart .chart-panel{padding:0}.target-summary{grid-template-columns:1fr}.target-card{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:baseline;padding:12px 16px;border-right:0;border-bottom:1px solid var(--line)}.target-card:last-child{border-bottom:0}.target-card h3{font-size:14px;margin:0}.target-card>strong{font-size:26px}.target-card small{grid-column:1/-1;margin:0;font-size:12px}.summary-help{font-size:13px}.recent-history .ratings-table-wrap{overflow:visible}.company-history{min-width:0;display:block}.company-history tr{grid-template-columns:1fr 1fr}.company-history td:nth-child(2){grid-column:auto;grid-row:auto}.company-history td:nth-child(3),.company-history td:nth-child(4),.company-history td:nth-child(5){grid-column:1/-1;border-top:1px solid var(--line);padding-top:8px}.recent-history h2{font-size:19px}.history-continuation{margin-top:-2px}.theme-pills a{font-size:14px;min-height:40px}.card-company{font-size:14px}}

.header-brand .brand-face{background:none;border:0;border-radius:0;flex:0 0 48px;width:48px;height:48px;object-fit:contain}
.header-inner{gap:16px;align-items:center}.header-company-search{position:relative;flex:1 1 230px;max-width:310px;margin-left:auto;font-size:13px;font-weight:600}.header-company-search>summary{cursor:pointer;list-style:none;color:#245f83;padding:8px;border:1px solid var(--line);border-radius:7px;background:white}.header-company-search[open]>summary{display:none}.header-company-search .company-search-status{position:absolute;background:white;top:100%;margin:0;z-index:32;font-size:12px;padding:0 8px;max-width:100%}.header-company-search .company-search-results:not([hidden])~.company-search-status{position:static;padding:4px 0;background:none}.company-search{position:relative;min-width:0}.company-search>label{display:block;font-size:13px;line-height:1.5;margin-bottom:5px}.company-search-controls{display:flex;gap:6px;align-items:center}.company-search-controls input{width:100%;min-width:0;font:inherit;font-weight:400;padding:9px 10px;border:1px solid #c8c0b3;border-radius:6px;background:white;color:var(--ink);height:43px}.company-search-clear{border:1px solid var(--line);border-radius:6px;background:white;padding:8px;font-size:12px;white-space:nowrap}.company-search-results{position:absolute;top:100%;left:0;right:0;background:white;border:1px solid #bdd7e8;border-radius:8px;box-shadow:0 8px 24px #16213b18;list-style:none;padding:4px;margin:4px 0;max-height:300px;overflow:auto;z-index:40}.company-search-results a,.company-search-results button{display:block;width:100%;text-align:left;border:0;background:white;border-radius:4px;padding:10px;font-size:14px;line-height:1.6;cursor:pointer;color:#245f83}.company-search-results [aria-selected="true"]>* ,.company-search-results a:hover,.company-search-results button:hover{background:#edf6fc;color:#174564}.company-search-status{font-size:12px;line-height:1.6;color:var(--muted);margin:5px 0 0;min-height:0}.ratings-filters>.company-search{flex:1 1 240px}.ratings-filters .company-search>label{font-size:14px}.ratings-filters .company-search-results{top:70px}.ratings-filters .company-search-controls button{min-height:43px;border:1px solid var(--line)}
.brand-hero,.hero-compact{min-height:230px}.hero-inner,.hero-compact .hero-inner{padding-top:22px;padding-bottom:22px}.hero-art,.hero-compact .hero-art{width:min(100%,1400px);right:clamp(0px,4vw,80px);object-fit:contain;object-position:center center}.brand-hero:after{background:linear-gradient(90deg,#f9f9f8 0%,#f9f9f8f0 25%,#f9f9f8b3 48%,transparent 72%)}.hero-description,.hero-compact .hero-description{max-width:none;font-size:15px;line-height:1.9}.hero-description>span{display:block}.hero-title,.hero-compact .hero-title{margin-bottom:8px}.hero-inner .eyebrow{margin-bottom:6px}
.section-icon{display:inline-block;width:20px;height:20px;flex:none;vertical-align:-3px;margin-right:8px;color:var(--red-dark)}.ratings-intro h1 .section-icon{width:25px;height:25px}.ratings-intro h1:before{content:"";display:inline-block;width:5px;height:25px;vertical-align:-2px;margin-right:10px;border-radius:3px;background:var(--red)}.ratings-table tr.date-start td{border-top:2px solid #c7c1b7;padding-top:19px}.ratings-table tr.date-start td:first-child time{font-weight:750}.ratings-table tr.date-start:first-child td{border-top:0}.no-rating-art{display:block;width:min(100%,340px);height:auto;object-fit:contain;margin:0 auto 20px}.under-cta{display:block;width:100%;height:auto;object-fit:contain;margin:0;padding:0 8px 8px}.shared-x-block .x-cta{padding-bottom:14px}
@media(min-width:1000px){.header-inner .site-nav{order:3;flex:1 1 100%;margin-left:60px;justify-content:flex-end;gap:28px}.header-inner .menu-toggle{order:4}.header-company-search label{font-size:12px}.header-company-search{align-self:center}.hero-description>span{white-space:nowrap}}
@media(min-width:1440px){.header-inner{padding-top:10px;padding-bottom:10px}.header-inner .site-nav{gap:30px}}
@media(max-width:999px){.header-company-search{flex:0 0 auto;margin-left:0}.header-company-search[open]{position:static}.header-company-search[open]>summary{display:block}.header-company-search>.company-search{position:absolute;top:100%;left:12px;right:12px;padding:14px;background:white;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #15213c20;z-index:35}.header-company-search .company-search-status{position:static;padding:4px 0}.header-company-search .company-search-results{top:68px;left:14px;right:14px}.header-company-search>summary{font-size:12px;white-space:nowrap}.header-inner{gap:7px}.header-inner .brand-name{font-size:18px}.brand-hero .hero-art{right:0;width:100%;object-position:center}.hero-description>span{white-space:normal}.brand-hero:after{background:linear-gradient(90deg,#f9f9f8f2,#f9f9f8dd 40%,#f9f9f888 70%,transparent)}}
@media(max-width:600px){.header-brand .brand-face{width:42px;height:42px;flex-basis:42px}.header-brand{gap:5px}.header-inner .brand-name{font-size:16px}.header-inner .brand-subcopy{font-size:11px}.header-company-search>summary{padding:8px 5px}.menu-toggle{padding:8px 5px}.brand-hero,.hero-compact{min-height:0}.hero-art,.hero-compact .hero-art{width:100%;right:0;top:0;height:auto;object-fit:contain}.brand-hero:after{background:linear-gradient(180deg,transparent 0,#f9f9f82b 80px,#f9f9f8 160px)}.hero-inner,.hero-compact .hero-inner{padding:145px 20px 22px}.hero-description,.hero-compact .hero-description{font-size:14px;line-height:1.9}.hero-description>span+span{margin-top:3px}.ratings-filters>.company-search{flex-basis:100%}.ratings-table tr.date-start{border-top:2px solid #c7c1b7;margin-top:20px}.ratings-table tr.date-start:first-child{margin-top:0}.ratings-table tr.date-start td{border-top:0;padding-top:0}.ratings-table tr.date-start td:nth-child(n+4){border-top:1px solid var(--line);padding-top:8px}.section-icon{width:19px;height:19px}.no-rating-art{max-width:280px}}

.explore-block .section-heading h2:before{content:none}
.explore-search-hint{font-size:12px;color:var(--muted);line-height:1.7;margin:16px 0 0}
.explore-search-hint a{color:#245f83;text-decoration:underline}
.sidebar-search h2,.drawer-search h2{font-size:17px}
.sidebar-search .company-search-results,.drawer-search .company-search-results{position:static;margin:8px 0 0;max-height:260px}
.site-sidebar{align-self:start}
@media(min-width:1000px){
 .site-sidebar{position:sticky;top:18px;max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain;padding:0 5px 3px 0}
 .header-inner,.ratings-page .header-inner{flex-wrap:nowrap;min-height:76px;padding:12px 26px;gap:20px}
 .header-brand{flex:0 1 auto;max-width:480px}
 .brand-name{font-size:20px}.brand-subcopy{font-size:12px}
 .header-inner .site-nav,.ratings-page .site-nav{order:0;flex:0 0 auto;margin-left:auto;gap:20px;justify-content:flex-end;font-size:14px}
 .header-inner .menu-toggle{order:0}
}
@media(min-width:1000px) and (max-width:1199px){
 .header-inner,.ratings-page .header-inner{gap:12px;padding:10px 20px}
 .brand-name{font-size:18px}.brand-subcopy{font-size:11px}
 .header-inner .site-nav,.ratings-page .site-nav{gap:12px;font-size:13px}
}
@media(max-width:999px){.site-sidebar{position:static;max-height:none;overflow:visible}.drawer-search{margin-top:16px}.header-inner{min-height:72px}.header-inner .brand-name{font-size:18px}}
@media(max-width:600px){.header-inner .brand-name{font-size:17px}.header-inner .brand-subcopy{font-size:11px}.header-brand .brand-face{width:44px;height:44px;flex-basis:44px}}
.hero-art-frame{position:absolute;inset:0;max-width:1440px;margin:auto;overflow:hidden;pointer-events:none}
.hero-art-frame .hero-art,.hero-compact .hero-art-frame .hero-art{position:absolute;inset:0 0 0 auto;width:100%;height:100%;max-width:none;object-fit:contain;object-position:right center;transform:none}
.brand-hero{min-height:0}.hero-inner{min-height:260px;display:flex;flex-direction:column;justify-content:center}
.hero-compact .hero-inner{min-height:220px}
.brand-hero:after{background:linear-gradient(90deg,#f9f9f8 0%,#f9f9f8ef 28%,#f9f9f8aa 48%,transparent 70%)}
@media(max-width:999px) and (min-width:601px){.hero-description>span{white-space:normal;max-width:78%}.hero-inner{min-height:250px}}
@media(max-width:600px){
 .hero-art-frame{height:150px;width:100%;inset:0 0 auto;margin:0}
 .hero-art-frame .hero-art,.hero-compact .hero-art-frame .hero-art{object-fit:contain;object-position:center top;height:150px;width:100%}
 .brand-hero:after{background:linear-gradient(180deg,transparent 0,#f9f9f822 90px,#f9f9f8 150px)}
 .hero-inner,.hero-compact .hero-inner{min-height:0;padding:145px 20px 22px}.hero-description>span{max-width:none}
}
.series-dim{opacity:.22}
.chart-panel{position:relative}.chart-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.chart-controls button{background:white;border:1px solid #c9d8e1;border-radius:6px;padding:7px 12px;font-size:13px;color:#245f83;cursor:pointer}
.chart-legend button[aria-pressed="false"]{opacity:1;background:#f6f6f5;color:#66717a;border-style:dashed}
.chart-legend button[aria-pressed="false"] .legend-color{opacity:.35}
.chart-tooltip{position:absolute;z-index:5;pointer-events:none;background:white;border:1px solid #d6d9dc;box-shadow:0 5px 18px #1221371a;border-radius:9px;padding:11px 14px;max-width:calc(100% - 16px);min-width:140px;font-size:13px;line-height:1.6;color:var(--ink)}
.chart-tooltip>strong,.chart-tooltip>span,.chart-tooltip>b{display:block}.chart-tooltip>strong{font-size:14px}.chart-tooltip>span{font-size:12px;color:var(--muted);margin:2px 0 5px}.chart-tooltip>b{font-weight:650;font-variant-numeric:tabular-nums}
.ratings-filters{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(130px,.7fr) minmax(180px,1fr);align-items:start;gap:16px}
.ratings-filters label,.ratings-filters .company-search>label{font-size:14px;line-height:21px;font-weight:700;margin:0 0 6px;display:block}
.ratings-filters select{display:block;margin-top:6px;height:44px;padding:8px 10px}
.ratings-filters .company-search-controls{height:44px}.ratings-filters .company-search-controls input{height:44px}
.ratings-filters .company-search-status{min-height:0;margin:5px 0 0}
.ratings-filters .company-search-results{top:70px}
.ratings-filter-actions{grid-column:1/-1;display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.ratings-filter-actions>a{font-size:14px;text-decoration:underline}
.filter-help{grid-column:1/-1;font-size:12px;color:var(--muted);margin:0}
.ratings-company-chart{margin:28px 0 32px;max-width:100%;padding-top:20px;border-top:1px solid var(--line)}
.ratings-company-chart>h2{font-size:21px;margin-bottom:6px}
.ratings-company-chart .target-chart{max-height:none}
.ratings-history-title{margin:28px 0 16px;font-size:22px}.ratings-history-title small{font-weight:400;font-size:13px;color:var(--muted);margin-left:8px}
.article-company-inline{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 18px;background:#f6f9fb;border-left:3px solid #80b4d3;padding:11px 14px;margin:16px 0;font-size:14px;line-height:1.7}
.article-company-inline a{color:#245f83;text-decoration:underline;text-underline-offset:3px;font-weight:650}
.admonition-title:before{content:none}.admonition-title .note-icon{vertical-align:-4px;width:21px;height:21px}
@media(max-width:999px){.ratings-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ratings-filters{grid-template-columns:minmax(0,1fr)}.ratings-filter-actions{align-items:stretch;flex-direction:column;gap:12px}.ratings-filter-actions a{padding:6px 0}.site-footer .brand{white-space:normal;font-size:22px;line-height:1.5}.ratings-company-chart>h2{font-size:20px}}

/* Directory, compact exploration and readable records. */
.site-sidebar .explore-block{padding:14px 16px;margin-bottom:12px}
.site-sidebar .section-heading{gap:8px;flex-wrap:wrap;margin-bottom:8px}
.site-sidebar .explore-themes a{padding:7px 0}
.site-sidebar .explore-companies a{padding:7px 0}
.site-sidebar .explore-search-hint{margin:8px 0 0;font-size:13px}
.site-sidebar .company-search-status{font-size:12px;line-height:1.5;margin:4px 0 0}
.site-sidebar .x-cta{padding:16px}
.footer-disclaimer{max-width:1100px;margin:24px auto 0;font-size:12px;line-height:1.85;color:#62615e;text-align:left}
.footer-disclaimer p{margin:0 0 10px}
.article-summary{background:#faf6f2;border-left:4px solid var(--red);border-radius:6px;padding:20px 24px;margin:22px 0;color:inherit}
.article-summary h2{font-size:17px;margin:0 0 10px;display:flex;gap:8px;align-items:center}
.article-summary p{font-size:16px;line-height:1.9;margin:0;white-space:pre-line}
.companies-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;background:white;border:1px solid var(--line);border-radius:12px;padding:20px;align-items:start}
.companies-filters label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
.companies-filters select{min-height:42px;max-width:100%;padding:8px;border:1px solid #d9d9d4;border-radius:6px;background:white;font:inherit}
.companies-filters .directory-check{flex-direction:row;align-items:center;min-height:40px}
.directory-check input{width:18px;height:18px;accent-color:var(--red)}
.directory-reset{min-height:40px;border:1px solid #d9d9d4;border-radius:6px;background:white;font:inherit;cursor:pointer}
.company-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.directory-company{display:flex;flex-direction:column;gap:5px;min-width:0;padding:16px 18px;background:white;border:1px solid #e0dfdb;border-radius:10px;color:inherit;text-decoration:none;line-height:1.6}
.directory-company strong{font-size:16px;color:#235471;overflow-wrap:anywhere}
.directory-company:hover,.directory-company:focus-visible{border-color:#669fbd;background:#f4faff;outline:2px solid transparent}
.directory-classification,.directory-counts{font-size:13px;color:#65625c}
.zero-count{color:#888;background-color:#f8f8f8}
.company-search-results .zero-count{opacity:.62}
@media(min-width:1000px){.site-nav{gap:13px}.site-nav a{font-size:13px}.header-inner{gap:20px}.site-sidebar .explore-block h2{font-size:16px}}
@media(max-width:999px){.companies-filters{grid-template-columns:1fr 1fr}.companies-filters>.company-search{grid-column:1/-1}}
@media(max-width:600px){
 .company-directory{grid-template-columns:1fr;gap:8px}.directory-company{padding:12px 14px;gap:3px}.directory-company strong{font-size:15px}.directory-classification,.directory-counts{font-size:12px}
 .companies-filters{gap:12px;padding:14px}.companies-filters label{font-size:13px}
 .home-page .article-card .card-summary,.home-page .article-card time,.home-page .article-card .theme-pills{display:none}
 .home-page .article-card .card-copy{padding:12px}.home-page .article-card h3{margin:0 0 8px}.home-page .article-card .card-company{margin:0}
 .article-summary{padding:16px;margin:18px 0}.article-summary p{font-size:15px}
 .ratings-page .ratings-table tbody tr{display:flex;flex-wrap:wrap;gap:5px 8px;padding:11px 12px;border-radius:0;background:white;align-items:baseline;margin:0;box-shadow:none}
 .ratings-page .ratings-table tbody tr.date-start{border-top:2px solid #c6c5c0;padding-top:15px}
 .ratings-page .ratings-table td{display:block;padding:0;min-width:0;border:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
 .ratings-page .ratings-table td:before{display:none}
 .ratings-page td[data-label="日付"]{order:1;flex:0 0 calc(18% - 8px);white-space:nowrap;font-size:12px}
 .ratings-page td[data-label="証券会社"]{order:2;flex:0 0 calc(28% - 8px)}
 .ratings-page td[data-label="企業"]{order:3;flex:0 0 54%}
 .ratings-page td[data-label="格付け"]{order:4;flex:0 1 auto;max-width:100%}
 .ratings-page td[data-label="目標株価"]{order:5;flex:0 1 auto;max-width:100%}
 .ratings-page td[data-label="目標株価"]:before{display:inline;content:'TP ';font-size:11px;color:#777}
 .ratings-page .rating-year,.ratings-page .broker-cross-link{display:none}
 .ratings-page td[data-label="変更区分"]{order:6;flex:0 1 auto}
 .ratings-page td[data-label="変更区分"] .pills{gap:3px;margin:0}
 .ratings-page td[data-label="変更区分"] .pill{font-size:10px;padding:0 3px;line-height:1.5}
 .ratings-page td[data-label="変更区分"] .rating-maintain,.ratings-page td[data-label="変更区分"] .target-maintain{display:none}
 .ratings-page .has-company-condition td[data-label="企業"]{display:none}
 .ratings-page .has-company-condition td[data-label="証券会社"]{flex-basis:82%}
 .footer-disclaimer{font-size:12px;padding:0 4px;line-height:1.8}
}

@media(max-width:767px){.home-page .article-card .card-summary,.home-page .article-card time,.home-page .article-card .theme-pills{display:none}}

/* Intrinsic sizes must never expand the page beyond its viewport. */
.reading-layout>* ,.site-main>* ,.rating-main>* ,.featured-overview>*{min-width:0;max-width:100%}
.chart-panel,.chart-scroll,.ratings-table-wrap,.recent-history,.company-directory,.companies-filters,.ratings-filters{min-width:0;max-width:100%}
.target-chart{display:block;width:100%;max-width:100%;min-width:0}
.companies-filters{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}
.companies-filters>*{min-width:0}.companies-filters select{width:100%}
.target-highest{border-left:3px solid #c82c49}.target-median{border-left:3px solid #8b9096}.target-lowest{border-left:3px solid #327fa9}
.site-sidebar{gap:12px}.site-sidebar .explore-block{margin-bottom:0}.sidebar-search h2{display:flex;gap:7px;align-items:center}
.footer-copyright{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin:20px auto 0}
@media(min-width:1000px){
 .header-inner .menu-toggle,.ratings-page .menu-toggle{display:none!important}

}
@media(max-width:999px){.companies-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .home-page .article-card .card-summary,.home-page .article-card time,.home-page .article-card .theme-pills{display:none!important}
 .article-summary{padding:14px 16px;margin:18px 0;white-space:normal}.article-summary p{line-height:1.8}
 .company-history{display:block;table-layout:auto}.company-history tbody{display:block;width:100%}
 .company-history tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;background:white;border-bottom:1px solid var(--line)}
 .company-history thead{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
 .company-history td{display:block;min-width:0;padding:0;border:0;font-size:13px;overflow-wrap:anywhere}
 .company-history td:nth-child(n+3){grid-column:1/-1}.company-history .broker-cross-link{font-size:12px}
}

.ratings-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
.ratings-trend-controls{grid-column:1/-1;min-width:0;margin:4px 0 0;padding:14px 16px;border:1px solid #e7ddd8;border-left:3px solid var(--red);border-radius:8px;background:#faf7f5}
.ratings-trend-controls legend{font-size:16px;font-weight:700;padding:0 6px;display:flex;align-items:center;gap:6px}
.ratings-trend-controls>p{font-size:13px;line-height:1.7;margin:0 0 12px}
.ratings-trend-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ratings-trend-controls .filter-help{margin:8px 0 0}
.ratings-trend-controls .trend-pending{margin:10px 0 0;font-weight:700;color:#654036}
.ratings-filters select:disabled{background:#f3f3f1;color:#646467;cursor:not-allowed}
.ratings-trend-results{margin:22px 0 28px;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:20px;min-width:0}
.ratings-trend-results h2{font-size:19px;display:flex;gap:8px;align-items:center;margin:0 0 12px}
.ratings-trend-results>p{font-size:13px;line-height:1.7;margin:8px 0}
.ratings-trend-companies{list-style:none;padding:0;margin:12px 0 0}
.ratings-trend-companies>li{padding:13px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:start}
.trend-company-name{font-size:15px;font-weight:700;color:#245f83;overflow-wrap:anywhere}
.trend-company-reason{grid-column:1/-1;font-size:13px;line-height:1.8;color:#654036}
.trend-company-history{font-size:13px;color:#245f83;white-space:nowrap}
.ratings-trend-companies a:hover{text-decoration:underline}
.ratings-trend-companies a:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.ratings-page .ratings-table{min-width:0;width:100%;table-layout:fixed}
.ratings-page .ratings-table th,.ratings-page .ratings-table td{overflow-wrap:anywhere}
@media(min-width:1000px){.ratings-page .site-sidebar{display:grid;grid-column:2;grid-row:1}}
@media(max-width:600px){.ratings-filters{grid-template-columns:minmax(0,1fr)}.ratings-trend-controls{padding:12px}.ratings-trend-inputs{grid-template-columns:1fr;gap:10px}.ratings-trend-results{padding:16px}.ratings-trend-companies>li{grid-template-columns:minmax(0,1fr)}.trend-company-reason{grid-row:2}.trend-company-history{grid-row:3}}

/* Publication metadata is independent from the interactive controls. */
.page-introduction,.company-introduction{font-size:15px;line-height:1.85;color:var(--muted,#58616a)}
.article-author{white-space:nowrap}
.article-cover{margin:1.2rem 0 1.8rem}
.article-cover img{display:block;max-width:100%;max-height:360px;width:auto;height:auto;margin:auto;object-fit:contain;border-radius:8px}
.pill.coverage-start{background:#eaf6ed;color:#25613b;border:1px solid #c7e5ce}
[data-change-sort]{font:inherit;font-size:12px;text-align:left;cursor:pointer;white-space:normal;color:#254f70;border:1px solid #cadbe7;border-radius:5px;background:#f3f8fc;padding:7px 8px;line-height:1.5}
[data-change-sort][aria-pressed="true"]{background:#deeff9;border-color:#4380a5;color:#123d59}
[data-change-sort]:focus-visible{outline:2px solid #286389;outline-offset:3px}
.has-change-sort .sort-fallback{display:none}
.ratings-sort-mobile{display:none}
@media(max-width:767px){.ratings-table thead [data-change-sort]{display:none}.ratings-sort-mobile:not([hidden]){display:inline-block;margin:0 0 8px}.article-cover img{max-height:240px}.company-introduction{font-size:14px}}
