:root{--bg:#f5f6f4;--surface:#fff;--text:#1b1f1d;--muted:#5f6a64;--border:#dfe3df;--accent:#1f6f4a;--accent-text:#fff;--danger:#b3261e;--warn-bg:#fff4d6;--radius:12px;--tabbar-h:64px;--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#111413;--surface:#1b201e;--text:#e8ece9;--muted:#9aa5a0;--border:#2d3431;--accent:#4fbf8a;--accent-text:#0b1a12;--danger:#f2817a;--warn-bg:#3a3218;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow-x:hidden}a{color:var(--accent)}h1{margin:0 0 12px;font-size:1.4rem}h2{margin:0 0 8px;font-size:1.1rem}p{margin:0 0 12px}.page{max-width:960px;padding:16px 16px calc(var(--tabbar-h) + var(--safe-bottom) + 24px);margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:16px}.table-scroll{-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:8px}.muted{color:var(--muted)}.notice{background:var(--warn-bg);border-radius:var(--radius);margin-bottom:16px;padding:12px 16px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.spacer{flex:1}.btn,button,input,select{font:inherit;border-radius:10px;min-height:44px}.btn,button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 16px;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-danger{color:var(--danger)}.btn-block{width:100%}input,select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);padding:0 12px}label{color:var(--muted);margin-bottom:4px;font-size:.9rem;display:block}.list{margin:0;padding:0;list-style:none}.list>li{border-bottom:1px solid var(--border)}.list>li:last-child{border-bottom:0}.list-link{min-height:56px;color:inherit;align-items:center;gap:12px;padding:12px 0;text-decoration:none;display:flex}.badge{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:.75rem}.appbar{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);padding:calc(env(safe-area-inset-top,0px)) 16px 0;position:sticky;top:0}.appbar-inner{align-items:center;gap:16px;max-width:960px;height:52px;margin:0 auto;display:flex}.brand{letter-spacing:.04em;color:var(--text);font-weight:700;text-decoration:none}.topnav{gap:4px;display:none}.topnav a{color:var(--muted);border-radius:8px;padding:8px 12px;text-decoration:none}.topnav a[aria-current=page]{color:var(--text);background:var(--bg)}.tabbar{z-index:10;background:var(--surface);border-top:1px solid var(--border);padding-bottom:var(--safe-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar a{height:var(--tabbar-h);color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.75rem;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:var(--accent)}.tabbar svg{width:24px;height:24px}@media (min-width:800px){.topnav{display:flex}.tabbar{display:none}.page{padding-bottom:32px}}.planner{gap:16px;display:grid}.planner>*{min-width:0}.steps{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;margin:0 -16px;padding:0 16px 4px;display:flex;position:relative;overflow-x:auto}.steps::-webkit-scrollbar{display:none}.steps a{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;flex:none;align-items:center;gap:6px;min-height:40px;padding:8px 12px;font-size:.9rem;text-decoration:none;display:inline-flex}.steps a[aria-current=step]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.step-n{font-variant-numeric:tabular-nums;opacity:.8}.step-nav{gap:8px;display:flex}.step-nav .btn{flex:1}@media (min-width:800px){.planner{grid-template-columns:240px 1fr;align-items:start}.steps{flex-direction:column;margin:0;padding:0;position:sticky;top:68px;overflow:visible}.steps a{border-radius:8px}}h3{margin:20px 0 8px;font-size:1rem}.field{min-width:0;margin-bottom:12px}.field input[type=range]{padding:0}.field input[type=file]{border:0;min-height:0;padding:10px 0}.hint{color:var(--muted);margin-top:4px;font-size:.8rem}p.hint{margin:0 0 12px}.accent{color:var(--accent)}.num{text-align:right;font-variant-numeric:tabular-nums}.grid2,.grid3,.grid4,.grid5{grid-template-columns:1fr;gap:0 12px;display:grid}.grid4,.grid5{grid-template-columns:repeat(2,1fr)}.pair{grid-template-columns:1fr 5.5em;gap:8px;display:grid}.pair .field{margin:0}.check{color:var(--text);align-items:center;gap:8px;min-height:44px;font-size:.9rem;display:flex}.check input{width:22px;height:22px;min-height:22px}@media (min-width:560px){.grid2{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}.grid5{grid-template-columns:repeat(5,1fr)}}.pace-summary{background:var(--bg);border-radius:var(--radius);margin-bottom:12px;padding:12px}.pace-summary .grid2{gap:12px}.boxes{grid-template-columns:repeat(2,1fr);gap:8px;margin:4px 0 12px;display:grid}@media (min-width:800px){.boxes{grid-template-columns:repeat(4,1fr)}}.box{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-width:0;padding:10px}.box-lbl{color:var(--muted);font-size:.75rem}.box-val{font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:600}.box-sub{color:var(--muted);font-size:.75rem}.box-bar{background:var(--border);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.box-bar>div{background:var(--accent);height:100%}.box.st-ok{border-color:var(--accent)}.box.st-low{border-color:#c98a00}.box.st-high{border-color:var(--danger)}.status{color:var(--muted);min-height:1.2em;margin:8px 0 0;font-size:.85rem}.status.ok,.ok{color:var(--accent)}.status.dirty{color:#a86b00}.status.error,.error{color:var(--danger)}.pill{border:1px solid var(--border);background:var(--bg);border-radius:999px;padding:4px 10px;font-size:.8rem}.pill.same{color:var(--accent);border-color:var(--accent)}.pill.diff{color:#a86b00;border-color:#c98a00}.savebar .row{margin-bottom:8px}.btn-icon{min-width:44px;padding:0;font-size:1.2rem}table.zones input{min-height:40px;padding:0 6px}td.num,th.num{text-align:right}.chart-dark{border-radius:var(--radius);color:#e2e8f0;background:#0f172a;margin:8px 0;padding:8px 4px}.chart{touch-action:pan-y;width:100%;position:relative}.chart canvas{display:block}.chart-overlay{position:absolute;top:0;left:0}.chart-tip{z-index:2;color:#e2e8f0;pointer-events:none;background:#0f172af2;border:1px solid #334155;border-radius:8px;width:200px;padding:8px 10px;font-size:.78rem;line-height:1.45;position:absolute}.chart-tip .tip-head{margin-bottom:2px;font-weight:600}.chart-tip .tip-muted{color:#94a3b8}.legend{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin:4px 0;font-size:.75rem;display:flex}.legend span{align-items:center;gap:4px;display:inline-flex}.legend i{border-radius:2px;width:12px;height:10px;display:inline-block}.legend i.line{height:3px}.legend i.dash{background:0 0;border-top:2px dashed;height:0}.legend i.dot{border-radius:50%;width:10px}.legend i.tri{border-bottom:10px solid #94a3b8;border-left:6px solid #0000;border-right:6px solid #0000;border-radius:0;width:0;height:0}.sun{gap:4px 16px;margin-bottom:8px;font-size:.85rem}.chart-opts{gap:0 16px}.segmented{border:1px solid var(--border);border-radius:10px;margin-bottom:8px;display:inline-flex;overflow:hidden}.segmented button{border:0;border-radius:0;min-height:40px;font-size:.85rem}.segmented button.on{background:var(--accent);color:var(--accent-text)}.gi-prod{grid-template-columns:1fr;gap:4px;margin-bottom:10px;display:grid}@media (min-width:560px){.gi-prod{grid-template-columns:1fr 1.4fr;align-items:center}}.gi-prod small{margin-left:6px}.static{align-items:center;min-height:44px;display:flex}.chips{flex-wrap:wrap;gap:6px;font-size:.8rem;font-weight:400;display:flex}.chip{align-items:center;gap:4px;display:inline-flex}.mk{vertical-align:middle;width:10px;height:10px;margin-right:4px;display:inline-block}.mk.gel{background:#38bdf8;border-radius:50%}.mk.solid{background:var(--text)}.mk.nuts{border-bottom:9px solid #94a3b8;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0}.gi-dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.gi-dot.ok{background:#22c55e}.gi-dot.warn{background:#f59e0b}.gi-dot.crit{background:#ef4444}tr.gi-hr td{background:var(--bg);white-space:normal}table.gi-plan td.why{white-space:normal;min-width:260px}.segment{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.segment h3{margin-top:0}.seg-meta{color:var(--muted);margin-bottom:6px;font-size:.85rem}.sub-label{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin:12px 0 4px;font-size:.8rem;font-weight:600}.wind{display:inline-block}.warn{color:#a86b00}table.fuel select{min-width:220px}table.fuel input,table.lib input,table.lib select{min-height:40px;padding:0 6px}table.lib td input:not([type=number]){min-width:140px}tr.brand-row td{background:var(--bg)}.savebar{padding:8px}.savebar-line{align-items:center;gap:6px;display:flex}.savebar-line input{flex:1;min-width:0;font-weight:600}.savebar-back{min-width:36px;min-height:44px;color:var(--muted);justify-content:center;align-items:center;font-size:1.2rem;text-decoration:none;display:inline-flex}.savebar-line .btn{flex:none;padding:0 14px}.savebar-more{padding:0 12px;font-size:1.3rem;line-height:1}.savebar-line .btn.is-dirty{position:relative}.savebar-line .btn.is-dirty:after{content:"";width:8px;height:8px;box-shadow:0 0 0 2px var(--accent);background:#f5b400;border-radius:50%;position:absolute;top:6px;right:6px}.savebar-status{margin:6px 4px 0}.savebar-menu{border-top:1px solid var(--border);margin-top:8px;padding:12px 4px 4px}.savebar-menu .row{margin-bottom:10px}.savebar-menu h3{margin:6px 0 8px;font-size:1rem}.savebar-menu hr{border:0;border-top:1px solid var(--border);margin:14px 0}.btn-info{border:1px solid var(--border);background:var(--surface);width:24px;height:24px;min-height:0;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font:italic 600 .85rem Georgia,serif;display:inline-flex}.btn-info[aria-expanded=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-small{min-height:32px;padding:0 10px;font-size:.85rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chart-full{z-index:100;color:#e2e8f0;padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));background:#0f172a;position:fixed;inset:0;overflow:auto}.chart-full .chart-opts{color:#e2e8f0;margin-bottom:4px}.chart-full .btn{color:#e2e8f0;background:#1e293b;border-color:#334155}.chart-full .chart-dark{margin:4px 0 0;padding:4px 0}body.no-scroll{overflow:hidden}.chart-full .legend{color:#cbd5e1}.chart-full .chart-opts label,.chart-full .check{color:#e2e8f0}
