@font-face{font-family:LifeSans;src:local('Inter'),local('Aptos'),local('Segoe UI');font-display:swap}
:root{--bg:#f7f8f4;--panel:#fff;--ink:#253c31;--muted:#7a867c;--line:#e7ebe4;--green:#2f6b4e;--green-soft:#eaf2e8;--purple:#9c90ba;--purple-soft:#f0edf7;--amber:#cd9d59;--amber-soft:#fbf2e4;--blue:#859ac0;--blue-soft:#edf1f9;--sidebar:242px;--shadow:0 4px 20px #213e2c03}
*{box-sizing:border-box}body{margin:0;font-family:LifeSans,'Segoe UI',sans-serif;font-size:14px;color:var(--ink);background:var(--bg);line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:wait;opacity:.65}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:600;letter-spacing:-.025em}h1{font-size:32px;line-height:1.25}h2{font-size:18px}h3{font-size:14px}small{font-size:12px}a,button,input,select,textarea{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8fad8e}.icon{display:inline-block;flex-shrink:0;vertical-align:middle}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#7c897c}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 17px;border-radius:9px;border:1px solid #dfe5dc;background:#fff;color:var(--ink);font-weight:600;font-size:12px;line-height:1.4;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}.button:hover{background:#f1f5ef;transform:translateY(-1px);box-shadow:0 4px 12px #213e2c08}.button.primary{background:#2d654b;border-color:#2d654b;color:white}.button.primary:hover{background:#204f39}.button.small{padding:8px 12px;font-size:11px}.button .icon{width:16px;height:16px}.text-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#4b735a;white-space:nowrap}.text-link .icon{height:14px;width:14px}.text-link:hover{text-decoration:underline}.icon-button{display:flex;justify-content:center;align-items:center;background:none;border:none;padding:7px;color:#7c8b80;border-radius:7px}.icon-button:hover{background:#edf2eb;color:var(--ink)}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--green);color:white;padding:12px}.skip-link:focus{top:10px}.app-shell{min-height:100vh}.sidebar{position:fixed;top:0;bottom:0;left:0;width:var(--sidebar);background:#fdfefa;border-right:1px solid var(--line);padding:31px 20px 0;z-index:30;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;align-items:center;gap:0;font-size:27px;font-weight:650;letter-spacing:-1px;line-height:1.2}.brand>span:not(.brand-mark):not(.brand-dot){font-weight:400}.brand .brand-mark{display:grid;place-items:center;background:#2b6147;color:#e4f0dc;width:36px;height:36px;border-radius:11px;margin-right:10px}.brand-mark .icon{height:25px;width:25px}.brand-dot{color:#72a376}.nav-caption{font-size:9px;letter-spacing:1.8px;color:#9aa194;font-weight:600;margin:45px 0 14px 12px}.nav-item{display:flex;align-items:center;gap:13px;border-radius:8px;padding:12px 13px;margin-bottom:5px;font-size:12px;color:#7c887e;transition:background .2s,color .2s}.nav-item>.icon{width:18px;height:18px}.nav-item:hover{background:#f1f5ed;color:var(--green)}.nav-item.active{background:#eaf1e5;color:#355f40;font-weight:650}.nav-item i{margin-left:auto;width:5px;height:5px;border-radius:50%;background:#5b8554}.nav-divider{height:1px;background:var(--line);margin:22px 9px}.sidebar-bottom{margin-top:auto;padding-top:35px}.pace-note{background:linear-gradient(125deg,#edf2e7,#f6f7ed);border:1px solid #e7ecde;border-radius:11px;padding:19px;margin-bottom:23px}.pace-note>span{color:#79956a}.pace-note h4{font-size:12px;margin:9px 0 6px}.pace-note p{font-size:11px;line-height:1.8;color:#8b947e}.pace-note a{font-size:10px;display:flex;align-items:center;justify-content:space-between;margin-top:16px;color:#5b7752}.pace-note a .icon{width:14px}.profile{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);margin:0 -20px;padding:20px 17px}.avatar{width:31px;height:31px;flex-shrink:0;background:#e7ecdf;color:#728265;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600}.profile>div{min-width:0;flex:1}.profile strong{display:block;font-size:11px}.profile small{display:block;font-size:9px;color:#92998d;overflow:hidden;text-overflow:ellipsis;max-width:130px}.profile .icon{width:16px;height:16px}.workspace{margin-left:var(--sidebar)}.topbar{height:78px;display:flex;justify-content:space-between;align-items:center;padding:0 39px;border-bottom:1px solid var(--line);background:#fdfefb}.breadcrumb{font-size:11px;color:#a1a89b}.breadcrumb span{margin:0 13px;color:#bdc3b6}.breadcrumb strong{color:#63735f;font-weight:500}.top-actions{display:flex;align-items:center;gap:20px}.date-pill{display:flex;align-items:center;gap:8px;color:#7c8977;font-size:10px}.date-pill .icon{width:14px;height:14px}.focus-launch{background:#f5f7f0;font-size:10px;padding:8px 12px}.main-content{max-width:1560px;margin:auto;padding:31px 39px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-heading .eyebrow{margin-bottom:8px;font-size:9px}.page-heading h1{font-size:29px}.page-description{color:#8b9487;font-size:12px;margin-top:8px}.welcome-banner{position:relative;overflow:hidden;min-height:251px;border:1px solid #dfe8d7;background:linear-gradient(110deg,#eaf2e2,#e2eedd);border-radius:14px;display:flex;align-items:center;justify-content:space-between;padding:29px 36px;margin-bottom:29px}.welcome-copy{z-index:1;position:relative}.tag{display:inline-flex;align-items:center;gap:6px;color:#6e8c61;font-size:8px;letter-spacing:1.4px;font-weight:650}.tag i{width:5px;height:5px;border-radius:50%;background:#7da46e}.welcome-copy h2{font-size:32px;font-weight:500;line-height:1.16;letter-spacing:-1px;margin:11px 0;color:#2c533c}.welcome-copy p{font-size:11px;color:#7c9270;line-height:1.8}.welcome-copy .button{margin-top:18px;font-size:10px;padding:10px 15px}.hero-art{width:335px;max-height:240px;position:absolute;right:52px;top:11px}.hero-caption{position:absolute;bottom:18px;right:78px;font-size:7px;letter-spacing:2.5px;color:#87a07c}.float-slow{animation:float 6s ease-in-out infinite}.delayed{animation-delay:-3s}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:24px 0 15px}.section-heading h2{font-size:15px}.section-heading .subtle{font-weight:400;font-size:10px;margin-left:10px;color:#9aA192;letter-spacing:0}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:23px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:18px 18px 13px;box-shadow:var(--shadow);min-width:0}.stat-label{display:flex;gap:9px;align-items:center;font-size:11px;color:#788372}.icon-tile{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:10px;flex-shrink:0}.icon-tile .icon{width:18px;height:18px}.icon-tile.green{background:var(--green-soft);color:#73966c}.icon-tile.purple{background:var(--purple-soft);color:#9c8db6}.icon-tile.amber{background:var(--amber-soft);color:#c2a06d}.icon-tile.blue{background:var(--blue-soft);color:#8b9fc4}.stat-value{font-size:29px;font-weight:550;letter-spacing:-1px;margin:12px 0;line-height:1.1}.stat-value small{font-size:9px;font-weight:400;letter-spacing:0;color:#9ca495;margin-left:3px}.stat-card>p{color:#969f90;font-size:9px;margin-top:11px}.progress{height:5px;background:#edf1e9;border-radius:4px;overflow:hidden}.progress span{display:block;height:100%;width:var(--progress);background:#8ead83;border-radius:inherit;animation:grow 1s ease both}.progress.purple{background:#f0edf6}.progress.purple span{background:#b0a4c9}.progress.amber{background:#faf0df}.progress.amber span{background:#d9b67c}.progress.blue{background:#edf0f8}.progress.blue span{background:#9dacce}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:20px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:23px;box-shadow:var(--shadow);min-width:0;animation:reveal .45s ease both}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.panel-heading h2{font-size:15px}.panel-heading p{font-size:10px;color:#a0a796;margin-top:4px}.segmented{display:flex;border:1px solid #e5eadd;border-radius:7px;padding:3px;gap:2px;white-space:nowrap}.segmented a{font-size:9px;padding:4px 8px;color:#8d9884;border-radius:4px}.segmented a.selected{background:#eef3e8;color:#587044}.chart-caption{font-size:8px;color:#acb29f;letter-spacing:1px;margin:9px 0}.chart-wrap{width:100%;overflow:hidden}.data-chart{display:block;width:100%;height:auto;min-height:165px;overflow:visible}.chart-grid{stroke:#eef1e9;stroke-dasharray:3 4}.axis{fill:#9da690;font-family:LifeSans,'Segoe UI',sans-serif;font-size:10px}.chart-bar{transform-box:fill-box;transform-origin:bottom;animation:bar-in .8s ease both;transition:opacity .2s}.chart-bar:hover{opacity:.65}.chart-legend{display:flex;justify-content:center;gap:19px;font-size:9px;color:#8f9982;flex-wrap:wrap;margin-top:6px}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{height:7px;width:7px;border-radius:2px}.chart-data{font-size:9px;color:#929c85;margin-top:14px}.chart-data summary{cursor:pointer;width:fit-content}.chart-data p{font-size:10px!important;padding:10px 0;line-height:1.6!important}.chart-data .table-scroll{max-height:230px;margin-top:10px}.balance-panel{text-align:center}.balance-panel .panel-heading{text-align:left}.balance-panel .panel-heading>.icon{color:#b8c5a5;width:17px}.balance-ring{height:145px;width:145px;margin:21px auto 17px;padding:12px;background:conic-gradient(#87aa72 calc(var(--ring) * 1%),#eef2e8 0);border-radius:50%;transform:rotate(-25deg)}.balance-ring>div{height:100%;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(25deg);box-shadow:inset 0 0 0 5px #f9faf6}.balance-ring strong{font-size:33px;font-weight:550;line-height:1.2}.balance-ring strong span{font-size:16px;color:#93a386}.balance-ring small{font-size:9px;color:#a3ad98;margin-top:5px}.balance-panel>p{font-size:10px;line-height:1.9;color:#9ba58f}.balance-key{display:flex;gap:12px;justify-content:center;margin-top:16px;font-size:8px;color:#91a083}.balance-key span{display:flex;align-items:center;gap:4px}.green-dot,.purple-dot,.amber-dot{display:inline-block;width:6px;height:6px;border-radius:50%}.green-dot{background:#83a37a}.purple-dot{background:#aaa0c1}.amber-dot{background:#d8b679}.suggestion-row{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #f0f2ec}.suggestion-row:last-child{border-bottom:0}.suggestion-row>div{flex:1}.suggestion-row h3{font-size:11px;letter-spacing:0}.suggestion-row p{font-size:9px;color:#a1aa96;margin-top:4px}.suggestion-row>.icon{width:16px;color:#a2b295;transition:transform .2s}.suggestion-row:hover>.icon{transform:rotate(90deg)}.panel-footnote{font-size:9px;color:#a5ad9b;margin-top:18px}.mini-goal{padding:12px 0 16px;border-bottom:1px solid #f0f2ec}.mini-goal:last-child{border:0;padding-bottom:3px}.mini-goal>div:first-child{display:flex;justify-content:space-between;font-size:9px;color:#a0aa92}.mini-category{font-size:8px;font-weight:650;letter-spacing:1.4px;color:#93a184}.mini-goal h3{font-size:11px;margin:6px 0 11px;letter-spacing:0}.mini-goal .progress{height:4px}.page-footer{display:flex;justify-content:space-between;gap:10px;margin-top:30px;padding:16px 0 0;border-top:1px solid var(--line);font-size:9px;color:#a3ab98}.page-footer span:first-child{display:flex;align-items:center;gap:7px}.page-footer i{height:5px;width:5px;border-radius:50%;background:#8da67f}.notice{display:flex;gap:10px;align-items:center;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:12px;border:1px solid #d9e8d5;background:#edf5e9;color:#386242}.notice.error{color:#a0443c;background:#fdf1ed;border-color:#efd8cf}.notice .icon{height:18px;width:18px}.two-columns{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.spaced{margin-top:24px}.day-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 25px;padding:20px 25px;border:1px solid #e3e9d9;background:#edf3e6;border-radius:11px}.day-strip h2{margin-top:6px}.date-picker{display:flex;align-items:center;gap:10px}.date-picker label{font-size:10px;color:#7a8a6a}.date-picker input{background:#fff;font-size:11px;padding:8px;border:1px solid #dfe7d6;border-radius:6px;color:var(--ink)}.task-row{display:flex;align-items:center;gap:13px;padding:17px 0;border-bottom:1px solid #edf1e7}.task-row:last-child{border-bottom:0}.task-row>div{flex:1;min-width:0}.task-row h3{font-size:12px;overflow-wrap:anywhere}.task-row p{font-size:10px;color:#9ca48f;margin-top:4px}.task-check{height:24px;width:24px;display:grid;place-items:center;border-radius:7px;border:1px solid #d9e1d0;background:#fff;flex-shrink:0}.task-check.done{background:#e9f1e0;color:#628449;border-color:#d7e3c9}.task-check .icon{width:15px;height:15px}.struck{text-decoration:line-through;color:#9ca68e}.tinted{background:#f0f4e9}.tinted>h2{margin:12px 0 6px}.tinted>p{font-size:11px}.quick-links{margin-top:20px}.quick-links a{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:15px 0;border-bottom:1px solid #e0e8d7}.quick-links a:hover{color:#72954b}.quick-links .icon{height:16px;width:16px}.reflection{padding:18px 0;border-bottom:1px solid #edf1e7}.reflection:last-child{border-bottom:0}.reflection h3{margin:6px 0}.reflection p{font-size:12px;color:#89977c;margin:7px 0;max-width:850px}.reflection .text-link{margin-top:7px}.movement-heatmap{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:22px 0}.heat-cell{aspect-ratio:1;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px}.heat-cell small{font-size:8px;opacity:.8;margin-top:3px}.level-0{background:#edf1ec;color:#9dab99}.level-2{background:#a8cbb3;color:#34543c}.level-3{background:#3d7b59;color:#edf5e9}.journal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.journal-card h3{margin:14px 0 6px}.journal-card p{font-size:11px;color:#97a187;min-height:49px}.journal-card>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:20px}.slim-banner{display:flex;gap:18px;align-items:center;padding:25px 28px;background:#eef3e8;border:1px solid #e0e7d6;border-radius:12px;margin-bottom:25px}.slim-banner.purple{background:#f0edf6;border-color:#e5dfee}.slim-banner.amber{background:#faf1e3;border-color:#f0e4d1}.slim-banner p{color:#8d957e;font-size:12px;max-width:740px;margin-top:6px}.slim-banner>div:not(.banner-number){flex:1}.banner-number{font-size:29px;text-align:center;min-width:100px;line-height:1.1}.banner-number small{display:block;font-size:9px;color:#9aa189;margin-top:8px;white-space:nowrap}.project-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.board-column{background:#eef1e9;border:1px solid #e8edde;border-radius:12px;padding:14px;min-width:0}.board-title{display:flex;align-items:center;gap:7px;margin:4px 0 15px}.board-title h2{font-size:12px;flex:1}.board-title>span{font-size:10px;color:#98a28c}.board-empty{padding:27px 5px;color:#a0aa92;font-size:11px;text-align:center;border:1px dashed #dbe3cd;border-radius:8px}.project-card{background:#fff;border:1px solid #e5ebdc;border-radius:9px;padding:17px;margin-bottom:12px}.project-card h3{margin:14px 0 9px}.project-card p{font-size:11px;color:#97a087;overflow-wrap:anywhere}.project-tech{display:flex;gap:4px;flex-wrap:wrap;margin:15px 0}.project-tech span{font-size:8px;background:#f3f4ed;padding:3px 6px;border-radius:4px;color:#8a9975}.progress-label{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#98a18b;margin:17px 0 9px}.progress-label strong{font-weight:500;color:#758562}.card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px;border-top:1px solid #eef1e6;padding-top:13px;font-size:9px;color:#9aa38d;flex-wrap:wrap}.session-row{display:flex;align-items:center;gap:15px;border-bottom:1px solid #edf1e7;padding:17px 0}.session-row:last-child{border-bottom:0}.session-row>div{flex:1;min-width:0}.session-row h3{font-size:12px;overflow-wrap:anywhere}.session-row p{font-size:10px;color:#99a28a;margin-top:5px}.session-time{background:var(--purple-soft);color:#8f83ad;width:48px;min-width:48px;height:49px;border-radius:10px;font-size:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;line-height:1.2}.session-time small{font-size:8px;font-weight:400;margin-top:3px}.session-time.amber{background:var(--amber-soft);color:#b7955c}.badge{display:inline-flex;padding:4px 8px;border-radius:5px;font-size:8px;letter-spacing:.2px;white-space:nowrap}.badge.green{background:#edf4e7;color:#7d9a63}.badge.muted{background:#f2f3ed;color:#9ca58b}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.course-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.course-art{height:133px;background:linear-gradient(110deg,#eeebf6,#e8e3f1);position:relative;padding:25px;color:#aa9dc0}.course-art>span:first-child{display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:#ffffff85;color:#9f90b9}.course-art .icon{height:25px;width:25px}.course-art>svg{position:absolute;width:150px;right:10px;top:25px;color:#c2b7d4}.course-number{position:absolute;bottom:16px;left:26px;font-size:7px;letter-spacing:1.8px;color:#a79ab9}.course-content{padding:22px;flex:1;display:flex;flex-direction:column}.course-status{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#9ca48f;margin-bottom:14px}.course-content h3{font-size:16px;line-height:1.5}.course-content>p{font-size:11px;color:#a0a78f;margin:10px 0 20px;flex:1}.goals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.goal-card{display:flex;flex-direction:column}.goal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.goal-card h2{font-size:19px;line-height:1.35;margin:8px 0 13px}.goal-card>p{font-size:12px;color:#929d82;line-height:1.9;flex:1}.goal-meta{font-size:9px;color:#99a28a;display:flex;justify-content:space-between;gap:10px;margin:18px 0 0;flex-wrap:wrap}.goal-meta .icon{width:12px;height:12px}.goal-meta span{display:flex;align-items:center;gap:5px}.review-date{color:#b08e53}.gentle-note{display:flex;gap:12px;align-items:center;font-size:12px;line-height:1.8;background:#f1f4e9;border:1px solid #e5ebd8;color:#8b9875;border-radius:10px;padding:17px 20px;margin-bottom:23px}.gentle-note strong{color:#708359;font-weight:600}.gentle-note .icon{width:18px;height:18px}.gentle-note a{text-decoration:underline;color:#54713b}.review-prompts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.prompt-number{font-size:29px;line-height:1;color:#c2d1b1;font-weight:300}.review-prompts h3{font-size:15px;margin:20px 0 10px}.review-prompts p{font-size:12px;line-height:1.8}.settings-list{margin:24px 0}.settings-list>div{display:flex;justify-content:space-between;gap:12px;padding:17px 0;border-bottom:1px solid #edf1e6;font-size:12px}.settings-list strong{font-weight:500}.settings-list small{color:#9ba489;font-size:10px;font-weight:400}.two-columns>.panel>.eyebrow+h2{margin:12px 0}.two-columns>.panel>.muted{font-size:12px;line-height:1.8}.empty-state{text-align:center;padding:36px 20px}.empty-icon{display:grid;place-items:center;width:49px;height:49px;background:#f0f4e9;color:#9eb28b;border-radius:14px;margin:0 auto 17px}.empty-state h3{font-size:15px;margin-bottom:8px}.empty-state p{font-size:12px;color:#9ca68a;max-width:360px;margin:0 auto 21px;line-height:1.8}.record-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:27px;padding-bottom:22px;border-bottom:1px solid #edf1e6}.record-toolbar form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}.record-toolbar form label{width:100%;font-size:10px;color:#91a079}.record-toolbar select,.record-search input{padding:9px;border:1px solid #e0e6d6;border-radius:7px;background:#fff;color:var(--ink);font-size:11px;max-width:290px}.record-search label{display:block;font-size:10px;color:#91a079;margin-bottom:8px}.table-scroll{overflow:auto;max-width:100%;border:1px solid #e9eee1;border-radius:8px}table{border-collapse:collapse;width:100%;font-size:11px;text-align:left}th{background:#f5f7ef;padding:13px 16px;font-size:9px;font-weight:600;color:#8a9975;white-space:nowrap;border-bottom:1px solid #e7edde}td{padding:14px 16px;border-bottom:1px solid #edf1e5;color:#889779;vertical-align:top;min-width:90px;max-width:330px}td>span{display:block;max-width:300px;min-width:75px;overflow-wrap:anywhere}tr:last-child td{border-bottom:0}tr:hover td{background:#fafbf7}.editor-layout{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(230px,1fr);gap:28px}.editor{padding:30px}.editor-aside{padding:25px 10px}.editor-aside h3{font-size:20px;margin:19px 0 12px}.editor-aside p,.editor-aside li{color:#99a68a;font-size:12px;line-height:1.9}.editor-aside ul{padding-left:18px;margin:22px 0}.editor-aside .gentle-note{font-size:11px;padding:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:27px}.field{display:flex;flex-direction:column;gap:8px}.field.wide{grid-column:1/-1}.field label{font-size:11px;color:#7a8c69;font-weight:500}.required{color:#aaa88b}.field input,.field select,.field textarea{width:100%;padding:11px 12px;color:var(--ink);background:#fcfdf9;border:1px solid #dfe7d4;border-radius:7px;min-height:40px;font-size:12px;transition:border-color .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8aa670}.field textarea{resize:vertical;line-height:1.8}.field small{font-size:9px;color:#9dab8b}.check-field{display:flex;align-items:center;gap:10px;font-size:11px;color:#7c8b6d;cursor:pointer;min-height:37px}.check-field input{width:17px;height:17px;accent-color:#658749}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:25px;margin-top:27px;border-top:1px solid #edf1e5}.form-footer>span{font-size:10px;color:#a0aa91}.mobile-menu{display:none}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-story{background:#e8f0e0;padding:48px 70px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;position:relative;overflow:hidden}.auth-story>.brand{position:relative;z-index:2}.auth-story>div{margin:50px 0 210px;position:relative;z-index:1}.auth-story h1{font-size:59px;font-weight:400;line-height:1.12;letter-spacing:-2.6px;margin:23px 0}.auth-story p:not(.eyebrow){font-size:14px;line-height:1.9;color:#869976}.auth-story .hero-art{position:absolute;top:280px;right:-12px;width:320px;opacity:.95}.auth-footer{font-size:8px;letter-spacing:2px;color:#93a482}.auth-form{display:flex;align-items:center;justify-content:center;padding:50px;background:#fdfefb}.auth-inner{max-width:360px;width:100%}.auth-inner h2{font-size:33px;letter-spacing:-1px;margin:14px 0 9px}.auth-inner>.muted{font-size:12px;line-height:1.9}.auth-fields{display:flex;flex-direction:column;gap:23px;margin-top:33px}.auth-fields .button{margin-top:5px;padding:13px}.auth-fields input{padding:13px;font-size:12px}.auth-switch{font-size:11px;text-align:center;color:#9ba58e;margin:23px 0 40px}.auth-switch a{font-weight:600;color:#597b44}.auth-note{padding-top:24px;border-top:1px solid #edf1e4;display:flex;align-items:center;gap:12px;color:#9bab8a;font-size:10px;line-height:1.8}.auth-note .icon{width:26px;height:26px;color:#aabd97}.auth-inner .notice{margin-top:20px;font-size:11px}dialog{max-width:470px;width:calc(100% - 32px);border:1px solid #e0e8d4;border-radius:18px;background:#fcfdf8;color:var(--ink);padding:29px;box-shadow:0 20px 100px #213e2c30}dialog::backdrop{background:#253c3160;backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dialog-head button{font-size:24px}dialog h2{font-size:24px}dialog>.muted{font-size:12px;margin-top:9px}.timer-face{font-size:76px;line-height:1.2;font-weight:300;letter-spacing:-4px;text-align:center;padding:33px 0 10px;font-variant-numeric:tabular-nums}.timer-actions{display:flex;gap:12px;justify-content:center;margin:23px 0 30px}#timer-status{text-align:center;color:#91a078;font-size:11px}.timer-log{border-top:1px solid #e4ecd8;padding-top:20px;display:flex;gap:16px;flex-wrap:wrap;font-size:11px;color:#788e5f}.timer-log span{width:100%;color:#a0ad8c}.timer-log a{text-decoration:underline}.focus-launch.running{border-color:#83a170;background:#e8f1de}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes reveal{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes grow{from{width:0}to{width:var(--progress)}}@keyframes bar-in{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media(min-width:1550px){:root{--sidebar:260px}.main-content{padding-left:48px;padding-right:48px}.welcome-banner{min-height:280px}.hero-art{right:100px;width:385px;max-height:260px}.hero-caption{right:151px}.stat-card{padding:23px}.panel{padding:26px}.course-card{padding:0}}
@media(max-width:1200px){:root{--sidebar:215px}.sidebar{padding-left:15px;padding-right:15px}.profile{margin:0 -15px;padding:20px 12px}.main-content{padding:26px}.topbar{padding:0 26px}.hero-art{right:15px;width:300px}.hero-caption{right:53px}.welcome-banner{padding:27px}.welcome-copy h2{font-size:29px}.stats-grid{gap:11px}.stat-card{padding:15px}.stat-label{font-size:10px;gap:7px}.stat-label .icon-tile{width:27px;height:27px;border-radius:8px}.stat-value small{display:block;margin-top:8px}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr)}.panel{padding:19px}.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-board{grid-template-columns:repeat(2,minmax(0,1fr))}.course-grid,.goals-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-card{padding:0}.record-toolbar{flex-wrap:wrap}.auth-story{padding:45px}.auth-story h1{font-size:49px}}
@media(max-width:950px){:root{--sidebar:195px}.nav-item{gap:10px;font-size:11px;padding:11px 10px}.nav-caption{font-size:8px}.dashboard-grid{grid-template-columns:1fr}.balance-panel{display:none}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value small{display:inline}.two-columns{grid-template-columns:1fr}.hero-art{width:240px;top:38px;right:-7px;opacity:.85}.welcome-copy h2{font-size:27px}.welcome-banner{min-height:255px}.welcome-copy p{font-size:10px}.hero-caption{right:35px;font-size:6px}.top-actions{gap:10px}.date-pill{display:none}.page-heading{align-items:flex-start}.page-heading>.button{font-size:9px;padding:9px}.page-description{font-size:11px;max-width:330px}.main-content{padding:23px}.section-heading .subtle{display:none}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.three .stat-value small{display:block}.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-layout{grid-template-columns:1fr}.editor-aside{display:none}.goals-grid,.course-grid{grid-template-columns:1fr}.review-prompts{grid-template-columns:1fr}.auth-story{padding:40px}.auth-story h1{font-size:43px}.auth-story .hero-art{width:270px;top:275px}.auth-form{padding:30px}.auth-inner h2{font-size:29px}}
@media(max-width:700px){.sidebar{transform:translateX(-100%);transition:transform .25s;width:242px;box-shadow:15px 0 50px #213e2c15}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.mobile-menu{display:flex;margin-right:10px}.topbar{height:65px;padding:0 18px;justify-content:flex-start}.breadcrumb{font-size:10px;flex:1}.breadcrumb span{margin:0 7px}.top-actions{margin-left:8px}.focus-launch{font-size:9px;padding:7px 9px}.focus-launch .icon{height:12px;width:12px}.main-content{padding:23px 18px 18px}.page-heading{gap:12px;margin-bottom:21px}.page-heading .eyebrow{font-size:7px;letter-spacing:1.3px}.page-heading h1{font-size:25px}.page-description{font-size:10px;max-width:235px}.page-heading>.button{font-size:8px;padding:8px;gap:5px;margin-top:15px;white-space:normal;text-align:center;max-width:118px}.welcome-banner{padding:25px;min-height:260px}.welcome-copy h2{font-size:29px}.hero-art{width:240px;right:-20px;top:47px;opacity:.8}.hero-caption{right:14px;font-size:6px;letter-spacing:1.3px}.welcome-copy .button{font-size:9px}.section-heading h2{font-size:14px}.section-heading>.text-link{font-size:9px}.stats-grid{gap:12px}.stat-label{font-size:10px}.stat-value{font-size:28px}.stat-value small{display:block;font-size:8px}.stat-card>p{font-size:8px}.panel{padding:18px}.dashboard-grid{gap:17px}.panel-heading h2{font-size:14px}.panel-heading p{font-size:9px}.data-chart{min-height:165px}.page-footer{font-size:8px}.day-strip{flex-wrap:wrap;padding:18px}.date-picker input{width:142px}.day-strip h2{font-size:17px}.date-picker{gap:8px}.three{grid-template-columns:1fr}.three .stat-value small{display:inline}.journal-grid{gap:12px}.journal-card>div{flex-wrap:wrap}.journal-card .button{font-size:9px}.journal-card p{font-size:10px}.slim-banner{padding:20px;gap:13px;flex-wrap:wrap}.slim-banner h2{font-size:16px}.slim-banner p{font-size:11px}.banner-number{font-size:25px;min-width:70px}.banner-number small{font-size:8px}.project-board{grid-template-columns:1fr}.course-card{padding:0}.course-grid{gap:16px}.goal-card{padding:23px}.gentle-note{font-size:11px;padding:15px}.session-row{gap:10px}.session-row>.badge{display:none}.session-row>.text-link{font-size:9px}.session-row h3{font-size:11px}.session-row p{font-size:9px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.form-footer{flex-wrap:wrap}.form-footer .button{width:100%}.record-toolbar form{width:100%}.record-toolbar select{max-width:230px}.record-search{flex:1;min-width:160px}.record-search input{width:100%}.record-toolbar>.button{font-size:10px}.settings-list>div{font-size:11px}.settings-list small{font-size:9px}.auth-layout{grid-template-columns:1fr}.auth-story{min-height:unset;padding:25px;display:block}.auth-story>div{margin:35px 0 25px}.auth-story h1{font-size:35px;letter-spacing:-1px}.auth-story h1 br{display:none}.auth-story p:not(.eyebrow){font-size:11px;line-height:1.7}.auth-story .hero-art,.auth-footer{display:none}.auth-form{padding:35px 27px 50px}.auth-inner{max-width:420px}.auth-inner h2{font-size:29px}.auth-note{font-size:10px}}
@media(max-width:420px){.hero-art{right:-67px;width:205px;opacity:.55;top:80px}.welcome-copy p{max-width:205px}.welcome-banner{padding:22px}.welcome-copy h2{font-size:28px}.hero-caption{display:none}.journal-grid{grid-template-columns:1fr}.breadcrumb{font-size:9px}.breadcrumb span{margin:0 5px}.focus-launch{font-size:8px}.stat-value small{font-size:7px}.stat-card{padding:13px}.stat-label{font-size:9px}.date-picker label{display:none}.panel-heading>.button{font-size:9px}.panel-heading .text-link{font-size:9px}.settings-list>div{flex-wrap:wrap}.goal-meta{font-size:8px}}
@media(max-height:850px) and (min-width:701px){.sidebar{padding-top:25px}.nav-caption{margin-top:30px}.nav-item{padding-top:10px;padding-bottom:10px}.sidebar-bottom{padding-top:18px}.pace-note{padding:14px;margin-bottom:16px}.pace-note p{line-height:1.5}.pace-note h4{margin-top:6px}.pace-note a{margin-top:10px}.nav-divider{margin-top:16px;margin-bottom:16px}.profile{padding-top:16px;padding-bottom:16px}}
@media(max-height:730px) and (min-width:701px){.pace-note{display:none}.sidebar-bottom{padding-top:16px}.nav-caption{margin-top:23px}.nav-item{margin-bottom:3px}.nav-divider{margin-top:12px;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.chart-mobile{display:none}.page-description{font-size:12px;color:#788670}.panel-heading p,.suggestion-row p,.stat-card>p,.mini-goal>div:first-child,.panel-footnote,.chart-data,.balance-panel>p{color:#7f8d72}.stat-card>p{font-size:10px}.stat-value small{font-size:10px;color:#8a977e}.suggestion-row h3,.mini-goal h3{font-size:12px}.suggestion-row p{font-size:10px}.panel-heading p{font-size:11px}.chart-legend{color:#7b8b6c;font-size:10px}.chart-data{font-size:10px}.panel-footnote{font-size:10px}.axis{fill:#839371}.page-description,.panel-heading p,.suggestion-row p{line-height:1.7}
@media(max-width:700px){.chart-mobile{display:block}.chart-desktop{display:none}.chart-mobile .data-chart{min-height:0}.stat-value small{font-size:9px}.stat-card>p{font-size:9px}.panel-heading p{font-size:10px}.chart-legend{font-size:9px}.page-description{font-size:11px}.panel-footnote{font-size:9px}}
@media(max-width:420px){.hero-art{width:160px;right:-18px;top:150px;opacity:.65}.welcome-copy p{font-size:10px}.stat-label{font-size:9px}.stat-value small{font-size:8px}}
