.auth-screen{display:flex;align-items:center;justify-content:center;min-height:var(--screen-h);background:var(--bg);padding:20px}.auth-card{width:100%;max-width:400px;background:var(--surface);border:1px solid transparent;border-radius:16px;padding:40px 32px 32px}.auth-logo{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:28px}.auth-mark{width:32px;height:32px;border-radius:10px;background:var(--accent);color:var(--accent-on);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;font-family:var(--heading);box-shadow:none}.auth-wordmark{font-family:var(--heading);font-weight:700;font-size:18px;letter-spacing:-.02em;color:var(--ink)}.auth-title{font-family:var(--heading);font-size:20px;font-weight:700;color:var(--ink);text-align:center;margin:0 0 4px}.auth-subtitle{font-size:13.5px;color:var(--muted);text-align:center;margin:0 0 24px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:flex;flex-direction:column;gap:5px}.auth-label{font-size:12px;font-weight:700;color:var(--muted)}.auth-input{background:var(--surface2);border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:16px;font-family:inherit;color:var(--ink);outline:none;transition:border-color .15s}.auth-input::placeholder{color:var(--muted);opacity:.6}.auth-input:focus{border-color:var(--accent);box-shadow:none}.auth-error{background:#e85a721f;border:1px solid rgba(232,90,114,.25);border-radius:8px;padding:10px 14px;font-size:13px;color:#f07088;line-height:1.4}.auth-btn{background:var(--accent);color:var(--accent-on);border:none;border-radius:10px;padding:11px 20px;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .15s,transform .1s;margin-top:4px}@media (hover: hover){.auth-btn:hover{opacity:.9}}.auth-btn:active{transform:scale(.98)}.auth-btn:disabled{opacity:.5;cursor:not-allowed}.auth-toggle{text-align:center;font-size:13px;color:var(--muted);margin:20px 0 0}.auth-toggle-btn{background:none;border:none;color:var(--accent-ink);font-weight:600;font-size:13px;cursor:pointer;font-family:inherit;padding:0}@media (hover: hover){.auth-toggle-btn:hover{text-decoration:underline}}.auth-confirm{text-align:center}.auth-confirm h2{font-family:var(--heading);font-size:18px;font-weight:700;color:var(--ink);margin:0 0 8px}.auth-confirm p{font-size:13.5px;color:var(--ink2);line-height:1.5;margin:0 0 20px}.auth-confirm strong{color:var(--ink)}.auth-dev-logins{display:flex;align-items:center;gap:8px;margin-top:20px;padding-top:16px;border-top:1px dashed var(--line)}.auth-dev-label{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--muted);opacity:.5}.auth-dev-btn{flex:1;background:var(--surface2);border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600;font-family:inherit;color:var(--ink2);cursor:pointer;transition:border-color .15s,transform .1s}@media (hover: hover){.auth-dev-btn:hover{border-color:var(--accent)}}.auth-dev-btn:active{transform:scale(.97)}.auth-dev-btn:disabled{opacity:.4;cursor:not-allowed}.auth-dev-btn--coach{border-color:color-mix(in srgb,var(--accent) 25%,transparent)}@media (max-width: 480px){.auth-card{padding:32px 20px 24px;border-radius:12px}}.auth-note{margin:-2px 0 14px;padding:10px 12px;border-radius:8px;font-size:13px;line-height:1.5;color:var(--accent-ink);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.auth-note--notice{color:var(--ink);background:var(--notice-soft);border-color:var(--notice-line)}.auth-note-head{margin:0 0 4px;font-weight:600}.auth-note-body{margin:0}.auth-toggle--muted{opacity:.72;font-size:12px}.asb{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--notice-soft);border-bottom:1px solid var(--notice-line);color:var(--ink);font-family:var(--body);font-size:14px;font-weight:500;line-height:1.35}.asb--update{padding:6px 12px 6px 16px}.asb-icon{flex:none;color:var(--notice)}.asb-text{flex:1;min-width:0}.asb-reload{flex:none;min-height:var(--tap-min);min-width:var(--tap-min);padding:0 18px;border:none;border-radius:12px;background:var(--surface3);color:var(--ink);font-family:var(--body);font-size:15px;font-weight:700;cursor:pointer}.boot-offline{position:fixed;top:0;left:0;right:0;padding-top:calc(10px + env(safe-area-inset-top))}.sp-wrap{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 20px;background:var(--bg)}.sp-card{width:100%;max-width:380px;display:flex;flex-direction:column;background:var(--surface);border:1px solid transparent;border-radius:16px;padding:28px 24px;animation:sp-in .2s cubic-bezier(.23,1,.32,1) both}@keyframes sp-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.sp-card{animation:sp-fade .2s ease both}@keyframes sp-fade{0%{opacity:0}to{opacity:1}}}.sp-title{margin:0 0 6px;font-size:20px;font-weight:700;color:var(--ink);letter-spacing:-.01em}.sp-sub{margin:0 0 22px;font-size:14px;line-height:1.5;color:var(--muted)}.sp-label{font-size:12px;font-weight:600;color:var(--ink2);margin-bottom:6px}.sp-field{position:relative;display:flex;align-items:center}.sp-input{width:100%;min-height:44px;padding:10px 12px;margin-bottom:16px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-family:inherit;font-size:16px;transition:border-color .14s ease}.sp-input:focus{outline:none;border-color:var(--accent)}.sp-field .sp-input{padding-right:64px}.sp-toggle{position:absolute;right:6px;top:0;height:44px;min-width:52px;padding:0 10px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;color:var(--muted);transition:color .14s ease}@media (hover: hover){.sp-toggle:hover{color:var(--ink2)}}.sp-error{margin:-6px 0 14px;padding:9px 11px;border-radius:8px;font-size:13px;line-height:1.45;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 58%,transparent)}.sp-btn{min-height:44px;padding:0 18px;border:none;border-radius:10px;background:var(--accent);color:var(--accent-on, var(--accent-on));font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),opacity .14s ease}.sp-btn:active{transform:scale(.97)}.sp-btn:disabled{opacity:.5;cursor:default;transform:none}.sp-signout{margin-top:14px;min-height:44px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;color:var(--muted);transition:color .14s ease}@media (hover: hover){.sp-signout:hover{color:var(--ink2)}}.sp-card--done{align-items:center;text-align:center}.lg-wrap{min-height:100dvh;background:var(--bg, var(--bg));color:var(--ink, var(--ink));overflow-y:auto;padding:env(safe-area-inset-top) 0 calc(env(safe-area-inset-bottom) + 24px)}.lg-inner{max-width:68ch;margin:0 auto;padding:28px 20px 40px;font:400 16px/1.6 var(--sans, "Inter", system-ui, sans-serif)}.lg-draft{border:1px dashed var(--line, rgba(255,255,255,.14));border-radius:10px;padding:12px 14px;margin-bottom:24px;color:var(--ink2, var(--ink2));font-size:14px;line-height:1.5}.lg-draft strong{color:var(--ink, var(--ink))}.lg-h1{font:700 26px/1.25 var(--heading);margin:0 0 6px;letter-spacing:-.01em}.lg-sub{color:var(--muted, var(--muted));font-size:14px;margin:0 0 28px}.lg-h2{font:600 18px/1.3 var(--heading);margin:32px 0 10px;color:var(--ink, var(--ink))}.lg-p{margin:0 0 14px}.lg-p--lead{color:var(--ink2, var(--ink2))}.lg-ul{margin:0 0 14px;padding-left:20px}.lg-ul li{margin-bottom:8px}.lg-strong{color:var(--ink, var(--ink));font-weight:600}.lg-tablewrap{overflow-x:auto;margin:0 0 18px;-webkit-overflow-scrolling:touch}.lg-table{width:100%;border-collapse:collapse;font-size:14px;min-width:460px}.lg-table th,.lg-table td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line2, var(--line2))}.lg-table th{color:var(--muted, var(--muted));font:600 12px/1.3 var(--body)}.lg-table td:first-child{color:var(--ink, var(--ink));font-weight:600;white-space:nowrap}.lg-card{border:1px solid transparent;background:var(--surface, var(--surface));border-radius:12px;padding:16px;margin:0 0 18px}.lg-card-title{font:600 15px/1.35 var(--heading);margin:0 0 6px}.lg-card-body{color:var(--ink2, var(--ink2));font-size:14px;margin:0}.lg-meta{color:var(--muted, var(--muted));font-size:13px;margin:8px 0 0}.lg-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;cursor:pointer;font:600 15px/1 var(--body);border:1px solid transparent;transition:transform .16s cubic-bezier(.23,1,.32,1),opacity .16s ease,background-color .16s ease}.lg-btn:active:not(:disabled){transform:scale(.97)}.lg-btn:disabled{opacity:.45;cursor:default}.lg-btn--primary{background:var(--accent, var(--accent));color:var(--accent-on)}.lg-btn--secondary{background:transparent;color:var(--ink, var(--ink));border-color:var(--line, rgba(255,255,255,.14))}@media (hover: hover){.lg-btn--secondary:hover:not(:disabled){border-color:#ffffff4d}}.lg-link{background:none;border:none;padding:8px 0;min-height:44px;cursor:pointer;color:var(--accent, var(--accent));font-size:15px;text-align:left;text-decoration:underline;text-underline-offset:3px}.lg-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.lg-consent{border:1px solid transparent;background:var(--surface, var(--surface));border-radius:12px;padding:16px;margin:20px 0 0}.lg-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.lg-check input{flex:none;width:22px;height:22px;margin:1px 0 0;cursor:pointer;accent-color:var(--accent, var(--accent))}.lg-check span{font-size:15px;line-height:1.5}.lg-points{margin:14px 0 0;padding-left:20px;font-size:14px;color:var(--ink2, var(--ink2))}.lg-points li{margin-bottom:10px}.lg-points li.lg-point--em{color:var(--ink, var(--ink));font-weight:500}.lg-statement{margin:0;font-size:15px;line-height:1.5;color:var(--ink, var(--ink))}.lg-answers{display:flex;flex-direction:column;gap:10px;margin-top:16px}.lg-btn--block{width:100%;min-height:48px}.lg-either{margin:2px 0 0;text-align:center;font-size:13px;color:var(--muted, var(--muted))}.lg-gate .lg-inner{opacity:0;transform:translateY(8px);animation:lg-in .2s cubic-bezier(.23,1,.32,1) forwards}@keyframes lg-in{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.lg-gate .lg-inner{transform:none;animation-name:lg-fade}@keyframes lg-fade{to{opacity:1}}.lg-btn{transition:opacity .16s ease}.lg-btn:active:not(:disabled){transform:none}}.lg-err{margin:14px 0 0;padding:10px 12px;border-radius:8px;font-size:14px;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 57%,transparent);background:color-mix(in srgb,var(--danger) 8%,transparent)}.lg-danger{border:1px solid color-mix(in srgb,var(--danger) 56%,transparent);background:color-mix(in srgb,var(--danger) 6%,transparent);border-radius:12px;padding:16px;margin:8px 0 0}.lg-danger-title{font:700 17px/1.3 var(--heading);margin:0 0 10px;color:var(--danger)}.lg-danger-line{color:var(--danger);font-weight:600}.lg-field{display:block;margin:16px 0 0}.lg-field-label{display:block;margin-bottom:6px;font-size:14px;color:var(--ink2, var(--ink2))}.lg-input{width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border-radius:10px;background:var(--bg, var(--bg));color:var(--ink, var(--ink));border:1px solid var(--line, rgba(255,255,255,.14));font:400 16px/1.4 var(--sans, "Inter", system-ui, sans-serif)}.lg-input:focus{outline:2px solid var(--accent, var(--accent));outline-offset:1px}.lg-btn--danger{background:var(--danger);color:#2a0906}@media (hover: hover){.lg-btn--danger:hover:not(:disabled){background:#ff6459}}.wsc{width:100%;max-width:440px;margin:0 auto;padding:28px 20px 20px;display:flex;flex-direction:column;gap:20px;animation:wsc-in .35s cubic-bezier(.23,1,.32,1) both}@keyframes wsc-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.wsc-header{text-align:center}.wsc-check{width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;margin-bottom:10px}.wsc-check--celebrate{position:relative;animation:pop-in var(--dur-pop) var(--ease) both}.wsc-check--celebrate:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--accent);opacity:0;pointer-events:none;animation:ring-out var(--dur-celebrate) var(--ease) .12s both}.wsc-check--partial{background:var(--surface2, rgba(255, 255, 255, .06));color:var(--muted, #8A93A6)}.wsc-title{font:700 20px/1.2 var(--heading);color:var(--ink);margin:0}.wsc-day{font:500 13px/1 var(--body);color:var(--muted);margin-top:4px}.wsc-stats{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.wsc-stat{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px 12px;text-align:center}.wsc-stat-val{display:block;font:700 20px/1 var(--num);font-variant-numeric:tabular-nums;color:var(--ink)}.wsc-stat-label{display:block;font:500 12px/1 var(--body);color:var(--muted);letter-spacing:.5px;margin-top:6px}.wsc-vol-cmp{text-align:center;font:500 13px/1.4 var(--body);color:var(--muted);padding:8px 12px;background:#ffffff05;border-radius:8px}.wsc-vol-up{color:var(--accent);font-weight:600}.wsc-vol-down{color:var(--danger);font-weight:600}.wsc-prs{display:flex;flex-direction:column;gap:8px}.wsc-prs-title{font:600 12px/1 var(--heading);color:var(--celebrate);letter-spacing:.5px;margin-bottom:2px}.wsc-pr{display:flex;align-items:center;gap:10px;background:var(--celebrate-soft);border:1px solid color-mix(in srgb,var(--celebrate) 25%,transparent);border-radius:10px;padding:10px 14px}.wsc-pr-icon{font-size:18px;flex-shrink:0}.wsc-pr-text{font:500 13px/1.3 var(--body);color:var(--ink);flex:1;min-width:0}.wsc-pr-detail{font:600 13px/1 var(--body);color:var(--celebrate);flex-shrink:0}.wsc-ai{background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 12%,transparent);border-radius:12px;padding:14px 16px;display:flex;gap:12px;align-items:flex-start;animation:wsc-ai-in .4s cubic-bezier(.23,1,.32,1) both;animation-delay:.2s;opacity:0}@keyframes wsc-ai-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.wsc-ai-icon{font-size:20px;flex-shrink:0;line-height:1;margin-top:1px}.wsc-ai-text{font:400 13.5px/1.55 var(--body);color:#c5cad3;flex:1;min-width:0}.wsc-ai-loading{display:flex;gap:6px;align-items:center;padding:4px 0}.wsc-ai-dot{width:5px;height:5px;border-radius:50%;background:color-mix(in srgb,var(--accent) 40%,transparent);animation:wsc-dot 1s ease-in-out infinite}.wsc-ai-dot:nth-child(2){animation-delay:.15s}.wsc-ai-dot:nth-child(3){animation-delay:.3s}@keyframes wsc-dot{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.wsc-notes-label{font:500 12px/1 var(--body);color:var(--muted);letter-spacing:.5px;margin-bottom:6px;display:block}.wsc-notes-input{width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:var(--ink);font:400 16px/1.5 var(--body);padding:10px 12px;resize:vertical;min-height:60px;outline:none;transition:border-color .15s}.wsc-notes-input:focus{border-color:var(--accent)}.wsc-notes-input::placeholder{color:#464c56}.wsc-save-error{margin:0 0 10px;padding:10px 12px;border-radius:10px;background:var(--caution-soft);border:1px solid var(--caution-line);color:var(--caution);font-size:13px;line-height:1.45}.wsc-actions{display:flex;gap:10px}.wsc-btn-done{flex:1;padding:14px 20px;border-radius:12px;border:none;background-color:var(--accent);color:var(--accent-on);font:700 15px/1 var(--heading);cursor:pointer;transition:transform .16s ease-out,opacity .15s;min-height:48px}.wsc-btn-done:active{transform:scale(.97)}.wsc-btn-done:disabled{opacity:.5;cursor:not-allowed}.wsc-firsts{margin-top:14px}.wsc-firsts-title{font-size:12px;font-weight:700;color:var(--muted, #8A93A6);margin-bottom:6px}.wsc-first{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;font-size:13px;color:var(--ink2, var(--ink2))}.wsc-first-detail{font-family:var(--body);color:var(--muted, #8A93A6);flex-shrink:0}.wsc-ai--error .wsc-ai-icon{opacity:.35}.wsc-ai-text--error{color:var(--muted, var(--muted));font-size:13px;line-height:1.45}.wsc-ai-caveat{display:block;margin-top:6px;color:var(--muted);font-size:13px;line-height:1.45}.wsc-unsaved{margin-top:6px;font-size:13px;color:var(--muted);letter-spacing:.01em}.wsc-vol-none{color:var(--muted);font-weight:600}.wsc-pain{margin:12px 0;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.5;background:var(--surface2);border:1px solid transparent;color:var(--ink2)}.wsc-save-queued{margin:10px 0;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.5;background:var(--surface2);border:1px solid transparent;color:var(--ink2)}.dmv-iframe{width:100%;height:100%;border:none}.dmv-player{position:relative;width:100%;height:100%;padding:0;border:none;background:#000;border-radius:8px;overflow:hidden;display:block;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.dmv-player:active{transform:scale(.99)}.dmv-mp4{width:100%;height:100%;object-fit:contain;display:block;background:#000}.dmv-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000057;color:#fff;pointer-events:none}.dmv-gif{width:100%;height:100%;object-fit:contain;display:block}.dmv-thumb{position:relative;width:100%;height:100%;border:none;background:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px}.dmv-thumb img{width:100%;height:100%;object-fit:cover}.dmv-play{position:absolute;width:48px;height:48px;border-radius:50%;background:#000000a6;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .16s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1)}.dmv-thumb:active .dmv-play{transform:scale(.92);background:color-mix(in srgb,var(--accent) 70%,transparent)}.dmv-coach{position:relative;width:100%;height:100%}.dmv-coach-label{position:absolute;left:8px;top:8px;pointer-events:none;font:600 12px/1.2 var(--body);color:var(--ink);background:color-mix(in srgb,var(--bg) 82%,transparent);padding:4px 8px;border-radius:6px}.dmv-coach-wait{width:100%;height:100%;min-height:120px;background:var(--surface2);border-radius:8px}.dmv-coach-missing{padding:12px;color:var(--ink2);font-size:13px}.prs-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;bottom:var(--kbd-inset, 0px);z-index:120;background:#080a0eb8;display:flex;align-items:flex-end;justify-content:center}.prs-sheet{width:100%;max-width:520px;background:#12151b;border:1px solid #222833;border-radius:18px 18px 0 0;padding:18px 16px calc(18px + var(--safe-bottom-open));max-height:calc(var(--screen-h) * .88);overflow-y:auto}.prs-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.prs-title{font:700 19px/1.25 var(--heading);color:var(--ink);margin:0}.prs-close{width:44px;height:44px;flex:0 0 44px;background:none;border:0;color:var(--muted);font-size:17px;cursor:pointer}.prs-ctx{margin:4px 0 0;font-size:13px;color:var(--muted)}.prs-label{margin:18px 0 8px;font:600 12px/1 var(--body);color:var(--muted)}.prs-chips{display:flex;flex-wrap:wrap;gap:8px}.prs-chip{min-height:44px;padding:0 14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;color:#c9d1dc;font:500 14px/1 var(--body, system-ui, sans-serif);cursor:pointer}.prs-chip.on{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:var(--accent);color:var(--accent)}.prs-sev{display:flex;flex-direction:column;gap:8px}.prs-sevbtn{min-height:56px;padding:8px 14px;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:10px;cursor:pointer}.prs-sevbtn.on{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:var(--accent)}.prs-sevlabel{font:600 15px/1.2 var(--body, system-ui, sans-serif);color:var(--ink)}.prs-sevbtn.on .prs-sevlabel{color:var(--accent)}.prs-sevhint{font-size:12.5px;color:var(--muted)}.prs-extra{width:100%;margin-top:16px;padding:12px;background:#0e1117;border:1px solid var(--line);border-radius:10px;color:var(--ink);font:400 16px/1.4 var(--body, system-ui, sans-serif);resize:vertical}.prs-extra::placeholder{color:#5a6270}.prs-send{width:100%;min-height:52px;margin-top:16px;background:var(--accent);border:0;border-radius:12px;color:var(--accent-on);font:700 16px/1 var(--heading);cursor:pointer}.prs-send:disabled{background:#1f2630;color:#5a6270;cursor:default}.prs-hint{margin:8px 0 0;text-align:center;font-size:12.5px;color:var(--muted)}.prs-err{margin:12px 0 0;font-size:13px;color:#ffb4a2}.prs-sent{text-align:center;padding:8px 0 4px}.prs-tick{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:26px}.prs-sentsub{margin:8px 0 0;font-size:14px;line-height:1.5;color:#c9d1dc}.prs-reply{margin:14px 0 0;padding:12px;text-align:left;background:#0e1117;border:1px solid #222833;border-radius:10px;font-size:13.5px;line-height:1.5;color:var(--muted)}.smx-trigger{margin-left:auto;flex:0 0 auto;min-width:var(--tap-min);min-height:var(--tap-min);padding:0 var(--s3);background:none;border:1px solid var(--line);border-radius:var(--r2);color:var(--accent-ink);font:600 13px/1 var(--body);cursor:pointer;transition:transform .16s var(--ease)}.smx-trigger:active{transform:scale(.97)}.smx-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;bottom:var(--kbd-inset, 0px);z-index:120;background:#0a0907b8;display:flex;align-items:flex-end;justify-content:center}.smx-sheet{width:100%;max-width:520px;background:var(--surface);border:1px solid transparent;border-bottom:0;border-radius:18px 18px 0 0;padding:var(--s4) var(--s4) calc(var(--s4) + var(--safe-bottom-open));max-height:calc(var(--screen-h) * .88);overflow-y:auto;transform:translateY(0);opacity:1;transition:transform .24s var(--ease),opacity .24s var(--ease)}@starting-style{.smx-sheet{transform:translateY(24px);opacity:0}}@media (prefers-reduced-motion: reduce){.smx-sheet{transition:opacity .16s ease;transform:none}}.smx-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.smx-title{margin:0;font:700 19px/1.25 var(--heading);color:var(--ink)}.smx-close{min-width:var(--tap-min);min-height:var(--tap-min);background:none;border:0;color:var(--muted);font-size:17px;cursor:pointer}.smx-ctx{margin:2px 0 0;font:600 15px/1.3 var(--body);color:var(--ink)}.smx-set{margin:4px 0 0;font:400 14px/1.4 var(--num);font-variant-numeric:tabular-nums;color:var(--ink2)}.smx-ask{margin-top:var(--s5)}.smx-q{margin:0 0 var(--s3);font:600 16px/1.35 var(--body);color:var(--ink)}.smx-hint{margin:var(--s3) 0 0;font-size:13px;line-height:1.45;color:var(--muted)}.smx-chips{display:grid;gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(var(--tap-min),1fr))}.smx-chip{min-width:var(--tap-min);min-height:var(--tap-min);background:var(--surface2);border:1px solid var(--line);border-radius:var(--r2);color:var(--ink);font:600 16px/1 var(--num);font-variant-numeric:tabular-nums;cursor:pointer;transition:transform .16s var(--ease)}.smx-chip:active{transform:scale(.97)}.smx-yesno{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s2)}.smx-wide{min-height:52px;padding:0 var(--s3);font:600 15px/1.2 var(--body)}.smx-compare{margin-top:var(--s5);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:var(--s3)}.smx-label{font:600 12px/1 var(--body);color:var(--muted)}.smx-val{margin-top:var(--s2);font:600 26px/1.1 var(--num);font-variant-numeric:tabular-nums;color:var(--ink)}.smx-val-old{color:var(--ink2)}.smx-unit{font:500 14px/1 var(--body);color:var(--ink2)}.smx-none{margin-top:var(--s2);font:500 16px/1.6 var(--body);color:var(--muted)}.smx-meta{margin-top:var(--s1);font-size:12.5px;line-height:1.35;color:var(--muted)}.smx-arrow{padding-top:26px;color:var(--muted);font-size:18px}.smx-basis{margin:var(--s4) 0 0;font-size:13.5px;line-height:1.45;color:var(--ink2)}.smx-caution,.smx-notice{margin:var(--s3) 0 0;padding:10px var(--s3);border-radius:var(--r2);font-size:13.5px;line-height:1.45}.smx-caution{background:var(--caution-soft);border:1px solid var(--caution-line);color:var(--caution)}.smx-notice{background:var(--notice-soft);border:1px solid var(--notice-line);color:var(--notice)}.smx-keep{margin:var(--s3) 0 0;font-size:12.5px;color:var(--muted)}.smx-link{min-height:var(--tap-min);min-width:var(--tap-min);margin-top:var(--s1);padding:0;background:none;border:0;color:var(--accent-ink);font:500 14px/1 var(--body);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.smx-err{margin:var(--s3) 0 0;font-size:13.5px;line-height:1.45;color:var(--danger)}.smx-err-detail{display:block;margin-top:2px;font-size:12px;color:var(--muted)}.smx-actions{margin-top:var(--s4);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--s2)}.smx-cancel,.smx-save{min-height:52px;border-radius:var(--r3);cursor:pointer;transition:transform .16s var(--ease)}.smx-cancel:active,.smx-save:active{transform:scale(.97)}.smx-cancel{background:none;border:1px solid var(--line);color:var(--ink);font:600 15px/1 var(--body)}.smx-save{background:var(--accent);border:0;color:var(--accent-on);font:700 16px/1 var(--heading)}.smx-save:disabled{background:var(--surface2);color:var(--muted);cursor:default}.smx-how,.mxp-est-how{margin:8px 0 0;font-size:13px;color:var(--ink2)}.smx-how summary,.mxp-est-how summary{display:flex;align-items:center;min-height:var(--tap-min);cursor:pointer;font-weight:600;color:var(--ink2)}.smx-how p,.mxp-est-how p{margin:0 0 6px;line-height:1.5}.sm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9500;background:var(--bg);display:flex;flex-direction:column;align-items:center;overflow:hidden}.sm-pick{width:100%;max-width:480px;height:100%;display:flex;flex-direction:column;background:var(--bg)}.sm-pick-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.sm-pick-exit{background:none;border:none;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;padding:6px 8px;border-radius:8px;font-family:inherit;transition:.12s}@media (hover: hover){.sm-pick-exit:hover{color:var(--ink2);background:var(--surface2)}}.sm-pick-title{font-family:var(--heading);font-size:18px;font-weight:700;color:var(--ink);flex:1}.sm-pick-body{flex:1;overflow-y:auto;padding:20px 16px}.sm-pick-label{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:12px}.sm-pick-days{display:flex;flex-direction:column;gap:8px;container-type:inline-size}.sm-pick-day{display:flex;align-items:center;gap:12px;width:100%;padding:18px 16px;border-radius:14px;border:1px solid transparent;background:var(--surface);cursor:pointer;text-align:left;font-family:inherit;transition:.12s;min-height:64px}@media (hover: hover){.sm-pick-day:hover{border-color:#ffffff1f}}.sm-pick-day.suggested{border-color:var(--accent);box-shadow:none}.sm-pick-day.logged{opacity:.6}.sm-pick-day-name{font-family:var(--heading);font-size:16px;font-weight:700;color:var(--ink);flex:1}.sm-pick-day-info{font-size:12px;color:var(--muted);font-weight:500}.sm-pick-day-last{display:block;margin-top:3px;font-size:12px;line-height:1.3;color:var(--muted);font-weight:500}.sm-empty-note{margin:32px 20px;text-align:center;color:var(--muted);font-size:15px;line-height:1.5}.sm-pick-phase{display:inline-block;margin-top:4px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.sm-pick-day-check{font-size:11px;color:var(--accent);font-weight:700;text-align:right;line-height:1.3;flex-shrink:1;min-width:0}.sm-pick-day-next{font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--accent-soft);color:var(--accent-ink)}.sm-pick-empty{color:var(--muted);font-size:13px;text-align:center;padding:40px 0}.sm-session{width:100%;max-width:480px;height:calc(var(--screen-h) - var(--kbd-inset,0px));max-height:calc(var(--screen-h) - var(--kbd-inset,0px));display:flex;flex-direction:column;background:var(--bg);overflow:hidden}.sm-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line);flex-shrink:0;height:52px;gap:8px;background:color-mix(in srgb,var(--sm-accent, transparent) 12%,transparent);container-type:inline-size}.sm-exit{background:none;border:none;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;padding:6px 8px;border-radius:8px;font-family:inherit;flex-shrink:0;transition:.12s;display:inline-flex;align-items:center;gap:3px;min-width:var(--tap-min);min-height:var(--tap-min);justify-content:center}@media (max-width:359px){.sm-exit-label{display:none}}@media (hover: hover){.sm-exit:hover{color:var(--ink2);background:var(--surface2)}}.sm-header-center{flex:1;min-width:0;overflow:hidden;white-space:nowrap;display:flex;align-items:center;justify-content:flex-start;gap:8px}.sm-header-client{font-family:var(--body);font-size:17px;font-weight:700;color:var(--ink);display:inline-flex;align-items:baseline;flex:0 1 auto;min-width:3.5em;max-width:100%}.sm-id-badge{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--body);font-size:17px;font-weight:800;letter-spacing:.01em;background:var(--sm-accent, var(--accent));color:var(--bg);box-shadow:none}.cn{display:inline-flex;align-items:baseline;min-width:0;max-width:100%}.cn-head{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre}.cn-tail{flex:0 0 auto;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cn-static{flex:0 0 auto;margin-right:.28em}.sm-header-dot{color:var(--muted);margin:0 2px;font-size:12px;flex-shrink:0}.sm-header-day{font-size:12px;color:var(--ink2);font-weight:500;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-timer{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;color:var(--accent-ink);flex-shrink:0;padding:4px 8px;background:var(--surface2);border-radius:8px}.sm-restbar{display:grid;grid-template-columns:auto auto minmax(24px,1fr) var(--tap-min) var(--tap-min) auto;gap:8px;align-items:center;padding:6px 16px;border-top:1px solid var(--line);background:var(--bg)}.sm-restbar-time{display:flex;align-items:baseline;gap:5px;min-width:52px;line-height:1.05;font-family:var(--num);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800;color:var(--accent-ink)}.sm-restbar-time small{font-family:var(--body);font-size:12px;font-weight:600;color:var(--ink2)}.sm-restbar-time.pulse{animation:sm-pulse .5s ease infinite}@keyframes sm-pulse{0%,to{opacity:1}50%{opacity:.5}}.sm-restbar-track{height:6px;border-radius:3px;background:var(--surface2);overflow:hidden}.sm-restbar-fill{display:block;height:100%;background:var(--accent);transition:width 1s linear}.sm-restbar-btn{min-width:var(--tap-min);min-height:var(--tap-min);padding:0 10px;border-radius:10px;border:none;background:var(--surface2);color:var(--ink2);font-family:var(--num);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.sm-restbar-btn:active{transform:scale(.97)}.sm-restbar-skip{font-family:var(--body);color:var(--ink)}.sm-next-preview{display:flex;flex-direction:column;align-items:center;padding:16px;background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0}.sm-next-label{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:4px}.sm-next-name{font-family:var(--heading);font-size:16px;font-weight:700;color:var(--ink)}.sm-next-rx{font-size:12px;color:var(--ink2);margin-top:2px}.sm-exercise{flex:1 1 auto;min-height:0;padding:12px clamp(10px,3.8vw,16px);overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 14px),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(100% - 14px),transparent 100%)}.sm-restbar,.sm-progress-line,.sm-nav{flex:0 0 auto}.sm-blk{display:flex;flex-direction:column;margin:6px 0 2px}.sm-blk-now{display:flex;align-items:center;gap:10px;min-height:var(--tap-min);padding:6px 6px 6px 12px;border-radius:12px;background:var(--hero);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);color:var(--ink)}.sm-blk-now .sm-blk-label{color:var(--accent-ink);font-size:14px;font-weight:800}.sm-blk-now .sm-blk-name{font-family:var(--heading);font-size:16px;font-weight:800;line-height:1.25}.sm-blk-label{flex:none;width:22px;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.sm-blk-name{flex:1;min-width:0;overflow-wrap:anywhere}.sm-blk-row{display:flex;align-items:center;gap:10px;width:100%;min-height:var(--tap-min);padding:0 12px;border:none;background:none;color:var(--muted);font:600 14px var(--body);text-align:left;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.sm-blk-row:active{transform:scale(.98)}.sm-blk-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:10px}.sm-blk-row+.sm-blk-row{border-top:1px solid var(--line)}.sm-blk-now+.sm-blk-row{margin-top:2px}.sm-blk-row+.sm-blk-now{margin-top:4px}.sm-blk-check{flex:none;display:inline-flex;color:var(--accent-ink)}.sm-prev-toggle{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);font-family:var(--body);font-weight:500;margin:-4px 0 4px;padding:6px 0;background:none;border:none;cursor:pointer;min-height:var(--tap-min);text-align:left}.sm-prev-toggle:active{color:var(--accent)}.sm-prev-chevron{font-size:12px;width:14px;flex-shrink:0;display:inline-block;transition:transform .2s cubic-bezier(.23,1,.32,1)}.sm-prev-chevron.open{transform:rotate(90deg)}.sm-history{display:flex;flex-direction:column;gap:2px;margin:0;background:var(--surface2);border-radius:10px;padding:0 4px;overflow:hidden;max-height:0;opacity:0;transition:max-height .2s cubic-bezier(.23,1,.32,1),opacity .15s ease-out,padding .2s ease-out,margin .2s ease-out}.sm-history.open{max-height:340px;opacity:1;padding:4px;margin:0 0 12px}.sm-history-row{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--surface);border-radius:8px;border:none;cursor:pointer;min-height:var(--tap-min);text-align:left;opacity:0;transform:translateY(8px);transition:background .1s ease-out,opacity .18s ease-out,transform .18s cubic-bezier(.23,1,.32,1)}.sm-history-row.show{opacity:1;transform:translateY(0)}.sm-history-row:active{background:var(--accent-soft)}.sm-history-date{font-size:11px;color:var(--muted);font-family:var(--body);min-width:52px;flex-shrink:0}.sm-partial{color:var(--notice);font-weight:600;white-space:nowrap}.sm-history-data{font-size:13px;color:var(--ink);font-family:var(--body);font-weight:600;flex:1}.sm-history-note{color:#ffbf00;font-size:8px;flex-shrink:0;margin:0 2px}.sm-history-trend{font-size:13px;font-weight:700;flex-shrink:0;width:20px;text-align:center}.sm-history-trend.up{color:var(--accent)}.sm-history-trend.down{color:var(--danger)}.sm-vid-ex{min-width:var(--tap-min);height:var(--tap-min);padding:0 12px;border-radius:12px;border:1px solid transparent;background:var(--surface2);color:var(--ink2);cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--body);font-size:13px;font-weight:700;transition:background .2s cubic-bezier(.23,1,.32,1),color .2s cubic-bezier(.23,1,.32,1),border-color .2s cubic-bezier(.23,1,.32,1)}.sm-vid-ex.on{background:var(--accent-soft);color:var(--accent);border-color:transparent}.sm-vid-ex-label{line-height:1}.sm-vid-hdr:active{transform:scale(.97)}.sm-demo{display:flex;justify-content:center;align-items:flex-start;margin-top:8px;overflow:hidden}.sm-demo-box{position:relative;flex:none;border-radius:10px;overflow:hidden;background:var(--surface2)}.sm-demo-box .dmv-player,.sm-demo-box .dmv-mp4{background:transparent;border-radius:0}.sm-demo-close{position:absolute;top:0;right:0;z-index:1;width:var(--tap-min);height:var(--tap-min);display:flex;align-items:flex-start;justify-content:flex-end;padding:6px;border:none;background:none;cursor:pointer}.sm-demo-close>span{width:30px;height:30px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:#0000009e;color:#fff;transition:transform .16s cubic-bezier(.23,1,.32,1)}.sm-demo-close:active>span{transform:scale(.92)}.sm-demo-close:focus-visible>span{outline:2px solid var(--accent);outline-offset:2px}.sm-demo-box .dmv-coach-label{left:4px;top:4px;font-size:10px;letter-spacing:.03em;padding:3px 6px;white-space:nowrap}.sm-vid-iframe{width:100%;height:100%;border:none}.sm-vid-mp4{width:100%;height:100%;object-fit:contain;display:block;border-radius:8px;background:#000}.sm-vid-gif{width:100%;height:100%;object-fit:contain;display:block}.sm-vid-thumb{position:relative;width:100%;height:100%;border:none;background:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px}.sm-vid-thumb img{width:100%;height:100%;object-fit:cover}.sm-vid-play{position:absolute;width:48px;height:48px;border-radius:50%;background:#000000a6;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .16s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1)}.sm-vid-thumb:active .sm-vid-play{transform:scale(.92);background:color-mix(in srgb,var(--accent) 70%,transparent)}.sm-logged-sets:not(:empty){margin-bottom:8px}.sm-logged-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line2)}.sm-logged-check{color:var(--accent);font-weight:700;font-size:14px;flex-shrink:0}.sm-logged-text{font-size:13px;color:var(--ink2);font-family:var(--body)}.sm-set-input{margin-top:clamp(2px,calc(2px + (var(--screen-h) - 664px) * .1647),28px)}.sm-input-row{display:flex;gap:10px;margin-bottom:clamp(6px,calc(6px + (var(--screen-h) - 664px) * .1647),32px)}.sm-input-group{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--surface);border-radius:16px;padding:clamp(4px,calc(4px + (var(--screen-h) - 664px) * .0301),8px) 6px clamp(3px,calc(3px + (var(--screen-h) - 664px) * .0226),6px);box-shadow:var(--card-edge)}.sm-input-label{font-size:14px;font-weight:700;color:var(--ink2);white-space:nowrap}.sm-input-target{font-family:var(--num);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;font-weight:800;color:var(--ink)}.sm-input-wrap{display:flex;align-items:center;gap:4px;width:100%;min-width:0}.sm-input{flex:1;min-width:var(--tap-min);height:clamp(48px,calc(48px + (var(--screen-h) - 664px) * .0885),64px);background:var(--surface2);border:1px solid transparent;border-radius:12px;padding:0 4px;font-size:clamp(20px,8.2vw,32px);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:800;color:var(--ink);text-align:center;outline:none;-moz-appearance:textfield}.sm-input.sm-input--long{font-size:clamp(16px,5vw,22px);padding:0 1px}.sm-input::-webkit-inner-spin-button,.sm-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.sm-input:focus{box-shadow:none;border-color:var(--accent)}.sm-input::placeholder{color:var(--muted);opacity:1;font-size:18px;font-weight:600}.sm-input-unit{font:inherit;color:inherit}.sm-time-field{position:relative;display:flex;flex:1 1 0;min-width:0}.sm-time-field .sm-input{width:100%;font-size:clamp(16px,5.6vw,22px)}.sm-time-unit{position:absolute;right:12px;top:0;bottom:0;display:flex;align-items:center;pointer-events:none;font-family:var(--body);font-size:14px;font-weight:600;color:var(--ink2)}.sm-time-pair{display:flex;align-items:center;gap:6px;flex:1 1 0;min-width:0}.sm-time-colon{font-family:var(--body);font-size:22px;font-weight:700;color:var(--ink)}.sm-adj-btn{width:var(--tap-min);height:clamp(48px,calc(48px + (var(--screen-h) - 664px) * .0885),64px);border-radius:12px;border:0;background:transparent;color:var(--ink2);font-size:15px;font-weight:700;font-family:var(--body);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background-color .12s ease-out,color .12s ease-out}@media (hover: hover){.sm-adj-btn:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}}.sm-adj-btn:active:not(:disabled){background:var(--accent-soft);color:var(--accent-ink)}.sm-adj-btn:disabled{opacity:.35;cursor:default}@media (max-width:374px){.sm-input-group{padding-left:0;padding-right:0}.sm-input-wrap{gap:2px}}.sm-rpe-row{display:grid;grid-template-columns:repeat(var(--effort-cols,4),minmax(var(--tap-min),1fr));gap:0;align-items:stretch;margin-bottom:clamp(6px,calc(6px + (var(--screen-h) - 664px) * .1647),32px);background:var(--surface2);border-radius:14px;padding:4px}.sm-rpe-label{grid-column:1/-1;display:flex;gap:8px;align-items:center;padding:4px 8px;font-size:12px;font-weight:700;color:var(--muted)}.sm-rpe-label b{font-size:14px;font-weight:800;color:var(--ink)}.sm-rpe-row:not(.sm-rpe-row--wrap){grid-template-columns:auto repeat(var(--effort-cols,4),minmax(var(--tap-min),1fr))}.sm-rpe-row:not(.sm-rpe-row--wrap) .sm-rpe-label{grid-column:auto;justify-content:center;padding:0 10px 0 8px}.sm-rpe-btn{position:relative;min-width:var(--tap-min);height:clamp(44px,calc(44px + (var(--screen-h) - 664px) * .0287),52px);border-radius:10px;border:0;background:transparent;color:var(--ink);font-size:18px;font-weight:800;font-family:var(--num);font-variant-numeric:tabular-nums;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .12s ease-out,color .12s ease-out;padding:0 4px}.sm-rpe-btn+.sm-rpe-btn:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:var(--line)}.sm-rpe-row--wrap .sm-rpe-btn:nth-of-type(4n+1):before,.sm-rpe-btn.on:before,.sm-rpe-btn.on+.sm-rpe-btn:before{display:none}@media (hover: hover){.sm-rpe-btn:hover{color:var(--ink2)}}.sm-rpe-btn.on{background:var(--accent);color:var(--accent-on)}.sm-rpe-btn.is-target:not(.on){outline:1.5px dashed color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:-4px}.sm-rpe-btn.is-target:after{content:"target";position:absolute;left:0;right:0;bottom:3px;text-align:center;font-family:var(--body);font-size:10px;font-weight:700;color:var(--accent-ink)}.sm-rpe-btn.on.is-target:after{color:inherit}.sm-log-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border-radius:12px;border:none;cursor:pointer;background:var(--accent);color:var(--accent-on);font-size:16px;font-weight:700;font-family:var(--body);box-shadow:none;transition:transform .16s cubic-bezier(.23,1,.32,1),filter .12s ease-out}@media (hover: hover){.sm-log-btn:hover{filter:brightness(1.08)}}.sm-log-btn:active{transform:scale(.97);filter:brightness(.95)}.sm-ex-note{width:100%;padding:10px 0;margin-top:12px;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.08);font-size:16px;color:var(--ink);font-family:inherit;outline:none}.sm-ex-note::placeholder{color:var(--muted);opacity:.45}.sm-ex-note:focus{border-bottom-color:var(--accent)}.sm-fc{margin-top:0}.sm-ex-extras{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.sm-ex-extras .sm-ex-note{flex:1 1 100%}.sm-ex-extras .sm-note-toggle{margin-top:0}.sm-ex-extras .sm-fc:has(.sm-fc-picker,.sm-fc-camera,.sm-fc-preview,.sm-fc-progress,.sm-fc-done){flex-basis:100%}.sm-fc-btn{display:flex;align-items:center;gap:6px;padding:6px 0;font-size:12px;color:var(--muted);font-weight:500;background:none;border:none;cursor:pointer;font-family:inherit;transition:color .12s}@media (hover: hover){.sm-fc-btn:hover{color:var(--ink2)}}.sm-icon-btn{width:var(--tap-min);height:var(--tap-min);flex:none;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--ink2);cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.sm-icon-btn:active{transform:scale(.94)}.sm-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sm-fc-err{color:#e8645a}.sm-fc-progress{font-size:12px;color:var(--accent-ink);font-weight:500;font-family:var(--num);font-variant-numeric:tabular-nums}.sm-fc-done{font-size:12px;color:var(--accent);font-weight:600}.sm-fc-picker{display:flex;gap:8px;align-items:center;animation:sm-pop .2s ease}.sm-fc-opt{padding:8px 14px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;min-height:var(--tap-min);transition:border-color .12s}.sm-fc-opt:active{border-color:var(--accent)}.sm-fc-opt-cancel{border:none;background:none;color:var(--muted);font-weight:500;padding:8px 6px}.sm-fc-camera,.sm-fc-preview{margin-top:8px;border-radius:12px;overflow:hidden;background:#000}.sm-fc-viewfinder{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;border-radius:12px 12px 0 0}.sm-fc-cam-controls{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface)}.sm-fc-timer{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;color:#e8645a;display:flex;align-items:center;gap:6px}.sm-fc-rec-dot{width:8px;height:8px;border-radius:50%;background:#e8645a;animation:sm-fc-blink 1s ease infinite}@keyframes sm-fc-blink{0%,to{opacity:1}50%{opacity:.3}}.sm-fc-stop{padding:8px 18px;border-radius:8px;border:none;background:#e8645a;color:#fff;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;min-height:var(--tap-min)}.sm-fc-flip{padding:8px;border:none;background:none;font-size:20px;cursor:pointer;min-width:var(--tap-min);min-height:var(--tap-min);display:flex;align-items:center;justify-content:center}.sm-fc-preview-actions{display:flex;gap:8px;padding:10px 14px;background:var(--surface);justify-content:center}.sm-fc-retake{padding:8px 18px;border-radius:8px;border:1px solid var(--line);background:none;color:var(--ink);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;min-height:var(--tap-min)}.sm-fc-submit{padding:8px 18px;border-radius:8px;border:none;background:var(--accent);color:#000;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;min-height:var(--tap-min)}.sm-last-session{margin:4px 0}.sm-last-hdr{display:flex;align-items:center;gap:6px;width:100%;padding:0;min-height:var(--tap-min);min-width:var(--tap-min);background:none;border:none;cursor:pointer;text-align:left;font-family:inherit;font-size:13px;font-weight:500;color:var(--ink2)}.sm-last-text{min-width:0;line-height:1.35}.sm-last-unit{margin-left:auto;flex:none;font-size:12px;color:var(--muted)}.sm-last-boxes{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 2px}.sm-last-box{padding:4px 8px;border-radius:8px;background:var(--surface);font-size:13px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.sm-last-box em{font-style:normal;font-weight:500;color:var(--ink2)}.sm-ex-done{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 0;margin-top:12px}.sm-ex-done-flash{font-family:var(--body);font-size:16px;font-weight:700;color:var(--accent);animation:sm-pop .3s ease}@keyframes sm-pop{0%{transform:scale(.95);opacity:0}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.sm-next-btn{width:100%;height:56px;border-radius:14px;border:none;cursor:pointer;background:var(--accent);color:var(--accent-on);font-size:16px;font-weight:700;font-family:var(--body);box-shadow:none;transition:filter .12s}@media (hover: hover){.sm-next-btn:hover{filter:brightness(1.08)}}.sm-progress-line{height:3px;background:var(--surface2);overflow:hidden}.sm-progress-fill{height:100%;background:var(--accent);transition:width var(--dur-fill) var(--ease)}.sm-finish-error{margin:0 16px 8px;padding:10px 12px;border-radius:10px;background:var(--caution-soft);border:1px solid var(--caution-line);color:var(--caution);font-size:13px;line-height:1.45;text-align:center}.sm-nav{display:flex;gap:8px;padding:8px 16px;border-top:1px solid var(--line);flex-shrink:0;padding-bottom:calc(8px + var(--safe-bottom-open))}.sm-nav-back{flex:0 0 56px;min-width:56px;min-height:var(--tap-min);height:var(--tap-min);border-radius:10px;border:1px solid transparent;background:var(--surface);color:var(--ink2);font-size:16px;font-weight:600;font-family:inherit;cursor:pointer;transition:.12s}@media (hover: hover){.sm-nav-back:hover:not(:disabled){background:var(--surface2);border-color:#ffffff1f}}.sm-nav-back:disabled{opacity:.3;cursor:default}.sm-nav-primary{flex:1;min-width:var(--tap-min);min-height:48px;height:48px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;border:none;cursor:pointer;background-color:var(--accent);color:var(--accent-on);font-size:15px;font-weight:700;font-family:var(--body);transition:filter .12s,transform .08s}@media (hover: hover){.sm-nav-primary:hover:not(:disabled){filter:brightness(1.08)}}.sm-nav-primary:active:not(:disabled){transform:scale(.98);filter:brightness(.95)}.sm-nav-primary:disabled{opacity:.4;cursor:default}.sm-nav-primary.sm-nav-blocked{background:var(--surface2);color:var(--ink2);box-shadow:none;border:1px solid transparent;cursor:default;font-weight:600}.sm-nav-primary.sm-nav-blocked:disabled{opacity:1}.sm-nav-count{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:700;opacity:.75;flex-shrink:0}.sm-exit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:9600}.sm-exit-modal{position:fixed;bottom:var(--kbd-inset,0px);left:50%;transform:translate(-50%);width:100%;max-width:480px;background:var(--surface);border-radius:20px 20px 0 0;padding:24px 20px calc(24px + var(--safe-bottom-open));z-index:9601;border:1px solid transparent;border-bottom:none}.sm-exit-title{font-family:var(--heading);font-size:18px;font-weight:700;color:var(--ink);margin:0 0 6px}.sm-exit-sub{font-size:13px;color:var(--muted);margin:0 0 20px}.sm-exit-actions{display:flex;flex-direction:column;gap:8px}.sm-exit-btn{width:100%;min-height:50px;padding:8px 12px;border-radius:12px;border:none;cursor:pointer;font-size:15px;font-weight:700;font-family:var(--body);transition:.12s;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.sm-exit-btn:active{transform:scale(.98)}.sm-exit-hint{font-size:11px;font-weight:500;opacity:.72;letter-spacing:.01em}.sm-exit-keep{background:var(--accent);color:var(--accent-on)}@media (hover: hover){.sm-exit-keep:hover{filter:brightness(1.08)}}.sm-count-primary{background:var(--accent);color:var(--accent-on)}@media (hover: hover){.sm-count-primary:hover{filter:brightness(1.08)}}.sm-exit-finish{background:var(--surface2);color:var(--ink);border:1px solid transparent}@media (hover: hover){.sm-exit-finish:hover{background:var(--line2)}}.sm-exit-continue{background:var(--surface2);color:var(--ink2);border:1px solid transparent}@media (hover: hover){.sm-exit-continue:hover{background:var(--line2)}}.sm-exit-discard{background:transparent;color:var(--danger);border:1px solid transparent;margin-top:6px;padding-top:14px;border-top:1px solid var(--line);border-radius:0 0 12px 12px}@media (hover: hover){.sm-exit-discard:hover{background:#e85a721a;border-color:var(--danger)}}.sm-finish{width:100%;max-width:480px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 20px;background:var(--bg);overflow-y:auto}.sm-finish-celebration{display:flex;flex-direction:column;align-items:center;margin-bottom:28px}.sm-finish-check{width:72px;height:72px;border-radius:50%;background:var(--accent);color:var(--accent-on);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin-bottom:16px;box-shadow:none;animation:sm-pop .4s ease}.sm-finish-title{font-family:var(--heading);font-size:24px;font-weight:700;color:var(--ink);margin:0}.sm-finish-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;margin-bottom:24px}.sm-finish-stat{display:flex;flex-direction:column;align-items:center;padding:16px;background:var(--surface);border:1px solid transparent;border-radius:14px}.sm-finish-stat-num{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;color:var(--ink)}.sm-finish-stat-label{font-size:12px;font-weight:700;color:var(--muted);margin-top:4px}.sm-finish-notes{width:100%;margin-bottom:20px}.sm-finish-notes-label{font-size:12px;font-weight:700;color:var(--muted);display:block;margin-bottom:6px}.sm-finish-notes-input{width:100%;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:14px;color:var(--ink);font-family:inherit;outline:none;resize:vertical;min-height:80px}.sm-finish-notes-input:focus{box-shadow:inset 0 0 0 1px var(--accent)}.sm-finish-notes-input::placeholder{color:var(--muted);opacity:.5}.sm-finish-save{width:100%;height:60px;border-radius:14px;border:none;cursor:pointer;background:var(--accent);color:var(--accent-on);font-size:17px;font-weight:700;font-family:var(--body);box-shadow:none;transition:filter .12s}@media (hover: hover){.sm-finish-save:hover{filter:brightness(1.08)}}.sm-finish-save:disabled{opacity:.5;pointer-events:none}.cr-card-session{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;border-radius:10px;border:none;cursor:pointer;background:var(--accent);color:var(--accent-on);font-size:14px;font-weight:700;font-family:var(--body);margin-top:8px;transition:filter .12s;min-height:var(--tap-min)}@media (hover: hover){.cr-card-session:hover{filter:brightness(1.08)}}@media (min-width:768px){.sm-overlay{background:#000000b3;align-items:center;justify-content:center}.sm-session,.sm-pick,.sm-finish{max-width:420px;height:calc(var(--screen-h) * .9);border-radius:20px;border:1px solid var(--line);box-shadow:0 16px 64px #00000080}}@media (max-width:767px){.cr-card-session{padding:16px;font-size:16px;min-height:56px;border-radius:12px;margin-top:10px}.sm-adj-btn{width:var(--tap-min)}.sm-log-btn{height:48px;font-size:16px}.sm-rpe-btn{width:100%}}.tp-session-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid var(--accent);background:transparent;color:var(--accent-ink);font-size:12px;font-weight:700;font-family:var(--body);cursor:pointer;transition:.12s;white-space:nowrap}@media (hover: hover){.tp-session-btn:hover{background:var(--accent-soft)}}.sm-session-counter{text-align:center;padding:24px 16px}.sm-session-label{font-family:var(--body);font-size:18px;font-weight:700;color:var(--ink);margin:0 0 16px;line-height:1.3}.sm-start-btn{width:100%;padding:16px;border-radius:12px;font-size:16px;font-weight:700;font-family:inherit;border:none;cursor:pointer;min-height:52px;background:var(--accent);color:var(--accent-on);box-shadow:none;transition:filter .12s ease-out,transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.sm-start-btn:hover{filter:brightness(1.08)}}.sm-start-btn:active{transform:scale(.97)}.sm-progress-dots{display:flex;gap:4px;justify-content:center;padding:16px 0;flex-wrap:wrap;max-width:100%}.sm-dot{font-size:10px;color:var(--muted);font-family:var(--body);width:20px;height:20px;display:flex;align-items:center;justify-content:center}.sm-dot.done{color:var(--accent)}.sm-dot.current{color:var(--accent);font-size:12px}.sm-override-toggle{font-size:12px;color:var(--muted);background:none;border:none;cursor:pointer;padding:8px;width:100%;text-align:center;min-height:var(--tap-min);font-family:inherit;transition:color .12s ease-out}@media (hover: hover){.sm-override-toggle:hover{color:var(--ink2)}}.sm-rotation-hint{display:block;font-size:11px;color:var(--muted);font-weight:500}.sm-complete{padding:24px 16px;max-width:480px;margin:0 auto}.sm-complete-header{text-align:center;margin-bottom:24px}.sm-complete-title{font-family:var(--heading);font-size:24px;font-weight:700;color:var(--accent);margin:0 0 4px}.sm-complete-sub{font-size:14px;color:var(--muted);margin:0}.sm-complete-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.sm-complete-stat{background:var(--surface);border:1px solid transparent;border-radius:12px;padding:14px 12px;text-align:center}.sm-complete-stat-val{display:block;font-family:var(--num);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;color:var(--ink);line-height:1.2}.sm-complete-stat-label{display:block;font-size:11px;color:var(--muted);margin-top:2px;font-weight:600}.sm-complete-progress{margin-bottom:24px}.sm-complete-progress-title{font-size:13px;font-weight:600;color:var(--ink2);margin:0 0 10px}.sm-complete-progress-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--surface);border:1px solid transparent;border-radius:10px;margin-bottom:4px}.sm-complete-progress-name{font-size:13px;font-weight:600;color:var(--ink)}.sm-complete-progress-val{font-size:13px;font-family:var(--num);font-variant-numeric:tabular-nums;color:var(--ink2)}.sm-complete-progress-delta{color:var(--accent);font-weight:700;margin-left:6px}.sm-complete-actions{display:flex;flex-direction:column;gap:8px}.sm-complete-btn{padding:14px;border-radius:12px;font-size:14px;font-weight:600;font-family:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink2);cursor:pointer;min-height:48px;transition:border-color .12s ease-out,transform .16s ease-out}@media (hover: hover){.sm-complete-btn:hover{border-color:#ffffff24}}.sm-complete-btn:active{transform:scale(.97)}.sm-complete-btn--primary{background:var(--accent);color:var(--accent-on);border:none;font-weight:700;box-shadow:none}@media (hover: hover){.sm-complete-btn--primary:hover{filter:brightness(1.08)}}.sm-complete-btn--muted{border:none;color:var(--muted);font-size:13px}.sm-header-client.is-clipped .cn-head{max-width:0;margin:0;padding:0}.sm-header-client .cn-lead{flex:0 0 auto}@container (max-width: 420px){.sm-pick-day{flex-wrap:wrap;align-items:flex-start;row-gap:4px}.sm-pick-day-name{flex:0 0 100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.sm-day-gone{margin:0 auto 14px;max-width:480px;padding:10px 14px;border-radius:10px;border:1px solid var(--notice-line);background:var(--notice-soft);color:var(--notice);font-size:13px;line-height:1.5;text-align:left}.sm-exit-error{margin:8px 0 4px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--caution) 12%,transparent);border:1px solid color-mix(in srgb,var(--caution) 40%,transparent);color:var(--caution);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.sm-pain{min-height:var(--tap-min);padding:0 12px;background:#ffb4a21a;border:1px solid rgba(255,180,162,.32);border-radius:10px;color:#ffb4a2;font:600 13px/1 var(--body, system-ui, sans-serif);white-space:nowrap;cursor:pointer}.sm-pain:active{background:#ffb4a22e}.sm-first-time{margin-top:6px;font-size:12.5px;line-height:1.4;color:var(--muted)}.sm-vid-hdr-label{line-height:1}.sm-ex-name{font-family:var(--heading);font-size:clamp(16px,5.2vw,20px);font-weight:700;color:var(--ink);letter-spacing:-.02em;margin:0 0 2px;width:100%}.sm-name-row{display:flex;align-items:center;gap:8px;width:100%;margin:2px 0}.sm-name-row .sm-ex-name{flex:1;min-width:0;width:auto;margin:0}.sm-pos{margin:0;min-height:18px;font-size:13px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}.sm-ex-tempo{margin:0 0 6px;width:100%;font-size:13px;line-height:1.4;color:var(--muted)}.sm-tempo-val{font-weight:600;color:var(--ink2);font-variant-numeric:tabular-nums}.sm-ex-note-coach{display:flex;gap:8px;align-items:flex-start;width:100%;margin:0 0 8px;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:13.5px;line-height:1.45;color:var(--ink)}.sm-note-who{flex:none;font-weight:700;color:var(--accent-ink)}.sm-note-text{min-width:0;overflow-wrap:break-word}.sm-last-chip{display:inline-flex;align-items:center;margin-top:4px;padding:0 10px;min-height:var(--tap-min);min-width:var(--tap-min);border-radius:8px;border:1px solid var(--line);background:var(--surface2);color:var(--ink2);font-family:var(--num);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .12s,color .12s}@media (hover: hover){.sm-last-chip:hover{border-color:#ffffff24;color:var(--ink)}}.sm-last-chip:active{background:var(--accent-soft);border-color:var(--accent)}.sm-session-complete{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px 16px;text-align:center}.sm-session-complete h2{margin:0;font-family:var(--heading);font-size:22px;font-weight:700;line-height:1.25;color:var(--ink)}.sm-session-complete p{margin:0;max-width:34ch;font-size:14px;line-height:1.5;color:var(--muted)}.sm-session-complete .sm-nav-primary{flex:0 0 auto;margin-top:6px;min-width:200px;height:48px}.sm-week-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:6px}.sm-week-chip{display:inline-flex;padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:700;letter-spacing:.04em}.sm-week-line{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:14px;color:var(--ink2)}.sm-input-label-row{display:flex;align-items:center;justify-content:center;gap:2px;min-height:18px}.sm-hint-info{width:var(--tap-min);height:var(--tap-min);margin:-13px -14px -13px -10px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:none;color:var(--muted);cursor:pointer}.sm-hint-info[aria-expanded=true]{color:var(--ink)}.sm-hint-info:focus-visible{outline:2px solid var(--accent);outline-offset:-6px;border-radius:12px}.sm-hint-why{margin:0 2px 8px;font-size:14px;color:var(--ink2);line-height:1.4;text-align:left}.sm-hint-line{margin:0 2px 8px;font-size:14px;font-weight:600;color:var(--ink)}.do-week-note{margin:0 0 10px;font-size:14px;color:var(--ink2)}.sm-ex-hero{border-radius:18px;padding:clamp(8px,calc(8px + (var(--screen-h) - 664px) * .0301),12px) 14px;margin:0 0 clamp(6px,calc(6px + (var(--screen-h) - 664px) * .1047),22px)}.sm-ex-hero .sm-vid-ex:not(.on){background:color-mix(in srgb,var(--ink) 8%,transparent)}.sm-ex-hero .sm-blk-now{background:color-mix(in srgb,var(--ink) 7%,transparent)}.sm-ex-hero .sm-blk{margin:clamp(2px,calc(2px + (var(--screen-h) - 664px) * .0301),6px) 0 0}.sm-restbar-check{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink)}.cd-ed{display:flex;flex-direction:column;gap:8px;padding:4px 0}.cd-k{margin-top:6px;font-size:12px;font-weight:700;color:var(--ink2)}.cd-seg{display:flex;flex-wrap:wrap;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;align-self:flex-start}.tp .cd-seg-btn{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--ink2)}.tp .cd-seg-btn--on{background:var(--surface3);color:var(--ink)}.cd-fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}.cd-field{display:flex;flex-direction:column;gap:4px;min-width:96px}.cd-field-k{font-size:12px;color:var(--ink2)}.cd-field-box{display:flex;align-items:center;gap:6px;min-height:var(--tap-min);padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface2)}.cd-input{border:none;background:none;outline:none;width:64px;min-height:var(--tap-min);font-family:var(--num);font-variant-numeric:tabular-nums;font-size:16px;color:var(--ink)}.cd-field-suffix{font-size:12px;color:var(--ink2)}.cd-zones{display:grid;grid-template-columns:repeat(5,minmax(var(--tap-min),1fr));gap:6px;max-width:360px}.tp .cd-zone{min-height:var(--tap-min);min-width:var(--tap-min);border-radius:10px;border:1px solid var(--line);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:600;font-size:14px;color:var(--ink2)}.tp .cd-zone--on{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.cd-cue{margin:0;padding:8px 12px;border:1px solid var(--line);border-radius:12px;font-size:13px;line-height:1.45;color:var(--ink2)}.cd-hr{margin:0;font-size:12px;color:var(--ink2)}.cd-hr:empty{display:none}.cd-chips{display:flex;flex-wrap:wrap;gap:6px}.tp .cd-chip{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink2)}.tp .cd-chip--on{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 66%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.cd-preview{display:flex;flex-direction:column;gap:3px;margin-top:6px;padding-top:10px;border-top:1px solid var(--line)}.cd-preview-k{font-size:12px;color:var(--ink2)}.cd-preview-line{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:14px;color:var(--ink)}.cd-run{display:flex;flex-direction:column;gap:10px}.cd-run-card{border:1px solid color-mix(in srgb,var(--accent) 66%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:14px;padding:12px 14px}.cd-run-target{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:18px;font-weight:700;color:var(--ink)}.cd-run-cue{margin:5px 0 0;font-size:14px;line-height:1.4;color:var(--ink2)}.cd-run-clock{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0}.cd-run-phase{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--accent-ink)}.cd-run-phase--easy{color:var(--ink2)}.cd-run-big{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:48px;font-weight:700;line-height:1.1;color:var(--ink)}.cd-run-sub{font-size:13px;color:var(--ink2)}.cd-run-btns{display:flex;gap:8px;margin-top:6px}.cd-run-btn{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 18px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);font-weight:600;font-size:14px}.cd-run-btn--go{border-color:color-mix(in srgb,var(--accent) 66%,transparent);color:var(--accent-ink)}.cd-run-log{display:flex;flex-wrap:wrap;gap:8px}.cd-input--wide{width:84px}.cd-run-eff{display:grid;grid-template-columns:repeat(5,minmax(var(--tap-min),1fr));gap:8px}.cd-run-effbtn{min-height:var(--tap-min);min-width:var(--tap-min);border-radius:10px;border:1px solid var(--line);background:var(--surface2);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:600;font-size:15px;color:var(--ink2)}.cd-run-effbtn--on{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.cd-run-hint{margin:0;font-size:12.5px;color:var(--ink2)}.cd-run-done{margin:6px 0;font-family:var(--num);font-variant-numeric:tabular-nums;font-size:15px;color:var(--ink)}.bs-scrim{position:fixed;top:0;right:0;bottom:0;left:0;bottom:var(--kbd-inset,0px);background:#0000008c;display:flex;align-items:flex-end;justify-content:center;animation:bs-fade .16s ease-out}.bs-sheet{width:100%;max-height:calc(var(--screen-h) * .88);display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border-radius:18px 18px 0 0;padding-bottom:var(--safe-bottom-open);animation:bs-rise .28s cubic-bezier(.32,.72,0,1);transition:transform .2s cubic-bezier(.32,.72,0,1)}.bs-grab{flex:none;height:32px;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab}.bs-handle{width:36px;height:5px;border-radius:3px;background:var(--line2)}@keyframes bs-rise{0%{transform:translateY(100%)}}@keyframes bs-fade{0%{opacity:0}}@keyframes bs-pop{0%{opacity:0;transform:scale(.95)}}@media (min-width:901px){.bs-scrim{align-items:center;padding:20px}.bs-sheet{max-width:440px;border-radius:16px;padding-bottom:0;animation:bs-pop .2s cubic-bezier(.23,1,.32,1)}.bs-sheet--wide{max-width:900px}.bs-grab{display:none}}@media (prefers-reduced-motion: reduce){.bs-scrim,.bs-sheet{animation:none;transition:none}}.cv{display:flex;flex-direction:column;min-height:var(--screen-h);background:var(--bg)}.cv-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;flex-shrink:0}.cv-logo{display:flex;align-items:center;gap:8px}.cv-logo-mark{width:26px;height:26px;border-radius:8px;flex-shrink:0;background:var(--accent);color:var(--accent-on);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;font-family:var(--heading);box-shadow:none}.cv-logo-text{font-family:var(--body);font-weight:700;font-size:14px;color:var(--ink);letter-spacing:-.02em}.cv-signout{font-size:11px;font-weight:600;color:var(--muted);background:none;border:none;cursor:pointer;font-family:inherit;padding:6px 10px;border-radius:6px;transition:.12s}@media (hover: hover){.cv-signout:hover{color:var(--ink2);background:var(--surface2)}}.cv-body{flex:1;overflow-y:auto;padding:20px 20px calc(100px + var(--safe-bottom));max-width:600px;margin:0 auto;width:100%}.cv-greeting{margin-bottom:24px}.cv-hello{font-family:var(--heading);font-size:var(--fs-title);font-weight:var(--fw-title);color:var(--ink);letter-spacing:-.02em;margin:0 0 2px}.cv-coach-line{font-size:12.5px;color:var(--muted);font-weight:500}.cv-powered{margin:24px 0 8px;text-align:center;font-size:12px;color:var(--muted)}.cv-ask{display:inline-flex;align-items:center;min-height:var(--tap-min);min-width:var(--tap-min);margin-top:12px;padding:0 16px;border-radius:12px;border:1px solid var(--line2);background:transparent;color:var(--ink);font:600 15px var(--body);cursor:pointer;transition:transform .16s ease-out}.cv-ask:active{transform:scale(.97)}.cv-ask--top{margin:0 0 16px}@media (prefers-reduced-motion: reduce){.cv-ask{transition:none}}.cv-phase-card{background:var(--surface);border:1px solid transparent;border-radius:16px;padding:22px;margin-bottom:20px;box-shadow:0 8px 28px #00000040}.cv-prog-name{font-family:var(--heading);font-size:16px;font-weight:700;color:var(--ink);margin:0 0 4px}.cv-phase-name{font-size:13px;color:var(--accent-ink);font-weight:600;margin-bottom:12px}.cv-week-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.cv-week-label{font-size:12px;color:var(--muted);font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums;white-space:nowrap}.cv-week-bar{flex:1;height:6px;background:var(--surface2);border-radius:3px;overflow:hidden}.cv-week-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease}.cv-phase-desc{font-size:12.5px;color:var(--ink2);line-height:1.5;margin-top:8px}.cv-day-card{background:var(--surface);border:1px solid transparent;border-radius:14px;padding:20px;margin-bottom:16px;box-shadow:0 4px 16px #00000026}.cv-day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cv-day-title{font-family:var(--heading);font-size:17px;font-weight:700;color:var(--ink);letter-spacing:-.02em}.cv-day-tag{font-size:12px;font-weight:700;padding:3px 9px;border-radius:6px;background:var(--accent-soft);color:var(--accent-ink)}.cv-section{background:var(--surface2);border-radius:12px;padding:6px 12px 2px;margin-bottom:16px}.cv-section:last-child{margin-bottom:0}.cv-section-name{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:2px;display:flex;align-items:center;gap:8px}.cv-sec-head{display:inline-flex;align-items:center;gap:10px;min-width:0;font-family:var(--heading);font-size:16px;font-weight:600;line-height:1.25;color:var(--ink);letter-spacing:0;text-transform:none}.cv-sec-letter{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border-radius:6px;font-size:12.5px;font-weight:700;background:var(--accent-soft);color:var(--accent-ink)}.cv-sec-dot{display:none}.cv-sec-title{min-width:0;overflow-wrap:break-word}.cv-slot-label{display:flex;align-items:center;justify-content:center;height:22px;margin-top:2px;font-family:var(--body);font-size:11px;font-weight:700;color:var(--accent-ink);background:var(--accent-soft);border-radius:6px;font-variant-numeric:tabular-nums}.cv-slot-label--none{background:transparent}.cv-ss-tag{font-size:12px;font-weight:700;color:var(--notice);background:var(--notice-soft);padding:2px 7px;border-radius:4px}.cv-slot{padding:10px 0}.cv-section-name+.cv-slot{padding-top:6px}.cv-slot+.cv-slot{border-top:1px solid var(--line)}.cv-superset>.cv-slot{position:relative}.cv-superset>.cv-slot:before{content:"";position:absolute;left:-7px;width:2px;border-radius:1px;pointer-events:none;background:var(--accent-soft)}.cv-superset>.cv-slot:before{top:-1px;bottom:0}.cv-superset>.cv-section-name+.cv-slot:before{top:12px}.cv-superset>.cv-slot:not(:has(~.cv-slot)):before{bottom:auto;height:20px}.cv-slot-top{display:grid;grid-template-columns:28px minmax(0,1fr) 44px;gap:0 10px;align-items:start}.cv-slot-top--read{grid-template-columns:28px minmax(0,1fr)}.cv-slot-top.is-tappable{cursor:pointer}.cv-slot-info{min-width:0}.cv-slot-name{font-weight:600;font-size:15px;line-height:1.3;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.cv-slot-pattern{font-size:12px;color:var(--notice);font-style:italic}.cv-slot-rx{font-size:13px;color:var(--ink2);margin-top:3px;font-family:var(--body);font-variant-numeric:tabular-nums}.cv-rx-part{white-space:nowrap}.cv-slot-tempo{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin-top:2px;font-size:12px;line-height:1.4}.cv-tempo-val{font-weight:600;color:var(--ink2);font-variant-numeric:tabular-nums}.cv-tempo-means{color:var(--muted)}.cv-slot-note{display:flex;gap:8px;align-items:flex-start;margin:6px 0 0;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:13.5px;line-height:1.45;color:var(--ink)}.cv-note-who{flex:none;font-weight:700;color:var(--accent-ink)}.cv-note-text{min-width:0;overflow-wrap:break-word}.cv-start-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border-radius:12px;border:none;cursor:pointer;background-color:var(--accent);color:var(--accent-on);font-size:15px;font-weight:700;font-family:var(--body);margin-top:16px;transition:filter .12s}@media (hover: hover){.cv-start-btn:hover{filter:brightness(1.08)}}.cvw-week{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:2px 0 4px}.cvw-cell{border-radius:12px}.cvw-cell--over .cvw-day{border:2px dashed var(--accent);background:var(--accent-soft)}.cvw-day{width:var(--tap-min);min-width:var(--tap-min);min-height:76px;border-radius:12px;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 0 6px;cursor:pointer;font-family:inherit;color:var(--ink);touch-action:manipulation;position:relative;transition:transform .16s ease-out,background-color .16s ease}.cvw-day:active{transform:scale(.97)}.cvw-day--today{border:2px solid var(--accent)}.cvw-day--sel{background:var(--surface2)}.cvw-day--past{opacity:.55}.cvw-day--lifted{opacity:.4}.cvw-dow{font-size:12px;font-weight:700;color:var(--muted)}.cvw-date{font:500 15px var(--num);font-variant-numeric:tabular-nums;color:var(--ink)}.cvw-chip{width:26px;height:22px;border-radius:7px;display:flex;align-items:center;justify-content:center;font:700 12px var(--num);font-variant-numeric:tabular-nums;border:1.5px solid var(--accent);color:var(--accent-ink)}.cvw-chip--done{border-color:transparent;background:var(--accent-soft);color:var(--accent)}.cvw-chip--shifted{border:1.5px dashed var(--notice);color:var(--notice)}.cvw-chip--part{border-color:transparent;background:var(--notice-soft);color:var(--notice)}.cvw-chip--none{border-color:transparent;color:var(--muted)}.cvw-more{position:absolute;top:3px;right:3px;font:600 9px var(--num);font-variant-numeric:tabular-nums;color:var(--ink2)}.cvw-ghost{width:30px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--surface2);border:1.5px solid var(--accent);color:var(--accent-ink);font:700 13px var(--num);font-variant-numeric:tabular-nums;box-shadow:0 8px 20px #00000080;transform:scale(1.06)}.cvw-hint{font-size:12px;color:var(--muted);text-align:center;margin:4px 0 14px}.cvw-from{color:var(--notice)}.cvw-notice{margin:0 0 14px;font-size:14px;line-height:1.45;color:var(--ink)}.cvw-notice b{font-weight:600}.cvw-notice-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.cvw-btn2{min-height:var(--tap-min);min-width:var(--tap-min);border-radius:12px;border:1px solid var(--line2);background:transparent;color:var(--ink);font:600 15px var(--body);padding:0 16px;cursor:pointer;transition:transform .16s ease-out}.cvw-btn2:active{transform:scale(.97)}.cvw-btn2:disabled{opacity:.5;cursor:default}.cvw-move-btn{width:100%;min-height:48px;margin-top:8px}.cvw-unplaced{margin:0 0 14px}.cvw-unplaced-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:var(--tap-min);min-width:var(--tap-min);padding:0;border:0;background:none;color:var(--ink);font:600 15px var(--body);text-align:left;cursor:pointer}.cvw-unplaced-chev{color:var(--muted);font-size:20px;line-height:1;transition:transform .16s cubic-bezier(.23,1,.32,1)}.cvw-unplaced-toggle[aria-expanded=true] .cvw-unplaced-chev{transform:rotate(90deg)}.cvw-unplaced-sub{font-size:13px;line-height:1.45;color:var(--ink2);margin:4px 0 8px}.cvw-unplaced-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid var(--line)}.cvw-unplaced-name{min-height:var(--tap-min);min-width:var(--tap-min);background:none;border:0;padding:0;text-align:left;color:var(--ink);font:500 15px var(--body);cursor:pointer;flex:1 1 auto}.do-when{font-size:12px;font-weight:600;color:var(--ink2);margin:-4px 0 8px}.do-hw-from{display:block}.do-hw-note{display:block;margin-top:8px;padding:8px 10px;border-radius:10px;background:var(--surface2);color:var(--ink);font:500 14px/1.45 var(--body);overflow-wrap:anywhere}.cvw-scrim{position:fixed;top:0;left:0;right:0;bottom:var(--kbd-inset,0px);background:#0000008c;z-index:60}.cvw-sheet{position:fixed;left:0;right:0;bottom:var(--kbd-inset,0px);z-index:61;background:var(--surface);border-top:1px solid var(--line2);border-radius:18px 18px 0 0;padding:10px 16px calc(20px + var(--safe-bottom-open));max-height:calc(var(--screen-h) * .85);overflow-y:auto;animation:cvw-rise .22s cubic-bezier(.23,1,.32,1)}.cvw-grab{width:36px;height:4px;border-radius:2px;background:var(--line2);margin:0 auto 12px}.cvw-sheet-title{font:600 19px var(--heading);color:var(--ink);margin:0 0 4px}.cvw-sheet-sub{font-size:13px;line-height:1.45;color:var(--ink2);margin:0 0 12px}.cvw-opts{display:flex;flex-direction:column;gap:8px}.cvw-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;width:100%;border-radius:12px;border:1px solid var(--line);background:var(--bg);padding:0 14px;color:var(--ink);font-family:inherit;cursor:pointer;text-align:left}.cvw-opt b{font-weight:600;font-size:15px}.cvw-opt span{font-size:13px;color:var(--ink2);text-align:right}.cvw-opt--here{border-color:var(--accent);cursor:default}.cvw-opt--here span{color:var(--accent-ink)}.cvw-opt:disabled:not(.cvw-opt--here){opacity:.5}.cvw-sheet-foot{font-size:12px;line-height:1.45;color:var(--muted);margin:10px 0 8px}.cvw-cancel{width:100%;min-height:48px;border-radius:12px;border:1px solid var(--line2);background:transparent;color:var(--ink);font:600 15px var(--body);cursor:pointer}.cv-overview-toggle{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;cursor:pointer;padding:10px 0;font-size:13px;font-weight:600;color:var(--ink2);font-family:inherit;transition:.12s}@media (hover: hover){.cv-overview-toggle:hover{color:var(--ink)}}.cv-overview-arrow{font-size:10px;color:var(--muted);transition:transform .15s}.cv-overview-arrow.open{transform:rotate(90deg)}.cv-overview{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.cv-overview-day{padding:12px 14px;background:var(--surface);border:1px solid transparent;border-radius:10px;cursor:pointer;transition:.12s}@media (hover: hover){.cv-overview-day:hover{border-color:#ffffff1f}}.cv-overview-day-name{font-family:var(--heading);font-size:13px;font-weight:600;color:var(--ink)}.cv-overview-day-secs{font-size:11px;color:var(--muted);margin-top:2px}.cv-overview-note{font-size:11px;color:var(--muted);font-style:italic;margin-top:4px;text-align:center}.cv-nav{position:fixed;bottom:var(--kbd-inset,0px);left:0;right:0;background:var(--bg2);border-top:1px solid var(--line);display:flex;justify-content:center;gap:0;z-index:50;padding:6px 0 calc(6px + var(--safe-bottom-open))}.cv-nav-item{flex:1 1 auto;min-width:var(--tap-min);max-width:120px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;background:none;border:none;cursor:pointer;color:var(--muted);font-family:inherit;transition:.12s}@media (hover: hover){.cv-nav-item:hover{color:var(--ink2)}}.cv-nav-item.on{color:var(--accent-ink)}.cv-nav-item.on:after{content:"";display:block;width:4px;height:4px;border-radius:50%;background:var(--accent);margin-top:2px;box-shadow:none}.cv-nav-icon{font-size:18px}.cv-nav-label{font-size:12px;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px;min-height:300px}.cv-empty-icon{font-size:40px;margin-bottom:16px;filter:grayscale(.3)}.cv-empty-title{font-family:var(--heading);font-size:18px;font-weight:700;color:var(--ink);margin:0 0 6px}.cv-empty-sub{font-size:13px;color:var(--muted);line-height:1.5;max-width:300px;margin:0}.cv-empty.cv-rest{min-height:0;padding:28px 20px 4px}.cv-rest-next{margin:14px 0 0;font:600 15px/1.4 var(--body);color:var(--ink)}.cv-rest-next b{font-weight:700}.cv-rest-instead{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap-min);min-width:var(--tap-min);margin-top:4px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--accent-ink);font:600 14px var(--body);cursor:pointer}.cv-rest-instead:active{transform:scale(.97)}.cv-date{margin:4px 0 0;font:500 15px var(--body);font-variant-numeric:tabular-nums;color:var(--muted)}.cv-today-panel{margin:0 0 12px}.cv-today-n{font:500 12px var(--num);font-variant-numeric:tabular-nums;color:var(--ink2)}.cv-today-nut{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cv-today-big{font:500 22px var(--num);font-variant-numeric:tabular-nums}.cv-today-of{font:400 13px var(--num);font-variant-numeric:tabular-nums;color:var(--muted)}.cv-today-unit{display:block}.cv-today-bar{display:block;height:6px;border-radius:3px;background:var(--surface3);margin-top:6px;overflow:hidden}.cv-today-bar b{display:block;height:100%;background:var(--warm)}.cv-today-note{margin:10px 0 0;font-size:12.5px;color:var(--muted)}.cv-today-line{margin:0;font-size:14px;color:var(--ink2)}.cv-today-workout .cv-start-btn{margin-top:14px}.cv-today-quote{margin:0;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cv-today-open,.cv-today-retry{display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--tap-min);margin-top:12px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.cv-today-open:active,.cv-today-retry:active{transform:scale(.98)}.cv-today-failed-text{margin:0;font-size:14px;color:var(--ink)}.cv-today-retry{width:auto;min-width:var(--tap-min);padding:0 16px}.cv-habits{list-style:none;margin:0;padding:0}.cv-habit{display:grid;grid-template-columns:var(--tap-min) minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 0}.cv-habit+.cv-habit{border-top:1px solid var(--line)}.cv-habit-tick{display:flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);border-radius:50%;border:2px solid var(--muted);background:transparent;color:var(--accent-on);cursor:pointer;padding:0;transition:transform .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease)}.cv-habit-tick.on{background:var(--accent);border-color:var(--accent)}.cv-habit-tick:active:not(:disabled){transform:scale(.95)}.cv-habit-tick:disabled{cursor:default;opacity:.5}.cv-habit-text{display:flex;flex-direction:column;gap:4px;min-width:0}.cv-habit-title{font-size:15px;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.cv-habit-progress{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.cv-habit-dots{display:inline-flex;gap:3px}.cv-habit-dots i{width:6px;height:6px;border-radius:50%;background:var(--surface3)}.cv-habit-dots i.on{background:var(--accent)}.cv-habit-count{font:400 12px var(--num);font-variant-numeric:tabular-nums;color:var(--muted)}.cv-habit-yesterday{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 4px;border:0;background:transparent;color:var(--accent-ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.cv-habit-yesterday:active{transform:scale(.97)}@media (prefers-reduced-motion: reduce){.cv-habit-tick{transition:none}}.cv-checkin{position:fixed;top:0;right:0;bottom:0;left:0;bottom:var(--kbd-inset,0px);z-index:110;display:flex;flex-direction:column;background:var(--bg)}.cv-checkin-top{display:flex;align-items:center;padding:6px 8px;border-bottom:1px solid var(--line)}.cv-checkin-back{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 8px;border:0;background:transparent;color:var(--accent-ink);font:inherit;font-size:15px;font-weight:600;cursor:pointer}.cv-checkin-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:16px 16px 32px;-webkit-overflow-scrolling:touch}.cv-checkin-title{font-family:var(--heading);font-size:24px;margin:0;color:var(--ink)}.cv-checkin-sub{margin:4px 0 20px;color:var(--muted);font-size:14px}.cv-checkin-q{border:0;margin:0 0 20px;padding:0;min-width:0}.cv-checkin-q-title{display:block;font-size:15px;font-weight:600;color:var(--ink);margin:0 0 8px;padding:0}.cv-checkin-opt{font-weight:400;color:var(--muted)}.cv-checkin-weight{display:flex;align-items:center;gap:8px}.cv-checkin-input{flex:1 1 auto;min-width:var(--tap-min);min-height:var(--tap-min);padding:0 12px;border-radius:10px;border:1px solid var(--line2);background:var(--bg2);color:var(--ink);font-family:var(--num);font-size:16px;font-variant-numeric:tabular-nums}.cv-checkin-unit{color:var(--muted);font-size:14px}.cv-checkin-choice{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 10px;border-radius:10px;border:1px solid var(--line2);background:transparent;color:var(--ink);font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:transform .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease)}.cv-checkin-choice.on{background:var(--accent-soft);border-color:var(--accent)}.cv-checkin-choice:active{transform:scale(.97)}.cv-checkin-skip{margin-top:8px;width:100%}.cv-checkin-scale-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.cv-checkin-ends{display:flex;justify-content:space-between;gap:12px;margin-top:6px;font-size:12.5px;color:var(--ink2)}.cv-checkin-felt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cv-checkin-text{display:block}.cv-checkin-textarea{display:block;width:100%;box-sizing:border-box;min-height:64px;padding:10px 12px;border-radius:10px;border:1px solid var(--line2);background:var(--bg2);color:var(--ink);font-family:inherit;font-size:16px;resize:vertical}.cv-checkin-pain{display:block;min-height:var(--tap-min);margin:0 0 12px;padding:0;border:0;background:transparent;color:var(--ink2);font:inherit;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cv-checkin-hint{margin:0 0 8px;font-size:13px;color:var(--muted)}.cv-checkin-send{width:100%}.cv-checkin-send:disabled{opacity:.5;cursor:default}.cv-checkin-confirm,.cv-checkin-failed{margin:0 0 12px;color:var(--caution)}.cv-checkin-confirm-text,.cv-checkin-failed-text{margin:0 0 10px;font-size:14.5px;font-weight:600}.cv-checkin-confirm-actions{display:flex;gap:8px}.cv-checkin-secondary{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 16px;border-radius:10px;border:1px solid var(--line2);background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer}@media (prefers-reduced-motion: reduce){.cv-checkin-choice{transition:none}}.cv-profile{display:flex;flex-direction:column;gap:16px}.cv-profile-card{background:var(--surface);border:1px solid transparent;border-radius:14px;padding:20px}.cv-profile-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--line2)}.cv-profile-row:last-child{border-bottom:none}.cv-profile-label{font-size:12px;font-weight:700;color:var(--muted)}.cv-profile-val{font-size:13px;font-weight:600;color:var(--ink)}.cv-units{display:flex;gap:6px}.cv-units-btn{min-width:88px;min-height:44px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.cv-units-btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.cv-units-btn:active{transform:scale(.97)}.cv-units-btn:disabled{cursor:default}.cv-units-note{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}.cv-account-action{margin-top:8px;align-self:flex-start}.cv-account-divider{margin-top:12px;border-top:1px solid var(--line2)}.cv-account-form{display:flex;flex-direction:column;gap:10px;margin-top:8px}.cv-account-field{display:flex;flex-direction:column;gap:4px}.cv-account-field .cv-checkin-input{font-family:var(--body);font-variant-numeric:normal}.cv-account-actions{display:flex;gap:8px;flex-wrap:wrap}.cv-account-problem{margin:0;font-size:13px;color:var(--caution)}.cv-account-note{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}.cv-profile-val-soft{font-weight:500;color:var(--muted)}.cv-profile-lines{display:flex;flex-direction:column;gap:4px;align-items:flex-end;min-width:0;text-align:right}.cv-constraint-line{display:block}.cv-constraint-val{font-weight:600;color:var(--ink)}.cv-constraint-line--context .cv-constraint-val{color:var(--ink2, var(--ink2));font-weight:400}.cv-constraint-key{font-size:12px;font-weight:700;color:var(--muted);margin-right:6px}.cv-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--muted);font-size:13px}.cv-hw{display:flex;flex-direction:column;gap:12px}.cv-extra{margin-bottom:16px}.cv-hw-card{background:var(--surface);border:1px solid transparent;border-radius:14px;padding:18px;box-shadow:0 4px 16px #00000026;animation:cv-hw-in .25s ease-out both}.cv-hw-card--past{opacity:.6}.cv-hw-card--open{border-color:#ffffff1a}@keyframes cv-hw-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cv-hw-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.cv-hw-card-title{font-family:var(--heading);font-size:15px;font-weight:700;color:var(--ink);flex:1;min-width:0;line-height:1.3}.cv-req-chip{display:inline-block;margin-bottom:6px;padding:3px 8px;border-radius:6px;font-family:var(--num);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;background:var(--surface2);color:var(--ink2)}.cv-req-chip--waiting{background:var(--caution-soft);color:var(--caution)}.cv-req-body{margin:4px 0 0;font-size:14px;line-height:1.45;color:var(--ink2);overflow-wrap:anywhere}.cv-req-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.cv-req-btn{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 16px;border-radius:10px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);font:600 14px var(--body);cursor:pointer;transition:transform .14s ease-out}.cv-req-btn--quiet{background:transparent}.cv-req-btn:active:not(:disabled){transform:scale(.97)}.cv-req-btn:disabled{opacity:.5;cursor:default}.cv-req-confirm{margin-top:8px}.cv-req-err{margin:8px 0 0;font-size:13px;color:var(--ink2)}@media (prefers-reduced-motion:reduce){.cv-req-btn{transition:none}.cv-req-btn:active:not(:disabled){transform:none}}.cv-hw-status{font-size:12px;font-weight:700;padding:3px 9px;border-radius:6px;white-space:nowrap;flex-shrink:0}.cv-hw-st--assigned{background:var(--accent-soft);color:var(--accent)}.cv-hw-st--progress{background:var(--notice-soft);color:var(--notice)}.cv-hw-st--done{background:#6b72781f;color:var(--muted)}.cv-hw-st--skipped{background:color-mix(in srgb,var(--notice) 10%,transparent);color:var(--notice)}.cv-hw-card-meta{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.cv-hw-asst{font-size:11px;font-weight:600;color:var(--asst-color, #9CA3AF);display:flex;align-items:center;gap:4px}.cv-hw-due{font-size:11px;font-weight:500;color:var(--muted);font-family:var(--body)}.cv-hw-count{font-size:12px;font-weight:600;color:var(--ink2);font-variant-numeric:tabular-nums}.cv-hw-note{font-size:12px;color:var(--ink2);line-height:1.5;padding:8px 10px;border-radius:8px;background:var(--surface2);border-left:3px solid rgba(255,255,255,.08);margin-bottom:8px}.cv-hw-expand{font-size:11px;font-weight:600;color:var(--accent-ink);background:none;border:none;cursor:pointer;padding:4px 0;font-family:inherit;transition:color .12s;outline:none}@media (hover: hover){.cv-hw-expand:hover{color:var(--accent)}}.cv-hw-expand:focus,.cv-hw-expand:focus-visible{outline:none;box-shadow:none}.cv-hw-content{margin-top:10px;padding:14px;border-radius:10px;background:#0003;border:1px solid var(--line);font-size:13px;line-height:1.6;color:var(--ink2)}.cv-hw-content h1,.cv-hw-content h2,.cv-hw-content h3,.cv-hw-content h4{color:var(--ink);font-family:var(--heading);margin:10px 0 4px;line-height:1.3}.cv-hw-content h1{font-size:16px}.cv-hw-content h2{font-size:15px}.cv-hw-content h3{font-size:14px}.cv-hw-content h4{font-size:13px}.cv-hw-content h1:first-child,.cv-hw-content h2:first-child,.cv-hw-content h3:first-child,.cv-hw-content h4:first-child{margin-top:0}.cv-hw-content p{margin:6px 0}.cv-hw-content p:first-child{margin-top:0}.cv-hw-content p:last-child{margin-bottom:0}.cv-hw-content strong{color:var(--ink);font-weight:700}.cv-hw-content em{font-style:italic}.cv-hw-content ul,.cv-hw-content ol{margin:6px 0;padding-left:20px}.cv-hw-content li{margin:3px 0}.cv-hw-content li::marker{color:var(--muted)}.cv-hw-content code{font-size:12px;padding:1px 5px;border-radius:4px;background:#ffffff14;color:var(--accent);font-family:SF Mono,Consolas,monospace}.cv-hw-content pre{margin:8px 0;padding:10px 12px;border-radius:8px;background:#0000004d;overflow-x:auto}.cv-hw-content pre code{padding:0;background:none;color:var(--ink)}.cv-hw-content table{width:100%;border-collapse:collapse;margin:8px 0;font-size:12.5px}.cv-hw-content th,.cv-hw-content td{padding:6px 10px;text-align:left;border:1px solid rgba(255,255,255,.1)}.cv-hw-content th{font-weight:700;color:var(--ink);background:#ffffff0d}.cv-hw-content td{color:#fffc}.cv-hw-content blockquote{margin:6px 0;padding:4px 12px;border-left:3px solid var(--accent);color:#ffffffb3;font-style:italic}.cv-hw-content hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:10px 0}.cv-hw-actions{display:flex;gap:8px;margin-top:12px}.cv-hw-start{flex:1;display:flex;align-items:center;justify-content:center;padding:12px;border-radius:10px;font-size:13px;font-weight:700;font-family:var(--body);background:var(--accent);color:var(--accent-on);border:none;cursor:pointer;box-shadow:none;transition:filter .12s,transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.cv-hw-start:hover{filter:brightness(1.08)}}.cv-hw-start:active{transform:scale(.97)}.cv-hw-mark{flex:0 0 auto;padding:12px 16px;border-radius:10px;font-size:12px;font-weight:600;font-family:var(--heading);background:var(--surface2);color:var(--muted);border:1px solid transparent;cursor:pointer;transition:color .12s,border-color .12s,transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.cv-hw-mark:hover:not(:disabled){color:var(--ink);border-color:#ffffff26}}.cv-hw-mark:active:not(:disabled){transform:scale(.97)}.cv-hw-mark:disabled{cursor:default}.cv-hw-mark--done{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 20%,transparent)}.cv-hw-completion{margin-top:10px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid var(--accent-soft);display:flex;flex-direction:column;gap:6px}.cv-hw-completion-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.cv-hw-completion-label{font-size:12px;font-weight:700;color:var(--muted)}.cv-hw-completion-val{font-size:12px;font-weight:600;color:var(--ink);font-family:var(--num);font-variant-numeric:tabular-nums}.cv-hw-reflection{display:flex;flex-direction:column;gap:3px}.cv-hw-reflection-text{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink2);font-style:italic}.cv-hw-duration{font-size:11px;font-weight:600;color:var(--accent-ink);font-family:var(--num);font-variant-numeric:tabular-nums}.cv-hw-divider{display:flex;align-items:center;gap:10px;margin:8px 0}.cv-hw-divider:before,.cv-hw-divider:after{content:"";flex:1;height:1px;background:var(--line)}.cv-hw-divider-text{font-size:12px;font-weight:700;color:var(--muted)}@media (min-width:768px){.cv-body{padding:28px 28px calc(100px + var(--safe-bottom))}.cv-nav{padding:8px 0 calc(8px + var(--safe-bottom-open))}}.cv-profile-link{width:100%;background:none;border:none;cursor:pointer;text-align:left;min-height:44px;font:inherit;color:inherit}@media (hover: hover){.cv-profile-link:hover .cv-profile-val{color:var(--accent, var(--accent))}}.cv-profile-list{padding:4px 16px}.cv-profile-list-row{gap:12px;min-height:60px;padding:10px 0}.cv-profile-list-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.cv-profile-list-title{font:600 15px var(--body);color:var(--ink)}.cv-profile-list-sub{font-size:13px;color:var(--ink2);overflow-wrap:anywhere}.cv-profile-list-chev{color:var(--muted);font-size:20px;line-height:1}.cv-profile-signout{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.cv-profile-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;min-height:var(--tap-min);min-width:var(--tap-min);padding:0 8px 0 0;background:none;border:none;color:var(--accent-ink);font:600 15px var(--body);cursor:pointer}.cv-profile-back span{font-size:22px;line-height:1}.cv-profile-page-title{margin:0;font:700 22px var(--heading);color:var(--ink)}.cv-paused{margin:0 0 14px;padding:14px 16px;border:1px solid var(--notice-line, rgba(123, 170, 232, .28));border-left:3px solid var(--notice, #7BAAE8);border-radius:10px;background:var(--notice-soft, rgba(123, 170, 232, .08))}.cv-paused-title{margin:0 0 6px;font-size:15px;font-weight:600;color:var(--text, #E8EAED)}.cv-paused-body{margin:0 0 8px;font-size:13px;line-height:1.5;color:var(--text-dim, #A8AEB8)}.cv-paused-contact{margin:0;font-size:12px;color:var(--muted, var(--muted))}.cv-paused-note{margin:10px 0 0;padding:9px 12px;border-radius:8px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.12);font-size:12.5px;line-height:1.45;color:var(--text-dim, #A8AEB8)}.cv-hw-blocked{margin-top:8px;padding:9px 11px;border-radius:9px;background:color-mix(in srgb,var(--notice) 10%,transparent);border:1px solid color-mix(in srgb,var(--notice) 30%,transparent);color:var(--ink2);overflow-wrap:anywhere}.cv-resume{margin:0 0 12px;padding:14px;border-radius:14px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}.cv-resume-line{margin:0 0 10px;font-size:14px;line-height:1.45;color:var(--ink)}.cv-resume-actions{display:flex;flex-wrap:wrap;gap:8px}.cv-resume-go{flex:1 1 auto;min-height:44px;padding:0 16px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-on);font:700 15px/1 var(--body);cursor:pointer}.cv-resume-fresh{flex:0 0 auto;min-height:44px;padding:0 16px;border-radius:10px;background:transparent;border:1px solid var(--line);color:var(--ink2);font:600 14px/1 inherit;cursor:pointer}.cv-week-line{margin:0 0 12px;font-size:13px;color:var(--muted);text-align:center}.cv-coachchip{display:flex;align-items:center;gap:10px;min-width:0}.cv-coachchip-av{width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:var(--celebrate);color:var(--bg);display:flex;align-items:center;justify-content:center;font:700 13px var(--body)}.cv-coachchip-text{font:500 14px var(--body);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-me{width:var(--tap-min);height:var(--tap-min);min-width:var(--tap-min);flex:0 0 auto;border-radius:50%;border:none;cursor:pointer;background:var(--surface2);color:var(--ink);font:700 14px var(--body);display:flex;align-items:center;justify-content:center}.cv-me.on{box-shadow:inset 0 0 0 2px var(--accent)}.cv-me:active{transform:scale(.97)}.cv-hero{border-radius:24px;padding:22px;margin:0 0 14px}.cv-hero-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.cv-hero-eyebrow{margin:0;font:600 14px var(--body);color:var(--muted)}.cv-hero-title{margin:6px 0 0;font:800 38px/1.05 var(--heading);color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere}.cv-hero-line{margin:8px 0 0;font:400 15px/1.45 var(--body);color:var(--ink2)}.cv-hero-when{margin:4px 0 0;font:400 14px var(--body);color:var(--muted)}.cv-hero .cv-hero-go{min-height:56px;border-radius:999px;font-size:17px;margin-top:18px}.cv-hero-more{display:flex;flex-direction:column;gap:4px;margin-top:8px}.cv-hero .cvw-move-btn,.cv-hero .cv-hero-open{background:color-mix(in srgb,var(--ink) 7%,transparent);border-color:transparent}.cv-note{display:flex;gap:12px;align-items:flex-start;margin:0 0 14px}.cv-note-av{width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:var(--celebrate);color:var(--bg);display:flex;align-items:center;justify-content:center;font:700 14px var(--body)}.cv-note-body{min-width:0}.cv-note-who{margin:0 0 4px;font:400 13.5px var(--body);color:var(--muted)}.cv-note-who b{color:var(--ink);font-weight:600}.cv-note-text{margin:0;font:500 16px/1.45 var(--body);color:var(--ink);white-space:pre-line;overflow-wrap:anywhere}.cv-weekcard{display:flex;align-items:center;gap:16px;margin:0 0 10px}.cv-weekcard .cv-week-line{margin:0;text-align:left;font:600 16px/1.4 var(--body);color:var(--ink)}.cv-ring{flex:0 0 64px}.cv-ring-track{fill:none;stroke:var(--surface3);stroke-width:7}.cv-ring-on{fill:none;stroke:var(--accent);stroke-width:7;stroke-linecap:round;filter:var(--glow-progress);transition:stroke-dashoffset var(--dur-fill) var(--ease),stroke-dasharray var(--dur-fill) var(--ease)}.cv-ring-text{fill:var(--ink);font:800 18px var(--body)}.cv-sec-title{margin:20px 0 10px;font:700 var(--fs-subhead)/1.3 var(--heading);color:var(--ink)}.cv-past-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:var(--tap-min);min-width:var(--tap-min);padding:0;border:none;background:transparent;color:var(--ink2);font:600 15px var(--body);cursor:pointer}.cv-chev--open{transform:rotate(90deg)}@keyframes cvw-rise{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.cvw-sheet{animation:none}.cvw-day,.cvw-btn2{transition:none}}.do-stage-scroll{width:100%;max-width:480px;height:100%;overflow-y:auto;padding:4px 16px 16px}.do-overview{padding:16px;border:0;border-radius:18px}.do-overview .do-header .cv-day-title{margin:0;font-size:18px}.do-overview .cv-section{padding:10px 12px 4px;margin-bottom:12px}.do-overview .cv-sec-head .cv-sec-title{margin:0;font:600 16px/1.25 var(--heading)}.do-overview .cv-slot{padding:8px 0}.do-overview .cv-section-name+.cv-slot{padding-top:8px}.do-overview .cv-start-btn{margin-top:0;min-height:52px;font-size:16px;border-radius:14px}.do-header{display:flex;align-items:center;gap:10px}.do-back{flex-shrink:0;padding:6px 10px;border-radius:8px;font-size:13px;font-weight:600;color:var(--ink2, var(--ink2));background:var(--surface2, var(--surface2));border:1px solid var(--line, rgba(255,255,255,.08))}@media (hover: hover){.do-back:hover{color:var(--ink, var(--ink))}}.do-unfilled{margin-top:10px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:600;color:var(--notice);background:var(--notice-soft);border:1px solid var(--notice-line)}.do-mismatch{display:inline-flex;align-items:center;gap:3px;margin-top:3px;font-size:10px;font-weight:700;color:var(--notice);padding:1px 6px;border-radius:6px;background:var(--notice-soft);white-space:nowrap;flex-shrink:0}.do-scopebar{position:sticky;top:0;z-index:30;margin-bottom:12px;padding:10px 12px;border-radius:12px;border:1px solid transparent}.do-scopebar--today{background:var(--accent-soft);border-color:var(--accent-soft, color-mix(in srgb, var(--accent) 30%, transparent))}.do-scopebar--program{background:color-mix(in srgb,var(--caution) 16%,transparent);border-color:color-mix(in srgb,var(--caution) 59%,transparent)}.do-scopebar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.do-scopebar-label{font-size:12px;font-weight:800;color:var(--ink2, var(--ink2))}.do-scopebar-toggle{display:inline-flex;gap:2px;padding:2px;border-radius:10px;background:var(--surface, var(--surface));border:1px solid var(--line, rgba(255,255,255,.08))}.do-scopebar-opt{min-height:44px;padding:0 16px;border-radius:8px;font-size:13px;font-weight:800;color:var(--ink2, var(--ink2));background:transparent;border:none}.do-scopebar--today .do-scopebar-opt.on{color:var(--accent-on);background:var(--accent, var(--accent))}.do-scopebar--program .do-scopebar-opt.on{color:#2a1c05;background:var(--caution)}.do-scopebar-count{font-size:12px;font-weight:600;color:var(--ink2, var(--ink2))}.do-scopebar-discard{margin-left:auto;min-height:44px;padding:0 14px;border-radius:9px;font-size:12px;font-weight:700;color:var(--muted, var(--muted));background:transparent;border:1px solid var(--line, rgba(255,255,255,.08))}.do-scopebar-save{min-height:44px;padding:0 16px;border-radius:9px;font-size:13px;font-weight:800;color:#2a1c05;background:var(--caution);border:none}.do-scopebar-opt:active,.do-scopebar-discard:active,.do-scopebar-save:active{transform:scale(.97)}.do-scopebar-hint{margin:8px 2px 0;font-size:11px;line-height:1.4;color:var(--ink2, var(--ink2))}.do-more{width:var(--tap-min);height:var(--tap-min);margin:-6px -8px 0 0;display:flex;align-items:center;justify-content:center;border:none;border-radius:10px;background:transparent;color:var(--ink2);cursor:pointer;transition:transform .16s ease-out,background-color .12s ease-out}.do-more:active{transform:scale(.94);background:var(--surface3)}.do-more:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.do-sheet{padding:0 16px 10px}.do-sheet-title{margin:0;font-size:17px;font-weight:700;line-height:1.3;color:var(--ink);overflow-wrap:anywhere}.do-sheet-sub{margin:4px 0 14px;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.do-opt{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;margin-bottom:8px;padding:0 14px;border:none;border-radius:12px;background:var(--surface2);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:transform .16s ease-out}.do-opt:active{transform:scale(.98)}.do-opt>svg{flex:none;color:var(--ink2)}.do-opt-text{display:flex;flex-direction:column;min-width:0}.do-opt-title{font-size:15px;font-weight:600}.do-opt-text small{margin-top:2px;font-size:12px;font-weight:500;color:var(--muted)}.do-tray{margin:8px 0 4px;padding:10px;border-radius:10px;background:var(--surface2, var(--surface2));border:1px solid var(--line, rgba(255,255,255,.08));display:flex;flex-direction:column;gap:10px}.do-tray-struct{display:flex;gap:8px;align-items:center}.do-tray-move{min-width:44px;min-height:44px;border-radius:8px;font-size:16px;font-weight:700;color:var(--ink, var(--ink));background:var(--surface, var(--surface));border:1px solid var(--line, rgba(255,255,255,.08))}.do-tray-remove{margin-left:auto;min-height:44px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:700;color:#e86a6a;background:#e86a6a1a;border:1px solid rgba(232,106,106,.25)}.do-tray-done{min-height:44px;padding:0 16px;border-radius:8px;font-size:13px;font-weight:700;color:var(--ink);background:var(--surface);border:1px solid var(--line)}.do-tray-move:active,.do-tray-remove:active,.do-tray-done:active{transform:scale(.97)}.do-tray-fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.do-step{display:flex;flex-direction:column;gap:4px}.do-step-label{font-size:12px;font-weight:700;color:var(--muted, var(--muted))}.do-step-ctrl{display:flex;align-items:center;gap:2px;background:var(--surface, var(--surface));border:1px solid var(--line, rgba(255,255,255,.08));border-radius:8px}.do-step-btn{min-width:44px;min-height:44px;flex-shrink:0;font-size:18px;font-weight:700;color:var(--accent-ink, var(--accent-ink));background:transparent;border:none}.do-step-btn:active{transform:scale(.94)}.do-step-val{min-width:var(--tap-min);text-align:center;font-size:16px;font-weight:700;color:var(--ink, var(--ink));font-family:var(--num, ui-monospace, monospace)}.do-tray-hint{margin:0 0 0 auto;align-self:center;font-size:11px;color:var(--muted, #8A93A6)}.do-sec-tools{display:flex;gap:8px;margin:6px 0 8px}.do-sec-add{min-height:44px;padding:0 14px;border-radius:8px;font-size:12px;font-weight:700;color:var(--accent-ink, var(--accent-ink));background:var(--accent-soft, color-mix(in srgb, var(--accent) 10%, transparent));border:1px dashed color-mix(in srgb,var(--accent) 30%,transparent)}.do-sec-add:active{transform:scale(.97)}.do-limits{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:var(--caution-soft);border:1px solid var(--caution-line)}.do-limits-label{font-size:12px;font-weight:700;color:var(--caution);margin-bottom:4px}.do-limits-text{margin:0;font-size:13px;line-height:1.5;color:var(--ink, var(--ink));overflow-wrap:anywhere}.do-limits--loading,.do-limits--never-asked,.do-limits--answered-no{background:transparent;border-color:var(--line)}.do-limits--loading .do-limits-label,.do-limits--never-asked .do-limits-label,.do-limits--answered-no .do-limits-label{color:var(--muted)}.do-limits-quiet{color:var(--ink2, var(--ink2));font-style:italic}.do-limits--line{padding:8px 12px;font-size:13px;color:var(--ink2)}.do-limits-lines{display:flex;flex-direction:column;gap:5px}.do-limits-line{display:flex;gap:8px;align-items:baseline}.do-limits-line-label{flex:none;width:44px;font-size:10px;font-weight:700;color:var(--muted)}.do-limits-line-value{flex:1;min-width:0;font-size:13px;font-weight:500;line-height:1.4;color:var(--ink, var(--ink));overflow-wrap:anywhere}.do-limits-line--context .do-limits-line-value{color:var(--ink2, var(--ink2));font-weight:400}.do-step-input{background:transparent;border:1px solid transparent;border-radius:6px;color:inherit;font:inherit;font-size:16px;text-align:center;min-width:var(--tap-min);width:64px;padding:2px 4px}@media (hover: hover){.do-step-input:hover{border-color:var(--line)}}.do-step-input:focus{outline:none;border-color:var(--accent);background:#ffffff0a}.do-step-input::placeholder{color:var(--muted);opacity:.7}.do-step-input--empty{border-style:dotted;border-color:var(--line)}.cv-slot-top.is-open{background:var(--surface3);border-radius:8px}.swp-modal{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;overflow:hidden}.swp-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line, rgba(255,255,255,.08))}.swp-title{font-size:15px;font-weight:700;color:var(--ink, var(--ink))}.swp-close{font-size:16px;color:var(--muted, var(--muted));padding:4px 8px;background:transparent;border:none}@media (hover: hover){.swp-close:hover{color:var(--ink, var(--ink))}}.swp-search{margin:12px 16px 8px;padding:10px 12px;border-radius:9px;font-size:16px;color:var(--ink, var(--ink));background:var(--surface2, var(--surface2));border:1px solid var(--line, rgba(255,255,255,.08))}.swp-search:focus{box-shadow:inset 0 0 0 1px var(--accent, var(--accent))}.swp-scope-toggle{margin:0 16px 8px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:600;text-align:left;color:var(--ink2, var(--ink2));background:var(--surface2, var(--surface2));border:1px solid var(--line, rgba(255,255,255,.08))}.swp-scope-toggle.on{color:var(--accent-ink, var(--accent-ink));border-color:var(--accent-soft, var(--accent-soft))}.swp-list{flex:1;overflow-y:auto;padding:0 8px 12px;display:flex;flex-direction:column;gap:2px}.swp-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 12px;border-radius:9px;color:var(--ink, var(--ink));font-size:14px;background:transparent;border:none}@media (hover: hover){.swp-item:hover{background:var(--surface2, var(--surface2))}}.swp-item:active{transform:scale(.99)}.swp-hex{flex-shrink:0;font-size:12px}.swp-name{flex:1;min-width:0}.swp-offpat{flex-shrink:0;font-size:10px;font-weight:700;color:var(--notice);padding:2px 6px;border-radius:6px;background:var(--notice-soft)}.swp-empty{padding:24px;text-align:center;font-size:13px;color:var(--muted, var(--muted))}.swp-sheet{width:100%;max-width:380px;padding:20px;display:flex;flex-direction:column;gap:10px;background:var(--surface, var(--surface));border:1px solid var(--line, rgba(255,255,255,.08));border-radius:16px}.swp-sheet-title{font-size:15px;font-weight:700;color:var(--ink, var(--ink))}.swp-sheet-sub{font-size:13px;color:var(--ink2, var(--ink2));margin-bottom:4px}.swp-sheet-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border-radius:10px;text-align:left;font-size:14px;font-weight:700;color:var(--ink, var(--ink));background:var(--surface2, var(--surface2));border:1px solid var(--line, rgba(255,255,255,.08))}.swp-sheet-btn span{font-size:11px;font-weight:500;color:var(--muted, var(--muted))}@media (hover: hover){.swp-sheet-btn:hover{border-color:var(--accent-soft, color-mix(in srgb, var(--accent) 30%, transparent))}}@media (hover: hover){.swp-sheet-btn--prog:hover{border-color:#5a8de866}}.swp-sheet-cancel{margin-top:4px;padding:8px;font-size:13px;font-weight:600;color:var(--muted, var(--muted));background:transparent;border:none}.swp-notice{position:fixed;bottom:calc(24px + var(--kbd-inset, 0px) + var(--safe-bottom-open));left:50%;transform:translate(-50%);z-index:9800;padding:10px 16px;border-radius:10px;font-size:13px;font-weight:600;color:var(--accent-on);background:var(--caution);box-shadow:0 8px 24px #0006;max-width:90vw;text-align:center}.swp-limits{margin:8px 0 4px;padding:8px 10px;border-radius:8px;background:var(--caution-soft);border:1px solid var(--caution-line);font-size:12px;line-height:1.45;color:var(--ink, var(--ink));overflow-wrap:anywhere}.swp-limits-who{color:var(--caution);font-weight:700}.swp-limits--loading,.swp-limits--never-asked,.swp-limits--answered-no{background:transparent;border-color:var(--line);color:var(--ink2, var(--ink2));font-style:italic}.la-box{padding:4px 18px 14px}.la-title{margin:0 0 6px;font-family:var(--heading);font-size:16px;font-weight:600;color:var(--ink);line-height:1.35}.la-detail{margin:0 0 4px;font-size:14px;line-height:1.5;color:var(--ink2)}.la-actions{display:flex;gap:10px;margin-top:14px}.la-actions button{flex:1;min-height:var(--tap-min);border-radius:var(--r2);font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:transform .16s var(--ease)}.la-actions button:active{transform:scale(.97)}.la-stay{background:var(--accent);color:var(--accent-on);border:none}.la-leave{background:transparent;color:var(--ink);border:1px solid var(--line2)}.hws{position:fixed;top:0;right:0;bottom:0;left:0;bottom:var(--kbd-inset,0px);z-index:200;display:flex;flex-direction:column;background:var(--bg)}.hws-topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line);flex-shrink:0}.hws-back{font-size:13px;font-weight:600;color:var(--muted);background:none;border:none;cursor:pointer;padding:6px 0;font-family:inherit;transition:color .12s}@media (hover: hover){.hws-back:hover{color:var(--ink)}}.hws-timer{display:flex;align-items:center;gap:8px}.hws-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:hws-pulse 1.2s ease infinite}.hws-dot--paused{background:var(--muted);animation:none}@keyframes hws-pulse{0%,to{opacity:1}50%{opacity:.4}}.hws-timer-val{font-family:var(--num);font-size:18px;font-weight:700;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.hws-pause{font-size:11px;color:var(--muted);background:none;border:none;cursor:pointer;padding:6px 8px;border-radius:6px;transition:color .12s,background .12s;min-width:var(--tap-min);min-height:var(--tap-min);display:flex;align-items:center;justify-content:center}@media (hover: hover){.hws-pause:hover{color:var(--ink);background:var(--surface2)}}.hws-body{flex:1;overflow-y:auto;padding:20px 20px 24px;max-width:600px;margin:0 auto;width:100%}.hws-title{font-family:var(--heading);font-size:18px;font-weight:700;color:var(--ink);letter-spacing:-.03em;margin:0 0 16px;line-height:1.3}.hws-coach-note{font-size:12.5px;color:var(--muted);font-style:italic;line-height:1.5;margin-bottom:14px;padding-left:10px;border-left:2px solid color-mix(in srgb,var(--accent) 30%,transparent)}.hws-content{padding:16px;border-radius:12px;background:var(--surface);border:1px solid transparent}.hws-bottom{flex-shrink:0;padding:16px 20px;padding-bottom:max(16px,var(--safe-bottom-open));border-top:1px solid var(--line);max-width:600px;margin:0 auto;width:100%}.hws-reflection{width:100%;padding:10px 12px;border-radius:10px;background:var(--surface);border:1px solid transparent;color:var(--ink);font-size:16px;font-family:inherit;line-height:1.5;resize:none;margin-bottom:10px;transition:border-color .12s}.hws-reflection::placeholder{color:var(--muted)}.hws-reflection:focus{outline:none;border-color:var(--accent)}.hws-complete{display:flex;align-items:center;justify-content:center;width:100%;padding:14px;border-radius:12px;font-size:14px;font-weight:700;font-family:var(--body);background:var(--accent);color:var(--accent-on);border:none;cursor:pointer;box-shadow:none;transition:filter .12s,transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.hws-complete:hover:not(:disabled){filter:brightness(1.08)}}.hws-complete:active:not(:disabled){transform:scale(.97)}.hws-complete:disabled{opacity:.6;cursor:default}.hws-exit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;align-items:center;justify-content:center;background:#0009}.hws-exit-modal{background:var(--surface);border:1px solid transparent;border-radius:16px;padding:24px;max-width:320px;width:90%;transform:scale(.95);opacity:0;animation:hws-modal-in .2s cubic-bezier(.23,1,.32,1) forwards}@keyframes hws-modal-in{to{transform:scale(1);opacity:1}}.hws-exit-msg{font-size:14px;font-weight:600;color:var(--ink);line-height:1.5;margin:0 0 20px;text-align:center}.hws-exit-actions{display:flex;gap:10px}.hws-exit-stay{flex:1;padding:12px;border-radius:10px;font-size:13px;font-weight:700;font-family:var(--body);background:var(--accent);color:var(--accent-on);border:none;cursor:pointer;transition:filter .12s,transform .16s cubic-bezier(.23,1,.32,1)}.hws-exit-stay:active{transform:scale(.97)}.hws-exit-leave{flex:1;padding:12px;border-radius:10px;font-size:13px;font-weight:700;font-family:var(--body);background:var(--surface2);color:var(--muted);border:1px solid transparent;cursor:pointer;transition:color .12s,transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.hws-exit-leave:hover{color:var(--ink)}}.hws-exit-leave:active{transform:scale(.97)}.card-row,.card-panel,.card-stat{background:var(--surface);border:1px solid transparent;border-radius:12px;min-width:0}.card-hero{background-color:var(--hero);background-image:var(--glow-hero);box-shadow:var(--card-edge)}.card-row,.card-panel,.card-stat{box-shadow:var(--card-edge)}.card-row{display:block;width:100%;padding:12px;text-align:left;color:var(--ink);font-family:inherit;font-size:inherit}.card-row--tappable{min-height:var(--tap-min);min-width:var(--tap-min);cursor:pointer;transition:border-color .12s ease-out,background .12s ease-out}@media (hover: hover){.card-row--tappable:hover{border-color:var(--line2)}}.card-row--tappable:active{transform:scale(.995)}.card-row--disabled{opacity:.55;cursor:not-allowed}@media (hover: hover){.card-row--disabled:hover{border-color:var(--line)}}.card-header{display:flex;align-items:center;gap:10px;min-width:0}.card-leading,.card-trailing{flex:0 0 auto;display:flex;align-items:center}.card-trailing{margin-left:auto}.card-text{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:2px}.card-title{font-size:15px;font-weight:600;color:var(--ink);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-meta{font-size:12px;color:var(--muted);line-height:1.4;min-width:0;overflow-wrap:anywhere}.card-panel{display:block;padding:14px}.card-panel-title{margin:0;font-family:var(--heading);font-size:15px;font-weight:700;color:var(--ink);min-width:0;overflow-wrap:anywhere}.card-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px}.card-stat-value{font-family:var(--num);font-size:22px;font-weight:700;color:var(--ink);line-height:1.1;font-variant-numeric:tabular-nums}.card-stat-label{font-size:11px;color:var(--muted);line-height:1.3;min-width:0;overflow-wrap:anywhere}.card-row--caution,.card-panel--caution{border-color:var(--caution-line);border-left:3px solid var(--caution)}.card-row--danger,.card-panel--danger{border-color:color-mix(in srgb,var(--danger) 34%,transparent);border-left:3px solid var(--danger)}@media (hover: hover){.card-row--caution.card-row--tappable:hover{border-left-color:var(--caution)}}@media (hover: hover){.card-row--danger.card-row--tappable:hover{border-left-color:var(--danger)}}.card-empty{font-size:12px;color:var(--muted);line-height:1.5;padding:2px 0;overflow-wrap:anywhere}.fl{max-width:600px;margin:0 auto;padding:0 4px}.fl-sub-tabs{display:flex;gap:4px;margin-bottom:20px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:12px;padding:4px}.fl-sub-tab{flex:1;padding:10px 8px;border:none;border-radius:9px;background:none;color:var(--nt-muted);font-family:var(--body);font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:all .15s ease}.fl-sub-tab.on{background:var(--nt-warm);color:var(--warm-on)}.fl-sub-tab:active{transform:scale(.97)}.fl-rings{display:flex;justify-content:space-between;gap:6px;margin-bottom:28px;padding:20px 12px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:16px}.fl-ring{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.fl-ring-wrap{position:relative;width:72px;height:72px}.fl-ring-svg{display:block}.fl-ring-fill{transition:stroke-dashoffset .4s cubic-bezier(.23,1,.32,1)}.fl-ring-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.fl-ring-val{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700;color:var(--ink);line-height:1.1}.fl-ring-label{font-size:12px;font-weight:600;color:var(--nt-muted)}.fl-ring-target{font-size:10.5px;font-weight:600;color:var(--nt-muted);font-family:var(--body);text-align:center;white-space:nowrap}@media (max-width:380px){.fl-rings{gap:2px;padding:16px 8px}.fl-ring-wrap{width:60px;height:60px}.fl-ring-val{font-size:13px}.fl-ring-target{font-size:9.5px}}.fl-section{margin-bottom:24px}.fl-section-title{font-family:var(--heading);font-size:12px;font-weight:700;color:var(--nt-muted);margin-bottom:10px}.fl-plan-meals{display:flex;flex-direction:column;gap:8px}.fl-plan-meal{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:12px;cursor:pointer;text-align:left;font-family:inherit;transition:transform .16s cubic-bezier(.23,1,.32,1),border-color .15s ease}.fl-plan-meal:active:not(:disabled){transform:scale(.98)}@media (hover: hover){.fl-plan-meal:hover:not(:disabled){border-color:color-mix(in srgb,var(--warm) 30%,transparent)}}.fl-plan-meal--logged{opacity:.5;cursor:default;border-color:var(--nt-border)}@media (hover: hover){.fl-plan-meal--logged:hover{border-color:var(--nt-border)}}.fl-plan-meal-top{display:flex;align-items:center;justify-content:space-between}.fl-plan-meal-slot{font-size:12px;font-weight:700;color:var(--nt-muted)}.fl-plan-meal-check{font-size:13px;color:var(--nt-warm);font-weight:700}.fl-plan-meal-name{font-family:var(--heading);font-size:14px;font-weight:600;color:var(--ink);line-height:1.3}.fl-plan-meal-macros{font-size:11.5px;font-weight:600;color:var(--nt-muted);font-family:var(--num);font-variant-numeric:tabular-nums}.fl-plan-meal-sep{margin:0 2px}.fl-add-btn{width:100%;padding:12px;border:1px dashed var(--nt-border);border-radius:12px;background:none;color:var(--nt-muted);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;text-align:center;transition:border-color .15s ease,color .15s ease}@media (hover: hover){.fl-add-btn:hover{border-color:var(--nt-warm);color:var(--nt-warm)}}.fl-add-btn:active{transform:scale(.98)}.fl-custom{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:14px;padding:16px}.fl-custom-title{font-family:var(--heading);font-size:13px;font-weight:700;color:var(--ink);margin-bottom:12px}.fl-input{width:100%;background:var(--nt-card-bg2);border:1px solid var(--nt-border);border-radius:10px;padding:10px 12px;color:var(--ink);font-family:inherit;font-size:16px;font-weight:500;outline:none;transition:border-color .15s ease;margin-bottom:10px;box-sizing:border-box}.fl-input:focus{border-color:var(--accent)}.fl-input::placeholder{color:var(--nt-muted)}.fl-input--num{font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:600;text-align:center;padding:8px 6px;margin-bottom:0}.fl-custom-macros{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.fl-custom-field{display:flex;flex-direction:column;gap:4px}.fl-custom-label{font-size:12px;font-weight:700;color:var(--nt-muted);text-align:center}.fl-custom-actions{display:flex;gap:8px}.fl-custom-save{flex:1;padding:11px;border:none;border-radius:10px;background:var(--accent);color:var(--accent-on);font-family:var(--body);font-size:14px;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.fl-custom-save:active{transform:scale(.97)}.fl-custom-save:disabled{opacity:.5;cursor:not-allowed;transform:none}.fl-custom-cancel{padding:11px 16px;border:1px solid var(--nt-border);border-radius:10px;background:none;color:var(--nt-muted);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s ease}@media (hover: hover){.fl-custom-cancel:hover{border-color:var(--ink2);color:var(--ink2)}}.fl-log-list{display:flex;flex-direction:column;gap:6px}.fl-log-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:12px}.fl-log-info{flex:1;min-width:0}.fl-log-name{font-size:13.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fl-log-source{font-size:12px;font-weight:700;padding:2px 6px;border-radius:4px}.fl-log-source--plan{color:var(--nt-warm);background:var(--nt-warm-soft)}.fl-log-source--custom{color:#818cf8;background:#818cf81a}.fl-log-macros{font-size:11.5px;font-weight:500;color:var(--nt-muted);font-family:var(--num);font-variant-numeric:tabular-nums;margin-top:2px}.fl-log-delete{background:none;border:none;color:var(--nt-muted);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:8px;line-height:1;transition:color .12s ease,background .12s ease;min-width:var(--tap-min);min-height:var(--tap-min);display:flex;align-items:center;justify-content:center}@media (hover: hover){.fl-log-delete:hover{color:var(--danger);background:#ef444414}}.fl-log-delete:disabled{opacity:.4;cursor:default}.fl-missing{font-size:12px;font-weight:500;color:var(--nt-muted);text-align:center;margin:0 0 10px}:root{--nt-warm:var(--warm);--nt-warm-soft:var(--warm-soft);--nt-warm-ink:#F8C896;--nt-wrapper-bg:var(--bg);--nt-card-bg:var(--surface);--nt-card-bg2:var(--surface2);--nt-border:color-mix(in srgb, var(--warm) 10%, transparent);--nt-border-inner:color-mix(in srgb, var(--warm) 6%, transparent);--nt-muted:var(--muted);--nt-radius:20px;--nt-pad:20px}.nt{max-width:600px;margin:0 auto;padding:0 4px}.nt-section{margin-bottom:28px}.nt-section-title{font-family:var(--heading);font-size:13px;font-weight:700;color:var(--ink);margin:0 0 14px}.nt-plan-settings{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nt-plan-settings-row{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;min-width:var(--tap-min);padding:10px 2px;border:none;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.nt-plan-settings-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.nt-plan-settings-title{font:700 15px var(--body)}.nt-plan-settings-sub{font-size:13px;color:var(--ink2);overflow-wrap:anywhere}.nt-plan-settings-chev{color:var(--muted);font-size:20px;line-height:1;transition:transform .16s cubic-bezier(.23,1,.32,1)}.nt-plan-settings-row[aria-expanded=true] .nt-plan-settings-chev{transform:rotate(90deg)}.nt-plan-settings-body{padding-top:12px}.nt-macros{display:grid;grid-template-columns:1fr 1fr;gap:10px}.nt-field{display:flex;flex-direction:column;gap:4px}.nt-label{font-size:12px;font-weight:600;color:var(--nt-muted)}.nt-input{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:10px;padding:10px 12px;color:var(--ink);font-family:var(--body);font-size:16px;font-weight:600;width:100%;outline:none;transition:border-color .15s ease}.nt-input:focus{border-color:var(--accent)}.nt-input::placeholder{color:var(--nt-muted);font-weight:400}.nt-unit{font-size:11px;color:var(--nt-muted);font-weight:500;margin-top:-2px}.nt-field--computed{grid-column:1/-1;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:12px;padding:12px 14px;gap:6px}.nt-label-row{display:flex;align-items:center;gap:8px}.nt-computed-badge{font-size:12px;font-weight:700;color:var(--nt-warm);background:var(--nt-warm-soft);padding:2px 7px;border-radius:6px}.nt-computed-value{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;color:var(--ink);line-height:1.2;letter-spacing:-.01em}.nt-computed-unit{font-size:14px;font-weight:600;color:var(--nt-muted);margin-left:4px}.nt-macro-split{font-size:11.5px;font-weight:600;color:var(--nt-muted);font-family:var(--num);font-variant-numeric:tabular-nums;letter-spacing:.01em}.nt-slots{display:flex;flex-direction:column;gap:8px}.nt-slot-row{display:flex;align-items:center;gap:10px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:10px;padding:8px 12px}.nt-slot-name{font-size:13px;font-weight:600;color:var(--ink);min-width:80px;font-family:var(--heading)}.nt-cuisine-select{flex:1;background:var(--nt-card-bg2);border:1px solid var(--nt-border);border-radius:8px;padding:7px 26px 7px 10px;color:var(--ink);font-size:16px;font-weight:500;font-family:inherit;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236b7280'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s ease}.nt-cuisine-select:focus{border-color:var(--accent)}.nt-slot-remove{background:none;border:none;color:var(--nt-muted);font-size:16px;cursor:pointer;padding:4px 6px;border-radius:6px;transition:color .12s ease}@media (hover: hover){.nt-slot-remove:hover{color:var(--danger)}}.nt-slot-quick{flex:none;min-width:var(--tap-min);min-height:var(--tap-min);padding:0 12px;border-radius:8px;border:1px solid var(--nt-border);background:none;color:var(--nt-muted);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:color .12s ease,border-color .12s ease,background-color .12s ease}.nt-slot-quick.on{color:var(--ink);background:var(--nt-warm-soft);border-color:var(--nt-warm)}.nt-slot-quick:active{transform:scale(.97)}.nt-slot-hint{margin:2px 2px 0;font-size:12px;color:var(--nt-muted);line-height:1.4}@media (max-width:480px){.nt-slot-row{flex-wrap:wrap;row-gap:8px}.nt-slot-name{flex:1}.nt-cuisine-select{order:3;flex:1 0 100%}}.nt-add-slot{background:none;border:1px dashed var(--nt-border);border-radius:10px;padding:10px;color:var(--nt-muted);font-size:12.5px;font-weight:500;cursor:pointer;width:100%;text-align:center;transition:border-color .15s ease,color .15s ease}@media (hover: hover){.nt-add-slot:hover{border-color:var(--nt-warm);color:var(--nt-warm)}}.nt-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.nt-chip{display:inline-flex;align-items:center;gap:4px;background:var(--nt-card-bg2);border:1px solid var(--nt-border);border-radius:20px;padding:5px 10px;font-size:12px;font-weight:500;color:var(--ink)}.nt-chip-x{background:none;border:none;color:var(--nt-muted);cursor:pointer;font-size:14px;padding:0 2px;line-height:1}@media (hover: hover){.nt-chip-x:hover{color:var(--danger)}}.nt-chip-input{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:10px;padding:8px 12px;color:var(--ink);font-size:16px;width:100%;outline:none;font-family:inherit;transition:border-color .15s ease}.nt-chip-input:focus{border-color:var(--accent)}.nt-toggle-row{display:flex;gap:6px}.nt-toggle-btn{flex:1;padding:9px 8px;border-radius:10px;border:1px solid var(--nt-border);background:var(--nt-card-bg);color:var(--nt-muted);font-size:12.5px;font-weight:600;cursor:pointer;text-align:center;transition:all .15s ease;font-family:var(--body)}.nt-toggle-btn.on{background:var(--nt-warm);color:var(--warm-on);border-color:var(--nt-warm)}.nt-toggle-btn:active{transform:scale(.97)}.nt-generate{width:100%;padding:14px;border:none;border-radius:12px;background:var(--accent);color:var(--accent-on);font-family:var(--body);font-size:15px;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),opacity .15s ease;margin-top:8px}.nt-generate:active{transform:scale(.97)}.nt-generate:disabled{opacity:.5;cursor:not-allowed;transform:none}.nt-generate--secondary{background:transparent;color:var(--nt-warm);border:1px solid var(--nt-border)}.nt-plan-regen{margin-top:24px;padding-top:16px;border-top:1px solid var(--nt-border)}.nt-gen-confirm{margin-top:24px;padding:16px;border-radius:14px;background:var(--nt-card-bg);border:1px solid var(--nt-border)}.nt-gen-confirm-text{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--ink)}.nt-gen-confirm-actions{display:flex;gap:10px}.nt-gen-confirm .nt-generate{flex:1;margin-top:0}.nt-gen-cancel{flex-shrink:0;min-height:44px;padding:0 18px;border-radius:12px;background:transparent;border:1px solid var(--nt-border);color:var(--nt-muted);font-family:var(--body);font-size:14px;font-weight:600;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.nt-gen-cancel:active{transform:scale(.97)}.nt-cq{margin-top:16px;padding:16px;border-radius:14px;background:var(--nt-card-bg);border:1px solid var(--nt-border);display:flex;flex-direction:column;gap:10px}.nt-cq-q{margin:0 0 2px;font-size:15px;font-weight:700;color:var(--ink);font-family:var(--body)}.nt-cq-opt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:44px;padding:12px 14px;border-radius:10px;text-align:left;font-size:14px;font-weight:700;font-family:inherit;color:var(--ink);background:var(--nt-card-bg2);border:1px solid var(--nt-border);cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),border-color .15s ease}.nt-cq-opt span{font-size:11px;font-weight:500;color:var(--nt-muted)}@media (hover: hover){.nt-cq-opt:hover{border-color:var(--nt-warm)}}.nt-cq-opt:active{transform:scale(.98)}.nt-cq-quick{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--tap-min);padding:10px 14px;border-radius:10px;text-align:left;background:none;border:1px solid var(--nt-border);color:var(--ink);font-family:inherit;cursor:pointer}.nt-cq-quick-text{display:flex;flex-direction:column;gap:2px;font-size:14px;font-weight:600}.nt-cq-quick-text span{font-size:11px;font-weight:500;color:var(--nt-muted)}.nt-cq-quick-knob{flex:none;position:relative;width:40px;height:24px;border-radius:12px;background:var(--nt-card-bg2);border:1px solid var(--nt-border);transition:background-color .15s ease,border-color .15s ease}.nt-cq-quick-knob:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--nt-muted);transition:transform .16s cubic-bezier(.23,1,.32,1),background-color .15s ease}.nt-cq-quick.on{border-color:var(--nt-warm)}.nt-cq-quick.on .nt-cq-quick-knob{background:var(--nt-warm-soft);border-color:var(--nt-warm)}.nt-cq-quick.on .nt-cq-quick-knob:after{transform:translate(16px);background:var(--nt-warm)}@media (prefers-reduced-motion:reduce){.nt-cq-quick-knob:after{transition:none}}.nt-cq-slots{display:flex;flex-wrap:wrap;gap:8px}.nt-cq-slot{min-height:44px;padding:0 16px;border-radius:10px;font-size:13px;font-weight:700;color:var(--nt-muted);background:var(--nt-card-bg2);border:1px solid var(--nt-border);cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),color .15s ease,border-color .15s ease,background .15s ease}.nt-cq-slot.on{color:var(--accent-on);background:var(--nt-warm);border-color:var(--nt-warm)}.nt-cq-slot:active{transform:scale(.97)}.nt-cq-hint{margin:0;font-size:11.5px;color:var(--nt-muted)}.nt-cq-next{min-height:44px;padding:0 18px;border-radius:12px;background:var(--accent);color:var(--accent-on);font-family:var(--body);font-size:14px;font-weight:800;border:none;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),opacity .15s ease}.nt-cq-next:disabled{opacity:.4;cursor:not-allowed}.nt-cq-next:active{transform:scale(.97)}.nt-cq-cancel{min-height:var(--tap-min);padding:0 12px;font-size:13px;font-weight:600;color:var(--nt-muted);background:transparent;border:none;cursor:pointer}.nt-gen-progress{margin-top:10px;height:5px;border-radius:3px;background:var(--nt-card-bg2);overflow:hidden}.nt-gen-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s cubic-bezier(.23,1,.32,1)}.nt-progress{display:flex;flex-direction:column;gap:10px;padding:20px 0}.nt-progress-title{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;color:var(--ink);text-align:center}.nt-progress-days{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.nt-progress-day{display:flex;flex-direction:column;align-items:center;gap:4px}.nt-progress-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s cubic-bezier(.23,1,.32,1)}.nt-progress-dot--pending{background:var(--nt-card-bg2);border:2px solid var(--nt-border);color:var(--nt-muted)}.nt-progress-dot--active{background:var(--nt-card-bg2);border:2px solid var(--nt-warm);color:var(--nt-warm);animation:nt-pulse 1.2s ease-in-out infinite}.nt-progress-dot--done{background:var(--nt-warm);border:2px solid var(--nt-warm);color:var(--warm-on)}.nt-progress-day-label{font-size:10px;color:var(--nt-muted);font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums}.nt-progress-dot--failed{background:var(--notice-soft);border:2px solid var(--notice-line);color:var(--notice)}.nt-progress-note{margin:12px 0 0;font-size:12px;color:var(--nt-muted);text-align:center}@keyframes nt-pulse{0%,to{opacity:1}50%{opacity:.5}}.nt-status{text-align:center;font-size:12.5px;color:var(--nt-muted);font-weight:500;padding:6px 0}.nt-day{margin-bottom:32px}.nt-day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--nt-border)}.nt-day-name{font-family:var(--heading);font-size:16px;font-weight:700;color:var(--ink)}.nt-day-macros{display:flex;gap:8px}.nt-day-macro{font-size:11px;font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums}.nt-day-macro--cal{color:var(--ink)}.nt-day-macro--pro,.nt-day-macro--ok{color:var(--nt-warm)}.nt-day-macro--off{color:var(--danger)}.nt-day-macro--plain{color:var(--nt-muted);font-weight:500}.nt-day-macros{flex-wrap:wrap;justify-content:flex-end;row-gap:2px}.nt-day-failed{padding:18px 0 6px}.nt-day-failed .nt-generate{min-height:44px}.nt-day-pill--failed span{color:var(--nt-muted)}.nt-day-nav{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 12px;margin-bottom:4px;scrollbar-width:none}.nt-day-nav::-webkit-scrollbar{display:none}.nt-day-pill{flex-shrink:0;min-height:44px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border-radius:11px;font-family:var(--body);font-size:13px;font-weight:700;color:var(--nt-muted);background:var(--nt-card-bg);border:1px solid var(--nt-border);cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),color .15s ease,border-color .15s ease,background .15s ease}.nt-day-pill:active{transform:scale(.97)}.nt-day-pill.on{color:var(--ink);background:var(--nt-warm-soft);border-color:var(--nt-warm)}.nt-day-pill-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.nt-day-pill-dot--ok{background:var(--accent)}.nt-day-pill-dot--off{background:var(--nt-warm)}.nt-day-fade{animation:nt-day-in .16s cubic-bezier(.23,1,.32,1)}@keyframes nt-day-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.nt-day-fade{animation:none}}.nt-recipe{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:var(--nt-radius);margin-bottom:10px;overflow:hidden;box-shadow:none;transition:transform .16s cubic-bezier(.23,1,.32,1)}.mi-banner{position:relative;width:100%;aspect-ratio:3/1;overflow:hidden;background:var(--nt-card-bg2)}.mi-banner>img{width:100%;height:100%;object-fit:cover;display:block}.mi-scrim{position:absolute;left:0;right:0;bottom:0;height:52%;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.5),transparent)}.mi-attr{position:absolute;right:8px;bottom:8px;font-size:9.5px;font-weight:600;color:#ffffffeb;background:#00000057;padding:3px 8px;border-radius:7px;display:inline-flex;gap:5px;align-items:center;max-width:82%}.mi-skeleton{width:100%;aspect-ratio:3/1;background:var(--nt-card-bg2);background-size:220% 100%;animation:mi-shim 1.3s ease-in-out infinite}@keyframes mi-shim{0%{background-position:220% 0}to{background-position:-220% 0}}@media (prefers-reduced-motion:reduce){.mi-skeleton{animation:none}}.nt-recipe-header{display:flex;align-items:center;gap:4px;padding-right:6px}.nt-recipe-toggle{flex:1 1 auto;min-width:var(--tap-min);min-height:var(--tap-min);display:flex;align-items:center;gap:10px;padding:12px var(--nt-pad);background:none;border:none;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.nt-recipe-toggle:active{transform:scale(.98)}.nt-recipe-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--nt-radius)}.nt-recipe-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere}.nt-recipe-slot{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--nt-muted)}.nt-recipe-name{font-family:var(--heading);font-size:16px;font-weight:700;color:var(--ink);line-height:1.3;letter-spacing:-.015em}.nt-recipe-subtitle{font-size:13px;font-weight:400;color:var(--nt-muted);line-height:1.4;margin:10px 0 0}.nt-recipe-cuisine{font-weight:600;color:var(--nt-warm)}.nt-recipe-quick{display:inline-flex;align-items:center;font-size:11px;font-weight:600;color:var(--nt-muted);border:1px solid var(--nt-border);padding:1px 8px;border-radius:12px}.nt-recipe-macros{font-size:12.5px;font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums;color:var(--nt-muted)}.nt-recipe-macro--cal{color:var(--ink)}.nt-recipe-macro--pro{color:var(--nt-warm)}.nt-save-btn{background:none;border:1px solid var(--line);border-radius:10px;margin-top:14px;color:var(--ink2);font:600 13px var(--body);min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1),color .15s ease,border-color .15s ease}.nt-save-btn:active{transform:scale(.95)}@media (hover: hover){.nt-save-btn:hover{border-color:var(--accent);color:var(--accent)}}.nt-save-btn.saved{border-color:var(--accent);color:var(--accent);cursor:default}.nt-save-btn:disabled{opacity:.6;cursor:default;transform:none}.nt-recipe-chevron{color:var(--muted);font-size:12px;padding-top:4px;transition:transform .2s cubic-bezier(.23,1,.32,1)}.nt-recipe-chevron.open{transform:rotate(90deg)}.nt-recipe-details{border-top:1px solid var(--nt-border-inner);animation:nt-day-in .16s cubic-bezier(.23,1,.32,1)}@media (prefers-reduced-motion:reduce){.nt-recipe-details{animation:none}}.nt-recipe-body{padding:0 var(--nt-pad) var(--nt-pad)}.nt-recipe-time{display:flex;gap:12px;padding:10px 0;font-size:11.5px;color:var(--muted);font-weight:500}.nt-recipe-sub{font-size:12px;font-weight:700;color:var(--muted);margin:12px 0 6px}.nt-ingredients{list-style:none;padding:0;margin:0}.nt-ingredient{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--nt-border-inner);font-size:13px}.nt-ingredient:last-child{border-bottom:none}.nt-ing-name{color:var(--ink);font-weight:500}.nt-ing-grams{color:var(--muted);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:600;font-size:12px}.nt-steps{list-style:none;padding:0;margin:0;counter-reset:step}.nt-step{position:relative;padding:6px 0 6px 28px;font-size:13px;color:var(--ink2);line-height:1.5}.nt-step:before{counter-increment:step;content:counter(step);position:absolute;left:0;width:20px;height:20px;border-radius:50%;background:var(--nt-card-bg2);color:var(--nt-muted);font-size:11px;font-weight:700;font-family:var(--body);display:flex;align-items:center;justify-content:center;top:6px}.nt-macro-pill{font-size:11px;font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums;background:var(--nt-card-bg2);padding:4px 8px;border-radius:6px;color:var(--nt-muted)}.nt-macro-pill--pro{color:var(--nt-warm)}.nt-warm-wrap{background:var(--nt-wrapper-bg);border-radius:20px;padding:16px 12px 8px}.nt-slot-icon{font-size:12px;line-height:1;flex-shrink:0}.nt-cuisine-icon{font-size:11px;line-height:1;flex-shrink:0}.nt-recipe .nt-recipe-sub,.nt-recipe .nt-recipe-time,.nt-recipe .nt-ing-grams{color:var(--nt-muted)}.nt-recipe .nt-step{color:#b8ada0}.nt-shopping{margin:0}.nt-shopping-header{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;cursor:pointer;padding:10px 0;background:none;border:none;border-bottom:1px solid var(--nt-border);font:inherit;color:inherit;text-align:left}.nt-shopping-title{font-family:var(--heading);font-size:15px;font-weight:700;color:var(--ink)}.nt-shopping-count{font-size:12px;font-weight:600;color:var(--nt-muted);font-family:var(--num);font-variant-numeric:tabular-nums}.nt-shopping-chevron{color:var(--nt-muted);font-size:14px;transition:transform .2s cubic-bezier(.23,1,.32,1)}.nt-shopping-chevron.open{transform:rotate(90deg)}.nt-shopping-body{animation:nt-day-in .16s cubic-bezier(.23,1,.32,1)}@media (prefers-reduced-motion:reduce){.nt-shopping-body{animation:none}}.nt-shop-section{margin:12px 0}.nt-shop-section-name{font-size:12px;font-weight:700;color:var(--nt-warm);margin-bottom:6px}.nt-shop-items{list-style:none;padding:0;margin:0}.nt-shop-item{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--nt-border-inner);font-size:13px}.nt-shop-item:last-child{border-bottom:none}.nt-shop-item-name{color:var(--ink);font-weight:500;text-transform:capitalize}.nt-shop-item-qty{color:var(--nt-muted);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:600;font-size:12px}.nt-plan-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.nt-plan-date{font-size:12px;color:var(--nt-muted);font-weight:500}.nt-phone-note{margin:0 0 12px;font-size:13px;color:var(--ink2)}.nt-phone-intake{margin:0 0 12px;font-size:14px;color:var(--ink)}.nt-phone-targets{margin:0 0 14px}.nt-phone-targets-line{margin:6px 0 0;font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums}.nt-plan-actions{display:flex;gap:8px}.nt-plan-action{background:none;border:1px solid var(--nt-border);border-radius:8px;padding:6px 12px;color:var(--ink2);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .12s ease}@media (hover: hover){.nt-plan-action:hover{border-color:var(--accent);color:var(--accent)}}@media (hover: hover){.nt-plan-action--danger:hover{border-color:var(--danger);color:var(--danger)}}.nt-empty{text-align:center;padding:40px 20px;color:var(--nt-muted)}.nt-empty-icon{font-size:36px;margin-bottom:12px}.nt-empty-text{font-size:14px;font-weight:500;margin-bottom:4px;color:var(--ink2)}.nt-empty-sub{font-size:12.5px}.nt-divider{height:1px;background:var(--nt-border);margin:20px 0}.nt-intake-options{display:flex;flex-direction:column;gap:6px}.nt-intake-option{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:10px;padding:12px 14px;color:var(--ink2);font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:all .15s ease;font-family:inherit}.nt-intake-option.on{background:color-mix(in srgb,var(--warm) 8%,transparent);border-color:var(--nt-warm);color:var(--ink)}.nt-intake-option:active{transform:scale(.98)}.nt-intake-pending{text-align:center;padding:32px 20px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:14px}.nt-intake-pending-icon{width:48px;height:48px;border-radius:50%;background:var(--nt-warm-soft);color:var(--nt-warm);display:inline-flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;margin-bottom:12px}.nt-intake-pending-title{font-family:var(--heading);font-size:16px;font-weight:700;color:var(--ink);margin-bottom:6px}.nt-intake-pending-sub{font-size:13px;color:var(--nt-muted);margin-bottom:16px}.nt-intake-summary{display:flex;flex-direction:column;gap:6px;text-align:center}.nt-intake-row{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.nt-intake-label{font-size:12.5px;font-weight:500;color:var(--ink2)}.nt-intake-sep{color:var(--nt-muted);font-size:10px}.nt-review-card{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:14px;padding:16px}.nt-review-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--caution);background:color-mix(in srgb,var(--caution) 10%,transparent);padding:3px 10px;border-radius:6px;margin-bottom:12px}.nt-review-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.nt-review-stat{display:flex;flex-direction:column;gap:2px}.nt-review-stat-label{font-size:12px;font-weight:600;color:var(--nt-muted)}.nt-review-stat-val{font-size:14px;font-weight:600;color:var(--ink);font-family:var(--num);font-variant-numeric:tabular-nums}.nt-review-calc{background:color-mix(in srgb,var(--warm) 5%,transparent);border:1px solid color-mix(in srgb,var(--warm) 57%,transparent);border-radius:10px;padding:12px 14px;margin-bottom:14px}.nt-review-calc-title{font-size:12px;font-weight:700;color:var(--nt-warm);margin-bottom:8px}.nt-review-calc-row{display:flex;justify-content:space-between;padding:3px 0;font-size:13px}.nt-review-calc-label{color:var(--ink2);font-weight:500}.nt-review-calc-val{color:var(--ink);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:600}.nt-review-overrides{margin-bottom:14px}.nt-review-overrides-title{font-size:12px;font-weight:700;color:var(--nt-muted);margin-bottom:8px}.nt-review-override-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.nt-review-override-label{font-size:12.5px;color:var(--ink2);font-weight:500;flex:1}.nt-review-override-input{width:70px;background:var(--nt-card-bg2);border:1px solid var(--nt-border);border-radius:8px;padding:6px 10px;color:var(--ink);font-family:var(--body);font-size:16px;font-weight:600;text-align:right;outline:none;transition:border-color .15s ease}.nt-review-override-input:focus{border-color:var(--accent)}.nt-review-override-unit{font-size:11px;color:var(--nt-muted);font-weight:500;width:28px}.nt-review-actions{display:flex;gap:8px}.nt-review-approve{flex:1;padding:12px;border:none;border-radius:10px;background:var(--accent);color:var(--accent-on);font-family:var(--body);font-size:14px;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.nt-review-approve:active{transform:scale(.97)}.nt-review-manual{padding:12px 16px;border:1px solid var(--nt-border);border-radius:10px;background:none;color:var(--ink2);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s ease}@media (hover: hover){.nt-review-manual:hover{border-color:var(--accent);color:var(--accent)}}.nt-review-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;background:color-mix(in srgb,var(--caution) 8%,transparent);border:1px solid color-mix(in srgb,var(--caution) 20%,transparent);border-radius:10px;font-size:12.5px;font-weight:600;color:var(--caution);cursor:pointer;margin-bottom:16px;transition:background .15s ease}@media (hover: hover){.nt-review-banner:hover{background:var(--caution-soft)}}.nt-review-banner-dot{width:8px;height:8px;border-radius:50%;background:var(--caution);flex-shrink:0;animation:nt-pulse 1.2s ease-in-out infinite}.nt-settings-toggle{background:none;border:none;color:var(--nt-muted);cursor:pointer;font-size:14px;padding:2px 6px;margin-left:8px;transition:color .15s ease}@media (hover: hover){.nt-settings-toggle:hover{color:var(--accent)}}.nt-settings-panel{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:12px;padding:14px;margin-top:10px;display:flex;flex-direction:column;gap:10px}.nt-settings-title{font-size:12px;font-weight:700;color:var(--nt-muted)}.nt-adherence-unset{font-size:12px;font-weight:500;color:var(--nt-muted);margin:2px 0 8px}.nt-adherence-summary{font-size:11px;font-weight:600;color:var(--nt-warm);margin-left:8px;text-transform:none;letter-spacing:0}.nt-adherence{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}@media (max-width:480px){.nt-adherence{grid-template-columns:repeat(4,1fr)}}.nt-adherence-day{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:10px;text-align:center;position:relative}.nt-adherence-day--empty{opacity:.45}.nt-adherence-label{font-size:12px;font-weight:700;color:var(--nt-muted)}.nt-adherence-val{font-family:var(--num);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700;color:var(--ink)}.nt-adherence-val--ok{color:var(--accent)}.nt-adherence-target{font-size:10px;font-weight:500;color:var(--nt-muted)}.nt-adherence-pro{font-size:10.5px;font-weight:600;font-family:var(--body);color:var(--nt-muted)}.nt-adherence-pro--ok{color:var(--accent)}.nt-adherence-check{position:absolute;top:4px;right:4px;font-size:10px;color:var(--accent)}.nt-adherence-empty{font-size:14px;color:var(--nt-muted);font-weight:500;padding:4px 0}.wl-entry-card{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:14px;padding:12px 16px;margin-bottom:16px}.wl-entry-row{display:flex;align-items:center;gap:8px}.wl-entry-input{flex:1;max-width:120px;padding:10px 12px;border-radius:10px;background:var(--nt-card-bg2);border:1px solid var(--nt-border);color:var(--ink);font-size:16px;font-family:var(--body);font-weight:600;transition:border-color .12s}.wl-entry-input:focus{outline:none;border-color:var(--nt-warm)}.wl-entry-input::placeholder{color:var(--nt-muted);font-weight:400}.wl-entry-unit{font-size:13px;font-weight:600;color:var(--nt-muted);min-width:24px}.wl-entry-btn{padding:10px 18px;border-radius:10px;background:var(--nt-warm);color:var(--bg);font-size:14px;font-weight:700;border:none;cursor:pointer;font-family:inherit;min-width:56px;transition:transform .16s cubic-bezier(.23,1,.32,1),filter .12s}@media (hover: hover){.wl-entry-btn:hover:not(:disabled){filter:brightness(1.1)}}.wl-entry-btn:active:not(:disabled){transform:scale(.97)}.wl-entry-btn:disabled{opacity:.4;cursor:not-allowed}.wl-entry-last{margin-top:8px;font-size:12px;color:var(--nt-muted);font-family:var(--body)}.wl-trend{margin-bottom:28px}.wl-trend-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.wl-trend-title{font-family:var(--heading);font-size:13px;font-weight:700;color:var(--ink)}.wl-trend-stat{font-size:12px;font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums;padding:4px 10px;border-radius:8px}.wl-trend-stat--up,.wl-trend-stat--down{background:var(--warm-soft);color:var(--warm)}.wl-trend-stat--flat{background:#6b72801f;color:var(--muted)}.wl-trend-chart{background:var(--nt-card-bg);border:1px solid var(--nt-border);border-radius:14px;padding:16px;position:relative;height:160px}.wl-trend-svg{width:100%;height:100%}.wl-trend-line{fill:none;stroke:var(--nt-warm);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.wl-trend-avg{fill:none;stroke:color-mix(in srgb,var(--warm) 35%,transparent);stroke-width:1.5;stroke-dasharray:4 3;stroke-linecap:round}.wl-trend-dot{fill:var(--nt-warm)}.wl-trend-labels{display:flex;justify-content:space-between;margin-top:8px}.wl-trend-label{font-size:10px;color:var(--nt-muted);font-family:var(--body)}.wl-trend-legend{display:flex;gap:16px;margin-top:8px}.wl-trend-legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--nt-muted)}.wl-trend-legend-line{width:16px;height:2px;border-radius:1px}.wl-coach-log{margin-top:12px}.wl-coach-log-row{display:flex;align-items:center;gap:8px}.wl-coach-log-input{flex:1;max-width:120px;padding:8px 12px;border-radius:8px;background:var(--surface2,#1A1D24);border:1px solid var(--line,rgba(255,255,255,.08));color:var(--ink);font-size:16px;font-family:var(--body)}.wl-coach-log-input:focus{outline:none;border-color:var(--mint,var(--accent))}.wl-coach-log-unit{font-size:12px;color:var(--muted,#6B7280)}.wl-coach-log-btn{padding:8px 14px;border-radius:8px;background:var(--mint,var(--accent));color:var(--bg);font-size:13px;font-weight:700;border:none;cursor:pointer;transition:transform .16s cubic-bezier(.23,1,.32,1)}.wl-coach-log-btn:active:not(:disabled){transform:scale(.97)}.wl-coach-log-btn:disabled{opacity:.4;cursor:not-allowed}.nt-swap-btn{background:none;border:none;color:var(--nt-muted);font-size:16px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;border-radius:8px;opacity:.55;transition:opacity .15s ease,color .15s ease,transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.nt-swap-btn:hover{opacity:1;color:var(--accent,var(--accent))}}.nt-swap-btn:active{transform:scale(.95)}.nt-swap-logged{font-size:11px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--nt-muted);opacity:.4;flex-shrink:0}.nt-swap-loading{font-size:16px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--accent,var(--accent));flex-shrink:0;animation:nt-spin 1s linear infinite}@keyframes nt-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nt-regen-picker-inline{padding:8px var(--nt-pad) 12px;border-top:1px solid var(--nt-border-inner)}.nt-recipe--regen{opacity:.6;pointer-events:none}.nt-regen-section{margin-top:16px;padding-top:14px;border-top:1px dashed var(--nt-border-inner)}.nt-regen-btn{width:100%;padding:10px 16px;border-radius:10px;background:var(--nt-card-bg2);border:1px solid var(--nt-border);color:var(--nt-muted);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:border-color .2s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1)}@media (hover: hover){.nt-regen-btn:hover{border-color:var(--accent,var(--accent));color:var(--ink)}}.nt-regen-btn:active{transform:scale(.97)}.nt-regen-logged{font-size:12px;color:var(--nt-muted);font-weight:600;text-align:center;padding:8px;opacity:.7}.nt-regen-loading{font-size:13px;color:var(--accent,var(--accent));font-weight:600;text-align:center;padding:10px;animation:nt-pulse 1.5s ease-in-out infinite}@keyframes nt-pulse{0%,to{opacity:1}50%{opacity:.4}}.nt-regen-picker{display:flex;flex-direction:column;gap:10px}.nt-regen-picker-label{font-size:12px;font-weight:700;color:var(--nt-muted)}.nt-regen-cuisine-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.nt-regen-cuisine-btn{padding:10px 8px;border-radius:8px;background:var(--nt-card-bg2);border:1px solid var(--nt-border);color:var(--ink,#E8E0D8);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:border-color .2s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1);min-height:44px}@media (hover: hover){.nt-regen-cuisine-btn:hover{border-color:var(--accent,var(--accent))}}.nt-regen-cuisine-btn:active{transform:scale(.97)}.nt-regen-cuisine-btn--everyday{grid-column:1 / -1;background:color-mix(in srgb,var(--accent) 8%,transparent);border-color:color-mix(in srgb,var(--accent) 18%,transparent);font-size:13px}@media (hover: hover){.nt-regen-cuisine-btn--everyday:hover{border-color:var(--accent,var(--accent))}}.nt-regen-more-btn{padding:6px;background:none;border:none;color:var(--nt-muted);font-size:11px;font-weight:600;font-family:inherit;cursor:pointer;text-align:center;letter-spacing:.03em}@media (hover: hover){.nt-regen-more-btn:hover{color:var(--ink,#E8E0D8)}}.nt-regen-cancel{padding:8px;background:none;border:none;color:var(--nt-muted);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;text-align:center}@media (hover: hover){.nt-regen-cancel:hover{color:var(--ink)}}.nt-regen-error{background:#e85a721a;border:1px solid rgba(232,90,114,.2);border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:13px;color:#f07088;line-height:1.4}.wl-coach-log-input:disabled{opacity:.55;cursor:not-allowed}.wl-coach-log-unit--pending{opacity:.45;font-style:normal}.nova-popup-dot{width:7px;height:7px;border-radius:50%;background:var(--warm);box-shadow:none}.nova-msg-avatar{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;background:var(--warm-soft);border-radius:50%}.nova-msg--user .nova-msg-bubble{background:color-mix(in srgb,var(--warm) 15%,transparent);color:var(--ink, #fff);border-bottom-right-radius:4px}.nova-md code{font-size:11px;padding:1px 4px;border-radius:3px;background:#ffffff14;color:var(--warm)}.nova-input:focus{outline:none;border-color:var(--warm)}.nova-popup{position:fixed;bottom:calc(84px + var(--safe-bottom-open) + var(--kbd-inset,0px));right:16px;z-index:801;width:380px;max-height:calc(var(--screen-h) * .7);height:500px;display:flex;flex-direction:column;background:var(--bg, var(--bg));border-radius:16px;border:1px solid rgba(255,255,255,.08);box-shadow:none;animation:nova-pop-in .2s cubic-bezier(.23,1,.32,1);transform-origin:bottom right}.nova-popup--out{animation:nova-pop-out .18s cubic-bezier(.55,.06,.68,.19) forwards}@keyframes nova-pop-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes nova-pop-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@media (max-width:480px){.nova-popup{width:auto;left:8px;right:8px;bottom:calc(84px + var(--safe-bottom-open) + var(--kbd-inset,0px));max-height:calc(var(--screen-h) * .75);height:auto}}.nova-popup-header{flex-shrink:0;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06);-webkit-user-select:none;user-select:none}.nova-popup-title-row{display:flex;align-items:center;justify-content:space-between}.nova-popup-id{display:flex;align-items:center;gap:8px}.nova-popup-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:none}.nova-popup-name{font-family:var(--heading);font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--muted, #6B7280)}.nova-popup-label{font-size:12px;font-weight:500;color:#ffffff59}.nova-popup-close{width:var(--tap-min);height:var(--tap-min);display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--muted, #6B7280);background:none;border:none;cursor:pointer;border-radius:8px;transition:color .12s,background .12s}@media (hover: hover){.nova-popup-close:hover{color:var(--ink, #fff);background:#ffffff0f}}.nova-popup-thread{flex:1;overflow-y:auto;padding:4px 16px 12px;display:flex;flex-direction:column;gap:8px;min-height:0;overscroll-behavior:contain}.nova-popup-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 0;opacity:.6}.nova-popup-empty-title{font-family:var(--heading);font-size:14px;font-weight:700;color:var(--ink, #fff);margin-bottom:4px}.nova-popup-empty-sub{font-size:12px;color:var(--muted, #6B7280);max-width:240px;line-height:1.5}.nova-msg{display:flex;gap:6px;max-width:88%;animation:nova-msg-in .18s ease-out}.nova-msg--user{align-self:flex-end;flex-direction:row-reverse}.nova-msg--nova{align-self:flex-start}@keyframes nova-msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nova-msg-avatar{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;background:var(--accent-soft);border-radius:50%}.nova-msg-bubble{padding:8px 12px;border-radius:12px;font-size:13px;line-height:1.5;word-break:break-word}.nova-msg--user .nova-msg-bubble{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--ink, #fff);border-bottom-right-radius:4px}.nova-msg--nova .nova-msg-bubble{background:var(--surface2, #1A1D24);color:var(--ink, #fff);border:1px solid var(--line, rgba(255,255,255,.08));border-bottom-left-radius:4px}.nova-typing{display:flex;align-items:center;gap:4px;padding:10px 14px}.nova-typing-dot{width:5px;height:5px;border-radius:50%;background:var(--muted, #6B7280);animation:nova-bounce .6s infinite alternate}.nova-typing-dot:nth-child(2){animation-delay:.15s}.nova-typing-dot:nth-child(3){animation-delay:.3s}@keyframes nova-bounce{0%{opacity:.3;transform:translateY(0)}to{opacity:1;transform:translateY(-3px)}}.nova-md p{margin:4px 0}.nova-md p:first-child{margin-top:0}.nova-md p:last-child{margin-bottom:0}.nova-md strong{color:var(--ink, #fff);font-weight:700}.nova-md ul,.nova-md ol{margin:4px 0;padding-left:18px}.nova-md li{margin:2px 0}.nova-md li::marker{color:var(--muted, #6B7280)}.nova-md h3,.nova-md h4{font-size:13px;font-weight:700;color:var(--ink, #fff);margin:6px 0 2px}.nova-md code{font-size:11px;padding:1px 4px;border-radius:3px;background:#ffffff14;color:var(--accent)}.nova-popup-input{flex-shrink:0;display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--line, rgba(255,255,255,.08));background:var(--bg, var(--bg));border-bottom-left-radius:16px;border-bottom-right-radius:16px}.nova-input{flex:1;padding:10px 14px;border-radius:10px;background:var(--surface2, #1A1D24);border:1px solid var(--line, rgba(255,255,255,.08));color:var(--ink, #fff);font-size:16px;font-family:inherit;transition:border-color .12s}.nova-input:focus{outline:none;border-color:var(--accent)}.nova-input::placeholder{color:var(--muted, #6B7280);font-weight:500}.nova-typing-text{margin-left:6px;font-size:13px;color:var(--ink2)}.sorc-row{align-items:flex-start}.sorc-card{flex:1;min-width:0;max-width:85%}.sorc-list{margin:4px 0 8px;padding-left:18px;font-size:13px;color:var(--ink);line-height:1.5}.sorc-status{margin:0;font-size:13px;font-weight:600;color:var(--ink2)}.sorc-note{margin:4px 0 0;font-size:13px;color:var(--ink)}.chat-memory{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.chat-memory-text{min-width:0}.chat-newchat{flex:none;min-height:var(--tap-min);min-width:var(--tap-min);padding:0 14px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--ink);font-family:var(--body);font-size:13px;font-weight:600;cursor:pointer;transition:transform .16s ease-out}.chat-newchat:active:not(:disabled){transform:scale(.97)}.chat-newchat:disabled{opacity:.4;cursor:default}.chat-newchat-divider{display:flex;align-items:center;gap:10px;margin:14px 4px;font-size:12px;color:var(--muted);text-align:center}.chat-newchat-divider:before,.chat-newchat-divider:after{content:"";flex:1;height:1px;background:var(--line)}.chat-day-divider{display:flex;align-items:center;gap:10px;margin:14px 4px 6px;font-size:12px;color:var(--muted);text-align:center}.chat-day-divider:before,.chat-day-divider:after{content:"";flex:1;height:1px;background:var(--line)}.ob-alert{display:flex;flex-direction:column;gap:8px;margin:12px 0}.ob-row{padding:12px;border-radius:12px;background:var(--surface2);border:1px solid rgba(255,143,133,.42);color:var(--ink)}.ob-text{font-size:13px;line-height:1.5}.ob-actions{display:flex;gap:8px;margin-top:10px}.obx-btn{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 14px;border-radius:10px;font:600 13px var(--body);color:var(--ink);cursor:pointer;border:1px solid var(--line);background:var(--surface);transition:transform .14s ease-out}.obx-btn:active{transform:scale(.97)}.obx-btn-go{border-color:var(--accent);color:var(--accent-ink)}.obx-btn-drop{color:var(--muted)}@media (prefers-reduced-motion:reduce){.obx-btn{transition:none}.obx-btn:active{transform:none}}.ms-thread{display:flex;flex-direction:column;height:100%;min-height:0}.ms-scroll{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.ms-empty{color:var(--muted);font-size:13px;text-align:center;padding:24px 8px}.ms-load-error{margin:12px 8px}.ms-load-error-text{margin:6px 0 0;color:var(--ink);font-size:13px;line-height:1.4}.ms-retry{min-width:44px;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--caution-line);background:transparent;color:var(--ink);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer}.ms-msg{display:flex;justify-content:flex-start}.ms-msg--mine{justify-content:flex-end}.ms-bubble{max-width:78%;padding:8px 12px;border-radius:14px;font-size:14px;line-height:1.4;background:var(--surface2);color:var(--ink);border:1px solid rgba(255,255,255,.06);word-wrap:break-word;white-space:pre-wrap}.ms-msg--mine .ms-bubble{background:color-mix(in srgb,var(--caution) 18%,transparent);border-color:var(--caution-line)}.ms-receipt{font-size:10px;color:var(--muted);text-align:right;padding:2px 4px 0;font-weight:500}.ms-inputrow{display:flex;gap:8px;padding:10px 12px;border-top:1px solid rgba(255,255,255,.06);background:var(--surface)}.ms-input{flex:1;min-width:var(--tap-min);min-height:44px;border-radius:22px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);padding:11px 16px;font-size:16px;line-height:1.35;font-family:inherit;outline:none;resize:none;box-sizing:border-box;display:block}.ms-input:focus{border-color:var(--accent)}.ms-dock-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.ms-dock{position:fixed;right:16px;bottom:88px;z-index:1001;width:min(360px,calc(100vw - 32px));height:min(480px,calc(var(--screen-h) - 120px));display:flex;flex-direction:column;background:var(--surface2);border:1px solid var(--caution-line);border-radius:16px;box-shadow:0 12px 40px #00000080;overflow:hidden}.ms-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06)}.ms-sheet-title{flex:1;font-size:16px;font-weight:700;color:var(--ink);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ms-sheet-close{flex:none;width:44px;height:44px;border:none;background:transparent;color:var(--muted);font-size:16px;cursor:pointer;border-radius:8px}.ms-back{flex:none;display:flex;align-items:center;gap:2px;min-width:44px;height:44px;padding:0 10px 0 4px;border:none;background:transparent;color:var(--muted);font-size:15px;cursor:pointer;border-radius:8px;font-family:inherit;white-space:nowrap}.ms-back-glyph{font-size:22px;line-height:1}@media (max-width:900px){.ms-dock-overlay{background:var(--bg)}.ms-dock{top:0;right:0;bottom:0;left:0;bottom:var(--kbd-inset,0px);width:auto;height:auto;border:none;border-radius:0;box-shadow:none}.ms-sheet-head{padding:calc(8px + env(safe-area-inset-top,0px)) 8px 8px 16px}.ms-back{margin-left:-12px}.ms-inputrow{padding-bottom:calc(10px + var(--safe-bottom-open))}}.cm{display:flex;flex-direction:column;height:100%}.cm-head{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;gap:12px}.cm-new{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 16px;border-radius:999px;border:none;cursor:pointer;background:var(--accent);color:var(--accent-on);font:700 14px var(--body)}.cm-new:active{transform:scale(.97)}.cm-pick{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;padding-bottom:8px}.cm-pick-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px 4px 16px}.cm-pick-title{margin:0;font:700 17px var(--body);color:var(--ink)}.cm-pick-cancel{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 12px;border:none;background:transparent;color:var(--accent-ink);font:600 15px var(--body);cursor:pointer}.cm-pick-search{margin:6px 16px 8px;min-height:var(--tap-min);padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:400 16px var(--body)}.cm-pick-list{overflow-y:auto;display:flex;flex-direction:column}.cm-pick-list .cm-row{min-height:56px}.cm-pick-list .cm-avatar{background:var(--surface3);color:var(--ink);border-radius:50%}.cm-pick-tag{margin-left:auto;padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font:600 12px var(--body)}.cm-title{margin:0;font-size:18px;font-weight:700;color:var(--ink)}.cm-empty{color:var(--muted);font-size:13px;text-align:center;padding:24px 16px}.cm-list{display:flex;flex-direction:column}.cm-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border:none;border-bottom:1px solid rgba(255,255,255,.05);background:transparent;color:var(--ink);cursor:pointer;text-align:left;font-family:inherit}@media (hover: hover){.cm-row:hover{background:#ffffff08}}.cm-avatar{flex:none;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--caution) 15%,transparent);color:var(--caution);display:flex;align-items:center;justify-content:center;font-family:var(--body);font-size:11px;font-weight:700}.cm-name{flex:1;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-unread{flex:none;width:8px;height:8px;border-radius:50%;background:var(--caution)}.sk{display:flex;flex-direction:column;gap:14px;padding:4px 0}.sk-row{display:flex;align-items:center;gap:12px}.sk-dot{flex:none;width:40px;height:40px;border-radius:50%}.sk-lines{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.sk-line{display:block;height:12px;border-radius:6px;width:100%}.sk-line--title{height:20px;width:70%}.sk-line--mid{width:62%}.sk-line--short{width:38%}.sk-block{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:16px;background:var(--surface)}.sk-button{display:block;height:48px;border-radius:12px;margin-top:6px}.sk-bubble{display:block;height:44px;width:62%;border-radius:16px}.sk-bubble--mine{align-self:flex-end;width:48%}.sk-dot,.sk-line,.sk-button,.sk-bubble{background:var(--surface3);animation:sk-pulse 1.4s ease-in-out infinite}@keyframes sk-pulse{50%{opacity:.55}}@media (prefers-reduced-motion: reduce){.sk-dot,.sk-line,.sk-button,.sk-bubble{animation:none}}.cfp{position:fixed;z-index:130;width:max-content;min-width:220px;max-width:min(320px,calc(100vw - 16px));padding:12px 12px 10px;border-radius:12px;background:var(--surface2);border:1px solid transparent;box-shadow:0 14px 36px #00000080;transform-origin:top right;animation:cfp-in .15s cubic-bezier(.23,1,.32,1)}.cfp--above{transform-origin:bottom right}@keyframes cfp-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.cfp-title{margin:0;font-size:14px;font-weight:600;color:var(--ink);line-height:1.35}.cfp-detail{margin:4px 0 0;font-size:13px;color:var(--ink2);line-height:1.4}.cfp-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.cfp-keep,.cfp-delete{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 16px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .16s ease-out}.cfp-keep{background:transparent;color:var(--ink);border:1px solid var(--line)}@media (hover: hover){.cfp-keep:hover{background:#ffffff0f}}.cfp-delete{background:var(--danger);color:var(--bg);border:1px solid var(--danger)}.cfp-keep:active,.cfp-delete:active{transform:scale(.97)}.cfp-keep:focus-visible,.cfp-delete:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.cfp{animation:none}.cfp-keep,.cfp-delete{transition:none}}.pg{display:flex;flex-direction:column;gap:12px;padding-bottom:16px}.prog-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 6px}.prog-tab{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 14px;border-radius:999px;border:none;background:transparent;color:var(--muted);font:600 15px var(--body);cursor:pointer}.prog-tab.on{background:var(--ink);color:var(--bg)}.prog-label{margin:6px 0 0;font:500 15px var(--body);color:var(--muted)}.prog-big{margin:0;font:800 var(--fs-display)/.95 var(--heading);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.prog-big small{font-size:.36em;font-weight:600;color:var(--muted);margin-left:6px;letter-spacing:0}.prog-sub{margin:4px 0 0;font:400 15px/1.45 var(--body);color:var(--muted)}.prog-strong{color:var(--ink);font-weight:600}.prog-num{font-variant-numeric:tabular-nums}.prog-cele{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;min-height:34px;padding:0 12px;margin-top:6px;border-radius:999px;background:var(--celebrate-soft);color:var(--celebrate);font:600 14px var(--body)}.prog-card{background:var(--surface);border-radius:20px;padding:16px}.prog-card-title{margin:0;font:600 15px var(--body);color:var(--ink)}.prog-card h3{margin:0 0 8px;font:700 16px var(--body);color:var(--ink)}.prog-empty{margin:8px 0;font:400 15px/1.5 var(--body);color:var(--muted)}.prog-failed{background:var(--surface);border-radius:16px;padding:14px 16px}.prog-failed p{margin:0 0 8px;color:var(--ink);font:500 15px var(--body)}.prog-retry,.prog-back,.prog-more{min-height:var(--tap-min);min-width:var(--tap-min);border:none;background:transparent;cursor:pointer;color:var(--accent-ink);font:600 15px var(--body);padding:0;display:inline-flex;align-items:center;gap:6px}.prog-more{width:100%;justify-content:space-between}.prog-chev--open{transform:rotate(90deg)}.prog-back-ic{transform:rotate(180deg)}.prog-chart{margin:8px 0 0}.prog-chart svg{width:100%;height:auto;display:block;overflow:visible}.prog-chart-read{margin:0 0 4px;font:500 13px var(--body);color:var(--ink2);font-variant-numeric:tabular-nums}.prog-axis{stroke:var(--line)}.prog-area{fill:var(--accent);opacity:.12}.prog-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.prog-hit{fill:transparent;cursor:pointer}.prog-dot{fill:var(--accent);stroke:var(--bg);stroke-width:2}.prog-dot--on{stroke-width:3}.prog-tick{fill:var(--muted);font:500 11px var(--body)}.prog-bars{display:flex;align-items:flex-end;gap:8px;height:66px;margin:14px 0 6px}.prog-bars i{flex:1;background:var(--accent);border-radius:6px 6px 2px 2px}.prog-bars i.prog-bar--none{background:var(--surface3)}.prog-bars-lbl{display:flex;justify-content:space-between;font:500 12px var(--body);color:var(--muted)}.prog-list{display:flex;flex-direction:column}.prog-list--tight .prog-kv{min-height:40px}.prog-month{margin:14px 0 4px;font:600 13px var(--body);color:var(--muted)}.prog-row{display:flex;align-items:center;gap:12px;min-height:64px;min-width:var(--tap-min);width:100%;padding:8px 0;border:none;border-top:1px solid var(--line2);background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.prog-row--slim{min-height:52px}.prog-row>svg{color:var(--muted);flex:0 0 auto;transition:transform .16s cubic-bezier(.23,1,.32,1)}.prog-lift-open{padding:4px 0 14px}.prog-date{width:46px;flex:0 0 46px;text-align:center;display:flex;flex-direction:column}.prog-date small{font:600 12px var(--body);color:var(--muted)}.prog-date b{font:700 21px/1.1 var(--heading);font-variant-numeric:tabular-nums}.prog-what{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.prog-what b{font:600 16px var(--body);color:var(--ink)}.prog-what span{font:400 13.5px var(--body);color:var(--muted)}.prog-what b .prog-part{font-weight:400;color:var(--ink2)}.prog-tag{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;background:var(--celebrate-soft);color:var(--celebrate);font:600 12.5px var(--body);vertical-align:2px;white-space:nowrap}.prog-gain{font:700 14px var(--body);color:var(--accent-ink);font-variant-numeric:tabular-nums}.prog-kv{display:flex;justify-content:space-between;align-items:center;min-height:44px;border-top:1px solid var(--line2);font:400 15px var(--body);color:var(--ink)}.prog-kv .prog-num{color:var(--ink2)}.prog-detail{display:flex;flex-direction:column;gap:12px}.prog-detail-title{margin:0;font:800 var(--fs-title)/1.1 var(--heading);color:var(--ink);letter-spacing:-.02em}.prog-ex .prog-set{display:flex;justify-content:space-between;padding:6px 0;border-top:1px solid var(--line2);font:400 15px var(--body);color:var(--ink)}.prog-ex .prog-set:first-of-type{border-top:none}.prog-ex .prog-set span:first-child{color:var(--muted);font-size:13.5px}.prog-note{margin:8px 0 0;font:400 14px/1.45 var(--body);color:var(--ink2)}.prog-note b{display:block;font:600 12.5px var(--body);color:var(--muted)}.prog-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px 0;margin-top:10px}.prog-grid>*{justify-self:center}.prog-wd{font:600 12px var(--body);color:var(--muted)}.prog-d{width:16px;height:16px;border-radius:50%;background:var(--surface3)}.prog-d--yes{background:var(--accent)}.prog-d--future{background:transparent;box-shadow:inset 0 0 0 1.5px var(--surface3)}.prog-ci-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px}.prog-ci-top b{font:600 16px var(--body);color:var(--ink)}.prog-ci-top .prog-num{font:500 14px var(--body);color:var(--ink2)}.prog-scores{display:flex;gap:6px;margin-bottom:6px}.prog-scores div{flex:1;background:var(--surface2);border-radius:12px;padding:8px 10px}.prog-scores small{display:block;font:600 12px var(--body);color:var(--muted)}.prog-scores span{font:700 17px var(--body);color:var(--ink)}.prog-scores i{font-style:normal;font-size:12.5px;color:var(--muted)}.prog-qa{margin:8px 0 0;font:400 14.5px/1.45 var(--body);color:var(--ink2)}.prog-qa b{display:block;font:600 12.5px var(--body);color:var(--muted)}.ck{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ck .sh,.ck .pip{fill:transparent}.on .ck .sh{fill:var(--accent-soft)}.on .ck .pip{fill:currentColor}.es-illo{display:block;width:132px;height:92px;margin:0 auto 14px}.es-illo .ln{fill:none;stroke:var(--illo-line);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.es-illo .lt{fill:none;stroke:var(--illo-soft);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.es-illo .es-s2{fill:var(--surface2)}.es-illo .es-s3{fill:var(--surface3)}.es-illo .es-ground{fill:var(--hero)}.db-page{min-height:calc(var(--screen-h) - 52px);background:var(--bg)}.db{padding:32px 28px 48px;max-width:1100px;margin:0 auto}@media (min-width:1800px){.db{max-width:1280px}}.db-hero{margin-bottom:32px}.db-greeting{font-family:var(--heading);font-size:32px;font-weight:700;letter-spacing:-.03em;color:var(--ink);margin:0 0 6px}.db-sub{font-size:14px;color:var(--muted);margin:0;font-weight:500;line-height:1.5}.db-cols{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:start}.db-left,.db-right{display:flex;flex-direction:column;gap:16px}.db-section{background:var(--surface);border:1px solid transparent;border-radius:16px;padding:20px;box-shadow:var(--card-edge)}.db-sec-title{font-family:var(--heading);font-size:18px;font-weight:700;color:var(--ink);margin:0 0 10px;letter-spacing:-.01em;text-transform:none}.db-sec-amber{display:flex;align-items:center;gap:8px}.db-sec-amber:before{content:"";width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--caution);box-shadow:none}.db-attention{display:flex;flex-direction:column;gap:0}.db-attention>.db-pain-row{margin:4px 0 8px}.db-attn-avatar{width:40px;height:40px;border-radius:50%;background:var(--surface3);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--body);font-size:14px;font-weight:700;flex-shrink:0}.db-attention>.card-row:not(.db-pain-row){background:transparent;border:none;border-radius:0;border-top:1px solid var(--line2);padding:12px 2px}.db-attention>.card-row:not(.db-pain-row):first-child{border-top:none}.db-attention>.card-row .card-title{font-size:16px}.db-attention>.card-row .card-meta{font-size:13.5px}.db-attention>.card-row--tappable:not(.db-pain-row){min-height:64px}@media (hover:hover) and (pointer:fine){.db-attention>.card-row--tappable:not(.db-pain-row):hover{background:var(--surface2);border-color:transparent}}.ny-row{position:relative;overflow:hidden;border-top:1px solid var(--line2);min-width:0}.ny-row:first-child{border-top:none}.ny-row--swipe{touch-action:pan-y}.ny-slide{position:relative;display:flex;align-items:center;gap:8px;padding-right:var(--ny-pad,0);background:var(--ny-bg,var(--surface));min-width:0}.ny-under{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;background:var(--surface3)}.ny-under button{min-width:96px;min-height:var(--tap-min);border:0;background:transparent;color:var(--ink);font:700 15px var(--body);cursor:pointer}.ny-row--fixed .ny-open{opacity:.55}.ny-act--notnow{background:var(--surface3)}.ny-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ny-head .db-sec-title{margin:0}.ny-edit{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 4px;border:0;background:transparent;color:var(--accent-ink);font:700 15px var(--body);cursor:pointer}.ny-edit:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:6px}.ny-aside{display:flex;align-items:center;gap:6px;width:100%;min-height:var(--tap-min);padding:0 var(--ny-pad,0);border:0;border-top:1px solid var(--line2);background:transparent;color:var(--muted);font:600 13px var(--body);text-align:left;cursor:pointer}.ny-aside b{color:var(--accent-ink);font-weight:700}.ny-calm{margin:2px 0 6px;font:600 15px var(--body);color:var(--ink)}.ny-calm small{display:block;margin-top:2px;font:400 13px/1.4 var(--body);color:var(--muted)}.ny-toast{position:fixed;left:12px;right:12px;bottom:calc(12px + max(var(--safe-bottom),var(--coach-bar-h, 0px)));z-index:60;max-width:440px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:6px 6px 6px 16px;border-radius:14px;background:var(--surface3);color:var(--ink);font:500 14px/1.35 var(--body)}.ny-toast span{flex:1;min-width:0}.ny-toast button{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 14px;border:0;border-radius:10px;background:transparent;color:var(--accent-ink);font:700 15px var(--body);cursor:pointer}@media (prefers-reduced-motion:reduce){.ny-slide{transition:none!important}}.ny-open{flex:1 1 auto;min-width:var(--tap-min);display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 0 6px var(--ny-pad,0);background:transparent;border:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background .12s ease-out}.ny-open:active{transform:scale(.99)}.ny-open:focus-visible{outline:2px solid var(--ink);outline-offset:-2px;border-radius:8px}@media (hover:hover) and (pointer:fine){.ny-open:hover{background:var(--surface2)}}.ny-av{flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--surface3);color:var(--ink);display:flex;align-items:center;justify-content:center;font:700 12px var(--body)}.ny-text{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1px}.ny-name{font:600 15px/1.3 var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ny-reason{font:400 13px/1.35 var(--body);color:var(--ink2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ny-reason .db-stat-dot{width:7px;height:7px;margin-right:6px}.ny-act{flex:0 0 auto;min-height:var(--tap-min);min-width:var(--tap-min);padding:0 14px;border:0;border-radius:10px;cursor:pointer;background:var(--surface2);color:var(--ink);font:600 14px var(--body);transition:transform .16s cubic-bezier(.23,1,.32,1)}.ny-act--go{background:var(--accent);color:var(--accent-on)}.ny-act:active{transform:scale(.97)}.ny-act:disabled{opacity:.6;cursor:default;transform:none}.ny-act:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.ny-chev{flex:0 0 auto;color:var(--muted);margin:0 13px}.db-stat{display:inline;color:var(--ink2)}.db-stat-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;vertical-align:1px;background:var(--muted)}.db-stat--danger .db-stat-dot{background:var(--danger)}.db-stat--caution .db-stat-dot{background:var(--caution)}.db-stat--notice .db-stat-dot{background:var(--notice)}.db-attn-all{margin-top:2px;align-self:flex-start;background:transparent;border:none;color:var(--caution);font-size:12px;font-weight:600;padding:6px 8px;cursor:pointer;font-family:inherit}.al-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0000008c;display:flex;align-items:flex-end;justify-content:center}.al-sheet{width:100%;max-height:calc(var(--screen-h) * .82);overflow-y:auto;background:var(--surface2);border:1px solid var(--caution-line);border-radius:18px 18px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}.al-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.al-title{font-size:16px;font-weight:700;color:var(--ink);margin:0;flex:1}.al-count{font-size:12px;color:var(--muted);font-weight:600}.al-close{flex:none;width:36px;height:36px;border:none;background:transparent;color:var(--muted);font-size:16px;cursor:pointer;border-radius:8px}@media (min-width:768px){.al-overlay{align-items:center}.al-sheet{max-width:480px;border-radius:16px}}.al-sheet .db-attention{--ny-bg:var(--surface2)}.db-section--quiet{background:transparent;border:1px dashed var(--line);padding:18px 20px}.db-attn-ok{display:flex;flex-direction:column;gap:4px;position:relative;padding:0 0 0 18px}.db-attn-ok:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--accent);box-shadow:none}.db-attn-ok-head{font-size:15px;font-weight:600;color:var(--ink2)}.db-attn-ok-checked{font-size:12.5px;font-weight:400;color:var(--muted);line-height:1.5}.db-attn-unchecked{font-size:13px;line-height:1.5;color:var(--caution);background:var(--caution-soft);border:1px solid var(--caution-line);border-radius:10px;padding:10px 12px}.db-action-hero{width:100%;padding:14px;border-radius:10px;font-size:14px;font-weight:700;transition:filter .12s;margin-bottom:10px;font-family:var(--body);letter-spacing:-.01em}@media (hover: hover){.db-action-hero:hover{filter:brightness(1.06)}}.db-thisweek{border-radius:16px;padding:16px 16px 8px}.db-thisweek .card-panel-title{font-size:18px;margin-bottom:4px}.db-thisweek-list{display:flex;flex-direction:column}.db-thisweek .cw-open{min-height:56px;padding:6px 0;gap:12px}.db-thisweek .cw-av{flex-basis:32px;width:32px;height:32px;font-size:12px}.db-thisweek .cw-name{font-size:15px}.db-thisweek .cw-sub{font-size:13px}.db-thisweek-all{min-height:var(--tap-min);width:100%;margin-top:4px;border:none;background:transparent;color:var(--accent-ink);font:600 14px var(--body);text-align:left;padding:0 4px;cursor:pointer}.db-activity{display:flex;flex-direction:column;gap:2px}.db-activity-item{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line2)}.db-activity-item:last-child{border-bottom:none}.db-activity-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;box-shadow:none}.db-activity-dot.neutral{background:var(--muted);box-shadow:none}.db-activity-msg{flex:1;font-size:13px;color:var(--ink2);font-weight:500}.db-activity-time{font-size:11px;color:var(--muted);font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:500;flex-shrink:0}.db-no-activity{font-size:13px;color:var(--muted);font-style:italic;margin:0}.db-tpl-list{display:flex;flex-direction:column;gap:6px}.db-tpl-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border-left:2px solid var(--accent);background:var(--surface2);transition:background .12s}@media (hover: hover){.db-tpl-row:hover{background:var(--accent-soft)}}.db-tpl-info{flex:1;min-width:0}.db-tpl-name{display:block;font-size:13px;font-weight:600;color:var(--ink);line-height:1.35;overflow-wrap:anywhere}.db-tpl-meta{display:block;font-size:10px;color:var(--muted);font-weight:500;font-family:var(--body);margin-top:2px;font-family:var(--num);font-variant-numeric:tabular-nums}.db-tpl-apply{font-size:12px;font-weight:600;color:var(--accent);flex-shrink:0;background:transparent;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:8px;padding:4px 10px;cursor:pointer;transition:background .12s,border-color .12s,color .12s;font-family:inherit}@media (hover: hover){.db-tpl-apply:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}}.db-phase-banners{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.db-phase-banner{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:12px;background:var(--surface2);border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);border-left:4px solid var(--accent);animation:dbBannerIn .3s cubic-bezier(.23,1,.32,1)}.db-phase-banner-text{flex:1;min-width:0}.db-phase-banner-title{display:block;font-size:14px;font-weight:600;color:var(--ink)}.db-phase-banner-sub{display:block;font-size:13px;color:var(--muted);margin-top:2px}.db-phase-banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.db-phase-banner-draft{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;background:var(--accent);color:var(--accent-on);border:none;cursor:pointer;transition:filter .12s;font-family:inherit;white-space:nowrap}@media (hover: hover){.db-phase-banner-draft:hover{filter:brightness(1.08)}}.db-phase-banner-draft:active{transform:scale(.97)}.db-phase-banner-dismiss{width:32px;height:32px;border-radius:8px;background:transparent;border:1px solid var(--line);color:var(--muted);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .12s,color .12s}@media (hover: hover){.db-phase-banner-dismiss:hover{border-color:var(--ink2);color:var(--ink)}}.db-phase-banner--multi .db-phase-banner-text{display:flex;flex-direction:column;gap:8px}.db-phase-banner-list{display:flex;flex-direction:column;gap:2px}.db-phase-banner-client{font-size:12px;color:var(--ink2);font-weight:500}.db-phase-banner-more{color:var(--muted);font-style:italic}@keyframes dbBannerIn{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:800px){.db{display:flex;flex-direction:column}.db-cols{order:1;grid-template-columns:1fr}.db-cols{display:flex;flex-direction:column;gap:16px;align-items:stretch}.db-left,.db-right{display:contents}.db-card--actions-first{order:0}.db-setup--first{order:1}.db-section{order:2}.db-card--actions{order:3}.db-card--actions.db-card--actions-first{order:0}.db-thisweek,.db-setup--after-pain,.db-sched,.db-fhw{order:4}.db-card--actions>.db-sec-title{display:none}.db-card--activity{order:5}.db-card--templates{order:6}}@media (max-width:500px){.db-greeting{font-size:24px}.db{padding:20px 16px 40px}.db .db-board,.db .db-thisweek{background:transparent;padding:0;border:0;border-radius:0}.db-board>.ny-head{margin:0 0 4px}.db-board>.db-sec-title{margin:0 0 4px}.db-board>.db-attention{margin:0 -16px;--ny-pad:16px;--ny-bg:var(--bg)}.db-board>.db-attention>.card-row:not(.db-pain-row){padding:12px 16px}.db-board>.db-attention>.db-pain-row{margin:4px 16px 8px;width:auto}.db-board>.db-attention>:not(.card-row):not(.ny-row):not(.ny-aside){margin-left:16px;margin-right:16px}.db-thisweek-list{margin:0 -16px}.db-thisweek .cw-row{padding:0 16px}.db-thisweek-all{padding:0}.db-hero{margin-bottom:20px}.db-card--actions{padding:12px}.db-cols{gap:20px}}@media (prefers-reduced-motion:reduce){.db *{animation:none!important;transition:none!important}}.db-resume{border:1px solid var(--accent);border-radius:14px;padding:14px;background:var(--accent-soft);display:flex;flex-direction:column;gap:6px}.db-resume-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.db-resume-label{font-size:12px;font-weight:700;color:var(--accent-ink)}.db-resume-when{font-size:12px;color:var(--ink2);font-weight:500}.db-resume-who{font-family:var(--body);font-size:17px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-resume-meta{font-size:12px;color:var(--ink2);font-weight:500}.db-resume-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.db-resume-go{margin:0}.db-resume-fresh{background:none;border:1px solid var(--line);color:var(--ink2);border-radius:10px;padding:10px 12px;min-height:44px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:color .12s ease-out,border-color .12s ease-out}@media (hover: hover){.db-resume-fresh:hover{color:var(--danger);border-color:var(--danger)}}.db-resume-both,.db-resume-more,.db-resume-new{background:none;border:none;color:var(--ink2);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:8px 4px;min-height:44px;text-align:left;border-radius:8px;transition:color .12s ease-out}@media (hover: hover){.db-resume-both:hover,.db-resume-more:hover,.db-resume-new:hover{color:var(--accent-ink)}}.db-resume-new{color:var(--muted)}.db-sec-danger{display:flex;align-items:center;gap:8px}.db-sec-danger:before{content:"";width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--danger);box-shadow:none}.db-pain-row{background:var(--danger-soft)}.db-pain-row-action{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.db-pain-quote{display:block;margin-top:4px;font-style:italic;color:var(--ink2);overflow-wrap:anywhere}.db-pain-note{display:block;margin-top:6px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.db-pain-clear{min-height:44px;padding:0 14px;border-radius:9px;cursor:pointer;font-weight:600;font-size:13px;font-family:inherit;background:transparent;color:var(--ink2);border:1px solid color-mix(in srgb,var(--danger) 34%,transparent);transition:transform .16s cubic-bezier(.23,1,.32,1),border-color .16s ease,color .16s ease}.db-pain-clear:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.db-pain-clear:hover{border-color:var(--danger);color:var(--ink)}}.db-pain-clear:disabled{opacity:.6;cursor:default;transform:none}.db-pain-failed{padding:14px;border-radius:12px;background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 34%,transparent);color:var(--ink2);overflow-wrap:anywhere}.db-untriaged-line{font-size:12px;font-weight:700;color:var(--danger);margin-bottom:6px}.db-pain-row .db-pain-quote{font-size:14px;line-height:1.45;color:var(--ink)}.db-untriaged-meta{display:block;margin-top:6px;font-size:11px;color:var(--muted)}.db-overdue-line{font-size:12px;font-weight:700;color:var(--danger);margin-bottom:6px}.db-pain-trail{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.db-pain-area{font-size:13px;font-weight:700;color:var(--danger);white-space:nowrap}.db-pain-open{display:inline-block;padding:3px 8px;border-radius:999px;background:var(--danger);color:var(--bg);font-family:var(--num);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700;letter-spacing:.04em;white-space:nowrap}.al-sheet--neutral{border-color:var(--line)}.sw-status{font-size:14px;line-height:1.45;color:var(--ink2);margin:0 0 12px}.sw-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.sw-seen{flex:1 1 auto;min-height:44px;padding:0 16px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-on);font-size:15px;font-weight:700;cursor:pointer}.sw-pull{flex:0 1 auto;min-height:44px;padding:0 16px;border:1px solid var(--danger);border-radius:10px;background:transparent;color:var(--danger);font-size:15px;font-weight:700;cursor:pointer}.sw-seen:disabled,.sw-pull:disabled{opacity:.6;cursor:default}.db-req-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.db-fix-text{display:block;margin-top:6px;font-size:14px;line-height:1.45;color:var(--ink2);overflow-wrap:anywhere}.db-fix-error{display:block;margin-top:6px;font-size:13px;color:var(--caution)}.db-req-btn{min-height:44px;min-width:44px;padding:0 12px;border-radius:10px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;transition:transform .16s cubic-bezier(.23,1,.32,1);border:1px solid var(--line);background:transparent;color:var(--ink)}.db-req-btn--quiet{border-color:transparent;color:var(--ink2)}.db-req-btn:active{transform:scale(.97)}.db-req-btn:disabled{opacity:.6;cursor:default;transform:none}.db-req-toast{position:fixed;left:50%;bottom:calc(24px + max(var(--safe-bottom),var(--coach-bar-h, 0px)));transform:translate(-50%);z-index:60;max-width:min(92vw,420px);padding:12px 16px;border-radius:12px;background:var(--surface2);border:1px solid transparent;color:var(--ink);font-size:14px;overflow-wrap:anywhere}.sw-approve{flex:1 1 auto;min-height:44px;padding:0 16px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-on);font-size:15px;font-weight:700;cursor:pointer}.sw-quiet{flex:0 1 auto;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font-size:15px;font-weight:700;cursor:pointer}.sw-approve:disabled,.sw-quiet:disabled{opacity:.6;cursor:default}.sw-note{display:block;margin-top:14px}.sw-note-label{display:block;font-size:13px;color:var(--ink2);margin-bottom:6px}.sw-note-input{display:block;width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);font:inherit;font-size:16px;resize:vertical}.db-sched-list{display:flex;flex-direction:column;gap:8px}.db-sched-seen{min-height:44px;min-width:64px;padding:0 14px;border:1px solid var(--line2);border-radius:10px;background:transparent;color:var(--ink);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer}.db-sched-seen:disabled{opacity:.6;cursor:default}.db-sched-failed{font-size:13px;line-height:1.45;color:var(--ink2);margin:0}.db-fhw-note{margin:6px 0 0;font-size:14px;line-height:1.45;color:var(--ink2);overflow-wrap:anywhere}.db-fhw .card-title{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.db-who{display:inline-flex;align-items:center;min-height:var(--tap-min);min-width:var(--tap-min);padding:0;border:none;background:transparent;color:var(--ink);font:inherit;font-weight:700;cursor:pointer;text-align:left}.db-who:after{content:"›";margin-left:6px;color:var(--muted);font-weight:600}.db-who:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:6px}.db-row-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.db-row-btn{min-height:var(--tap-min);min-width:var(--tap-min);padding:0 16px;border:none;border-radius:10px;cursor:pointer;background:var(--surface2);color:var(--ink);font:600 14px var(--body);transition:transform .16s cubic-bezier(.23,1,.32,1)}.db-row-btn:active{transform:scale(.97)}.db-row-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.db-ci-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#0000008c}.db-ci-sheet{position:fixed;left:0;right:0;bottom:0;z-index:1201;max-height:88dvh;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;background:var(--surface)}@media (min-width: 901px){.db-ci-sheet{left:50%;right:auto;bottom:auto;top:50%;width:440px;border-radius:16px;transform:translate(-50%,-50%)}}.db-ci-k{margin:0;font:600 12px var(--body);color:var(--ink2)}.db-ci-h{margin:0 0 4px;font:800 19px/1.25 var(--heading);color:var(--ink)}.db-ci-note{margin:0;font:400 14px/1.45 var(--body);color:var(--ink2)}.db-ci-one{padding:8px 0;border-top:1px solid var(--line)}.db-ci-date{margin:0 0 4px;font:700 13px var(--body);color:var(--ink2)}.db-ci-fl{margin:8px 0 2px;font:600 12px var(--body);color:var(--ink2)}.db-ci-reply{display:flex;gap:8px;align-items:flex-end}.db-ci-in{flex:1;min-width:var(--tap-min);min-height:56px;box-sizing:border-box;padding:10px 12px;border-radius:12px;border:1px solid var(--line2);background:var(--surface2);color:var(--ink);font:500 16px var(--body);resize:vertical}.db-ci-in:focus{outline:none;border-color:var(--accent)}.db-ci-sent{margin:0;font:500 13px var(--body);color:var(--accent-ink)}.db-ci-done{min-height:var(--tap-min);margin-top:6px;border:none;background:transparent;color:var(--ink2);font:600 15px var(--body);cursor:pointer}.app-tabbar,.app-me{display:none}@media (max-width:900px){.app-tabbar{position:fixed;left:0;right:0;bottom:var(--kbd-inset,0px);z-index:50;display:flex;justify-content:center;background:var(--bg2);border-top:1px solid var(--line);padding:6px 0 calc(6px + var(--safe-bottom-open))}html[data-kbd-open] .app-tabbar{display:none}.app-me{display:flex;align-items:center;justify-content:center;margin-left:auto;flex:0 0 auto;width:var(--tap-min);height:var(--tap-min);min-width:var(--tap-min);border-radius:50%;border:none;cursor:pointer;background:var(--surface2);color:var(--ink);font:700 14px var(--body)}.app-topbar-actions+.app-me{margin-left:4px}.app-me.on{box-shadow:inset 0 0 0 2px var(--accent)}.app-me:active{transform:scale(.97)}}.app-tab{flex:1 1 auto;min-width:var(--tap-min);min-height:var(--tap-min);max-width:120px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;background:none;border:none;cursor:pointer;color:var(--muted);font-family:inherit;transition:color .12s ease-out}.app-tab:active{transform:scale(.97)}.app-tab.on{color:var(--accent-ink)}.app-tab:after{content:"";display:block;width:4px;height:4px;border-radius:50%;background:transparent;margin-top:2px}.app-tab.on:after{background:var(--accent)}.app-tab-icon{position:relative;display:flex}.app-tab-label{font-size:12px;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-tab-badge{position:absolute;top:-6px;left:14px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:var(--accent-on);font:700 11px var(--body);font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:center;line-height:1}.app-more{padding:16px 16px 24px;max-width:720px}.app-more-list{display:flex;flex-direction:column;background:var(--surface);border-radius:16px;padding:4px 12px}.app-more-row{display:flex;align-items:center;gap:14px;min-height:56px;min-width:var(--tap-min);width:100%;padding:0 4px;background:transparent;border:none;border-top:1px solid var(--line2);color:var(--ink);font:600 16px var(--body);text-align:left;cursor:pointer}.app-more-row:first-child{border-top:none}.app-more-icon{display:flex;color:var(--ink2)}.app-more-label{flex:1 1 auto;min-width:0}.app-more-badge{position:static}.app-more-mode{font-size:12px;font-weight:700;color:var(--muted);background:var(--surface2);border-radius:6px;padding:3px 7px}.app-more-chev{color:var(--muted)}.app-more-activity{margin-top:16px}.co-page{padding:16px;max-width:560px;margin:0 auto}.co-title{margin:0 0 6px;font-size:19px;font-weight:var(--fw-title,800);color:var(--ink)}.co-body{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--ink2)}.co-copy{width:100%;min-height:48px;border-radius:12px;border:none;background:var(--surface2);color:var(--ink);font:700 15px var(--body);cursor:pointer}.co-copy:active{transform:scale(.97)}.co-failed{margin:10px 0 0;font-size:13px;color:var(--caution);overflow-wrap:anywhere}.co-alt-head{margin:18px 2px 8px;font-size:12px;font-weight:700;color:var(--ink2)}.co-alt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:56px;padding:10px 0;border:none;border-top:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--body)}.co-alt:first-child{border-top:none}.co-alt-label{font-size:15px;font-weight:700}.co-alt-detail{font-size:12px;color:var(--ink2)}.build-badge{position:fixed;left:max(10px,env(safe-area-inset-left,0px));bottom:max(10px,env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:6px;padding:5px 9px;border-radius:8px;background:#0c0f14e6;border:1px solid rgba(255,255,255,.14);box-shadow:0 2px 10px #00000059;font-family:ui-monospace,SF Mono,Cascadia Code,Roboto Mono,Menlo,monospace;font-size:12.5px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--ink2);pointer-events:none;-webkit-user-select:none;user-select:none}.build-badge-glyph{opacity:.65;font-size:13px}.build-badge-time{color:var(--muted)}.test-copy-bar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:max(4px,env(safe-area-inset-top,0px)) 12px 4px;background:var(--danger);color:var(--bg);font:700 12px/1.3 var(--body);letter-spacing:.04em;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none}.es-wrap{position:fixed;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;gap:8px;width:min(92vw,520px)}.es-wrap--critical{top:calc(env(safe-area-inset-top,0px) + 16px + var(--es-top-offset, 0px))}@media (max-width: 767px){.es-wrap--critical{top:calc(env(safe-area-inset-top,0px) + 64px + var(--es-top-offset, 0px))}}.es-wrap--normal{top:calc(env(safe-area-inset-top,0px) + 8px)}@media (min-width: 768px){.es-wrap--normal{top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 16px)}}.es-toast{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--surface2);color:var(--ink);box-shadow:0 12px 34px #00000080;font-size:14px;border:1px solid rgba(255,255,255,.1);opacity:1;transform:translateY(0);transition:opacity .2s cubic-bezier(.23,1,.32,1),transform .2s cubic-bezier(.23,1,.32,1)}@starting-style{.es-toast{opacity:0;transform:translateY(-8px)}}.es-toast[data-exiting=true]{opacity:0;transform:translateY(-8px);transition-duration:.14s}@media (min-width: 768px){@starting-style{.es-wrap--normal .es-toast{transform:translateY(8px)}}.es-wrap--normal .es-toast[data-exiting=true]{transform:translateY(8px)}}.es-toast.es-inconsistent{border-color:color-mix(in srgb,var(--warm) 45%,transparent)}.es-toast--critical{background:#241a1c;border-color:color-mix(in srgb,var(--danger) 45%,transparent);border-left:4px solid var(--danger);padding-left:12px;animation:es-glow .7s ease-out 1}.es-glyph{flex-shrink:0;font-size:18px;line-height:1;color:#ff9a90}.es-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.es-title{font-weight:700;font-size:15px;line-height:1.25}.es-msg{min-width:0;line-height:1.4}.es-toast--critical .es-msg{font-size:13px;color:var(--ink2)}.es-toast.es-saved{background:#16241e;border-left:4px solid var(--accent)}.es-saved .es-glyph,.es-saved .es-title{color:var(--accent)}@keyframes es-glow{0%{box-shadow:0 12px 34px #00000080}22%{box-shadow:none}to{box-shadow:0 12px 34px #00000080}}@media (prefers-reduced-motion: reduce){.es-toast,.es-toast[data-exiting=true]{transform:none;transition:opacity .15s ease}@starting-style{.es-toast,.es-wrap--normal .es-toast{transform:none}}.es-toast--critical{animation:none}}.es-retry{background:var(--accent);color:var(--bg);border:none;border-radius:8px;padding:0 14px;font-weight:600;cursor:pointer;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;transition:transform .16s ease-out;flex-shrink:0}.es-retry:active{transform:scale(.97)}.es-retry:disabled{opacity:.6;cursor:default}.es-dismiss{background:transparent;border:none;color:#9099a6;cursor:pointer;font-size:15px;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}@media (hover: hover){.es-dismiss:hover{color:var(--ink)}}.es-dismiss-all{align-self:flex-end;background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--ink2);border-radius:8px;padding:0 14px;min-height:44px;font-size:12px;cursor:pointer}.es-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(12,15,20,.35);border-top-color:var(--bg);animation:es-spin .7s linear infinite}@keyframes es-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.es-spinner{animation-duration:1.4s}}.bb-banner{position:fixed;top:0;left:0;right:0;z-index:9800;display:flex;align-items:center;gap:12px;padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 10px;background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--ink);border-bottom:1px solid color-mix(in srgb,var(--danger) 50%,transparent);box-shadow:0 6px 20px #00000059;font-size:13px;transition:transform .2s cubic-bezier(.23,1,.32,1)}@starting-style{.bb-banner{transform:translateY(-100%)}}@media (prefers-reduced-motion:reduce){.bb-banner{transition:opacity .15s ease}@starting-style{.bb-banner{transform:none;opacity:0}}}.bb-msg{flex:1;min-width:0;line-height:1.4}.bb-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.bb-retry,.bb-signin{border-radius:8px;padding:0 12px;font-weight:600;cursor:pointer;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.bb-retry{background:var(--accent);color:var(--bg);border:none}.bb-signin{background:transparent;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent)}.bb-retry:active,.bb-signin:active{transform:scale(.97)}.bb-retry:disabled{opacity:.6;cursor:default}.bb-dismiss{background:transparent;border:none;color:var(--ink2);cursor:pointer;font-size:15px;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html{-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior:none}body{overscroll-behavior:none}button,[role=button],a,img,video{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true]{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}:where(button,a[href],[role=button],[role=tab],summary,.card-row--tappable):not(:disabled):not([aria-disabled=true]):active{filter:brightness(.82)}.send-btn{flex:none;width:var(--tap-min);height:var(--tap-min);border:none;border-radius:50%;background:var(--accent);color:var(--accent-on);font:800 18px/1 var(--body);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.send-btn:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 899px) and (prefers-reduced-motion: no-preference){.app-tabbar,.cv-nav{view-transition-name:tabbar}:root[data-slide]::view-transition-old(root),:root[data-slide]::view-transition-new(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.32,.72,0,1);animation-fill-mode:both;mix-blend-mode:normal}:root[data-slide=forward]::view-transition-new(root){animation-name:n4-in-from-right}:root[data-slide=forward]::view-transition-old(root){animation-name:n4-out-to-left}:root[data-slide=back]::view-transition-old(root){animation-name:n4-out-to-right;z-index:1}:root[data-slide=back]::view-transition-new(root){animation-name:n4-in-from-left}}@keyframes n4-in-from-right{0%{transform:translate(100%)}}@keyframes n4-out-to-left{to{transform:translate(-30%);opacity:.7}}@keyframes n4-out-to-right{to{transform:translate(100%)}}@keyframes n4-in-from-left{0%{transform:translate(-30%);opacity:.7}}html,body,#root{height:100%;margin:0;padding:0}input,textarea,select{font-size:16px}button,[role=button],select,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]){min-height:var(--tap-min);min-width:var(--tap-min)}.name-row{display:flex;align-items:center;min-width:0}.name-row-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}@media (hover: hover){::-webkit-scrollbar-thumb:hover{background:#ffffff38}}:root{--tap-min:44px;--kbd-inset:0px;--safe-bottom:env(safe-area-inset-bottom, 0px);--safe-bottom-open:max(0px, calc(env(safe-area-inset-bottom, 0px) - var(--kbd-inset, 0px)));--screen-h:100vh;--bg:#0B0C0E;--surface:#1F2328;--surface2:#2F343B;--bg2:#070809;--surface3:#3A4048;--ink:#F4F3EF;--ink2:#C3C7CD;--muted:#A7ABB2;--line:#454C55;--line2:#2F343B;--caution:#F0A860;--caution-soft:rgba(240,168,96,.12);--caution-line:rgba(240,168,96,.32);--notice:#9CC3F0;--notice-soft:rgba(156,195,240,.12);--notice-line:rgba(156,195,240,.3);--warm:#E39A74;--warm-soft:rgba(227,154,116,.12);--warm-on:#24140B;--danger:#FF8F85;--danger-soft:rgba(255,143,133,.1);--accent:#6FD3A0;--accent-hover:#8FE0B6;--accent-ink:#6FD3A0;--accent-on:#0B1F14;--accent-soft:rgba(111,211,160,.14);--celebrate:#F2C46D;--celebrate-soft:#2E2717;--hero:#173126;--illo-line:var(--ink2);--illo-soft:var(--muted);--heading:"Manrope",system-ui,-apple-system,sans-serif;--body:"Manrope",system-ui,-apple-system,sans-serif;--num:"Manrope",system-ui,-apple-system,sans-serif;--fs-display:76px;--fs-title:28px;--fs-heading:22px;--fs-subhead:18px;--fs-body:15px;--fs-small:13px;--fs-label:12px;--fw-title:800;--fw-heading:700;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--r1:8px;--r2:10px;--r3:12px;--r4:16px;--ease:cubic-bezier(.23, 1, .32, 1);--spring:cubic-bezier(.32, .72, 0, 1);--dur-pop:.2s;--dur-fill:.4s;--dur-celebrate:.6s;--accent-top:#9BE6BF;--glow-hero:radial-gradient(130% 95% at 0% 0%, color-mix(in srgb, var(--accent) 26%, transparent) 0%, transparent 58%);--grad-primary:linear-gradient(180deg, var(--accent-top) 0%, var(--accent) 100%);--shadow-primary:0 8px 24px color-mix(in srgb, var(--accent) 30%, transparent);--card-edge:inset 0 1px 0 color-mix(in srgb, var(--ink) 5%, transparent);--glow-progress:drop-shadow(0 0 5px color-mix(in srgb, var(--accent) 55%, transparent));--sidebar-w:220px;--sidebar-collapsed:60px;--topbar-h:52px}@supports (height: 100dvh){:root{--screen-h:100dvh }}h1,h2,h3,h4{font-family:var(--heading);font-weight:600;letter-spacing:-.01em}.app-shell{display:flex;height:var(--screen-h);overflow:hidden}.app-sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);height:var(--screen-h);background:var(--bg2);border-right:1px solid var(--line);display:flex;flex-direction:column;transition:width .2s,min-width .2s;overflow:hidden;flex-shrink:0;z-index:20}.app-sidebar.collapsed{width:var(--sidebar-collapsed);min-width:var(--sidebar-collapsed)}.app-sb-logo{display:flex;align-items:center;gap:9px;padding:14px 16px;cursor:pointer;border-bottom:1px solid var(--line);height:var(--topbar-h);flex-shrink:0}.app-sb-mark{width:26px;height:26px;border-radius:8px;flex-shrink:0;background:var(--accent);color:var(--accent-on);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;font-family:var(--heading);box-shadow:none}.app-sb-wordmark{font-family:var(--heading);font-weight:700;font-size:15px;letter-spacing:-.02em;color:var(--ink)}.app-sb-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:10px 8px;overflow-y:auto}.app-sb-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:9px 12px;border-radius:10px;border:none;background:none;cursor:pointer;color:var(--muted);font-weight:600;font-size:13.5px;font-family:inherit;transition:color .12s,background .12s;white-space:nowrap;position:relative}@media (hover: hover){.app-sb-item:hover{color:var(--ink2);background:var(--line2)}}.app-sb-item.on{color:var(--accent-ink);background:var(--accent-soft)}.app-sb-icon{width:22px;text-align:center;font-size:16px;flex-shrink:0}.app-sb-label{overflow:hidden;text-overflow:ellipsis}.app-sidebar.collapsed .app-sb-label,.app-sidebar.collapsed .app-sb-wordmark{display:none}.app-sidebar.collapsed .app-sb-logo{justify-content:center;padding:14px 0}.app-sidebar.collapsed .app-sb-item{justify-content:center;padding:9px 0}.app-sb-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;flex-shrink:0;background:var(--caution);color:var(--bg);font-size:10px;font-weight:700;font-family:var(--body);display:flex;align-items:center;justify-content:center;line-height:1}.app-sidebar.collapsed .app-sb-badge{position:absolute;top:4px;right:4px;margin-left:0}.app-sb-coach{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:none;background:none;cursor:pointer;border-top:1px solid var(--line);flex-shrink:0;font-family:inherit;transition:background .12s}@media (hover: hover){.app-sb-coach:hover{background:var(--line2)}}.app-sb-coach-avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;background:var(--accent-soft);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-family:var(--body);font-size:11px;font-weight:700}.app-sb-coach-name{font-size:13px;font-weight:600;color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar.collapsed .app-sb-coach{justify-content:center;padding:12px 0}.app-sidebar.collapsed .app-sb-coach-name{display:none}.app-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.app-topbar{height:var(--topbar-h);min-height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 20px;background:var(--bg2);border-bottom:1px solid var(--line);flex-shrink:0}.app-section-title{font-family:var(--heading);font-weight:600;font-size:16px;letter-spacing:-.02em;color:var(--ink)}.app-topbar-actions{margin-left:auto;display:flex;align-items:center}.app-content{flex:1;overflow-y:auto;overflow-x:hidden}.app-route-notice{display:flex;align-items:center;gap:var(--s3);margin:var(--s3) var(--s4) 0;padding:var(--s2) var(--s2) var(--s2) var(--s4);background:var(--notice-soft);border:1px solid var(--notice-line);border-radius:var(--r2);color:var(--ink);font-size:14px;line-height:1.4}.app-route-notice>span{flex:1;min-width:0}.app-route-notice-ok{flex:none;min-width:var(--tap-min);min-height:var(--tap-min);padding:0 var(--s3);background:none;border:none;border-radius:var(--r2);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.stub-view{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--muted);text-align:center;padding:40px 20px}.stub-icon{font-size:48px;margin-bottom:16px;opacity:.4}.stub-view h2{font-family:var(--heading);font-size:20px;font-weight:600;color:var(--ink2);margin:0 0 6px}.stub-view p{font-size:14px;max-width:340px;line-height:1.5}.cdd{position:relative;display:inline-flex}.cdd:focus{outline:none}.cdd:focus-visible .cdd-trigger{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.cdd-trigger{min-width:var(--tap-min);min-height:var(--tap-min);display:flex;align-items:center;gap:4px;background:var(--surface2);border:1px solid transparent;border-radius:8px;padding:5px 8px 5px 10px;color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:border-color .12s}@media (hover: hover){.cdd-trigger:hover{border-color:#ffffff29}}.cdd-val{flex:1;overflow:hidden;text-overflow:ellipsis}.cdd-arrow{font-size:9px;color:var(--muted);flex-shrink:0}.cdd-menu{position:absolute;top:100%;left:0;z-index:60;margin-top:4px;min-width:100%;width:max-content;max-width:280px;max-height:260px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid transparent;border-radius:10px;padding:4px;box-shadow:0 12px 36px #0000008c;list-style:none}.cdd-opt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 10px;border-radius:7px;font-size:12.5px;font-weight:500;color:var(--ink2);cursor:pointer;transition:background .08s;font-family:inherit;border:none;background:none;white-space:nowrap}.cdd-opt.hl{background:var(--accent-soft);color:var(--accent-ink)}@media (hover: hover){.cdd-opt:hover{background:var(--accent-soft);color:var(--accent-ink)}}.cdd-opt.on{font-weight:700;color:var(--accent-ink)}.cdd-divider{font-size:12px;color:var(--muted);font-weight:700;padding:6px 10px 2px;pointer-events:none;-webkit-user-select:none;user-select:none}.cdd--open{z-index:100}.cdd-search{width:100%;background:var(--surface2);border:1px solid var(--line);border-radius:7px;padding:7px 10px;font-size:16px;font-weight:500;color:var(--ink);font-family:inherit;margin-bottom:4px;outline:none}.cdd-search:focus{box-shadow:inset 0 0 0 1px var(--accent)}.cdd-empty{padding:12px 10px;text-align:center;font-size:12px;color:var(--muted);font-weight:500}.cdd-menu--portal{position:fixed;top:auto;left:auto;margin-top:0;z-index:9999}.te-measuretype-dd .cdd-trigger,.te-loadmethod-dd .cdd-trigger{padding:4px 5px 4px 6px;font-size:10px;font-weight:700;font-family:var(--num);font-variant-numeric:tabular-nums;border-radius:6px;min-width:44px}.te-measuretype-dd .cdd-menu,.te-loadmethod-dd .cdd-menu{min-width:70px}.te-secname-dd{flex:1}.te-secname-dd .cdd-trigger{font-size:12px;font-weight:700;color:var(--ink2);background:transparent;border-color:transparent;padding:5px 8px}@media (hover: hover){.te-secname-dd .cdd-trigger:hover{border-color:var(--line)}}.te-secname-label{min-width:var(--tap-min);min-height:var(--tap-min);font-size:12px;font-weight:700;color:var(--ink2);padding:5px 0;cursor:pointer;transition:color .12s}@media (hover: hover){.te-secname-label:hover{color:var(--ink)}}.te-secname-edit{flex:none}.te-secname-edit{margin-left:-4px}.te-secname-edit .cdd-trigger{background:transparent;border:none;padding:2px 4px;font-size:12px;color:var(--muted);opacity:.5;transition:opacity .12s}@media (hover: hover){.te-secname-edit .cdd-trigger:hover{opacity:1;border:none}}.te-secname-edit .cdd-arrow{display:none}.te-secname-input{font-size:16px;font-weight:700;color:var(--ink);background:var(--surface2);border:1px solid var(--accent);border-radius:6px;padding:5px 8px;outline:none;min-width:120px;font-family:inherit}.te-patsel-dd{flex:1}.te-patsel-dd .cdd-trigger{font-size:13px;font-weight:600}.tp-addex-dd{width:100%}.tp-addex-dd .cdd-trigger{width:100%;padding:7px 10px;font-size:13px;border-radius:8px}.el-fdd{width:100%}.el-fdd .cdd-trigger{width:100%;padding:9px 12px;font-size:13px;border-radius:9px}.pv-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;flex-direction:column;background:var(--bg);animation:pv-in .2s ease}@keyframes pv-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.pv-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;flex-shrink:0;background:#d97706;color:#1a1207;font-size:12.5px;font-weight:700;font-family:inherit;letter-spacing:-.01em;box-shadow:none}.pv-banner-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv-banner-exit{background:#0000002e;border:none;cursor:pointer;padding:5px 12px;flex-shrink:0;border-radius:6px;font-size:11px;font-weight:700;color:#1a1207;font-family:inherit;transition:.12s;white-space:nowrap}@media (hover: hover){.pv-banner-exit:hover{background:#0000004d}}.pv-frame{flex:1;overflow:hidden;display:flex;max-width:480px;margin:0 auto;width:100%}.app-shell{--coach-bar-h:0px}@media (max-width:900px){.app-sidebar{display:none}.app-shell{--coach-bar-h:calc(78px + var(--safe-bottom-open))}.app-content{padding-bottom:var(--coach-bar-h)}}.action-primary{background-color:var(--accent);background-image:var(--grad-primary);color:var(--accent-on);border:0;box-shadow:var(--shadow-primary)}@keyframes pop-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.pop-in{animation:pop-in var(--dur-pop) var(--ease) both}@keyframes ring-out{0%{opacity:.55;transform:scale(.95)}to{opacity:0;transform:scale(1.7)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.boot{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--bg)}.boot-mark{width:40px;height:40px;border-radius:8px;background:var(--accent);color:var(--accent-on);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;font-family:var(--heading);animation:boot-breathe 1.6s ease-in-out infinite}@keyframes boot-breathe{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion: reduce){.boot-mark{animation:none}}.app-wait{display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;min-height:300px;text-align:center}
