.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--border);z-index:var(--z-sidebar, 200);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar-inner{width:var(--sidebar-width-expanded);height:100%;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-4) 18px;border-bottom:1px solid var(--border)}.sidebar-brand-button{display:flex;align-items:center;gap:var(--sp-3);flex:1;background:transparent;border:none;cursor:pointer;color:inherit;padding:0;font-family:inherit;text-align:left}.sidebar-brand-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;color:var(--accent-blue)}.sidebar-brand-text{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;overflow:hidden}.sidebar-env-badge{font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:.15rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.sidebar-env-badge--v2{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3)}.sidebar-env-badge--main{background:#3b82f626;color:#93c5fd;border:1px solid rgba(59,130,246,.3)}.country-select{position:relative;padding:var(--sp-3);border-bottom:1px solid var(--border)}.country-select-trigger{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .75rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:var(--fs-sm);font-weight:var(--fw-medium);font-family:inherit;cursor:pointer;transition:border-color var(--dur-base, .2s) var(--ease-out, ease-out),background var(--dur-base, .2s) var(--ease-out, ease-out)}.country-select-trigger:hover{border-color:var(--surface-border-strong)}.country-flag{font-size:var(--fs-md);line-height:1}.country-name{flex:1;text-align:left}.country-chevron{font-size:var(--fs-xs);color:var(--text-muted)}.country-select-backdrop{position:fixed;inset:0;z-index:149}.country-select-dropdown{position:absolute;top:100%;left:var(--sp-3);right:var(--sp-3);margin-top:var(--sp-1);background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:.35rem;list-style:none;z-index:150;max-height:280px;overflow-y:auto;box-shadow:var(--shadow-pop);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.country-option{display:flex;align-items:center;gap:.6rem;width:100%;padding:.5rem .65rem;background:none;border:none;border-radius:6px;color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit;cursor:pointer;transition:background .15s ease;text-align:left}.country-option:hover:not(:disabled){background:var(--bg-panel-hover)}.country-option--active{background:var(--sidebar-active-bg);color:var(--sidebar-active-color)}.country-option--disabled{opacity:.4;cursor:not-allowed}.country-soon{margin-left:auto;font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted);background:var(--bg-primary);padding:.1rem .4rem;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.sidebar-nav--global{flex:0 0 auto;padding:var(--sp-3) var(--sp-3) 0;display:flex;flex-direction:column;gap:var(--sp-1)}.sidebar-nav{flex:0 0 auto;padding:var(--sp-3) var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1)}.sidebar-nav-item-wrapper{display:flex;flex-direction:column;position:relative}.sidebar-nav-item{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) 10px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:var(--fs-base);font-weight:var(--fw-medium);font-family:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);text-align:left;white-space:nowrap}.sidebar-nav-item:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.sidebar-nav-item--active{background:var(--sidebar-active-bg);color:var(--sidebar-active-color)}.sidebar-nav-item--active:hover{background:#3b82f62e;color:var(--sidebar-active-color)}.sidebar-nav-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.sidebar-nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.sidebar-nav-badge{font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:.1rem .4rem;border-radius:4px;background:#94a3b826;color:var(--text-secondary);border:1px solid rgba(148,163,184,.3);text-transform:uppercase;letter-spacing:.04em}.sidebar-footer{margin-top:auto;padding:var(--sp-3) var(--sp-3) var(--sp-2);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--sp-1)}.sidebar-footer-label{font-size:.65rem;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:var(--sp-1) 0 var(--sp-2) 22px}.sidebar-footer-links{display:flex;flex-direction:column;gap:var(--sp-1)}.sidebar-footer-link{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 10px;border-radius:8px;color:var(--text-secondary);font-size:var(--fs-base);font-weight:var(--fw-medium);text-decoration:none;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);white-space:nowrap;overflow:hidden}.sidebar-footer-link:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.sidebar-footer-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.sidebar-footer-icon svg{width:20px;height:20px;opacity:.75;transition:opacity var(--dur-fast) var(--ease-out)}.sidebar-footer-link:hover .sidebar-footer-icon svg{opacity:1}.sidebar-footer-link-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-footer-text{font-size:var(--fs-xs);color:var(--text-muted);padding:var(--sp-2) 0 0 22px}.sidebar-collapse-bottom{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) 22px;margin:0;background:transparent;border:none;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-base);font-weight:var(--fw-medium);font-family:inherit;cursor:pointer;text-align:left;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.sidebar-collapse-bottom:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.sidebar-collapse-bottom-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;font-size:18px;line-height:1}.sidebar-collapse-bottom-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar--collapsed .sidebar-brand-text,.sidebar--collapsed .sidebar-nav-label,.sidebar--collapsed .sidebar-nav-badge,.sidebar--collapsed .sidebar-footer-link-label,.sidebar--collapsed .sidebar-footer-label,.sidebar--collapsed .sidebar-footer-text,.sidebar--collapsed .sidebar-collapse-bottom-label,.sidebar--collapsed .country-name,.sidebar--collapsed .country-chevron{opacity:0;pointer-events:none}.sidebar--collapsed .country-select-trigger{background:transparent;border-color:transparent;cursor:default}.sidebar--collapsed .sidebar-nav-item-wrapper:hover .sidebar-nav-item[data-tooltip]:after,.sidebar--collapsed .sidebar-footer-link[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);padding:4px 10px;background:var(--surface-3);color:var(--text-primary);border:1px solid var(--surface-border-strong);border-radius:var(--radius-sm);font-size:var(--fs-xs);white-space:nowrap;pointer-events:none;z-index:var(--z-popover, 900);box-shadow:var(--shadow-pop)}.sidebar--collapsed .sidebar-nav-item-wrapper,.sidebar--collapsed .sidebar-footer-link{position:relative}.sidebar-mobile-toggle{display:none;position:fixed;top:1rem;left:1rem;z-index:200;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:.5rem;cursor:pointer;width:44px;height:44px}.hamburger{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;height:100%}.hamburger span{display:block;width:18px;height:2px;background:var(--text-primary);border-radius:1px;transition:transform .3s ease,opacity .3s ease}.hamburger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:90}@media(max-width:768px){.sidebar{width:240px;transform:translate(-100%);will-change:transform}.sidebar--collapsed .sidebar-brand-text,.sidebar--collapsed .sidebar-nav-label,.sidebar--collapsed .sidebar-nav-badge,.sidebar--collapsed .sidebar-footer-link-label,.sidebar--collapsed .sidebar-footer-label,.sidebar--collapsed .sidebar-footer-text,.sidebar--collapsed .sidebar-collapse-bottom-label,.sidebar--collapsed .country-name,.sidebar--collapsed .country-chevron{opacity:1;pointer-events:auto}.sidebar--collapsed .country-select-trigger{background:var(--bg-primary);border-color:var(--border);cursor:pointer}.sidebar--open{transform:translate(0)}.sidebar-mobile-toggle{display:flex}.sidebar-overlay{display:block}}@media(prefers-reduced-motion:reduce){.sidebar,.hamburger span{transition:none}}.info-panel{width:300px;flex-shrink:0;position:sticky;top:1.5rem;align-self:flex-start;max-height:calc(100vh - 3rem);overflow-y:auto;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.info-panel::-webkit-scrollbar{width:4px}.info-panel::-webkit-scrollbar-track{background:transparent}.info-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.info-panel-content{opacity:1;transform:translateY(0);transition:opacity .2s ease,transform .2s ease}.info-panel-title{font-size:var(--fs-base);font-weight:700;color:var(--accent-blue);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.info-freshness{display:flex;align-items:center;gap:.4rem;font-size:var(--fs-sm);color:var(--accent-green);margin-bottom:.75rem;padding:.35rem .6rem;background:#22c55e14;border-radius:6px;border:1px solid rgba(34,197,94,.15)}.info-freshness-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-green);flex-shrink:0;animation:freshnessPulse 2s ease infinite}@keyframes freshnessPulse{0%,to{opacity:1}50%{opacity:.4}}.info-section{margin-bottom:.5rem;border-bottom:1px solid rgba(51,65,85,.3);padding-bottom:.5rem}.info-section:last-child{margin-bottom:0;border-bottom:none;padding-bottom:0}.info-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:.35rem 0;cursor:pointer;font-family:inherit}.info-section-toggle:hover .info-section-heading{color:var(--text-primary)}.info-section-heading{font-size:var(--fs-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;transition:color .15s ease}.info-section-chevron{font-size:var(--fs-xs);color:var(--text-muted);flex-shrink:0}.info-section-body{animation:infoFadeIn .2s ease;padding-top:.25rem}.info-section-text{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.55}.info-section-list{list-style:none;display:flex;flex-direction:column;gap:.4rem}.info-section-list li{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5;padding-left:.9rem;position:relative}.info-section-list li:before{content:"";position:absolute;left:0;top:.5em;width:4px;height:4px;border-radius:50%;background:var(--accent-blue)}.info-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;min-height:200px}.info-panel-empty-icon{font-size:var(--fs-2xl);color:var(--text-muted);opacity:.4;margin-bottom:.75rem}.info-panel-empty p{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}@media(max-width:1100px){.info-panel{display:none}}@keyframes skeletonPulse{0%,to{opacity:.4}50%{opacity:.15}}.skeleton-block{background:var(--surface-2);animation:skeletonPulse var(--dur-skeleton) ease-in-out infinite}.skeleton-panel{pointer-events:none}.panel-refreshing{position:relative}.panel-refreshing:after{content:"";position:absolute;inset:0;background:#0f172a4d;border-radius:var(--radius);pointer-events:none;animation:refreshPulse 1.2s ease-in-out infinite alternate;will-change:opacity;z-index:1}@keyframes refreshPulse{0%{opacity:.15}to{opacity:.4}}.bottom-nav{display:none}@media(max-width:768px){.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--sidebar-bg);border-top:1px solid var(--border);z-index:100;justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom,0)}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:44px;min-height:44px;padding:4px 8px;border:none;background:none;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:color .15s ease;-webkit-tap-highlight-color:transparent}.bottom-nav-item:active{opacity:.7}.bottom-nav-item--active{color:var(--accent-blue)}.bottom-nav-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.bottom-nav-label{font-size:var(--fs-xs);font-weight:500;letter-spacing:.01em}}:root{--surface-0: #07090f;--surface-1: #0f1320;--surface-2: #161b2c;--surface-3: #1f2538;--surface-border: #1a2030;--surface-border-strong: #2e3650;--surface-border-soft: rgba(148, 163, 184, .12);--text-primary-token: #f1f5f9;--text-secondary-token: #94a3b8;--text-muted-token: #64748b;--text-inverse: #0f172a;--accent-blue-token: #3b82f6;--accent-green-token: #22c55e;--accent-yellow-token: #eab308;--accent-red-token: #ef4444;--accent-orange: #f59e0b;--accent-violet: #8b5cf6;--accent-cyan: #06b6d4;--accent-blue-soft: rgba(59, 130, 246, .12);--accent-green-soft: rgba(34, 197, 94, .12);--accent-yellow-soft: rgba(234, 179, 8, .12);--accent-red-soft: rgba(239, 68, 68, .12);--accent-orange-soft: rgba(245, 158, 11, .12);--accent-violet-soft: rgba(139, 92, 246, .12);--accent-cyan-soft: rgba(6, 182, 212, .12);--accent-blue-text: #93c5fd;--accent-green-text: #86efac;--accent-yellow-text: #fde047;--accent-red-text: #fca5a5;--accent-orange-text: #fcd34d;--accent-violet-text: #c4b5fd;--accent-cyan-text: #67e8f9;--fs-xs: .625rem;--fs-2xs: .6875rem;--fs-sm: .75rem;--fs-base: .875rem;--fs-md: 1rem;--fs-lg: 1.1875rem;--fs-xl: 1.4375rem;--fs-2xl: 1.875rem;--fs-3xl: 2.375rem;--lh-tight: 1.2;--lh-normal: 1.45;--lh-relaxed: 1.6;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--font-feature-numeric: "tnum" 1, "cv11" 1;--sp-0: 0;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-7: 1.75rem;--sp-8: 2rem;--sp-10: 2.5rem;--sp-12: 3rem;--sp-16: 4rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);--shadow-md: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .25);--shadow-pop: 0 8px 24px rgba(0, 0, 0, .45);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .32s;--dur-skeleton: 1.4s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--z-base: 1;--z-sticky: 100;--z-sidebar: 200;--z-overlay: 800;--z-popover: 900;--z-toast: 1000;--z-loading: 9999;--sidebar-width-expanded: 240px;--sidebar-width-collapsed: 64px;--statusbar-height: 56px;--page-gutter: 1.5rem;--panel-gap: 1rem;--panel-padding: 1.25rem;--chart-height-sm: 200px;--chart-height-md: 280px;--chart-height-lg: 360px}:where(body){font-feature-settings:var(--font-feature-numeric)}:focus-visible{outline:2px solid var(--accent-blue-token);outline-offset:2px;border-radius:var(--radius-sm)}:where(button){transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}:where(button):active{transform:translateY(1px)}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.page-stack{display:flex;flex-direction:column;gap:var(--panel-gap)}.page-two-col{display:grid;grid-template-columns:3fr 2fr;gap:var(--panel-gap);align-items:start}@media(max-width:1100px){.page-two-col{grid-template-columns:1fr}}.page{display:flex;flex-direction:column;gap:var(--panel-gap);padding-bottom:var(--sp-6)}.home-period-row{display:flex;justify-content:flex-end;margin-bottom:calc(-1 * var(--sp-1))}.segmented{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--surface-1);border:1px solid var(--surface-border);border-radius:var(--radius-pill);width:fit-content}.segmented__btn{appearance:none;background:transparent;border:none;color:var(--text-secondary-token);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:.02em;padding:5px 14px;border-radius:var(--radius-pill);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);font-variant-numeric:tabular-nums}.segmented__btn:hover{color:var(--text-primary-token);background:var(--surface-2)}.segmented__btn:focus-visible{outline:2px solid var(--accent-blue-token);outline-offset:2px}.segmented__btn--active,.segmented__btn--active:hover{background:var(--accent-blue-token);color:#fff}.segmented--compact .segmented__btn{padding:3px 10px;font-size:var(--fs-2xs)}.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);background:var(--surface-1);border:1px solid var(--surface-border);color:var(--text-secondary-token);font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);font-variant-numeric:tabular-nums}.btn:hover{background:var(--surface-2);border-color:var(--surface-border-strong);color:var(--text-primary-token)}.btn:focus-visible{outline:2px solid var(--accent-blue-token);outline-offset:2px}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--accent-blue-token);border-color:var(--accent-blue-token);color:#fff}.btn--primary:hover{background:var(--accent-blue-token);border-color:var(--accent-blue-token);color:#fff;filter:brightness(1.1)}.btn--ghost{background:transparent;border-color:transparent}.btn--ghost:hover{background:var(--surface-2);border-color:transparent}.select{appearance:none;-webkit-appearance:none;background:var(--surface-1);border:1px solid var(--surface-border);color:var(--text-primary-token);font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:var(--sp-1) var(--sp-6) var(--sp-1) var(--sp-3);border-radius:var(--radius-sm);cursor:pointer;font-variant-numeric:tabular-nums;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8.5L1.5 4h9z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--sp-2) center;background-size:10px 10px}.select:hover{background-color:var(--surface-2);border-color:var(--surface-border-strong)}.select:focus-visible{outline:2px solid var(--accent-blue-token);outline-offset:2px}:root{--bg-primary: var(--surface-0);--bg-panel: var(--surface-1);--bg-panel-hover: var(--surface-2);--text-primary: #f5f7fb;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-blue: #3b82f6;--accent-green: #22c55e;--accent-yellow: #eab308;--accent-red: #ef4444;--border: var(--surface-border);--radius: 12px;--sidebar-width: 260px;--sidebar-bg: var(--bg-panel);--sidebar-active-bg: rgba(59, 130, 246, .12);--sidebar-active-color: var(--accent-blue)}*{margin:0;padding:0;box-sizing:border-box}.global-loading-bar{position:fixed;top:0;left:0;right:0;height:2px;background:var(--accent-blue);z-index:9999;animation:loadingSlide 1.5s ease-in-out infinite;will-change:transform}.panel{contain:layout style}@keyframes loadingSlide{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}.app-layout{display:flex;min-height:100vh}.main-content{margin-left:var(--sidebar-width);flex:1;padding:1.5rem 2rem;min-height:100vh;display:flex;flex-direction:column}.content-with-info{display:flex;gap:1.5rem;flex:1;align-items:flex-start}.content-with-info .dashboard{flex:1;min-width:0}.app-header{margin-bottom:2rem}.app-header h1{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em}.app-subtitle{color:var(--text-secondary);font-size:var(--fs-base);margin-top:.3rem}.dashboard{display:flex;flex-direction:column;gap:1.5rem}.dashboard-top{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.dashboard-full{width:100%}@media(max-width:768px){.main-content{margin-left:0;padding:3.5rem .75rem .75rem;padding-bottom:64px}.dashboard-top{grid-template-columns:1fr}.eval-source-menu{max-width:calc(100vw - 1.5rem)}}.feature-bar-col{width:120px}@media(max-width:640px){.feature-bar-col{width:70px}}@media(max-width:640px){.forecast-status-bar{gap:.6rem!important;padding:.5rem .75rem!important}.forecast-status-clock{width:100%;border-right:none!important;padding-right:0!important;padding-bottom:.4rem;border-bottom:1px solid #334155;margin-bottom:.1rem}.forecast-status-card{border-right:none!important;padding-right:0!important;flex:1 1 calc(50% - .3rem);min-width:0;flex-wrap:wrap}.accuracy-summary-grid{grid-template-columns:1fr 1fr!important}}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:var(--panel-padding);transition:border-color .2s ease;box-shadow:var(--shadow-md)}.panel:hover{border-color:var(--surface-border-strong)}.panel h2{font-size:var(--fs-md);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.panel h3{font-size:var(--fs-base);font-weight:600;color:var(--text-secondary);margin-top:1.2rem;margin-bottom:.5rem}.panel .subtitle{color:var(--text-muted);font-size:var(--fs-sm);margin-top:-.5rem;margin-bottom:1rem}.panel.loading,.panel.error{display:flex;align-items:center;justify-content:center;min-height:150px;color:var(--text-muted)}.panel.error{color:var(--accent-red)}.panel-description{color:var(--text-muted);font-size:var(--fs-sm);margin-top:-.7rem;margin-bottom:.75rem;font-style:italic}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}@media(max-width:600px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}.metric-card{background:var(--bg-primary);border-radius:8px;padding:1rem;text-align:center}.metric-label{font-size:var(--fs-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem}.metric-value{font-size:var(--fs-xl);font-weight:700;color:var(--accent-blue)}.metric-unit{font-size:var(--fs-sm);font-weight:400;color:var(--text-secondary)}.no-data{color:var(--text-muted);font-size:var(--fs-base);text-align:center;padding:1rem;line-height:1.5}.model-info{margin-top:1rem}.info-row{display:flex;justify-content:space-between;padding:.3rem 0;font-size:var(--fs-base);border-bottom:1px solid var(--border)}.info-row span:first-child{color:var(--text-muted)}.cv-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.cv-table{width:100%;font-size:var(--fs-sm);border-collapse:collapse;margin-top:.5rem}.cv-table th{text-align:left;color:var(--text-muted);font-weight:500;padding:.4rem .5rem;border-bottom:1px solid var(--border);white-space:nowrap}.cv-table td{padding:.4rem .5rem;border-bottom:1px solid rgba(51,65,85,.5);white-space:nowrap}.feature-list{display:flex;flex-direction:column;gap:.3rem}.feature-bar-row{display:grid;grid-template-columns:180px 1fr 50px;align-items:center;gap:.5rem;font-size:var(--fs-sm)}.feature-name{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feature-bar{height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.feature-bar-fill{height:100%;background:var(--accent-blue);border-radius:4px;transition:width .3s ease}.feature-value{text-align:right;color:var(--text-muted)}@media(max-width:768px){.feature-bar-row{grid-template-columns:120px 1fr 40px;font-size:var(--fs-sm)}}@media(max-width:500px){.feature-bar-row{grid-template-columns:80px 1fr 35px;font-size:var(--fs-xs)}}.app-footer{text-align:center;color:var(--text-muted);font-size:var(--fs-sm);padding:2rem 0 1rem;border-top:1px solid var(--border);margin-top:2rem}.footer-stats{margin-top:.3rem;color:var(--text-muted);opacity:.8}.footer-legal{margin-top:.5rem;color:var(--text-muted);opacity:.7;font-size:var(--fs-sm)}.footer-link{background:none;border:none;color:var(--accent-blue);cursor:pointer;font-size:var(--fs-sm);padding:0;text-decoration:underline}.footer-link:hover{opacity:.8}.privacy-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.privacy-modal{background:var(--card-bg, #1e293b);border:1px solid var(--border);border-radius:.75rem;padding:2rem;max-width:480px;width:90%;color:var(--text-secondary, #cbd5e1);font-size:var(--fs-base);line-height:1.6}.privacy-modal h3{color:var(--text-primary, #f1f5f9);margin:0 0 1rem;font-size:var(--fs-md)}.privacy-modal p{margin:0 0 .75rem}.privacy-modal a{color:var(--accent-blue)}.privacy-close{margin-top:.5rem;padding:.4rem 1.2rem;background:var(--accent-blue);color:#fff;border:none;border-radius:.375rem;cursor:pointer;font-size:var(--fs-sm)}.privacy-close:hover{opacity:.9}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--surface-border);opacity:.6}.recharts-text{fill:var(--text-muted);font-size:var(--fs-xs)}.recharts-tooltip-wrapper .recharts-default-tooltip,.recharts-tooltip-wrapper>div{background:var(--surface-2)!important;border:1px solid var(--surface-border-strong)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-pop);font-feature-settings:var(--font-feature-numeric)}.recharts-tooltip-item{color:var(--text-primary)!important}.recharts-legend-item-text{color:var(--text-secondary)!important}.trend-indicator{font-size:var(--fs-sm);margin-left:.3rem}.eval-period-note{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;margin-top:.5rem}.weather-chart .chart-section-label{font-size:var(--fs-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:.75rem;margin-bottom:.25rem}.weather-legend{display:flex;gap:1.5rem;justify-content:center;margin-top:.75rem;font-size:var(--fs-sm);color:var(--text-secondary)}.weather-legend-item{display:flex;align-items:center;gap:.35rem}.weather-legend-line{display:inline-block;width:18px;height:2px;border-radius:1px}.weather-legend-bar{display:inline-block;width:8px;height:10px;border-radius:1px;opacity:.6}.weather-legend-dash{display:inline-block;width:18px;height:0;border-top:2px dashed var(--text-muted)}.zone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:900px){.zone-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.zone-grid{grid-template-columns:1fr}}.zone-card{background:var(--bg-primary);border-radius:8px;padding:1rem}.zone-name{font-size:var(--fs-base);font-weight:600;color:var(--text-primary);margin-bottom:.15rem}.zone-stations{font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:.75rem}.zone-no-data{color:var(--text-muted);font-size:var(--fs-sm);font-style:italic}.zone-metrics{display:flex;flex-direction:column;gap:.4rem}.zone-metric{display:flex;align-items:center;gap:.5rem;font-size:var(--fs-sm)}.zone-metric-icon{width:16px;height:16px;flex-shrink:0;color:var(--text-muted)}.zone-metric-value{font-weight:600;color:var(--text-primary)}.zone-metric-range{font-size:var(--fs-sm);color:var(--text-muted)}.zone-metric-label{font-size:var(--fs-xs);color:var(--text-muted)}.price-heatmap{overflow:visible}.heatmap-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.heatmap-header h2{margin-bottom:.25rem}.heatmap-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.heatmap-table{width:100%;border-collapse:separate;border-spacing:2px;font-size:var(--fs-sm);min-width:800px}.heatmap-table th{font-weight:500;color:var(--text-muted);padding:.3rem 0;text-align:center;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em}.heatmap-day-header{text-align:left!important;width:80px;min-width:80px}.heatmap-hour-header{width:32px;min-width:28px}.heatmap-summary-header{width:42px;min-width:42px;color:var(--text-muted)}.heatmap-day-cell{padding:.35rem .5rem;white-space:nowrap;position:sticky;left:0;background:var(--bg-panel);z-index:1}.heatmap-day-label{font-weight:600;font-size:var(--fs-sm);color:var(--text-secondary)}.heatmap-today-badge{display:inline-block;background:#3b82f626;color:var(--accent-blue);font-size:var(--fs-xs);font-weight:600;padding:.1rem .35rem;border-radius:4px;margin-left:.4rem;vertical-align:middle}.heatmap-cell{text-align:center;padding:.3rem .15rem;border-radius:3px;font-weight:600;font-size:var(--fs-sm);cursor:default;position:relative;transition:opacity .15s}.heatmap-cell:hover{opacity:.8;outline:1px solid rgba(241,245,249,.4)}.heatmap-cell-actual{border-bottom:2px solid rgba(241,245,249,.35)}.heatmap-cell-cheap{box-shadow:inset 0 0 0 1px #22c55e80}.heatmap-star{font-size:var(--fs-xs);color:var(--accent-green);position:absolute;top:1px;right:2px}.heatmap-star-expensive{color:#ef4444;font-size:var(--fs-xs)}.heatmap-cell-expensive{box-shadow:inset 0 0 0 1px #ef444466}.heatmap-cell-avg{opacity:.7}.heatmap-summary-cell{text-align:center;padding:.3rem .25rem;font-size:var(--fs-sm);font-weight:500;color:var(--text-secondary);border-radius:3px}.heatmap-row-today .heatmap-day-cell{border-left:2px solid var(--accent-blue)}.heatmap-row-avg{border-top:1px solid var(--border)}.heatmap-row-avg .heatmap-day-cell{padding-top:.6rem}.heatmap-legend{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-muted)}.heatmap-legend-item{display:flex;align-items:center;gap:.3rem}.heatmap-legend-swatch{display:inline-block;width:12px;height:12px;border-radius:2px}.heatmap-legend-actual{background:transparent;border-bottom:2px solid rgba(241,245,249,.35);height:10px;width:14px}.price-drivers-panel .weather-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1rem}@media(max-width:768px){.price-drivers-panel .weather-badges{grid-template-columns:repeat(2,1fr)}}.weather-badge{background:var(--bg-primary);border-radius:8px;padding:.75rem}.weather-badge-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.2rem}.weather-badge-value{font-size:var(--fs-md);font-weight:700;color:var(--text-primary);margin-bottom:.1rem}.weather-badge-qualifier{font-size:var(--fs-sm);font-weight:500;margin-bottom:.1rem}.weather-badge-impact{font-size:var(--fs-xs);color:var(--text-muted);font-style:italic}.drivers-insights{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}.drivers-insight-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--fs-sm);padding:.35rem .7rem;border-radius:6px;background:#3b82f614;color:var(--text-secondary);border:1px solid rgba(59,130,246,.15)}.drivers-insight-badge.insight-positive{background:#22c55e14;border-color:#22c55e26;color:#86efac}.drivers-insight-badge.insight-negative{background:#ef444414;border-color:#ef444426;color:#fca5a5}.overlay-toggle{display:flex;justify-content:center;gap:.25rem;margin-bottom:.5rem}.overlay-toggle-btn{background:var(--bg-primary);color:var(--text-muted);border:1px solid var(--border);border-radius:5px;padding:.25rem .65rem;font-size:var(--fs-sm);cursor:pointer;transition:all .2s}.overlay-toggle-btn:hover{color:var(--text-secondary);border-color:#475569}.overlay-toggle-btn.active{background:#3b82f61f;color:var(--accent-blue);border-color:#3b82f64d}.forecast-confidence-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--fs-sm);color:var(--text-muted);background:var(--bg-primary);padding:.2rem .6rem;border-radius:5px;border:1px solid var(--border)}.maintenance-overlay{position:fixed;inset:0;z-index:10000;background:#0f172ad9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center}.maintenance-card{text-align:center;max-width:420px;padding:2.5rem 2rem}.maintenance-spinner{width:48px;height:48px;margin:0 auto 1.5rem;border:3px solid var(--border);border-top-color:var(--accent-blue);border-radius:50%;animation:maintenanceSpin 1s linear infinite}@keyframes maintenanceSpin{to{transform:rotate(360deg)}}.maintenance-title{font-size:var(--fs-xl);font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.maintenance-message{color:var(--text-secondary);font-size:var(--fs-base);line-height:1.6;margin-bottom:1rem}.maintenance-sub{color:var(--text-muted);font-size:var(--fs-sm)}.smart-panel-loading{position:relative}.smart-panel-message{display:flex;align-items:center;gap:8px;justify-content:center;padding:.5rem 1rem;margin-top:-.5rem;font-size:var(--fs-sm);color:var(--text-muted);transition:color .3s}.smart-panel-message.smart-panel-slow{color:#f59e0b}.smart-panel-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:smartPulse 1.2s ease-in-out infinite;flex-shrink:0}@keyframes smartPulse{0%,to{opacity:.3}50%{opacity:1}}.smart-panel-error{display:flex;align-items:center;justify-content:center;min-height:180px}.smart-panel-error-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;padding:1.5rem}.smart-panel-error-icon{font-size:var(--fs-xl);opacity:.7}.smart-panel-error-text{color:var(--text-secondary);font-size:var(--fs-base);margin:0;max-width:400px}.smart-panel-retry{margin-top:.25rem;padding:6px 18px;border-radius:6px;border:1px solid #334155;background:#3b82f61a;color:#93c5fd;font-size:var(--fs-sm);cursor:pointer;transition:all .2s}.smart-panel-retry:hover{background:#3b82f633;border-color:#3b82f6}.sub-card{background:transparent;border:1px solid transparent;border-radius:6px;padding:.5rem .6rem;display:flex;flex-direction:column;transition:border-color .2s ease}.sub-card--accent-blue{border-left:3px solid #3b82f6}.sub-card--accent-green{border-left:3px solid #22c55e}.sub-card--accent-yellow{border-left:3px solid #f59e0b}.sub-card--accent-red{border-left:3px solid #ef4444}.home-page{position:relative}.home-annotations{position:absolute;left:2rem;top:.5rem;width:220px;display:flex;flex-direction:column;gap:2.5rem;pointer-events:none}.home-annotation{display:flex;flex-direction:column;align-items:flex-start;pointer-events:auto;cursor:pointer}.home-annotation:hover .home-annotation-text,.home-annotation--active .home-annotation-text{color:var(--accent-blue)}.home-annotation-text{font-family:Caveat,cursive;font-size:var(--fs-2xl);font-weight:500;color:#8b9bb4;line-height:1.2;display:block;margin-left:3rem;transition:color .2s}.home-annotation-lines{position:absolute;top:0;left:-2rem;width:calc(100% + 2rem);height:360px;pointer-events:none;overflow:visible}.home-annotation-line{color:#586880;transition:color .2s}.home-annotation-line--active{color:var(--accent-blue)}.home-external{position:absolute;right:0;top:.75rem;display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.home-external-btn{display:flex;align-items:center;gap:.5rem;padding:.45rem .85rem;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:var(--fs-sm);font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s;white-space:nowrap}.home-external-btn:hover{background:var(--bg-panel-hover);color:var(--accent-blue);border-color:#3b82f64d}.home-external-btn svg{flex-shrink:0;opacity:.6;transition:opacity .2s}.home-external-btn:hover svg{opacity:1;color:var(--accent-blue)}.home-external-arrow{font-size:var(--fs-sm);margin-left:auto;opacity:.4;transition:transform .2s,opacity .2s}.home-external-btn:hover .home-external-arrow{transform:translate(2px);opacity:.8}.home-hero{text-align:center;padding:1rem 0 1.5rem;max-width:600px;margin:0 auto}.home-hero-logo{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:.75rem}.home-hero-title{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.home-hero-subtitle{font-size:var(--fs-base);color:var(--text-secondary);line-height:1.6;margin:0 auto 1.25rem;max-width:520px}.home-hero-nav{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}.home-hero-nav-btn{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;background:#1e293b80;border:1px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:border-color .2s,background .2s,transform .15s;font-family:inherit}.home-hero-nav-btn:hover{border-color:var(--accent-blue);background:#3b82f60f;transform:translateY(-1px)}.home-hero-nav-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;background:#3b82f61a;color:var(--accent-blue);flex-shrink:0}.home-hero-nav-label{white-space:nowrap}.home-hero-nav-arrow{color:var(--text-muted);transition:transform .2s,color .2s;flex-shrink:0}.home-hero-nav-btn:hover .home-hero-nav-arrow{transform:translate(3px);color:var(--accent-blue)}.home-section-label{font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:1rem}.home-chart-wrap{position:relative;max-width:900px;margin:0 auto;cursor:pointer;border-radius:var(--radius);border:1px solid transparent;transition:box-shadow .25s,border-color .25s}.home-chart-wrap:hover{border-color:#3b82f64d;box-shadow:0 0 24px #3b82f61f}.home-chart-wrap:after{content:"View full forecast →";position:absolute;bottom:.75rem;right:1rem;font-size:var(--fs-sm);color:var(--accent-blue);opacity:0;transition:opacity .25s;pointer-events:none}.home-chart-wrap:hover:after{opacity:1}.home-products-wrap{max-width:900px;margin:0 auto;padding-top:.5rem}.home-timeline{margin-bottom:1.25rem}.home-timeline-labels{display:flex;margin-bottom:.5rem;font-size:var(--fs-sm);font-weight:600}.home-timeline-label--da{width:calc(100% / 7);color:#22d3ee}.home-timeline-label--strat{flex:1;text-align:center;color:#a78bfa}.home-timeline-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;background:#ffffff0d}.home-timeline-bar-da{width:calc(100% / 7);background:linear-gradient(90deg,#22d3ee,#06b6d4);border-radius:3px 0 0 3px}.home-timeline-bar-strat{flex:1;background:linear-gradient(90deg,#8b5cf6,#6d28d9);border-radius:0 3px 3px 0}.home-timeline-ticks{display:flex;margin-top:.4rem}.home-timeline-tick{flex:1;text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.home-timeline-tick:first-child{text-align:left}.home-timeline-tick:last-child{text-align:right}.home-products-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.home-product-card{background:#1e293b73;border:none;border-left:3px solid #22d3ee;border-radius:var(--radius);padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;transition:background .2s,border-color .2s}.home-product-card--link{cursor:pointer}.home-product-card--link:hover{background:#1e293bb3}.home-product-card--strat{border-left-color:#8b5cf6}.home-product-header{display:flex;align-items:center;gap:.6rem}.home-product-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#22d3ee26;color:#22d3ee;font-size:var(--fs-sm);font-weight:700;flex-shrink:0}.home-product-badge--strat{background:#8b5cf626;color:#a78bfa}.home-product-title{font-size:var(--fs-md);font-weight:600;color:var(--text-primary);margin:0}.home-product-delivery{font-size:var(--fs-sm);color:#22d3ee;margin:0}.home-product-delivery--strat{color:#a78bfa}.home-product-desc{font-size:var(--fs-base);color:var(--text-secondary);line-height:1.55;margin:0;flex:1}.home-product-stats{display:flex;align-items:center;gap:.4rem;font-size:var(--fs-sm);color:var(--text-muted);margin-top:.25rem}.home-product-stats-dot{color:var(--text-muted)}@media(max-width:1100px){.home-annotations{display:none}}@media(max-width:900px){.home-external{display:none}}@media(max-width:768px){.home-hero-nav{flex-direction:column;align-items:center}.home-hero-nav-btn{width:100%;max-width:280px}}@media(max-width:600px){.home-products-grid{grid-template-columns:1fr}.home-hero-title{font-size:var(--fs-xl)}.home-hero-subtitle{font-size:var(--fs-base)}}.eval-context-bar{contain:style;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.75rem 1.5rem;flex-wrap:wrap}.eval-context-group{display:flex;align-items:center;gap:6px}.eval-context-label{font-size:var(--fs-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.eval-context-btn{padding:4px 14px;font-size:var(--fs-sm);font-family:inherit;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-weight:400}.eval-context-btn:hover{border-color:#475569;color:var(--text-primary)}.eval-context-btn--active{border-color:var(--accent-blue);background:#3b82f61f;color:#93c5fd;font-weight:600}.eval-context-btn--disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.eval-source-dropdown{position:relative}.eval-source-trigger{display:inline-flex;align-items:center}.eval-source-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:200px;max-height:min(70vh,420px);overflow-y:auto;background:var(--panel-bg, #0f172a);border:1px solid var(--border, #1e293b);border-radius:8px;box-shadow:0 8px 24px #00000080;padding:4px 0;animation:eval-dropdown-in .12s ease-out}@keyframes eval-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.eval-source-section{padding:6px 12px 4px;font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#475569;-webkit-user-select:none;user-select:none}.eval-source-item{display:flex;align-items:center;width:100%;padding:6px 12px;font-size:var(--fs-sm);font-family:inherit;background:none;border:none;color:var(--text-secondary, #94a3b8);cursor:pointer;text-align:left;transition:background .1s,color .1s}.eval-source-item:hover{background:#3b82f614;color:var(--text-primary, #e2e8f0)}.eval-source-item--active{color:#93c5fd;font-weight:600;background:#3b82f61f}.eval-source-badge{margin-left:auto;padding:1px 6px;font-size:var(--fs-xs);font-weight:600;border-radius:4px;background:#fbbf2426;color:#fbbf24;text-transform:uppercase;letter-spacing:.04em}.no-data-reason{display:flex;flex-direction:column;align-items:center;gap:8px;padding:2rem 1.5rem;text-align:center;max-width:420px;margin:0 auto}.no-data-reason__icon{color:#475569;opacity:.7}.no-data-reason__title{font-size:var(--fs-base);font-weight:600;color:#94a3b8}.no-data-reason__message{font-size:var(--fs-sm);color:#64748b;line-height:1.5}.price-drivers-summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}@media(max-width:900px){.price-drivers-summary-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.price-drivers-summary-grid{grid-template-columns:repeat(2,1fr)}}.approach-bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.75rem 1.5rem;flex-wrap:wrap}.approach-bar-info{font-size:var(--fs-sm);color:#475569}.approach-bar-mae{margin-left:12px;color:var(--text-muted)}.approach-bar-mae-value{color:#93c5fd;font-weight:600}.metric-positive{color:#22c55e}.metric-negative{color:#ef4444}.metric-warning{color:#eab308}.metric-muted{color:var(--text-muted)}.metric-info{color:var(--accent-blue)}.metric-best-row{color:#22c55e}.metric-best-row td:first-child{font-weight:700}.metric-naive-row{color:#94a3b8;font-style:italic}.trend-indicator{margin-left:6px;font-size:var(--fs-sm)}.horizon-details{margin-top:1rem}.horizon-details summary{cursor:pointer;color:#94a3b8;font-size:var(--fs-base)}.horizon-bucket{margin-top:.75rem}.horizon-bucket-label{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:.25rem;font-weight:600}@media(max-width:768px){.panel{padding:1rem}.eval-context-bar{flex-direction:column;align-items:flex-start;gap:.6rem;padding:.75rem 1rem}.eval-context-bar button{padding:5px 10px;min-height:44px;font-size:var(--fs-sm)}.approach-bar{flex-direction:column;align-items:flex-start;gap:.6rem;padding:.75rem 1rem}.approach-bar button{padding:5px 10px;min-height:44px;font-size:var(--fs-sm)}.home-chart-wrap{max-width:100%}.app-footer{margin-bottom:56px}}@media(max-width:768px){.scroll-hint-x{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.scroll-hint-x::-webkit-scrollbar{height:4px}.scroll-hint-x::-webkit-scrollbar-track{background:transparent}.scroll-hint-x::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}}@media(prefers-reduced-motion:reduce){.global-loading-bar,.skeleton-block,.panel-refreshing:after,.info-freshness-dot,.maintenance-spinner,.smart-panel-dot{animation:none!important}}
