:root{--navy:#071a2b;--water:#18a6c8;--aqua:#63e6d6;--ink:#10212f;--muted:#5e7180;--surface:#f5f8fa;--card:#fff;--line:#dce7ec;--success:#1c9a72;--danger:#c94c55;--radius:12px;--shadow:0 16px 48px #071a2b12;--ease:200ms ease}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--surface);font-size:16px}body{margin:0;min-width:320px}body:has(.guest-shell){background:linear-gradient(145deg,#071a2b 0%,#0b2e48 58%,#18a6c8 160%);min-height:100vh}a{color:inherit;text-decoration:none}button,input{font:inherit}button,.primary-button,.secondary-button{min-height:48px;border-radius:10px;cursor:pointer;transition:transform var(--ease),background var(--ease),box-shadow var(--ease)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--navy);color:#fff;padding:.75rem 1rem;z-index:5}.skip-link:focus{top:1rem}.guest-main{width:min(100% - 32px,560px);margin:auto;padding:32px 0}.auth-card,.installer,.success-card{background:#fffffffa;border:1px solid #ffffff45;border-radius:24px;box-shadow:0 32px 90px #0004;padding:clamp(24px,7vw,48px)}.auth-card{margin:8vh auto 0}.auth-brand,.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.04em;font-size:1.15rem}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--aqua);color:var(--navy);font-size:1.8rem;line-height:1}.eyebrow{font-size:.72rem;font-weight:750;letter-spacing:.15em;color:var(--water);margin:24px 0 10px}.auth-card h1,.installer h1,.success-card h1,.empty-state h1{font-size:clamp(2rem,7vw,3.2rem);line-height:1.05;letter-spacing:-.065em;margin:0 0 16px}.lede{color:var(--muted);line-height:1.6;margin:0 0 28px}.stack-form{display:grid;gap:10px}.stack-form label,.form-grid label{font-size:.82rem;font-weight:650;margin-top:8px}.stack-form input,.form-grid input{width:100%;height:50px;border:1px solid var(--line);border-radius:9px;padding:0 14px;background:#fff;color:var(--ink);margin-top:5px}.primary-button,.secondary-button{border:0;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:22px;font-weight:700}.primary-button{background:var(--navy);color:#fff;box-shadow:0 8px 20px #071a2b20}.primary-button:hover{background:#123c58;transform:translateY(-1px)}.secondary-button{border:1px solid var(--line);background:transparent;color:var(--ink)}.button-link{width:max-content}.form-note,.muted,.footer-note{font-size:.8rem;color:var(--muted)}.alert{border-radius:10px;padding:10px 14px;margin:18px 0;font-size:.9rem}.alert p{margin:2px 0}.alert-error{background:#fff0f1;color:#922f3c;border:1px solid #f3c8cd}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:24px 0 32px}.steps span{font-size:.62rem;color:var(--muted);display:grid;gap:5px}.steps b{width:26px;height:26px;border-radius:50%;background:#e8eff2;display:grid;place-items:center;font-size:.7rem}.steps .is-active{color:var(--navy)}.steps .is-active b{background:var(--aqua)}.installer h2{font-size:1.4rem;letter-spacing:-.04em}.check-list{display:grid;gap:8px;margin:20px 0 30px}.check-list div,.summary-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff}.check-list span{color:var(--success);font-weight:bold}.check-list strong{margin-left:auto;font-size:.75rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 30px}.form-grid .full{grid-column:1/-1}.installer-actions{display:flex;justify-content:flex-end;gap:10px}.summary-card{display:grid;grid-template-columns:1fr 2fr;margin:24px 0 30px}.summary-card span{color:var(--muted);font-size:.8rem}.success-card{text-align:center;margin:15vh auto}.success-icon{width:64px;height:64px;border-radius:50%;background:var(--aqua);display:grid;place-items:center;font-size:2rem;margin:0 auto 24px}.app-frame{display:flex;min-height:100vh}.side-rail{position:fixed;width:240px;height:100vh;background:var(--navy);color:#fff;padding:28px 20px;display:flex;flex-direction:column}.side-rail .brand{color:#fff}.rail-nav{display:grid;gap:5px;margin-top:60px}.nav-link{padding:12px;border-radius:9px;color:#aec2ce;display:flex;gap:12px;align-items:center;font-size:.9rem}.nav-link span{width:18px;text-align:center}.nav-link:hover,.nav-link.active{background:#ffffff13;color:#fff}.rail-footer{margin-top:auto;color:#7393a2;font-size:.72rem}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--aqua);margin-right:7px}.page-column{margin-left:240px;width:calc(100% - 240px);min-width:0}.topbar{height:78px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:var(--surface)}.topbar .eyebrow{margin:0;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:18px}.icon-button,.text-button{border:0;background:none;color:var(--muted);min-height:38px}.text-button{font-size:.82rem}.content{max-width:1180px;padding:42px clamp(22px,5vw,72px) 80px}.hero-row{display:flex;justify-content:space-between;align-items:center;min-height:250px}.hero-row h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:.98;letter-spacing:-.08em;margin:0}.hero-row h1 em{color:var(--water);font-style:normal}.water-orbit{width:180px;height:180px;border:1px solid #b6d5dc;border-radius:50%;position:relative;background:radial-gradient(circle,#63e6d633,transparent 55%)}.water-orbit:before,.water-orbit:after,.water-orbit span{content:"";position:absolute;border:1px solid #8ccbd4;border-radius:50%;inset:18px}.water-orbit:after{inset:38px;border-color:#18a6c888}.water-orbit span:nth-child(1){inset:70px;background:var(--water);border:0}.water-orbit span:nth-child(2){inset:7px;border-style:dashed;transform:rotate(40deg)}.water-orbit span:nth-child(3){inset:48px;border-color:#63e6d6;transform:rotate(-25deg)}.foundation-card{display:flex;align-items:center;gap:18px;background:var(--navy);color:#fff;padding:22px 24px;border-radius:var(--radius);box-shadow:var(--shadow)}.card-icon{width:42px;height:42px;border-radius:12px;background:#ffffff12;display:grid;place-items:center;color:var(--aqua);font-size:1.4rem}.foundation-card .eyebrow{margin:0 0 6px;color:var(--aqua)}.foundation-card h2{margin:0 0 5px;font-size:1.05rem}.foundation-card p:not(.eyebrow){margin:0;color:#a9c0cb;font-size:.86rem}.pill{margin-left:auto;color:var(--aqua);font-size:.7rem;letter-spacing:.12em}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:16px;margin-top:16px}.metric-card,.quote-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;min-height:150px}.metric-card.accent{background:#e0f7f5;border-color:#b9ece5}.metric-label{display:block;color:var(--muted);font-size:.68rem;letter-spacing:.13em;font-weight:750}.metric-card strong{display:block;font-size:2.5rem;letter-spacing:-.08em;margin:18px 0 4px}.metric-card small{color:var(--muted)}.quote-card{background:#d9f3f5;border:0}.quote-mark{font-size:2.2rem;color:var(--water)}.quote-card p{font-size:1.5rem;font-weight:650;line-height:1.1;margin:8px 0}.quote-card em{color:var(--water);font-style:normal}.footer-note{margin-top:30px}.empty-state{text-align:center;max-width:550px;margin:12vh auto}.empty-wave{font-size:4rem;color:var(--water);margin-bottom:20px}.mobile-nav{display:none}.offline-banner{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;border-radius:99px;padding:10px 18px;font-size:.8rem;z-index:10}@media(max-width:720px){.side-rail{display:none}.page-column{margin-left:0;width:100%}.topbar{height:68px;padding:0 20px}.content{padding:28px 20px 100px}.hero-row{min-height:230px}.hero-row h1{font-size:3rem}.water-orbit{width:110px;height:110px;flex:none;transform:scale(.8)}.dashboard-grid{grid-template-columns:1fr 1fr}.quote-card{grid-column:1/-1}.mobile-nav{display:flex;position:fixed;z-index:9;bottom:0;left:0;right:0;height:76px;padding:8px 14px calc(8px + env(safe-area-inset-bottom));background:#fffffff2;border-top:1px solid var(--line);justify-content:space-around;align-items:center;backdrop-filter:blur(14px)}.mobile-nav-link{display:grid;place-items:center;gap:3px;color:var(--muted);font-size:1.15rem;min-width:48px;min-height:48px}.mobile-nav-link small{font-size:.62rem}.mobile-nav-link.active{color:var(--water)}.log-button{width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:1.8rem;margin-top:-24px;border:5px solid var(--surface)}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.installer-actions{justify-content:stretch}.installer-actions>*{flex:1}.steps span{font-size:.5rem}.steps b{width:22px;height:22px}.foundation-card{align-items:flex-start}.foundation-card .pill{display:none}.auth-card,.installer,.success-card{padding:26px 22px}.auth-card{margin-top:4vh}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}@media(prefers-color-scheme:dark){html[data-theme=system]{--surface:#081c2b;--card:#0e293c;--ink:#f1f7f8;--muted:#9cb3bd;--line:#214255}.dark-only{display:block}}html[data-theme=dark]{--surface:#081c2b;--card:#0e293c;--ink:#f1f7f8;--muted:#9cb3bd;--line:#214255}html[data-theme=dark] .mobile-nav{background:#0e293cf2}html[data-theme=dark] .stack-form input,html[data-theme=dark] .form-grid input,html[data-theme=dark] .check-list div,html[data-theme=dark] .summary-card{background:#102f43;color:var(--ink)}
