/* Hyvinn: explicit, accessible colours, shared by every view. */
:root{color-scheme:light;--paper:#f5f6f2;--surface:#fff;--ink:#182b26;--muted:#52635c;--green:#153f35;--green-hover:#235849;--green-soft:#eaf2ec;--gold:#ddbd72;--gold-ink:#775619;--gold-soft:#f7f0df;--line:#d7dfd8;--control:#71847b;--danger:#9c302a;--top:56px;--bottom:56px;--side:232px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}html{scroll-padding-top:calc(var(--top) + env(safe-area-inset-top) + 20px);scroll-behavior:smooth}body{margin:0;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{background:none}button:disabled{cursor:default;opacity:.55}a{color:inherit;text-decoration:none}a.text-link{text-decoration:underline;text-underline-offset:4px}p,h1,h2,h3,h4{margin:0}h1,h2,h3{line-height:1.2;text-wrap:balance}h1{font-size:clamp(32px,3.6vw,46px);font-weight:650;letter-spacing:-1.8px}h2{font-size:23px;letter-spacing:-.65px;font-weight:650}h3{font-size:18px;letter-spacing:-.35px;font-weight:650}p+p{margin-top:12px}img,svg{display:block}svg{width:22px;height:22px;flex:none}img{max-width:100%;object-fit:contain}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold-ink);outline-offset:4px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:#fff;padding:12px 22px;border:2px solid var(--green);border-radius:10px}.skip-link:focus{top:8px}.muted{color:var(--muted)}.small{font-size:13px}.eyebrow{display:block;font-size:10px;font-weight:750;letter-spacing:1.8px;line-height:1.7}.text-link{font-weight:650;min-height:44px;display:inline-flex;align-items:center;gap:8px}.text-link svg{width:17px}.tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:650;background:var(--green-soft);color:var(--green);padding:5px 10px;border-radius:7px}.tag.gold-tag{color:var(--gold-ink);background:var(--gold-soft)}
.topbar{position:fixed;inset:0 0 auto;z-index:50;height:calc(var(--top) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);background:#fff;border-bottom:1px solid var(--line)}.topbar-inner{height:var(--top);display:flex;align-items:center;padding:0 28px;gap:18px}.brand{display:flex;align-items:center;gap:10px;min-width:calc(var(--side) - 28px);font-size:27px;font-weight:750;letter-spacing:-1.4px;line-height:1}.brand img{width:38px;height:38px}.brand-sub{font-size:7px;font-weight:650;letter-spacing:1.3px;display:block;margin-top:6px}.top-actions{display:flex;gap:6px}.icon-button{display:inline-flex;justify-content:center;align-items:center;width:40px;height:40px;border:1px solid transparent;border-radius:11px;flex:none;color:var(--green)}.icon-button:hover{background:var(--green-soft)}.top-end{margin-left:auto;display:flex;align-items:center;gap:24px}.top-end select{border:1px solid var(--line);background:#fff;font-size:12px;font-weight:700;min-width:60px;height:38px;border-radius:10px;padding:0 9px}.help-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:650;min-height:44px}.menu-toggle{display:none}
.sidebar{position:fixed;left:0;top:calc(var(--top) + env(safe-area-inset-top));bottom:calc(var(--bottom) + env(safe-area-inset-bottom));width:var(--side);padding:32px 20px 20px;background:var(--green);color:#fff;display:flex;flex-direction:column;overflow-y:auto;z-index:40}.sidebar-welcome{padding:0 12px 25px}.sidebar-welcome .eyebrow{color:#caddce;font-size:9px}.sidebar-welcome p{font-size:24px;line-height:1.3;letter-spacing:-.7px;margin-top:13px}.sidebar-welcome em{font-family:Georgia,serif;color:#e8d5a6;font-weight:400}.sidebar nav{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;border-radius:11px;padding:12px 14px;min-height:47px;font-size:13px;font-weight:550;color:#e8f0e9;position:relative}.nav-item:hover{background:#235447}.nav-item[aria-current=page]{color:var(--green);background:#fff;font-weight:700}.nav-item svg{width:20px;height:20px}.nav-item[aria-current=page]::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold-ink);margin-left:auto}.sidebar-bottom{margin-top:auto;padding:28px 12px 0}.sidebar-bottom>p{font-size:12px;color:#d2e0d6;margin:10px 0 18px}.sidebar-bottom>a{font-size:12px;display:flex;gap:10px;align-items:center;min-height:44px;color:#fff}.pace-mark{font-family:Georgia,serif;font-style:italic;font-size:42px;line-height:1;color:#e3c78b;display:flex;align-items:center;gap:8px}.pace-mark span{font-size:20px;font-style:normal}
main{margin-left:var(--side);padding:calc(var(--top) + env(safe-area-inset-top) + 34px) 36px calc(var(--bottom) + env(safe-area-inset-bottom) + 36px);max-width:1576px;min-height:100svh;outline:none}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading .eyebrow{margin-bottom:9px;color:var(--muted)}.page-heading p{color:var(--muted);font-size:14px;margin-top:10px;max-width:590px}.page-heading h1{font-size:36px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:28px 0 17px}.section-heading .text-link{font-size:12px}.section-heading h2{font-size:21px}.surface{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;min-width:0}.surface>p{font-size:14px;color:var(--muted);margin-top:10px}.surface h2+p{margin-bottom:18px}.stack{display:grid;align-content:start;gap:20px}.two-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;align-items:start}.equal-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;border:1px solid var(--green);padding:11px 19px;border-radius:12px;background:var(--green);color:#fff;font-weight:650;font-size:13px;line-height:1.4}.button:hover{background:var(--green-hover)}.button svg{width:18px;height:18px}.button.secondary{color:var(--green);background:#fff;border-color:var(--control)}.button.secondary:hover{background:var(--green-soft)}.button.gold-button{color:#1c3027;background:var(--gold);border-color:var(--gold)}.button.gold-button:hover{background:#e8cf94}.button.danger{background:var(--danger);border-color:var(--danger);color:#fff}.button.full{width:100%}.button.compact{min-height:40px;padding:9px 14px;font-size:12px}.divider{height:1px;background:var(--line);margin:22px 0}.pillrow{display:flex;flex-wrap:wrap;gap:8px}.pill{border:1px solid var(--control);background:#fff;border-radius:30px;min-height:43px;padding:9px 16px;font-size:12px;font-weight:650;display:inline-flex;align-items:center;gap:7px}.pill[aria-pressed=true],.pill[aria-current=page]{color:#fff;background:var(--green);border-color:var(--green)}.pill svg{width:16px;height:16px}
.dashboard-top{display:grid;grid-template-columns:1.32fr 1fr;gap:22px}.welcome-card{position:relative;isolation:isolate;overflow:hidden;background:var(--green);border-radius:24px;min-height:326px;color:#fff;padding:32px;display:flex;flex-direction:column;justify-content:space-between}.welcome-card .eyebrow{color:#dcceaa;font-size:10px}.welcome-card h2{font-size:clamp(35px,3.8vw,53px);font-weight:550;letter-spacing:-2px;line-height:1.05;margin-top:17px;max-width:360px}.welcome-card h2 em{color:#e6cd91;font-family:Georgia,serif;font-weight:400}.welcome-card p{color:#e0eae1;font-size:13px;margin-top:17px;max-width:270px;line-height:1.8}.welcome-card .actions{margin-top:24px}.welcome-art{position:absolute;width:236px;height:300px;right:-78px;bottom:-58px;z-index:-1;opacity:.5;transform:rotate(-24deg)}.welcome-art i{position:absolute;inset:0;border:1px solid #d7bc76;border-radius:50% 50% 4% 50%;transform:rotate(24deg)}.welcome-art i:nth-child(2){inset:22px;transform:rotate(8deg)}.welcome-art i:nth-child(3){inset:44px;transform:rotate(-8deg)}.welcome-art i:nth-child(4){inset:66px;transform:rotate(-24deg)}.welcome-art i:nth-child(5){inset:88px;transform:rotate(-40deg)}.check-card{display:flex;flex-direction:column;justify-content:space-between}.check-card .eyebrow{color:var(--muted);margin-bottom:10px}.check-card h2{font-size:24px}.check-card p{font-size:13px;color:var(--muted);margin-top:8px}.mood-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:23px}.mood-button{border:1px solid var(--control);background:#fff;border-radius:13px;min-height:65px;padding:10px 3px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:10px;font-weight:600}.mood-face{font-size:22px;line-height:1;filter:grayscale(1)}.mood-button:hover,.mood-button[aria-pressed=true]{background:var(--green-soft);border:2px solid var(--green);padding:9px 2px 7px}.check-card .button{margin-top:18px}.check-result{background:var(--green-soft);border-radius:14px;padding:18px;margin-top:17px}.check-result>span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--green)}.check-result p{margin:10px 0}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.metric{display:flex;align-items:center;gap:14px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:16px;min-width:0}.metric-icon{display:grid;place-items:center;border-radius:12px;background:var(--green-soft);width:43px;height:43px;color:var(--green);flex:none}.metric:nth-child(2) .metric-icon{color:var(--gold-ink);background:var(--gold-soft)}.metric strong{font-size:25px;line-height:1.2;letter-spacing:-1px}.metric .metric-label{display:block;font-size:11px;color:var(--muted);margin-top:3px;line-height:1.4}.pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pillar-card{min-width:0;background:#fff;border:1px solid var(--line);padding:23px 21px 19px;border-radius:18px;position:relative;transition:border-color .15s}.pillar-card:hover{border-color:var(--green)}.pillar-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:var(--green-soft);color:var(--green);margin-bottom:20px}.pillar-card:nth-child(even) .pillar-icon{background:var(--gold-soft);color:var(--gold-ink)}.pillar-card h3{font-size:20px}.pillar-card>p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:9px;min-height:41px}.pillar-card>span:last-child{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:650;margin-top:23px;color:var(--green)}.pillar-card>span:last-child svg{width:16px}.gentle-note{display:flex;align-items:center;gap:14px;padding:20px 24px;background:var(--gold-soft);border:1px solid #e1d1ad;border-radius:16px;margin-top:24px}.gentle-note svg{color:var(--gold-ink)}.gentle-note p{font-size:13px;line-height:1.7}.gentle-note .text-link{font-size:12px;margin-left:auto;flex:none}.daily-pick{display:flex;gap:20px;align-items:center;min-width:0}.daily-pick .pillar-icon{margin:0;width:56px;height:56px;flex:none}.daily-pick>div:nth-child(2){flex:1;min-width:0}.daily-pick h3{margin-top:5px}.daily-pick p{color:var(--muted);font-size:12px;margin-top:6px}.daily-pick .icon-button{border:1px solid var(--line)}
label.field-label{display:block;font-size:13px;font-weight:650;margin-bottom:8px}input[type=text],input[type=search],input[type=number],textarea,select.field{width:100%;min-width:0;background:#fff;border:1px solid var(--control);border-radius:12px;padding:12px 14px;font-size:16px;min-height:47px;line-height:1.6}input::placeholder,textarea::placeholder{color:#63736b;opacity:1}textarea{resize:vertical;min-height:132px}textarea.short{min-height:88px}.field-group+.field-group{margin-top:19px}.field-hint{font-size:12px;color:var(--muted);margin-top:8px}.search-field{position:relative;margin-bottom:20px}.search-field svg{position:absolute;left:15px;top:15px;color:var(--muted);width:19px}.search-field input{padding-left:43px}.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:24px}.result-count{font-size:12px;color:var(--muted)}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.practice-card{border:1px solid var(--line);border-radius:17px;background:#fff;padding:23px;min-width:0;display:flex;flex-direction:column}.practice-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.practice-card-top .icon-button{width:36px;height:36px}.practice-card-top .icon-button[aria-pressed=true]{background:var(--gold-soft);color:var(--gold-ink)}.practice-card h2{font-size:19px;line-height:1.35}.practice-card>p{font-size:13px;color:var(--muted);margin-top:10px;flex:1}.practice-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:24px}.practice-card-bottom>span{font-size:11px;color:var(--muted)}.practice-card-bottom .text-link{font-size:12px}.empty-state{border:1px dashed var(--control);border-radius:17px;padding:36px 24px;text-align:center;color:var(--muted);background:#fff}.empty-state>svg{margin:0 auto 15px;color:var(--green);width:30px;height:30px}.empty-state h3{color:var(--ink);font-size:18px}.empty-state p{font-size:13px;max-width:420px;margin:10px auto 0}.empty-state .button{margin-top:20px}.exercise-intro{background:var(--green);color:#fff;padding:28px;border-radius:20px;margin-bottom:24px}.exercise-intro>p{color:#dce7df;font-size:14px;margin-top:14px}.exercise-intro .tag{background:#2a584a;color:#fff}.exercise-intro h1{font-size:34px;margin-top:14px}.steps-list{counter-reset:practice;list-style:none;padding:0;margin:0;display:grid;gap:22px}.steps-list>li{position:relative;padding-left:45px;counter-increment:practice}.steps-list>li::before{content:counter(practice,decimal-leading-zero);position:absolute;left:0;top:0;font-size:12px;color:var(--gold-ink);background:var(--gold-soft);width:30px;height:30px;display:grid;place-items:center;border-radius:9px;font-weight:700}.steps-list>li>label{font-weight:550;display:block;font-size:15px;line-height:1.7;margin-bottom:10px}.steps-list textarea{font-size:15px}.exercise-aside{background:var(--gold-soft);border-color:#e1d1ad}.exercise-aside p{font-size:13px}.exercise-aside svg{color:var(--gold-ink);margin-bottom:16px}.draft-notice{font-size:12px;color:var(--muted);min-height:20px;margin-top:10px}.success-panel{padding:40px;background:var(--green-soft);border:1px solid #99b49f;border-radius:20px;text-align:center}.success-panel>svg{margin:0 auto 18px;width:42px;height:42px;color:var(--green)}.success-panel p{color:var(--muted);font-size:14px;margin-top:14px}.success-panel .actions{justify-content:center}.timer-display{font-variant-numeric:tabular-nums;font-size:clamp(62px,7.5vw,92px);line-height:1.2;letter-spacing:-5px;color:var(--green);margin:25px 0 14px;font-weight:550}.timer-orbit{text-align:center;padding:30px 12px 35px;border-radius:50%;background:radial-gradient(circle,var(--green-soft) 0,transparent 66%);max-width:360px;margin:15px auto}.timer-mode{font-size:12px;letter-spacing:1px;font-weight:650;color:var(--muted)}.timer-controls{justify-content:center}.timer-card{text-align:center}.timer-card .pillrow{justify-content:center}.timer-state{min-height:24px;font-size:14px;color:var(--muted)}.timer-dock{display:flex;align-items:center;gap:12px;border:1px solid var(--control);background:var(--green-soft);border-radius:12px;padding:12px 16px;margin-bottom:20px;font-size:13px}.timer-dock a{font-weight:650;text-decoration:underline;text-underline-offset:3px}.timer-dock strong{margin-left:auto;font-variant-numeric:tabular-nums}.timer-dock .icon-button{width:32px;height:32px}
.entry{background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px;margin-bottom:13px;min-width:0}.entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.entry-title{font-size:16px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}.entry-date{font-size:11px;color:var(--muted);margin-top:4px}.entry-text{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:15px}.entry-actions{display:flex;gap:8px;margin-top:13px}.entry-actions button{border:0;background:none;font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:35px;padding:3px 6px;color:var(--green)}.entry-actions button.delete-entry{color:var(--danger)}.entry-answer{margin-top:15px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.entry-answer strong{display:block;font-size:12px;color:var(--muted);font-weight:550;margin-bottom:4px}.history-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.history-tools h2{font-size:21px}.week-list{display:grid;gap:15px}.week-day{border-bottom:1px solid var(--line);padding-bottom:17px;display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start}.week-day:last-child{border:0;padding-bottom:0}.week-day label{display:block;font-size:13px;font-weight:650;margin-bottom:6px}.week-day textarea{min-height:70px;font-size:15px;padding:10px 12px}.check-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--control);background:#fff;border-radius:11px;color:var(--green);margin-top:29px}.check-button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}.check-button svg{width:18px;height:18px}.goal-list{list-style:none;padding:0;margin:20px 0 0}.goal-row{display:flex;gap:12px;align-items:flex-start;padding:15px 0;border-top:1px solid var(--line)}.goal-row .check-button{margin:0;flex:none}.goal-row .goal-text{flex:1;min-width:0;font-size:14px;overflow-wrap:anywhere;line-height:1.6;padding-top:5px}.goal-row.completed .goal-text{text-decoration:line-through;color:var(--muted)}.goal-row .icon-button{width:34px;height:34px;color:var(--muted)}.inline-form{display:flex;gap:9px;align-items:flex-start}.inline-form input{flex:1}.inline-form button{flex:none;min-height:50px}.week-intro{background:var(--gold-soft);border:1px solid #e1d1ad;padding:18px 20px;border-radius:13px;font-size:13px;margin-bottom:22px}.progress-metrics{margin:0 0 25px}.activity-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;align-items:end;margin-top:25px;height:170px}.activity-day{display:flex;flex-direction:column;align-items:center;height:100%;gap:9px;font-size:11px;color:var(--muted)}.activity-value{font-weight:650;color:var(--green);height:17px}.activity-track{flex:1;width:100%;max-width:34px;display:flex;align-items:flex-end;background:var(--green-soft);border-radius:8px;overflow:hidden}.activity-fill{width:100%;background:var(--green);border-radius:8px;min-height:0}.activity-day:last-child .activity-fill{background:var(--gold-ink)}.area-progress{display:grid;gap:18px;margin-top:25px}.area-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:7px}.area-track{height:7px;background:var(--green-soft);border-radius:8px;overflow:hidden}.area-track>span{display:block;height:100%;background:var(--green);border-radius:8px}.privacy-card{border-left:4px solid var(--gold-ink)}.settings-actions{display:grid;gap:11px;margin-top:20px}.settings-actions .button{justify-content:flex-start}.settings-section+.settings-section{margin-top:22px}.support-card{display:flex;gap:16px;align-items:flex-start}.support-card>svg{color:var(--green);margin-top:3px}.support-card p{font-size:14px;color:var(--muted);margin-top:10px}.support-card .text-link{font-size:13px;margin-top:12px;overflow-wrap:anywhere}.support-urgent{border-color:#debcb5;background:#fff8f5}.support-urgent>svg{color:var(--danger)}.legacy-block{max-height:440px;overflow:auto;padding:18px;background:#fff;border:1px solid var(--line);border-radius:13px;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.legacy-block h3{font-size:15px;margin:14px 0 7px}.legacy-block p{margin:3px 0}.import-preview{border:1px solid var(--control);padding:18px;border-radius:13px;margin-top:15px;background:var(--green-soft)}
.bottom-nav{position:fixed;inset:auto 0 0;z-index:50;height:calc(var(--bottom) + env(safe-area-inset-bottom));padding:0 24px env(safe-area-inset-bottom) calc(var(--side) + 24px);background:#fff;border-top:1px solid var(--line);display:flex;justify-content:center;gap:20px}.bottom-link{display:flex;align-items:center;justify-content:center;gap:9px;min-width:100px;height:var(--bottom);padding:0 12px;font-size:12px;color:var(--muted);position:relative}.bottom-link svg{width:19px;height:19px}.bottom-link[aria-current=page]{color:var(--green);font-weight:700}.bottom-link[aria-current=page]::before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:var(--green);border-radius:0 0 6px 6px}.menu-dialog,.confirm-dialog{border:1px solid var(--line);border-radius:22px;background:#fff;color:var(--ink);padding:26px;max-width:min(480px,calc(100% - 28px));max-height:calc(100svh - 40px);overflow:auto;box-shadow:0 24px 100px #10281d33}.menu-dialog::backdrop,.confirm-dialog::backdrop{background:#0e281b80;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.menu-dialog nav{display:grid;gap:3px}.menu-dialog .nav-item{color:var(--green)}.menu-dialog .nav-item:hover,.menu-dialog .nav-item[aria-current=page]{background:var(--green-soft)}.menu-note{font-size:12px;margin-top:22px}.confirm-dialog h2{font-size:23px}.confirm-dialog p{font-size:14px;color:var(--muted);margin-top:16px}.toast{position:fixed;bottom:calc(var(--bottom) + env(safe-area-inset-bottom) + 16px);left:calc(var(--side) + 24px);z-index:120;max-width:min(460px,calc(100vw - 32px));border:1px solid #58816a;border-radius:13px;padding:13px 19px;background:var(--green);color:#fff;box-shadow:0 8px 28px #10281d22;font-size:13px}.storage-warning{position:fixed;top:calc(var(--top) + env(safe-area-inset-top));left:var(--side);right:0;z-index:45;background:#fff0c9;color:#503806;padding:12px 24px;border-bottom:1px solid #a68235;font-size:13px}.storage-warning a{text-decoration:underline;font-weight:700}.has-storage-warning main{padding-top:calc(var(--top) + env(safe-area-inset-top) + 100px)}.noscript-message{position:fixed;inset:56px 0;background:#fff;z-index:110;padding:40px;line-height:1.8}.loading-state{padding:40px}.loading-state h1{margin:15px 0}.reading-width{max-width:810px}.note-footer{font-size:12px;color:var(--muted);margin:25px 0 0;max-width:720px}.char-count{text-align:right;font-size:11px;color:var(--muted)}
@media(max-width:1190px){:root{--side:206px}.topbar-inner{padding-inline:20px}.brand{min-width:166px}.sidebar{padding:28px 15px 18px}.sidebar-welcome p{font-size:22px}main{padding-inline:26px}.dashboard-top{grid-template-columns:1.15fr 1fr;gap:18px}.welcome-card{padding:27px}.welcome-card h2{font-size:42px}.surface{padding:22px}.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pillar-card>p{min-height:0}.pillar-card>span:last-child{margin-top:15px}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:16px 14px;gap:10px}.metric-icon{width:36px;height:36px}.metric-icon svg{width:19px}.bottom-nav{gap:5px}.bottom-link{min-width:92px}.two-columns{grid-template-columns:1fr 1fr}}
@media(max-width:980px){:root{--side:0px}.sidebar{display:none}.topbar-inner{gap:10px;padding-inline:22px}.brand{min-width:0;margin-right:20px}.menu-toggle{display:flex}.top-end{gap:20px}main{max-width:980px;margin:0 auto;padding-inline:28px}.bottom-nav{padding-left:20px;padding-right:20px;justify-content:space-around;gap:0}.bottom-link{min-width:75px}.welcome-card h2{font-size:46px}.toast{left:24px}.storage-warning{left:0}}
@media(max-width:640px){.topbar-inner{gap:4px;padding-inline:12px}.topbar-inner .brand{order:2;margin:0 auto 0 4px;font-size:24px;gap:5px}.brand img{width:31px;height:31px}.brand-sub{display:none}.menu-toggle{order:0;width:36px}.top-actions{order:1;gap:0}.top-actions .icon-button{width:33px}.top-actions svg{width:18px}.top-end{order:3;gap:0;margin-left:0}.top-end select{min-width:51px;padding:0 6px;height:34px}.help-link{display:none}main{padding:calc(var(--top) + env(safe-area-inset-top) + 25px) 18px calc(var(--bottom) + env(safe-area-inset-bottom) + 27px)}.page-heading{gap:10px;margin-bottom:21px}.page-heading h1{font-size:29px;letter-spacing:-1.2px}.page-heading .eyebrow{font-size:9px;margin-bottom:7px}.page-heading p{font-size:13px;margin-top:8px}.dashboard-top{grid-template-columns:1fr;gap:17px}.welcome-card{min-height:280px;padding:27px;border-radius:21px}.welcome-card h2{font-size:47px;max-width:330px}.welcome-card p{max-width:250px;font-size:13px}.welcome-card .actions{margin-top:22px}.welcome-art{right:-63px;bottom:-73px;width:230px;height:300px}.check-card{padding:23px}.check-card h2{font-size:23px}.check-card .eyebrow{font-size:9px}.mood-options{margin-top:19px;gap:7px}.mood-button{min-height:65px}.metric-grid{gap:8px;margin-top:16px}.metric{padding:15px 8px;gap:4px;flex-direction:column;align-items:flex-start;border-radius:14px}.metric-icon{width:30px;height:30px;border-radius:9px;margin-bottom:5px}.metric-icon svg{width:17px;height:17px}.metric strong{font-size:24px}.metric .metric-label{font-size:10px;line-height:1.5}.metric>div:last-child{padding-left:2px}.section-heading{margin:25px 0 14px;gap:10px}.section-heading h2{font-size:20px}.section-heading .text-link{font-size:11px;gap:4px}.section-heading .text-link svg{width:14px}.pillar-grid{gap:11px}.pillar-card{padding:20px 17px 17px;border-radius:16px}.pillar-icon{width:40px;height:40px;margin-bottom:17px}.pillar-card h3{font-size:20px}.pillar-card p{font-size:12px}.pillar-card>span:last-child{font-size:10px;margin-top:17px}.gentle-note{padding:17px;gap:11px;align-items:flex-start;margin-top:19px;flex-wrap:wrap}.gentle-note p{font-size:12px;flex:1;min-width:150px}.gentle-note .text-link{margin-left:33px;min-height:30px}.surface{padding:22px;border-radius:18px}.two-columns,.equal-columns{grid-template-columns:1fr;gap:18px}.stack{gap:18px}.daily-pick{gap:14px}.daily-pick .pillar-icon{width:44px;height:44px}.daily-pick h3{font-size:16px}.daily-pick p{font-size:12px}.practice-grid{grid-template-columns:1fr;gap:12px}.practice-card{padding:20px}.practice-card-top{margin-bottom:11px}.practice-card h2{font-size:20px}.practice-card-bottom{margin-top:15px}.toolbar{gap:15px;margin-bottom:18px}.pill{min-height:41px;font-size:11px;padding:9px 13px}.exercise-intro{padding:24px}.exercise-intro h1{font-size:30px}.steps-list>li{padding-left:36px}.steps-list>li::before{width:26px;height:26px;border-radius:8px;font-size:10px}.steps-list>li>label{font-size:14px}.steps-list textarea{font-size:16px}.success-panel{padding:30px 22px}.timer-orbit{padding-block:25px}.timer-display{font-size:78px}.entry{padding:19px}.entry-title{font-size:15px}.week-day{gap:9px;grid-template-columns:32px minmax(0,1fr)}.week-day .check-button{width:32px;height:32px}.inline-form{flex-wrap:wrap}.inline-form input{flex-basis:65%;width:65%;min-width:100px}.inline-form .button{padding-inline:13px}.activity-bars{gap:9px}.bottom-nav{padding-inline:6px}.bottom-link{flex:1;min-width:0;padding:0 3px;flex-direction:column;gap:3px;font-size:9px;line-height:1.4}.bottom-link svg{width:20px;height:20px}.bottom-link[aria-current=page]::before{left:28%;right:28%}.toast{left:16px;font-size:13px;max-width:calc(100vw - 32px)}.storage-warning{padding:10px 16px;font-size:12px}.menu-dialog{padding:22px;width:calc(100% - 28px)}.menu-dialog h2{font-size:23px}.menu-dialog .nav-item{min-height:44px;padding-block:10px}.note-footer{font-size:11px}.char-count{margin-top:4px}}
@media(max-width:350px){.topbar-inner{padding-inline:8px;gap:1px}.topbar-inner .brand{font-size:22px;gap:3px;margin-left:2px}.brand img{width:28px;height:28px}.top-end select{min-width:47px;padding:0 3px}.top-actions .icon-button{width:31px}.menu-toggle{width:32px}main{padding-inline:14px}.welcome-card{padding:24px}.welcome-card h2{font-size:41px}.mood-options{gap:5px}.mood-button{font-size:9px}.surface{padding:20px}.pillar-card{padding:18px 14px}.pillar-card p{font-size:11px}.bottom-link{font-size:8px}.metric .metric-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.topbar,.sidebar,.bottom-nav,.toast,.menu-dialog,.storage-warning,.icon-button,.entry-actions,.actions{display:none!important}main{padding:20px;margin:0;max-width:none;background:#fff}.surface,.entry,.welcome-card{break-inside:avoid;box-shadow:none;border:1px solid #aaa}.welcome-card,.exercise-intro{background:#fff;color:#000}.welcome-card p,.welcome-card h2 em{color:#000}.two-columns{grid-template-columns:1fr 1fr}}
/* Focus indicators remain visible on the dark navigation and hero surfaces. */
.sidebar a:focus-visible,.welcome-card a:focus-visible{outline-color:#e6cd91}.mood-button>span:last-child{overflow-wrap:anywhere;hyphens:auto}button.text-link{border:0;padding:0;color:var(--green)}
