@import url('data:text/css,');

:root {
  --ink: #29243b;
  --muted: #797388;
  --subtle: #a7a2b2;
  --purple: #6d5bd0;
  --purple-dark: #4f3fb0;
  --purple-soft: #eeeaff;
  --peach: #f7b98e;
  --peach-soft: #fff0e7;
  --mint: #89c9b0;
  --blue-soft: #e8f2ff;
  --surface: #ffffff;
  --background: #f8f7fc;
  --line: #ece9f1;
  --danger: #bd4d63;
  --shadow: 0 14px 38px rgba(53, 43, 88, .10);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}

* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html { background: var(--background); color: var(--ink); font-family: Inter, ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body { margin: 0; min-height: 100vh; background: var(--background); }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid rgba(109,91,208,.25); outline-offset: 2px; }
.hidden { display: none !important; }

.splash { position: fixed; inset: 0; z-index: 100; display: grid; place-content: center; justify-items: center; gap: 16px; background: linear-gradient(155deg,#f9f7ff,#eeebff); color: var(--purple-dark); font-size: 25px; letter-spacing: -.6px; transition: opacity .25s; }
.brand-mark { width: 62px; height: 62px; position: relative; border-radius: 22px; background: var(--purple); box-shadow: 0 12px 25px rgba(85,67,180,.24); overflow: hidden; }
.brand-mark span:first-child { position: absolute; width: 34px; height: 34px; border-radius: 50%; background: white; left: 13px; top: 12px; }
.brand-mark span:nth-child(2) { position: absolute; width: 31px; height: 31px; border-radius: 50%; background: var(--purple); left: 23px; top: 7px; }
.brand-mark span:last-child { position:absolute; width:5px; height:5px; border-radius:50%; background:#ffd987; right:10px; top:12px; box-shadow:-6px 15px 0 1px rgba(255,217,135,.75); }
.brand-mark.small { width: 37px; height: 37px; border-radius: 13px; box-shadow: none; }
.brand-mark.small span:first-child { width:21px;height:21px;left:7px;top:7px}.brand-mark.small span:nth-child(2){width:19px;height:19px;left:13px;top:4px}.brand-mark.small span:last-child{width:3px;height:3px;right:5px;top:7px}

.auth-screen { min-height: 100vh; display: flex; align-items: end; justify-content: center; background: linear-gradient(170deg,#f0edff 0%,#faf9fd 58%); padding: 250px 18px 22px; position: relative; overflow: hidden; }
.auth-art { position: absolute; inset: 0 0 auto; height: 310px; background: radial-gradient(circle at 70% 15%,#fff 0 2px,transparent 3px),linear-gradient(160deg,#cac2f7,#ece9ff); overflow: hidden; }
.moon { position:absolute; width:96px;height:96px;border-radius:50%;background:#fff8dc;top:70px;left:50%;transform:translateX(-50%);box-shadow:0 0 48px rgba(255,244,194,.8)}
.moon:after { content:"";position:absolute;width:88px;height:88px;border-radius:50%;background:#d9d3fa;left:31px;top:-13px;}
.star { position:absolute;width:5px;height:5px;background:white;border-radius:50%;box-shadow:0 0 10px white}.s1{left:19%;top:68px}.s2{right:18%;top:122px;width:8px;height:8px}.s3{left:31%;top:178px;width:4px;height:4px}
.cloud { position:absolute;height:72px;width:230px;border-radius:60%;background:rgba(255,255,255,.45);filter:blur(1px)}.c1{left:-70px;bottom:5px}.c2{right:-90px;bottom:-4px;width:280px}
.auth-card { width:min(100%,480px); position:relative; z-index:2; border-radius:30px; background:rgba(255,255,255,.96); box-shadow:var(--shadow); padding:26px 24px 24px; }
.wordmark { display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;color:var(--purple-dark);margin-bottom:24px}
.eyebrow { margin:0 0 5px;text-transform:uppercase;letter-spacing:1.3px;color:var(--purple);font-weight:800;font-size:10px; }
.auth-card h1 { margin:0 0 25px;font-size:29px;line-height:1.12;letter-spacing:-1.1px; }
.auth-form, #profile-form, #entry-form { display:grid;gap:16px; }
label { display:grid;gap:7px;font-size:12px;font-weight:700;color:#625d70; }
input, textarea, select { width:100%;border:1px solid #ded9e9;border-radius:13px;padding:13px 14px;background:#fcfbfe;color:var(--ink);font-size:16px;appearance:none; }
select { background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:35px; }
textarea { resize:vertical; }
.form-row { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.form-hint { margin:-7px 1px 0;color:var(--muted);font-size:11px;line-height:1.45; }
.form-error { min-height:18px;color:var(--danger);font-size:12px;margin:12px 1px 0; }
.button { border:0;border-radius:14px;padding:13px 20px;font-weight:800;cursor:pointer;min-height:48px; }
.button.primary { color:white;background:linear-gradient(135deg,var(--purple),#5846bb);box-shadow:0 8px 20px rgba(97,78,195,.24); }
.button.secondary { color:var(--purple-dark);background:var(--purple-soft); }
.button.danger { color:var(--danger);background:#ffedf0; }
.button.wide { width:100%; }
.button.compact { min-height:38px;padding:8px 14px;font-size:12px; }

.app { max-width:760px;margin:auto;min-height:100vh;background:var(--background); }
.topbar { position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:calc(13px + env(safe-area-inset-top,0px)) 18px 12px;background:rgba(248,247,252,.9);backdrop-filter:blur(16px); }
.profile-switch { border:0;background:transparent;display:flex;align-items:center;gap:9px;padding:2px;cursor:pointer;text-align:left; }
.profile-switch .avatar { width:39px;height:39px;border-radius:14px;display:grid;place-content:center;color:white;font-weight:900;background:linear-gradient(140deg,var(--purple),#8b7de5);box-shadow:0 6px 14px rgba(86,68,180,.22); }
.profile-switch small { display:block;color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.8px; }
.profile-switch strong { display:block;font-size:14px;line-height:1.25; }
.profile-switch svg { width:17px;height:17px;fill:none;stroke:var(--muted);stroke-width:2; }
.top-actions { display:flex;align-items:center;gap:12px; }.sync-state{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:5px}.sync-state i{width:6px;height:6px;background:var(--mint);border-radius:50%}.sync-state.syncing i{background:#e1aa65;animation:pulse 1s infinite}.sync-state.offline i{background:var(--danger)}
.icon-button { width:39px;height:39px;border:0;background:white;border-radius:14px;box-shadow:0 4px 13px rgba(58,48,88,.08);display:grid;place-content:center;cursor:pointer; }.icon-button svg{width:20px;height:20px;fill:none;stroke:var(--purple);stroke-width:2}
main { padding:5px 16px calc(88px + var(--safe-bottom)); }
.page { display:none;animation:pageIn .22s ease; }.page.active{display:block}
.date-line { display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px;font-weight:700;margin:2px 3px 12px; }.date-line span:first-child{color:var(--ink);font-size:13px}

.forecast-card { border-radius:27px;padding:25px 21px;min-height:205px;color:white;background:linear-gradient(135deg,#6c5bd0 0%,#5745b7 58%,#443493 100%);box-shadow:0 16px 34px rgba(73,56,157,.26);position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center; }
.forecast-card:before,.forecast-card:after { content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:230px;height:230px;right:-105px;top:-115px }.forecast-card:after{width:165px;height:165px;right:-74px;top:-82px}
.forecast-copy { position:relative;z-index:2;max-width:61%; }.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:6px 9px;background:rgba(255,255,255,.14);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.65px}.status-pill i{width:6px;height:6px;border-radius:50%;background:#bde8d4;box-shadow:0 0 8px #bde8d4}.forecast-copy h2{font-size:39px;letter-spacing:-1.7px;margin:13px 0 2px;line-height:1}.forecast-copy>p{font-size:12px;color:rgba(255,255,255,.75);margin:7px 0 14px;line-height:1.4}.reason-row{display:flex;flex-wrap:wrap;gap:6px}.reason-chip{border:1px solid rgba(255,255,255,.18);padding:5px 8px;border-radius:99px;font-size:9px;color:rgba(255,255,255,.84)}
.sleep-orbit { width:118px;height:118px;position:relative;z-index:2;flex:0 0 auto; }.sleep-orbit svg{width:100%;height:100%;transform:rotate(-90deg)}.sleep-orbit circle{fill:none;stroke-width:6}.orbit-bg{stroke:rgba(255,255,255,.13)}.orbit-progress{stroke:#f8d390;stroke-linecap:round;stroke-dasharray:314.16;stroke-dashoffset:100;transition:stroke-dashoffset .5s}.sleep-orbit>div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.sleep-orbit strong{font-size:21px;letter-spacing:-.6px}.sleep-orbit small{font-size:8px;text-transform:uppercase;letter-spacing:.7px;color:rgba(255,255,255,.68)}

.tracker-card { margin-top:13px;background:white;border-radius:20px;padding:13px 13px 13px 15px;display:flex;align-items:center;gap:12px;box-shadow:0 7px 22px rgba(45,37,73,.07);border:1px solid rgba(235,231,243,.9); }
.tracker-icon { width:43px;height:43px;border-radius:15px;background:var(--purple-soft);position:relative;flex:none}.tracker-icon:before{content:"";position:absolute;width:21px;height:21px;background:var(--purple);border-radius:50%;left:10px;top:10px}.tracker-icon:after{content:"";position:absolute;width:19px;height:19px;background:var(--purple-soft);border-radius:50%;left:18px;top:6px}.tracker-copy{min-width:0;flex:1}.tracker-copy small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.5px}.tracker-copy strong{font-size:15px;display:block;margin-top:2px}.tracker-button{min-height:39px;padding:9px 14px;color:white;background:var(--purple);border-radius:12px;white-space:nowrap}.tracker-button:disabled{opacity:.55;cursor:wait}.tracker-card.running{background:#4e4394;color:white}.tracker-card.running .tracker-icon{background:rgba(255,255,255,.13)}.tracker-card.running .tracker-icon:before{background:#fff}.tracker-card.running .tracker-icon:after{background:#4e4394}.tracker-card.running small{color:rgba(255,255,255,.65)}.tracker-card.running .tracker-button{background:#fff;color:var(--purple-dark)}

.schedule-card{margin-top:13px;background:white;border:1px solid var(--line);border-radius:22px;padding:17px 15px;box-shadow:0 7px 22px rgba(45,37,73,.06)}.schedule-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.schedule-head small{display:block;color:var(--purple);font-size:8px;text-transform:uppercase;letter-spacing:.75px;font-weight:800}.schedule-head h3{margin:3px 0 0;font-size:17px;letter-spacing:-.35px}.schedule-head>span{font-size:8px;font-weight:800;color:var(--purple-dark);background:var(--purple-soft);padding:6px 8px;border-radius:99px;white-space:nowrap}.schedule-intro{margin:9px 0 13px;color:var(--muted);font-size:10px;line-height:1.5}.schedule-list{display:grid;gap:7px}.schedule-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:14px;background:#f8f7fb;border:1px solid transparent}.schedule-row.recommended{background:#f2efff;border-color:#dfd8fb}.schedule-row.running{background:#4e4394;color:white}.schedule-row.logged{opacity:.72}.schedule-dot{width:30px;height:30px;border-radius:11px;display:grid;place-content:center;background:white;color:var(--purple);font-size:11px;font-weight:900;box-shadow:0 2px 7px rgba(50,43,73,.06)}.schedule-row.running .schedule-dot{color:white;background:rgba(255,255,255,.15)}.schedule-copy strong{display:block;font-size:11px}.schedule-copy small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.schedule-row.running .schedule-copy small{color:rgba(255,255,255,.68)}.schedule-time{text-align:right}.schedule-time strong{display:block;font-size:11px}.schedule-time small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.schedule-row.running .schedule-time small{color:rgba(255,255,255,.68)}.schedule-actions{display:flex;align-items:center;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}.schedule-actions .button{flex:none}.schedule-actions small{color:var(--muted);font-size:8px;line-height:1.4}
.quick-plan{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-2px 0 13px;padding:8px 9px 8px 11px;background:#f7f5fb;border-radius:13px}.quick-plan>span{font-size:9px;color:var(--muted);font-weight:800}.quick-plan-options{display:flex;background:#ebe7f4;padding:3px;border-radius:10px}.quick-plan-options button{border:0;background:transparent;color:var(--muted);font-size:9px;font-weight:800;padding:6px 9px;border-radius:8px;cursor:pointer}.quick-plan-options button.active{background:white;color:var(--purple-dark);box-shadow:0 2px 6px rgba(50,43,73,.1)}.quick-plan-options button:disabled{opacity:.55;cursor:wait}

.ai-card{margin-top:13px;border-radius:21px;padding:15px;background:linear-gradient(145deg,#fffdf9,#f5f2ff);border:1px solid #e7e1fa;box-shadow:0 7px 22px rgba(45,37,73,.06)}.ai-card-head{display:flex;align-items:center;gap:10px}.ai-spark{width:38px;height:38px;display:grid;place-content:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,#9b87ef,#6251c5);box-shadow:0 5px 12px rgba(92,72,187,.22)}.ai-card-head>div{flex:1}.ai-card-head small{display:block;color:var(--purple);font-size:8px;text-transform:uppercase;letter-spacing:.7px;font-weight:800}.ai-card-head strong{display:block;font-size:13px;margin-top:2px}.ai-provider-badge{font-size:8px;font-weight:800;color:var(--muted);background:#efedf4;padding:6px 8px;border-radius:99px;max-width:95px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-empty{display:flex;gap:10px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid rgba(220,214,238,.7)}.ai-empty p{margin:0;flex:1;color:var(--muted);font-size:10px;line-height:1.45}.ai-button{min-height:37px;padding:8px 12px;border-radius:11px;background:var(--purple-soft);color:var(--purple-dark);font-size:9px}.ai-result{margin-top:12px;padding-top:12px;border-top:1px solid rgba(220,214,238,.7)}.ai-verdict{display:flex;justify-content:space-between;align-items:center}.ai-verdict span{font-size:8px;font-weight:800;color:#467d67;background:#e3f4ec;padding:5px 8px;border-radius:99px;text-transform:uppercase;letter-spacing:.5px}.ai-verdict strong{font-size:15px}.ai-result>p{margin:10px 0 8px;font-size:11px;line-height:1.5}.ai-reasons{display:flex;flex-wrap:wrap;gap:5px}.ai-reasons span{font-size:8px;color:var(--muted);background:white;border:1px solid var(--line);border-radius:99px;padding:5px 7px}.ai-result-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.ai-result-foot>span{font-size:8px;color:var(--subtle)}.ai-loading{display:flex;align-items:center;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(220,214,238,.7);font-size:10px;color:var(--muted)}.ai-loading i{width:17px;height:17px;border-radius:50%;border:2px solid #ddd6f7;border-top-color:var(--purple);animation:spin .7s linear infinite}.ai-symbol{background:linear-gradient(135deg,#eeeaff,#fff0e7);color:var(--purple)}

.section-block { margin-top:28px; }.section-heading{display:flex;justify-content:space-between;align-items:end;margin:0 2px 12px}.section-heading h3{margin:0;font-size:19px;letter-spacing:-.5px}.text-button{border:0;background:transparent;color:var(--purple);font-weight:800;font-size:11px;padding:5px;cursor:pointer}.metric-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}.metric{display:flex;align-items:center;gap:10px;background:white;border-radius:17px;padding:12px;box-shadow:0 4px 15px rgba(50,43,73,.05)}.metric-icon{width:35px;height:35px;border-radius:12px;display:grid;place-content:center;font-size:18px}.metric-icon.lavender{background:var(--purple-soft);color:var(--purple)}.metric-icon.peach{background:var(--peach-soft);color:#c8784a}.metric strong{display:block;font-size:13px}.metric small{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.timeline-card{background:white;border-radius:20px;padding:16px 14px 12px;box-shadow:0 4px 15px rgba(50,43,73,.05)}.timeline-labels{display:flex;justify-content:space-between;font-size:8px;color:var(--subtle);margin-bottom:8px}.timeline-track{height:30px;border-radius:10px;background:#f0edf7;position:relative;overflow:hidden}.sleep-block{position:absolute;top:0;height:100%;background:linear-gradient(90deg,#8273dc,#6655c6);border-left:1px solid rgba(255,255,255,.3);min-width:3px}.now-marker{position:absolute;width:2px;height:100%;background:#e78468;z-index:3;box-shadow:0 0 0 2px rgba(231,132,104,.15)}.timeline-legend{display:flex;gap:15px;margin-top:10px;font-size:8px;color:var(--muted)}.timeline-legend i{display:inline-block;width:7px;height:7px;border-radius:3px;margin-right:4px}.legend-sleep{background:var(--purple)}.legend-awake{background:#ece9f4}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quick-action{border:0;background:white;border-radius:17px;padding:12px 5px 10px;display:grid;gap:5px;justify-items:center;color:var(--muted);font-size:9px;font-weight:700;box-shadow:0 4px 15px rgba(50,43,73,.05);cursor:pointer}.quick-icon{width:36px;height:36px;border-radius:13px;display:grid;place-content:center;font-size:18px;font-weight:700}.quick-icon.feed{background:#fff0e8;color:#d67d4c}.quick-icon.diaper{background:#e8f4ff;color:#5489b7}.quick-icon.solids{background:#eaf7ee;color:#5f9d71}.quick-icon.meds{background:#ffedf1;color:#bd5970}

.page-title { display:flex;justify-content:space-between;align-items:center;margin:18px 2px 18px}.page-title h1{font-size:27px;letter-spacing:-1px;margin:0}.range-pill{font-size:9px;color:var(--purple);font-weight:800;background:var(--purple-soft);padding:7px 10px;border-radius:99px}.date-picker{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;background:white;border-radius:16px;margin-bottom:12px;box-shadow:0 4px 14px rgba(50,43,73,.05)}.date-picker button{border:0;background:transparent;padding:12px;font-weight:800;cursor:pointer}.date-picker button:first-child,.date-picker button:last-child{font-size:23px;color:var(--purple)}.day-summary{display:flex;gap:7px;margin-bottom:13px;overflow:auto;scrollbar-width:none}.summary-chip{background:var(--purple-soft);color:var(--purple-dark);border-radius:99px;padding:7px 10px;font-size:9px;font-weight:800;white-space:nowrap}.entry-list{display:grid;gap:9px}.entry-card{background:white;border-radius:17px;padding:13px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;border:1px solid var(--line);cursor:pointer}.entry-type{width:42px;height:42px;border-radius:14px;display:grid;place-content:center;background:var(--purple-soft);color:var(--purple);font-size:18px}.entry-card[data-kind=feed] .entry-type{background:#fff0e8;color:#d67d4c}.entry-card[data-kind=diaper] .entry-type{background:#e8f4ff;color:#5489b7}.entry-card[data-kind=solids] .entry-type{background:#eaf7ee;color:#5f9d71}.entry-card[data-kind=meds] .entry-type{background:#ffedf1;color:#bd5970}.entry-main strong{display:block;font-size:13px;text-transform:capitalize}.entry-main small{display:block;color:var(--muted);font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.entry-duration{text-align:right}.entry-duration strong{font-size:12px;display:block}.entry-duration small{font-size:9px;color:var(--muted)}.empty-state{padding:50px 25px;text-align:center;color:var(--muted);background:white;border:1px dashed #ddd8e6;border-radius:20px}.empty-state span{font-size:34px;display:block;margin-bottom:10px}.empty-state strong{display:block;color:var(--ink);margin-bottom:4px}

.report-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:#e9e5f1;border-radius:15px;padding:4px;margin:-4px 0 15px;position:sticky;top:67px;z-index:8}.report-tabs button{border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800;padding:9px 3px;border-radius:11px;cursor:pointer}.report-tabs button.active{background:white;color:var(--purple-dark);box-shadow:0 2px 9px rgba(45,36,75,.1)}.report-view{display:none}.report-view.active{display:block;animation:pageIn .2s ease}.report-section-head{display:flex;justify-content:space-between;align-items:center;margin:4px 2px 12px}.report-section-head small{display:block;color:var(--purple);font-size:8px;text-transform:uppercase;letter-spacing:.7px;font-weight:800}.report-section-head strong{display:block;font-size:17px;margin-top:3px}.report-section-head>span{font-size:8px;color:var(--muted);background:white;border-radius:99px;padding:6px 8px}.report-list{display:grid;gap:9px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.summary-grid>div{min-height:92px;background:white;border-radius:18px;padding:15px;box-shadow:0 4px 15px rgba(50,43,73,.05);display:flex;flex-direction:column;justify-content:space-between}.summary-grid small{color:var(--muted);font-size:9px}.summary-grid strong{font-size:19px;letter-spacing:-.45px}.plan-intro{display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,#6657c8,#8475dd);color:white;border-radius:21px;padding:16px;margin-bottom:12px;box-shadow:0 9px 25px rgba(77,61,158,.18)}.plan-intro>span{width:43px;height:43px;border-radius:15px;display:grid;place-content:center;background:rgba(255,255,255,.16);font-size:23px}.plan-intro strong{font-size:13px}.plan-intro p{margin:4px 0 0;color:rgba(255,255,255,.76);font-size:9px;line-height:1.45}.plan-settings-row{border-radius:17px!important;margin-top:12px}.page[data-page=sleep-plans] .schedule-card{margin-top:0}.page[data-page=insights] #ai-card{margin-bottom:12px}

.trend-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:-5px 0 12px}.trend-controls label{background:white;border:1px solid var(--line);border-radius:14px;padding:8px 10px}.trend-controls label span{display:block;font-size:8px;color:var(--muted);font-weight:800;margin-bottom:3px}.trend-controls select{width:100%;border:0;background:transparent;color:var(--ink);font:inherit;font-size:11px;font-weight:800;padding:0;outline:0}.insight-card{display:flex;gap:12px;background:linear-gradient(135deg,#eeeaff,#f8f5ff);border-radius:20px;padding:16px;margin-bottom:12px;border:1px solid #e3ddfb}.sparkle{width:38px;height:38px;border-radius:13px;background:white;display:grid;place-content:center;color:var(--purple);flex:none}.insight-copy{min-width:0;flex:1}.insight-card small{font-size:9px;text-transform:uppercase;color:var(--purple);letter-spacing:.6px;font-weight:800}.insight-card p{font-size:12px;line-height:1.45;margin:4px 0 0}.app-insight-list{display:grid;gap:6px;margin-top:10px}.app-insight-list div{font-size:9px;line-height:1.4;color:var(--muted);background:rgba(255,255,255,.66);border-radius:10px;padding:7px 8px}.app-insight-list strong{color:var(--ink)}.chart-card{background:white;border-radius:21px;padding:17px 15px;margin-top:11px;box-shadow:0 4px 15px rgba(50,43,73,.05)}.chart-head{display:flex;justify-content:space-between;align-items:start}.chart-head small{display:block;color:var(--muted);font-size:9px}.chart-head strong{font-size:20px;display:block;margin-top:2px}.chart-head>span{font-size:9px;color:var(--muted);background:#f5f3f8;padding:6px 8px;border-radius:99px}.chart-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;margin:0 -2px;padding:0 2px}.bar-chart{height:175px;display:flex;gap:9px;align-items:end;padding-top:25px}.bar-column{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:6px;min-width:22px}.bar{width:100%;max-width:34px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#8b7de3,#6554c5);min-height:3px;position:relative}.bar span{position:absolute;top:-16px;left:50%;transform:translateX(-50%);font-size:7px;color:var(--muted);white-space:nowrap}.bar-column>span{font-size:8px;color:var(--muted)}.wake-window-list{display:grid;gap:12px;margin-top:18px}.wake-row{display:grid;grid-template-columns:54px 1fr 50px;gap:10px;align-items:center;font-size:10px}.wake-row strong{font-size:10px}.wake-track{height:8px;background:#efedf4;border-radius:99px;overflow:hidden}.wake-fill{height:100%;background:linear-gradient(90deg,var(--peach),var(--purple));border-radius:99px}.wake-row>span{text-align:right;color:var(--muted)}.trends-ai-card{margin-bottom:8px}.ai-preset-intro{font-size:10px;line-height:1.45;color:var(--muted);margin:12px 0 9px}.ai-preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ai-preset-grid button{border:1px solid #ddd7f4;background:white;color:var(--purple-dark);font-size:9px;font-weight:800;border-radius:11px;padding:9px;cursor:pointer}.ai-preset-grid button:disabled{opacity:.5;cursor:wait}.trend-ai-empty,.trend-ai-result{margin-top:10px;padding-top:10px;border-top:1px solid rgba(220,214,238,.7);font-size:9px;color:var(--muted);line-height:1.45}.trend-ai-result strong{font-size:10px;color:var(--ink)}.trend-ai-result p{font-size:11px;color:var(--ink);margin:4px 0 5px;line-height:1.45}.trend-ai-result small{font-size:8px;color:var(--subtle)}

.settings-group{margin:0 0 24px}.settings-group>h3{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:0 4px 8px}.settings-row{position:relative;width:100%;border:0;border-bottom:1px solid var(--line);background:white;padding:13px;display:grid;grid-template-columns:39px 1fr auto;gap:11px;align-items:center;text-align:left;cursor:pointer}.settings-row:first-of-type{border-radius:17px 17px 0 0}.settings-row:last-of-type{border-radius:0 0 17px 17px;border-bottom:0}.settings-row:only-child{border-radius:17px}.settings-symbol{width:37px;height:37px;border-radius:13px;background:var(--purple-soft);color:var(--purple);display:grid;place-content:center;font-weight:800}.settings-row strong{font-size:12px;display:block}.settings-row small{font-size:9px;color:var(--muted);display:block;margin-top:3px}.settings-row b{color:var(--subtle);font-size:20px}.file-row input{position:absolute;inset:0;opacity:0;cursor:pointer}.profile-list{display:grid;gap:8px;margin-bottom:8px}.profile-item{display:flex;align-items:center;gap:11px;background:white;border-radius:17px;padding:12px;border:1px solid var(--line)}.profile-item .avatar{width:41px;height:41px;border-radius:14px;background:var(--purple);color:white;display:grid;place-content:center;font-weight:900}.profile-item>div{flex:1}.profile-item strong{font-size:13px;display:block}.profile-item small{font-size:9px;color:var(--muted)}.profile-item button{border:0;background:var(--purple-soft);color:var(--purple);font-size:10px;font-weight:800;border-radius:10px;padding:8px 10px;cursor:pointer}.profile-item.active{border-color:#c9c0ef;box-shadow:0 4px 15px rgba(80,63,170,.08)}.privacy-note{text-align:center;font-size:9px;color:var(--muted);line-height:1.6;padding:4px 24px}.widget-note{font-size:8px;line-height:1.5;color:var(--muted);margin:9px 5px 0}

.bottom-nav { position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:25;width:min(100%,760px);height:calc(67px + var(--safe-bottom));padding:7px 7px var(--safe-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.95);backdrop-filter:blur(18px);border-top:1px solid rgba(229,226,236,.9); }
.bottom-nav button { position:relative;border:0;background:transparent;color:#9993a5;display:grid;justify-items:center;align-content:center;gap:2px;font-size:7px;font-weight:800;cursor:pointer;white-space:nowrap}.bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bottom-nav button.active{color:var(--purple)}.bottom-nav button.active:before{content:"";position:absolute;width:26px;height:3px;border-radius:0 0 4px 4px;background:var(--purple);top:-7px}

dialog { border:0;padding:0;color:var(--ink); }
dialog::backdrop{background:rgba(30,25,45,.45);backdrop-filter:blur(3px)}
.sheet{width:min(100% - 16px,560px);max-height:90vh;margin:auto auto 0;border-radius:28px 28px 0 0;background:white;padding:10px 20px calc(25px + var(--safe-bottom));box-shadow:0 -15px 45px rgba(35,28,60,.18);overflow:auto}.sheet[open]{animation:sheetUp .25s ease}.sheet-handle{width:38px;height:4px;border-radius:99px;background:#ddd9e4;margin:0 auto 14px}.sheet-title{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.sheet-title h2{font-size:22px;letter-spacing:-.6px;margin:0}.close-button{width:34px;height:34px;border:0;border-radius:12px;background:#f3f1f6;color:var(--muted);font-size:23px;line-height:1;cursor:pointer}.activity-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.activity-tabs button{border:1px solid var(--line);background:white;border-radius:13px;padding:9px 2px;color:var(--muted);font-size:16px;cursor:pointer}.activity-tabs button span{display:block;font-size:7px;margin-top:3px;font-weight:800}.activity-tabs button.active{background:var(--purple-soft);border-color:#c9c0ef;color:var(--purple)}.optional{font-weight:500;color:var(--subtle)}.sheet-actions{display:flex;justify-content:flex-end;gap:8px}.sheet-actions .primary{flex:1}.toggle-row{display:flex;align-items:center;justify-content:space-between;background:#f8f7fb;padding:12px;border-radius:14px}.toggle-row span strong{display:block;color:var(--ink);font-size:12px}.toggle-row span small{display:block;color:var(--muted);font-weight:500;margin-top:2px}.toggle-row input{display:none}.toggle-row i{width:44px;height:26px;background:#ccc7d3;border-radius:99px;position:relative;transition:.2s}.toggle-row i:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:white;border-radius:50%;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:.2s}.toggle-row input:checked+i{background:var(--purple)}.toggle-row input:checked+i:after{transform:translateX(18px)}fieldset{border:0;padding:0;margin:0}legend{font-size:12px;font-weight:700;color:#625d70;margin-bottom:7px}.segment-control{display:grid;grid-template-columns:repeat(3,1fr);background:#f0edf5;padding:4px;border-radius:14px}.segment-control input{display:none}.segment-control span{display:block;text-align:center;padding:9px;border-radius:10px;font-size:11px}.segment-control input:checked+span{background:white;color:var(--purple);box-shadow:0 2px 7px rgba(49,39,77,.1)}.picker-sheet .profile-item{cursor:pointer}.picker-sheet>.button{margin-top:14px}
.privacy-banner{display:flex;gap:9px;background:#eef7f2;border:1px solid #d8eee3;border-radius:14px;padding:11px;color:#477760}.privacy-banner span{font-size:15px}.privacy-banner p{margin:0;font-size:9px;line-height:1.5}.provider-link{display:block;color:var(--purple);font-size:10px;font-weight:800;text-decoration:none;text-align:center;padding:2px}.provider-link:hover{text-decoration:underline}
.form-section-label{margin:16px 2px 8px;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.8px}.ai-connections{display:grid;gap:7px;margin-top:12px}.ai-connection{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px;background:#f7f5fb;border:1px solid var(--line);border-radius:14px;padding:10px}.ai-connection.active{background:#f0edff;border-color:#d2caf5}.ai-connection-copy strong{display:block;font-size:11px}.ai-connection-copy small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.ai-connection-actions{display:flex;gap:5px}.ai-connection-actions button{border:0;border-radius:9px;padding:6px 8px;font-size:8px;font-weight:900;cursor:pointer;background:white;color:var(--purple)}.ai-connection-actions button.remove{color:var(--danger)}.ai-connection.active .use{background:var(--purple);color:white}.ai-connected-count{font-size:8px;color:var(--purple);font-weight:900;background:white;border-radius:99px;padding:4px 6px;margin-left:4px}
.toast{position:fixed;z-index:100;left:50%;bottom:calc(82px + var(--safe-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#2f2940;color:white;border-radius:13px;padding:11px 16px;font-size:11px;font-weight:700;box-shadow:var(--shadow);transition:.22s;white-space:nowrap;max-width:calc(100% - 30px);overflow:hidden;text-overflow:ellipsis}.toast.show{opacity:1;transform:translate(-50%,0)}

@keyframes pageIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes sheetUp{from{transform:translateY(35px);opacity:.5}to{transform:none;opacity:1}}@keyframes pulse{50%{opacity:.35}}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:650px){body{background:#efedf5}.app{box-shadow:0 0 40px rgba(42,34,67,.08)}main{padding-left:24px;padding-right:24px}.forecast-card{padding-left:29px}.quick-grid{gap:12px}.sheet{margin:auto;border-radius:28px;padding-bottom:25px}.auth-screen{align-items:center;padding:25px}.auth-art{height:100%;width:50%;right:auto}.auth-card{margin-left:min(45vw,500px)}}
@media(max-width:370px){.forecast-card{padding:20px 16px}.forecast-copy h2{font-size:33px}.sleep-orbit{width:102px;height:102px}.quick-grid{gap:5px}.metric{padding:10px 8px;gap:7px}.metric-icon{width:32px;height:32px}.form-row{grid-template-columns:1fr}.schedule-actions{align-items:flex-start;flex-direction:column}.tracker-button{padding-left:10px;padding-right:10px}.quick-plan{align-items:flex-start;flex-direction:column}.quick-plan-options{width:100%}.quick-plan-options button{flex:1}.trend-controls{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
