@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..900;1,9..144,300..900&family=Manrope:wght@400;500;600;700;800&family=Roboto+Mono:wght@400;500;600&family=Noto+Sans+JP:wght@300;400;500&display=swap";*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,video{max-width:100%;display:block}input,button,textarea,select{font:inherit}:root{--color-bg-base:#1e1e1e;--color-bg-surface:#252526;--color-bg-raised:#2d2d30;--color-bg-input:#3c3c3c;--color-border-subtle:#3e3e42;--color-border-hover:#555558;--color-text-primary:#ccc;--color-text-secondary:#9d9d9d;--color-text-meta:#6a6a6a;--color-text-heading:#e8e8e8;--color-accent:#4fc1ff;--color-accent-deep:#3794ff;--color-accent-soft:#4fc1ff1a;--positive:#4ec9b0;--negative:#f44747;--neutral:#9d9d9d;--shadow:0 2px 8px #0006, 0 1px 2px #0000004d;--chart-grid:#3e3e42;--chart-axis:#8a8d94;--chart-tick:#8a8d94;--chart-label:#8a8d94;--chart-reference:#555558;--chart-legend:#9d9d9d;--chart-accent:#6b9fd4;--chart-positive:#3fa876;--chart-negative:#d46a62;--chart-neutral:#9d9d9d;--chart-inventory:#4d6a6d;--chart-supply:#5b7db1;--chart-demand:#4e8a5e;--bg:var(--color-bg-base);--bg-alt:var(--color-bg-surface);--surface:var(--color-bg-surface);--surface-strong:var(--color-bg-raised);--surface-soft:var(--color-bg-input);--border:var(--color-border-subtle);--border-strong:var(--color-border-hover);--text:var(--color-text-primary);--text-soft:var(--color-text-secondary);--text-faint:var(--color-text-meta);--accent:var(--color-accent);--accent-deep:var(--color-accent-deep);--accent-soft:var(--color-accent-soft)}[data-theme=light]{--color-bg-base:#fff;--color-bg-surface:#f3f3f3;--color-bg-raised:#fff;--color-bg-input:#fff;--color-border-subtle:#e0e0e0;--color-border-hover:#c8c8c8;--color-text-primary:#1e1e1e;--color-text-secondary:#616161;--color-text-meta:#9e9e9e;--color-text-heading:#000;--color-accent:#0078d4;--color-accent-deep:#005a9e;--color-accent-soft:#0078d414;--positive:#107c10;--negative:#a80000;--neutral:#616161;--shadow:0 1px 3px #0000001f, 0 1px 2px #00000014;--chart-grid:#e4e4e4;--chart-axis:#9e9e9e;--chart-tick:#616161;--chart-label:#616161;--chart-reference:#bdbdbd;--chart-legend:#616161;--chart-accent:#0078d4;--chart-positive:#107c10;--chart-negative:#a80000;--chart-neutral:#616161;--chart-inventory:#4d6a6d;--chart-supply:#0078d4;--chart-demand:#107c10;--bg:var(--color-bg-base);--bg-alt:var(--color-bg-surface);--surface:var(--color-bg-surface);--surface-strong:var(--color-bg-raised);--surface-soft:var(--color-bg-surface);--border:var(--color-border-subtle);--border-strong:var(--color-border-hover);--text:var(--color-text-primary);--text-soft:var(--color-text-secondary);--text-faint:var(--color-text-meta);--accent:var(--color-accent);--accent-deep:var(--color-accent-deep);--accent-soft:var(--color-accent-soft)}body{background:var(--bg);color:var(--text);font-family:Manrope,Avenir Next,Segoe UI,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5}html[lang=ja] body{font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,Manrope,sans-serif}.font-serif{font-family:Fraunces,Georgia,serif}.font-mono{font-family:Roboto Mono,JetBrains Mono,ui-monospace,monospace}.city-picker-page{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.city-picker-page>.city-picker-topbar{border-bottom:1px solid var(--border);background:var(--surface-strong);z-index:auto;flex-shrink:0;align-items:center;gap:12px;height:56px;padding:0 20px;display:flex;position:static;top:auto}.city-picker-page>.city-picker-topbar .top-bar-title{text-align:center;min-width:0;color:var(--text-soft);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-family:Fraunces,Georgia,serif;font-size:16px;font-weight:600;line-height:1.2;display:block;overflow:hidden}.city-picker-shell{width:100%;max-width:1180px;min-height:100vh;margin:0 auto;padding:34px 32px 56px}.city-picker-page .city-picker-shell{min-height:calc(100vh - 56px)}.city-picker-frame{flex-direction:column;gap:22px;display:flex}.city-picker-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;padding-bottom:14px;display:flex}.city-picker-heading{gap:5px;min-width:0;display:grid}.city-picker-context{max-width:560px;color:var(--text-soft);margin:0;font-size:13px;line-height:1.45}.city-picker-title{color:var(--text);margin:8px 0 0;font-family:Fraunces,Georgia,serif;font-size:42px;font-weight:400;line-height:1.1}.city-picker-summary{flex-shrink:0;gap:8px;min-width:0;display:flex}.city-picker-summary div{border:1px solid var(--border);background:var(--surface-strong);min-height:34px;color:var(--text-soft);grid-template-columns:auto auto auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.city-picker-summary svg{color:var(--accent)}.city-picker-summary span{font-size:11px}.city-picker-summary strong{color:var(--text);font-family:Roboto Mono,ui-monospace,monospace;font-size:16px;font-weight:600}.city-picker-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.city-picker-body{display:block}.city-picker-coverage{border:1px solid var(--border);background:var(--surface);padding:18px 16px;position:sticky;top:24px}.city-picker-coverage p{color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:10px;font-weight:700}.city-picker-coverage-list{gap:0;display:grid}.city-picker-coverage-row{border-top:1px solid var(--border);min-height:34px;color:var(--text-soft);grid-template-columns:14px 1fr auto;align-items:center;gap:9px;display:grid}.city-picker-coverage-row:first-child{border-top:none}.city-picker-coverage-row span{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%}.city-picker-coverage-row strong{color:var(--text);font-size:13px;font-weight:500}.city-picker-coverage-row em{color:var(--text-faint);font-family:Roboto Mono,ui-monospace,monospace;font-size:12px;font-style:normal}.city-picker-regions{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 16px;display:grid}.city-picker-region{flex-direction:column;gap:8px;display:flex}.city-picker-region-label{border-bottom:1px solid var(--border);letter-spacing:.04em;text-transform:uppercase;min-height:26px;color:var(--text-faint);justify-content:flex-start;align-items:center;gap:7px;padding-bottom:6px;font-size:18px;font-weight:700;display:flex}.city-picker-region-label span{color:var(--text-soft);letter-spacing:0;font-family:Roboto Mono,ui-monospace,monospace;font-size:11px;font-weight:600}.city-picker-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px;display:grid}.city-picker-card,.city-picker-feature{border:1px solid var(--border);background:var(--surface-strong);width:100%;min-height:48px;color:var(--text);text-align:left;cursor:pointer;border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;transition:border-color .12s,background .12s,color .12s;display:grid;position:relative}.city-picker-feature{grid-template-rows:auto 1fr auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;min-height:126px;padding:18px;overflow:hidden}.city-picker-feature:after{content:"";border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);opacity:.55;pointer-events:none;width:34px;height:34px;position:absolute;bottom:18px;right:18px}.city-picker-card:hover,.city-picker-feature:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.city-picker-card-index{color:var(--text-faint);font-family:Roboto Mono,ui-monospace,monospace;font-size:11px;line-height:1}.city-picker-card-main{gap:4px;min-width:0;display:grid}.city-picker-card-main strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.city-picker-card-main span{max-width:100%;color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.35;display:block;overflow:hidden}.city-picker-feature .city-picker-card-main strong{font-size:20px;font-weight:500}.city-picker-feature .city-picker-card-main span{display:block}.city-picker-card-tier{border:1px solid var(--border);color:var(--text-soft);white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:9px;font-weight:600;line-height:1.2}.city-picker-card-arrow{color:var(--accent)}.city-picker-feature .city-picker-card-tier{border-radius:999px;grid-area:3/2/4/3;justify-self:start}.city-picker-feature .city-picker-card-arrow{grid-area:1/3/2/4}@media (width<=900px){.city-picker-shell{padding:20px 20px 56px}.city-picker-header{flex-direction:column;align-items:start}.city-picker-body{grid-template-columns:1fr}.city-picker-coverage{display:none}.city-picker-regions,.city-picker-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.city-picker-shell{padding:22px 14px 48px}.city-picker-page .city-picker-shell{min-height:auto}.city-picker-frame{gap:22px}.city-picker-feature-grid{display:none}.city-picker-header{gap:18px}.city-picker-context{font-size:12px}.city-picker-title{font-size:28px}.city-picker-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;min-width:0;display:grid}.city-picker-summary div{min-height:42px;padding:8px 10px}.city-picker-summary span{font-size:11px}.city-picker-summary strong{font-size:16px}.city-picker-regions{grid-template-columns:1fr;gap:20px}.city-picker-region{gap:8px}.city-picker-region-label{z-index:2;background:var(--bg);border-bottom-color:var(--border-strong);min-height:34px;padding:8px 0;position:sticky;top:0}.city-picker-grid{grid-template-columns:1fr;gap:7px}.city-picker-card{border-radius:6px;grid-template-columns:minmax(0,1fr) auto;min-height:54px;padding:13px 14px}.city-picker-card-index,.city-picker-card-tier{display:none}.city-picker-card-arrow{opacity:.8;width:15px;height:15px;display:block}.city-picker-card-main strong{font-size:15px;font-weight:500}.city-picker-card-main span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;display:block;overflow:hidden}}.analysis-section-nav{border-bottom:2px solid var(--border);gap:0;width:100%;padding-top:16px;display:flex}.analysis-section-nav-btn{cursor:pointer;color:var(--text-soft);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:9px 22px 11px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s}.analysis-section-nav-btn:hover{color:var(--text)}.analysis-section-nav-btn.active{color:var(--accent);border-bottom-color:var(--accent)}@media (width<=640px){.analysis-section-nav{overflow-x:visible}.analysis-section-nav-btn{text-overflow:ellipsis;flex:1 1 0;min-width:0;padding-inline:8px;font-size:13px;overflow:hidden}}.analysis-panel{width:100%;color:var(--text);flex-direction:column;gap:20px;padding:28px 0 40px;display:flex}.analysis-hero{border-radius:0;align-items:start;gap:24px;padding:24px 26px;display:grid}.analysis-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep);margin:0 0 10px;font-size:11px}.analysis-hero h1,.analysis-section h2,.analysis-empty h2{color:var(--text);margin:0;font-family:Fraunces,Georgia,serif;font-size:26px;line-height:1.12}.analysis-copy,.analysis-section p,.analysis-empty p{color:var(--text-soft);margin:10px 0 0;font-size:15px;line-height:1.55}.analysis-badges{grid-template-columns:1fr;align-content:start;justify-self:end;gap:10px;width:100%;max-width:420px;display:grid}.analysis-badge{border:1px solid var(--border);background:var(--surface-strong);border-radius:3px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:6px;padding:16px 18px;display:flex}.analysis-badge span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:11px}.analysis-badge strong{letter-spacing:-.03em;font-family:Roboto Mono,ui-monospace,monospace;font-size:18px;font-weight:600;line-height:1.25}.tone-positive strong{color:var(--positive)}.tone-negative strong{color:var(--negative)}.tone-neutral strong{color:var(--neutral)}.tone-muted strong{color:var(--text-faint)}strong.tone-positive{color:var(--positive)}strong.tone-negative{color:var(--negative)}.analysis-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.analysis-card,.analysis-section,.analysis-note{border:1px solid var(--border);background:var(--surface-strong);border-radius:4px}.analysis-card{flex-direction:column;gap:8px;padding:16px;display:flex}.analysis-card-label{letter-spacing:.02em;color:var(--text-faint);font-size:12px;font-weight:600}.analysis-card strong{color:var(--text);letter-spacing:-.03em;font-family:Roboto Mono,ui-monospace,monospace;font-size:18px;line-height:1.2}.analysis-card span:last-child{color:var(--text-soft);font-size:13px;line-height:1.4}.analysis-cards-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.analysis-mini-card{border:1px solid var(--border);background:var(--surface-strong);border-radius:3px;flex-direction:column;gap:6px;padding:14px;display:flex}.analysis-mini-card strong{color:var(--text);font-size:15px}.analysis-mini-card span{color:var(--text-soft);font-size:12px}.analysis-mini-rank{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-deep)!important}.analysis-mini-value{color:var(--text);letter-spacing:-.04em;font-family:Roboto Mono,ui-monospace,monospace;font-size:24px;font-weight:700}.analysis-note{color:var(--text);background:#38bdf814;padding:14px 16px}.analysis-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.analysis-control-group{flex-direction:column;gap:5px;display:flex}.analysis-control-group--select{min-width:144px}.analysis-control-label{color:var(--text-faint);text-transform:uppercase;font-size:10px;font-weight:700;line-height:1}.analysis-controls label{color:var(--text-faint);letter-spacing:.02em;flex-direction:column;gap:6px;font-size:11px;font-weight:600;display:flex}.analysis-controls select{background:var(--surface-strong);border:1px solid var(--border);min-width:180px;color:var(--text);cursor:pointer;border-radius:3px;padding:10px 12px;font-size:14px}.analysis-segments{background:var(--surface-strong);border:1px solid var(--border);border-radius:3px;gap:0;padding:0;display:flex;overflow:hidden}.analysis-segment{border:none;border-right:1px solid var(--border);color:var(--text-soft);cursor:pointer;background:0 0;border-radius:0;padding:8px 14px;font-size:12px;font-weight:600;transition:background .12s,color .12s}.analysis-segment:last-child{border-right:none}.analysis-segment.active{background:var(--accent-soft);color:var(--text)}.band-toggle{border:1px solid var(--border);background:var(--surface-strong);color:var(--text-soft);cursor:pointer;border-radius:20px;align-items:center;gap:8px;padding:5px 10px 5px 12px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.band-toggle:hover{border-color:var(--border-strong);color:var(--text)}.band-toggle--on{border-color:var(--accent-soft);color:var(--text)}.band-toggle-label{white-space:nowrap}.band-toggle-pill{letter-spacing:.04em;background:var(--border);min-width:30px;color:var(--text-faint);border-radius:10px;justify-content:center;align-items:center;padding:1px 5px;font-size:10px;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.band-toggle--on .band-toggle-pill{background:var(--accent-soft);color:#000}.analysis-section{padding:20px 20px 18px}.analysis-section-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.analysis-section-head>:first-child{flex:auto;min-width:0}.analysis-section-head .analysis-controls{flex:none}.analysis-section-head p{max-width:none}.analysis-section-head--full-copy{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px 18px;display:grid}@media (width<=640px){.analysis-section-head,.analysis-section-head--full-copy{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.analysis-section-head .analysis-controls{width:100%}.analysis-section-head .analysis-controls label,.analysis-section-head .analysis-controls select{width:100%;min-width:0}}.analysis-statline{color:var(--text-soft);flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.analysis-chip-group{flex-wrap:wrap;gap:6px;display:flex}.analysis-chip{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text-soft);cursor:pointer;border-radius:3px;padding:8px 12px;font-size:13px;font-weight:600;transition:color .12s,border-color .12s,background .12s}.analysis-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.analysis-chart{outline:none;height:340px}.analysis-chart--tall{height:520px}.analysis-chart svg,.analysis-chart svg *{outline:none}.recharts-wrapper,.recharts-wrapper svg,.recharts-wrapper *,.recharts-surface,.recharts-layer,.recharts-scatter-symbol:focus,.recharts-scatter-symbol:focus-visible{outline:none!important}.scatter-type-toggles{flex-wrap:wrap;gap:6px;padding:0 0 12px;display:flex}.scatter-type-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-soft);cursor:pointer;border-radius:3px;padding:4px 12px;font-size:12px;font-weight:600;transition:color .12s,border-color .12s,background .12s}.scatter-type-btn:not(.active){opacity:.45}.scatter-type-all{color:var(--text-faint);border-style:dashed;margin-left:4px;opacity:1!important}.analysis-table-wrap{overflow-x:auto}.analysis-table{border-collapse:collapse;width:100%}.analysis-table th,.analysis-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 10px}.analysis-table th{color:var(--text-faint);letter-spacing:.03em;-webkit-user-select:none;user-select:none;cursor:pointer;font-size:11px;font-weight:700;transition:background .15s,color .15s}.analysis-table th:hover{background:var(--surface-soft);color:var(--text)}.analysis-table td{color:var(--text);font-size:14px}.yield-sim-metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (width<=720px){.yield-sim-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.inv-table-wrap{margin-top:16px;overflow-x:auto}.inv-table{border-collapse:collapse;width:100%}.inv-table th,.inv-table td{text-align:right;border-bottom:1px solid var(--border);border-right:1px solid color-mix(in srgb, var(--border) 50%, transparent);white-space:nowrap;padding:10px 24px;font-size:13px}@media (width<=720px){.inv-table th,.inv-table td{padding:10px 14px;font-size:12px}.inv-col-desktop{display:none}}.inv-table th:last-child,.inv-table td:last-child{border-right:none}.inv-table th:first-child,.inv-table td:first-child{text-align:left}.inv-table th{color:var(--text-faint);letter-spacing:.03em;-webkit-user-select:none;user-select:none;background:var(--color-bg-surface);font-size:11px;font-weight:700}.inv-table td{color:var(--text)}.inv-table .tone-positive{color:var(--positive);font-weight:600}.inv-table .tone-negative{color:var(--negative);font-weight:600}.inv-table-year{vertical-align:middle;font-weight:600}.inv-table-row--case-a td{border-bottom:none;padding-bottom:3px}.inv-table-row--case-b td{padding-top:3px}.inv-table-row--case-a td:first-child{border-left:3px solid var(--chart-supply);padding-left:10px}.inv-table-row--case-b td:first-child{border-left:3px solid var(--chart-negative);padding-left:10px}.inv-table-legend{color:var(--text-faint);align-items:center;gap:8px;margin-bottom:10px;font-size:12px;display:flex}.inv-table-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.inv-table-legend-dot--a{background:var(--chart-supply)}.inv-table-legend-dot--b{background:var(--chart-negative)}.balance-cell-demand-led{font-weight:600;color:var(--positive)!important}.balance-cell-supply-led{font-weight:600;color:var(--accent)!important}.balance-cell-balanced{color:var(--neutral)}.balance-cell-no-signal{color:var(--text-faint);font-style:italic}.analysis-color-dot{vertical-align:middle;border:1px solid #00000014;border-radius:999px;width:12px;height:12px;display:inline-block}.analysis-color-dot.negative-gap{background:var(--positive)}.analysis-color-dot.positive-gap{background:var(--accent)}.analysis-color-dot.neutral{background:var(--text-faint)}.analysis-empty,.analysis-empty-row{color:var(--text-soft)}.analysis-empty{text-align:center;max-width:720px;margin:auto;padding:32px}.analysis-tooltip{background:var(--surface-strong);border:1px solid var(--border-strong);color:var(--text);box-shadow:var(--shadow);border-radius:3px;min-width:140px;padding:10px 14px;font-size:13px}.analysis-tooltip-title{color:var(--text-soft);margin-bottom:6px;font-size:11px;font-weight:600}.snapshot-pill{border:1px solid var(--border);background:var(--surface);color:var(--text-soft);border-radius:3px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:inline-flex}.analysis-matrix-wrap{overflow-x:auto}.analysis-matrix{grid-template-columns:130px repeat(5,minmax(88px,1fr));align-items:stretch;gap:8px;display:grid}.analysis-matrix-corner,.analysis-matrix-header,.analysis-matrix-cell{text-align:center;border-radius:0;justify-content:center;align-items:center;min-height:56px;padding:12px 10px;display:flex}.analysis-matrix-corner,.analysis-matrix-header{background:var(--surface-strong);border:1px solid var(--border);color:var(--text-soft);font-size:12px;font-weight:600}.analysis-matrix-rowlabel{text-align:left;justify-content:flex-start}.analysis-matrix-cell{border:1px solid #0000001a;font-size:14px;font-weight:600}.analysis-matrix-legend{color:var(--text-soft);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;display:flex}.age-ward-select{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:3px;padding:3px 8px;font-size:13px}.analysis-curve-toggle{color:var(--text-soft);gap:12px;margin:8px auto 0;padding:0 0 4px;font-size:13px;display:flex}.sel-drop{min-width:0;display:inline-flex;position:relative}.sel-drop-trigger{width:100%;color:var(--text);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:var(--surface-strong);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:116px;min-height:40px;padding:9px 11px 9px 13px;font-size:13px;font-weight:700;transition:border-color .12s,color .12s,background .12s;display:inline-grid}.sel-drop-trigger:hover,.sel-drop-trigger.open{border-color:var(--border-strong);color:var(--text);background:var(--surface-strong)}.sel-drop-trigger.open .sel-drop-chevron{transform:rotate(180deg)}.sel-drop-label{text-align:left;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sel-drop-chevron{color:var(--text-soft);flex-shrink:0;transition:transform .15s}.sel-drop-panel{z-index:200;background:var(--surface-strong);border:1px solid var(--border-strong);min-width:max(100%,176px);box-shadow:var(--shadow);scrollbar-color:var(--border-strong) var(--surface-strong);scrollbar-width:thin;border-radius:4px;max-height:280px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.sel-drop-panel::-webkit-scrollbar{width:10px}.sel-drop-panel::-webkit-scrollbar-track{background:var(--surface-strong)}.sel-drop-panel::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--surface-strong);border-radius:999px}.sel-drop-panel::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.sel-drop-panel::-webkit-scrollbar-button{width:0;height:0;display:none}.sel-drop-option{text-align:left;width:100%;color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;font-size:13px;font-weight:650;transition:background .1s,color .1s;display:grid}.sel-drop-option span{text-overflow:ellipsis;min-width:0;overflow:hidden}.sel-drop-option:hover{background:var(--surface-soft);color:var(--text)}.sel-drop-option.selected{color:var(--text);background:var(--surface-soft)}.yield-sim-shell{gap:18px;width:100%;max-width:1180px;margin-inline:auto;padding-top:22px;display:grid}.sim-form-group{border:1px solid var(--border);background:var(--surface-strong);border-radius:4px;width:100%;max-width:1040px;margin-inline:auto;padding:18px 20px 20px}.sim-form-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text);margin-bottom:14px;font-size:11px;font-weight:650}.yield-sim-section-head{margin-bottom:16px}.yield-sim-section-head h2{color:var(--text);letter-spacing:0;margin:0;font-family:inherit;font-size:15px;font-weight:600;line-height:1.35}.yield-sim-section-head p{color:var(--text-soft);margin:4px 0 0;font-size:13px;line-height:1.5}.sim-form-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px 18px;display:grid}.sim-form-grid--property{grid-template-columns:minmax(150px,1.2fr) minmax(200px,1.6fr) minmax(110px,.75fr) repeat(3,minmax(90px,.55fr));align-items:end;gap:14px 18px;margin-bottom:16px;display:grid}.sim-form-grid--property-secondary{grid-template-columns:minmax(130px,.8fr) minmax(230px,1fr) minmax(230px,1fr);align-items:end;gap:14px 18px;max-width:760px;display:grid}.sim-form-grid--financing{grid-template-columns:repeat(3,minmax(160px,1fr));gap:14px 18px;max-width:840px;display:grid}.sim-form-grid--ops{grid-template-columns:repeat(3,minmax(145px,1fr));gap:14px 18px;max-width:760px;display:grid}.sim-control-field{flex-direction:column;gap:7px;min-width:0;display:flex}.sim-control-label{color:var(--text);letter-spacing:.025em;text-transform:uppercase;font-size:12px;font-weight:650;line-height:1.2}.sim-control-field--primary .sim-control-label{color:var(--text)}.sim-control-body{align-items:center;gap:8px;min-width:0;min-height:40px;display:flex}.sim-control-body>.sel-drop{width:100%}.sim-control-suffix{color:var(--text-soft);flex-shrink:0;font-size:12px;font-weight:600;line-height:1.2}.sim-num-input{background:var(--surface-strong);border:1px solid var(--border);width:100%;min-width:0;color:var(--text);border-radius:4px;outline:none;min-height:40px;padding:8px 10px;font-family:inherit;font-size:14px;font-weight:500;transition:border-color .12s,box-shadow .12s,background .12s}.sim-control-field--primary .sim-num-input{font-size:14px}.sim-num-input:hover{border-color:var(--border-strong)}.sim-num-input:focus{border-color:var(--accent);background:var(--surface-strong);box-shadow:0 0 0 2px var(--accent-soft)}.yield-sim-shell .sel-drop-trigger{background:var(--surface-strong);min-height:40px;font-weight:500}.yield-sim-shell .sel-drop-trigger:hover,.yield-sim-shell .sel-drop-trigger.open{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}@media (width<=1180px){.sim-form-grid--property,.sim-form-grid--ops{grid-template-columns:repeat(3,minmax(150px,1fr))}}@media (width<=860px){.sim-form-grid--property,.sim-form-grid--property-secondary,.sim-form-grid--financing,.sim-form-grid--ops{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}}@media (width<=560px){.sim-form-grid,.sim-form-grid--property,.sim-form-grid--property-secondary,.sim-form-grid--financing,.sim-form-grid--ops{grid-template-columns:1fr}.sim-control-label{font-size:11px}}.sim-advanced-toggle{letter-spacing:0;color:var(--text-soft);cursor:pointer;-webkit-user-select:none;user-select:none;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:4px 8px;padding:14px 0 0;font-size:13px;font-weight:400;list-style:none;display:grid}.sim-advanced-toggle:hover{color:var(--text)}.sim-advanced-toggle-title{color:var(--text);font-size:13px;font-weight:400}.sim-advanced-toggle-desc{color:var(--text-soft);grid-column:2;font-size:12px;font-weight:400;line-height:1.45}.sim-advanced-toggle::marker{display:none}.sim-advanced-toggle::-webkit-details-marker{display:none}details[open]>.sim-advanced-toggle:before{content:"▾  ";grid-row:1}details:not([open])>.sim-advanced-toggle:before{content:"▸  ";grid-row:1}.yield-sim-case-tabs,.yield-sim-actions,.yield-sim-switch-row,.yield-sim-inline-field,.yield-sim-check{align-items:center;display:flex}.yield-sim-case-tabs{flex-wrap:wrap;gap:8px}.yield-sim-case-tab{border:1px solid var(--border);background:var(--surface-strong);color:var(--text-soft);cursor:pointer;border-radius:4px;padding:6px 16px;font-size:13px;font-weight:500}.yield-sim-case-tab.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.yield-sim-cancel-compare{color:var(--text-soft);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:12px}.yield-sim-switches{border-top:1px solid var(--border);gap:10px;margin-top:16px;padding-top:14px;display:grid}.yield-sim-switch-row{flex-wrap:wrap;gap:10px 12px}.yield-sim-check{min-width:180px;color:var(--text-soft);cursor:pointer;gap:7px;font-size:13px}.yield-sim-check input{width:14px;height:14px;accent-color:var(--accent)}.yield-sim-inline-field{color:var(--text-soft);gap:8px;font-size:12px}.yield-sim-inline-field .sim-num-input{width:88px}.yield-sim-actions{flex-wrap:wrap;gap:10px;width:100%;max-width:1040px;margin-inline:auto}.yield-sim-run{border:1px solid var(--accent);background:var(--accent-soft);min-height:40px;color:var(--accent-deep);cursor:pointer;border-radius:4px;padding:0 18px;font-size:13px;font-weight:650;transition:background .12s,border-color .12s,color .12s,opacity .12s}.yield-sim-run:hover:not(:disabled){border-color:var(--accent-deep);background:var(--surface-strong);color:var(--accent-deep)}.yield-sim-run:disabled{opacity:.45;cursor:not-allowed}.yield-sim-run--secondary{border-color:var(--border);color:var(--text-soft);background:0 0}html[lang=ja] .rental-yield-page .module-header h1,html[lang=ja] .rental-yield-page .module-header p,html[lang=ja] .yield-sim-shell,html[lang=ja] .yield-sim-shell .yield-sim-section-head h2,html[lang=ja] .yield-sim-shell .yield-sim-section-head p,html[lang=ja] .yield-sim-shell .sim-form-group-label,html[lang=ja] .yield-sim-shell .sim-control-label,html[lang=ja] .yield-sim-shell .sim-control-suffix,html[lang=ja] .yield-sim-shell .sim-num-input,html[lang=ja] .yield-sim-shell .sel-drop-trigger,html[lang=ja] .yield-sim-shell .sel-drop-label,html[lang=ja] .yield-sim-shell .sel-drop-option,html[lang=ja] .yield-sim-shell .sel-drop-option span,html[lang=ja] .yield-sim-shell .sim-advanced-toggle,html[lang=ja] .yield-sim-shell .sim-advanced-toggle-title,html[lang=ja] .yield-sim-shell .sim-advanced-toggle-desc,html[lang=ja] .yield-sim-shell .yield-sim-run,html[lang=ja] .yield-sim-shell .analysis-section-head h2,html[lang=ja] .yield-sim-shell .analysis-section-head p,html[lang=ja] .yield-sim-shell .analysis-card-label,html[lang=ja] .yield-sim-shell .analysis-card strong,html[lang=ja] .yield-sim-shell .analysis-note,html[lang=ja] .yield-sim-shell .inv-table th,html[lang=ja] .yield-sim-shell .inv-table td{letter-spacing:0;font-weight:400}.age-sim-panel{width:100%;max-width:1040px;padding-top:14px}.age-sim-controls{grid-template-columns:minmax(138px,1fr) minmax(138px,1fr) minmax(92px,.65fr) minmax(92px,.65fr) minmax(164px,1.2fr) minmax(104px,.7fr) auto;align-items:end;gap:14px 18px;margin:0;padding-bottom:0;display:grid}.age-sim-field{gap:7px;min-width:0;display:grid}.age-sim-field>span{color:var(--text);font-size:12px;font-weight:650;line-height:1.2}.age-sim-field--compact{min-width:92px}.age-sim-field--price{min-width:164px}.age-sim-field .sel-drop{width:100%}.age-sim-panel .sel-drop-trigger,.age-sim-panel .age-ward-select{background:var(--surface-strong);border:1px solid var(--border);width:100%;min-height:40px;color:var(--text);border-radius:4px;font-size:14px;font-weight:500}.age-sim-panel .age-ward-select{cursor:text;outline:none;padding:8px 10px;font-family:inherit;transition:border-color .12s,box-shadow .12s,background .12s}.age-sim-panel .sel-drop-trigger:hover,.age-sim-panel .sel-drop-trigger.open,.age-sim-panel .age-ward-select:hover{border-color:var(--border-strong)}.age-sim-panel .age-ward-select:focus,.age-sim-panel .sel-drop-trigger.open{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.age-sim-action{align-items:end;display:flex}.age-sim-submit{white-space:nowrap;min-width:180px}.age-sim-form{flex-wrap:wrap;align-items:flex-end;gap:12px 20px;padding:4px 0 16px;display:flex}.sim-field{flex-direction:column;gap:4px;display:flex}.sim-field-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.age-sim-input{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:3px;width:110px;padding:4px 8px;font-size:13px}.age-sim-run{border:1px solid var(--border-strong);background:var(--surface-soft);color:var(--text);cursor:pointer;border-radius:4px;padding:8px 16px;font-size:13px;font-weight:700;transition:background .12s,border-color .12s}.age-sim-run:hover:not(:disabled){background:var(--surface-strong);border-color:var(--text-soft)}.age-sim-run:disabled{opacity:.55;cursor:default}html[lang=ja] .age-sim-panel,html[lang=ja] .age-sim-panel .age-sim-field>span,html[lang=ja] .age-sim-panel .age-ward-select,html[lang=ja] .age-sim-panel .sel-drop-trigger,html[lang=ja] .age-sim-panel .sel-drop-label,html[lang=ja] .age-sim-panel .sel-drop-option,html[lang=ja] .age-sim-panel .sel-drop-option span,html[lang=ja] .age-sim-panel .age-sim-submit{letter-spacing:0;font-weight:400}@media (width<=1180px){.age-sim-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.age-sim-action{align-items:start}}@media (width<=640px){.age-sim-controls{grid-template-columns:1fr}}.yield-heatmap-wrap{padding-bottom:8px;overflow-x:auto}.yield-heatmap{gap:2px;min-width:max-content;display:grid}.yield-heatmap-corner{background:0 0}.yield-heatmap-col-head{text-align:center;color:var(--text-faint);letter-spacing:.03em;white-space:nowrap;padding:6px 4px;font-size:11px;font-weight:700}.yield-heatmap-row-head{color:var(--text-soft);white-space:nowrap;align-items:center;padding:6px 8px;font-size:12px;font-weight:500;display:flex}.yield-heatmap-cell{text-align:center;cursor:default;border-radius:2px;justify-content:center;align-items:center;min-width:52px;min-height:32px;padding:5px 4px;font-size:12px;font-weight:600;transition:filter .1s;display:flex}.yield-heatmap-cell:hover{filter:brightness(1.12)}.yield-heatmap-cell--empty{background:var(--surface-soft);opacity:.35}.yield-heatmap-legend{color:var(--text-faint);align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.yield-heatmap-legend-bar{background:linear-gradient(90deg,#28507838,#28c878cc);border-radius:3px;flex:1;max-width:160px;height:6px}.yield-sim-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;width:100%;display:flex}.yield-sim-chevron{color:var(--text-faint);font-size:13px;transition:transform .18s}.yield-sim-chevron.open{transform:rotate(180deg)}.station-sensitivity-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=640px){.station-sensitivity-grid{grid-template-columns:1fr}}.station-sensitivity-list{flex-direction:column;gap:11px;display:flex}.station-sensitivity-row{background:0 0;border:0;flex-direction:column;gap:5px;padding:0;display:flex}.station-sensitivity-row:hover{background:0 0}.station-sensitivity-meta{color:var(--text-soft);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.station-sensitivity-rank{color:var(--text-faint);text-align:right;min-width:18px;font-size:11px;font-weight:700}.station-sensitivity-label{color:var(--text-soft);flex:1;font-size:12px;font-weight:500}.station-sensitivity-gap{font-variant-numeric:tabular-nums;letter-spacing:0;text-align:right;min-width:72px;font-family:Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:700}.station-sensitivity-bar-track{background:var(--surface);border-radius:4px;height:7px;overflow:hidden}.station-sensitivity-bar-fill{border-radius:inherit;opacity:.75;height:100%;transition:width .3s}.business-driver-summary{grid-template-columns:minmax(220px,.72fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.business-driver-leaders{flex-direction:column;gap:13px;display:flex}.business-driver-kpi{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding-bottom:13px;display:flex}.business-driver-kpi span{color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.business-driver-kpi strong{color:var(--text);font-size:17px;font-weight:650;line-height:1.25}.business-driver-kpi small{color:var(--text-soft);font-family:Roboto Mono,ui-monospace,monospace;font-size:16px;font-weight:700}.business-driver-components{flex-direction:column;gap:11px;display:flex}.business-driver-component .ward-health-component-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.business-driver-component .ward-health-component-head span{min-width:0;line-height:1.35}.business-driver-component .ward-health-component-head strong{text-align:right;min-width:max-content}.business-driver-component .ward-health-track{background:var(--surface)}@media (width<=640px){.business-driver-summary{grid-template-columns:minmax(0,1fr);gap:18px}.business-driver-components{gap:13px}}.ward-sensitivity-scatter{height:340px;margin-bottom:12px}.ward-compass-legend{color:var(--text-soft);flex-wrap:wrap;gap:12px 20px;margin:0 0 20px;font-size:12px;display:flex}.ward-compass-legend-item{align-items:center;gap:6px;display:flex}.ward-compass-legend-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;display:inline-block}.ward-dual-bar-list{flex-direction:column;gap:14px;display:flex}.ward-dual-bar-row{border-bottom:1px solid var(--border);background:0 0;flex-direction:column;gap:7px;padding:0 0 13px;display:flex}.ward-dual-bar-row:hover{background:0 0}.ward-dual-bar-row:last-child{border-bottom:0;padding-bottom:0}.ward-dual-bar-meta{align-items:center;gap:10px;display:flex}.ward-dominant-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:0;flex-shrink:0;margin-left:auto;padding:0;font-size:10px;font-weight:650;background:0 0!important}.ward-dual-bar-tracks{flex-direction:column;gap:4px;display:flex}.ward-dual-bar-track-wrap{grid-template-columns:58px 1fr 58px;align-items:center;gap:8px;display:grid}.ward-dual-bar-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);text-align:right;font-size:10px;font-weight:700}.ward-dual-bar-track{background:var(--surface);border-radius:4px;height:7px;overflow:hidden}.ward-dual-bar-fill{border-radius:inherit;opacity:.75;height:100%;transition:width .3s}.ward-dual-bar-value{font-variant-numeric:tabular-nums;letter-spacing:0;text-align:right;font-family:Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:700}@media (width<=720px){.analysis-cards-grid{grid-template-columns:repeat(2,1fr)}.analysis-grid{grid-template-columns:1fr}}.screener-sliders{flex-direction:column;gap:14px;max-width:580px;padding:4px 0;display:flex}.screener-slider-row{grid-template-columns:148px 1fr 28px;align-items:center;gap:12px;display:grid}.screener-slider-label{color:var(--text-soft);white-space:nowrap;font-size:13px;font-weight:600}.screener-slider{appearance:none;background:var(--border);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px}.screener-slider::-webkit-slider-thumb{appearance:none;background:var(--color-accent);cursor:pointer;border:2px solid var(--surface-strong);border-radius:50%;width:16px;height:16px;box-shadow:0 1px 4px #00000040}.screener-slider::-moz-range-thumb{background:var(--color-accent);cursor:pointer;border:2px solid var(--surface-strong);border-radius:50%;width:16px;height:16px}.screener-slider-value{color:var(--text-faint);text-align:right;font-size:12px}.screener-filters{flex-wrap:wrap;gap:12px;padding:4px 0 12px;display:flex}.screener-filter-group{align-items:center;gap:8px;display:flex}.screener-filter-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);font-size:12px;font-weight:700}.screener-select{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:4px;min-width:130px;padding:5px 10px;font-size:13px;transition:border-color .12s}.screener-select:hover,.screener-select:focus{border-color:var(--border-strong);outline:none}.screener-panel{background:var(--surface-strong);flex-direction:column;gap:16px;display:flex}.screener-filter-grid{grid-template-columns:repeat(3,minmax(240px,1fr));gap:14px;display:grid}.screener-filter-block{border:1px solid var(--border);background:var(--surface-strong);border-radius:6px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}.screener-filter-block--wide{grid-column:1/-1}.screener-filter-block-head{flex-direction:column;gap:4px;display:flex}.screener-filter-title{color:var(--text);margin:0;font-size:13px;font-weight:600;line-height:1.3}.screener-filter-desc{color:var(--text-soft);margin:0;font-size:12px;line-height:1.45}.screener-filter-field{flex-direction:column;gap:7px;min-width:0;display:flex}.screener-filter-field--wide{flex:100%}.screener-pill-group{flex-wrap:wrap;gap:6px;display:flex}.screener-pill{border:1px solid var(--border);background:var(--surface-strong);min-height:28px;color:var(--text-soft);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;transition:border-color .12s,color .12s,background .12s;display:flex}.screener-pill:hover{border-color:var(--border-strong);color:var(--text);background:var(--surface-strong)}.screener-pill.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent)}.screener-ward-grid{max-height:112px;padding-right:4px;overflow-y:auto}.screener-range-stack{gap:12px;display:grid}.screener-range-inputs{align-items:center;gap:7px;min-width:0;display:flex}.screener-range-affix,.screener-range-dash{color:var(--text-soft);white-space:nowrap;font-size:12px}.screener-range{appearance:none;background:var(--border);cursor:pointer;border-radius:2px;outline:none;width:120px;height:2px}.screener-range::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:pointer;border-radius:50%;width:12px;height:12px}.screener-range::-moz-range-thumb{background:var(--accent);cursor:pointer;border:none;border-radius:50%;width:12px;height:12px}.screener-num-input{border:1px solid var(--border);background:var(--surface-strong);width:78px;min-height:32px;color:var(--text);border-radius:4px;padding:5px 9px;font-family:Roboto Mono,monospace;font-size:12px;transition:border-color .12s,box-shadow .12s}.screener-num-input::placeholder{color:var(--text-faint)}.screener-num-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.screener-threshold-group{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.screener-threshold{border:1px solid var(--border);background:var(--surface-strong);min-width:0;min-height:54px;color:var(--text-soft);cursor:pointer;text-align:left;border-radius:6px;flex-direction:column;justify-content:center;gap:3px;padding:8px;transition:border-color .12s,box-shadow .12s,color .12s;display:flex}.screener-threshold:hover{border-color:var(--border-strong);color:var(--text)}.screener-threshold.active{border-color:var(--accent);color:var(--text);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent)}.screener-threshold-label{white-space:nowrap;font-size:12px;font-weight:600;line-height:1.2}.screener-threshold-value{color:var(--text-soft);white-space:nowrap;font-family:Roboto Mono,monospace;font-size:10px;line-height:1.2}.screener-panel-footer{justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.screener-result-count{color:var(--text-soft);flex-wrap:wrap;align-items:baseline;gap:5px;font-size:13px;display:flex}.screener-result-count strong{color:var(--text);font-size:15px}.screener-reset-btn{border:1px solid var(--border);background:var(--surface-strong);min-height:30px;color:var(--text-soft);cursor:pointer;border-radius:6px;padding:5px 11px;font-size:12px}.screener-reset-btn:hover{border-color:var(--border-strong);color:var(--text)}[data-theme=light] .screener-num-input{background:#fff}@media (width<=1160px){.screener-filter-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media (width<=760px){.screener-filter-grid{grid-template-columns:1fr}.screener-threshold-group{grid-template-columns:repeat(2,minmax(0,1fr))}.screener-panel-footer{flex-direction:column;align-items:flex-start}}.ward-health-detail-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.ward-health-detail-title{color:var(--text);margin:0;font-size:30px;font-weight:700;line-height:1.15}.ward-health-profile-desc,.ward-health-panel-desc{color:var(--text-soft);margin:7px 0 0;font-size:12px;line-height:1.55}.ward-health-score{white-space:nowrap;font-family:Roboto Mono,monospace;font-size:38px;font-weight:700;line-height:1}.ward-health-score span{color:var(--text-faint);margin-left:2px;font-size:14px;font-weight:500}.ward-health-detail-grid{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);align-items:start;gap:22px;display:grid}.ward-health-panel{min-width:0}.ward-health-panel>.ni-label{margin-bottom:0}.ward-health-components{flex-direction:column;gap:11px;margin-top:14px;display:flex}.ward-health-component{flex-direction:column;gap:5px;display:flex}.ward-health-component-head{color:var(--text-soft);justify-content:space-between;gap:12px;font-size:12px;display:flex}.ward-health-component-head strong{font-family:Roboto Mono,monospace;font-size:12px}.ward-health-track{background:var(--surface);border-radius:4px;height:7px;overflow:hidden}.ward-health-fill{border-radius:inherit;height:100%;display:block}.ward-health-evidence{flex-direction:column;gap:12px;display:flex}.ward-health-evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.ward-health-evidence-grid span{border:1px solid var(--border);min-width:0;color:var(--text-soft);border-radius:6px;padding:10px 12px;font-size:11px;line-height:1.35}.ward-health-evidence-grid strong{color:var(--text);margin-top:4px;font-family:Roboto Mono,monospace;font-size:13px;font-weight:600;display:block}.ward-health-groups{flex-wrap:wrap;gap:6px;display:flex}.ward-health-groups span{border:1px solid var(--border);color:var(--text-soft);border-radius:6px;padding:4px 8px;font-size:11px}.ward-health-groups strong{color:var(--text);font-family:Roboto Mono,monospace;font-weight:600}.ward-health-mix{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:18px;padding-top:16px;display:grid}.ward-health-pie{aspect-ratio:1;border:1px solid var(--border);width:160px;box-shadow:inset 0 0 0 30px var(--surface-strong);border-radius:50%}.ward-health-pie-legend{flex-direction:column;gap:7px;min-width:0;display:flex}.ward-health-pie-legend span{color:var(--text-soft);grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:7px;font-size:12px;line-height:1.25;display:grid}.ward-health-pie-legend i{border-radius:50%;width:9px;height:9px}.ward-health-pie-legend strong{color:var(--text);font-family:Roboto Mono,monospace;font-size:12px}.ward-health-lower-grid{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:22px;margin-top:24px;padding-top:20px;display:grid}.ward-health-town-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.ward-health-town-card{border:1px solid var(--border);min-width:0;min-height:56px;color:var(--text);cursor:pointer;text-align:left;background:0 0;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name score""meta score";gap:3px 10px;padding:9px 10px;display:grid}.ward-health-town-card:hover{border-color:var(--border-strong)}.ward-health-town-card span{text-overflow:ellipsis;white-space:nowrap;grid-area:name;font-size:12px;font-weight:500;overflow:hidden}.ward-health-town-card strong{color:var(--accent);grid-area:score;align-self:center;font-size:16px}.ward-health-town-card small{color:var(--text-faint);grid-area:meta;font-size:10px}.ward-health-ward-btn{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.ward-health-ward-btn.active,.ward-health-ward-btn:hover{color:var(--accent)}.ward-health-table-town-links{flex-wrap:wrap;gap:5px;display:flex}.ward-health-table-town-links button{border:1px solid var(--border);color:var(--text-soft);font:inherit;cursor:pointer;background:0 0;border-radius:4px;padding:2px 7px;font-size:11px}.ward-health-table-town-links button:hover{border-color:var(--border-strong);color:var(--text)}@media (width<=980px){.ward-health-detail-grid,.ward-health-lower-grid,.ward-health-mix,.ward-health-town-card-grid{grid-template-columns:1fr}}@media (width<=640px){.ward-health-profile.ni-section{padding:14px}.ward-health-detail-head{flex-direction:column;gap:8px}.ward-health-score{font-size:28px}.ward-health-score span{font-size:12px}.ward-health-detail-title{font-size:22px}.ward-health-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ward-health-mix{grid-template-columns:1fr}.ward-health-pie{width:120px}.ward-health-town-card-grid{grid-template-columns:1fr}.ward-health-lower-grid{gap:16px;margin-top:16px;padding-top:14px}.ward-health-map-chart{height:280px!important}.ward-health-ranking-table-wrap{overflow-x:auto}}html[lang=ja] .analysis-hero h1,html[lang=ja] .analysis-section h2,html[lang=ja] .analysis-empty h2,html[lang=ja] .city-picker-title,html[lang=ja] .ward-health-detail-title{letter-spacing:0;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-weight:400;line-height:1.28}html[lang=ja] .city-picker-shell,html[lang=ja] .city-picker-shell *{letter-spacing:0;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-weight:400}html[lang=ja] .decompose-section .analysis-section h2,html[lang=ja] .decompose-section .analysis-section p,html[lang=ja] .decompose-section .analysis-mini-card strong,html[lang=ja] .decompose-section .analysis-mini-card span,html[lang=ja] .decompose-section .analysis-statline,html[lang=ja] .decompose-section .analysis-statline strong,html[lang=ja] .decompose-section .analysis-segment,html[lang=ja] .decompose-section .sel-drop-trigger,html[lang=ja] .decompose-section .sel-drop-label,html[lang=ja] .decompose-section .sel-drop-option,html[lang=ja] .decompose-section .sel-drop-option span{letter-spacing:0;font-weight:400}html[lang=ja] .decompose-section .analysis-section h2{line-height:1.34}html[lang=ja] .analysis-kicker,html[lang=ja] .analysis-card-label,html[lang=ja] .analysis-control-label,html[lang=ja] .analysis-controls label,html[lang=ja] .analysis-segment,html[lang=ja] .analysis-chip,html[lang=ja] .analysis-table th,html[lang=ja] .analysis-tooltip-title,html[lang=ja] .ward-health-ward-btn,html[lang=ja] .ward-health-town-card span{letter-spacing:0;font-weight:500}html[lang=ja] .ward-health-component-head,html[lang=ja] .ward-health-pie-legend span,html[lang=ja] .ward-health-evidence-grid span,html[lang=ja] .ward-health-groups span,html[lang=ja] .ward-health-table-town-links button{letter-spacing:0;font-weight:400}html[lang=ja] .places-explorer-tooltip{letter-spacing:0;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-weight:400;line-height:1.55}html[lang=ja] .places-explorer-tooltip-title,html[lang=ja] .sel-drop-trigger,html[lang=ja] .sel-drop-option,html[lang=ja] .sel-drop-label,html[lang=ja] .sel-drop-option span{letter-spacing:0;font-weight:500}.sd-composition-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px;display:grid}@media (width<=640px){.sd-composition-grid{grid-template-columns:1fr}}.mobile-filter-trigger{display:none}@media (width<=640px){.mobile-filter-trigger{background:var(--surface-strong);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;border-radius:4px;align-items:center;gap:8px;margin-bottom:4px;padding:10px 14px;font-size:13px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:flex}.mobile-filter-trigger:hover{border-color:var(--border-strong);background:var(--surface-soft)}.analysis-controls-desktop{display:none}.analysis-chart{height:260px!important}.analysis-chart--tall{height:340px!important}}.mobile-filter-backdrop{z-index:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;padding:16px;animation:.15s backdropIn;display:flex;position:fixed;inset:0}.mobile-filter-modal{background:var(--surface-strong);border:1px solid var(--border-strong);border-radius:6px;flex-direction:column;width:min(480px,100vw - 32px);max-height:80vh;animation:.18s cubic-bezier(.22,1,.36,1) paletteIn;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000080}.mobile-filter-modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.mobile-filter-modal-title{color:var(--text);font-size:14px;font-weight:700}.mobile-filter-modal-close{color:var(--text-soft);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:4px;display:flex}.mobile-filter-modal-close:hover{color:var(--text);background:var(--surface-soft)}.mobile-filter-modal-body{flex-direction:column;align-items:stretch;gap:14px;padding:16px;display:flex;overflow-y:auto}.mobile-filter-modal-body .analysis-curve-toggle{grid-template-columns:minmax(0,1fr);gap:8px;width:100%;margin:0;display:grid;padding-bottom:0!important}.mobile-filter-modal-body .analysis-curve-toggle>span{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:10px;font-weight:700;margin:8px 0 0!important}.mobile-filter-modal-body .analysis-segments{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-self:stretch;width:100%;display:grid}.mobile-filter-modal-body .analysis-segment{text-align:center;white-space:normal;min-width:0;min-height:44px;padding:10px 12px;font-size:13px}.mobile-filter-modal-body .sel-drop{width:100%;display:flex}.mobile-filter-modal-body .sel-drop-trigger{align-self:stretch;width:100%;min-height:44px}.mobile-filter-modal-body .sel-drop-panel{min-width:100%}.mobile-filter-modal-body .scatter-type-toggles{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;width:100%;display:grid;padding-bottom:0!important}.mobile-filter-modal-body .scatter-type-toggles>span{letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;font-weight:700;line-height:1;color:var(--text-faint)!important;margin:0!important;font-size:10px!important}.mobile-filter-modal-body .scatter-type-btn{text-overflow:ellipsis;width:100%;min-width:0;min-height:36px;padding:7px 10px;overflow:hidden}.mobile-filter-modal-body .analysis-curve-toggle+.scatter-type-toggles,.mobile-filter-modal-body .analysis-curve-toggle+div[class*=series],.mobile-filter-modal-body>*+*{padding-top:0}.mobile-filter-modal-body .series-toggle-bar{flex-wrap:wrap}@media (width<=720px){.yield-sim-metrics-grid .analysis-card{padding:12px}.yield-sim-metrics-grid .analysis-card strong{font-size:15px}.yield-sim-metrics-grid .analysis-card-label{margin-bottom:4px;font-size:11px;line-height:1.3}.recharts-legend-wrapper{font-size:11px!important}.analysis-chart--tall{height:300px!important}}.app-shell{background:var(--bg);height:100%;min-height:100vh;display:flex}.left-rail{background:var(--surface-strong);border-right:1px solid var(--border);z-index:100;flex-direction:column;flex-shrink:0;width:64px;height:100vh;transition:width .22s cubic-bezier(.22,1,.36,1);display:flex;position:sticky;top:0;overflow:hidden}.left-rail:hover{width:220px}.app-shell--focus .left-rail,.app-shell--focus .left-rail:hover{width:56px}.app-shell--focus .left-rail:hover .rail-item-label,.app-shell--focus .left-rail:hover .rail-logo-text,.app-shell--focus .left-rail:hover .rail-group-label{opacity:0}.app-shell--focus .left-rail:hover .rail-group-label{height:0}.rail-logo{border-bottom:1px solid var(--border);min-height:64px;color:var(--text);align-items:center;gap:12px;padding:18px 0 18px 18px;text-decoration:none;display:flex;overflow:hidden}.rail-logo-mark{flex-shrink:0;width:28px;height:28px}.rail-logo-text{color:var(--text);white-space:nowrap;opacity:0;font-size:13px;font-weight:700;line-height:1.2;transition:opacity .18s}.left-rail:hover .rail-logo-text{opacity:1}.rail-nav{flex-direction:column;flex:1;gap:0;min-height:0;padding:4px 0;display:flex;overflow-y:auto}.rail-group{flex-direction:column;display:flex}.rail-group--border{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.rail-group-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);white-space:nowrap;opacity:0;height:0;padding:8px 0 4px 20px;font-size:10px;font-weight:700;transition:opacity .18s,height .18s;overflow:hidden}.left-rail:hover .rail-group-label{opacity:1;height:26px}.rail-item{color:var(--text-soft);white-space:nowrap;touch-action:manipulation;border-left:3px solid #0000;align-items:center;gap:14px;min-height:48px;padding:12px 0 12px 18px;text-decoration:none;transition:color .15s,border-color .15s,background .15s;display:flex;overflow:hidden}.rail-item:hover{color:var(--text);background:var(--surface-soft)}.rail-item.active{color:var(--accent);border-left-color:var(--accent);background:var(--accent-soft)}.rail-item-icon{flex-shrink:0;width:20px;height:20px}.rail-item-label{opacity:0;font-size:13px;font-weight:600;transition:opacity .18s;overflow:hidden}.left-rail:hover .rail-item-label{opacity:1}.rail-bottom{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:2px;margin-top:auto;padding:8px 0;display:flex}.rail-switch-btn{width:100%;color:var(--text-faint);font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:14px;min-height:48px;padding:12px 0 12px 18px;font-size:13px;font-weight:600;transition:color .15s,background .15s;display:flex;overflow:hidden}.rail-switch-btn:hover{color:var(--text-soft);background:var(--surface-soft)}.rail-switch-btn-icon{flex-shrink:0;width:20px;height:20px}.rail-switch-btn-label{opacity:0;transition:opacity .18s}.left-rail:hover .rail-switch-btn-label,.left-rail--mobile-overlay .rail-switch-btn-label{opacity:1}.rail-settings{justify-content:space-between;align-items:center;gap:4px;padding:6px 12px 4px;display:flex;overflow:hidden}.rail-settings-lang{opacity:0;align-items:center;gap:2px;transition:opacity .18s;display:flex}.left-rail:hover .rail-settings-lang,.left-rail--mobile-overlay .rail-settings-lang{opacity:1}.rail-settings-btn{color:var(--text-faint);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:4px 8px;font-size:12px;font-weight:600;transition:color .12s,background .12s;display:flex}.rail-settings-btn:hover{color:var(--text);background:var(--surface-soft)}.rail-settings-btn.active{color:var(--accent)}.rail-settings-theme{opacity:0;flex-shrink:0;padding:4px 6px;transition:opacity .18s}.left-rail:hover .rail-settings-theme,.left-rail--mobile-overlay .rail-settings-theme{opacity:1}.switch-confirm-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:center;padding:24px;animation:.15s backdropIn;display:flex;position:fixed;inset:0}.switch-confirm-card{background:var(--surface-strong);border:1px solid var(--border-strong);width:min(400px,100vw - 48px);box-shadow:var(--shadow);border-radius:4px;flex-direction:column;gap:16px;padding:24px;animation:.18s cubic-bezier(.22,1,.36,1) paletteIn;display:flex}.switch-confirm-title{color:var(--text);margin:0;font-size:15px;font-weight:600;line-height:1.3}.switch-confirm-body{color:var(--text-soft);margin:0;font-size:13px;line-height:1.55}.switch-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.switch-confirm-cancel{border:1px solid var(--border);color:var(--text-soft);font:inherit;cursor:pointer;background:0 0;border-radius:4px;padding:8px 16px;font-size:13px;transition:border-color .12s,color .12s}.switch-confirm-cancel:hover{border-color:var(--border-strong);color:var(--text)}.switch-confirm-go{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-deep);font:inherit;cursor:pointer;border-radius:4px;padding:8px 16px;font-size:13px;font-weight:600;transition:border-color .12s,background .12s,color .12s}.switch-confirm-go:hover{border-color:var(--accent-deep);background:var(--surface-strong);color:var(--accent-deep)}.main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.top-bar{background:var(--surface-strong);border-bottom:1px solid var(--border);z-index:90;flex-shrink:0;align-items:center;gap:12px;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.top-bar-city-chip{border:1px solid var(--border);background:var(--color-bg-base);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:3px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:700;transition:border-color .15s,background .15s;display:flex}.top-bar-city-chip:hover{border-color:var(--border-strong);background:var(--bg)}.top-bar-shortcut{color:var(--text-faint);background:var(--surface-soft);border:1px solid var(--border);letter-spacing:.02em;border-radius:3px;padding:2px 5px;font-family:Roboto Mono,monospace;font-size:10px}.top-bar-title{text-align:center;color:var(--text-soft);letter-spacing:.02em;flex:1;font-family:Fraunces,Georgia,serif;font-size:16px;font-weight:600}.top-bar-actions{align-items:center;gap:4px;display:flex}.top-bar-btn{color:var(--text-soft);cursor:pointer;background:0 0;border:none;border-radius:3px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;font-weight:600;transition:color .12s,background .12s;display:flex}.top-bar-btn:hover{color:var(--text);background:var(--surface-soft)}.top-bar-btn.active{color:var(--accent)}.top-bar-divider{background:var(--border);width:1px;height:18px;margin:0 4px}.content-area{flex:1;padding:0 24px 48px;overflow-y:auto}.app-shell--focus .content-area{padding-left:32px;padding-right:32px}.palette-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:flex-start;padding-top:100px;animation:.15s backdropIn;display:flex;position:fixed;inset:0}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}.palette-card{background:var(--surface-strong);border:1px solid var(--border-strong);border-radius:4px;width:min(480px,100vw - 32px);animation:.18s cubic-bezier(.22,1,.36,1) paletteIn;overflow:hidden;box-shadow:0 8px 32px #00000080}@keyframes paletteIn{0%{opacity:0;transform:scale(.96)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.palette-search{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette-search-icon{color:var(--text-faint);flex-shrink:0}.palette-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:15px}.palette-search input::placeholder{color:var(--text-faint)}.palette-list{max-height:360px;padding:6px;overflow-y:auto}.palette-region-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);padding:8px 10px 4px;font-size:10px;font-weight:700}.palette-city-btn{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:3px;justify-content:space-between;align-items:center;gap:10px;padding:10px;font-size:14px;font-weight:500;transition:background .1s;display:flex}.palette-city-btn:hover,.palette-city-btn.focused{background:var(--surface-soft)}.palette-city-btn.focused{background:var(--accent-soft);color:var(--accent)}.palette-city-name-ja{font-weight:700}.palette-city-name-en{color:var(--text-soft);font-size:12px}.palette-city-region{color:var(--text-faint);font-size:11px}.palette-footer{border-top:1px solid var(--border);color:var(--text-faint);gap:16px;padding:10px 16px;font-size:11px;display:flex}.palette-footer kbd{border:1px solid var(--border);background:var(--surface);border-radius:4px;align-items:center;margin-right:4px;padding:1px 5px;font-family:Roboto Mono,monospace;font-size:10px;display:inline-flex}.module-page{flex-direction:column;gap:20px;padding:0 0 40px;display:flex}.module-header{border-bottom:1px solid var(--border);padding-top:32px;padding-bottom:24px}.module-header-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep);align-items:center;gap:8px;margin-bottom:8px;font-size:10px;display:flex}.module-header-kicker-ja{opacity:.6;font-size:10px}.module-header h1{color:var(--text);margin-bottom:8px;font-family:Fraunces,Georgia,serif;font-size:30px;font-weight:700;line-height:1.1}.module-header p{color:var(--text-soft);font-size:14px;line-height:1.6}html[lang=ja] .rail-logo-text,html[lang=ja] .rail-group-label,html[lang=ja] .rail-item-label,html[lang=ja] .top-bar-city-chip,html[lang=ja] .palette-region-label,html[lang=ja] .palette-city-btn,html[lang=ja] .palette-city-name-ja{letter-spacing:0;font-weight:500}html[lang=ja] .palette-search input,html[lang=ja] .palette-city-region,html[lang=ja] .palette-footer{letter-spacing:0;font-weight:400}html[lang=ja] .module-header h1{letter-spacing:0;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-weight:500;line-height:1.24}.loading-state{min-height:200px;color:var(--text-soft);justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex}.loading-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state{text-align:center;color:var(--negative);padding:32px;font-size:14px}.rail-mobile-close{color:var(--text-soft);cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:3px;flex-shrink:0;margin-left:auto;margin-right:12px;padding:4px;display:none}.rail-mobile-close:hover{color:var(--text);background:var(--surface-soft)}.left-rail--mobile-overlay{display:none}.top-bar-hamburger{color:var(--text-soft);cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:8px;display:none}.top-bar-hamburger:hover{color:var(--text);background:var(--surface-soft)}.mobile-module-nav{display:none}.mobile-module-nav-scroller{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:6px;display:flex;overflow-x:auto}.mobile-module-nav-scroller::-webkit-scrollbar{display:none}.mobile-module-pill{border:1px solid var(--border);background:var(--surface-strong);min-height:36px;color:var(--text-soft);white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:600;line-height:1;text-decoration:none;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.mobile-module-pill:hover{border-color:var(--border-strong);color:var(--text)}.mobile-module-pill.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep)}@media (width<=900px){.left-rail,.left-rail:hover{width:56px}.left-rail:hover .rail-item-label,.left-rail:hover .rail-logo-text{opacity:0}.content-area{padding:0 12px 48px}}@media (width<=600px){.top-bar-title,.top-bar-shortcut{display:none}}@media (width<=640px){html[lang=ja] .module-header h1{letter-spacing:0;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-size:24px;font-weight:500;line-height:1.24}.left-rail:not(.left-rail--mobile-overlay){display:none}.top-bar-hamburger{display:flex}.top-bar{justify-content:space-between;padding:0 12px}.top-bar-city-chip{margin-left:auto}.mobile-module-nav{border-bottom:1px solid var(--border);background:var(--surface-strong);z-index:80;flex-shrink:0;padding:8px 12px;display:block}.left-rail--mobile-overlay{z-index:200;width:220px;height:100dvh;max-height:100dvh;transition:transform .24s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:0;left:0;overflow:hidden;transform:translate(-100%)}.app-shell--focus .left-rail--mobile-overlay,.app-shell--focus .left-rail--mobile-overlay:hover{width:220px}.left-rail--mobile-overlay.mobile-open{transform:translate(0)}.left-rail--mobile-overlay .rail-item-label,.left-rail--mobile-overlay .rail-logo-text,.left-rail--mobile-overlay .rail-group-label{opacity:1;height:auto}.left-rail--mobile-overlay .rail-group-label{height:26px}.app-shell--focus .left-rail--mobile-overlay .rail-item-label,.app-shell--focus .left-rail--mobile-overlay .rail-logo-text,.app-shell--focus .left-rail--mobile-overlay .rail-group-label,.app-shell--focus .left-rail--mobile-overlay:hover .rail-item-label,.app-shell--focus .left-rail--mobile-overlay:hover .rail-logo-text,.app-shell--focus .left-rail--mobile-overlay:hover .rail-group-label{opacity:1;height:auto}.app-shell--focus .left-rail--mobile-overlay .rail-group-label,.app-shell--focus .left-rail--mobile-overlay:hover .rail-group-label{height:26px}.rail-mobile-close{display:flex}.left-rail--mobile-overlay .rail-logo{width:100%}.left-rail--mobile-overlay .rail-nav{-webkit-overflow-scrolling:touch;overflow-y:auto}.left-rail--mobile-overlay .rail-bottom{padding-bottom:calc(8px + env(safe-area-inset-bottom));background:var(--surface-strong)}.mobile-nav-backdrop{z-index:199;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;animation:.18s backdropIn;position:fixed;inset:0}}.ni-page{flex-direction:column;gap:16px;display:flex}.ni-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (width<=640px){.ni-controls{align-items:flex-start;gap:8px 12px}.ni-controls .sel-drop{flex:150px}.ni-controls .ni-label{padding-top:11px}}.ni-section{border:1px solid var(--border);background:var(--surface-strong);border-radius:4px;padding:16px 20px}.ni-section-label{color:var(--text-soft);margin-bottom:12px;font-size:12px}.ni-section-sublabel{opacity:.6;margin-left:8px;font-size:10px}.ni-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.ni-metric-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 14px}.ni-metric-label{color:var(--text-faint);margin-bottom:4px;font-size:10px}.ni-metric-value{color:var(--text);font-family:Roboto Mono,ui-monospace,monospace;font-size:15px;font-weight:500}.places-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.places-summary-card{border:1px solid var(--border);background:var(--surface-strong);border-radius:6px;flex-direction:column;justify-content:space-between;gap:8px;min-height:70px;padding:14px 16px 13px;display:flex;position:relative;overflow:hidden}.places-summary-card:before{content:none}.places-summary-card--positive{border-color:var(--border);background:var(--surface-strong)}.places-summary-card--positive:before{content:none}.places-summary-card--negative{border-color:var(--border);background:var(--surface-strong)}.places-summary-card--negative:before{content:none}.places-group-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.places-group-card{border:1px solid var(--border);background:var(--surface-strong);min-height:132px;color:var(--text);cursor:pointer;text-align:left;border-radius:6px;flex-direction:column;justify-content:space-between;gap:10px;padding:14px 16px;transition:box-shadow .15s,transform .15s;display:flex}.places-group-card.active{box-shadow:inset 0 0 0 1px var(--text)}.places-group-card:hover{box-shadow:inset 0 0 0 1px var(--text);transform:translateY(-1px)}.places-group-card-title{min-height:30px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700;line-height:1.3}.places-group-primary{align-items:baseline;gap:8px;display:flex}.places-group-primary-value{color:var(--text);font-size:22px;font-weight:700;line-height:1}.places-group-primary-label{color:var(--text-soft);font-size:10px;line-height:1.2}.places-group-metrics{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.places-group-metrics>span,.places-group-improving{flex-direction:column;gap:2px;min-width:0;display:flex}.places-group-metric-label{color:var(--text-soft);font-size:10px;line-height:1.2}.places-group-metric-value{color:var(--text);font-size:12px;font-weight:700}.places-group-improving{border-top:1px solid var(--border);padding-top:8px}@media (width<=1280px){.places-group-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}.places-chart-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.places-table-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.places-table-note{color:var(--text);margin:0;font-size:12px}.places-table-controls{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.places-table-mode{border:1px solid var(--border);background:var(--surface-strong);color:var(--text);font:inherit;cursor:pointer;border-radius:3px;padding:5px 9px;font-size:12px}.places-table-mode.active{box-shadow:inset 0 0 0 1px var(--text)}.places-view-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.places-view-card{border:1px solid var(--border);background:var(--surface-strong);text-align:left;cursor:pointer;border-radius:6px;flex-direction:column;gap:12px;min-height:150px;padding:16px;transition:background-color .12s,border-color .12s,box-shadow .12s;display:flex;position:relative;overflow:hidden}.places-view-card.active{border-color:var(--border-strong);background:var(--surface-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}.places-view-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.places-view-card-head{grid-template-columns:1fr auto;align-items:center;gap:12px;display:grid}.places-view-card-title{color:var(--text-soft);letter-spacing:0;font-size:15px;font-weight:400}.places-view-card.active .places-view-card-title{color:var(--text)}.places-view-card-desc{color:var(--text-faint);font-size:12px;font-weight:400;line-height:1.55}.places-scheme{border:1px solid var(--border);background:var(--surface);border-radius:4px;width:54px;height:38px;display:block;position:relative}.places-view-card.active .places-scheme{border-color:var(--border-strong);background:var(--surface)}.places-view-card.active .places-scheme--scatter span,.places-view-card.active .places-scheme--lines span,.places-view-card.active .places-scheme--bars span{background:var(--accent)}.places-scheme--scatter span{background:var(--text-faint);border-radius:50%;width:5px;height:5px;position:absolute}.places-scheme--scatter span:first-child{bottom:10px;left:12px}.places-scheme--scatter span:nth-child(2){bottom:20px;left:26px}.places-scheme--scatter span:nth-child(3){bottom:14px;right:11px}.places-scheme--lines span{background:var(--text-faint);transform-origin:0;height:1px;position:absolute;left:10px;right:10px}.places-scheme--lines span:first-child{top:24px;transform:rotate(-18deg)}.places-scheme--lines span:nth-child(2){top:18px;transform:rotate(12deg)}.places-scheme--lines span:nth-child(3){opacity:0;top:28px}.places-scheme--bars span{background:var(--text-faint);width:24px;height:4px;position:absolute;left:12px}.places-scheme--bars span:first-child{top:10px}.places-scheme--bars span:nth-child(2){width:32px;top:17px}.places-scheme--bars span:nth-child(3){width:18px;top:24px}.places-axis-panel{border-top:1px solid var(--border);flex-direction:column;gap:14px;margin-top:14px;padding-top:14px;display:flex}.places-axis-row,.places-parity-control{flex-direction:column;gap:7px;min-width:0;display:flex}.places-axis-label{color:var(--text-faint);font-size:11px;font-weight:400}.places-axis-segments{flex-wrap:wrap;width:fit-content;max-width:100%;overflow:visible}.places-axis-segments .analysis-segment{white-space:nowrap;font-weight:400}.places-scatter-chart,.places-comparison-chart{min-height:360px}.places-parity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.places-mobile-axis-controls .places-axis-panel{border-top:0;margin-top:0;padding-top:0}.places-driver-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.places-driver-panel{border:1px solid var(--border);background:#fff;border-radius:6px;min-width:0;padding:14px}.places-driver-panel-title{color:var(--text-soft);margin-bottom:10px;font-size:13px;font-weight:400}.places-driver-list{flex-direction:column;gap:10px;display:flex}.places-driver-row{flex-direction:column;gap:6px;display:flex}.places-driver-main{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;display:grid}.places-driver-label{color:var(--text);font-size:13px;font-weight:400;line-height:1.35}.places-driver-meta,.places-driver-empty{color:var(--text-faint);white-space:nowrap;font-size:11px;font-weight:400}.places-driver-value-row{grid-template-columns:minmax(0,1fr) 56px;align-items:center;gap:10px;display:grid}.places-driver-track{background:var(--surface);border-radius:4px;height:7px;overflow:hidden}.places-driver-fill{border-radius:inherit;height:100%;display:block}.places-driver-value{text-align:right;font-size:12px}@media (width<=980px){.places-view-card-grid,.places-parity-grid,.places-driver-grid{grid-template-columns:1fr}}@media (width<=640px){.places-explorer-filter-trigger{margin-bottom:12px}.places-scatter-chart{min-height:360px;height:360px!important}.places-comparison-chart{min-height:320px;height:320px!important}.places-scatter-chart .recharts-legend-wrapper{padding-inline:4px;font-size:11px!important;line-height:1.35!important}.places-mobile-axis-controls .places-axis-panel{gap:16px}.places-mobile-axis-controls .places-parity-grid{grid-template-columns:1fr;gap:16px}.places-mobile-axis-controls .places-axis-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;width:100%;display:grid}.places-mobile-axis-controls .places-axis-segments .analysis-segment{text-overflow:ellipsis;min-height:40px;overflow:hidden}}.places-table-footer{color:var(--text);justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-size:12px;display:flex}.ni-town-name{color:var(--text);font-size:18px;font-weight:500}.ni-label{color:var(--text-soft);font-size:11px}.ni-subtext{color:var(--text-soft);font-size:12px}.ni-town-page-head{justify-content:space-between;align-items:center;gap:12px;padding:4px 0 8px;display:flex}.ni-town-page-hint{opacity:.6;text-align:right;font-size:11px}.ni-town-mobile-sort{display:none}.ni-mono{font-family:Roboto Mono,ui-monospace,monospace}.ni-score-badge{text-align:center;color:#fff;border-radius:4px;min-width:26px;padding:2px 5px;font-size:10px;font-weight:500;display:inline-block}.ni-signal-mobile-list{display:none}.ni-signal-card{border:1px solid var(--border);background:var(--surface-strong);border-radius:4px;padding:14px 16px 15px}.ni-signal-card-head{border-bottom:1px solid var(--border);padding-bottom:12px}.ni-signal-card-head strong{overflow-wrap:anywhere;min-width:0;color:var(--text);font-size:16px;font-weight:600;line-height:1.3;display:block}.ni-signal-card-head span{color:var(--text-soft);margin-top:3px;font-size:11px;display:block}.ni-signal-card-action{opacity:1;pointer-events:auto;background:var(--surface-strong);width:100%;min-height:36px;margin-top:12px;padding:6px 10px;transform:none}.ni-signal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:2px;display:grid}.ni-signal-card-score{border-bottom:1px solid var(--border);min-width:0;padding:10px 0 9px}.ni-signal-card-score span{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.25;display:block;overflow:hidden}.ni-signal-card-score strong{margin-top:3px;font-family:Roboto Mono,ui-monospace,monospace;font-size:14px;font-weight:700;line-height:1.25;display:block}@media (width<=640px){.ni-signal-table-wrap{display:none}.ni-section--signals{padding-inline:16px}.ni-signal-mobile-list{gap:0;display:grid}.ni-section .ni-section-label{line-height:1.45}.ni-section--signals .ni-signal-card{background:0 0;border:0;border-radius:0;padding:16px 0}.ni-section--signals .ni-signal-card+.ni-signal-card{border-top:1px solid var(--border)}}.ni-td-right{text-align:right;font-family:Roboto Mono,ui-monospace,monospace}.ni-control-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:500}.ni-town-cell{align-items:center;gap:8px;display:flex}.ni-explore-btn{opacity:0;pointer-events:none;border:1px solid var(--border);color:var(--text-soft);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;flex-shrink:0;padding:2px 10px;font-size:11px;transition:opacity .18s,transform .18s,border-color .15s,color .15s;transform:translate(-4px)}.ni-row-selected .ni-explore-btn{opacity:1;pointer-events:auto;transform:translate(0)}.ni-explore-btn:hover{border-color:var(--border-strong);color:var(--text)}.ni-town-mobile-list{display:none}.ni-town-card{border:1px solid var(--border);background:var(--surface-strong);border-radius:4px;padding:15px 16px 16px}.ni-town-card-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;display:grid}.ni-town-card-rank{color:var(--text-faint);min-width:24px;font-family:Roboto Mono,ui-monospace,monospace;font-size:12px;line-height:1.7}.ni-town-card-title{grid-template-columns:auto minmax(0,1fr);gap:4px 8px;min-width:0;display:grid}.ni-town-card-dot{border-radius:999px;grid-row:1/span 2;width:8px;height:8px;margin-top:7px}.ni-town-card-name-line{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.ni-town-card-name-line strong{overflow-wrap:anywhere;min-width:0;color:var(--text);font-size:16px;font-weight:600;line-height:1.25}.ni-town-card-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ni-town-card-meta small{color:var(--text-soft);font-size:11px;line-height:1.2}.ni-town-card-action{opacity:1;pointer-events:auto;background:var(--surface-strong);padding:6px 10px;transform:none}.ni-town-card-grid{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:14px;padding-top:2px;display:grid}.ni-town-card-metric{border-bottom:1px solid var(--border);background:0 0;min-width:0;padding:10px 0 9px}.ni-town-card-metric span{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.25;display:block;overflow:hidden}.ni-town-card-metric strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-family:Roboto Mono,ui-monospace,monospace;font-size:14px;font-weight:700;line-height:1.25;display:block;overflow:hidden}@media (width<=640px){.ni-town-page-head{align-items:flex-start}.ni-town-page-hint{max-width:180px}.ni-town-mobile-sort{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.ni-town-mobile-sort label{gap:5px;min-width:0;display:grid}.ni-town-mobile-sort span{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.ni-town-mobile-sort select,.ni-town-mobile-sort button{border:1px solid var(--border);background:var(--surface-strong);min-height:38px;color:var(--text);font:inherit;border-radius:4px;font-size:13px}.ni-town-mobile-sort select{width:100%;min-width:0;padding:0 10px}.ni-town-mobile-sort button{cursor:pointer;white-space:nowrap;padding:0 11px}.ni-town-mobile-list{gap:10px;display:grid}.ni-town-table-section{display:none}}@media (width<=380px){.ni-town-card-head{grid-template-columns:auto minmax(0,1fr)}.ni-town-card-action{grid-column:2;justify-self:start}.ni-town-card-grid{gap:0 14px}}.ni-tab-btn{cursor:pointer;border:1px solid var(--border);color:var(--text-soft);background:0 0;border-radius:20px;padding:4px 14px;font-size:12px;font-weight:500;transition:all .15s}.ni-tab-btn.active{background:var(--surface-soft);color:var(--text);border-color:var(--border)}.ni-detail-page{padding-bottom:64px}.ni-detail-page.ni-locale-ja{font-synthesis-weight:none}.ni-detail-page.ni-locale-ja :where(.ni-detail-hero-name,.ni-detail-hero-chip,.ni-detail-hero-fact-label,.ni-detail-hero-fact-value,.ni-detail-hero-score-label,.ni-detail-section-title,.ni-detail-section-heading,.ni-detail-stat-label,.ni-signal-group-label,.ni-profile-card-name,.ni-transit-station-name,.ni-transit-line-name,.ni-activity-secondary-label,.ni-detail-demo-source,.ni-detail-demo-label,.ni-detail-demo-desc){font-weight:400}.ni-detail-page.ni-locale-ja :where(.ni-detail-stat-value,.ni-detail-hero-score,.ni-profile-card-score,.ni-detail-demo-value,.ni-activity-secondary-value){font-weight:500}.ni-detail-hero{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:0;display:flex}.ni-detail-hero-left{flex:1;min-width:0}.ni-detail-hero-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;padding-top:2px;display:flex}.ni-detail-hero-name{color:var(--color-text-heading);letter-spacing:0;margin-bottom:10px;font-size:36px;font-weight:700;line-height:1.15}.ni-detail-hero-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ni-detail-hero-chip{border:1px solid var(--border);max-width:100%;min-height:24px;color:var(--text-soft);background:var(--color-bg-base);border-radius:4px;align-items:center;padding:3px 9px;font-size:12px;font-weight:500;line-height:1.25;display:inline-flex}.ni-detail-hero-chip-ward{color:var(--text);border-color:var(--border-strong)}.ni-detail-hero-chip-phase{background:0 0}.ni-detail-hero-facts{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(110px,1fr));gap:0;max-width:760px;margin-top:18px;display:grid}.ni-detail-hero-fact{min-width:0;padding:10px 18px 10px 0}.ni-detail-hero-fact+.ni-detail-hero-fact{border-left:1px solid var(--border);padding-left:18px}.ni-detail-hero-fact-label{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:600}.ni-detail-hero-fact-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.25;overflow:hidden}.ni-detail-hero-score{font-family:Roboto Mono,ui-monospace,monospace;font-size:52px;font-weight:700;line-height:1}.ni-detail-hero-score-bar-track{background:var(--border);border-radius:2px;width:80px;height:3px;overflow:hidden}.ni-detail-hero-score-bar-fill{border-radius:2px;height:100%;transition:width .4s}.ni-detail-hero-score-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:10px;font-weight:500}@media (width<=720px){.places-summary-grid,.places-chart-grid{grid-template-columns:1fr}.ni-detail-hero-right{align-items:flex-start}.ni-detail-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.ni-detail-hero-fact:nth-child(odd){border-left:0;padding-left:0}.ni-detail-hero-fact:nth-child(n+3){border-top:1px solid var(--border)}}@media (width<=520px){.places-group-grid{grid-template-columns:1fr}.ni-detail-page{padding-bottom:42px}.ni-detail-hero-name{overflow-wrap:anywhere;margin-bottom:8px;font-size:26px}.ni-detail-hero-score{font-size:38px}.ni-detail-score-denom{font-size:13px}.ni-detail-hero-facts{grid-template-columns:1fr}.ni-detail-hero-fact,.ni-detail-hero-fact+.ni-detail-hero-fact{border-left:0;padding-left:0}.ni-detail-hero-fact+.ni-detail-hero-fact{border-top:1px solid var(--border)}.ni-detail-section{margin-top:22px;padding-top:18px}.ni-detail-section-desc{margin-bottom:14px;font-size:14px}.ni-detail-pricing-grid{gap:12px 14px}.ni-detail-pricing-grid .ni-detail-stat-value{font-size:14px}.ni-detail-stat-item{min-width:0;padding-right:0}.ni-transit-line-row{grid-template-columns:10px minmax(0,1fr)}.ni-transit-line-operator{grid-column:2}.ni-signal-desc{display:none}}.ni-detail-section{border-top:1px solid var(--border);margin-top:30px;padding-top:24px}.ni-detail-section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px;font-size:10px;font-weight:600}.ni-detail-section-heading{color:var(--color-text-heading);margin-top:2px;margin-bottom:8px;font-size:17px;font-weight:600;line-height:1.3}.ni-detail-section-desc{color:var(--text-soft);margin-bottom:22px;font-size:15px;line-height:1.65}.ni-detail-two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:0 56px;display:grid}@media (width<=720px){.ni-detail-two-col{grid-template-columns:1fr;gap:40px 0}}.ni-detail-left-col{flex-direction:column;gap:32px;display:flex}.ni-detail-transit-sub .ni-detail-section-heading{font-size:15px}.ni-detail-pricing-grid{grid-template-columns:1fr 1fr;gap:16px 20px;display:grid}.ni-detail-pricing-grid .ni-detail-stat-value{font-size:18px}.ni-detail-stat-row{flex-wrap:wrap;gap:0;display:flex}.ni-detail-stat-item{min-width:120px;margin-bottom:2px;padding-right:32px}.ni-detail-stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:5px;font-size:10px;font-weight:500}.ni-detail-stat-value{color:var(--text);font-family:Roboto Mono,ui-monospace,monospace;font-size:21px;font-weight:600;line-height:1.15}.ni-detail-stat-note{color:var(--text-faint);margin-top:3px;font-size:10px;font-style:italic}.ni-detail-score-denom{color:var(--text-faint);margin-left:2px;font-size:16px;font-weight:400}.ni-detail-score-bar-track{background:var(--border);border-radius:3px;height:5px;margin-bottom:14px;overflow:hidden}.ni-detail-score-bar-fill{border-radius:3px;height:100%;transition:width .4s}.ni-signal-groups{grid-template-columns:1fr 1fr;gap:0 56px;display:grid}@media (width<=600px){.ni-signal-groups{grid-template-columns:1fr}}.ni-signal-group{margin-bottom:8px}.ni-signal-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);border-bottom:1px solid var(--border);margin-top:24px;margin-bottom:14px;padding-bottom:6px;font-size:11px;font-weight:600}.ni-signal-group:first-child .ni-signal-group-label,.ni-signal-group:nth-child(2) .ni-signal-group-label{margin-top:0}.ni-signal-group-signals{flex-direction:column;gap:16px;display:flex}.ni-signal-row{flex-direction:column;gap:4px;display:flex}.ni-signal-desc{color:var(--text-faint);font-size:13px;line-height:1.5}.ni-profile-card-grid{grid-template-columns:1fr 1fr 1fr;gap:24px;display:grid}.ni-profile-card{border-top:3px solid #0000;padding-top:12px}@media (width<=640px){.ni-profile-card-grid{border-top:1px solid var(--border);grid-template-columns:1fr;gap:0}.ni-profile-card{border-top:none;border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;padding:14px 0;display:grid}.ni-profile-card-name{grid-area:1/1;margin-bottom:2px}.ni-profile-card-score{grid-area:1/2/3;align-self:center;margin-bottom:0;font-size:26px}.ni-profile-card .ni-detail-score-bar-track{grid-area:2/1;margin-bottom:0;max-width:none!important}.ni-profile-card .ni-signal-desc{grid-area:3/1/auto/-1;margin-top:4px;font-size:12px}}.ni-profile-card-name{letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:600}.ni-profile-card-score{margin-bottom:10px;font-family:Roboto Mono,ui-monospace,monospace;font-size:32px;font-weight:700;line-height:1}.ni-transit-station{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;display:flex}.ni-transit-station-name{color:var(--text);font-size:18px;font-weight:600;line-height:1.2}.ni-transit-line-list{grid-template-columns:1fr 1fr;column-gap:64px;display:grid}.ni-transit-line-row{grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:30px;padding:5px 0;display:grid}.ni-transit-line-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.ni-transit-line-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.ni-transit-line-operator{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ni-activity-secondary{border-top:1px solid var(--border);flex-wrap:wrap;gap:20px 32px;margin-top:20px;padding-top:16px;display:flex}.ni-activity-secondary-item{min-width:80px}.ni-activity-secondary-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);margin-bottom:3px;font-size:10px;font-weight:500}.ni-activity-secondary-value{color:var(--text-soft);font-family:Roboto Mono,ui-monospace,monospace;font-size:14px;font-weight:500}.ni-detail-demo-source{letter-spacing:.08em;color:var(--text-faint);text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:600}.ni-detail-demo-table{border-top:1px solid var(--border);flex-direction:column;margin-bottom:4px;display:flex}.ni-detail-demo-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(100px,1.2fr) minmax(60px,1fr) 2fr;align-items:baseline;gap:10px;padding:9px 0;display:grid}.ni-detail-demo-label{color:var(--text-soft);font-size:12px}.ni-detail-demo-value{color:var(--text);font-family:Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:500}.ni-detail-demo-desc{color:var(--text-faint);font-size:11px;line-height:1.4}@media (width<=520px){.ni-detail-demo-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.ni-detail-demo-desc{grid-column:1/-1}.ni-transit-line-list{grid-template-columns:1fr 1fr;gap:7px;display:grid}}.ni-detail-back-btn{border:1px solid var(--border);background:var(--surface-strong);color:var(--text-soft);cursor:pointer;border-radius:4px;align-items:center;gap:6px;margin-bottom:8px;padding:8px 14px;font-size:13px;font-weight:500;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.ni-detail-back-btn:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-soft)}@media (width<=640px){.ni-detail-back-btn{justify-content:center;width:100%;min-height:44px;margin-top:12px;font-size:14px}}
