:root{color:#263238;background:#f7f4ee;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--paper: #fffdf8;--panel: #ffffff;--ink: #263238;--muted: #61707a;--line: #e4ded3;--blue: #3f6f88;--blue-soft: #e6f0f4;--green: #4f8a68;--green-soft: #e8f3ec;--gold: #c7a34b;--silver: #a5adb3;--bronze: #a46f45;--shadow: 0 18px 45px rgba(41, 45, 50, .08)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow-x:clip;background:linear-gradient(180deg,#fffdf8f0,#f7f4eefa),#f7f4ee}button,input,select,textarea{font:inherit}button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 13px;background:var(--panel);color:var(--ink);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}button:hover{border-color:#c8d4d9;background:#fbfdfe;transform:translateY(-1px)}button:disabled{cursor:wait;opacity:.65;transform:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(63,111,136,.25);outline-offset:2px}input,select,textarea{min-height:38px;border:1px solid var(--line);border-radius:8px;padding:9px 11px;background:#fff;color:var(--ink)}h1,h2,h3,h4,p{margin-top:0}h1{margin-bottom:8px;font-size:clamp(2rem,4vw,3.5rem);line-height:1}h2{margin-bottom:10px;font-size:clamp(1.5rem,2vw,2.1rem);line-height:1.12}h3{margin-bottom:12px;font-size:1rem}h4{margin-bottom:14px;font-size:1.1rem;line-height:1.28}.app-shell{width:min(1480px,100%);margin:0 auto;padding:22px}.loading-shell{display:grid;min-height:100vh;place-items:center}.soft-panel,.start-content,.dialog{width:min(720px,calc(100vw - 32px));border:1px solid var(--line);border-radius:8px;padding:32px;background:#fffffff5;box-shadow:var(--shadow)}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px}.eyebrow{margin-bottom:8px;color:var(--blue);font-size:.82rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.tagline{max-width:760px;color:var(--muted);font-size:1.08rem}.daily-thought{display:grid;max-width:760px;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;margin-top:14px;border-left:4px solid var(--gold);border-radius:0 8px 8px 0;padding:10px 12px;background:#eef7f1;color:#315f49}.daily-thought>svg{margin-top:2px;color:#b18424}.daily-thought div{display:flex;min-width:0;flex-wrap:wrap;gap:4px 9px;align-items:baseline}.daily-thought strong{color:#2f7556;font-size:.78rem;text-transform:uppercase}.daily-thought q{color:var(--ink);font-size:.94rem;font-weight:650}.daily-thought cite{color:var(--muted);font-size:.8rem;font-style:normal;white-space:nowrap}.status-stack{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px}.category-dot,.demo-pill,.account-pill{display:inline-flex;min-height:28px;align-items:center;border-radius:999px;padding:5px 10px;background:var(--blue-soft);color:#2f5b70;font-size:.82rem;font-weight:700}.demo-pill{background:#fff4d6;color:#725717}.account-pill{max-width:240px;overflow:hidden;background:var(--green-soft);color:#315f45;text-overflow:ellipsis;white-space:nowrap}.role-pill,.readonly-badge{display:inline-flex;min-height:30px;align-items:center;gap:6px;border:1px solid #b8d5c2;border-radius:999px;padding:5px 10px;background:var(--green-soft);color:#315f45;font-size:.8rem;font-weight:800}.account-button{white-space:nowrap}.sync-button{min-height:34px;border-color:#bfd6c8;padding:6px 10px;background:#f2f8f4;color:#315f45;font-size:.82rem;white-space:nowrap}.sync-button.sync-saving{border-color:#c8d4d9;background:var(--blue-soft);color:#2f5b70}.sync-button.sync-error{border-color:#e1b4ad;background:#fff1ef;color:#9a3e32}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sync-alert,.sync-recovered{display:flex;align-items:center;gap:12px;margin-bottom:14px;border:1px solid #e1b4ad;border-radius:8px;padding:11px 13px;background:#fff5f3;color:#87362c}.sync-alert div{display:grid;flex:1;gap:2px}.sync-alert span{color:#76534e;font-size:.86rem}.sync-alert button{flex:0 0 auto}.sync-recovered{border-color:#bfd6c8;background:#f2f8f4;color:#315f45;font-size:.9rem;font-weight:700}.database-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 0}.database-toolbar>strong{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.86rem}.database-toolbar>div{display:flex;flex-wrap:wrap;gap:8px}.database-toolbar button{min-height:34px;padding:6px 10px;font-size:.84rem}.icon-button{width:42px;min-width:42px;padding:0}.heading-with-info{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.info-tip{position:relative;z-index:4;display:inline-grid;width:24px;min-width:24px;height:24px;place-items:center;border:1px solid #c7d5db;border-radius:50%;background:#f8fbfc;color:var(--blue);cursor:help;vertical-align:middle}.info-tip.compact,.info-tip.nav-info{width:20px;min-width:20px;height:20px}.info-tip:focus-visible{outline:3px solid rgba(63,111,136,.25);outline-offset:2px}.info-tooltip{position:absolute;z-index:80;top:calc(100% + 8px);left:50%;display:none;width:min(290px,calc(100vw - 32px));border:1px solid #c8d4d9;border-radius:8px;padding:10px 11px;background:#263238;box-shadow:0 12px 30px #26323833;color:#fff;font-size:.78rem;font-weight:500;line-height:1.4;opacity:0;pointer-events:none;text-align:left;transform:translate(-50%,-4px);transition:opacity .14s ease,transform .14s ease;visibility:hidden;white-space:normal}.info-tip:hover .info-tooltip,.info-tip:focus .info-tooltip,.tabs button:hover .nav-info .info-tooltip,.tabs button:focus-visible .nav-info .info-tooltip{display:block;opacity:1;transform:translate(-50%);visibility:visible}.template-download-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:8px;border:1px solid #bfd6c8;border-radius:8px;padding:9px 13px;background:var(--green-soft);color:#315f45;font-size:.84rem;font-weight:800;text-decoration:none}.template-download-button:hover{border-color:#94bda2;background:#dceee3}.tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;border-bottom:1px solid var(--line);padding-bottom:10px}.tabs button.active,.segmented button.active,.chip.active,.choice.active{border-color:var(--blue);background:var(--blue-soft);color:#224e63}.guardian-nav-button{position:relative}.guardian-alert-badge{display:inline-flex;width:19px;height:19px;align-items:center;justify-content:center;border:2px solid #fff;border-radius:50%;background:#b42318;color:#fff;font-size:.72rem;font-weight:900;line-height:1}.primary-button{border-color:var(--blue);background:var(--blue);color:#fff}.primary-button:hover{background:#345f75;color:#fff}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.side-rail{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;align-items:stretch}.tool-energy{grid-column:span 4;order:1}.tool-pulse{grid-column:span 2;order:2}.tool-water,.tool-time{grid-column:span 3}.tool-water{order:3}.tool-time{order:4}.tool-run{grid-column:span 3;order:5}.tool-work-timer{grid-column:span 6;order:7}.tool-mindfulness{grid-column:span 3;order:6}.tool-section{display:grid;align-content:start;border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px;background:#ffffffd1}.tool-section h3{margin-bottom:8px;font-size:.95rem}.tool-section h3 svg{flex:0 0 auto}.tool-section p{margin-bottom:0;color:var(--muted)}.tool-mindfulness p{font-size:.8rem}.mindfulness-quick-times,.mindfulness-widget-actions{display:flex;gap:6px;margin-top:9px}.mindfulness-quick-times button{flex:1;min-height:32px;padding:5px;font-size:.76rem}.mindfulness-quick-times button.active,.mindfulness-duration-picker button.active,.mindfulness-needs button.active,.mindfulness-feelings button.active{border-color:var(--green);background:var(--green-soft);color:#315f45}.mindfulness-widget-actions button{flex:1;min-width:0;padding-inline:8px;font-size:.76rem}.editable-task-title,.editable-task-title-form{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:7px;align-items:start;margin-bottom:14px}.editable-task-title h4{min-width:0;margin:0;overflow-wrap:anywhere}.editable-task-title .icon-button,.editable-task-title-form .icon-button{width:36px;min-width:36px;min-height:36px;padding:0}.editable-task-title-form{grid-template-columns:minmax(0,1fr) 36px 36px}.editable-task-title-form input{width:100%}.task-inbox-item .editable-task-title,.task-inbox-item .editable-task-title-form{margin-bottom:4px}.mindfulness-page{display:grid;gap:18px}.mindfulness-signin-panel{min-height:420px;place-content:center;justify-items:start;max-width:780px}.mindfulness-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.mindfulness-heading p:last-child{margin:0;color:var(--muted)}.mindfulness-trace{display:flex;align-items:center;gap:10px;min-width:220px;border-left:1px solid var(--line);padding-left:20px}.mindfulness-trace-ring,.mindfulness-time-ring{display:grid;flex:0 0 auto;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff 57%,transparent 59%),conic-gradient(var(--green) var(--trace),#e5ebe7 0);color:var(--green)}.mindfulness-trace-ring{width:54px;height:54px}.mindfulness-trace div:last-child{display:grid;gap:3px}.mindfulness-trace span{color:var(--muted);font-size:.82rem}.mindfulness-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line);padding-bottom:12px}.mindfulness-tabs button.active{border-color:var(--blue);background:var(--blue-soft);color:#28586e}.mindfulness-loading,.mindfulness-error{border:1px solid #d6e2e6;border-radius:8px;padding:12px 14px;background:#f6fafb;color:var(--muted)}.mindfulness-error{display:flex;align-items:center;justify-content:space-between;gap:12px;border-color:#e7beb8;background:#fff8f6;color:#943c31}.mindfulness-today,.mindfulness-library{display:grid;gap:16px}.mindfulness-needs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mindfulness-suggestions,.mindfulness-exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mindfulness-suggestions article,.mindfulness-exercise-card,.mindfulness-stats article,.mindfulness-day-details,.mindfulness-calendar-panel,.mindfulness-settings-panel,.mindfulness-common,.mindfulness-session-history{border:1px solid var(--line);border-radius:8px;padding:16px;background:#ffffffdb}.mindfulness-suggestions article,.mindfulness-exercise-card{display:grid;align-content:start;min-height:220px}.mindfulness-suggestions article>span,.mindfulness-exercise-card>span{color:var(--blue);font-size:.75rem;font-weight:800;text-transform:uppercase}.mindfulness-suggestions h4,.mindfulness-exercise-card h4{margin:9px 0 7px}.mindfulness-suggestions p,.mindfulness-exercise-card p{color:var(--muted);font-size:.86rem}.mindfulness-suggestions article>div,.mindfulness-exercise-card>button{display:flex;gap:8px;margin-top:auto}.mindfulness-exercise-card>button{justify-content:space-between}.mindfulness-exercise-card small{margin-bottom:12px;color:var(--muted)}.mindfulness-exercise-icon{display:grid;width:38px;height:38px;place-items:center;margin-bottom:12px;border-radius:50%;background:var(--green-soft);color:var(--green)}.mindfulness-start-dialog,.mindfulness-manual-dialog{display:grid;gap:12px;width:min(580px,calc(100vw - 32px))}.mindfulness-start-dialog .dialog-close,.mindfulness-manual-dialog .dialog-close{position:absolute;top:14px;right:14px}.mindfulness-duration-picker{display:flex;gap:8px;margin:6px 0}.mindfulness-duration-picker button{flex:1}.mindfulness-before-field,.mindfulness-manual-dialog label,.mindfulness-settings-panel label{display:grid;gap:6px;color:var(--muted);font-size:.84rem}.mindfulness-manual-dialog textarea,.mindfulness-completion textarea{width:100%;min-height:90px;resize:vertical;border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit}.mindfulness-session-screen{position:fixed;z-index:80;inset:0;display:grid;place-items:center;overflow:auto;padding:24px;background:#fbfaf7}.mindfulness-session-exit{position:fixed;top:22px;right:22px}.mindfulness-session-content{display:grid;width:min(760px,100%);justify-items:center;gap:18px;text-align:center}.mindfulness-restored-session{display:flex;align-items:center;gap:8px;max-width:620px;border:1px solid #cbdde4;border-radius:8px;padding:10px 13px;background:var(--blue-soft);color:#315e73;text-align:left}.mindfulness-session-content h1{max-width:18ch;font-size:clamp(2rem,5vw,4rem)}.mindfulness-session-content small{max-width:64ch;color:var(--muted)}.breathing-circle,.mindfulness-time-ring{width:min(300px,62vw);aspect-ratio:1;border:1px solid #cfe0d5}.breathing-circle{display:grid;place-items:center;border-radius:50%;background:#e7f1ea;color:#3f7957;transition:transform 6s ease-in-out,background 6s ease-in-out}.breathing-circle>*{grid-area:1 / 1}.breathing-circle span{align-self:end;margin-bottom:25%;font-weight:800}.breathing-circle.inhale{transform:scale(1);background:#e4f2e9}.breathing-circle.exhale{transform:scale(.72);background:#eaf0f2}.mindfulness-time-ring{--session-progress: 0%;background:radial-gradient(circle,#fbfaf7 61%,transparent 62%),conic-gradient(var(--blue) var(--session-progress),#e3e8e8 0);color:var(--blue)}.mindfulness-session-clock{font-size:clamp(2.5rem,7vw,5rem);font-variant-numeric:tabular-nums}.mindfulness-guide{margin:0;max-width:42ch;color:#3e5865;font-size:1.3rem;line-height:1.5;animation:mindfulness-guide-in .28s ease-out both}.mindfulness-guide-panel{display:grid;width:min(600px,100%);gap:10px;border:1px solid #d5e2e5;border-radius:8px;padding:16px 18px 18px;background:#fff;text-align:left}.mindfulness-step-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.88rem}.mindfulness-step-meta strong{color:var(--blue)}.mindfulness-step-progress{width:100%;height:7px;overflow:hidden;border-radius:999px;background:#e4e9e9}.mindfulness-step-progress span{display:block;height:100%;border-radius:inherit;background:var(--blue);transition:width .25s linear}.mindfulness-narrator-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.mindfulness-narrator-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.mindfulness-narrator-controls button[aria-pressed=true]{border-color:var(--blue);background:var(--blue-soft);color:#285b72}@keyframes mindfulness-guide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.mindfulness-session-controls,.mindfulness-return-actions,.mindfulness-stop-prompt>div,.mindfulness-feelings{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.mindfulness-completion,.mindfulness-stop-prompt{align-content:center;justify-items:center;gap:16px;text-align:center}.mindfulness-completion>*,.mindfulness-stop-prompt>*{width:min(720px,100%)}.mindfulness-completion-mark{display:grid;width:72px;height:72px;place-items:center;border-radius:50%;background:var(--green-soft);color:var(--green);animation:mindfulness-complete .6s ease-out both}@keyframes mindfulness-complete{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.mindfulness-calendar-layout,.mindfulness-history-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:14px;align-items:start}.mindfulness-calendar-header,.mindfulness-calendar-weekdays,.mindfulness-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.mindfulness-calendar-header{grid-template-columns:auto 1fr auto;align-items:center;margin-bottom:14px;text-align:center}.mindfulness-calendar-weekdays{margin-bottom:6px;color:var(--muted);font-size:.75rem;font-weight:800;text-align:center}.mindfulness-calendar-grid button{position:relative;display:grid;min-height:76px;align-content:space-between;padding:8px}.mindfulness-calendar-grid button.selected{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.mindfulness-calendar-grid button small{color:var(--muted);font-size:.66rem}.mindfulness-calendar-grid button:after{position:absolute;right:8px;bottom:8px;width:8px;height:8px;border-radius:50%;content:""}.mindfulness-calendar-grid .mark-dot:after{background:var(--green)}.mindfulness-calendar-grid .mark-partial:after{border:2px solid var(--green);border-top-color:transparent}.mindfulness-calendar-grid .mark-full:after{border:2px solid var(--green);background:var(--green-soft)}.mindfulness-day-details{display:grid;gap:10px}.mindfulness-day-details article{display:grid;grid-template-columns:1fr auto;gap:4px 8px;border-top:1px solid var(--line);padding-top:10px}.mindfulness-day-details article small,.mindfulness-day-details article p{grid-column:1 / -1;color:var(--muted)}.mindfulness-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mindfulness-stats article,.mindfulness-common{display:grid;gap:6px}.mindfulness-session-history{display:grid;gap:0;margin-top:14px}.mindfulness-session-history article{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.mindfulness-session-history article div{display:grid;gap:3px}.mindfulness-session-history small,.mindfulness-session-history>p{color:var(--muted)}.mindfulness-stats span,.mindfulness-common span{color:var(--muted);font-size:.8rem}.mindfulness-stats strong{color:var(--blue);font-size:1.6rem}.mindfulness-neutral-summary{margin:14px 0;border-left:3px solid var(--green);padding:12px 14px;background:var(--green-soft);color:#315f45}.mindfulness-settings-panel{display:grid;gap:12px}.mindfulness-settings-panel h3{display:flex;align-items:center;gap:8px}.mindfulness-settings-panel .mindfulness-toggle{display:flex;align-items:center;gap:8px;color:var(--ink)}.mindfulness-toggle input{width:18px;min-height:18px}.segmented,.chip-row,.card-actions,.secondary-actions,.dialog-actions,.header-actions,.start-actions{display:flex;flex-wrap:wrap;gap:8px}.segmented button{flex:1;min-width:62px;min-height:34px;padding:6px 8px}.pulse-wrap{display:grid;grid-template-columns:44px 1fr;gap:9px;align-items:center}.pulse-orb{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#fff 48%,transparent 50%),conic-gradient(var(--green) var(--pulse),#e7ece7 0);color:var(--green)}.tool-heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.tool-heading-row h3{display:flex;align-items:center;gap:7px;margin:0}.tool-heading-row strong{color:var(--blue);font-size:1rem}.water-cups{display:grid;grid-template-columns:repeat(8,minmax(24px,1fr));gap:4px}.water-cup{position:relative;width:100%;min-width:0;min-height:32px;padding:0;color:#71808a}.water-cup svg:last-child{position:absolute;right:2px;bottom:2px}.water-cup.filled{border-color:#8db8ca;background:#e6f4f8;color:#2f6d86}.water-actions{display:flex;gap:6px;margin-top:8px}.water-actions button:last-child{flex:1}.run-time{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;color:var(--muted);font-size:.82rem}.run-time input{width:108px}.sport-planner{display:grid;gap:8px;align-content:start}.sport-compact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(96px,.72fr);gap:8px;align-items:end}.sport-field,.work-timer-settings label{display:grid;gap:4px;color:var(--muted);font-size:.78rem}.sport-field select{width:100%}.sport-compact-grid>.wide-button{min-width:0;margin-top:0}.sport-planner .run-time{grid-template-columns:1fr}.sport-planner .run-time input{width:100%}.tool-work-timer{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(0,1.6fr) minmax(140px,.5fr);gap:8px 10px;align-items:end;align-content:center}.work-timer-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-column:1 / -1;gap:10px;align-items:center;margin-bottom:0}.work-timer-heading h3{display:flex;align-items:center;gap:7px;margin-bottom:4px}.work-timer-heading p{max-width:48ch;overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.work-timer-heading strong{min-width:108px;color:var(--blue);font-size:1.85rem;font-variant-numeric:tabular-nums;line-height:1;text-align:right}.work-timer-heading .timer-finished{color:var(--bronze)}.work-timer-settings{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px;grid-column:1 / 3}.timer-minutes-input input{width:100%}.timer-presets,.work-timer-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:0}.timer-presets{grid-column:1 / 3}.work-timer-actions{grid-column:3}.timer-presets button{flex:1;min-width:66px;min-height:34px;padding:6px 8px;font-size:.78rem}.work-timer-actions .primary-button{flex:1}.wide-button{width:100%;min-width:160px}.calm{background:#fdfbf6}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.task-board,.page-section{min-width:0}.task-column{transition:background .16s ease;margin-bottom:24px;border-top:4px solid var(--line);padding-top:14px}.task-column.is-over{background:#e2eff56b}.task-column-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px}.task-column-heading h3{flex:1;min-width:0;margin:0}.task-column-heading>span{display:inline-grid;min-width:26px;min-height:26px;place-items:center;border-radius:50%;background:#eef2f1;color:var(--muted);font-size:.78rem;font-weight:800}.task-column.gold{border-color:var(--gold)}.task-column.silver{border-color:var(--silver)}.task-column.bronze{border-color:var(--bronze)}.task-column.waiting{border-color:var(--blue)}.task-list,.future-grid,.thought-list,.settings-grid{display:grid;gap:12px}.task-list{grid-template-columns:repeat(4,minmax(0,1fr))}.task-list>.empty-text{grid-column:1 / -1;min-height:74px;border:1px dashed var(--line);border-radius:8px;padding:24px;text-align:center}.sortable-task{position:relative;min-width:0;height:100%;touch-action:manipulation}.sortable-task.dragging{z-index:10;opacity:.72}.sortable-task>.task-card{height:100%}.drag-handle.icon-button{position:absolute;z-index:2;top:8px;right:8px;width:32px;min-width:32px;min-height:32px;border-color:transparent;background:#ffffffe6;color:var(--muted);cursor:grab}.drag-handle:active{cursor:grabbing}.task-card,.thought-item,.recommendation-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:18px;background:var(--panel);box-shadow:0 8px 20px #292d320a}.task-card{display:flex;min-width:0;min-height:350px;flex-direction:column;padding:16px}.task-card:before,.recommendation-card:before{position:absolute;inset:0 auto 0 0;width:5px;content:""}.priority-gold:before{background:var(--gold)}.priority-silver:before{background:var(--silver)}.priority-bronze:before{background:var(--bronze)}.priority-waiting:before{background:var(--blue)}.card-topline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px;color:var(--muted);font-size:.78rem}.task-card h4{min-height:2.6em;margin-bottom:10px;font-size:1rem}.planned-time{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:6px;margin-bottom:10px;color:var(--muted);font-size:.78rem}.planned-time input{width:100%;min-height:34px;padding:5px 7px;font-size:.82rem}.task-due-date{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:6px;margin-bottom:8px;color:var(--muted);font-size:.78rem}.task-due-date input{width:100%;min-height:34px;padding:5px 7px;font-size:.82rem}.card-priority-select{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-content:start;gap:6px;margin:0;color:var(--muted);font-size:.78rem}.card-priority-select:before{width:9px;height:9px;border-radius:50%;content:""}.card-priority-select.gold:before{background:var(--gold)}.card-priority-select.silver:before{background:var(--silver)}.card-priority-select.bronze:before{background:var(--bronze)}.card-priority-select.waiting:before{background:var(--blue)}.card-priority-select select{width:100%;min-height:40px;padding:7px 8px;font-size:.82rem}.card-priority-select span{white-space:nowrap}.next-action{display:flex;align-items:flex-start;gap:8px;min-height:3em;margin-bottom:10px;color:#3c5663;font-size:.86rem;line-height:1.4;overflow:hidden}.next-action span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.next-action svg{flex:0 0 auto;margin-top:2px}.progress-control{display:grid;gap:8px;margin-bottom:12px;color:var(--muted);font-size:.78rem}input[type=range]{width:100%;accent-color:var(--blue);padding:0}.secondary-actions button{min-height:40px;padding:5px 7px;color:var(--muted);font-size:.73rem;line-height:1.2}.task-card .card-actions{display:grid;grid-template-columns:minmax(92px,.9fr) minmax(96px,120px) 42px 42px;gap:7px;margin-top:auto}.task-card .secondary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:7px}.task-card .future-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.future-task-card{min-height:250px}.done-button{border-color:#bdd6c6;color:var(--green)}.delete-task-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;border-color:#e2c1bc;color:#9a3f37}.delete-task-button:hover{background:#fff4f1}.start-five{display:block}.start-five select{width:78px;min-width:0;padding-inline:7px}.start-five button{min-width:0;padding-inline:8px}.helper-panel{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;border:1px solid #d7e2d9;border-radius:8px;padding:8px;background:var(--green-soft)}.helper-panel p{margin:0;font-size:.75rem}.helper-panel .chip{flex:0 0 auto;min-height:32px;padding:5px 8px;font-size:.72rem}.chip{min-height:34px;border-radius:999px;padding:6px 12px;background:#fff}.done-row{display:flex;align-items:center;gap:10px;border:1px solid #d7e2d9;border-radius:8px;padding:12px;background:var(--green-soft);color:#315f45}.empty-text{margin:0;color:var(--muted)}.empty-plan{display:grid;min-height:260px;place-items:center;align-content:center;border:1px dashed #bdcbd1;border-radius:8px;padding:32px;background:#ffffffa3;color:var(--muted);text-align:center}.empty-plan h3{margin:12px 0 6px;color:var(--ink);font-size:1.15rem}.empty-plan p{margin:0}.quick-add{display:flex;min-width:min(520px,100%);gap:8px}.quick-add input,.large-input input{flex:1;min-width:180px}.quick-add-date,.task-inbox-date{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:0 8px;background:var(--panel);color:var(--muted)}.quick-add-date input,.task-inbox-date input{width:132px;min-width:0;border:0;padding-inline:2px;background:transparent}.priority-picker{position:relative;flex:0 0 118px}.priority-picker:before{position:absolute;z-index:1;top:50%;left:10px;width:9px;height:9px;border-radius:50%;content:"";transform:translateY(-50%);pointer-events:none}.priority-picker.gold:before{background:var(--gold)}.priority-picker.silver:before{background:var(--silver)}.priority-picker.bronze:before{background:var(--bronze)}.priority-picker select{width:100%;height:100%;padding-left:26px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.large-input{display:flex;gap:10px;margin-bottom:18px}.external-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.calendar-link{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 13px;background:var(--panel);color:var(--ink);font-weight:700;text-decoration:none}.task-inbox-add{display:grid;grid-template-columns:minmax(0,1fr) minmax(165px,190px) auto;gap:10px;margin-bottom:16px}.task-inbox-field{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:700}.task-inbox-field input,.task-inbox-field textarea{width:100%}.task-inbox-description-field{grid-column:1 / -1;grid-row:2}.task-inbox-description-field textarea{min-height:56px;resize:vertical}.task-inbox-add>.task-inbox-date,.task-inbox-add>button{align-self:end;min-height:44px}.task-inbox-list{display:grid;gap:10px}.task-inbox-page{min-height:calc(100vh - 180px);padding-bottom:clamp(240px,36vh,420px)}.task-inbox-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid var(--line);border-left-width:5px;border-radius:8px;padding:12px;background:var(--panel)}.task-inbox-item.priority-gold{border-left-color:var(--gold)}.task-inbox-item.priority-silver{border-left-color:var(--silver)}.task-inbox-item.priority-bronze{border-left-color:var(--bronze)}.task-inbox-item.priority-waiting{border-left-color:var(--blue)}.task-inbox-main{min-width:0}.task-inbox-description-preview{margin:0;color:var(--muted);font-size:.82rem;line-height:1.35}.inbox-priority{grid-template-columns:auto minmax(96px,1fr);margin-bottom:0}.inbox-priority select{min-height:34px;padding:5px 7px}.task-inbox-actions{display:flex;flex-wrap:wrap;gap:8px}.task-inbox-order-actions{display:flex;gap:5px}.task-inbox-order-actions .icon-button{width:36px;min-width:36px;padding:0}.task-inbox-order-actions .icon-button:disabled{opacity:.35}.task-inbox-actions button{min-height:36px;padding:7px 10px}.inbox-due-date{margin:0}.task-inbox-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.task-inbox-meta .inbox-priority,.task-inbox-meta .inbox-due-date{min-height:38px}.task-inbox-details{margin-top:8px;border-top:1px solid var(--line)}.task-inbox-details summary{display:flex;min-height:36px;align-items:center;gap:8px;padding:7px 2px 2px;color:var(--blue);cursor:pointer;font-weight:750;list-style:none}.task-inbox-details summary::-webkit-details-marker{display:none}.task-inbox-details summary strong{margin-left:auto;color:var(--muted);font-size:.8rem}.task-inbox-details-content{display:grid;gap:10px;padding:8px 0 2px}.task-project-description{display:grid;gap:4px;color:var(--muted);font-size:.76rem;font-weight:700}.task-project-description textarea{width:100%;min-height:58px;padding:7px 9px;resize:vertical}.task-checklist-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,180px);gap:12px;align-items:center}.task-checklist-heading div{display:grid;gap:2px}.task-checklist-heading span{color:var(--muted);font-size:.78rem}.task-checklist-heading progress{width:100%;height:7px;accent-color:var(--green)}.task-checklist{display:grid;gap:2px;margin:0;padding:0;list-style:none}.task-checklist li{display:grid;grid-template-columns:20px minmax(0,1fr) 34px;gap:7px;align-items:center;border-bottom:1px solid #edf0ee;padding:4px 0}.task-checklist li:last-child{border-bottom:0}.task-checklist input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}.task-step-editor{display:grid;min-width:0;grid-template-columns:20px minmax(0,1fr) 16px;gap:5px;align-items:center}.task-step-editor>span{color:var(--muted);font-size:.74rem;font-weight:750;text-align:right}.task-step-editor>svg{color:var(--muted);pointer-events:none}.task-step-title-input{width:100%;min-width:0;min-height:34px;padding:5px 7px;background:#fbfcfb}.task-checklist li.completed .task-step-title-input{background:#f5f7f5;color:var(--muted);text-decoration:line-through}.task-checklist li>.icon-button{width:34px;min-width:34px;min-height:34px}.task-checklist-empty{margin:0;color:var(--muted);font-size:.84rem}.task-step-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.task-step-add input{min-width:0;min-height:36px;padding:7px 9px}.task-step-add button{min-height:36px;padding:7px 10px}.weekly-calendar-page{display:grid;gap:14px}.calendar-page-heading p:last-child{margin:6px 0 0;color:var(--muted)}.week-calendar-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.week-calendar-controls input{min-height:40px}.week-range-label{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:10px;color:var(--blue);font-weight:800}.week-range-label span{margin-left:auto;color:var(--muted);font-size:.8rem}.weekly-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:8px;overflow-x:auto;padding-bottom:8px}.calendar-day-column{min-height:420px;border:1px solid var(--line);border-radius:8px;background:#ffffffb8}.calendar-day-column.is-today{border-color:var(--blue);box-shadow:inset 0 3px 0 var(--blue)}.calendar-day-column>header{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:10px;text-transform:capitalize}.calendar-day-column>header strong{font-size:.82rem}.calendar-day-column>header span{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-size:.74rem;font-weight:800}.calendar-day-tasks{display:grid;gap:7px;padding:8px}.calendar-day-tasks>p{margin:18px 0;color:var(--muted);font-size:.76rem;text-align:center}.calendar-task{display:grid;gap:7px;border:1px solid var(--line);border-left:4px solid var(--silver);border-radius:7px;padding:9px;background:#fff}.calendar-task.priority-gold{border-left-color:var(--gold)}.calendar-task.priority-bronze{border-left-color:var(--bronze)}.calendar-task.priority-waiting{border-left-color:var(--blue)}.calendar-task.status-completed{opacity:.68}.calendar-task>div,.calendar-task>label{display:grid;gap:3px}.calendar-task strong{font-size:.82rem;overflow-wrap:anywhere}.calendar-task small,.calendar-task-done{color:var(--muted);font-size:.7rem}.calendar-task>label{grid-template-columns:auto 1fr;align-items:center}.calendar-task input{width:100%;min-width:0;min-height:31px;padding:4px;font-size:.7rem}.calendar-task-done{display:flex;align-items:center;gap:4px;color:var(--green);font-weight:700}.sport-month-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.sport-month-picker{display:flex;gap:6px}.sport-month-picker select{min-height:38px;padding:7px 30px 7px 10px;color:var(--blue);font-weight:800;text-transform:capitalize}.sport-month-picker select:first-child{width:150px}.sport-month-picker select:last-child{width:92px}.sport-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.sport-summary-card{border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--panel)}.sport-summary-card span,.sport-summary-card small{color:var(--muted);font-size:.78rem}.sport-summary-card strong{display:block;margin:8px 0 3px;color:var(--blue);font-size:clamp(1.4rem,3vw,2.1rem)}.sport-summary-card p{margin:0;font-weight:800}.metric-summary-card strong{overflow-wrap:anywhere}.sport-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:14px;align-items:start}.sport-calendar,.run-editor,.recent-runs,.trend-card{border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--panel)}.calendar-weekdays,.running-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekdays{margin-bottom:7px;color:var(--muted);font-size:.76rem;font-weight:800;text-align:center}.run-day{display:grid;min-width:0;min-height:86px;align-content:start;gap:5px;border-radius:8px;padding:8px;text-align:left}.run-day span{color:var(--muted);font-size:.78rem;font-weight:800}.run-day strong{color:var(--blue);font-size:.92rem}.run-day small{color:var(--muted);font-size:.72rem}.run-day.has-run{border-color:#bdd6c6;background:var(--green-soft)}.run-day.active{border-color:var(--blue);outline:3px solid rgba(63,111,136,.18)}.run-day.blank{border:0;background:transparent}.run-editor h3{margin-bottom:14px}.run-editor form,.run-editor label{display:grid;gap:8px}.run-editor form{gap:12px}.run-editor label span{color:var(--muted);font-size:.82rem;font-weight:800}.duration-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.run-editor-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.recent-runs{margin-top:14px}.section-header.compact{margin-bottom:10px}.recent-run-list{display:grid;gap:8px}.recent-run{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(100px,1fr) minmax(90px,auto) minmax(130px,auto) minmax(0,1.3fr);gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px}.recent-run span{font-weight:800}.recent-run small{color:var(--muted)}.trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.trend-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--panel)}.trend-toolbar>strong{margin-right:auto;color:var(--muted);font-size:.86rem}.trend-toolbar>select{min-width:230px}.trend-date-range{display:flex;gap:8px}.trend-date-range label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem;font-weight:800}.trend-date-range input{min-height:38px;padding:7px 9px}.trend-card{min-width:0}.trend-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.trend-heading h3,.trend-heading strong,.empty-trend p{margin:0}.trend-heading strong{color:var(--blue)}.trend-card svg{display:block;width:100%;height:auto;margin-top:8px}.trend-grid-line{stroke:#e4e0d7;stroke-width:1}.trend-line{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:5}.trend-point{fill:var(--panel);stroke:currentColor;stroke-width:4}.trend-weight{color:var(--green)}.trend-calories{color:var(--bronze)}.trend-axis{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.74rem}.empty-trend{display:grid;min-height:220px;align-content:center;gap:8px;color:var(--muted)}.start-screen,.dialog-backdrop{position:fixed;z-index:40;inset:0;display:grid;place-items:center;padding:16px;background:#2632383d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.start-content,.dialog{position:relative}.start-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.start-actions button{justify-content:flex-start;min-height:54px}.close-button{position:absolute;top:14px;right:14px}.wide-dialog{width:min(860px,calc(100vw - 32px))}.account-dialog{width:min(500px,calc(100vw - 32px))}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.auth-tabs button.active{border-color:var(--blue);background:var(--blue-soft);color:#224e63}.auth-form{display:grid;gap:14px}.google-auth-button{display:flex;width:100%;align-items:center;justify-content:center;gap:10px;min-height:48px;margin-top:18px;border-color:#cfd8dc;background:#fff;color:var(--ink);font-weight:800}.google-auth-button:hover:not(:disabled){border-color:#8ca4af;background:#f8fafb}.google-auth-mark{display:grid;width:24px;height:24px;place-items:center;color:#4285f4;font-size:1.1rem;font-weight:900}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:16px;color:var(--muted);font-size:.8rem}.auth-divider:before,.auth-divider:after{height:1px;background:var(--line);content:""}.auth-form>label{display:grid;gap:7px;color:var(--muted);font-size:.88rem}.auth-form>.guardian-toggle{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fbfcfa;color:var(--ink);cursor:pointer}.guardian-toggle input{width:18px;height:18px;margin:2px 0 0}.guardian-toggle span{display:grid;gap:3px}.guardian-toggle small{color:var(--muted);line-height:1.35}.portal-alert{display:flex;align-items:center;gap:10px;margin-bottom:12px;border:1px solid #e2c49e;border-radius:8px;padding:10px 12px;background:#fff8ed;color:#715229;font-size:.88rem}.portal-alert button{margin-left:auto}.guardian-consent-alert{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin-bottom:12px;border:1px solid #b8d4c2;border-radius:8px;padding:14px;background:#f3faf5;color:#315f45}.guardian-consent-alert p{margin:4px 0 10px;color:var(--muted);font-size:.82rem}.guardian-consent-row,.guardian-request-history>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;border-top:1px solid #cfe1d5;padding-top:9px}.guardian-request-history>.guardian-invitation-row{grid-template-columns:auto minmax(0,1fr) auto auto}.guardian-invitations-section.has-pending{border-color:#e1a49d;box-shadow:inset 4px 0 #b42318}.guardian-pending-count{display:inline-flex;align-items:center;gap:7px;color:#9f241b;font-weight:800}.guardian-pending-count b{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:50%;background:#b42318;color:#fff;line-height:1}.guardian-consent-row>span,.guardian-request-history span{display:grid;gap:2px}.guardian-consent-row small,.guardian-request-history small{color:var(--muted);font-size:.74rem}.consent-switch{display:inline-flex;align-items:center;gap:7px;border-color:#82b392;background:#fff;color:#315f45}.consent-switch>span{display:block;width:28px;height:16px;border-radius:999px;background:#bfd9c7;box-shadow:inset 12px 0 #4d8f65}.portal-page{display:grid;gap:16px;padding-top:18px}.portal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.portal-heading p:last-child{margin-bottom:0;color:var(--muted)}.portal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.portal-stats article{display:grid;min-height:98px;align-content:space-between;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:8px;padding:14px;background:var(--panel)}.portal-stats span{color:var(--muted);font-size:.82rem;font-weight:700}.portal-stats strong{font-size:1.65rem}.portal-section{min-width:0;border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--panel)}.portal-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.portal-section-heading h3,.portal-section-heading p{margin-bottom:0}.portal-section-heading>span{color:var(--muted);font-size:.8rem}.admin-profile-form{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(220px,1.4fr) minmax(170px,.8fr) auto;gap:10px;align-items:end}.admin-profile-form label{display:grid;gap:5px}.admin-profile-form label>span{color:var(--muted);font-size:.76rem;font-weight:800}.admin-profile-form input[readonly]{background:#f5f7f6;color:var(--muted)}.profile-save-status{margin:10px 0 0;color:var(--green);font-size:.82rem;font-weight:700}.profile-save-status.error{color:#a14436}.guardian-email-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.guardian-invite-help{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}.guardian-account-notice{display:flex;max-width:760px;align-items:flex-start;gap:7px;margin:10px 0 0;border-left:3px solid var(--gold);padding:8px 10px;background:#fff8e7;color:#72581f;font-size:.82rem;line-height:1.4}.guardian-account-notice svg{margin-top:1px;flex:0 0 auto}.guardian-email-form>label{display:grid;gap:6px}.guardian-email-form>label>span:first-child{color:var(--muted);font-size:.78rem;font-weight:800}.guardian-request-history{display:grid;gap:8px;margin-top:14px}.guardian-request-history>div{grid-template-columns:auto minmax(0,1fr) auto;padding:9px 2px 0}.portal-empty{display:flex;align-items:center;justify-content:center;gap:9px;min-height:100px;color:var(--muted)}.portal-empty.large{display:grid;min-height:260px;place-items:center;align-content:center;text-align:center}.portal-empty p,.portal-empty h3{margin:0}.guardian-request-list{display:grid;gap:12px}.guardian-request{display:grid;gap:13px;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:8px;padding:14px;background:#fffefa}.guardian-request.needs-my-decision{border-color:#e1a49d;box-shadow:inset 4px 0 #b42318}.request-person-label{display:block;margin-top:10px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.admin-guardian-decision{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border-top:1px solid #edd0cc;padding-top:12px}.admin-guardian-decision p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.request-summary{display:flex;justify-content:space-between;gap:18px}.request-summary h4,.request-summary p{margin:4px 0 0}.request-summary p{color:var(--muted);font-size:.8rem}.request-status,.role-label{display:inline-flex;border-radius:999px;padding:4px 8px;background:#fff3d8;color:#785b20;font-size:.72rem;font-weight:800}.status-approved,.role-guardian{background:var(--green-soft);color:#315f45}.status-rejected{background:#fbeae7;color:#914437}.role-admin{background:var(--blue-soft);color:#2f5b70}.requested-person{display:grid;min-width:220px;align-content:center;border-left:1px solid var(--line);padding-left:18px}.requested-person span,.assignment-picker label{color:var(--muted);font-size:.76rem;font-weight:700}.assignment-picker{display:grid;gap:6px}.assignment-picker>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.assigned-wards{display:flex;min-height:32px;flex-wrap:wrap;align-items:center;gap:7px}.assigned-wards>span{display:inline-flex;align-items:center;gap:5px;border:1px solid #bfd6c8;border-radius:999px;padding:4px 5px 4px 10px;background:var(--green-soft);color:#315f45;font-size:.78rem;font-weight:700}.assigned-wards button{min-width:24px;min-height:24px;border:0;border-radius:50%;padding:3px;background:transparent}.assigned-wards small,.muted-copy{color:var(--muted)}.request-actions{display:flex;justify-content:flex-end;gap:8px}.portal-table-wrap{overflow-x:auto}.portal-table{width:100%;border-collapse:collapse;text-align:left}.portal-table th,.portal-table td{border-bottom:1px solid var(--line);padding:11px 10px;font-size:.82rem}.portal-table th{color:var(--muted)}.portal-table td:first-child{display:grid;gap:2px}.portal-table td small{color:var(--muted)}.login-event-list{display:grid}.login-event-list>div,.activity-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:10px 4px}.login-event-list span,.activity-row span{display:grid;gap:2px}.login-event-list small,.activity-row small,.login-event-list time{color:var(--muted);font-size:.75rem}.ward-selector{display:grid;grid-template-columns:auto minmax(240px,420px);align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:var(--panel)}.ward-selector label{color:var(--muted);font-size:.82rem;font-weight:800}.ward-task-groups,.guardian-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.guardian-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ward-task-groups>div{min-width:0}.ward-task{display:flex;min-height:66px;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;border:1px solid var(--line);border-left:4px solid var(--silver);border-radius:8px;padding:10px}.ward-task.priority-gold{border-left-color:var(--gold)}.ward-task.priority-bronze{border-left-color:var(--bronze)}.ward-task.priority-waiting{border-left-color:var(--blue)}.ward-task>div{display:grid;gap:4px;min-width:0}.ward-task strong{overflow-wrap:anywhere}.ward-task small,.ward-task>span{color:var(--muted);font-size:.72rem}.auth-input{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding-left:11px;background:#fff}.auth-input:focus-within{border-color:var(--blue);outline:3px solid rgba(63,111,136,.18)}.auth-input input{min-width:0;border:0;outline:0}.link-button{width:fit-content;min-height:0;border:0;padding:0;background:transparent;color:var(--blue);font-weight:800}.link-button:hover{text-decoration:underline}.forgot-password{justify-self:end;margin-top:-4px}.form-error{margin:0;color:#a33f36;font-size:.88rem}.form-success{margin:0;color:#386a4d;font-size:.9rem;font-weight:700}.account-confirmation{text-align:center}.account-confirmation p:not(.eyebrow){color:var(--muted);line-height:1.55}.account-icon{display:grid;width:58px;height:58px;place-items:center;margin:0 auto 16px;border-radius:50%;background:var(--green-soft);color:var(--green)}.confirmation-actions{display:grid;gap:10px;margin-top:18px}.choice-list{display:grid;gap:8px;max-height:min(420px,54vh);overflow:auto;margin:18px 0}.choice{justify-content:space-between;width:100%;text-align:left}.focus-mode{display:grid;min-height:68vh;place-items:center}.focus-card{width:min(860px,100%);border:1px solid var(--line);border-radius:8px;padding:clamp(22px,4vw,44px);background:var(--panel);box-shadow:var(--shadow)}.focus-topline{display:flex;justify-content:space-between;gap:14px;color:var(--muted)}.focus-message{margin:12px 0 18px;color:var(--blue);font-weight:800}.focus-session-setup{display:grid;gap:16px;margin:26px 0 8px;border:1px solid var(--line);border-radius:8px;padding:clamp(16px,3vw,24px);background:#fbfaf6}.session-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.session-fields label{display:grid;gap:8px;color:var(--muted);font-weight:700}.session-fields input{width:100%;font-weight:700}.three-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.focus-presets{margin:0}.break-switch{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:800}.break-switch input{width:20px;min-height:20px;accent-color:var(--blue)}.break-plan,.focus-session-summary{display:flex;flex-wrap:wrap;gap:8px}.break-plan span,.focus-session-summary span{display:inline-flex;min-height:32px;align-items:center;border-radius:999px;padding:6px 10px;background:var(--blue-soft);color:#2f5b70;font-size:.9rem;font-weight:700}.focus-session-summary{margin-top:22px}.focus-setup-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.timer-wrap{display:grid;justify-items:center;gap:12px;margin:28px 0}.timer-wrap strong{font-size:clamp(2rem,8vw,4rem);line-height:1}.visual-timer{display:grid;width:clamp(150px,28vw,230px);height:clamp(150px,28vw,230px);place-items:center;border-radius:50%;background:radial-gradient(circle at center,#fff 58%,transparent 60%),conic-gradient(var(--blue) var(--timer-deg),#e7edf0 0);color:var(--blue)}.timer-toggle{min-width:140px}.focus-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.focus-actions button{min-height:52px}.inline-form{display:grid;gap:10px;margin-top:16px;border:1px solid var(--line);border-radius:8px;padding:16px;background:#fbfaf6}.inline-form label{display:grid;gap:8px;color:var(--muted)}.after-timer,.wellbeing{margin-top:16px}.reward-note{display:inline-flex;align-items:center;gap:8px;margin:18px 0 0;color:#365c44}.step-inputs{display:grid;gap:10px;margin:18px 0}.thought-item p{margin-bottom:14px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--panel)}.setting-row input[type=checkbox]{width:42px;min-width:42px;height:24px;accent-color:var(--blue)}.module-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;border:1px solid #cbdce3;border-radius:8px;padding:10px 12px;background:#f2f8fa;color:#31596c}.module-notice button{min-width:32px;min-height:32px;border:0;padding:5px;background:transparent}.module-save-status{display:inline-flex;align-items:center;gap:7px;min-height:28px;margin:16px 0 0;color:#35674a;font-size:.82rem;font-weight:800}.module-save-status.status-error{color:var(--danger)}.module-settings-section{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.module-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.module-section-heading h3{margin:0 0 5px;font-size:1.22rem}.module-section-heading p{margin:0;color:var(--muted);font-size:.9rem}.module-preset-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.module-preset-buttons button{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 11px;white-space:nowrap}.module-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module-toggle-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:116px;border:1px solid var(--line);border-radius:8px;padding:14px;background:#ffffffdb;transition:border-color .16s ease,background .16s ease}.module-toggle-card.is-enabled{border-color:#b9d1dc;background:#f7fbfd}.module-toggle-card.is-disabled{background:#f7f7f5;color:var(--muted)}.module-card-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:var(--blue-soft);color:var(--blue)}.module-card-copy{min-width:0}.module-card-copy h4,.module-card-copy p{margin:0}.module-card-copy h4{margin-bottom:5px;font-size:.96rem}.module-card-copy p{color:var(--muted);font-size:.8rem;line-height:1.42}.module-card-copy small{display:inline-flex;align-items:center;gap:5px;margin-top:7px;color:#4e6c7a;font-weight:800}.preference-switch{display:grid;grid-template-columns:44px;justify-items:center;gap:5px;min-width:82px;border:0;padding:4px;background:transparent;color:var(--muted)}.preference-switch>span{position:relative;display:block;width:44px;height:24px;border:1px solid #9aa8ae;border-radius:999px;background:#dfe4e6}.preference-switch>span:after{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #1f2d3440;content:"";transition:transform .16s ease}.preference-switch strong{font-size:.68rem;letter-spacing:0}.preference-switch.is-on{color:#285a6f}.preference-switch.is-on>span{border-color:var(--blue);background:var(--blue)}.preference-switch.is-on>span:after{transform:translate(20px)}.preference-switch:focus-visible{outline:3px solid rgba(66,124,151,.28);outline-offset:2px}.preference-switch:disabled{cursor:not-allowed;opacity:.56}.celebration{position:fixed;z-index:50;right:22px;bottom:22px;display:inline-flex;align-items:center;gap:10px;border:1px solid #d7e2d9;border-radius:8px;padding:14px 16px;background:#f8fff8;color:#315f45;box-shadow:var(--shadow);animation:liftCelebration 1.2s ease both}@keyframes liftCelebration{0%{opacity:0;transform:translateY(12px)}20%,80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.simplified .card-topline,.simplified .secondary-actions,.simplified .pulse-section{display:none}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{transition-duration:1ms!important;animation-duration:1ms!important}.reduced-motion button:hover{transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:1ms!important;animation-duration:1ms!important}button:hover{transform:none}}@media(max-width:1220px){.sport-summary-grid,.side-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.side-rail>*{grid-column:auto}.tool-work-timer{grid-template-columns:1fr}.work-timer-settings,.timer-presets,.work-timer-actions{grid-column:1}.task-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.app-shell{padding:18px}.settings-grid,.module-settings-grid{grid-template-columns:1fr}.task-inbox-item{grid-template-columns:42px minmax(0,1fr)}.task-inbox-item .card-priority-select,.task-inbox-item .inbox-due-date,.task-inbox-actions{grid-column:2}.task-inbox-page{padding-bottom:42vh}.sport-layout,.trend-grid,.recent-run,.mindfulness-calendar-layout,.mindfulness-history-layout{grid-template-columns:1fr}.mindfulness-suggestions,.mindfulness-exercise-grid,.task-list{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar,.section-header,.portal-heading{flex-direction:column;align-items:stretch}.portal-stats,.ward-task-groups,.admin-profile-form{grid-template-columns:repeat(2,minmax(0,1fr))}.header-actions,.quick-add{width:100%}}@media(max-width:640px){.app-shell{padding:14px}.tabs{display:grid;grid-template-columns:1fr 1fr}.module-section-heading{align-items:stretch;flex-direction:column}.module-preset-buttons{display:grid;grid-template-columns:1fr}.module-preset-buttons button{width:100%;white-space:normal}.module-toggle-card{grid-template-columns:auto minmax(0,1fr)}.preference-switch{grid-column:1 / -1;grid-template-columns:44px auto;justify-content:end;align-items:center;justify-items:start;width:100%}.info-tooltip{position:fixed;z-index:120;inset:auto 16px 16px;width:auto;max-width:none;transform:translateY(4px)}.info-tip:hover .info-tooltip,.info-tip:focus .info-tooltip,.tabs button:hover .nav-info .info-tooltip,.tabs button:focus-visible .nav-info .info-tooltip{transform:translateY(0)}.mindfulness-heading{align-items:stretch;flex-direction:column}.mindfulness-trace{border-top:1px solid var(--line);border-left:0;padding-top:14px;padding-left:0}.mindfulness-tabs{display:grid;grid-template-columns:1fr 1fr}.mindfulness-needs,.mindfulness-suggestions,.mindfulness-exercise-grid,.mindfulness-stats{grid-template-columns:1fr}.mindfulness-calendar-panel{overflow-x:auto}.mindfulness-calendar-weekdays,.mindfulness-calendar-grid{min-width:560px}.mindfulness-session-screen{padding:76px 16px 24px}.mindfulness-session-exit{top:14px;right:14px}.mindfulness-session-controls,.mindfulness-narrator-controls,.mindfulness-return-actions,.mindfulness-stop-prompt>div{width:100%;flex-direction:column}.mindfulness-session-controls button,.mindfulness-narrator-controls button,.mindfulness-return-actions button,.mindfulness-stop-prompt button{width:100%}.mindfulness-guide-panel{padding:14px}.mindfulness-step-meta{align-items:flex-start;flex-direction:column;gap:3px}.mindfulness-duration-picker{display:grid;grid-template-columns:repeat(2,1fr)}.status-stack{width:100%;justify-content:flex-start}.sync-alert{align-items:flex-start;flex-direction:column}.sync-alert button{width:100%}.database-toolbar,.database-toolbar>div{align-items:stretch;flex-direction:column;width:100%}.database-toolbar button{width:100%}.side-rail,.task-list{grid-template-columns:1fr}.side-rail>.wide-button{grid-column:auto}.water-cups{grid-template-columns:repeat(8,minmax(28px,1fr))}.water-cup{width:100%;min-width:0}.tabs button,.card-actions button,.secondary-actions button,.focus-actions button,.start-actions button{width:100%}.start-actions,.focus-actions{grid-template-columns:1fr}.soft-panel,.start-content,.dialog,.focus-card{padding:22px}.large-input,.quick-add,.task-inbox-add{flex-direction:column;grid-template-columns:1fr}.task-inbox-description-field{grid-column:1;grid-row:auto}.task-inbox-add>button{width:100%}.task-inbox-item{grid-template-columns:1fr}.task-inbox-complete,.task-inbox-main,.task-inbox-actions{grid-column:1}.task-inbox-complete{justify-self:start}.task-inbox-actions button,.task-step-add button{width:100%}.task-checklist-heading,.task-step-add{grid-template-columns:1fr}.daily-thought div{display:grid}.priority-picker{flex-basis:auto;width:100%;min-height:44px}.quick-add-date,.task-inbox-date,.quick-add-date input,.task-inbox-date input{width:100%}.sport-summary-grid{grid-template-columns:1fr;gap:8px}.sport-month-controls,.sport-month-picker{width:100%}.sport-month-controls>button,.sport-month-picker select{flex:1;width:auto}.trend-toolbar,.trend-toolbar>select,.trend-date-range,.trend-date-range label,.trend-date-range input{width:100%}.trend-date-range{flex-direction:column}.calendar-weekdays,.running-calendar-grid{gap:4px}.run-day{min-height:64px;padding:6px}.run-day strong,.run-day small{font-size:.68rem}.quick-add>.icon-button{width:100%}.work-timer-heading,.work-timer-settings{grid-template-columns:1fr}.work-timer-heading strong{text-align:left}.session-fields,.three-fields,.focus-setup-actions,.sport-compact-grid{grid-template-columns:1fr}.portal-alert,.guardian-consent-alert,.request-summary,.request-actions{align-items:stretch;flex-direction:column}.guardian-consent-alert,.guardian-consent-row,.guardian-request-history>.guardian-invitation-row{grid-template-columns:1fr}.guardian-request-history>.guardian-invitation-row button{width:100%}.admin-guardian-decision{grid-template-columns:1fr}.admin-guardian-decision button{width:100%}.portal-alert button,.request-actions button{width:100%;margin-left:0}.portal-stats,.ward-task-groups,.guardian-activity-grid,.admin-profile-form{grid-template-columns:1fr}.template-download-button{width:100%}.requested-person{min-width:0;border-top:1px solid var(--line);border-left:0;padding-top:10px;padding-left:0}.assignment-picker>div,.ward-selector,.guardian-email-form,.guardian-consent-row{grid-template-columns:1fr}.assignment-picker button,.ward-selector select{width:100%}}
