
:root{--navy:#102d3b;--ink:#183642;--muted:#637780;--sand:#f4f1eb;--gold:#bd9352;--line:#dce4e5;--green:#247b68}*{box-sizing:border-box}body{margin:0;background:var(--sand);font:15px/1.55 system-ui,-apple-system,sans-serif;color:var(--ink)}aside{position:fixed;inset:0 auto 0 0;width:252px;background:var(--navy);color:#fff;padding:38px 26px}.brand{font:44px Georgia,serif;letter-spacing:5px;text-decoration:none;color:white}.brand span{display:block;font:9px system-ui;letter-spacing:2px;margin-top:9px}.small{font-size:10px;letter-spacing:2px;color:#a5bbc4;margin:52px 0 18px}nav button{display:block;border:0;background:transparent;color:#b6cbd4;padding:13px 15px;text-align:start;width:100%;margin:5px 0;border-radius:8px;font:inherit}nav button.active{background:#274958;color:#fff}.aside-bottom{position:absolute;bottom:30px;font-size:12px;line-height:2;color:#b6cbd4}.dot{display:inline-block;width:7px;height:7px;background:#77c7ab;border-radius:50%;margin-right:5px}main{margin-left:252px;padding:28px 42px 20px;max-width:1800px}header{display:flex;justify-content:space-between;align-items:center;gap:20px}header p{margin:2px 0;font-size:13px;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted)}.controls{display:flex;gap:10px}button,select,input{font:inherit}button{cursor:pointer}button,select{border:1px solid var(--line);padding:10px 16px;border-radius:6px;background:white;color:var(--ink)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button.primary{background:var(--navy);color:white;border-color:var(--navy)}button:hover{filter:brightness(.95)}.banner{background:#eae3d5;border-left:3px solid var(--gold);padding:10px 15px;font-size:11px;margin:24px 0}h1{font:36px/1.2 Georgia,serif;margin:12px 0}h2{font:25px Georgia,serif;margin:5px 0 16px}h3{font-size:17px;margin:8px 0}p{color:var(--muted)}.hero{display:grid;grid-template-columns:1.2fr 1fr;background:var(--navy);color:white;border-radius:12px;overflow:hidden;margin:24px 0}.hero-copy{padding:36px}.hero p{color:#bbd0d8}.scene{position:relative;min-height:255px;background:linear-gradient(165deg,#8bb5c1 0%,#d1e2df 52%,#bbd5d4 53%,#3e7e87 75%,#dec5a3 76%);overflow:hidden}.scene:before{content:"";position:absolute;width:140px;height:200px;background:repeating-linear-gradient(0deg,transparent 0 17px,#345965 18px 21px),repeating-linear-gradient(90deg,#d6cdb8 0 16px,#54717b 17px 25px);bottom:50px;left:25%;transform:skewY(-5deg);box-shadow:95px 38px 0 -13px #d2c4aa,-66px 57px 0 -23px #e5d9c3}.scene:after{content:"CONCEPT ILLUSTRATION · NOT AN ACTUAL UNIT";position:absolute;bottom:14px;right:18px;font-size:9px;color:white;letter-spacing:1px}.badge{display:inline-block;font-size:10px;padding:5px 9px;background:#e6efec;color:var(--green);border-radius:4px;letter-spacing:1px}.hero .badge{background:#365361;color:#d8e9ef}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}.two{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.card{background:white;border:1px solid var(--line);border-radius:10px;padding:24px}.metric{font:30px Georgia,serif;margin:8px 0}.caption{font-size:12px;color:var(--muted)}.row{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #edf0f1;padding:10px 0}.row:last-child{border:0}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.note{background:#f5f3ec;padding:14px;font-size:12px;margin:16px 0;border-radius:6px}.negative{color:#9c542c}.steps{display:flex;gap:4px;margin:18px 0}.steps span{flex:1;background:#e9edec;border-radius:3px;padding:8px;font-size:10px}.steps .done{background:#cee4dd;color:#235f51}label{display:block;font-size:12px;color:var(--muted);margin:14px 0 5px}input{width:100%;padding:11px;border:1px solid var(--line);border-radius:5px}.chart{display:flex;align-items:end;height:160px;gap:15px;padding:15px 10px;border-bottom:1px solid var(--line)}.bar{flex:1;background:var(--green);min-height:3px;border-radius:4px 4px 0 0;position:relative}.bar span{position:absolute;bottom:-26px;width:100%;text-align:center;font-size:10px}.bar.negative{background:var(--gold)}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:start;padding:10px;border-bottom:1px solid var(--line)}th{font-size:11px;color:var(--muted)}footer{font-size:10px;color:var(--muted);margin:35px 0 5px}#toast{display:none;position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:16px 24px;background:var(--navy);color:white;border-radius:8px;max-width:85%;z-index:10}html[dir=rtl] aside{left:auto;right:0}html[dir=rtl] main{margin-left:0;margin-right:252px}.wide{grid-column:1/-1}@media(max-width:1000px){aside{width:205px}main{margin-left:205px;padding:22px}.grid{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}html[dir=rtl] main{margin-right:205px}}@media(max-width:720px){aside{position:static;width:auto;padding:18px}.brand{font-size:28px}.small,.aside-bottom{display:none}nav{display:flex;overflow:auto}nav button{white-space:nowrap;width:auto;font-size:12px}main,html[dir=rtl] main{margin:0;padding:18px}.hero{grid-template-columns:1fr}.scene{min-height:180px}.grid{grid-template-columns:1fr}header{align-items:start;flex-direction:column}h1{font-size:30px}}
nav{max-height:calc(100vh - 320px);overflow-y:auto}nav button{padding:10px 12px}.receipt{padding:18px 0;border-bottom:1px solid var(--line)}.receipt summary{cursor:pointer}.digest{display:block;overflow-wrap:anywhere;font-size:12px;background:#f2f5f4;padding:12px}.assistant-entry{margin-top:24px}@media(max-width:720px){nav{max-height:none;overflow-x:auto}}

.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:25px}.login-card{width:100%;max-width:520px;padding:40px}.login-card button{width:100%;margin:15px 0}.login-card #error{color:#9c542c}

.learn-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.start-card{margin-bottom:26px;border-left:4px solid var(--gold)}fieldset{border:1px solid var(--line);border-radius:8px;margin:20px 0;padding:18px}legend{font-weight:600;padding:0 8px}.choice{display:flex;align-items:flex-start;gap:10px;color:var(--ink);font-size:14px;padding:10px;background:var(--sand);border-radius:5px}.choice input{width:auto;margin-top:5px}.diary-event{border-inline-start:3px solid var(--green);padding:8px 18px;margin:18px 0}
