/* MOMENTUM 4: time and activity lead; navigation remains a separate layer. */
:root{--moment-blue:#0968c8;--moment-green:#117b58;--moment-glow:rgba(9,104,200,.08)}
.main-area{margin:0 auto}
.topbar:has(.network-note:not([hidden])){flex-wrap:wrap}.network-note{flex:0 0 100%;padding:12px 15px;border-radius:12px;background:var(--surface-2);color:var(--muted);font-size:13px;line-height:1.5;margin:10px 0 0}.network-note[hidden]{display:none}
/* Recovery and decision panels replace timer controls, rather than stacking them. */
.focus-card:has(.focus-recovery) .ring,.focus-card:has(.focus-recovery) .tabs,.focus-card:has(.focus-recovery) .first-step{display:none}
.focus-card:has(.focus-decision) .ring,.focus-card:has(.focus-decision) .tabs,.focus-card:has(.focus-decision) .first-step{display:none}
.replan-options{display:grid;gap:14px;margin:22px 0}.replan-option{padding:21px;background:var(--surface-2);border:1px solid var(--line);border-radius:20px}
.replan-option>strong{display:block;font-size:29px;line-height:1.2;font-weight:500;letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:14px 0 10px}
.replan-option>p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 17px}
.focus-recovery{background:var(--surface-2);border-radius:23px;padding:24px;margin-top:24px;text-align:left}
.focus-recovery h3{font-size:26px;font-weight:600;line-height:1.2;letter-spacing:-.035em;margin:14px 0 12px}
.focus-card .focus-recovery p{font-size:14px;line-height:1.6;margin:0 0 18px}
.recovery-step{padding:18px;background:var(--surface);border-radius:15px;margin:20px 0}
.recovery-step small{font-size:10px;letter-spacing:.07em;color:var(--muted);display:block;margin-bottom:9px}.recovery-step strong{font-size:17px;line-height:1.5;font-weight:500;display:block}
.focus-recovery .action{margin-top:10px}.focus-recovery .inline-link{display:flex;justify-content:center;width:100%;font-size:14px;margin:10px 0}.focus-recovery .muted-small{margin-top:12px!important}
.recovery-trigger{display:flex;justify-content:center;margin:16px auto 0;font-size:14px}
@media(max-width:690px){.focus-recovery{padding:20px}.focus-recovery h3{font-size:24px}}
.focus-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px;background:var(--blue-wash);border-radius:20px;margin:0 0 25px}
.focus-summary>div{min-width:0}.focus-summary span{display:block;font-size:12px;color:var(--brand-blue);font-weight:550}.focus-summary strong{display:block;font-size:18px;line-height:1.35;margin-top:7px;overflow-wrap:anywhere}.focus-summary small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:7px}
.focus-summary .action{flex-shrink:0}.focus-decision{background:var(--surface-2);padding:24px;border-radius:23px;text-align:left;margin-top:24px}
.focus-decision h3{font-size:25px;font-weight:600;line-height:1.2;letter-spacing:-.035em;margin:14px 0 10px}.focus-card .focus-decision p{font-size:14px;line-height:1.6;margin-bottom:20px}
.focus-decision .action{margin-top:10px}.focus-decision .inline-link{display:flex;width:100%;justify-content:center;margin-top:10px;font-size:14px}
@media(max-width:690px){.focus-summary{flex-direction:column;align-items:stretch}.focus-summary .action{align-self:flex-start}.focus-decision{padding:20px}}
.account-session{border-radius:15px;padding:15px 17px;background:var(--blue-wash);color:var(--text);font-size:14px;overflow-wrap:anywhere;margin:18px 0}
.account-section{padding:8px 0 24px;margin:20px 0;border-bottom:1px solid var(--line)}.account-section h3{font-size:23px;font-weight:600;letter-spacing:-.03em;margin:0 0 18px}
.account-step{display:flex;gap:12px;align-items:flex-start;padding:14px 0}.account-step-number{width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--surface-2);color:var(--muted);display:grid;place-items:center;font-size:13px}
.account-step-number.ready{background:var(--soft-mint);color:var(--success)}.account-step strong{display:block;font-size:16px;font-weight:550}.account-step small{display:block;font-size:13px;color:var(--muted);line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
.account-backup-state{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.account-help{margin:20px 0}.account-help>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--brand-blue);font-size:14px}.account-help[open]>summary{margin-bottom:14px}
.account-section .form+.form{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.move-summary h3{font-size:25px;letter-spacing:-.035em;line-height:1.25;margin:10px 0 8px;font-weight:600;overflow-wrap:anywhere}
.move-summary p{font-size:14px;color:var(--muted);margin:0;font-variant-numeric:tabular-nums}
.move-shortcuts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.move-shortcuts .inline-link{font-size:13px}
.move-preview{padding:19px;border-radius:17px;background:var(--blue-wash);display:grid;gap:6px}
.move-preview span{font-size:12px;color:var(--muted)}.move-preview strong{font-size:29px;font-weight:500;letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--text)}.move-preview small{font-size:12px;color:var(--muted)}
.move-clear{font-size:13px;color:var(--success);margin:15px 0 0;line-height:1.5}
.move-conflicts{padding:17px;margin-top:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);line-height:1.5}
.move-conflicts strong{font-size:15px;font-weight:600}.move-conflicts ul{padding-left:19px;margin:10px 0}.move-conflicts li{font-size:14px;margin-top:6px;overflow-wrap:anywhere}.move-conflicts p{font-size:13px;color:var(--muted);margin:12px 0 0}
.setup-guide{position:relative;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:26px;margin-bottom:28px;overflow:hidden}
.setup-guide:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--moment-blue),var(--moment-green))}
.setup-guide h3{font-size:29px;font-weight:600;line-height:1.2;letter-spacing:-.035em;margin:18px 0 12px}
.setup-guide p{font-size:16px;color:var(--muted);line-height:1.6;margin:0 0 24px}
.setup-guide .action{background:linear-gradient(110deg,var(--moment-blue),var(--moment-green))!important}.setup-guide>.inline-link{display:flex;justify-content:center;width:100%;margin-top:8px;font-size:14px}
.local-storage-link{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--muted);padding:10px 0;min-height:44px;font-size:12px;text-align:left}
.local-storage-link .icon{width:15px;height:15px}
.welcome-choices{display:grid;gap:10px}.welcome-choice{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:15px;padding:15px;cursor:pointer;min-height:76px}
.welcome-choice input{width:18px;height:18px;accent-color:var(--brand-blue);flex-shrink:0}
.welcome-choice>.icon{color:var(--brand-blue)}.welcome-choice strong{font-size:15px;font-weight:600;display:block}.welcome-choice small{font-size:13px;color:var(--muted);display:block;margin-top:4px;line-height:1.4}
.welcome-choice:has(input:checked){background:var(--blue-wash);border-color:var(--brand-blue)}
.task-extras>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;color:var(--brand-blue);font-size:14px;cursor:pointer;list-style:none;padding:8px 0}
.task-extras>summary:after{content:'⌄';font-size:20px}.task-extras[open]>summary:after{transform:rotate(180deg)}
.task-extras>.field,.task-extras>.form-row{margin-top:18px}
.storage-explainer{display:grid;gap:26px}.storage-explainer h3{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:600;letter-spacing:-.02em;margin:0 0 10px}
.storage-explainer h3 .icon{color:var(--brand-blue)}.storage-explainer p{font-size:15px;color:var(--muted);line-height:1.6;margin:0 0 13px}
.storage-explainer .inline-link{font-size:14px;padding-left:0;text-align:left}
@media(max-width:690px){.setup-guide{padding:24px}.setup-guide h3{font-size:27px}.setup-guide p{font-size:15px}.welcome-choice{padding:13px;gap:9px}.welcome-choice>.icon{display:none}}
html[data-theme="dark"]{--moment-glow:rgba(38,125,215,.09)}
.moment-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.8fr);gap:32px;align-items:start}
.moment-main,.moment-secondary{min-width:0}.moment-secondary{display:grid;gap:22px;padding-top:16px}
.moment-welcome{margin:8px 0 30px}.moment-welcome h2{font-size:34px;line-height:1.15;letter-spacing:-.04em;font-weight:500;margin:0 0 9px}
.moment-welcome p{font-size:14px;color:var(--muted);margin:0;text-transform:capitalize}
.moment-count{margin:0 0 28px}.moment-label{display:block;color:var(--muted);font-size:14px;line-height:1.5}
.moment-number{font-size:clamp(36px,4.4vw,56px);font-weight:350;line-height:1.12;letter-spacing:-.045em;color:var(--text);font-variant-numeric:tabular-nums;margin-top:8px}
.moment-feature{position:relative;overflow:hidden;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:27px;margin-bottom:26px}
.moment-feature:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--moment-blue),var(--moment-green))}
.moment-feature:after{content:"";position:absolute;top:0;right:0;width:160px;height:120px;background:radial-gradient(ellipse at top right,var(--moment-glow),transparent 75%);pointer-events:none}
.moment-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.moment-state{font-size:11px;font-weight:650;color:var(--success);letter-spacing:.055em}
.moment-category{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.moment-feature h2{font-size:34px;font-weight:650;letter-spacing:-.04em;line-height:1.15;margin:26px 0 9px;overflow-wrap:anywhere}
.moment-range{font-size:15px;color:var(--muted);margin:0;font-variant-numeric:tabular-nums}
.moment-first{margin:26px 0}.moment-first small{color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.08em}
.moment-first p{font-size:16px;line-height:1.55;margin:6px 0 0;overflow-wrap:anywhere}
.moment-actions{display:grid;gap:5px}.moment-actions .action,.moment-empty>.action,.moment-finish>.action{background:linear-gradient(110deg,var(--moment-blue),var(--moment-green))!important;color:#fff!important}
.moment-actions .inline-link{justify-content:center;font-size:14px;font-weight:500}
.moment-empty,.moment-finish{padding:30px 0 36px}.moment-empty h2,.moment-finish h2{font-size:40px;font-weight:550;line-height:1.12;letter-spacing:-.045em;margin:18px 0}
.moment-empty p,.moment-finish p{font-size:16px;color:var(--muted);line-height:1.6;margin:0 0 26px;max-width:430px}
.moment-empty>.action,.moment-finish>.action{width:100%}.moment-empty>.inline-link,.moment-finish>.inline-link{display:flex;justify-content:center;margin-top:8px}
.finish-icon{height:56px;width:56px;border-radius:50%;display:grid;place-items:center;background:var(--soft-mint);color:var(--success);margin-bottom:24px}
.moment-main>.upcoming-panel{padding:0;background:transparent!important;border-radius:0}.moment-main .upcoming-row{padding:18px 0}.moment-main .upcoming-row strong{font-size:16px;font-weight:550}.moment-main .upcoming-row small{font-size:13px;margin-top:5px}
.moment-main .upcoming-time{font-size:14px;color:var(--muted);font-weight:450;min-width:48px}.moment-main .upcoming-stripe{background:var(--moment-blue);opacity:.6;width:2px}
.moment-main .upcoming-panel .panel-title{font-size:21px;margin-bottom:0}
.moment-summary{padding:20px;background:var(--surface);border-radius:20px}.moment-summary>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;cursor:pointer;font-size:16px;font-weight:550;list-style:none}
.moment-summary>summary:after{content:'⌄';font-size:20px;color:var(--muted)}.moment-summary[open]>summary:after{transform:rotate(180deg)}
.moment-summary .overview-grid{margin:18px 0 0}.moment-summary .overview-tile{padding:8px;background:var(--surface-2)!important;border-radius:12px}.moment-summary .overview-tile .ov-icon{display:none}.moment-summary .overview-tile strong{font-size:26px}
.moment-summary .overview-tile small{font-size:12px}.moment-summary .day-closing{padding:0;margin-top:22px}.moment-summary .day-closing .panel-title{font-size:16px}.moment-summary .day-closing .report-badge{display:none}
.agenda-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 26px}
.agenda-date{min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 3px 11px;border:1px solid transparent;border-radius:17px;background:var(--surface);color:var(--muted)}
.agenda-date span{font-size:11px}.agenda-date strong{font-size:24px;font-weight:500;line-height:1.2;color:var(--text)}
.agenda-date i{width:4px;height:4px;border-radius:50%;background:transparent}.agenda-date i.has-blocks{background:var(--muted)}
.agenda-date.selected{border-color:var(--brand-blue);background:var(--blue-wash);color:var(--brand-blue)}.agenda-date.selected strong{color:var(--brand-blue)}.agenda-date.selected i.has-blocks{background:var(--brand-blue)}
.wizard-heading{font-size:26px;font-weight:550;line-height:1.2;letter-spacing:-.035em;margin:5px 0 25px}
.routine-wizard section{display:grid;gap:20px}.routine-wizard [hidden]{display:none!important}
.wizard-progress{display:flex;gap:6px;height:3px;margin:0 0 16px}.wizard-progress span{flex:1;height:3px;border-radius:100px;background:var(--line)}.wizard-progress span:first-child,.routine-wizard[data-step="2"] .wizard-progress span{background:linear-gradient(90deg,var(--moment-blue),var(--moment-green))}
.routine-wizard .inline-link{justify-content:flex-start;padding-left:0}
@media(max-width:940px){.moment-layout{grid-template-columns:1fr;gap:12px}.moment-secondary{padding-top:0}}
@media(max-width:690px){
 .topbar{min-height:72px}.content-area{padding-top:12px}
 .moment-layout{gap:20px}.moment-welcome{margin:8px 0 31px}.moment-welcome h2{font-size:32px;font-weight:450;max-width:250px}.moment-welcome p{font-size:13px}
 .moment-label{font-size:13px}.moment-number{font-size:46px}.moment-count{margin-bottom:26px}
 .moment-feature{padding:24px;border-radius:25px;margin-bottom:22px}.moment-feature h2{font-size:31px}.moment-first p{font-size:15px}
 .moment-empty,.moment-finish{padding-top:8px}.moment-empty h2,.moment-finish h2{font-size:36px}
 .moment-secondary{gap:20px}.moment-secondary .momentum-coach{display:none}
 .mobile-nav .mobile-create{flex:0 0 50px;min-height:50px;height:50px;border-radius:50%;margin:0 4px;color:#fff!important;background:linear-gradient(140deg,var(--moment-blue),var(--moment-green))!important}
 .mobile-nav .mobile-create .icon{height:25px;width:25px}
 .agenda-week{gap:5px;margin-bottom:23px}.agenda-date{border-radius:14px;padding:12px 2px 10px;gap:6px}.agenda-date strong{font-size:21px}
 .date-strip{margin-bottom:14px}.date-strip strong{font-size:14px}.date-strip small{font-size:11px}
 .day-guide{margin-top:0}.day-guide .guide-info strong{font-size:18px}
}
@media(max-width:360px){.moment-feature{padding:20px}.moment-number{font-size:40px}.moment-category{font-size:11px}.moment-state{font-size:10px}.moment-welcome h2{font-size:30px}}
