:root{--paper:#d9ebfb;--panel:rgba(255,255,255,.70);--ink:#18242f;--muted:#607385;--line:rgba(96,132,159,.18);--green:#172b3c;--green-2:rgba(255,255,255,.48);--amber:#3379a7;--shadow:0 24px 65px rgba(73,122,159,.16)}
body{background:linear-gradient(160deg,#f4f9ff 0%,#d9ebfb 42%,#a8d7f2 100%);background-attachment:fixed;min-height:100dvh}body:before,body:after{content:"";position:fixed;z-index:-1;border-radius:50%;filter:blur(30px);pointer-events:none}body:before{width:58vw;height:38vw;left:-12vw;top:8vh;background:rgba(255,255,255,.58)}body:after{width:46vw;height:42vw;right:-8vw;bottom:-12vw;background:rgba(90,190,235,.30)}.grain{opacity:.1}.topbar{height:80px;background:rgba(239,248,255,.62);backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);border-color:rgba(255,255,255,.65);position:sticky;top:0}.brand-mark{background:rgba(255,255,255,.55);border-color:rgba(33,84,116,.35);box-shadow:inset 0 1px 0 white}.view-tabs{background:rgba(255,255,255,.34);border-color:rgba(255,255,255,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.view-tab.active{background:rgba(255,255,255,.88);box-shadow:0 8px 24px rgba(74,120,153,.13)}.shell{max-width:1240px}.hero h1,.insights-hero h1{letter-spacing:-.025em}.hero .eyebrow,.section-kicker{color:#2a82b7}.panel,.metric-card{background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.72);backdrop-filter:blur(24px) saturate(125%);-webkit-backdrop-filter:blur(24px) saturate(125%);box-shadow:0 24px 60px rgba(59,112,151,.13),inset 0 1px 0 rgba(255,255,255,.9)}.schedule-panel{background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(241,250,255,.60))}.primary-button{background:#172b3c;box-shadow:0 10px 26px rgba(23,43,60,.20)}.soft-button{background:rgba(255,255,255,.67);border:1px solid rgba(255,255,255,.8);color:#274c64}.progress-track{background:rgba(72,128,165,.12)}.progress-fill{background:linear-gradient(90deg,#346c8f,#77badb)}.tag{background:rgba(184,220,240,.46);color:#315d78}.check{border-color:#6da2bd}.done .check{background:#2f6a89;border-color:#2f6a89}.stat-card{background:linear-gradient(150deg,rgba(255,255,255,.77),rgba(213,238,250,.67))}.reflection-card textarea{background:rgba(255,255,255,.48)}.digital-card{background:linear-gradient(135deg,rgba(35,72,96,.96),rgba(59,134,170,.88));border:1px solid rgba(255,255,255,.28);box-shadow:0 22px 55px rgba(42,101,136,.22)}.quote-card{background:linear-gradient(135deg,#274f68,#4e97bb)}.metric-card.accent{background:linear-gradient(145deg,#1c3b50,#3a7898)}.range-switch{background:rgba(255,255,255,.35);border-color:rgba(255,255,255,.7)}.range-switch button.active{background:#1e3c51}.donut:after{background:#eff8fd}.coach-dialog,.settings-dialog{background:rgba(250,253,255,.91);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.coach-visual{background:linear-gradient(160deg,#8ed2ef 0%,#3f8eb3 48%,#1c455e 100%)}.coach-chat{background:linear-gradient(150deg,rgba(255,255,255,.92),rgba(227,243,252,.88))}.message.bot{background:rgba(255,255,255,.82);box-shadow:0 8px 22px rgba(67,118,150,.09)}.message.user{background:#183a50}.setup-code code{background:#183245;color:#d7f0fd}.provider-chips{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.provider-chips span{padding:6px 9px;border-radius:99px;background:rgba(185,220,241,.42);color:#39657d;font-size:9px}.mobile-nav{display:none}
body.dark{--paper:#122331;--panel:rgba(23,45,59,.78);--ink:#edf7fd;--muted:#9cb2c0;--line:rgba(175,216,239,.14);--green:#b2e3f7;--green-2:rgba(121,181,211,.16);--amber:#72c4e8;background:linear-gradient(155deg,#122331,#183a4d 55%,#1b536d)}.dark .panel,.dark .metric-card{background:rgba(20,44,58,.72);border-color:rgba(184,225,245,.11)}.dark .topbar{background:rgba(16,36,49,.72)}.dark .coach-chat{background:linear-gradient(150deg,rgba(18,40,53,.97),rgba(24,59,77,.95))}.dark .donut:after{background:#183645}
@media(max-width:800px){body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.topbar{height:64px;padding-top:env(safe-area-inset-top);box-sizing:content-box}.brand small,.top-actions .text-button:not(.ai-status-button),.view-tabs{display:none}.shell{padding:27px 14px 32px}.hero{margin-bottom:22px}.hero h1{font-family:system-ui,"PingFang SC",sans-serif;font-size:36px;font-weight:760;line-height:1.08;max-width:320px}.hero .eyebrow{margin-bottom:9px}.hero-copy{display:block;font-size:12px;max-width:270px}.date-nav{background:rgba(255,255,255,.43);border-color:rgba(255,255,255,.75)}.dashboard{gap:14px}.schedule-panel{padding:18px;border-radius:26px;min-height:420px}.panel-heading h2{font-family:system-ui,"PingFang SC",sans-serif;font-size:21px}.task-item{background:rgba(255,255,255,.42);border:1px solid rgba(255,255,255,.65);border-radius:18px;margin:5px 0;padding:14px 11px;grid-template-columns:55px 1fr auto;box-shadow:0 9px 24px rgba(70,119,151,.07)}.task-list{gap:3px}.schedule-footer{border:0}.side-column{gap:14px}.panel{border-radius:26px}.digital-card{border-radius:24px}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:8;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));min-height:64px;background:rgba(235,247,255,.82);border:1px solid rgba(255,255,255,.86);box-shadow:0 16px 45px rgba(36,83,113,.22);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);border-radius:23px;padding:6px}.mobile-nav button{border:0;background:transparent;color:#6a8798;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:17px;font-size:9px}.mobile-nav button b{font-size:18px;font-weight:500;line-height:1}.mobile-nav button.active{background:rgba(255,255,255,.78);color:#193e54;box-shadow:0 7px 18px rgba(51,104,136,.12)}.insights-hero h1{font-family:system-ui,"PingFang SC",sans-serif;font-weight:760;line-height:1.1}.metric-card{border-radius:22px}.coach-dialog{margin:auto 10px;width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.coach-shell{max-height:calc(100dvh - 24px);overflow:auto}.coach-visual{padding-top:25px;border-radius:20px 20px 0 0}.settings-dialog{margin:auto 10px}.toast{bottom:calc(90px + env(safe-area-inset-bottom))}}
@media(min-width:801px){.schedule-panel{min-height:610px}.dashboard{grid-template-columns:minmax(0,1.85fr) minmax(300px,.82fr)}.hero{padding:18px 8px 0}.hero h1{font-size:58px}.digital-card{transition:transform .2s,box-shadow .2s}.digital-card:hover{transform:translateY(-3px);box-shadow:0 28px 65px rgba(42,101,136,.27)}}
