@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700&display=swap");*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page-bg);color:var(--ink);font-family:DM Sans,system-ui,sans-serif}a,button{-webkit-tap-highlight-color:var(--transparent)}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;padding:28px 20px;background:var(--sidebar);color:var(--sidebar-ink);display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 40px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--sidebar-muted);border-radius:50%;font-family:Manrope;font-weight:700;font-size:20px}.brand strong{font:700 18px Manrope}.brand small{display:block;margin-top:2px;color:var(--sidebar-section);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav p{margin:18px 12px 7px;color:var(--sidebar-section);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.sidebar nav .nav-placeholder,.sidebar nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;color:var(--sidebar-link);text-decoration:none;font-size:14px}.sidebar nav .nav-placeholder>span,.sidebar nav a span{width:18px;text-align:center;font-size:17px}.sidebar nav a.active{background:var(--sidebar-active);color:var(--sidebar-ink);font-weight:600}.sidebar nav .nav-placeholder[aria-disabled=true],.sidebar nav a[aria-disabled=true]{opacity:.58;cursor:default}.sidebar nav i{margin-left:auto;font-size:9px;font-style:normal;text-transform:uppercase;color:var(--sidebar-muted)}.sidebar-note{margin-top:auto;padding:16px;border:1px solid var(--sidebar-line);border-radius:12px;color:var(--sidebar-link);font-size:12px;line-height:1.7}.sidebar-note small{color:var(--sidebar-muted)}.pulse{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--pulse);box-shadow:0 0 0 4px var(--sidebar-active)}main{margin-left:240px;max-width:1500px;padding:38px 50px 24px}.detail-header,.factor-title,.section-head,.topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.eyebrow{margin:0 0 7px;color:var(--eyebrow,var(--subtle));font-size:10px;font-weight:700;letter-spacing:.16em}h1,h2,h3{font-family:Manrope;margin:0}h1{font-size:36px;letter-spacing:-.04em}h2{font-size:23px;letter-spacing:-.025em}.subtitle{margin:8px 0 0;color:var(--muted);font-size:14px}.header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}.experimental{padding:8px 12px;border:1px solid var(--line-strong);border-radius:99px;color:var(--accent-strong);font-size:11px}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;font-family:serif;font-weight:700}.icon-button,.load-more,.reload-button{background:var(--surface);color:var(--ink)}.load-more,.reload-button{padding:8px 12px;border:1px solid var(--line);border-radius:8px;font:600 11px inherit;cursor:pointer}.load-more:disabled,.reload-button:disabled{cursor:wait;opacity:.65}.theme-toggle{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:99px;background:var(--surface);color:var(--ink);font-family:inherit;font-size:11px;font-weight:600;white-space:nowrap;cursor:pointer}.theme-toggle span{font-size:15px;line-height:1}.theme-toggle:hover{background:var(--surface-hover)}.theme-status{position:fixed;z-index:20;right:16px;bottom:16px;max-width:calc(100vw - 32px);padding:12px 16px;border:1px solid var(--red);border-radius:10px;background:var(--surface);color:var(--red);box-shadow:var(--shadow);font-size:12px}.empty-state,.page-error{margin:28px 0;padding:18px;border:1px solid var(--red);border-radius:12px;background:var(--red-soft);color:var(--red);font-size:13px}.empty-state{border-color:var(--line);background:var(--surface);color:var(--muted)}.empty-state h2{color:var(--ink)}.empty-state p{margin-bottom:0}.notice{display:flex;gap:14px;margin:28px 0;padding:16px 19px;border:1px solid var(--line-strong);border-radius:12px;background:var(--accent-soft)}.notice>span{color:var(--accent);font-size:24px}.notice strong{font-size:13px}.notice p{margin:3px 0 0;color:var(--notice-text,var(--muted));font-size:12px}.section-head{margin:34px 0 14px}.section-head>small{color:var(--faint);font-size:11px}.context-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:11px;gap:11px}.context-card{position:relative;padding:17px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-card)}.context-top{display:flex;justify-content:space-between;align-items:center}.context-top span{color:var(--muted);font-size:12px}.context-top em{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-style:normal;font-size:12px}.context-top em.up{background:var(--amber-soft);color:var(--amber)}.context-top em.flat{background:var(--surface-soft);color:var(--faint)}.context-card>strong{display:block;margin-top:17px;font:700 22px Manrope}.context-card>p{margin:2px 0 11px;color:var(--muted);font-size:11px}.context-card>small{color:var(--faint);font-size:10px}.window-picker{padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.window-picker button{padding:7px 12px;border:0;border-radius:6px;background:var(--transparent);color:var(--muted);font:600 11px inherit;cursor:pointer}.window-picker button.selected{background:var(--accent-soft);color:var(--accent-strong)}.matrix-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.weather-matrix{width:100%;border-collapse:collapse;min-width:720px}.weather-matrix td,.weather-matrix th{border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.weather-matrix thead th{height:58px;color:var(--muted);font-size:11px;text-align:left;padding:0 22px}.weather-matrix thead th:not(:first-child){text-align:center}.weather-matrix thead span{display:block;color:var(--accent-strong);font-size:10px}.weather-matrix tbody th{width:32%;padding:22px;text-align:left;font-size:13px}.industry-icon{display:inline-grid;place-items:center;width:31px;height:31px;margin-right:12px;border-radius:9px;background:var(--surface-soft);color:var(--accent-strong)}.weather-matrix td{padding:8px}.weather-matrix tr:last-child td,.weather-matrix tr:last-child th{border-bottom:0}.weather-matrix td:last-child,.weather-matrix th:last-child{border-right:0}.weather-cell{width:100%;min-height:112px;padding:13px 18px;border:1px solid var(--transparent);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:background-color .18s,border-color .18s}.weather-cell:hover{background:var(--surface-hover)}.weather-cell.active{border-color:var(--accent);background:var(--surface-active);box-shadow:inset 0 0 0 1px var(--accent-soft)}.weather-cell>div{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.status-dot{width:7px;height:7px;border-radius:50%}.status-ready{background:var(--status-ready)}.status-degraded{background:var(--status-degraded)}.status-unavailable{background:var(--status-unavailable)}.weather-cell>strong{display:block;margin-top:8px;font:700 25px Manrope}.weather-cell>small{color:var(--faint);font-size:9px}.weather-cell>p{margin:7px 0 0;font-size:10px;font-weight:600}.weather-cell>p span{color:var(--faint)}.weather-cell .cell-reason{display:block;margin-top:5px;color:var(--red)}.improving{color:var(--improving,var(--green-deep))}.deteriorating{color:var(--red)}.stable,.unknown{color:var(--faint)}.detail{margin-top:28px;padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.detail-header{align-items:center;padding-bottom:23px;border-bottom:1px solid var(--line)}.detail-header>div>p:last-child{margin:7px 0 0;color:var(--muted);font-size:12px}.score{text-align:right}.score small{display:block;color:var(--faint);font-size:9px;letter-spacing:.12em}.score strong{display:block;font:700 35px Manrope}.score span{font-size:11px;font-weight:600}.history-tabs{display:flex;justify-content:space-between;align-items:center;padding:20px 0 12px}.history-tabs>div{display:flex;gap:5px}.history-tabs button{padding:8px 12px;border:0;border-radius:7px;background:var(--transparent);color:var(--muted);font:600 11px inherit;cursor:pointer}.history-tabs button[aria-selected=true]{background:var(--accent-soft);color:var(--accent-strong)}.history-tabs>span{color:var(--faint);font-size:10px}.range-picker{display:flex;gap:4px}.range-picker button{padding:6px 8px}.range-picker button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong)}.chart-panel{padding:19px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.chart-copy h3{font-size:15px}.chart-copy p{margin:5px 0 8px;color:var(--muted);font-size:11px}.chart{width:100%;height:270px}.chart-state{display:grid;place-items:center;color:var(--muted)}.history-table-wrap{max-height:230px;margin-top:14px;overflow:auto;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.history-table{width:100%;border-collapse:collapse;font-size:11px}.history-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.history-table td,.history-table th{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left}.history-table button{border:0;background:var(--transparent);color:var(--accent-strong);font:inherit;cursor:pointer;text-decoration:underline}.history-table button[aria-pressed=true]{font-weight:700}.history-gaps,.history-warnings{color:var(--muted);font-size:10px}.source-health,.source-health-empty{margin-top:12px;color:var(--muted);font-size:11px}.source-health summary{cursor:pointer}.source-health ul{padding-left:20px}.source-health li{display:grid;grid-template-columns:minmax(120px,1fr) 100px 2fr;grid-gap:8px;gap:8px;padding:5px 0}.selected-point-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:12px;padding:11px 13px;border-radius:8px;background:var(--surface-active);font-size:11px}.selected-point-meta small{flex-basis:100%;color:var(--muted)}.component-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:10px}.component-summary span{padding:9px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:10px;text-transform:capitalize}.component-summary strong{color:var(--ink)}.detail-disclosure{color:var(--muted);font-size:10px}.inline-loading{color:var(--muted);font-size:11px}.factor-section{margin-top:27px}.factor-title{margin-bottom:13px}.factor-title h3{font-size:18px}.factor-title>p{color:var(--faint);font-size:10px}.factors{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.factor-card{border:1px solid var(--line);border-radius:11px;overflow:hidden}.factor-main{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 80px 65px 18px;grid-gap:14px;gap:14px;align-items:center;padding:14px;border:0;background:var(--surface);text-align:left;color:var(--ink);cursor:pointer}.factor-main:hover{background:var(--surface-hover)}.factor-name{display:flex;gap:11px;align-items:center}.factor-name>span{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:var(--accent-soft);color:var(--accent-strong)}.factor-name strong{display:block;font-size:12px}.factor-name small,.factor-score small{display:block;margin-top:3px;color:var(--faint);font-size:9px}.factor-score span{font-size:11px}.contribution{text-align:right}.contribution small{display:block;color:var(--faint);font-size:8px}.contribution strong{font:700 15px Manrope}.chevron{color:var(--faint)}.evidence{padding:14px 16px;border-top:1px solid var(--line);background:var(--surface-muted);color:var(--evidence-text,var(--muted));font-size:10px}.formula{display:flex;gap:7px;flex-wrap:wrap}.formula span{padding:5px 7px;border-radius:6px;background:var(--surface);border:1px solid var(--line)}.evidence p{line-height:1.6}.evidence ul{margin:10px 0 0;padding:0;list-style:none}.evidence li{display:grid;grid-template-columns:80px 1fr auto;grid-gap:9px;gap:9px;padding:7px 0;border-top:1px solid var(--line)}.evidence li a{grid-column:2/-1;color:var(--accent-strong)}.evidence .load-more{margin-top:10px}.evidence li span,.loading-line{color:var(--muted)}.loading-line{padding:28px;border:1px dashed var(--line);border-radius:10px;font-size:12px;text-align:center}footer{display:flex;gap:25px;margin-top:18px;padding:18px 3px;color:var(--faint);font-size:9px}footer p{margin:0;color:var(--accent-strong);font-weight:700}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.sidebar a:focus-visible{outline-color:var(--sidebar-focus)}.factor-main:focus-visible{outline-offset:-3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.weather-cell{transition:none}}@media (max-width:1050px){.context-grid{grid-template-columns:repeat(3,1fr)}.factors{grid-template-columns:1fr}.factor-main{grid-template-columns:minmax(0,1fr) 70px 60px 15px}}@media (max-width:760px){.sidebar{position:static;width:auto;min-height:auto;padding:18px}.brand{margin:0}.sidebar nav,.sidebar-note{display:none}main{margin-left:0;padding:24px 16px}.detail-header,.factor-title,.section-head,.topbar{align-items:flex-start;flex-direction:column}.header-actions{width:100%;justify-content:flex-start}h1{font-size:30px}.context-grid{grid-template-columns:repeat(2,1fr)}.matrix-head{flex-direction:row;align-items:flex-end}.detail{padding:18px}.detail-header .score{text-align:left}.history-tabs{align-items:flex-start;gap:12px;flex-direction:column}.history-tabs>div{overflow:auto;max-width:100%}.component-summary,.source-health li{grid-template-columns:1fr}.factor-main{grid-template-columns:1fr 54px 50px 10px;gap:7px}.factor-name>span{display:none}.factor-name{min-width:0}.factor-name strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}footer{flex-direction:column;gap:5px}}.context-card>a{display:block;margin-top:8px;color:var(--accent-strong);font-size:10px;overflow-wrap:anywhere}.evidence li{grid-template-columns:minmax(0,1fr);overflow-wrap:anywhere}.evidence li a{grid-column:auto}.factor-card{min-width:0}.factor-name strong{white-space:normal;overflow-wrap:anywhere}.mobile-region-picker{display:none}.history-table-wrap:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (max-width:639px){.mobile-region-picker{display:flex;gap:8px;margin-bottom:12px}.mobile-region-picker button{padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer}.mobile-region-picker button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.weather-matrix{min-width:0;table-layout:fixed}.weather-matrix[data-region=DE] [data-region=UK],.weather-matrix[data-region=DE] [data-region=US],.weather-matrix[data-region=UK] [data-region=DE],.weather-matrix[data-region=UK] [data-region=US],.weather-matrix[data-region=US] [data-region=DE],.weather-matrix[data-region=US] [data-region=UK]{display:none}.weather-matrix tbody th,.weather-matrix thead th{padding:10px;overflow-wrap:anywhere}.industry-icon{display:none}.weather-cell{padding:10px;overflow-wrap:anywhere}.factor-main{grid-template-columns:minmax(0,1fr) 65px 14px}.factor-name{grid-column:1/-1}.chart-panel{padding:10px;min-width:0}.history-table td,.history-table th{padding:8px 4px;overflow-wrap:anywhere}.selected-point-meta{overflow-wrap:anywhere}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--page-bg)}.login-card{width:100%;max-width:380px;padding:32px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:center}.login-card h1{margin:0 0 6px;color:var(--ink);font-size:20px}.login-card p{margin:0 0 24px;color:var(--muted);font-size:13px}.login-error{margin:0 0 20px;padding:12px 14px;border:1px solid var(--red);border-radius:10px;background:var(--red-soft);color:var(--red);font-size:13px}.login-button{display:flex;justify-content:center}.sign-out{padding:0;border:0;background:none;color:var(--muted);font:inherit;text-decoration:underline;cursor:pointer}.sign-out:hover{color:var(--ink)}:root{color-scheme:dark;--page-bg:#111111;--surface:#1b1b1b;--surface-raised:#242424;--surface-soft:#202020;--surface-hover:#292929;--surface-active:#202e49;--surface-muted:#181818;--ink:#eeeeee;--muted:#b0b0b0;--faint:#b0b0b0;--subtle:#b0b0b0;--eyebrow:#b0b0b0;--notice-text:#d0d0d0;--evidence-text:#d0d0d0;--accent:#8ab4ff;--accent-soft:#20304c;--accent-strong:#b6cdff;--improving:#64d3a1;--line:#363636;--line-strong:#525252;--green:#64d3a1;--green-soft:#183b30;--green-deep:#9de6c3;--amber:#f2b76b;--amber-soft:#3a2c1e;--red:#f1847b;--red-soft:#3d2221;--sidebar:#151515;--sidebar-ink:#eeeeee;--sidebar-muted:#aaaaaa;--sidebar-section:#aaaaaa;--sidebar-link:#c9c9c9;--sidebar-active:#283c5e;--sidebar-line:#404040;--sidebar-focus:#8ab4ff;--pulse:#8ab4ff;--status-ready:#64d3a1;--status-degraded:#f2b76b;--status-unavailable:#888888;--chart-grid:#363636;--chart-axis:#b0b0b0;--chart-zero:#888888;--chart-area:#8ab4ff;--chart-line:#8ab4ff;--chart-tooltip-bg:#242424;--chart-tooltip-text:#eeeeee;--chart-tooltip-item:#b6cdff;--chart-tooltip-label:#b0b0b0;--chart-tooltip-border:#525252;--chart-tooltip-shadow:0 8px 32px rgba(0,0,0,0.32);--shadow:0 12px 42px rgba(0,0,0,0.28);--shadow-card:0 2px 10px rgba(0,0,0,0.2);--transparent:transparent}[data-theme=light]{color-scheme:light;--page-bg:#f6f6f6;--surface:#ffffff;--surface-raised:#ffffff;--surface-soft:#fafafa;--surface-hover:#f3f3f3;--surface-active:#eef2fc;--surface-muted:#f8f8f8;--ink:#242424;--muted:#626262;--faint:#626262;--subtle:#626262;--eyebrow:#565656;--notice-text:#565656;--evidence-text:#565656;--accent:#2859b8;--accent-soft:#e9effc;--accent-strong:#244c9c;--improving:#14734f;--line:#e0e0e0;--line-strong:#bcbcbc;--green:#18875f;--green-soft:#eaf7f1;--green-deep:#14734f;--amber:#9d6119;--amber-soft:#f8eee2;--red:#b0443d;--red-soft:#f7e7e5;--sidebar:#202020;--sidebar-ink:#eeeeee;--sidebar-muted:#aaaaaa;--sidebar-section:#aaaaaa;--sidebar-link:#c9c9c9;--sidebar-active:#283c5e;--sidebar-line:#484848;--sidebar-focus:#8ab4ff;--pulse:#8ab4ff;--status-ready:#21835e;--status-degraded:#9d6119;--status-unavailable:#626262;--chart-grid:#e8e8e8;--chart-axis:#626262;--chart-zero:#999999;--chart-area:#2859b8;--chart-line:#2859b8;--chart-tooltip-bg:#ffffff;--chart-tooltip-text:#242424;--chart-tooltip-item:#244c9c;--chart-tooltip-label:#565656;--chart-tooltip-border:#dcdcdc;--chart-tooltip-shadow:0 8px 32px rgba(0,0,0,0.1);--shadow:0 12px 42px rgba(0,0,0,0.08);--shadow-card:0 2px 10px rgba(0,0,0,0.03)}