/* v6: compact range and consumption dials; never stack on phones. */
.instrument-view{container-type:inline-size;min-width:0;gap:12px}
.ic-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.ic-vehicle-link{display:grid;gap:2px;background:transparent;color:var(--text);text-align:left;min-width:0;min-height:44px;padding:0}
.ic-vehicle-link h1{font-size:clamp(1rem,2vw,1.4rem);line-height:1.35;font-weight:500;letter-spacing:-.02em;overflow-wrap:anywhere}
.ic-vehicle-link>span{color:var(--muted-2);font-size:.75rem}
.ic-add{min-height:44px;flex-shrink:0;padding:10px 12px;font-size:.8125rem}
.ic-panel{--ic-energy:#7ef0e5;--ic-money:#e9b567;min-width:0}
.ic-housing{background:radial-gradient(ellipse at 50% 0%,#1e2834 0%,#080d13 45%,#020407 100%);border:4px solid #262b31;border-top:8px solid #373e46;border-bottom:8px solid #161a20;border-radius:65px 65px 24px 24px;padding:20px 20px 18px;box-shadow:0 -2px 0 #535d64,inset 0 7px 17px #000,0 12px 25px #0004}
.ic-instruments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;max-width:740px;margin:auto}
.ic-gauge{min-width:0;--ic-color:var(--ic-energy)}.ic-gauge.money{--ic-color:var(--ic-money)}
.ic-gauge-face{position:relative;isolation:isolate;width:min(100%,220px);aspect-ratio:1;margin:auto;min-width:0}
.ic-gauge-face:before{content:'';position:absolute;inset:9%;border-radius:50%;background:radial-gradient(circle at 50% 42%,#1c2630 0%,#0b121b 55%,#02050b 70%);box-shadow:inset 0 3px 14px #000;z-index:-1}
.ic-dial{display:block;width:100%;height:100%;overflow:visible}
.ic-rim{fill:none;stroke:#404a55;stroke-width:1.5}.ic-track{fill:none;stroke:#253746;stroke-width:4}
.ic-arc{fill:none;stroke:var(--ic-color);stroke-width:3;filter:drop-shadow(0 0 4px #79b4bf44);transition:stroke-dasharray .95s cubic-bezier(.22,.8,.3,1)}
.ic-tick{stroke:#496071;stroke-width:1}.ic-tick.major{stroke:#bdcdd7;stroke-width:1.5}.ic-scale{fill:#a7b8c6;font-size:12px;text-anchor:middle;font-variant-numeric:tabular-nums}
.ic-needle{transition:transform .95s cubic-bezier(.22,.8,.3,1);transform-box:view-box}.ic-needle polygon{fill:var(--ic-color);filter:drop-shadow(0 0 3px #79b4bf66)}.ic-hub{fill:#101a23;stroke:#78909e;stroke-width:1.5}
.ic-reading{position:absolute;top:58%;left:0;width:100%;text-align:center;pointer-events:none;font-variant-numeric:tabular-nums}
.ic-reading strong{display:block;font-size:var(--ic-reading-size);font-weight:500;letter-spacing:-.03em;line-height:1.12;color:#eff6f9;text-shadow:0 0 20px #b3e1ef24}
.ic-reading>span{display:block;color:#bcc9d2;font-size:12px;line-height:1.25;margin-top:2px}
.ic-gauge-label{text-align:center;font-size:13px;line-height:1.4;color:#c8d6e0;min-height:20px;padding-top:2px}
.ic-monthly{max-width:660px;margin:18px auto 0;padding:16px 8px 0;border-top:1px solid #243440}
.ic-monthly-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ic-stat-label{display:block;font-size:13px;color:#b4c7d4;margin-bottom:4px}
.ic-monthly-top strong{font-size:28px;line-height:1.2;font-weight:500;color:#eaf3f7;font-variant-numeric:tabular-nums}
.ic-monthly-top small{font-size:13px;color:#b9ccd7;font-weight:400;margin-left:7px}
.ic-motion{width:44px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#d3e3ec;border:1px solid transparent;border-radius:6px}
.ic-motion:disabled{opacity:.35;cursor:default}.ic-motion:hover:not(:disabled){border-color:var(--ic-money)}
.ic-play{width:0;height:0;border-left:11px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}.ic-pause{width:12px;height:14px;border-left:4px solid currentColor;border-right:4px solid currentColor}
.ic-chart{min-width:0;margin-top:6px}.ic-history{width:100%;height:auto;display:block}.ic-grid{stroke:#263643;stroke-width:1}.ic-chart-label{fill:#a7b8c6;font-size:12px}
.ic-area{fill:#7ef0e50c}.ic-line{fill:none;stroke:var(--ic-energy);stroke-width:2}.ic-trail{fill:none;stroke:#f0ffff;stroke-width:3;stroke-dasharray:9 91;animation:ic-trace 4s linear infinite}
.ic-point{fill:var(--ic-energy)}.ic-paused .ic-trail{animation-play-state:paused}
.ic-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:660px;margin:12px auto 0;padding:12px 8px 0;border-top:1px solid #243440}
.ic-summary>div{min-width:0}.ic-summary>div>span{display:block;color:#b4c5d1;font-size:12px;line-height:1.4;margin-bottom:5px}
.ic-summary strong{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;overflow-wrap:anywhere;color:#e7f1f6;font-size:20px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.3}
.ic-summary small{font-size:12px;color:#b9cbd7;font-weight:400;white-space:nowrap}
.ic-needed{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#e9b5670c;border:1px solid #e9b56733;border-radius:8px;color:var(--gold);width:100%;min-height:44px;text-align:left;padding:10px 12px;font-size:13px;line-height:1.4;margin-top:12px}
.ic-method{margin-top:8px;color:var(--muted-2);font-size:12px}.ic-method summary{cursor:pointer;padding:12px 4px;min-height:44px}.ic-method p{line-height:1.65;margin:8px 4px}
.ic-period{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #263340;padding-top:4px}.ic-period button{font-size:12px;min-height:44px;text-align:left;line-height:1.45}.ic-period>span{font-size:12px;color:var(--muted-2)}
@keyframes ic-trace{to{stroke-dashoffset:-100}}
@container(max-width:600px){.ic-housing{padding:12px 6px;border-radius:35px 35px 18px 18px}.ic-instruments{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.ic-gauge-label{font-size:12px;padding-top:5px}.ic-monthly{margin-top:12px;padding:12px 8px 0}.ic-monthly-top strong{font-size:25px}.ic-summary{gap:8px;margin-top:6px;padding-top:10px}.ic-summary strong{font-size:19px}.ic-period>span{display:none}.ic-add{font-size:12px;padding:10px}.ic-heading{gap:8px}}
@media(max-width:760px){.home-mode .mobile-header{min-height:68px;padding:8px max(14px,env(safe-area-inset-right)) 8px max(14px,env(safe-area-inset-left));padding-top:max(8px,env(safe-area-inset-top))}.home-mode .header-logo{width:48px;height:44px}.home-mode .brand-lockup>div>span{display:none}.home-mode .app-content{padding:10px max(12px,env(safe-area-inset-right)) calc(94px + var(--safe-bottom)) max(12px,env(safe-area-inset-left))}.home-mode .sync-strip{margin-bottom:8px}.home-mode .sync-strip.ready>div>span{display:none}.home-mode .bottom-nav{padding-top:5px;padding-bottom:calc(5px + var(--safe-bottom))}.home-mode .nav-item{min-height:52px;gap:4px}.ic-housing{padding:12px 6px;border-radius:35px 35px 18px 18px}.ic-instruments{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.ic-gauge-label{font-size:12px;padding-top:5px}.ic-monthly{margin-top:12px;padding:12px 8px 0}.ic-summary{gap:8px;margin-top:6px;padding-top:10px}.ic-summary strong{font-size:19px}.ic-period>span{display:none}.ic-add{font-size:12px;padding:10px}}
@media(prefers-reduced-motion:reduce){.ic-panel *{animation:none!important;transition:none!important}}
/* Height-aware sizing keeps the important dials in view on smaller phones. */
@container(max-width:600px){.ic-gauge-face{width:min(100%,136px);width:min(100%,clamp(104px,18svh,136px))}.ic-housing{padding-top:8px;padding-bottom:10px;border-top-width:5px;border-bottom-width:5px}.ic-monthly{margin-top:8px;padding-top:8px}.ic-stat-label{margin-bottom:2px}.ic-monthly-top strong{font-size:23px}.ic-summary{padding-top:8px}.ic-gauge-label{padding-top:0}.ic-reading{top:55%}}
@media(max-width:760px){.ic-gauge-face{width:min(100%,136px);width:min(100%,clamp(104px,18svh,136px))}.ic-housing{padding-top:8px;padding-bottom:10px;border-top-width:5px;border-bottom-width:5px}.ic-monthly{margin-top:8px;padding-top:8px}.ic-stat-label{margin-bottom:2px}.ic-monthly-top strong{font-size:23px}.ic-summary{padding-top:8px}.ic-gauge-label{padding-top:0}.ic-reading{top:55%}}
