@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600&display=swap";.live-panel .live-gauge-marker{transition:cx .2s ease-out,cy .2s ease-out,fill .2s ease-out}@media (prefers-reduced-motion: reduce){.live-panel .live-gauge-marker{transition:none}}:root{--bg-base: #0a0f1f;--bg-dark: #050a15;--bg-light: #1a2547;--text-primary: #f0f5ff;--text-secondary: rgba(240, 245, 255, .7);--text-tertiary: rgba(240, 245, 255, .5);--text-muted: rgba(240, 245, 255, .25);--accent-emerald: #10b981;--accent-sapphire: #0ea5e9;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--accent-violet: #8b5cf6;--accent-cyan: #06b6d4;--glass-light: rgba(30, 41, 70, .5);--glass-medium: rgba(20, 28, 50, .65);--glass-dark: rgba(10, 15, 31, .85);--glass-ultra-dark: rgba(5, 10, 21, .95);--border-subtle: rgba(240, 245, 255, .05);--border-light: rgba(240, 245, 255, .1);--border-medium: rgba(240, 245, 255, .15);--radius-sm: 12px;--radius-md: 16px;--radius-lg: 20px;--radius-xl: 28px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 8px 32px rgba(0, 0, 0, .4);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::selection{background:#10b9814d;color:var(--text-primary)}.bg-glow{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 70% 40% at 50% -10%,rgba(16,185,129,.08),transparent 50%),radial-gradient(ellipse 60% 50% at 85% 100%,rgba(14,165,233,.06),transparent 60%),radial-gradient(ellipse 50% 60% at 15% 60%,rgba(139,92,246,.04),transparent 70%)}.bg-grid{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(240,245,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(240,245,255,.02) 1px,transparent 1px);background-size:60px 60px}.app{max-width:1000px;margin:0 auto;padding:0 20px 120px;min-height:100vh;position:relative;z-index:1}.app.night-mode{--bg-base: #050810;--bg-dark: #020305;--bg-light: #0f1625}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 0 16px;gap:12px;border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:sticky;top:0;z-index:50;animation:slideDown .6s cubic-bezier(.34,1.56,.64,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}.header-left{display:flex;align-items:center;gap:12px}.header-logo{width:42px;height:42px;border-radius:var(--radius-md);background:linear-gradient(135deg,#fbbf24,#f59e0b);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;box-shadow:0 0 20px #f59e0b4d,inset 0 1px #fff3;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.header-logo:hover{transform:scale(1.08) rotate(5deg)}.header-title{font-size:.9rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);background:linear-gradient(135deg,#f0f5ff,#c7d2e8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-sub{font-size:.65rem;color:var(--text-muted);font-weight:400;letter-spacing:.02em}.header-right{display:flex;align-items:center;gap:8px}.live-dot{display:flex;align-items:center;gap:6px;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-emerald)}.live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent-emerald);box-shadow:0 0 0 3px #10b98126,0 0 12px #10b98166;animation:pulseGlow 2s infinite}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 3px #10b98126,0 0 12px #10b98166;opacity:1}50%{box-shadow:0 0 0 8px #10b9811a,0 0 20px #10b98199;opacity:.8}}.live-dot.offline{color:var(--accent-rose)}.live-dot.offline:before{background:var(--accent-rose);box-shadow:0 0 0 3px #f43f5e26,0 0 12px #f43f5e66;animation:none}.icon-btn,.lang-btn{border:1px solid var(--border-light);background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);cursor:pointer;font-family:var(--font-sans);transition:all .2s ease;border-radius:var(--radius-sm)}.icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:.9rem}.icon-btn:hover{background:#ffffff14;border-color:var(--border-medium);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.lang-btn{padding:6px 14px;font-weight:700;font-size:.7rem;letter-spacing:.05em}.lang-btn:hover{background:#ffffff14}.info-chip{font-size:.65rem;padding:6px 12px;background:var(--glass-light);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-tertiary);display:inline-flex;align-items:center;gap:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-right:8px;margin-bottom:8px;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.info-chip .val{color:var(--text-secondary);font-weight:600}.alert-banner{position:fixed;top:0;left:0;right:0;z-index:200;padding:14px 20px;text-align:center;font-weight:600;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:12px;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-bottom:1px solid var(--border-light);animation:bannerSlideDown .4s cubic-bezier(.34,1.56,.64,1)}@keyframes bannerSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}.alert-cheap{background:linear-gradient(135deg,#10b981e6,#06b6d4cc);color:#fff;box-shadow:0 8px 32px #10b9814d}.alert-expensive{background:linear-gradient(135deg,#f43f5ee6,#f97316cc);color:#fff;box-shadow:0 8px 32px #f43f5e4d;animation:bannerSlideDown .4s cubic-bezier(.34,1.56,.64,1),expensiveGlow 3s ease-in-out infinite}@keyframes expensiveGlow{0%,to{box-shadow:0 8px 32px #f43f5e4d}50%{box-shadow:0 8px 48px #f43f5e80}}.alert-info{background:linear-gradient(135deg,#0ea5e9e6,#8b5cf6cc);color:#fff;box-shadow:0 8px 32px #0ea5e94d}.banner-close{background:#fff3;border:none;color:inherit;padding:4px 10px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease}.banner-close:hover{background:#ffffff4d}.tab-nav{display:flex;gap:4px;padding:10px 0 14px;overflow-x:auto;scrollbar-width:thin;margin:12px 0;max-width:100%;scroll-padding-inline:16px;animation:slideUp .6s cubic-bezier(.34,1.56,.64,1) .1s backwards}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.tab-nav::-webkit-scrollbar{height:4px}.tab-nav::-webkit-scrollbar-thumb{background:#f0f5ff2e;border-radius:999px}.tab-btn{display:flex;align-items:center;gap:6px;padding:9px 13px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.68rem;font-weight:500;flex-shrink:0;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative}.tab-btn:hover{color:var(--text-secondary);background:#f0f5ff0d;border-color:var(--border-subtle)}.tab-btn.active{color:var(--accent-emerald);background:#10b9811a;border-color:#10b98133;font-weight:700;box-shadow:inset 0 0 20px #10b9810d}.tab-btn.active:after{content:"";position:absolute;bottom:-10px;left:16px;right:16px;height:2px;background:var(--accent-emerald);border-radius:1px}.tab-icon{font-size:1rem}.main{padding-top:8px}.tab-content{animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1);min-width:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.tab-empty{text-align:center;color:var(--text-muted);padding:60px 20px;font-size:.9rem}.card{background:var(--glass-medium);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:24px;margin-bottom:16px;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:var(--shadow-sm);transition:all .3s ease;animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1);min-width:0}.card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card h3{font-size:.62rem;font-weight:700;color:var(--text-tertiary);margin-bottom:18px;text-transform:uppercase;letter-spacing:.2em}.status-hero{background:linear-gradient(165deg,var(--glass-medium) 0%,rgba(16,185,129,.03) 100%);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:40px 28px 32px;text-align:center;margin-bottom:18px;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:var(--shadow-md);animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1)}.status-hero:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(16,185,129,.05),transparent);pointer-events:none;animation:shimmer 6s ease-in-out infinite}@keyframes shimmer{0%,to{transform:translate(-25%,-25%)}50%{transform:translate(25%,25%)}}.status-msg{font-size:1.8rem;font-weight:800;margin-top:18px;letter-spacing:-.02em;position:relative;z-index:1;color:var(--text-primary)}.status-sub{font-size:.8rem;color:var(--text-tertiary);margin-top:6px}.status-price{display:inline-flex;align-items:baseline;gap:8px;margin-top:20px;padding:12px 32px;background:#ffffff0d;border:1px solid var(--border-medium);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s ease}.status-price:hover{background:#ffffff14;border-color:var(--border-light);transform:translateY(-2px)}.status-price-num{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;font-family:var(--font-mono);background:linear-gradient(135deg,#f0f5ff,#c7d2e8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.status-price-unit{font-size:.8rem;color:var(--text-tertiary);font-weight:500}.status-avg{font-size:.72rem;color:var(--text-muted);margin-top:12px}.save-card{display:flex;align-items:center;gap:14px;padding:16px 20px;background:linear-gradient(135deg,#10b98114,#06b6d40a);border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-lg);margin-bottom:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s ease}.save-card:hover{transform:translate(4px);border-color:#10b98166;box-shadow:0 8px 24px #10b98126}.save-icon{font-size:1.6rem;flex-shrink:0}.save-text{font-size:.82rem;color:var(--accent-emerald);font-weight:600;flex:1}.save-time{font-size:.68rem;color:var(--text-muted)}.cheap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:10px;margin-top:12px}.cheap-card{background:linear-gradient(135deg,#10b98114,#10b98105);border:1px solid rgba(16,185,129,.15);border-radius:var(--radius-md);padding:16px 12px;text-align:center;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.cheap-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(16,185,129,.05),transparent);pointer-events:none}.cheap-card:hover{transform:translateY(-4px) scale(1.02);border-color:#10b98159;background:linear-gradient(135deg,#10b9811f,#10b9810a);box-shadow:0 12px 32px #10b98126}.cheap-card.now-card{border-color:#10b98166;background:linear-gradient(135deg,#10b98126,#10b9810f);box-shadow:0 0 20px #10b98133}.cheap-now{position:absolute;top:8px;right:8px;font-size:.52rem;color:var(--accent-emerald);font-weight:700;background:#10b98126;padding:3px 7px;border-radius:5px;letter-spacing:.08em;text-transform:uppercase}[dir=rtl] .cheap-now{right:auto;left:8px}.cheap-h{font-size:1.1rem;font-weight:800;color:var(--text-primary);position:relative;z-index:1}.cheap-p{font-size:.75rem;color:var(--text-tertiary);margin-top:4px}.cheap-medal{margin-top:6px;font-size:.8rem}.cheap-tmrw{font-size:.52rem;color:var(--text-muted);margin-top:3px}.appliance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:12px}@media (max-width: 640px){.appliance-grid{grid-template-columns:1fr}}.appliance-card{background:linear-gradient(135deg,#ffffff0a,#ffffff03);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px;transition:all .3s ease;overflow:hidden;position:relative}.appliance-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.02),transparent);pointer-events:none}.appliance-card:hover{background:linear-gradient(135deg,#ffffff0f,#ffffff05);border-color:var(--border-medium);transform:translateY(-3px);box-shadow:var(--shadow-sm)}.appliance-top{display:flex;align-items:center;gap:10px;margin-bottom:12px}.appliance-emoji{width:40px;height:40px;border-radius:var(--radius-sm);background:#ffffff0d;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.appliance-name{font-weight:700;font-size:.88rem;color:var(--text-primary);flex:1}.appliance-row{display:flex;justify-content:space-between;font-size:.78rem;color:var(--text-tertiary);padding:4px 0}.appliance-val.green{color:var(--accent-emerald);font-weight:600}.appliance-val.red{color:var(--accent-rose);font-weight:600}.appliance-run{display:inline-flex;align-items:center;gap:5px;margin-top:12px;padding:7px 12px;background:#10b9811f;border:1px solid rgba(16,185,129,.25);border-radius:10px;color:var(--accent-emerald);font-size:.72rem;font-weight:800}.hours-heatmap{display:grid;grid-template-columns:repeat(24,minmax(28px,1fr));gap:3px;overflow-x:auto;max-width:100%;padding:4px 0 8px}.heatmap-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;border-radius:10px;transition:transform .2s ease,opacity .2s ease,box-shadow .2s ease;border:1px solid rgba(255,255,255,.04);overflow:hidden}.heatmap-cell.past{opacity:.28}.heatmap-cell.current{transform:scale(1.08);z-index:2;box-shadow:0 0 18px #10b98173;border-color:#10b98173}.hm-hour{font-weight:800;color:#fff;font-size:.68rem;line-height:1}.hm-price{font-size:.55rem;color:#ffffffb8;margin-top:4px;line-height:1}.cost-hero{background:linear-gradient(165deg,var(--glass-medium) 0%,rgba(14,165,233,.03) 100%);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:40px 28px 32px;margin-bottom:18px;text-align:center;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:var(--shadow-md);animation:fadeInUp .5s cubic-bezier(.34,1.56,.64,1)}.cost-hero:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(14,165,233,.05),transparent);pointer-events:none}.cost-hero-label{font-size:.75rem;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:8px;position:relative;z-index:1}.cost-hero-value{font-size:2.8rem;font-weight:900;margin-top:6px;letter-spacing:-.02em;font-family:var(--font-mono);position:relative;z-index:1}.cost-unit{font-size:.85rem;font-weight:600;color:var(--text-tertiary);margin-left:4px}.cost-hero-kr{font-size:.75rem;color:var(--text-muted);margin-top:4px;position:relative;z-index:1}.est-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:20px;position:relative;z-index:1}.stat-card{background:#ffffff0a;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:12px 16px;text-align:center;transition:all .3s ease;min-width:0}.stat-card:hover{background:#ffffff14;border-color:var(--border-medium)}.stat-label{font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.stat-value{font-size:1.2rem;font-weight:800;color:var(--text-primary);font-family:var(--font-mono);line-height:1.15;overflow-wrap:anywhere;word-break:break-word}.stat-value.green{color:var(--accent-emerald)}.gauge-card{background:var(--glass-medium);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:30px 24px;text-align:center;margin-bottom:16px;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:var(--shadow-sm)}.gauge-wrap{position:relative;display:inline-block}.gauge-num{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.gauge-val{font-size:2.6rem;font-weight:900;letter-spacing:-.05em;line-height:1;font-family:var(--font-mono)}.gauge-unit{display:block;margin-top:4px;font-size:.72rem;color:var(--text-tertiary);font-weight:600}.gauge-info{font-size:.78rem;color:var(--text-tertiary);margin-top:14px;font-weight:600}.particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.particle{position:absolute;top:50%;left:50%;width:3px;height:3px;border-radius:50%;opacity:0;animation:particleFloat 2.5s ease-out infinite}@keyframes particleFloat{0%{opacity:0;transform:rotate(var(--a)) translateY(-70px) scale(1)}20%{opacity:.7}to{opacity:0;transform:rotate(var(--a)) translateY(-130px) scale(0)}}.live-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;margin-bottom:16px}.stat-card.highlight{background:#10b98114;border-color:#10b9812e}.prog{width:100%;height:6px;background:#ffffff0d;border-radius:3px;margin-top:16px;overflow:hidden;position:relative;z-index:1}.prog-fill{height:100%;background:linear-gradient(90deg,var(--accent-emerald),var(--accent-cyan));border-radius:3px;transition:width 1s ease;box-shadow:0 0 12px #10b9814d}.cost-bar{display:flex;height:40px;gap:0;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:18px}.cost-bar-segment{transition:all .3s ease;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;color:#fffc;font-size:.65rem;font-weight:700}.cost-bar-segment:hover{filter:brightness(1.15);flex-grow:1.2}.cost-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border-subtle);transition:all .2s ease}.cost-row:last-child{border-bottom:none}.cost-row:hover{background:#ffffff05;padding-left:6px;padding-right:6px}.cost-toggle{display:flex;align-items:center;gap:10px;flex:1}.cost-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 8px currentColor}.cost-label{font-size:.82rem;color:var(--text-secondary);font-weight:500}.cost-value{font-size:.82rem;color:var(--text-secondary);font-weight:600;font-family:var(--font-mono)}.cost-row-total{padding-top:16px;border-top:1px solid var(--border-light);border-bottom:none!important;font-weight:700}.invoice-hero{background:linear-gradient(165deg,var(--glass-medium) 0%,rgba(139,92,246,.03) 100%);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:40px 28px;margin-bottom:18px;text-align:center;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:var(--shadow-md)}.invoice-hero-title{font-size:.75rem;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.2em;margin-bottom:10px}.invoice-hero-value{font-size:2.8rem;font-weight:900;letter-spacing:-.02em;font-family:var(--font-mono);background:linear-gradient(135deg,var(--accent-violet),var(--accent-sapphire));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.invoice-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:20px}.invoice-detail-item{background:#ffffff08;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px;text-align:center;transition:all .3s ease}.invoice-detail-item:hover{background:#ffffff0f;border-color:var(--border-medium)}.invoice-detail-label{font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.invoice-detail-value{font-size:1.3rem;font-weight:800;color:var(--text-primary);font-family:var(--font-mono)}.invoice-btn{background:linear-gradient(135deg,var(--accent-violet),var(--accent-sapphire));border:none;color:#fff;padding:12px 28px;border-radius:var(--radius-md);font-weight:700;font-size:.82rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;margin-top:16px;box-shadow:0 8px 24px #8b5cf640;text-transform:uppercase;letter-spacing:.08em}.invoice-btn:hover{transform:translateY(-3px);box-shadow:0 12px 36px #8b5cf659}.invoice-btn:active{transform:translateY(-1px)}.invoice-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.82rem}.invoice-table th{background:#ffffff0d;border-bottom:2px solid var(--border-light);padding:12px 16px;text-align:left;color:var(--text-secondary);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.invoice-table td{padding:14px 16px;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}.invoice-table tr:hover{background:#ffffff05}.invoice-table tr:last-child td{border-bottom:none}.data-header{display:grid;grid-template-columns:minmax(140px,2fr) minmax(120px,1.5fr) minmax(60px,.5fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--border-light);font-size:.62rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;font-weight:800}.data-row{display:grid;grid-template-columns:minmax(140px,2fr) minmax(120px,1.5fr) minmax(60px,.5fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--border-subtle);font-size:.86rem;align-items:center;transition:background .2s ease}.data-row:hover{background:#10b98108}.data-row:last-child{border-bottom:none}.data-name{color:var(--text-tertiary)}.data-val{color:var(--text-primary);font-family:var(--font-mono);font-weight:700;word-break:break-word}.data-unit{color:var(--text-muted);font-size:.72rem}.insights-layout{direction:ltr;display:grid;gap:16px;padding:0 4px 42px}.insights-hero{background:radial-gradient(circle at 12% 0%,rgba(16,185,129,.12),transparent 34%),linear-gradient(145deg,#141c32db,#0a0f1fd1);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}.insights-hero.good{border-color:#10b9813d}.insights-hero.danger{border-color:#f43f5e47}.insights-hero.warning{border-color:#f59e0b4d}.insights-hero-main{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.insights-eyebrow,.insight-subtitle{color:var(--text-tertiary);font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.insights-hero h2{color:var(--text-primary);font-size:clamp(1.35rem,2.5vw,2.15rem);margin:8px 0}.insights-hero p,.insight-card-head p,.insight-empty-detail,.insight-card-footer{color:var(--text-tertiary);font-size:.82rem;line-height:1.6}.insights-refresh{background:#0ea5e91f;border:1px solid rgba(14,165,233,.35);border-radius:var(--radius-sm);color:#bfdbfe;cursor:pointer;font-weight:800;padding:10px 16px;white-space:nowrap;transition:all .2s ease}.insights-refresh:hover:not(:disabled){background:#0ea5e933;transform:translateY(-1px)}.insights-refresh:disabled{cursor:progress;opacity:.6}.insights-kpi-grid,.insight-mini-grid,.insight-pattern-grid{display:grid;gap:12px}.insights-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.insight-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-pattern-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (min-width: 901px){.insight-pattern-grid.insight-pattern-grid-compact{grid-template-columns:1fr}}.insight-metric{background:#ffffff0b;border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0;padding:14px}.insight-metric.good{background:#10b98114;border-color:#10b9812e}.insight-metric.danger{background:#f43f5e14;border-color:#f43f5e33}.insight-metric.warning{background:#f59e0b14;border-color:#f59e0b33}.insight-metric.info{background:#0ea5e914;border-color:#0ea5e933}.insight-metric-label{color:var(--text-tertiary);font-size:.62rem;font-weight:800;letter-spacing:.14em;margin-bottom:8px;text-transform:uppercase}.insight-metric-value{color:var(--text-primary);font-family:var(--font-mono);font-size:1.2rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insight-metric.good .insight-metric-value{color:#6ee7b7}.insight-metric.danger .insight-metric-value{color:#fb7185}.insight-metric.warning .insight-metric-value{color:#fbbf24}.insight-metric.info .insight-metric-value{color:#7dd3fc}.insight-metric-hint,.insights-updated{color:var(--text-muted);font-size:.72rem;margin-top:6px}.insights-updated{text-align:right}.insights-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:start}.insight-card{align-self:start;background:var(--glass-medium);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0;padding:20px}.insight-card.span-5{grid-column:span 5}.insight-card.span-6{grid-column:span 6}.insight-card.span-7{grid-column:span 7}.insight-card.span-12{grid-column:span 12}.insight-card-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.insight-card-head h3{color:var(--text-primary);font-size:.9rem;letter-spacing:.08em;margin:0 0 5px;text-transform:uppercase}.insight-card-body{display:grid;gap:14px}.insight-card-footer{border-top:1px solid var(--border-subtle);margin-top:14px;padding-top:12px}.weekly-report-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.icon-btn.weekly-report-action{flex:0 0 auto;font-size:.78rem;font-weight:700;height:auto;min-height:36px;padding:8px 14px;text-decoration:none;white-space:nowrap;width:auto}.weekly-report-message{align-self:center;color:#fff9;flex-basis:100%}.insight-decision{background:#ffffff09;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:14px}.insight-decision p{color:var(--text-tertiary);font-size:.84rem;margin:10px 0 0}.insight-pill,.insight-chip{align-items:center;border:1px solid var(--border-light);border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:900;gap:6px;padding:6px 10px}.insight-pill.good,.insight-chip.good{background:#10b9811f;border-color:#10b98140;color:#6ee7b7}.insight-pill.danger,.insight-chip.danger{background:#f43f5e1f;border-color:#f43f5e40;color:#fb7185}.insight-pill.neutral,.insight-chip{background:#ffffff0d;color:var(--text-secondary)}.insight-empty{background:#ffffff09;border:1px dashed var(--border-light);border-radius:var(--radius-md);padding:20px;text-align:center}.insight-empty.compact{padding:22px 18px}.insight-card-empty .insight-card-body{min-height:0}.insight-empty.loading{overflow:hidden;position:relative}.insight-empty.loading:after{animation:insightSweep 1.4s ease-in-out infinite;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);content:"";top:0;right:0;bottom:0;left:0;position:absolute;transform:translate(-100%)}@keyframes insightSweep{to{transform:translate(100%)}}.insight-empty-title{color:var(--text-secondary);font-weight:900;margin-bottom:6px}.insight-window-block{display:grid;gap:10px}.insight-window-list{display:grid;gap:8px}.insight-window{align-items:center;background:#10b98114;border:1px solid rgba(16,185,129,.18);border-radius:var(--radius-sm);color:#bbf7d0;display:flex;justify-content:space-between;padding:10px 12px}.insight-window small{color:var(--text-tertiary);font-weight:800}.insight-chip-list{display:flex;flex-wrap:wrap;gap:8px}.insight-event-list{display:grid;gap:8px}.insight-event-row{align-items:center;background:#ffffff09;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:grid;gap:12px;grid-template-columns:64px minmax(0,1fr) 96px 110px;padding:11px 12px}.insight-event-time,.insight-event-after{color:var(--text-tertiary);font-size:.78rem}.insight-event-main{align-items:center;color:var(--text-secondary);display:flex;font-weight:800;gap:8px;min-width:0}.insight-event-dot{border-radius:999px;display:inline-block;height:9px;width:9px}.insight-event-dot.good{background:var(--accent-emerald)}.insight-event-dot.danger{background:var(--accent-amber)}.insight-event-delta{font-family:var(--font-mono);font-weight:900;text-align:right}.insight-event-delta.good{color:#86efac}.insight-event-delta.danger{color:#fbbf24}.insight-top-hours{display:grid;gap:8px}.insight-top-hour{align-items:center;background:#ffffff09;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;justify-content:space-between;padding:10px 12px}.insight-top-hour span{color:var(--text-tertiary);font-size:.82rem}.insight-top-hour strong{color:#fbbf24;font-family:var(--font-mono)}.energy-story-card{background:radial-gradient(circle at 8% 0%,rgba(56,189,248,.08),transparent 26%),radial-gradient(circle at 92% 0%,rgba(139,92,246,.08),transparent 28%),var(--glass-medium)}.energy-story-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.energy-story-head h3{color:var(--text-primary);font-size:1rem;letter-spacing:.08em;margin:3px 0 5px;text-transform:uppercase}.energy-story-head p{color:var(--text-tertiary);font-size:.78rem;line-height:1.55;margin:0}.energy-story-refresh{background:#ffffff0a;border:1px solid var(--border-light);border-radius:999px;color:var(--text-secondary);cursor:pointer;font-size:.68rem;font-weight:900;padding:7px 11px}.energy-story-refresh:disabled{cursor:default;opacity:.55}.energy-story-refresh:focus-visible,.energy-story-date-strip button:focus-visible,.energy-story-hour:focus-visible,.energy-story-event-row:focus-visible,.energy-story-detail-head button:focus-visible,.energy-story-evidence-row button:focus-visible{outline:2px solid rgba(125,211,252,.48);outline-offset:2px}.energy-story-date-strip{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.energy-story-date-strip button{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-muted);cursor:pointer;font-family:var(--font-mono);font-size:.58rem;font-weight:800;padding:6px 9px}.energy-story-date-strip button.active{background:#7dd3fc1c;border-color:#7dd3fc4d;color:#e0f2fe}.energy-story-notice{background:#7dd3fc0f;border:1px solid rgba(125,211,252,.16);border-radius:var(--radius-sm);color:#bae6fd;font-size:.62rem;margin-top:12px;padding:8px 10px}.energy-story-notice.danger{background:#f43f5e12;border-color:#f43f5e33;color:#fda4af}.energy-story-summary{display:grid;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:14px}.energy-story-metric{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:10px}.energy-story-metric>span,.energy-story-metric>small{color:var(--text-muted);display:block;font-size:.55rem}.energy-story-metric>strong{color:var(--text-primary);display:block;font-size:.78rem;margin:5px 0 3px;overflow-wrap:anywhere;text-transform:capitalize}.energy-story-metric.good{border-color:#10b9812e}.energy-story-metric.warning{border-color:#f59e0b33}.energy-story-metric.danger{border-color:#f43f5e33}.energy-story-metric.info{border-color:#38bdf833}.energy-story-legend{display:flex;flex-wrap:wrap;gap:7px 11px;margin-top:12px}.energy-story-legend span{align-items:center;color:var(--text-muted);display:inline-flex;font-size:.56rem;gap:5px}.energy-story-legend i{border:1px solid rgba(255,255,255,.12);border-radius:3px;display:inline-block;height:9px;width:9px}.energy-story-legend i.mixed,.energy-story-hour.mixed{background:#d946efb8}.energy-story-legend i.price,.energy-story-hour.price{background:#f59e0bd1}.energy-story-legend i.usage,.energy-story-hour.usage{background:#f43f5eb8}.energy-story-legend i.good,.energy-story-hour.good{background:#10b981bd}.energy-story-legend i.normal,.energy-story-hour.normal{background:#4755698f}.energy-story-legend i.blocked,.energy-story-hour.blocked{background:repeating-linear-gradient(135deg,#f43f5e8c 0,#f43f5e8c 4px,#7f1d1d6b 4px,#7f1d1d6b 8px)}.energy-story-legend i.baseline,.energy-story-hour.baseline{background:#94a3b859}.energy-story-timeline{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:12px;overflow-x:auto;padding:11px}.energy-story-timeline-label{align-items:baseline;display:flex;gap:10px;justify-content:space-between;margin-bottom:8px;min-width:620px}.energy-story-timeline-label strong{color:var(--text-secondary);font-family:var(--font-mono);font-size:.64rem}.energy-story-timeline-label span{color:var(--text-muted);font-size:.56rem}.energy-story-hours{display:grid;gap:3px;grid-template-columns:repeat(var(--energy-story-hour-count),minmax(18px,1fr));min-width:620px}.energy-story-hour{border:1px solid rgba(255,255,255,.09);border-radius:5px;color:#ffffffb8;cursor:pointer;font-family:var(--font-mono);font-size:.5rem;height:30px;min-width:0;padding:0;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease}.energy-story-hour:hover{filter:brightness(1.18);transform:translateY(-1px)}.energy-story-hour.active{box-shadow:0 0 0 2px #e0f2feb3;filter:brightness(1.2)}.energy-story-event-list{display:grid;gap:6px;margin-top:12px;max-height:280px;overflow-y:auto}.energy-story-event-empty{background:#ffffff06;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.62rem;padding:12px;text-align:center}.energy-story-event-row{align-items:center;background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:grid;gap:10px;grid-template-columns:58px minmax(0,1fr) 92px;padding:9px 10px;text-align:left;width:100%}.energy-story-event-row:hover{background:#ffffff0a}.energy-story-event-row.mixed{border-left:3px solid rgba(217,70,239,.72)}.energy-story-event-row.price{border-left:3px solid rgba(245,158,11,.82)}.energy-story-event-row.usage{border-left:3px solid rgba(244,63,94,.72)}.energy-story-event-row.good{border-left:3px solid rgba(16,185,129,.74)}.energy-story-event-row.blocked{border-left:3px solid rgba(244,63,94,.82)}.energy-story-event-row.baseline{border-left:3px solid rgba(148,163,184,.55)}.energy-story-event-time,.energy-story-event-delta{color:var(--text-muted);font-family:var(--font-mono);font-size:.59rem}.energy-story-event-row>span:nth-child(2){min-width:0}.energy-story-event-row strong{color:var(--text-secondary);display:block;font-size:.66rem}.energy-story-event-row small{color:var(--text-muted);display:block;font-size:.57rem;line-height:1.45;margin-top:2px;overflow-wrap:anywhere}.energy-story-event-delta{text-align:right}.energy-story-detail{background:#02061757;border:1px solid rgba(125,211,252,.15);border-radius:var(--radius-md);margin-top:12px;padding:13px}.energy-story-detail-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.energy-story-detail-head>div>strong{color:var(--text-secondary);display:block;font-family:var(--font-mono);font-size:.62rem;margin-top:6px}.energy-story-detail-head>button{background:#ffffff0a;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary);cursor:pointer;font-size:1rem;height:30px;width:30px}.energy-story-event-pill{border:1px solid var(--border-light);border-radius:999px;color:var(--text-secondary);display:inline-flex;font-size:.55rem;font-weight:900;padding:4px 7px}.energy-story-event-pill.good{color:#6ee7b7}.energy-story-event-pill.price{color:#fbbf24}.energy-story-event-pill.usage,.energy-story-event-pill.blocked{color:#fda4af}.energy-story-event-pill.mixed{color:#f0abfc}.energy-story-narrative{color:var(--text-tertiary);font-size:.68rem;line-height:1.6;margin:11px 0 0}.energy-story-detail-grid{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:11px}.energy-story-detail-grid>div{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:9px}.energy-story-detail-grid span,.energy-story-detail-grid small{color:var(--text-muted);display:block;font-size:.54rem}.energy-story-detail-grid strong{color:var(--text-secondary);display:block;font-size:.7rem;margin:5px 0 3px;overflow-wrap:anywhere}.energy-story-evidence-row{align-items:center;border-top:1px solid var(--border-subtle);display:flex;gap:10px;justify-content:space-between;margin-top:11px;padding-top:10px}.energy-story-evidence-row code{color:var(--text-muted);font-family:var(--font-mono);font-size:.56rem;overflow-wrap:anywhere}.energy-story-evidence-row button{background:#f43f5e14;border:1px solid rgba(244,63,94,.2);border-radius:999px;color:#fda4af;cursor:pointer;font-size:.58rem;font-weight:900;padding:6px 9px;white-space:nowrap}.energy-story-contract{border-top:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:12px;padding-top:10px}.energy-story-contract span{color:var(--text-muted);font-size:.55rem}@media (max-width: 900px){.energy-story-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.insights-kpi-grid,.insight-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-card.span-5,.insight-card.span-6,.insight-card.span-7,.insight-card.span-12{grid-column:1 / -1}}@media (max-width: 560px){.energy-story-head,.energy-story-evidence-row{align-items:stretch;flex-direction:column}.energy-story-summary,.energy-story-detail-grid{grid-template-columns:1fr}.energy-story-event-row{grid-template-columns:48px minmax(0,1fr)}.energy-story-event-delta{grid-column:2;text-align:left}.energy-story-refresh,.energy-story-evidence-row button{width:100%}.insights-hero,.insight-card{padding:16px}.insights-hero-main{flex-direction:column}.insights-refresh{width:100%}.insights-kpi-grid,.insight-mini-grid,.insight-pattern-grid,.insight-event-row{grid-template-columns:1fr}.insight-event-delta,.insights-updated{text-align:left}}.ai-readiness-card{background:radial-gradient(circle at 96% 0%,rgba(14,165,233,.09),transparent 30%),radial-gradient(circle at 0% 100%,rgba(16,185,129,.07),transparent 28%),var(--glass-medium);border-color:#7dd3fc29;overflow:hidden}.ai-readiness-head{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:18px}.ai-readiness-head h3{color:var(--text-primary);font-size:1.08rem;letter-spacing:.06em;margin:6px 0;text-transform:uppercase}.ai-readiness-head p{color:var(--text-tertiary);font-size:.82rem;line-height:1.6;margin:0;max-width:720px}.ai-readiness-head-actions{align-items:flex-end;display:flex;flex-direction:column;gap:10px;min-width:220px}.ai-readiness-status,.ai-readiness-gate-state,.ai-readiness-delivery,.ai-readiness-safety{border:1px solid var(--border-light);border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:900;letter-spacing:.04em;padding:6px 10px;white-space:nowrap}.ai-readiness-status.good,.ai-readiness-gate-state.good,.ai-readiness-delivery.good{background:#10b9811f;border-color:#10b98142;color:#6ee7b7}.ai-readiness-status.warning,.ai-readiness-gate-state.warning,.ai-readiness-delivery.warning{background:#f59e0b1c;border-color:#f59e0b3d;color:#fbbf24}.ai-readiness-status.neutral,.ai-readiness-gate-state.neutral,.ai-readiness-delivery.neutral{background:#ffffff0d;color:var(--text-secondary)}.ai-readiness-delivery.danger{background:#f43f5e1c;border-color:#f43f5e3d;color:#fb7185}.ai-readiness-summary{align-items:center;background:#ffffff07;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:grid;gap:18px;grid-template-columns:minmax(0,1fr) auto;padding:16px}.ai-readiness-summary-main{align-items:center;display:flex;gap:16px;min-width:0}.ai-readiness-score{align-items:center;background:#0ea5e914;border:1px solid rgba(14,165,233,.18);border-radius:var(--radius-md);display:flex;flex:0 0 auto;flex-direction:column;justify-content:center;min-height:76px;min-width:92px}.ai-readiness-score strong{color:#7dd3fc;font-family:var(--font-mono);font-size:1.45rem}.ai-readiness-score span{color:var(--text-muted);font-size:.64rem;margin-top:3px;text-transform:uppercase}.ai-readiness-summary h4{color:var(--text-primary);font-size:.92rem;margin:0 0 5px}.ai-readiness-summary p{color:var(--text-tertiary);font-size:.78rem;line-height:1.55;margin:0}.ai-readiness-meta{display:grid;gap:5px;min-width:245px}.ai-readiness-meta span{color:var(--text-muted);font-size:.68rem}.ai-readiness-meta strong{color:var(--text-secondary);font-weight:800}.ai-readiness-gates{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.ai-readiness-gate{background:#ffffff09;border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0;padding:13px}.ai-readiness-gate.good{background:#10b9810e;border-color:#10b98129}.ai-readiness-gate.warning{background:#f59e0b0d;border-color:#f59e0b29}.ai-readiness-gate-top{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.ai-readiness-gate-label{color:var(--text-tertiary);font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ai-readiness-gate-value{color:var(--text-primary);font-family:var(--font-mono);font-size:1.08rem;font-weight:900;margin-top:6px}.ai-readiness-gate-value span{color:var(--text-muted);font-size:.72rem;font-weight:700}.ai-readiness-progress{background:#ffffff12;border-radius:999px;height:5px;margin-top:12px;overflow:hidden}.ai-readiness-progress-fill{background:#94a3b88c;border-radius:inherit;display:block;height:100%;min-width:0;transition:width .25s ease}.ai-readiness-progress-fill.good{background:#34d399}.ai-readiness-progress-fill.warning{background:#f59e0b}.ai-readiness-gate-hint{color:var(--text-muted);font-size:.66rem;line-height:1.45;margin-top:8px}.ai-readiness-lower{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.ai-readiness-panel{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0;padding:14px}.ai-readiness-panel-title{color:var(--text-tertiary);font-size:.64rem;font-weight:900;letter-spacing:.12em;margin-bottom:10px;text-transform:uppercase}.ai-readiness-blockers,.ai-readiness-events{display:grid;gap:8px}.ai-readiness-blocker,.ai-readiness-event{align-items:center;background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;gap:9px;justify-content:space-between;min-width:0;padding:9px 10px}.ai-readiness-blocker{justify-content:flex-start}.ai-readiness-blocker-dot{background:#f59e0b;border-radius:999px;flex:0 0 auto;height:7px;width:7px}.ai-readiness-blocker strong,.ai-readiness-event strong{color:var(--text-secondary);display:block;font-size:.74rem}.ai-readiness-blocker code{color:var(--text-muted);display:block;font-family:var(--font-mono);font-size:.61rem;margin-top:3px;overflow-wrap:anywhere}.ai-readiness-event>div{min-width:0}.ai-readiness-event span:not(.ai-readiness-delivery){color:var(--text-muted);display:block;font-size:.64rem;margin-top:3px}.ai-readiness-clear{color:var(--text-tertiary);font-size:.75rem;line-height:1.5;padding:10px 2px}.ai-readiness-baseline{align-items:center;background:#0ea5e90e;border:1px solid rgba(14,165,233,.16);border-radius:var(--radius-md);display:flex;gap:16px;justify-content:space-between;padding:16px}.ai-readiness-baseline strong,.ai-readiness-baseline span{display:block}.ai-readiness-baseline strong{color:var(--text-primary);margin-bottom:5px}.ai-readiness-baseline>div>span{color:var(--text-tertiary);font-size:.76rem}.ai-readiness-safety{background:#f43f5e14;border-color:#f43f5e2e;color:#fda4af}.ai-readiness-run-result{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:.74rem;margin-top:12px;padding:9px 11px}.ai-readiness-run-result.good{background:#10b98112;border-color:#10b9812e;color:#86efac}.ai-readiness-run-result.danger{background:#f43f5e12;border-color:#f43f5e2e;color:#fda4af}.ai-readiness-footer{border-top:1px solid var(--border-subtle);color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:.64rem;gap:8px 18px;margin-top:14px;padding-top:11px}.ai-readiness-timeline-section{background:#0206172e;border:1px solid rgba(125,211,252,.11);border-radius:var(--radius-lg);margin-top:14px;padding:16px}.ai-readiness-timeline-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.ai-readiness-timeline-head h4{color:var(--text-primary);font-size:.94rem;margin:2px 0 5px}.ai-readiness-timeline-head p{color:var(--text-tertiary);font-size:.72rem;line-height:1.55;margin:0;max-width:720px}.ai-readiness-timeline-count{background:#7dd3fc12;border:1px solid rgba(125,211,252,.16);border-radius:999px;color:#bae6fd;flex:0 0 auto;font-size:.64rem;font-weight:800;padding:6px 9px}.ai-readiness-timeline-kpis{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.ai-readiness-timeline-kpi{background:#ffffff07;border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;min-height:128px;padding:13px}.ai-readiness-timeline-kpi>span{color:var(--text-muted);font-size:.61rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ai-readiness-timeline-kpi>strong{color:var(--text-primary);font-size:1rem;line-height:1.25;margin-top:8px}.ai-readiness-timeline-kpi>small{color:var(--text-secondary);font-size:.69rem;line-height:1.45;margin-top:6px}.ai-readiness-timeline-kpi>em{color:var(--text-muted);font-size:.61rem;font-style:normal;line-height:1.45;margin-top:auto;padding-top:9px}.ai-readiness-timeline-kpi.good{background:#10b9810b;border-color:#10b98126}.ai-readiness-timeline-kpi.warning{background:#f59e0b0b;border-color:#f59e0b26}.ai-readiness-timeline-kpi.danger{background:#f43f5e0b;border-color:#f43f5e26}.ai-readiness-timeline-kpi.good>strong{color:#6ee7b7}.ai-readiness-timeline-kpi.warning>strong{color:#fbbf24}.ai-readiness-timeline-kpi.danger>strong{color:#fda4af}.ai-readiness-timeline-chart{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:12px;overflow:hidden}.ai-readiness-timeline-chart-head{align-items:flex-start;border-bottom:1px solid var(--border-subtle);display:flex;gap:14px;justify-content:space-between;padding:12px 14px}.ai-readiness-timeline-chart-head strong{color:var(--text-secondary);display:block;font-size:.76rem}.ai-readiness-timeline-chart-head>div>span{color:var(--text-muted);display:block;font-size:.63rem;margin-top:3px}.ai-readiness-timeline-legend{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:flex-end}.ai-readiness-timeline-legend span{align-items:center;color:var(--text-muted);display:inline-flex;font-size:.61rem;gap:5px}.ai-readiness-timeline-legend span:before{border-radius:999px;content:"";height:6px;width:6px}.ai-readiness-timeline-legend .trusted:before{background:#7dd3fc}.ai-readiness-timeline-legend .train:before{background:#34d399}.ai-readiness-timeline-legend .validation:before{background:#fbbf24}.ai-readiness-timeline-chart-body{height:255px;padding:8px 8px 2px 2px}.ai-readiness-timeline-tooltip{background:#0f172af5;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-sm);box-shadow:0 10px 30px #0000003d;display:grid;gap:3px;padding:9px 10px}.ai-readiness-timeline-tooltip strong{color:var(--text-primary);font-size:.69rem;margin-bottom:2px}.ai-readiness-timeline-tooltip span{color:var(--text-secondary);font-size:.64rem}.ai-readiness-timeline-empty{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:170px;padding:28px 16px;text-align:center}.ai-readiness-timeline-empty strong{color:var(--text-secondary);font-size:.78rem}.ai-readiness-timeline-empty span{color:var(--text-muted);font-size:.68rem;line-height:1.5;margin-top:5px}.ai-readiness-timeline-bottom{display:grid;gap:12px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);margin-top:12px}.ai-readiness-snapshot-panel{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0;padding:13px}.ai-readiness-snapshot-list{display:grid;gap:6px}.ai-readiness-snapshot-row{align-items:center;background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:grid;gap:8px;grid-template-columns:minmax(88px,1.1fr) repeat(4,minmax(68px,1fr));padding:8px 9px}.ai-readiness-snapshot-row strong{color:var(--text-secondary);font-family:var(--font-mono);font-size:.67rem}.ai-readiness-snapshot-row span{color:var(--text-muted);font-size:.62rem;white-space:nowrap}.ai-readiness-gap-events{display:grid;gap:7px}.ai-readiness-gap-event{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden}.ai-readiness-gap-event summary{align-items:center;cursor:pointer;display:flex;gap:8px;justify-content:space-between;list-style:none;padding:9px 10px}.ai-readiness-gap-event summary::-webkit-details-marker{display:none}.ai-readiness-gap-event summary strong{color:var(--text-secondary);font-size:.68rem}.ai-readiness-gap-event summary span{color:var(--text-muted);font-size:.61rem}.ai-readiness-gap-event pre{border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-family:var(--font-mono);font-size:.61rem;line-height:1.55;margin:0;overflow-x:auto;padding:10px;white-space:pre-wrap}.ai-readiness-timeline-warning{background:#f43f5e0f;border:1px solid rgba(244,63,94,.16);border-radius:var(--radius-sm);color:#fda4af;font-size:.66rem;margin-top:10px;padding:8px 10px}@media (max-width: 900px){.ai-readiness-timeline-kpis,.ai-readiness-timeline-bottom{grid-template-columns:1fr}.ai-readiness-snapshot-row{grid-template-columns:minmax(88px,1.2fr) repeat(2,minmax(72px,1fr))}.ai-readiness-snapshot-row span:nth-of-type(3),.ai-readiness-snapshot-row span:nth-of-type(4){display:none}}@media (max-width: 560px){.ai-readiness-timeline-section{padding:12px}.ai-readiness-timeline-head,.ai-readiness-timeline-chart-head{align-items:stretch;flex-direction:column}.ai-readiness-timeline-count{align-self:flex-start}.ai-readiness-timeline-legend{justify-content:flex-start}.ai-readiness-timeline-chart-body{height:225px}.ai-readiness-snapshot-row{align-items:flex-start;grid-template-columns:1fr 1fr}.ai-readiness-snapshot-row strong{grid-column:1 / -1}}@media (max-width: 900px){.ai-readiness-head{align-items:stretch;flex-direction:column}.ai-readiness-head-actions{align-items:flex-start;flex-direction:row;min-width:0}.ai-readiness-summary{grid-template-columns:1fr}.ai-readiness-meta{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.ai-readiness-gates{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-readiness-lower{grid-template-columns:1fr}}@media (max-width: 560px){.ai-readiness-head-actions,.ai-readiness-baseline{align-items:stretch;flex-direction:column}.ai-readiness-status,.ai-readiness-safety{justify-content:center;text-align:center}.ai-readiness-run{width:100%}.ai-readiness-summary-main{align-items:flex-start}.ai-readiness-score{min-width:78px}.ai-readiness-meta,.ai-readiness-gates{grid-template-columns:1fr}.ai-readiness-event{align-items:flex-start;flex-direction:column}}.dqf-panel{min-width:0}.dqf-panel-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.dqf-panel-head>div>strong{color:var(--text-secondary);display:block;font-size:.76rem;margin-top:-3px}.dqf-panel-head button{background:#ffffff09;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:.65rem;font-weight:800;padding:6px 9px}.dqf-panel-head button:disabled{cursor:default;opacity:.55}.dqf-refresh-button{min-width:82px;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.dqf-refresh-button.idle:hover:not(:disabled),.dqf-refresh-button.idle:focus-visible{background:#7dd3fc1a;border-color:#7dd3fc57;box-shadow:0 0 0 2px #7dd3fc14;color:#e0f2fe;transform:translateY(-1px)}.dqf-refresh-button.refreshing,.dqf-refresh-button.loading{background:#7dd3fc0e;border-color:#7dd3fc26;color:#bae6fd}.dqf-refresh-button.updated{background:#10b9811a;border-color:#10b98147;color:#6ee7b7}.dqf-refresh-button.error{background:#f43f5e1a;border-color:#f43f5e47;color:#fda4af}.dqf-refresh-button:focus-visible{outline:2px solid rgba(125,211,252,.45);outline-offset:2px}.dqf-health-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:11px}.dqf-health-grid>div{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:9px}.dqf-health-grid span,.dqf-health-grid small{color:var(--text-muted);display:block;font-size:.58rem}.dqf-health-grid strong{color:var(--text-primary);display:block;font-size:.82rem;margin:5px 0 3px;overflow-wrap:anywhere}.dqf-heatmap-panel{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:12px;padding:11px}.dqf-heatmap-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.dqf-heatmap-head strong{color:var(--text-secondary);display:block;font-size:.72rem}.dqf-heatmap-head span{color:var(--text-muted);display:block;font-size:.58rem;margin-top:2px}.dqf-heatmap-toggle{display:inline-flex;gap:4px}.dqf-heatmap-toggle button{background:#ffffff08;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-muted);cursor:pointer;font-size:.58rem;font-weight:900;padding:5px 8px}.dqf-heatmap-toggle button.active{background:#7dd3fc1c;border-color:#7dd3fc4d;color:#e0f2fe}.dqf-heatmap-toggle button:focus-visible,.dqf-heatmap-cell:focus-visible{outline:2px solid rgba(125,211,252,.5);outline-offset:2px}.dqf-heatmap-notice{background:#f43f5e12;border:1px solid rgba(244,63,94,.18);border-radius:var(--radius-sm);color:#fda4af;font-size:.58rem;margin-top:8px;padding:7px 8px}.dqf-heatmap-legend{display:flex;flex-wrap:wrap;gap:7px 10px;margin-top:9px}.dqf-heatmap-legend>span{align-items:center;color:var(--text-muted);display:inline-flex;font-size:.56rem;gap:5px}.dqf-heatmap-swatch{border:1px solid rgba(255,255,255,.12);border-radius:3px;display:inline-block;height:9px;width:9px}.dqf-heatmap-scroll{display:grid;gap:4px;margin-top:10px;max-height:410px;overflow:auto;padding:1px 4px 1px 1px}.dqf-heatmap-day{align-items:center;display:grid;gap:8px;grid-template-columns:86px minmax(520px,1fr);min-width:620px}.dqf-heatmap-date{color:var(--text-muted);font-family:var(--font-mono);font-size:.55rem;white-space:nowrap}.dqf-heatmap-date small{color:#94a3b894;display:block;font-size:.5rem;margin-top:1px}.dqf-heatmap-cells{display:grid;gap:2px;grid-template-columns:repeat(var(--dqf-hour-count),minmax(10px,1fr))}.dqf-heatmap-cell{border:1px solid rgba(255,255,255,.08);border-radius:3px;display:block;height:18px;min-width:0;padding:0}button.dqf-heatmap-cell{cursor:pointer;transition:filter .15s ease,transform .15s ease}button.dqf-heatmap-cell:hover{filter:brightness(1.2);transform:translateY(-1px)}.dqf-heatmap-cell.static{cursor:default}.dqf-heatmap-cell.trusted,.dqf-heatmap-swatch.trusted{background:#10b981c7}.dqf-heatmap-cell.provisional,.dqf-heatmap-swatch.provisional{background:#facc15b8}.dqf-heatmap-cell.gap,.dqf-heatmap-swatch.gap{background:#f59e0be6}.dqf-heatmap-cell.conflict,.dqf-heatmap-swatch.conflict{background:#f43f5ee0}.dqf-heatmap-cell.degraded,.dqf-heatmap-swatch.degraded{background:#a855f7a8}.dqf-heatmap-cell.missing,.dqf-heatmap-swatch.missing{background:#ef444473;border-color:#f87171a6}.dqf-heatmap-cell.pending,.dqf-heatmap-swatch.pending{background:#94a3b83d}.dqf-gap-list{display:grid;gap:6px;margin-top:10px;max-height:260px;overflow-y:auto}.dqf-gap-button{align-items:center;background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:flex;gap:10px;justify-content:space-between;min-width:0;padding:9px 10px;text-align:left;transition:border-color .18s ease,background .18s ease,transform .18s ease;width:100%}.dqf-gap-button:hover{background:#7dd3fc0b;border-color:#7dd3fc33;transform:translateY(-1px)}.dqf-gap-button>div:first-child{min-width:0}.dqf-gap-button strong{color:var(--text-secondary);display:block;font-size:.69rem}.dqf-gap-button>div:first-child span{color:var(--text-muted);display:block;font-family:var(--font-mono);font-size:.57rem;margin-top:3px;overflow-wrap:anywhere}.dqf-gap-button-metrics{align-items:center;display:flex;flex:0 0 auto;gap:7px}.dqf-gap-button-metrics>span:not(.dqf-pill){color:var(--text-muted);font-family:var(--font-mono);font-size:.59rem}.dqf-pill{border:1px solid var(--border-light);border-radius:999px;display:inline-flex;font-size:.56rem;font-weight:900;letter-spacing:.03em;padding:4px 7px;text-transform:uppercase;white-space:nowrap}.dqf-pill.good{background:#10b9811a;border-color:#10b98138;color:#6ee7b7}.dqf-pill.warning{background:#f59e0b1a;border-color:#f59e0b38;color:#fbbf24}.dqf-pill.danger{background:#f43f5e1a;border-color:#f43f5e38;color:#fda4af}.dqf-pill.neutral{background:#ffffff0a;color:var(--text-secondary)}.dqf-provisional{background:#94a3b80b;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:3px;margin-top:9px;padding:9px 10px}.dqf-provisional strong{color:var(--text-secondary);font-size:.67rem}.dqf-provisional span{color:var(--text-muted);font-size:.6rem;line-height:1.45}.dqf-clear{color:var(--text-muted);font-size:.65rem;line-height:1.5;padding:8px 2px}.dqf-drawer-backdrop{align-items:stretch;background:#020617b8;display:flex;top:0;right:0;bottom:0;left:0;justify-content:flex-end;position:fixed;z-index:2200}.dqf-drawer{background:radial-gradient(circle at 90% 0%,rgba(14,165,233,.08),transparent 30%),#0b1220;border-left:1px solid rgba(148,163,184,.17);box-shadow:-18px 0 48px #0000005c;max-width:760px;overflow-y:auto;padding:20px;width:min(760px,94vw)}.dqf-drawer-head{align-items:flex-start;border-bottom:1px solid var(--border-subtle);display:flex;gap:14px;justify-content:space-between;padding-bottom:14px}.dqf-drawer-head h3{color:var(--text-primary);font-size:1.02rem;margin:4px 0}.dqf-drawer-head p{color:var(--text-muted);font-family:var(--font-mono);font-size:.63rem;margin:0}.dqf-close{align-items:center;background:#ffffff0b;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:1.2rem;height:34px;justify-content:center;line-height:1;width:34px}.dqf-drawer-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:220px;text-align:center}.dqf-drawer-state strong{color:var(--text-secondary);font-size:.82rem}.dqf-drawer-state span{color:var(--text-muted);font-size:.68rem;margin-top:5px}.dqf-drawer-state.danger strong{color:#fda4af}.dqf-classification{align-items:center;border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;gap:12px;justify-content:space-between;margin-top:14px;padding:12px 13px}.dqf-classification>div>span{color:var(--text-muted);display:block;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.dqf-classification>div>strong{color:var(--text-primary);display:block;font-size:.8rem;margin-top:4px}.dqf-classification code{color:var(--text-muted);font-family:var(--font-mono);font-size:.58rem;overflow-wrap:anywhere}.dqf-classification.good{background:#10b9810d;border-color:#10b98129}.dqf-classification.warning{background:#f59e0b0d;border-color:#f59e0b29}.dqf-classification.danger{background:#f43f5e0d;border-color:#f43f5e29}.dqf-metrics{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.dqf-metrics>div{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:10px}.dqf-metrics span,.dqf-metrics small{color:var(--text-muted);display:block;font-size:.58rem}.dqf-metrics strong{color:var(--text-primary);display:block;font-size:.82rem;margin:5px 0 3px;overflow-wrap:anywhere}.dqf-section{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:12px;padding:12px}.dqf-section-title{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.dqf-section-title strong{color:var(--text-secondary);display:block;font-size:.72rem}.dqf-section-title span{color:var(--text-muted);display:block;font-size:.59rem;margin-top:2px}.dqf-section-title>span{margin-top:0}.dqf-interval-strip{align-items:stretch;background:#ffffff06;border-radius:999px;display:flex;gap:1px;height:12px;margin-top:12px;overflow:hidden;width:100%}.dqf-interval-strip>span{flex-basis:0;min-width:2px}.dqf-interval-strip .trusted{background:#34d399c7}.dqf-interval-strip .untrusted{background:#fbbf24f2}.dqf-interval-list,.dqf-telemetry-list{display:grid;gap:6px;margin-top:10px}.dqf-interval-row,.dqf-telemetry-row{align-items:center;background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;gap:9px;justify-content:space-between;padding:8px 9px}.dqf-interval-row>div{min-width:0}.dqf-interval-row strong{color:var(--text-secondary);display:block;font-size:.67rem}.dqf-interval-row span:not(.dqf-pill){color:var(--text-muted);display:block;font-size:.58rem;margin-top:2px;overflow-wrap:anywhere}.dqf-samples{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.dqf-sample-card{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:10px}.dqf-sample-card>span{color:var(--text-muted);display:block;font-size:.58rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.dqf-sample-card strong{color:var(--text-secondary);display:block;font-size:.68rem;margin-top:5px;overflow-wrap:anywhere}.dqf-sample-card small{color:var(--text-muted);display:block;font-size:.58rem;margin-top:3px;overflow-wrap:anywhere}.dqf-telemetry-row{display:grid;grid-template-columns:130px minmax(120px,1fr) minmax(0,1fr)}.dqf-telemetry-row span{color:var(--text-muted);font-size:.58rem}.dqf-telemetry-row strong{color:var(--text-secondary);font-size:.64rem}.dqf-telemetry-row code{color:var(--text-muted);font-family:var(--font-mono);font-size:.56rem;overflow-wrap:anywhere}.dqf-limitations{background:#94a3b80a;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:12px;padding:11px 12px}.dqf-limitations>strong{color:var(--text-secondary);font-size:.68rem}.dqf-limitations p{color:var(--text-muted);font-size:.61rem;line-height:1.55;margin:6px 0 0}@media (max-width: 900px){.dqf-health-grid,.dqf-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dqf-gap-button{align-items:flex-start;flex-direction:column}.dqf-gap-button-metrics{flex-wrap:wrap}}@media (max-width: 560px){.dqf-health-grid,.dqf-metrics,.dqf-samples{grid-template-columns:1fr}.dqf-drawer{border-left:0;width:100vw}.dqf-classification,.dqf-section-title,.dqf-heatmap-head{align-items:flex-start;flex-direction:column}.dqf-telemetry-row{grid-template-columns:1fr}.dqf-gap-button-metrics{width:100%}}@media (max-width: 768px){.app{padding:0 16px 100px}.header{padding:16px 0 12px}.header-title{font-size:.8rem}.header-sub{display:none}.tab-btn{font-size:.65rem;padding:8px 12px}.card{padding:18px;border-radius:var(--radius-md)}.status-hero,.cost-hero,.invoice-hero{padding:28px 20px 24px;border-radius:var(--radius-lg)}.status-msg{font-size:1.5rem}.cost-hero-value{font-size:2.2rem}.cheap-grid{grid-template-columns:repeat(4,1fr)}.est-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.app{padding:0 12px 80px}.header-logo{width:36px;height:36px;font-size:18px}.header-title{font-size:.75rem}.tab-nav{gap:2px}.tab-btn{font-size:.62rem;padding:6px 10px}.tab-btn.active:after{display:none}.card{padding:16px;margin-bottom:12px}.card h3{font-size:.58rem;margin-bottom:14px}.status-price{padding:10px 24px;flex-direction:column}.status-price-num{font-size:1.8rem}.cheap-grid{grid-template-columns:repeat(3,1fr)}.appliance-grid{grid-template-columns:1fr}.cost-hero-value{font-size:1.8rem}.invoice-hero-value{font-size:2.2rem}.cost-bar{height:32px}}.bill-explainer-card{background:radial-gradient(circle at 8% 0%,rgba(52,199,89,.08),transparent 30%),radial-gradient(circle at 92% 0%,rgba(0,122,255,.08),transparent 28%),var(--glass-medium);margin-bottom:16px;overflow:hidden}.bill-explainer-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.bill-eyebrow{color:var(--text-muted);font-size:.55rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.bill-explainer-head h3{color:var(--text-primary);font-size:1.05rem;letter-spacing:.08em;margin:4px 0 6px;text-transform:uppercase}.bill-explainer-head p{color:var(--text-tertiary);font-size:.7rem;line-height:1.55;margin:0;max-width:760px}.bill-refresh,.bill-window-strip button{background:#ffffff09;border:1px solid var(--border-light);border-radius:999px;color:var(--text-secondary);cursor:pointer;font-size:.62rem;font-weight:900;padding:7px 11px}.bill-refresh:disabled,.bill-window-strip button:disabled{cursor:default;opacity:.28}.bill-window-strip{display:flex;gap:6px;margin-top:14px}.bill-window-strip button.active{background:#34c7591f;border-color:#34c7594d;color:#a7f3d0}.bill-notice{background:#007aff0f;border:1px solid rgba(0,122,255,.16);border-radius:var(--radius-sm);color:#bfdbfe;font-size:.61rem;margin-top:10px;padding:8px 10px}.bill-notice.danger{background:#f43f5e12;border-color:#f43f5e33;color:#fda4af}.bill-periods{align-items:stretch;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);margin-top:14px}.bill-periods>div:not(.bill-period-vs){background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px}.bill-periods span,.bill-periods small{color:var(--text-muted);display:block;font-size:.56rem}.bill-periods strong{color:var(--text-secondary);display:block;font-family:var(--font-mono);font-size:.7rem;margin:5px 0 3px}.bill-period-vs{align-items:center;color:var(--text-muted);display:flex;font-size:.54rem;font-weight:900;justify-content:center}.bill-kpi-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px}.bill-kpi-grid>div{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:10px}.bill-kpi-grid>div.danger{border-color:#f43f5e33}.bill-kpi-grid>div.good{border-color:#34c75933}.bill-kpi-grid span,.bill-kpi-grid small{color:var(--text-muted);display:block;font-size:.54rem}.bill-kpi-grid strong{color:var(--text-primary);display:block;font-size:.78rem;margin:5px 0 3px;overflow-wrap:anywhere}.bill-explainer-section,.bill-context-row,.bill-contributor-detail,.bill-excluded,.bill-disclosure{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-top:12px;padding:12px}.bill-section-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.bill-section-head h4{color:var(--text-secondary);font-size:.72rem;margin:0}.bill-section-head p{color:var(--text-muted);font-size:.56rem;line-height:1.45;margin:3px 0 0}.bill-section-head code{color:var(--text-muted);font-family:var(--font-mono);font-size:.53rem;white-space:nowrap}.bill-factor-list{display:grid;gap:9px;margin-top:12px}.bill-factor-label{align-items:baseline;display:flex;justify-content:space-between}.bill-factor-label strong,.bill-factor-label span{color:var(--text-secondary);font-size:.61rem}.bill-factor-label span{font-family:var(--font-mono)}.bill-factor-track{background:#ffffff07;border:1px solid var(--border-subtle);border-radius:999px;height:12px;margin-top:5px;overflow:hidden;position:relative}.bill-factor-zero{background:#ffffff26;height:100%;left:50%;position:absolute;top:0;width:1px}.bill-factor-fill{height:100%;position:absolute;top:0;width:var(--bill-factor-width)}.bill-factor-fill.positive{left:50%}.bill-factor-fill.negative{right:50%}.bill-factor-row.price .bill-factor-fill{background:#f59e0bb8}.bill-factor-row.usage .bill-factor-fill{background:#007affb8}.bill-factor-row.tariff .bill-factor-fill{background:#94a3b89e}.bill-factor-row.interaction .bill-factor-fill{background:#d946efad}.bill-context-row{align-items:center;display:grid;gap:14px;grid-template-columns:180px minmax(0,1fr)}.bill-context-row span,.bill-context-row small{color:var(--text-muted);display:block;font-size:.54rem}.bill-context-row strong{color:var(--text-secondary);display:block;font-size:.82rem;margin:5px 0 3px}.bill-context-row p{color:var(--text-muted);font-size:.58rem;line-height:1.5;margin:0}.bill-daily-list,.bill-contributor-list,.bill-excluded-list{display:grid;gap:6px;margin-top:10px}.bill-daily-row{align-items:center;background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:grid;gap:8px;grid-template-columns:minmax(120px,1.35fr) repeat(4,minmax(70px,.7fr));padding:8px 9px}.bill-daily-row span{min-width:0}.bill-daily-row strong,.bill-daily-row small{display:block}.bill-daily-row strong{color:var(--text-secondary);font-size:.59rem}.bill-daily-row small{color:var(--text-muted);font-size:.5rem;margin-top:2px}.bill-contributor-row{align-items:center;background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:grid;gap:8px;grid-template-columns:minmax(130px,1.4fr) minmax(70px,.65fr) minmax(70px,.65fr) minmax(78px,.7fr);padding:9px 10px;text-align:left;width:100%}.bill-contributor-row:hover{background:#ffffff0a}.bill-contributor-row strong,.bill-contributor-row small{display:block}.bill-contributor-row strong{color:var(--text-secondary);font-size:.59rem}.bill-contributor-row small{color:var(--text-muted);font-size:.5rem;margin-top:2px}.bill-contributor-row>span:last-child{font-family:var(--font-mono);text-align:right}.bill-contributor-row .danger{color:#fda4af}.bill-contributor-row .good{color:#86efac}.bill-detail-head{align-items:flex-start;display:flex;justify-content:space-between}.bill-detail-head strong,.bill-detail-head small{display:block}.bill-detail-head strong{color:var(--text-secondary);font-size:.65rem}.bill-detail-head small{color:var(--text-muted);font-size:.54rem;margin-top:3px}.bill-detail-head button{background:#ffffff0a;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary);cursor:pointer;height:28px;width:28px}.bill-detail-grid{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.bill-detail-grid>div{background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;padding:8px}.bill-detail-grid span{color:var(--text-muted);display:block;font-size:.5rem}.bill-detail-grid strong{color:var(--text-secondary);display:block;font-size:.62rem;margin-top:4px;overflow-wrap:anywhere}.bill-contributor-detail code{color:var(--text-muted);display:block;font-family:var(--font-mono);font-size:.5rem;line-height:1.5;margin-top:9px;overflow-wrap:anywhere}.bill-excluded summary{color:var(--text-secondary);cursor:pointer;font-size:.61rem;font-weight:800}.bill-excluded-list>div{align-items:center;background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;gap:10px;justify-content:space-between;padding:7px 8px}.bill-excluded-list span,.bill-excluded-list strong,.bill-excluded-list small,.bill-excluded-clear{color:var(--text-muted);font-size:.51rem}.bill-excluded-list strong{font-weight:800;text-align:right}.bill-excluded-clear{margin-top:9px}.bill-disclosure{display:flex;flex-wrap:wrap;gap:5px 12px}.bill-disclosure strong{color:var(--text-secondary);font-size:.55rem}.bill-disclosure span{color:var(--text-muted);font-size:.52rem;line-height:1.45}.bill-refresh:focus-visible,.bill-window-strip button:focus-visible,.bill-contributor-row:focus-visible,.bill-detail-head button:focus-visible,.bill-excluded summary:focus-visible{outline:2px solid rgba(125,211,252,.48);outline-offset:2px}@media (max-width: 900px){.bill-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bill-daily-row{grid-template-columns:minmax(120px,1.3fr) repeat(2,minmax(70px,.7fr))}.bill-daily-row>span:nth-child(4),.bill-daily-row>span:nth-child(5){display:none}}@media (max-width: 560px){.bill-explainer-head{align-items:stretch;flex-direction:column}.bill-refresh{width:100%}.bill-periods{grid-template-columns:1fr}.bill-period-vs{min-height:20px}.bill-kpi-grid,.bill-detail-grid,.bill-context-row{grid-template-columns:1fr}.bill-contributor-row{grid-template-columns:minmax(0,1fr) 82px}.bill-contributor-row>span:nth-child(2),.bill-contributor-row>span:nth-child(3){display:none}.bill-daily-row{grid-template-columns:minmax(0,1fr) 70px}.bill-daily-row>span:nth-child(n+3){display:none}.bill-window-strip{overflow-x:auto}}
