* { box-sizing: border-box; }
:root { --paper:#f4f1ea; --panel:#fbfaf7; --ink:#202c2b; --muted:#7b8178; --line:#dfded6; --moss:#5d756a; --deep-moss:#315a50; --mint:#dbe9df; --amber:#c89544; --soft-amber:#f2e7d3; --coral:#bd6e5d; --shadow:0 14px 36px rgba(35, 47, 43, .06); }
html { scroll-behavior:smooth; }
.integrations-panel{margin-top:20px}.integration-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.consent-toggle{display:flex;gap:9px;align-items:flex-start;padding:12px;background:#f1f4ef;border:1px solid #dce6dc;border-radius:5px;cursor:pointer}.consent-toggle input{accent-color:var(--moss);margin-top:3px}.consent-toggle strong{display:block;font-size:11px}.consent-toggle small{display:block;color:var(--muted);font-size:10px;line-height:1.4;margin-top:4px}.integration-actions{display:flex;align-items:center;gap:10px;margin-top:15px}.integration-actions .secondary-button{background:#eef3ed;color:var(--deep-moss);border:1px solid #d5e2d6}.integration-actions .text-button{margin-left:auto}.integration-message{min-height:16px;color:var(--muted);font-size:10px;margin:12px 0 0}.event-list{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.event-list .eyebrow{margin:0 0 8px}.calendar-event{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #ebe9e2;font-size:11px}.calendar-event strong{font-size:11px}.calendar-event small{color:var(--muted);white-space:nowrap}
.account-actions{display:flex;gap:18px;border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.danger-button{color:var(--coral)}.journal-form{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.journal-form .eyebrow{margin:0 0 10px}.journal-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.journal-form label{color:var(--muted);font-size:10px}.journal-form select,.journal-form textarea{display:block;width:100%;margin-top:5px;border:1px solid var(--line);background:#fff;border-radius:4px;padding:8px;font:inherit;font-size:11px;resize:vertical}.journal-form textarea{margin:10px 0}.journal-form .secondary-button{font-size:10px}
body { margin:0; color:var(--ink); background:var(--paper); font-family:'Manrope', sans-serif; font-size:14px; }
button, input { font:inherit; }
button { cursor:pointer; }
.auth-gate { min-height:100vh; display:grid; place-items:center; padding:24px; background:radial-gradient(circle at 20% 10%, #e8efe5 0, transparent 40%), var(--paper); }
.auth-card { width:min(100%, 430px); background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:38px; box-shadow:var(--shadow); }
.auth-brand { padding:0; margin-bottom:58px; }.auth-card h1 { font-size:31px; letter-spacing:-1.5px; margin:9px 0; }.auth-copy { color:var(--muted); line-height:1.6; font-size:12px; margin:0 0 26px; }.auth-card label { display:block; color:var(--muted); font-size:11px; font-weight:700; margin:14px 0; }.auth-card input { display:block; width:100%; border:1px solid var(--line); border-radius:5px; padding:11px; margin-top:6px; background:#fff; outline-color:var(--moss); }.auth-submit { width:100%; justify-content:space-between; margin-top:20px; }.auth-error { min-height:18px; color:#a35e51; font-size:11px; line-height:1.4; }.auth-switch { display:block; border:0; background:none; color:var(--moss); font-size:11px; font-weight:800; padding:0; margin-top:12px; }.auth-note { display:block; color:var(--muted); font-size:10px; margin-top:32px; }.app-shell { display:none; }
body.authenticated .auth-gate { display:none; } body.authenticated .app-shell { display:flex; }
.app-shell { display:flex; min-height:100vh; }
.sidebar { width:246px; flex-shrink:0; border-right:1px solid var(--line); padding:32px 20px 24px; display:flex; flex-direction:column; background:#f0eee7; }
.brand { display:flex; align-items:center; gap:10px; padding:0 12px; color:var(--ink); font-weight:800; font-size:20px; letter-spacing:-.8px; text-decoration:none; }
.brand-mark { display:flex; align-items:end; gap:2px; height:20px; width:22px; }
.brand-mark span { display:block; width:5px; border-radius:4px; background:var(--deep-moss); }.brand-mark span:first-child{height:9px}.brand-mark span:nth-child(2){height:15px;background:var(--amber)}.brand-mark span:last-child{height:20px}
.workspace-label, .eyebrow { color:var(--muted); font-family:'DM Mono', monospace; font-size:10px; letter-spacing:1.2px; }
.workspace-label { margin:64px 12px 16px; }
.main-nav { display:flex; flex-direction:column; gap:4px; }.nav-item { color:#727a73; padding:11px 12px; display:flex; align-items:center; gap:12px; text-decoration:none; border-radius:7px; font-weight:600; }.nav-item:hover,.nav-item.active{color:var(--deep-moss);background:#e5e8df}.nav-item.active{font-weight:800}.nav-icon{width:18px;text-align:center;font-size:20px;line-height:14px}
.sidebar-bottom { margin-top:auto; }.privacy-note { display:flex; gap:9px; align-items:flex-start; color:var(--deep-moss); padding:14px 12px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.privacy-note strong,.profile-button strong { display:block; font-size:11px; }.privacy-note small,.profile-button small { display:block; color:var(--muted); font-size:10px; margin-top:2px; }.status-dot,.sync-dot { width:7px;height:7px;border-radius:50%;display:inline-block;background:#73a182;margin-top:4px;box-shadow:0 0 0 3px #d7e6da; }.profile-button{width:100%;border:0;background:none;display:flex;gap:9px;align-items:center;text-align:left;padding:18px 6px 0;color:var(--ink)}.avatar{width:30px;height:30px;border-radius:50%;background:var(--deep-moss);color:white;display:grid;place-items:center;font-weight:800}.chevron{margin-left:auto;color:var(--muted);font-size:18px}
.main-content { max-width:1360px; width:100%; margin:0 auto; padding:0 54px 30px; }.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.breadcrumb{display:flex;gap:10px;color:var(--muted);font-size:12px}.breadcrumb strong{color:var(--ink)}.divider{color:#c8c6bd}.top-actions{display:flex;gap:22px;align-items:center}.sync-label{color:var(--muted);font-size:11px}.sync-dot{margin:0 6px 0 0;width:5px;height:5px}.icon-button{border:0;background:none;color:var(--ink);font-size:20px;position:relative}.notification-dot{position:absolute;right:2px;top:1px;width:5px;height:5px;background:var(--coral);border-radius:50%}
.welcome-row{display:flex;align-items:end;justify-content:space-between;padding:50px 0 35px}.welcome-row h1{font-size:42px;line-height:1.05;letter-spacing:-2px;margin:8px 0 10px;font-weight:800}.welcome-row h1 em{font-family:Georgia,serif;color:var(--deep-moss);font-weight:400}.subhead{color:var(--muted);margin:0;font-size:14px}.date-card{display:flex;align-items:center;gap:12px;color:var(--deep-moss);border-left:1px solid var(--line);padding-left:20px}.date-number{font-size:54px;line-height:.8;font-weight:800;letter-spacing:-3px}.date-card strong{font-family:'DM Mono';font-size:11px}.date-card small{display:block;color:var(--muted);font-size:10px;line-height:1.4;margin-top:4px}
.state-banner{display:flex;align-items:center;gap:18px;padding:21px 24px;background:var(--deep-moss);color:#f9fbf5;border-radius:8px;box-shadow:var(--shadow)}.state-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#577c6e;color:#f2ce8c;font-size:21px}.state-copy{flex:1}.state-copy .eyebrow{color:#a9c4b6;margin:0 0 4px}.state-copy h2{margin:0;font-size:18px;letter-spacing:-.5px}.state-copy p:last-child{margin:5px 0 0;color:#c1d2c7;font-size:12px}.state-score{text-align:right;border-left:1px solid rgba(255,255,255,.2);padding-left:24px}.state-score span,.state-score small{display:block;color:#a9c4b6;font:10px 'DM Mono';letter-spacing:1px}.state-score strong{font-size:34px;line-height:1.1}.state-score small{display:inline;font-size:11px;letter-spacing:0}
.dashboard-grid,.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px;box-shadow:var(--shadow)}.panel-heading{display:flex;align-items:start;justify-content:space-between}.panel-heading h3{margin:5px 0 0;font-size:18px;letter-spacing:-.5px}.panel-heading .eyebrow{margin:0}.text-button{border:0;background:none;color:var(--moss);font-size:11px;font-weight:700;padding:2px 0}.signal-list{margin-top:24px}.signal-row{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0 18px}.signal-row+ .signal-row{border-top:1px solid #ebe9e2;padding-top:18px}.signal-label{display:flex;align-items:center;gap:10px}.signal-symbol{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;font-weight:800;font-family:'DM Mono';font-size:12px}.work-symbol{background:#eee6d5;color:#aa7840}.body-symbol{background:#deebe2;color:#53816e}.mind-symbol{background:#f0dedb;color:#a56257}.signal-label strong{display:block;font-size:12px}.signal-label small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.signal-row output{font-size:11px;color:var(--deep-moss);font-weight:800}.signal-row input{grid-column:1/-1;width:100%;accent-color:var(--moss);height:4px}.signal-footer{border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.live-pulse{display:inline-block;width:6px;height:6px;background:#7bae8b;border-radius:50%;margin-right:5px}.mono{font:10px 'DM Mono'}
.priority-badge,.cue-label,.task-tag{font:10px 'DM Mono';letter-spacing:.8px;color:var(--amber);background:var(--soft-amber);padding:6px 8px;border-radius:4px}.focus-card{display:flex;align-items:center;justify-content:space-between;background:#eef3ed;border:1px solid #dce6dc;padding:18px;margin-top:24px;border-radius:6px}.focus-time{display:flex;gap:12px;align-items:center}.focus-icon{font-size:27px;color:var(--amber)}.focus-time small{display:block;color:var(--moss);font:10px 'DM Mono';margin-bottom:4px}.focus-time strong{display:block;font-size:18px}.primary-button,.secondary-button{border:0;border-radius:5px;background:var(--deep-moss);color:#fff;padding:11px 15px;font-weight:800;font-size:11px;display:flex;gap:15px;align-items:center}.primary-button:hover,.secondary-button:hover{background:#24483f}.recommendation{display:flex;gap:10px;margin:20px 0 18px}.recommendation-mark{color:var(--amber)}.recommendation p{margin:0;color:#5f6d65;font-size:12px;line-height:1.6}.focus-meta{display:flex;gap:20px;color:var(--muted);font-size:10px}
.task-count{font-size:11px;color:var(--muted);padding-top:5px}.task-list{margin:16px 0 10px}.task-item{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #ebe9e2;cursor:pointer}.task-item input{display:none}.checkmark{width:17px;height:17px;display:grid;place-items:center;border:1px solid #bdc7bd;border-radius:50%;color:white;font-size:10px;flex-shrink:0}.task-item.completed .checkmark{background:var(--moss);border-color:var(--moss)}.task-item.completed .task-text{color:#9a9e97;text-decoration:line-through}.task-text{flex:1}.task-text strong{font-size:12px;display:block}.task-text small{color:var(--muted);font-size:10px;display:block;margin-top:3px}.task-tag{font-size:9px;color:var(--deep-moss);background:var(--mint);padding:4px 6px}.task-tag.muted{color:var(--muted);background:#eeeee9}.add-task{display:flex;gap:8px;margin-top:15px}.add-task input{border:0;border-bottom:1px solid var(--line);background:transparent;outline:0;padding:8px 0;flex:1;font-size:11px}.add-task button{border:0;background:none;color:var(--moss);font-size:11px;font-weight:800}
.cue-label{color:var(--deep-moss);background:var(--mint)}.wellness-content{display:flex;align-items:center;gap:21px;margin:23px 0 18px}.breath-orb{width:82px;height:82px;flex-shrink:0;border-radius:50%;background:#e0ede4;display:grid;place-items:center;position:relative;color:var(--moss);font:10px 'DM Mono';animation:breathe 5s ease-in-out infinite}.breath-orb:before{content:'';position:absolute;width:60px;height:60px;border:1px solid #a9c9b0;border-radius:50%}@keyframes breathe{0%,100%{transform:scale(.94)}50%{transform:scale(1.04)}}.wellness-content h4{font-size:14px;margin:0 0 7px}.wellness-content p{font-size:11px;color:var(--muted);line-height:1.5;margin:0 0 14px}.secondary-button{padding:8px 10px;font-size:10px}.cue-progress{display:flex;gap:4px}.cue-progress span{height:3px;flex:1;background:#d5dfd6;border-radius:2px}.cue-progress span:first-child{background:var(--moss)}.footer-note{display:flex;justify-content:space-between;color:#a1a39c;font:9px 'DM Mono';margin-top:30px;letter-spacing:.4px}.toast{position:fixed;right:25px;bottom:25px;background:var(--ink);color:white;padding:12px 16px;border-radius:5px;font-size:11px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translateY(0)}
body.high-stress .state-banner{background:#744f48} body.high-stress .state-icon{background:#93655d} body.high-stress .priority-badge{color:#a35e51;background:#f3dfda} body.high-stress .focus-card{background:#f7ece7;border-color:#eddbd5}
@media (max-width:900px){.sidebar{width:210px}.main-content{padding:0 28px 25px}.welcome-row h1{font-size:34px}.dashboard-grid,.lower-grid{grid-template-columns:1fr}}
@media (max-width:650px){.app-shell{display:block}.sidebar{width:100%;height:auto;padding:18px 16px;border-right:0;border-bottom:1px solid var(--line)}.workspace-label,.sidebar-bottom{display:none}.main-nav{flex-direction:row;overflow:auto;margin-top:20px}.nav-item{white-space:nowrap;font-size:11px}.main-content{padding:0 16px 25px}.topbar{height:61px}.breadcrumb span:first-child,.sync-label{display:none}.welcome-row{padding:34px 0 26px}.welcome-row h1{font-size:31px}.date-card{padding-left:14px}.date-number{font-size:43px}.state-banner{align-items:flex-start;padding:18px}.state-score{display:none}.dashboard-grid,.lower-grid{gap:14px;margin-top:14px}.panel{padding:18px}.focus-card{align-items:flex-start;gap:14px;flex-direction:column}.primary-button{width:100%;justify-content:space-between}.integration-grid{grid-template-columns:1fr}.integration-actions{align-items:stretch;flex-direction:column}.integration-actions .text-button{margin-left:0;text-align:left}.footer-note{display:block;line-height:1.8}.footer-note span{display:block}}
