:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#233b42;background:#f3f6f3;font-synthesis:none;line-height:1.55}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.18}h1{font-size:clamp(2rem,4vw,3.6rem)}h2{font-size:1.62rem}h3{font-size:1.08rem}.muted{color:#637579}.small{font-size:.86rem}.tiny{font-size:.73rem}.eyebrow{color:#4c7063;letter-spacing:.14em;font-size:.71rem;text-transform:uppercase;font-weight:750}.shell{display:grid;grid-template-columns:256px minmax(0,1fr);min-height:100vh}.side{background:#122b34;color:#eaf4ef;display:flex;flex-direction:column;padding:30px 18px;gap:35px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:0 10px;font-weight:800;font-size:1.18rem;letter-spacing:-.04em}.brand svg{width:38px;height:38px}.brand small{display:block;color:#90b1ad;font-size:.66rem;letter-spacing:.13em;font-weight:500;text-transform:uppercase}.nav{display:flex;flex-direction:column;gap:7px}.nav button{background:transparent;color:#bacccc;border:0;text-align:left;display:flex;align-items:center;gap:14px;padding:12px 15px;border-radius:12px;font-size:.91rem;font-weight:600}.nav button:hover{background:#203f47}.nav button.active{background:#b5e1ca;color:#19332d}.nav .symbol{font-size:1.1rem;width:24px;text-align:center}.sidefoot{margin-top:auto;border-top:1px solid #365059;padding:18px 11px 0;font-size:.78rem;color:#a4b9b8}.main{min-width:0;padding:36px clamp(22px,4vw,64px) 55px;max-width:1500px;width:100%;margin:auto}.topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:31px;gap:12px}.pill{border:1px solid #dae4df;background:#fff;color:#5c736b;padding:7px 13px;border-radius:99px;font-size:.78rem;font-weight:650}.tag{font-size:.71rem;font-weight:800;letter-spacing:.06em;color:#50715f;background:#e1f1e7;border-radius:20px;padding:5px 10px;display:inline-block}.hero{border-radius:24px;background:#193b42;color:#fff;padding:clamp(24px,4vw,42px);position:relative;overflow:hidden;min-height:210px;display:flex;align-items:center;margin:22px 0 26px}.hero:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-45px;top:-180px;background:radial-gradient(circle,#426b65aa 0%,transparent 70%)}.hero:after{content:"✦";position:absolute;color:#add6b7;right:75px;bottom:15px;font-size:90px;opacity:.52}.hero h1{max-width:670px;font-size:clamp(1.7rem,3vw,2.7rem);margin:7px 0 12px}.hero p{color:#c9dbd6;max-width:620px}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:19px}.span7{grid-column:span 7}.span5{grid-column:span 5}.span6{grid-column:span 6}.span12{grid-column:span 12}.card{background:#fff;border:1px solid #e1e8e4;border-radius:19px;padding:24px;box-shadow:0 7px 28px #1b40410a}.cardhead{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:20px}.cardhead p{margin-top:4px}.metric{font-size:2.2rem;font-weight:780;letter-spacing:-.045em}.progress{height:10px;background:#e5ede8;border-radius:80px;overflow:hidden;margin:12px 0}.progress b{display:block;height:100%;background:#72b596;border-radius:80px;transition:width .2s}.task{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid #edf1ee}.task:first-child{border-top:0}.task input{accent-color:#3f9770;width:19px;height:19px;margin:3px 0 0;flex-shrink:0}.task label{flex:1;cursor:pointer}.task strong{font-size:.92rem;display:block;font-weight:650}.task small{display:block;color:#78908b;margin-top:4px;line-height:1.4}.task.complete strong{text-decoration:line-through;color:#9badaa}.task .minutes{background:#edf5ef;border-radius:99px;padding:3px 8px;font-size:.72rem;color:#507964;white-space:nowrap}.section-head{display:flex;justify-content:space-between;align-items:end;gap:10px;margin-bottom:22px}.section-head p{margin-top:8px;color:#637579;max-width:740px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}.field label{font-weight:650;font-size:.84rem;color:#455b5b}.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:1px solid #dbe5df;border-radius:10px;background:#fdfefd;color:#1c333b;outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:#549a7b;box-shadow:0 0 0 3px #b9dbc960}.field textarea{resize:vertical;min-height:110px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.btn{border:0;border-radius:11px;background:#1e5245;color:#fff;font-weight:750;padding:12px 18px;display:inline-flex;justify-content:center;align-items:center;gap:8px}.btn:hover:not(:disabled){background:#123b33}.btn.secondary{background:#eaf2ec;color:#245446}.btn.danger{background:#fff0ed;color:#9d453b}.btn:focus-visible,.nav button:focus-visible{outline:3px solid #a4d2a4;outline-offset:2px}.summaryline{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e8efeb}.summaryline:last-child{border:0}.barlabel{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.budgetbar{background:#e8eeea;height:11px;border-radius:12px;overflow:hidden;margin-bottom:19px}.budgetbar span{display:block;height:100%;border-radius:12px}.callout{background:#eaf2ec;padding:14px 16px;border-radius:12px;color:#315b4f;font-size:.85rem;margin-top:14px}.warn{background:#fff1e7;color:#85512b}.note{background:#f7f9f7;border:1px solid #e1e9e2;border-radius:12px;padding:14px 16px;color:#60736f;font-size:.84rem}.stack{display:flex;flex-direction:column;gap:15px}.welcome{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);background:#f4f7f4}.welcome-art{background:#142f36;color:#fff;display:flex;align-items:center;justify-content:center;padding:60px;position:relative;overflow:hidden}.welcome-art:before{content:"";position:absolute;right:-180px;bottom:-250px;width:630px;height:630px;border:1px solid #79988e;border-radius:50%;box-shadow:0 0 0 70px #203f4520,0 0 0 140px #42665e20}.welcome-art-inner{max-width:570px;z-index:1}.welcome-art h1{font-size:clamp(2.8rem,5vw,5rem);margin:35px 0 18px}.welcome-art p{font-size:1.08rem;color:#b9d2cc}.welcome-login{display:flex;justify-content:center;align-items:center;padding:36px}.welcome-box{max-width:390px;width:100%}.welcome-box h2{font-size:2rem;margin:10px 0}.welcome-box p{margin-bottom:22px}.login-option{display:block;width:100%;text-align:center;border:1px solid #d9e5dd;border-radius:12px;background:#fff;color:#1d3735;padding:15px;font-weight:730;margin-bottom:10px}.login-option.primary{background:#235e4c;color:white}.footer-note{font-size:.78rem;color:#677a76;margin-top:20px}.miniicon{width:50px;height:50px;background:#d9ece0;border-radius:14px;display:grid;place-items:center;font-size:26px}.empty{padding:20px;color:#6d8079;background:#f5f8f5;border-radius:12px}.toast{position:fixed;bottom:24px;right:24px;background:#173e35;color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 18px 38px #123c3666;z-index:10;font-size:.9rem;max-width:min(480px,90vw)}.divider{border-top:1px solid #e7eeea;margin:16px 0}.hide{display:none!important}.mobile-nav{display:none}.high{color:#a44a35}.good{color:#388768}.right{text-align:right}input[type=range]{accent-color:#3c8b6c}.wordbreak{overflow-wrap:anywhere}details summary{cursor:pointer;font-weight:650}details p{font-size:.87rem;color:#6d817a;margin-top:9px}@media(max-width:1000px){.shell{grid-template-columns:200px minmax(0,1fr)}.side{padding:20px 10px}.main{padding:26px 23px 90px}.span7,.span5{grid-column:span 12}}@media(max-width:680px){.shell{display:block}.side{display:none}.main{padding:20px 15px 108px}.grid{gap:12px}.span6{grid-column:span 12}.card{padding:19px;border-radius:16px}.hero{padding:24px;min-height:180px}.hero:after{right:12px;bottom:10px;font-size:56px}.topline{margin-bottom:17px}.formgrid{grid-template-columns:1fr}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e4eae5;padding:9px 6px max(10px,env(safe-area-inset-bottom));justify-content:space-around;z-index:5;box-shadow:0 -8px 32px #203f4020}.mobile-nav button{background:none;border:0;color:#698079;display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;font-size:.68rem;font-weight:750;padding:4px 6px;border-radius:9px;min-width:65px}.mobile-nav button.active{color:#1a5a45;background:#e2f1e8}.mobile-nav button span{font-size:1.4rem}.welcome{display:block}.welcome-art{min-height:36vh;padding:40px 28px}.welcome-art h1{font-size:2.6rem;margin:12px 0}.welcome-art p{font-size:.94rem}.welcome-login{padding:28px 24px}.toast{bottom:86px;left:14px;right:14px}}

/* Phase-2 capability previews, deliberately labelled unavailable. */
.ai-stack{display:flex;flex-direction:column;gap:13px;margin-top:14px}
.ai-placeholder{background:#f8faf9;border:1px dashed #b7c9c1;border-radius:13px;padding:16px;margin-top:12px}
.ai-placeholder-heading{display:flex;align-items:center;gap:12px}
.ai-placeholder-heading>div{display:flex;flex-direction:column;gap:5px}
.ai-placeholder-heading strong{font-size:.95rem;color:#233b42}
.ai-placeholder-icon{width:32px;height:32px;display:grid;place-items:center;background:#e4ece8;border-radius:10px;font-size:21px;color:#527469;flex:none}
.ai-unavailable{background:#f4e8d9;color:#704a21;border-radius:6px;padding:3px 8px;font-size:.73rem;font-weight:750;align-self:flex-start}
.ai-placeholder p{color:#60736f;font-size:.83rem;line-height:1.55;margin:12px 0 10px}
.ai-explain{border:1px solid #b8d0c3;color:#31594b;background:#fff;border-radius:9px;padding:8px 10px;font-size:.8rem;font-weight:700;text-align:left}
.ai-explain:hover{background:#eaf2ec}
.ai-explain:focus-visible{outline:3px solid #a4d2a4;outline-offset:2px}
.ai-placeholder-compact{margin-top:8px}
