:root{color-scheme:light;--bg:#f5f6f3;--surface:#fff;--surface2:#f0f2ee;--ink:#202720;--muted:#788078;--line:#e3e7e0;--accent:#416c55;--accent-soft:#e6efe8;--blue:#526c9d;--blue-soft:#edf1fa;--amber:#986a30;--amber-soft:#f7efe1;--red:#a34d4d;--red-soft:#faeded;--shadow:0 12px 36px #17261b0a;--nav:#ffffffed;--radius:20px}html[data-theme=dark]{color-scheme:dark;--bg:#151a17;--surface:#1e2520;--surface2:#28302a;--ink:#eff2ed;--muted:#a1aaa2;--line:#343e36;--accent:#a5c8af;--accent-soft:#293b30;--blue:#a9bce9;--blue-soft:#283248;--amber:#e0bb82;--amber-soft:#3c3123;--red:#e5a3a3;--red-soft:#3c2828;--shadow:0 12px 36px #0002;--nav:#1e2520ed}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.01em}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8eaf9a;outline-offset:2px}a{color:inherit;text-decoration:none}.app{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:25px 16px 18px;border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:26px}.brand{display:flex;gap:11px;align-items:center;padding:0 10px}.brandmark{height:38px;width:38px;border-radius:13px;background:var(--accent);display:grid;place-items:center;color:white;font-size:19px;font-weight:700}.brand strong{font-size:17px;letter-spacing:-.5px;display:block}.brand small{color:var(--muted);font-size:11px}.navgroup{display:grid;gap:5px}.navlabel{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:var(--muted);padding:0 12px 7px;font-weight:700}.navbtn{border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:12px;display:flex;align-items:center;gap:12px;text-align:left;width:100%;font-weight:550;transition:.18s}.navbtn .ico{width:19px;text-align:center;font-size:17px}.navbtn:hover{background:var(--surface2);color:var(--ink)}.navbtn.active{background:var(--accent-soft);color:var(--accent);font-weight:700}.navbottom{margin-top:auto;display:grid;gap:12px}.profile{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding:15px 8px 0}.avatar{height:36px;width:36px;border-radius:50%;background:linear-gradient(145deg,#d7e3d6,#efdfca);color:#45624c;display:grid;place-items:center;font-weight:750}.profile strong{font-size:12px;display:block}.profile small{font-size:11px;color:var(--muted)}.main{min-width:0}.topbar{height:74px;padding:0 clamp(18px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);background:var(--nav);backdrop-filter:blur(18px);position:sticky;top:0;z-index:5}.crumb{font-size:12px;color:var(--muted)}.crumb b{color:var(--ink);font-weight:650}.topactions{display:flex;align-items:center;gap:9px}.iconbtn,.ghostbtn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;height:38px;min-width:38px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.iconbtn:hover,.ghostbtn:hover{background:var(--surface2)}.primary{background:var(--accent);border:1px solid var(--accent);color:white;border-radius:12px;padding:10px 15px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary:hover{filter:brightness(.96)}.secondary{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:12px;padding:9px 13px;font-weight:600}.content{max-width:1500px;margin:auto;padding:32px clamp(18px,4vw,48px) 70px}.page{display:none;animation:fade .2s ease}.page.active{display:block}@keyframes fade{from{opacity:.45;transform:translateY(3px)}to{opacity:1;transform:none}}.eyebrow{font-size:11px;color:var(--accent);font-weight:750;text-transform:uppercase;letter-spacing:1.35px}.pagehead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.pagehead h1{font-size:clamp(27px,3.4vw,39px);line-height:1.12;letter-spacing:-1.4px;margin:7px 0 9px;font-weight:750}.pagehead p{color:var(--muted);margin:0;max-width:600px}.datepill{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--muted);white-space:nowrap}.grid{display:grid;gap:16px}.hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.85fr)}.twocol{grid-template-columns:repeat(2,minmax(0,1fr))}.threecol{grid-template-columns:repeat(3,minmax(0,1fr))}.fourcol{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:21px;box-shadow:var(--shadow);min-width:0}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.cardhead h2,.cardhead h3{font-size:15px;letter-spacing:-.3px;margin:0;font-weight:720}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.greeting{background:linear-gradient(125deg,var(--surface),var(--accent-soft));position:relative;overflow:hidden;min-height:230px}.greeting:after{content:"";position:absolute;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:50%;right:-55px;top:-80px;box-shadow:0 0 0 28px color-mix(in srgb,var(--accent) 4%,transparent),0 0 0 58px color-mix(in srgb,var(--accent) 3%,transparent)}.greeting .inner{position:relative;z-index:1;max-width:540px}.greeting h2{font-size:27px;line-height:1.22;letter-spacing:-.9px;margin:11px 0 9px}.greeting p{color:var(--muted);max-width:440px;margin:0 0 18px}.greeting .primary{margin-top:4px}.ai-mark{display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.6px}.dot{height:7px;width:7px;background:#70a17b;border-radius:50%;display:inline-block}.briefing{display:flex;flex-direction:column;gap:12px}.briefing-item{display:flex;gap:11px;align-items:flex-start}.brief-icon{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:11px;background:var(--surface2);font-size:16px}.briefing-item strong{display:block;font-size:12px;margin-bottom:3px}.briefing-item p{font-size:12px;color:var(--muted);margin:0;line-height:1.45}.metrics{margin-top:16px}.metric{padding:18px}.metric-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;gap:8px}.metric-icon{width:29px;height:29px;border-radius:10px;background:var(--surface2);display:grid;place-items:center}.metric-num{font-size:27px;letter-spacing:-1px;font-weight:760;margin:12px 0 2px}.metric-foot{font-size:11px;color:var(--muted)}.up{color:var(--accent)}.down{color:var(--red)}.section{margin-top:23px}.sectiontitle{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 13px}.sectiontitle h2{font-size:17px;letter-spacing:-.5px;margin:0}.textbtn{border:0;background:none;color:var(--accent);font-weight:700;font-size:12px;padding:5px}.tasklist{display:grid;gap:0}.taskrow{display:flex;align-items:flex-start;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.taskrow:last-child{border-bottom:0;padding-bottom:0}.check{height:19px;width:19px;border-radius:6px;border:1.5px solid #b8c1b8;background:transparent;flex:none;display:grid;place-items:center;color:white;margin-top:1px}.check.checked{background:var(--accent);border-color:var(--accent)}.taskbody{flex:1;min-width:0}.taskbody strong{font-size:13px;display:block;font-weight:650}.taskbody .meta{font-size:11px;color:var(--muted);margin-top:4px;display:flex;gap:7px;flex-wrap:wrap}.taskrow.done .taskbody strong{text-decoration:line-through;color:var(--muted)}.tag{display:inline-flex;align-items:center;gap:4px;border-radius:7px;padding:4px 7px;font-size:10px;font-weight:700;background:var(--surface2);color:var(--muted);white-space:nowrap}.tag.green{background:var(--accent-soft);color:var(--accent)}.tag.amber{background:var(--amber-soft);color:var(--amber)}.tag.blue{background:var(--blue-soft);color:var(--blue)}.tag.red{background:var(--red-soft);color:var(--red)}.progressline{height:6px;background:var(--surface2);border-radius:999px;overflow:hidden;margin-top:9px}.progressline span{display:block;height:100%;background:var(--accent);border-radius:999px}.habitgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.habit{border:1px solid var(--line);border-radius:14px;padding:12px}.habit .habitemoji{font-size:19px}.habit strong{display:block;font-size:12px;margin:7px 0 2px}.habit small{color:var(--muted);font-size:10px}.streak{color:var(--amber);font-weight:700;font-size:11px}.capture{display:flex;gap:9px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:9px;margin-top:16px}.capture input{min-width:0;flex:1;border:0;outline:none;background:transparent;color:var(--ink);padding:7px}.capture .captureplus{border:0;background:var(--surface2);border-radius:10px;width:35px;height:35px;color:var(--ink)}.capture .primary{padding:9px 13px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:6px;margin-bottom:12px}.field label{font-size:12px;color:var(--muted);font-weight:650}.field input,.field select,.field textarea{width:100%;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:10px 11px;color:var(--ink)}.field textarea{min-height:76px;resize:vertical}.span2{grid-column:1/-1}.formactions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.accountgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.accountcard{border:1px solid var(--line);border-radius:15px;padding:14px;background:var(--surface)}.accountcard strong{display:block;font-size:13px}.accountcard .acctbalance{font-size:20px;font-weight:760;letter-spacing:-.6px;margin:10px 0 3px}.assetrow{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.assetrow:last-child{border-bottom:0}.assetemoji{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--surface2);font-size:20px;flex:none}.assetbody{flex:1;min-width:0}.assetbody strong{display:block}.assetbody small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.rowactions{display:flex;gap:6px;flex-wrap:wrap}.rowactions button{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:6px 8px;color:var(--ink);font-size:11px}.omni{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:linear-gradient(135deg,var(--surface),var(--accent-soft));border-radius:20px;padding:17px;margin:16px 0 20px}.omnihead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px}.omnihead strong{font-size:14px}.omni textarea{display:block;width:100%;min-height:58px;resize:vertical;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface);color:var(--ink);outline:none}.omni-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}.omni-result{font-size:12px;color:var(--muted);margin-top:10px;white-space:pre-wrap}.chiprow{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.chiprow button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:11px}.timeline{display:grid;gap:15px}.timelineitem{display:grid;grid-template-columns:48px 15px 1fr;gap:8px;align-items:start}.timelineitem time{font-size:11px;color:var(--muted);padding-top:2px}.timeline-dot{height:9px;width:9px;border-radius:50%;background:var(--accent);margin-top:6px;position:relative}.timeline-dot:after{content:"";position:absolute;top:12px;left:4px;height:30px;width:1px;background:var(--line)}.timelineitem:last-child .timeline-dot:after{display:none}.timelineitem strong{font-size:12px;display:block}.timelineitem p{font-size:11px;color:var(--muted);margin:3px 0 0}.chart{height:150px;width:100%;display:block}.chartlabels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:4px}.balance{font-size:30px;font-weight:760;letter-spacing:-1.1px;margin:8px 0 3px}.moneyrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.moneyrow:last-child{border-bottom:0}.money-left{display:flex;gap:10px;align-items:center}.moneyico{height:35px;width:35px;border-radius:11px;display:grid;place-items:center;background:var(--surface2)}.money-left strong{font-size:12px;display:block}.money-left small{font-size:10px;color:var(--muted)}.moneyval{font-size:12px;font-weight:700;white-space:nowrap}.moneyval.negative{color:var(--red)}.moneyval.positive{color:var(--accent)}.goalcard{padding:18px}.goalhead{display:flex;gap:10px;align-items:center}.goalicon{height:40px;width:40px;border-radius:13px;background:var(--accent-soft);display:grid;place-items:center;font-size:19px}.goalhead strong{font-size:13px;display:block}.goalhead small{font-size:11px;color:var(--muted)}.goalpercent{display:flex;justify-content:space-between;margin-top:18px;font-size:11px}.goalpercent strong{font-size:13px}.searchbox{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:0 12px;height:40px;min-width:210px}.searchbox input{border:0;background:transparent;outline:0;color:var(--ink);width:100%;min-width:0}.filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.filter{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:7px 12px;font-size:11px}.filter.active{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent);font-weight:700}.tasktools{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.task-list-card{padding:6px 20px}.task-list-card .taskrow{padding:16px 0}.priority{font-size:10px;color:var(--muted);white-space:nowrap}.chatlayout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:16px;align-items:start}.chatcard{padding:0;overflow:hidden;min-height:590px;display:flex;flex-direction:column}.chathead{padding:18px 21px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.aiidentity{display:flex;gap:10px;align-items:center}.aiavatar{height:39px;width:39px;border-radius:14px;background:linear-gradient(135deg,#dcebe0,#f0e3cf);color:#416c55;display:grid;place-items:center;font-size:19px}.aiidentity strong{font-size:13px;display:block}.aiidentity small{font-size:11px;color:var(--muted)}.chatmessages{padding:22px;display:flex;flex-direction:column;gap:15px;flex:1;min-height:380px;max-height:560px;overflow:auto}.msg{max-width:85%;display:flex;flex-direction:column;gap:5px}.msg.user{align-self:flex-end;align-items:flex-end}.bubble{padding:12px 14px;border-radius:16px;background:var(--surface2);font-size:13px;line-height:1.55}.msg.user .bubble{background:var(--accent);color:white;border-bottom-right-radius:5px}.msg:not(.user) .bubble{border-bottom-left-radius:5px}.msg time{font-size:10px;color:var(--muted)}.suggestions{display:flex;gap:7px;flex-wrap:wrap;padding:0 20px 12px}.suggestion{font-size:11px;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted)}.chatcomposer{display:flex;gap:8px;padding:14px;border-top:1px solid var(--line);align-items:flex-end}.chatcomposer textarea{resize:vertical;max-height:100px;min-height:43px;flex:1;border:1px solid var(--line);border-radius:13px;background:var(--surface2);color:var(--ink);padding:11px;outline:0}.chatcomposer button{height:43px}.sideinfo{display:grid;gap:14px}.insight{display:flex;gap:10px;align-items:flex-start}.insight .brief-icon{width:31px;height:31px}.insight strong{font-size:12px;display:block}.insight p{font-size:11px;color:var(--muted);margin:3px 0 0}.switchrow{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.switchrow:last-child{border-bottom:0}.switchrow strong{font-size:12px;display:block}.switchrow small{font-size:11px;color:var(--muted);display:block;margin-top:3px;max-width:360px}.switch{width:40px;height:23px;position:relative;flex:none}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;border-radius:99px;background:#c8cec8;transition:.2s;cursor:pointer}.slider:before{content:"";position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:white;transition:.2s;box-shadow:0 1px 4px #0002}.switch input:checked+.slider{background:var(--accent)}.switch input:checked+.slider:before{transform:translateX(17px)}.memoryitem{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;gap:12px;align-items:flex-start}.memoryitem .memicon{height:34px;width:34px;flex:none;border-radius:11px;background:var(--surface2);display:grid;place-items:center}.memoryitem strong{font-size:12px;display:block}.memoryitem p{font-size:11px;color:var(--muted);margin:4px 0 8px}.memoryitem .memfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.memoryitem button{font-size:10px;border:0;background:none;color:var(--accent);font-weight:700;padding:0}.approval{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid color-mix(in srgb,var(--amber) 38%,var(--line));background:var(--amber-soft);border-radius:15px}.approval strong{font-size:12px;display:block}.approval p{font-size:11px;color:var(--muted);margin:4px 0 11px}.approval-actions{display:flex;gap:7px}.approval-actions button{font-size:11px;padding:7px 10px;border-radius:9px}.empty{padding:32px 12px;text-align:center;color:var(--muted);font-size:12px}.modalback{position:fixed;inset:0;background:#10181066;backdrop-filter:blur(5px);z-index:20;display:none;align-items:center;justify-content:center;padding:18px}.modalback.open{display:flex}.modal{width:min(500px,100%);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 25px 80px #0003}.modal h2{font-size:21px;margin:0 0 5px;letter-spacing:-.6px}.modal p{font-size:12px;color:var(--muted);margin:0 0 18px}.field{display:grid;gap:6px;margin:13px 0}.field label{font-size:11px;color:var(--muted);font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:11px;padding:11px;outline:0}.field textarea{min-height:85px;resize:vertical}.modalactions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:30;background:var(--ink);color:var(--surface);padding:11px 16px;border-radius:12px;font-size:12px;box-shadow:var(--shadow);transition:.25s;max-width:calc(100vw - 30px)}.toast.show{opacity:1;transform:translate(-50%,0)}.mobile-nav{display:none}.mobile-menu{display:none}.divider{height:1px;background:var(--line);margin:17px 0}.ringrow{display:flex;align-items:center;gap:17px}.ring{width:100px;height:100px;border-radius:50%;background:conic-gradient(var(--accent) 0 72%,var(--surface2) 72% 100%);display:grid;place-items:center;flex:none;position:relative}.ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--surface)}.ring span{position:relative;font-size:22px;font-weight:750;letter-spacing:-1px}.ringcopy strong{font-size:13px;display:block}.ringcopy p{font-size:11px;color:var(--muted);margin:5px 0 0}.weekbars{height:90px;display:flex;align-items:flex-end;justify-content:space-between;gap:9px;padding-top:8px}.weekbar{flex:1;display:flex;align-items:center;flex-direction:column;gap:6px;height:100%;justify-content:flex-end}.weekbar span{display:block;width:min(25px,100%);border-radius:6px 6px 2px 2px;background:var(--accent);opacity:.78;min-height:5px}.weekbar small{font-size:10px;color:var(--muted)}.note{border-left:3px solid var(--accent);padding:9px 12px;background:var(--accent-soft);border-radius:0 10px 10px 0;font-size:12px;color:var(--muted)}.note strong{color:var(--ink)}.modulegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.module{padding:16px;border:1px solid var(--line);border-radius:15px;background:var(--surface);text-align:left;color:var(--ink);transition:.15s}.module:hover{border-color:var(--accent);transform:translateY(-1px)}.module .moduleico{font-size:21px;margin-bottom:12px}.module strong{font-size:12px;display:block}.module small{font-size:10px;color:var(--muted);display:block;margin-top:4px}.footnote{font-size:11px;color:var(--muted);line-height:1.55;margin-top:17px}.mobile-only{display:none}
@media(max-width:1100px){.fourcol{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)}.chatlayout{grid-template-columns:minmax(0,1fr) 235px}.sidebar{width:215px}.app{grid-template-columns:215px minmax(0,1fr)}}
@media(max-width:820px){.app{display:block}.sidebar{display:none}.topbar{height:62px;padding:0 17px}.mobile-menu{display:inline-flex}.content{padding:24px 16px 100px}.pagehead{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:19px}.pagehead h1{font-size:30px}.hero-grid,.twocol,.chatlayout{grid-template-columns:1fr}.chatlayout .sideinfo{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;z-index:10;bottom:0;left:0;right:0;background:var(--nav);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:7px 8px calc(7px + env(safe-area-inset-bottom));gap:3px}.mobile-nav .navbtn{padding:7px 2px;display:flex;flex-direction:column;gap:3px;justify-content:center;text-align:center;font-size:9px;border-radius:10px}.mobile-nav .navbtn .ico{font-size:17px;width:auto}.topactions .quicklabel{display:none}.mobile-only{display:block}.desktop-only{display:none}.modulegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.fourcol{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{padding:14px}.metric-num{font-size:23px}.card{padding:17px;border-radius:17px}.greeting{padding:19px}.greeting h2{font-size:25px}.habitgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.habit{padding:9px}.habit strong{font-size:10px}.chatlayout .sideinfo{grid-template-columns:1fr}.topbar .crumb{font-size:11px}.searchbox{min-width:100%;}.tasktools{width:100%}.tasktools .searchbox{flex:1}.pagehead .datepill{align-self:flex-start}.modulegrid{gap:8px}.module{padding:13px}.ringrow{gap:12px}.ring{width:85px;height:85px}.balance{font-size:26px}}
.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.formgrid .field{margin:0}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:10px 12px;background:var(--surface);color:var(--ink);min-height:42px}.field label{display:block;font-size:12px;font-weight:650;margin-bottom:6px}.field small{display:block;font-size:11px;margin-top:5px}.formactions{display:flex;justify-content:flex-end;gap:9px;margin-top:17px;flex-wrap:wrap}#profileBmi{font-size:30px;font-weight:760;letter-spacing:-1px;margin:8px 0 3px}
@media(max-width:700px){.formgrid{grid-template-columns:1fr}.formactions>*{flex:1}}

#sidebarMenu{display:grid;gap:22px}.nav-preferences{display:grid;gap:9px;margin-top:14px}.nav-pref-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:12px;padding:10px}.nav-pref-name{font-size:12px;font-weight:650}.nav-pref-controls{display:flex;gap:5px}.nav-pref-controls button{border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:8px;padding:5px 8px}.nav-pref-row input{accent-color:var(--accent)}#authBack{z-index:30}#authBack .modal{max-width:460px}#authForm .field{margin-top:12px}#authButton{white-space:nowrap}[hidden]{display:none!important}

.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.module-tile{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:16px;display:flex;gap:12px;align-items:flex-start;min-height:110px}.module-tile .tile-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--surface2);font-size:19px;flex:none}.module-tile h3{font-size:13px;margin:0 0 5px}.module-tile p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.module-tile button{border:0;background:none;color:var(--accent);padding:7px 0 0;font-size:11px;font-weight:750}.record-list{display:grid;gap:9px}.record{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:13px}.record-main{flex:1;min-width:0}.record-main strong{font-size:13px;display:block}.record-main p{font-size:12px;color:var(--muted);margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.record-actions{display:flex;gap:6px}.record-actions button{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:5px 8px;font-size:11px;color:var(--muted)}.notice{border:1px solid var(--line);background:var(--surface2);border-radius:13px;padding:13px;font-size:12px;color:var(--muted);line-height:1.6}.notice strong{color:var(--ink)}.status-chip{font-size:10px;border-radius:99px;padding:4px 8px;background:var(--amber-soft);color:var(--amber);font-weight:750}.module-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.4fr) auto;gap:8px;margin-bottom:14px}.module-form input,.module-form select{min-width:0;width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px}.module-form button{white-space:nowrap}@media(max-width:950px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.module-grid{grid-template-columns:1fr}.module-form{grid-template-columns:1fr 1fr}.module-form input{grid-column:1/-1}.module-form button{grid-column:1/-1}.record{padding:11px}}

/* v0.9.1: cross-module analytics, direct record editing, detailed module forms and local encrypted vault */
.bar-chart{display:grid;gap:13px;padding-top:8px}.bar-row{display:grid;gap:6px}.bar-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.bar-label span{color:var(--muted)}.bar-label strong{font-size:12px}.bar-track{height:8px;border-radius:999px;background:var(--surface2);overflow:hidden}.bar-track span{display:block;height:100%;border-radius:999px;background:var(--accent);min-width:2px}.condition-pill{font-size:10px;font-weight:750;padding:2px 6px;border-radius:999px}.condition-pill.ok{background:var(--green-soft);color:var(--green)}.condition-pill.warn{background:var(--amber-soft);color:var(--amber)}.condition-pill.risk{background:var(--red-soft);color:var(--red)}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.app-version{text-align:center;color:var(--muted);font-size:10px;padding:16px 20px 28px}.page .formgrid{margin-top:12px}.page .formgrid .span2{grid-column:1/-1}.page .formgrid .formactions{margin-top:0}.pagehead .secondary{align-self:flex-start}@media(max-width:700px){.page .formgrid .span2{grid-column:auto}.bar-label{font-size:11px}}
.nav-pref-row{grid-template-columns:minmax(110px,1fr) auto minmax(120px,.9fr) auto}.nav-classify{display:grid;gap:3px;color:var(--muted)}.nav-classify select{max-width:150px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:7px;padding:4px;font-size:10px}@media(max-width:850px){.nav-pref-row{grid-template-columns:minmax(0,1fr) auto}.nav-classify{grid-column:1/2}.nav-pref-controls{grid-column:2;grid-row:2}}

/* v0.9.1 cross-module data entry */
.module-detail-fields{grid-column:1/-1;width:100%;margin-top:8px;padding-top:12px;border-top:1px solid var(--line)}
.detail-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.detail-fields-grid .field{min-width:0;margin:0}
.detail-fields-grid input,.detail-fields-grid textarea{width:100%;min-width:0;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:9px;font:inherit;font-size:12px}
.detail-fields-grid textarea{min-height:72px;resize:vertical}
.detail-fields-grid .detail-wide{grid-column:1/-1}
#vaultEntries input[readonly]{max-width:320px;background:var(--surface2);color:var(--ink);padding:7px;border:1px solid var(--line);border-radius:8px}
@media(max-width:720px){.detail-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.detail-fields-grid{grid-template-columns:1fr}.detail-fields-grid .detail-wide{grid-column:auto}}

/* v0.9.1 UI/UX refresh: scroll-safe desktop rail, calmer workspace, compact PWA shell */
.sidebar{height:100dvh;overflow:hidden;gap:18px;padding-top:20px;padding-bottom:12px}.brand{flex:none}.sidebar #sidebarMenu{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding-right:3px;scrollbar-width:thin}.sidebar #sidebarMenu::-webkit-scrollbar{width:5px}.sidebar #sidebarMenu::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}.navbottom{flex:none}.navbtn{border-radius:10px}.navbtn .ico{display:inline-flex;align-items:center;justify-content:center;flex:none}.navbtn .ico svg,.mobile-nav svg,.profile-link-icon svg{width:20px;height:20px;display:block}.navtext{min-width:0}.profile-link{display:flex;flex-direction:column;align-items:flex-start;gap:9px;text-align:left;cursor:pointer;color:var(--ink);font:inherit}.profile-link strong{font-size:14px}.profile-link small{font-size:12px;line-height:1.5;color:var(--muted)}.profile-link-icon{display:grid;place-items:center;width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:12px}.settings-actions{display:flex;flex-wrap:wrap;gap:9px}.about-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.about-row span{color:var(--muted);text-align:right}.mobile-nav{align-items:stretch;gap:2px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -8px 28px #17261b0a}.mobile-nav .navbtn{position:relative;min-height:52px;gap:3px;border-radius:12px;font-size:10px;line-height:1.1;color:var(--muted)}.mobile-nav .navbtn .ico{height:22px;display:grid;place-items:center}.mobile-nav .navbtn .ico svg{width:21px;height:21px}.mobile-nav .navbtn.active{background:transparent;color:var(--accent)}.mobile-nav .navbtn.active:before{content:"";position:absolute;top:-6px;width:22px;height:3px;background:var(--accent);border-radius:0 0 3px 3px}.mobile-nav .sari-nav{transform:translateY(-9px);color:var(--accent);font-weight:750}.sari-orb{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:var(--accent);color:#fff;box-shadow:0 5px 18px #416c5533}.sari-orb svg{width:25px;height:25px}.mobile-nav .sari-nav.active:before{display:none}.profile-hub{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-quick{margin-bottom:16px}.settings-quick .cardhead{margin-bottom:10px}.settings-quick .settings-actions{gap:8px}.settings-quick button{min-height:40px}@media(max-width:820px){.topbar{display:none}.content{padding:24px 15px calc(94px + env(safe-area-inset-bottom))}.mobile-nav{display:grid}.sidebar{display:none}.profile-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.pagehead h1{font-size:28px}.pagehead{margin-bottom:18px}.settings-actions button{flex:1 1 auto}.settings-quick{padding:16px}.settings-quick .settings-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:390px){.mobile-nav .navbtn{font-size:9px;padding-left:0;padding-right:0}.sari-orb{width:42px;height:42px}.profile-hub{grid-template-columns:1fr}.about-row{align-items:flex-start;flex-direction:column}.about-row span{text-align:left}}@media(min-width:821px){.app{grid-template-columns:248px minmax(0,1fr)}.sidebar{position:sticky;top:0}.content{padding-top:30px}.mobile-nav{display:none}}

.module-tile .tile-icon svg{width:22px;height:22px;display:block}.profile-link{border:1px solid var(--line);box-shadow:var(--shadow)}.profile-link:hover{border-color:var(--accent);transform:translateY(-1px)}

/* v0.9.3: bottom navigation on desktop and PWA, conversational Sari-first layout, accessible route cards. */
.route-card{cursor:pointer;transition:border-color .18s ease,transform .18s ease}.route-card:hover,.route-card:focus-visible{border-color:var(--accent);transform:translateY(-1px);outline:2px solid color-mix(in srgb,var(--accent) 24%,transparent);outline-offset:2px}.route-card button,.route-card a{position:relative;z-index:1}.sari-page .sari-welcome{display:flex;align-items:center;gap:14px;margin:0 0 16px}.sari-welcome .aiavatar{width:48px;height:48px;display:grid;place-items:center;flex:none;background:var(--accent-soft);color:var(--accent);border-radius:16px}.sari-welcome svg{width:27px;height:27px}.sari-welcome h1{font-size:clamp(23px,3vw,34px);margin:0 0 4px;letter-spacing:-.7px}.sari-welcome p{font-size:13px;color:var(--muted);margin:0}.sari-main-chat{padding:0;overflow:hidden}.sari-main-chat .chathead{padding:16px 18px 12px}.sari-composer{order:-2;display:flex;gap:9px;align-items:flex-end;padding:14px 16px;border:1px solid var(--line);border-radius:17px;background:var(--surface);margin:0 16px 10px;box-shadow:0 6px 24px #17261b08}.sari-composer textarea{min-height:54px;max-height:180px;resize:vertical;font:inherit;line-height:1.5;padding:10px 2px;border:0;outline:0;background:transparent;color:var(--ink);flex:1;min-width:0}.sari-composer .iconbtn{width:42px;height:42px;display:grid;place-items:center;flex:none}.sari-composer .iconbtn svg,.voice-tools svg{width:21px;height:21px}.sari-composer .primary{min-height:42px}.voice-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:0 17px 10px}.voice-tools .secondary{font-size:11px;padding:8px 10px}.sari-main-chat .chatmessages{min-height:140px;max-height:55vh;overflow:auto;padding:10px 18px 18px}.sari-main-chat .suggestions{padding:0 16px 16px}.sari-secondary{padding:16px}.sari-secondary summary{font-weight:700;font-size:14px;cursor:pointer;list-style-position:inside}.sari-secondary[open] summary{margin-bottom:12px}.sari-secondary textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);color:var(--ink);font:inherit}.sari-lower{margin-top:12px}.health-tracker-grid .formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.health-tracker-grid .field{min-width:0}.health-tracker-grid .span2{grid-column:1/-1}.health-tracker-grid input,.health-tracker-grid select,.health-tracker-grid textarea{max-width:100%;min-width:0}.app-version{position:relative;text-align:center;padding:8px 12px 104px;color:var(--muted);font-size:10px}.mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;z-index:40;bottom:0;left:0;right:0;background:color-mix(in srgb,var(--nav) 92%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:7px 8px calc(7px + env(safe-area-inset-bottom));gap:3px}.mobile-nav .navbtn{padding:7px 2px;display:flex;flex-direction:column;align-items:center;gap:4px;justify-content:center;text-align:center;font-size:10px;border-radius:10px;min-width:0}.mobile-nav .navbtn .ico{font-size:17px;width:auto}.mobile-nav .navbtn .ico svg{width:21px;height:21px}.mobile-nav .sari-nav{transform:translateY(-6px)}.mobile-nav .sari-orb{width:42px;height:42px}.mobile-nav .navbtn.active{color:var(--accent)}.content{padding-bottom:112px!important}.sidebar{display:none!important}.app{display:block!important}.topbar{position:sticky;top:0;z-index:15;backdrop-filter:blur(16px)}
@media(min-width:821px){.mobile-nav{grid-template-columns:repeat(5,minmax(100px,170px));justify-content:center;padding:8px 20px calc(8px + env(safe-area-inset-bottom));}.mobile-nav .navbtn{min-height:48px;flex-direction:row;gap:8px;font-size:12px;padding:8px 14px}.mobile-nav .sari-nav{transform:none}.mobile-nav .sari-orb{width:30px;height:30px;border-radius:10px;box-shadow:none}.mobile-nav .sari-orb svg{width:19px;height:19px}.mobile-nav .navbtn.active:before{top:-8px}.content{padding-bottom:112px!important}.app-version{padding-bottom:112px}}
@media(max-width:820px){.topbar{display:none}.content{padding:22px 14px calc(104px + env(safe-area-inset-bottom))!important}.pagehead h1{font-size:27px}.sari-welcome{align-items:flex-start!important}.sari-composer{margin:0 10px 8px;padding:10px;gap:6px}.sari-composer textarea{font-size:16px}.sari-composer .primary{padding:10px 12px}.voice-tools{padding:0 11px 10px}.voice-tools .tiny{flex:1 1 100%}.health-tracker-grid .formgrid{grid-template-columns:1fr}.health-tracker-grid .span2{grid-column:auto}.mobile-nav .navbtn{font-size:9px}.app-version{padding-bottom:calc(112px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.route-card,.mobile-nav .navbtn{transition:none}}

.csv-import-panel{margin-top:16px}.csv-preview-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:10px}.csv-preview{border-collapse:collapse;min-width:620px;width:100%;font-size:11px}.csv-preview th,.csv-preview td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;max-width:240px;overflow-wrap:anywhere}.csv-preview th{background:var(--surface2);position:sticky;top:0}.csv-preview td{color:var(--muted)}
