@font-face{font-family:Inter;src:url('/assets/inter-400.ttf')}*{box-sizing:border-box}body{margin:0;background:#faf7f2;color:#352f35;font:16px/1.6 Inter,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid #cbbec8;background:#fffdf9;color:#4c3648;border-radius:9px;min-height:44px;padding:10px 16px;font-weight:600;font-size:14px}button:hover{background:#f2eaf0;border-color:#8f7486}button:disabled{cursor:default;opacity:.5}button.primary{background:#50384c;color:#fff;border-color:#50384c}button.primary:hover{background:#684a61}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a15f39;outline-offset:4px}.skip{position:absolute;top:-100px}.skip:focus{top:12px;z-index:20;background:white;padding:15px}.demo-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#352c34;color:#f5edf2;padding:10px 28px;font-size:11px}.demo-bar>span{font-size:9px;letter-spacing:.14em}.demo-bar button{border-color:#8c7986;color:#fff;background:transparent;font-size:11px;min-height:35px;padding:6px 12px}.layout{display:grid;grid-template-columns:245px 1fr;min-height:calc(100vh - 55px);max-width:1680px;margin:auto}.sidebar{border-right:1px solid #e4dcd5;padding:36px 25px;background:#f5f0e9;display:flex;flex-direction:column}.brand{font-size:32px;font-weight:750;letter-spacing:-.06em;display:flex;align-items:center;color:#50384c;line-height:1}.brand-icon{font-size:37px;font-weight:400;color:#b4774e;margin-right:10px}.brand-dot{color:#b4774e}.brand-note{font-size:11px;color:#84727b;margin:14px 0 40px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.nav-button{display:flex;align-items:center;gap:13px;text-align:left;border:0;background:transparent;color:#786771;font-weight:500;min-height:49px}.nav-button svg{width:20px;height:20px;flex:none;stroke-width:1.6}.nav-button[aria-current=page]{background:#e8dde5;color:#4d3347;font-weight:650}.sidebar-bottom{margin-top:auto;padding-top:65px}.sidebar-bottom p{font-size:17px;line-height:1.4;color:#806e79;letter-spacing:-.02em}.sidebar-bottom a{font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.sidebar-bottom small{display:block;font-size:10px;color:#88777f;margin-top:25px;line-height:1.5}.main-shell{padding:0 44px;min-width:0;max-width:1200px;width:100%;margin:auto}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0;border-bottom:1px solid #e4dcd5;font-size:12px;color:#8a7781}header button{display:flex;align-items:center;gap:10px;border:0;background:none;padding:0;font-size:12px;color:#64525e}header button>span{display:grid;place-items:center;width:32px;height:32px;background:#e7dbe3;border-radius:50%;font-size:12px}.page-head{margin:32px 0 28px;display:flex;justify-content:space-between;align-items:end;gap:20px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(31px,3.3vw,45px);font-weight:550;line-height:1.15;letter-spacing:-.05em;margin-bottom:10px}h2{font-size:24px;font-weight:550;line-height:1.2;letter-spacing:-.035em;margin-bottom:14px}h3{font-size:18px;line-height:1.3;letter-spacing:-.02em;margin-bottom:10px}.page-head p{font-size:14px;color:#897680;margin:0;max-width:590px}.eyebrow{font-size:9px;letter-spacing:.14em;font-weight:700;color:#8e7484;margin:0 0 12px}.dashboard{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px}.card{border:1px solid #e1d8d0;border-radius:15px;background:#fffdf9;padding:26px;margin-bottom:24px;min-width:0}.hero-card{position:relative;background:#eadfe6;border-color:#e0cfdc;padding:32px;color:#50384c;overflow:hidden}.hero-card:after{content:'';position:absolute;width:170px;height:170px;right:-65px;top:-75px;border:30px solid #d7bfce;border-radius:50%;opacity:.45;pointer-events:none}.hero-card h2{font-size:32px;line-height:1.13;max-width:330px;letter-spacing:-.045em;margin-bottom:18px}.hero-card .duration{font-size:12px;font-weight:600;color:#866c7d;margin-bottom:22px}.hero-card p:not(.eyebrow){font-size:14px;max-width:370px;color:#806578;position:relative}.hero-card .footnote{font-size:11px!important;margin:18px 0 0!important}.time-pills{display:flex;gap:8px;margin:16px 0 24px;flex-wrap:wrap}.time-pills button{background:#f4eaf1;border-color:#cfb9c9;color:#654c5e;font-size:12px;padding:7px 12px;min-height:38px}.time-pills [aria-pressed=true]{background:#50384c;color:#fff;border-color:#50384c}.card-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.card-title h2{margin:0;font-size:21px}.text-button{border:0;padding:0;background:none!important;color:#895f7a;font-size:12px;min-height:30px;text-decoration:underline;text-underline-offset:4px}.row{display:flex;align-items:center;gap:15px;padding:15px 0;border-top:1px solid #ece5df}.row:first-of-type{border-top:0}.row-body{flex:1;min-width:0}.row-body strong{font-size:14px;font-weight:600;display:block}.row-body small{display:block;font-size:11px;color:#95838b;margin-top:4px;overflow-wrap:anywhere}.activity-icon{display:grid;place-items:center;flex:none;width:39px;height:39px;border-radius:11px;background:#eee5dd;color:#a0714f}.activity-icon svg{width:21px;height:21px;stroke-width:1.5}.activity-icon.purple{background:#eee3ec;color:#8c6782}.activity-icon.green{background:#e5ede2;color:#6b8261}.check-button{border-radius:50%;width:30px;height:30px;min-height:30px;padding:0;font-size:14px;border-color:#c9b9c4;background:white;flex:none}.check-button.done{background:#e3eddd;color:#50703e;border-color:#bccfaf}.row>button:last-child:not(.check-button){font-size:11px;padding:7px 10px;min-height:34px}.checkin-values{display:grid;grid-template-columns:1fr 1fr;gap:18px}.checkin-values>div{background:#f7f2ed;padding:17px;border-radius:9px}.checkin-values strong{display:block;font-size:23px;font-weight:500;letter-spacing:-.04em;color:#594451;line-height:1.3}.checkin-values small{display:block;font-size:10px;color:#947d8a;margin-top:4px}.checkin-values span{font-size:12px;font-weight:400;color:#947d8a}.water-card{background:#eaf0e6;border-color:#d5dfce;color:#53624b}.water-card .eyebrow{color:#75856b}.water-top{display:flex;justify-content:space-between;gap:18px;align-items:center}.water-top strong{font-size:36px;line-height:1;letter-spacing:-.04em;font-weight:500}.water-top strong>span{font-size:15px;color:#869279;margin-left:7px}.water-top p{font-size:11px;color:#819075;margin:8px 0 0}.water-dots{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.water-dots>span{width:25px;height:29px;border:1px solid #b6c7a9;border-radius:4px 4px 9px 9px;background:#f8fbf3}.water-dots>.filled{background:#849c70;border-color:#849c70}.water-actions{display:flex;gap:12px;align-items:center}.water-actions button{color:#4b6340;border-color:#aabd9b;background:#f8fbf4;font-size:12px}.water-actions .text-button{color:#667e5a;font-size:11px}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:12px 0 0}.week-strip>div{text-align:center;color:#ad999f;font-size:10px;padding:11px 0;border-radius:8px}.week-strip>div.today{background:#eee3e9;color:#6f4f63}.week-strip>div>span{display:block}.week-strip b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;margin:6px auto 0;font-size:11px;color:#9e8995;font-weight:500}.week-strip .active b{background:#dfe9d8;color:#5b774c}.muted{font-size:13px;color:#927c89;line-height:1.65}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#715a69}input,select,textarea{width:100%;min-width:0;min-height:44px;border:1px solid #cdbec6;border-radius:8px;padding:10px;background:#fffefa;color:#4c3545;font-size:16px}textarea{min-height:90px;resize:vertical}.full{grid-column:1/-1}.form-actions{display:flex;gap:14px;align-items:center;margin-top:23px}.form-actions small{font-size:11px;color:#927c89}.day-list{display:grid;gap:12px}.day-row{display:grid;grid-template-columns:80px 1fr auto;gap:25px;align-items:center;padding:23px 25px;background:#fffdf9;border:1px solid #e1d8d0;border-radius:12px}.day-row.current{border-color:#af8d9e;background:#fffafc}.day-date{font-size:12px;font-weight:650;color:#89707e}.day-date>strong{font-size:25px;line-height:1.3;display:block;font-weight:500;color:#614657;letter-spacing:-.03em}.day-info{display:flex;align-items:center;gap:15px}.day-info strong{font-size:16px;display:block;font-weight:550}.day-info small{font-size:12px;color:#927e89;display:block;margin-top:3px}.day-actions{display:flex;align-items:center;gap:15px}.day-actions>button{font-size:12px;padding:8px 13px}.rest-text{font-size:12px;color:#927e89}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:25px}.stat{padding:24px;background:#fffdf9;border:1px solid #e1d8d0;border-radius:13px}.stat strong{display:block;font-size:36px;line-height:1.3;font-weight:500;letter-spacing:-.05em;color:#64465a}.stat small{display:block;font-size:11px;color:#927b87;margin-top:5px}.bars{display:grid;grid-template-columns:repeat(7,1fr);gap:14px;align-items:end;height:200px;padding:20px 5px 0}.bar{height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center;font-size:10px;color:#9b8290}.bar i{display:block;border-radius:7px 7px 3px 3px;width:65%;background:#bea0b3;min-height:3px;margin:7px 0}.bar b{font-weight:500;font-size:11px}.summary-note{border-top:1px solid #e4d9df;padding-top:19px;margin:22px 0 0;font-size:13px;color:#8b7282}.interests{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px}.interests label{display:flex;align-items:center;gap:8px;background:#f5edf2;border:1px solid #dacbd5;padding:8px 13px;border-radius:8px;font-size:12px;color:#72576a}.interests input{width:17px;height:17px;min-height:0;accent-color:#795a71}.type-tags{display:flex;flex-wrap:wrap;gap:9px}.type-tags span{background:#f0e6ee;color:#7d5d74;padding:6px 12px;border-radius:6px;font-size:11px}.empty{font-size:13px;color:#927c89;padding:20px 0;margin:0}footer{padding:18px 0 30px;font-size:10px;color:#9a8792;max-width:800px;line-height:1.7}dialog{width:min(560px,calc(100% - 32px));max-height:90vh;overflow:auto;background:#fffaf6;border:1px solid #cdbcc8;border-radius:17px;padding:27px;color:#50384c;box-shadow:0 25px 90px #34233430}dialog::backdrop{background:#35283388}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.dialog-head h2{font-size:25px;margin:0}.dialog-head button{border:0;font-size:24px;background:transparent;padding:3px 10px}#formError{font-size:12px;color:#a33343;margin:16px 0 0}#toast{display:none;position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 22px;background:#50384c;color:white;font-size:13px;border-radius:9px;max-width:90vw;z-index:30;box-shadow:0 4px 20px #35233425}#toast.show{display:block}@media(max-width:1150px){.layout{grid-template-columns:205px 1fr}.sidebar{padding:32px 20px}.main-shell{padding:0 28px}.dashboard{gap:20px}.card{padding:23px}.hero-card{padding:28px}.hero-card h2{font-size:29px}.sidebar .brand{font-size:29px}.page-head h1{font-size:37px}.day-row{gap:18px;grid-template-columns:65px 1fr auto}}@media(max-width:930px){.layout{grid-template-columns:1fr}.sidebar{padding:24px 25px 0;border:0;background:transparent;display:block}.brand{font-size:30px}.brand-note,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row;margin-top:25px;padding-bottom:14px;gap:8px;border-bottom:1px solid #e4dcd5}.nav-button{flex:1;justify-content:center;font-size:12px;gap:8px;padding:9px 11px;min-height:44px}.main-shell{padding:0 25px}header{padding:19px 0}.demo-bar{padding:10px 24px}.demo-bar>span{display:none}.page-head{margin-top:25px}.page-head h1{font-size:36px}}@media(max-width:650px){.dashboard{grid-template-columns:1fr;gap:0}.sidebar{padding:24px 20px 0}.sidebar nav{position:fixed;bottom:0;left:0;right:0;margin:0;padding:9px 10px max(9px,env(safe-area-inset-bottom));background:#fffaf5f5;backdrop-filter:blur(12px);border:0;border-top:1px solid #deced8;z-index:15;gap:3px}.nav-button{display:flex;flex-direction:column;gap:5px;font-size:10px;padding:6px 8px;min-height:51px;border-radius:8px}.nav-button svg{height:20px;width:20px}.main-shell{padding:0 20px}.demo-bar{padding:8px 15px;font-size:10px;gap:10px}.demo-bar button{font-size:10px;padding:5px 10px}.brand{font-size:29px}header{padding:20px 0;font-size:11px}header button{font-size:11px}.page-head{display:block;margin:24px 0}.page-head h1{font-size:35px}.page-head>button{margin-top:17px}.page-head p{font-size:14px}.hero-card{padding:28px}.hero-card h2{font-size:32px}.card{padding:24px;margin-bottom:20px}.day-row{grid-template-columns:45px 1fr;gap:14px;padding:19px}.day-date{font-size:10px}.day-date strong{font-size:22px}.day-actions{grid-column:2;justify-content:flex-start;margin-top:0}.day-info{gap:12px}.day-info small{font-size:11px}.day-actions>button{min-height:36px;font-size:11px}.day-actions .check-button{width:30px;padding:0;min-height:30px}.stats{gap:9px}.stat{padding:17px 13px}.stat strong{font-size:28px}.stat small{font-size:10px}.bars{gap:8px}.form-grid{gap:14px}footer{padding-bottom:95px;font-size:10px}#toast{bottom:90px;max-width:calc(100% - 30px);width:max-content}.card-title h2{font-size:22px}.time-pills button{padding-inline:16px}.form-actions{align-items:start}dialog{padding:23px}}@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s,border-color .15s}}
/* Readability: secondary copy remains readable on warm backgrounds. */
.page-head p,.muted,.row-body small,.day-info small,.rest-text,.stat small,.summary-note,.field,.form-actions small{color:#75616e}.row-body small,.checkin-values small,.water-top p,.day-info small,.stat small{font-size:12px}.hero-card p:not(.eyebrow){color:#6c5264}.hero-card .footnote{color:#785b6f}.card .eyebrow{color:#795c70}.sidebar-bottom small,footer{color:#806c78}.week-strip>div,.bar{color:#816878}.checkin-values small,.checkin-values span{color:#7b6271}.water-top p{color:#657758}.water-actions .text-button{color:#526d45}.day-date{color:#765967}.empty{color:#75616e}
