/* RitmoLab 1.5: task-first mobile UI. No fonts, telemetry, or external dependencies. */
:root{--bg:#0b1114;--surface:#121e23;--surface-2:#18272c;--line:#2b3a40;--text:#eff6f3;--muted:#aebfbd;--teal:#70e5ce;--lime:#d2f482;--amber:#f4cc82;--danger:#ffb1ba;--radius:16px;color-scheme:dark}
html{scroll-padding-top:24px}body{font-family:'Aptos','Segoe UI',system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.55;background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}button,a,input,select,textarea,summary{touch-action:manipulation}button,a{transition:background-color .12s ease,color .12s ease,border-color .12s ease}a{color:inherit;text-decoration:none}a:hover,button:not(:disabled):hover{filter:none}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--teal);outline-offset:4px}::selection{background:#35554a;color:#fff}input,select,textarea{caret-color:var(--teal);font-size:16px;min-height:46px;scroll-margin:100px 0 120px;line-height:1.5}select{background-color:#101b20;color:var(--text)}input::placeholder,textarea::placeholder{color:#94aaa7;opacity:1}textarea{min-height:110px}small,.hint{font-size:12px;line-height:1.55;color:var(--muted)}h1,h2,h3{line-height:1.2;text-wrap:balance;letter-spacing:-.025em}h1{font-size:34px}h2{font-size:23px}h3{font-size:17px}p{max-width:74ch}strong,.num,output{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:0;text-transform:none}.pagehead .eyebrow,.planner-weekhead .eyebrow{display:none}.pagehead{align-items:center;gap:20px;margin:0 0 24px}.pagehead p{margin-top:8px;font-size:15px}.page-in{animation:none}.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}[hidden]{display:none!important}.skip-link{position:fixed;left:20px;top:-100px;z-index:12000;padding:12px 20px;background:var(--lime);color:#122118;border-radius:10px}.skip-link:focus{top:12px}
.app-shell{max-width:1480px}.sidebar{width:218px;padding:30px 22px;background:var(--bg)}.brand-mark{background:var(--lime);box-shadow:none;border-radius:11px;letter-spacing:-4px}.brand small{letter-spacing:0;text-transform:none;font-size:12px}.side-nav{margin-top:38px;gap:6px}.side-nav a{display:flex;align-items:center;gap:13px;min-height:50px;padding:12px 14px;color:var(--muted);border-radius:10px;font-size:14px;font-weight:600}.side-nav a:hover{background:#18272c;color:var(--text)}.side-nav a.active{background:#20342e;color:var(--lime)}.sidebar-caption{font-size:12px;color:#819895}.side-footer{gap:6px}.side-footer button{min-height:44px;text-align:left;font-size:13px}.side-footer .sync{margin:18px 0 0}.main{margin-left:218px;padding:24px 36px 72px;max-width:1220px}.topbar{margin-bottom:26px;min-height:44px}.desktop-date{font-size:13px}.top-actions{gap:10px}.iconbtn,.avatar{width:44px;height:44px;min-width:44px;border-radius:12px}.sync{font-size:12px}.card{background:var(--surface);border:1px solid var(--line);box-shadow:none;border-radius:16px;padding:24px}.hero:after{display:none}.btn{min-height:46px;border-radius:10px;padding:11px 17px;background:#19292f;color:var(--text);font-weight:650}.btn:hover{background:#22383d;border-color:#536968}.btn.primary{background:var(--lime);border-color:var(--lime);color:#13221b}.btn.primary:hover{background:#e2ffa4;border-color:#e2ffa4}.btn.small{min-height:44px;font-size:13px;padding:9px 13px}.btn.text-btn{padding:4px 0;border:0;background:none;color:var(--teal);justify-content:flex-start;min-height:44px}.pill{font-size:12px;letter-spacing:0;text-transform:none;padding:3px 9px;border-radius:7px}.pill.gray{background:#203139;color:#c3d2cf}.pill.amber{color:var(--amber)}.section{margin-top:24px}.actions{flex-wrap:wrap}.cardhead{align-items:flex-start;flex-wrap:wrap}.cardhead>div{min-width:0}.cardhead p{margin-top:8px}.notice{font-size:13px;line-height:1.55;box-shadow:none}.hint.row{min-height:44px;padding:6px 0}
.plan-heading{margin-bottom:22px}.checkin-btn{background:#16292a;border-color:#35524d;color:var(--teal)}.plan-command{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr);border:1px solid #314840;border-radius:16px;background:#14251f;overflow:hidden}.plan-command-main{padding:28px}.context-tag{display:inline-block;font-size:12px;color:#bdd1c5;margin-bottom:10px}.plan-command h2{font-size:30px;letter-spacing:-.035em;max-width:20ch}.plan-command-main p{color:#c5d5cb;margin:12px 0 18px;max-width:48ch}.plan-context{display:flex;flex-wrap:wrap;gap:8px 16px;color:#c4dac9;font-size:13px;margin-bottom:22px}.plan-context span+span:before{content:'·';padding-right:16px;color:#86aa96}.plan-command-main small{display:block;margin-top:12px;color:#b3c6b9}.plan-command-side{padding:28px;border-left:1px solid #314840;background:#11201c}.plan-command-side h3{font-size:17px}.plan-command-side p{font-size:14px;color:#b6c8bd;margin-top:12px}.plan-fixed{margin-top:20px;display:grid;gap:7px;padding-top:18px;border-top:1px solid #314840}.plan-fixed span{color:#adbfaf;font-size:12px}.plan-fixed strong{font-size:14px;font-weight:600;line-height:1.8}.last-session-strip{display:flex;align-items:center;gap:15px;padding:19px 2px;border-bottom:1px solid var(--line)}.last-session-date{color:var(--muted);font-size:13px;white-space:nowrap}.last-session-title{min-width:0;flex:1;text-align:left;min-height:44px}.last-session-title strong{display:block;font-size:12px;color:var(--muted);font-weight:500}.last-session-title span{display:block;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.last-session-strip>.pill{flex-shrink:0}.planner-tabs{gap:0;display:flex;margin:22px 0;border-bottom:1px solid var(--line);padding:0;background:none;border-radius:0;overflow:auto}.planner-tabs button{flex:1;min-height:48px;padding:10px 14px;color:var(--muted);border:0;border-bottom:2px solid transparent;border-radius:0;background:none;white-space:nowrap;font-size:14px}.planner-tabs button.active{color:var(--teal);border-bottom-color:var(--teal);background:none}.planner-controls{font-size:13px;gap:10px;display:flex;flex-wrap:wrap}.planner-week{gap:8px}.plan-day{background:none;border-radius:10px}.plan-day-top{font-size:13px}.plan-day-top strong{font-size:20px}.plan-day-empty{font-size:13px;line-height:1.5}.plan-day-empty small{font-size:12px}.plan-session h3{font-size:15px;line-height:1.35;letter-spacing:-.01em}.plan-session p{font-size:13px;line-height:1.5}.plan-kind,.plan-status{font-size:11px;letter-spacing:0;text-transform:none}.plan-dose{font-size:13px}.planner-preview-actions,.planner-empty-action{border-radius:10px}.planner-disclaimer,.plain-disclosure{margin:24px 0;color:var(--muted);font-size:13px}.plain-disclosure summary{cursor:pointer;min-height:44px;padding:10px 0}.plain-disclosure p{margin-top:10px}.evolution-link{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:22px 2px;margin-top:16px;border-bottom:1px solid var(--line)}.evolution-link strong{font-size:16px;display:block}.evolution-link span{display:block;color:var(--muted);font-size:13px;margin-top:6px}.evolution-link>span{font-size:24px;color:var(--teal)}.goal-position small{letter-spacing:0;font-size:11px}.goal-buttons button{min-width:44px}.planner-goal{box-shadow:none;border-radius:12px}.goal-body h3{font-size:19px}.availability-row{min-width:0}.planner-reasons p{font-size:14px}.radar-plan-entry{display:none}
/* Recording is a three-step task; optional material is disclosed on demand. */
.draft-status{font-size:12px;color:var(--muted);min-height:24px;margin-top:-10px;margin-bottom:12px}.record-steps{display:flex;border-bottom:1px solid var(--line);margin-bottom:24px}.record-steps button{display:flex;gap:9px;align-items:center;justify-content:center;flex:1;min-height:52px;padding:8px;border-bottom:2px solid transparent;color:var(--muted);font-size:14px}.record-steps button span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#24363b;font-size:12px}.record-steps button.active{color:var(--text);border-color:var(--teal)}.record-steps button.active span{background:var(--teal);color:#102019}.record-panel{padding:24px;border:1px solid var(--line);background:var(--surface);border-radius:16px}.record-panel h2{margin-bottom:12px}.formgrid{gap:18px}.field{font-size:13px;color:#d1ded8;gap:7px}.record-details{border-top:1px solid var(--line);margin-top:24px;padding-top:4px}.record-details summary{cursor:pointer;display:flex;align-items:center;gap:10px;min-height:52px;font-size:14px;font-weight:600}.record-details summary:after{content:'＋';margin-left:6px;color:var(--teal)}.record-details[open] summary:after{content:'−'}.record-details summary>span{margin-left:auto;font-size:12px;color:var(--muted);font-weight:400}.details-body{padding:16px 0 4px}.upload{width:100%;min-height:176px;border:1px dashed #60756c;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:12px;background:#11251f}.upload .photo{max-height:230px;object-fit:contain;height:auto;width:100%}.upload small{font-size:12px}.exrow{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:18px 0 22px;border-bottom:1px solid var(--line);margin-bottom:10px}.exrow label{font-size:12px;display:grid;gap:6px;color:#bacbc6;min-width:0}.exrow .ex-name{grid-column:1/6}.exrow .ex-name input{font-weight:650}.exrow .ex-remove{position:absolute;top:18px;right:0;min-width:44px;min-height:44px}.exrow .ex-total{grid-column:1/-1;padding:6px 0 0;font-size:14px;color:var(--teal)}.exrow .ex-note{grid-column:1/-1}.exrow input,.exrow select{width:100%;min-width:0}.record-footer{position:sticky;bottom:12px;z-index:20;display:flex;gap:12px;justify-content:space-between;margin-top:22px;padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 25px #0005}.record-footer .primary{margin-left:auto;min-width:180px}.review-heading{margin:20px 0}.review-heading p{color:var(--muted);font-size:14px;margin-top:8px}.review-result{padding:18px;background:#1b3028;border-radius:10px;font-size:20px;font-weight:650;overflow-wrap:anywhere}.review-row{display:grid;gap:5px;padding:18px 0;border-bottom:1px solid var(--line)}.review-row span{color:var(--teal)}.review-row small{overflow-wrap:anywhere}#record-error{padding:14px;border:1px solid var(--danger);border-radius:10px;margin-bottom:18px;color:var(--danger)}.resume-actions{display:flex;align-items:center;gap:14px;margin-bottom:16px}.resume-actions button{min-height:44px;font-size:13px;color:var(--teal)}
/* Less noise in legacy screens, without hiding evidence or adaptations. */
.session-row{min-height:76px}.session-copy strong{font-size:15px}.session-copy small{font-size:12px}.session-result{font-size:13px;max-width:180px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.filters .chip{min-height:44px}.mark-card{min-height:180px;border-radius:14px;background:var(--surface)}.mark-card .value{font-size:30px}.radar-hero{background:var(--surface);box-shadow:none}.radar-svg{max-height:470px}.radar-axis-button{min-height:44px}.dialog-backdrop{padding:24px;overscroll-behavior:contain}.dialog{max-height:calc(100dvh - 48px);overscroll-behavior:contain;border-radius:16px;background:#122027;box-shadow:0 20px 80px #0009}.dialoghead{position:sticky;top:0;background:#122027;z-index:5;padding:20px 24px;border-bottom:1px solid var(--line)}.dialoghead h2{font-size:22px}.dialoghead p{margin-top:7px}.dialog .content{padding:24px}.dialog h3{margin-top:6px}.modal-open{overflow:hidden}#toast{max-width:min(480px,calc(100vw - 32px));font-size:14px;bottom:24px;background:#20382d;color:#edffed;border-color:#517762}.boot{padding:60px 24px}.lab-bar{position:relative;min-height:44px;background:#14251e!important;color:#cfe2d8!important;border-bottom:1px solid #345046!important;font-size:12px!important}.lab-bar strong{font-size:12px!important;letter-spacing:0!important}.lab-actions button{min-height:36px;font-size:12px!important}.lab-bar small{font-size:12px!important}.lab-helper{z-index:15000}
@media(min-width:1100px){.planner-week{grid-template-columns:repeat(7,minmax(0,1fr))}.planner-weekhead h2{font-size:21px}}
@media(max-width:1099px){.planner-week{grid-template-columns:1fr}.plan-day{display:grid;grid-template-columns:65px minmax(0,1fr);gap:18px;padding:16px 0;border:0;border-bottom:1px solid var(--line);min-height:85px}.plan-day-top{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;border:0;padding:0;gap:4px}.plan-day-top span:last-child{display:none}.plan-day-empty{padding:5px 0;min-height:0}.plan-session{padding:0;background:none}.plan-actions{display:flex;gap:10px;flex-wrap:wrap}.plan-session p{margin:8px 0}.plan-session h3{font-size:17px}.plan-session small{display:block;margin:5px 0}}
@media(max-width:850px){.main{margin-left:0;padding:18px 22px 110px}.sidebar{display:none}.topbar{margin-bottom:26px}.top-actions>.sync{display:none}.mobile-brand{display:block}.desktop-date{display:none}.brand-mark{width:36px;height:36px;font-size:27px}.brand strong{font-size:18px}.brand small{font-size:11px}.bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;padding:8px 12px max(10px,env(safe-area-inset-bottom));background:#0c171bee;border-top:1px solid var(--line);z-index:40;backdrop-filter:none}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:50px;min-width:0;font-size:11px;color:#a8bcb8;border-radius:10px}.bottom-nav a.active{background:#19352c;color:var(--lime)}.bottom-nav .icon{width:22px;height:22px}.plan-command{grid-template-columns:1.2fr 1fr}.plan-command-main,.plan-command-side{padding:22px}.plan-command h2{font-size:26px}.record-footer{bottom:82px}.dialog-backdrop{padding:12px}.dialog{max-height:calc(100dvh - 24px)}#toast{bottom:100px}}
@media(max-width:600px){h1{font-size:28px}h2{font-size:22px}.main{padding:18px 16px 114px}.pagehead{align-items:flex-start;flex-wrap:wrap;gap:14px}.plan-heading{flex-wrap:nowrap}.plan-heading .btn{max-width:155px;font-size:12px;padding:9px 12px}.plan-heading p{font-size:13px;max-width:24ch}.card{padding:18px}.plan-command{grid-template-columns:1fr}.plan-command-main{padding:22px}.plan-command-side{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 22px;border-left:0;border-top:1px solid #314840}.plan-command-side h3,.plan-command-side p{display:none}.plan-command-side .text-btn{font-size:13px;min-width:130px}.plan-fixed{margin:0;padding:0;border:0}.plan-fixed span{display:none}.plan-fixed strong{font-size:11px;line-height:1.6;font-weight:500}.plan-command .actions{display:flex;flex-direction:column;align-items:stretch;gap:10px}.plan-command h2{font-size:28px}.plan-command-main p{font-size:14px}.plan-command-main small{font-size:11px}.plan-context{font-size:12px;gap:6px 12px;margin-bottom:18px}.plan-context span+span:before{padding-right:12px}.last-session-strip{gap:10px;padding:16px 0}.last-session-date{display:none}.last-session-title span{font-size:13px;max-width:calc(100vw - 160px)}.last-session-strip>.pill{font-size:11px}.planner-tabs button{font-size:13px;padding:10px 8px}.planner-weekhead{gap:12px}.planner-weekhead h2{font-size:19px}.planner-weekhead>.row{width:100%;justify-content:flex-end}.planner-controls{font-size:12px}.planner-controls>.pill{font-size:11px}.planner-goal{padding:18px 12px;gap:12px;display:grid;grid-template-columns:32px minmax(0,1fr)}.goal-position small{display:none}.goal-position span{font-size:24px}.goal-body{min-width:0}.goal-body h3{font-size:19px;overflow-wrap:anywhere}.goal-buttons{grid-column:2;flex-direction:row}.availability-grid{display:grid;grid-template-columns:1fr}.availability-row{display:grid;grid-template-columns:90px 70px minmax(0,1fr);gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.availability-row .field{font-size:11px}.availability-row .check{font-size:13px}.record-panel{padding:18px}.record-steps button{font-size:13px;gap:7px}.record-steps button span{width:22px;height:22px}.formgrid{grid-template-columns:1fr 1fr;gap:16px 12px}.formgrid .wide{grid-column:1/-1}.formgrid input,.formgrid select{min-width:0;width:100%;font-size:16px;padding:11px}.exrow{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.exrow .ex-name{grid-column:1/-1;padding-right:54px}.exrow label:nth-child(6){grid-column:1/-1}.record-details summary{font-size:13px;gap:7px}.record-details summary>span{font-size:11px}.record-footer{bottom:80px;gap:8px;padding:10px}.record-footer .primary{min-width:0;flex:1}.record-footer .btn{font-size:14px}.grid.two{grid-template-columns:1fr}.record-details .grid.two{gap:22px}.dialog .content{padding:20px 16px}.dialoghead{padding:18px 16px}.dialoghead h2{font-size:21px}.session-result{max-width:105px;font-size:12px;-webkit-line-clamp:2}.session-copy strong{font-size:14px}.session-row{gap:10px}.session-icon{width:36px;height:36px;border-radius:9px}.lab-bar{gap:6px!important;padding:8px 12px!important}.lab-bar small{display:none!important}.lab-actions{gap:6px!important}.lab-actions button{padding:6px 10px!important}.lab-actions #lab-reset{display:none}.radar-svg{width:100%;height:auto;max-height:400px}.radar-controls,.radar-layout,.radar-detail-grid{min-width:0}.radar-header h1{font-size:28px}.hero h2{font-size:24px}.hero-figure{display:none}.metrics{grid-template-columns:1fr 1fr}.plan-session .plan-status{margin-top:8px}.splitrow{grid-template-columns:minmax(0,1fr) 70px 74px 44px;gap:6px}.splitrow input{padding:10px 8px}.splitrow button{min-width:44px;min-height:44px}.review-result{font-size:18px}.topbar .avatar{display:grid}.plain-disclosure{margin-top:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Long benchmark units must wrap inside small cards, not widen the viewport. */
.mark-card .value{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px;overflow-wrap:anywhere;max-width:100%}.mark-card .unit{margin-left:0;white-space:normal;max-width:100%;overflow-wrap:anywhere}.mark-card h3{min-width:0;overflow-wrap:anywhere}.mark-card>.row{align-items:flex-start}.dialog{padding:0}.dialoghead{margin-bottom:0}.check,.checkbox,.checkline{min-height:44px;align-items:center}.check input,.checkbox input,.checkline input{min-height:20px;width:20px;height:20px;flex-shrink:0;accent-color:var(--teal)}

.storage-warning{margin-bottom:20px;align-items:center;justify-content:space-between}.storage-warning span{max-width:65ch}.record-heading .iconbtn{flex-shrink:0}
@media(max-width:600px){.plan-command-main{padding:18px}.plan-command h2{font-size:25px}.plan-command-main p{margin:8px 0 12px}.plan-context{margin-bottom:14px}.plan-command .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plan-command .actions .btn{padding:10px 8px;min-height:48px;font-size:13px;white-space:nowrap}.plan-command-main small{margin-top:10px}.plan-command-side{padding:10px 18px}.plan-heading{margin-bottom:18px}.plan-heading h1{font-size:27px}.last-session-strip{padding:12px 0}.planner-tabs{margin:16px 0}.storage-warning{font-size:12px;padding:12px}.storage-warning .btn{min-width:90px}}

/* Reset legacy first-child/absolute-grid placement to avoid implicit columns. */
.exrow label.ex-name{grid-column:1/-1;padding-right:54px}.exrow .ex-remove{grid-column:auto;grid-row:auto}.exrow textarea{width:100%;min-height:80px;font-size:14px}.exrow label.ex-note{grid-column:1/-1}

/* v1.6 · task-focused UX. No additional fonts, libraries or remote assets. */
:root{--error:#ffb4ad;--focus:#d2f482}
.sync-button{background:transparent;border:1px solid transparent;border-radius:10px;padding:8px;min-height:44px;cursor:pointer;text-align:left}.sync-button:hover{border-color:var(--line);background:var(--panel)}.sync-icon{display:none}.sync-copy{line-height:1.4}
.draft-resume{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border:1px solid #5c6243;border-left:3px solid var(--lime);background:#1b251c;border-radius:12px;margin:0 0 20px}.draft-resume>div{min-width:0;display:grid;gap:4px}.draft-resume strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60ch}.draft-resume small{color:var(--muted);font-size:12px}.draft-resume .context-tag{font-size:11px;color:var(--lime)}.draft-resume button{flex-shrink:0;min-height:44px}
.plan-secondary-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}.plan-secondary-actions .text-btn{font-size:13px;text-align:left;padding:8px 0;min-height:44px}.plan-secondary-actions small{margin:0!important}.week-past-toggle{display:none}
.quick-destination{padding:0 0 20px}.quick-destination p{font-size:14px;color:var(--muted);margin:10px 0 0;line-height:1.55}.quick-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 12px}.quick-metrics input,.quick-metrics select{font-size:18px;min-height:52px;font-variant-numeric:tabular-nums}.quick-metrics select{font-size:15px}.quick-total{display:block;padding:14px 18px;border-radius:10px;background:#172d27;border:1px solid #346151;color:#d2f482;font-weight:600;font-size:17px;font-variant-numeric:tabular-nums;line-height:1.4}.quick-extra{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;margin-top:18px}.quick-extra input{min-width:0}.quick-save{margin:18px 0 10px;min-height:52px}.quick-success{text-align:center;padding:12px 0}.success-symbol{display:grid;place-items:center;margin:0 auto 20px;width:52px;height:52px;background:#244a38;color:var(--lime);border-radius:50%;font-size:26px}.quick-success h3{font-size:23px;line-height:1.3}.quick-success .quick-summary{font-size:18px;color:var(--lime);margin:14px 0;font-variant-numeric:tabular-nums}.quick-success p{color:var(--muted);font-size:15px;line-height:1.6}.quick-success small{display:block;margin-top:16px;font-size:12px;color:var(--muted)}.quick-success-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:22px}.quick-success-actions button{min-height:50px}
.field-error,#record-error:not([hidden]){color:var(--error);border:1px solid #81534f;background:#301e21;border-radius:10px;padding:12px 15px;margin:10px 0 18px;line-height:1.5;font-size:14px}[aria-invalid=true]{border-color:#ff9c94!important;box-shadow:0 0 0 1px #ff9c94}input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px}input,select,textarea,summary,button,a{scroll-margin-top:30px;scroll-margin-bottom:140px}.storage-detail p{margin:14px 0;color:var(--muted);line-height:1.65}.storage-detail .statline{gap:20px}.storage-detail .statline strong{text-align:right;font-size:14px}.timer-presets{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 20px}.timer-presets button{min-height:44px}.timerbuttons{display:flex;gap:10px;flex-wrap:wrap}.timerbuttons button{min-height:52px;flex:1;white-space:nowrap}.timer-reset{margin-top:18px;min-height:44px}.timer-clock{font-variant-numeric:tabular-nums}.record-details summary{min-height:48px}.resume-actions button{min-height:44px}
@media(max-width:850px){.top-actions>.sync{display:flex!important;align-items:center;justify-content:center;min-width:44px;width:44px;padding:8px}.sync-button>.dot,.top-actions .sync-copy{display:none}.sync-icon{display:inline-flex;color:var(--teal)}.sync-button.warn .sync-icon{color:var(--amber)}.top-actions{gap:4px}.plan-secondary-actions small{display:none}.week-past-toggle{display:block;margin:12px 0 0;color:var(--teal);min-height:44px;text-align:left}.planner-week:not(.show-past) .past-empty{display:none}.plan-command-main .plan-secondary-actions .text-btn{min-height:44px}.draft-resume{padding:14px 16px}.draft-resume strong{max-width:42ch}}
@media(max-width:600px){.quick-metrics{grid-template-columns:1fr 1fr;gap:14px 12px}.quick-metrics input{font-size:22px}.quick-extra{grid-template-columns:78px minmax(0,1fr)}.quick-extra input{font-size:16px}.quick-success-actions{grid-template-columns:1fr}.quick-success-actions button{font-size:16px}.draft-resume{gap:12px;padding:12px}.draft-resume strong{max-width:calc(100vw - 155px);font-size:14px}.draft-resume small{font-size:11px}.draft-resume .btn{padding:9px 12px;font-size:13px}.resume-actions{gap:8px;display:flex;flex-wrap:wrap}.resume-actions button{font-size:12px;text-align:left;padding:8px 10px;border:1px solid var(--line);border-radius:9px}.resume-actions button[data-experience]{background:#172d27;color:var(--teal);border-color:#34594c}.plan-context{margin-bottom:10px}.record-footer{box-shadow:0 -8px 18px #0b1114;border:1px solid var(--line)}.timer-clock{font-size:clamp(64px,19vw,90px)}.dialog .field input,.dialog .field select,.dialog .field textarea{font-size:16px}.quick-total{font-size:16px}.timerbuttons{display:grid;grid-template-columns:1fr 1fr}.timerbuttons button[data-action=timer-stop]{grid-column:1/-1}.plan-heading p{max-width:none}}
@media(forced-colors:active){button,a,input,textarea,select,summary{forced-color-adjust:auto}.pill,.quick-total,.notice,.card,.draft-resume{border:1px solid CanvasText}.dot{background:CanvasText}.success-symbol{border:1px solid CanvasText}}

/* Portable notice must not sit underneath the fixed desktop navigation. */
@media(min-width:851px){.lab-bar{margin-left:218px;min-width:0}.lab-bar>div:first-child{min-width:0}}

/* Daily tasks stay in the first screen; supporting tools are disclosed. */
.home-heading{margin-bottom:22px}.home-heading h1{font-size:clamp(27px,4vw,36px)}
.home-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:850px}
.home-task{min-width:0;min-height:105px;display:flex;align-items:center;gap:14px;padding:22px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text)}
.home-task strong{font-size:19px;line-height:1.3}.home-task small{display:block;margin-top:5px;font-size:14px;color:var(--muted);line-height:1.4}
.home-task-main{grid-column:1/-1;min-height:100px}.home-task-main>span:nth-child(2){flex:1;min-width:0}.home-task-main:first-child{background:#17332d;border-color:#3c7465}.home-task-main:first-child .home-task-icon{background:#275346;color:var(--lime)}
.home-task-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:13px;background:#1d3035;color:var(--teal)}.home-task-icon .icon{width:25px;height:25px}.home-task:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.home-task:hover{border-color:var(--teal)}
.home-last{max-width:850px}.home-last .session-row{border-bottom:0}.home-links{display:flex;gap:10px 20px;align-items:center;flex-wrap:wrap;margin-top:18px}.home-links button{min-height:44px;text-align:left}.home-more{max-width:850px;margin-top:10px}.home-more summary{min-height:44px;display:flex;align-items:center;color:var(--muted);cursor:pointer}.home-more .home-links{margin:6px 0 16px}
.plan-command-compact{display:block;padding:0;border:0;background:none;margin-bottom:20px}.plan-command-compact .actions{display:flex;gap:10px;flex-wrap:wrap}.record-tools{margin:8px 0 16px}.record-tools summary{min-height:44px;display:flex;align-items:center;color:var(--muted);cursor:pointer}.record-tools .resume-actions{margin:4px 0 12px}.record-panel .wide{grid-column:1/-1}
@media(max-width:850px){.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.home-actions{gap:12px}.home-task{padding:18px 15px;min-height:90px;gap:11px}.home-task strong{font-size:17px}.home-task small{font-size:13px}.home-task-main{min-height:94px}.home-last .session-copy{max-width:none}.home-heading{margin-bottom:18px}}
@media(max-width:390px){.home-task:not(.home-task-main){gap:9px;padding:17px 12px}.home-task:not(.home-task-main) strong{font-size:15px}.home-task-main>svg{width:16px}.home-task-icon{width:42px;height:42px;flex-basis:42px}}
/* Capacity evidence and individual protocol measurements. */
.capability-overview{max-width:900px}.capability-map{display:block;width:100%;max-height:410px;margin:6px auto;color:var(--text)}.capability-map text{fill:currentColor;font-size:24px;font-family:inherit}.capability-map .map-center{font-size:18px;font-weight:700;letter-spacing:1px}.capability-map .map-center-small{font-size:18px;fill:var(--muted)}
.capacity-legend{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:13px;color:var(--muted)}.capacity-legend span{display:flex;align-items:center;gap:7px}.capacity-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none}
.capacity-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.capacity-card{min-width:0;text-align:left;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:16px;min-height:110px;display:flex;flex-direction:column;gap:7px;font:inherit}.capacity-card strong{font-size:16px}.capacity-card span,.capacity-card small{color:var(--muted);font-size:13px;line-height:1.4}.capacity-card.selected{border-color:var(--teal);background:#17332d}.capacity-card:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.capability-detail{scroll-margin-top:20px}.capability-detail .cardhead{flex-wrap:wrap;gap:12px}.capacity-reading{padding:20px 0;border-bottom:1px solid var(--line)}.capacity-value{font-size:32px;font-weight:700;line-height:1.4;margin:10px 0}.capacity-value span{font-size:18px;color:var(--muted);font-weight:400}.capacity-change{color:var(--teal);margin-top:12px}.capacity-context{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:20px 0}.science-protocol,.science-sources article,.capacity-references article{padding:18px 0;border-bottom:1px solid var(--line)}.science-protocol h3,.science-sources h3{font-size:16px;line-height:1.5}.science-links{font-size:13px;line-height:1.7}.science-sources a,.science-links a{color:var(--teal);overflow-wrap:anywhere}.science-sources p,.science-protocol p,.capacity-context p{line-height:1.65;margin-top:9px}.capability-detail .plain-disclosure>summary,.capacity-options>summary{padding:12px 0;min-height:44px}.capacity-references small{color:var(--muted)}
@media(max-width:600px){.capacity-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-card{padding:13px;min-height:115px}.capacity-context{grid-template-columns:1fr;gap:18px}.capability-overview{padding:18px 14px}.capability-map{max-height:none;margin:12px -8px;width:calc(100% + 16px)}.capability-map text{font-size:25px}.capacity-legend{font-size:12px;gap:10px 14px}.capacity-reading .row{gap:8px}.capacity-value{font-size:29px}}
