:root{--bg:#f2f6f4;--surface:#fff;--surface-2:#e6efea;--surface-3:#d6e4dc;--border:#c6d8ce;--text:#0f241b;--text-muted:#44604f;--accent:var(--accent-l,#0d7a50);--accent-strong:var(--accent-strong-l,#0a613f);--accent-soft:var(--accent-soft-l,#d3eee1);--on-accent:var(--on-accent-l,#fff);--ok:#0b6b46;--ok-soft:#d3eee1;--flame:#c2410c;--flame-soft:#ffedd5;--warn:#8a5a00;--warn-soft:#fff1d6;--danger:#b3261e;--danger-soft:#fde4e1;--focus:#1663d6;--kcal:#0d7a50;--protein:#b86e00;--carbs:#16649a;--fat:#ab7cec;--chart-mark:#0d7a50;--chart-grid:#c9d9d0;--shadow:0 1px 2px #0000000f, 0 4px 16px #0000000f;--radius:16px;--radius-sm:10px;--tabbar-h:64px;--col-max:560px;--gutter:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.45}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b1a14;--surface:#11251c;--surface-2:#173226;--surface-3:#1f4031;--border:#2a4e3f;--text:#e8f3ee;--text-muted:#a3bfb3;--accent:var(--accent-d,#3ddc97);--accent-strong:var(--accent-strong-d,#6ae8b1);--accent-soft:var(--accent-soft-d,#163f2e);--on-accent:var(--on-accent-d,#04170f);--ok:#3ddc97;--ok-soft:#163f2e;--flame:#fb923c;--flame-soft:#3b2412;--warn:#f5c062;--warn-soft:#3a2c10;--danger:#ff8a80;--danger-soft:#3d1714;--focus:#8cc8ff;--kcal:#25a874;--protein:#c98418;--carbs:#2a7fa8;--fat:#a078e2;--chart-mark:#25a874;--chart-grid:#234536;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b1a14;--surface:#11251c;--surface-2:#173226;--surface-3:#1f4031;--border:#2a4e3f;--text:#e8f3ee;--text-muted:#a3bfb3;--accent:var(--accent-d,#3ddc97);--accent-strong:var(--accent-strong-d,#6ae8b1);--accent-soft:var(--accent-soft-d,#163f2e);--on-accent:var(--on-accent-d,#04170f);--ok:#3ddc97;--ok-soft:#163f2e;--flame:#fb923c;--flame-soft:#3b2412;--warn:#f5c062;--warn-soft:#3a2c10;--danger:#ff8a80;--danger-soft:#3d1714;--focus:#8cc8ff;--kcal:#25a874;--protein:#c98418;--carbs:#2a7fa8;--fat:#a078e2;--chart-mark:#25a874;--chart-grid:#234536;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;margin:0}html{scroll-padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 32px)}body{overscroll-behavior-y:none}h1,h2,h3,p{margin:0}h1{font-size:1.375rem;line-height:1.2}h2{font-size:1.0625rem}h3{font-size:1rem}a{color:var(--accent)}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app{max-width:var(--col-max);flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.screen{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px);flex-direction:column;flex:1;display:flex}.screen-header{z-index:10;min-height:60px;padding:calc(8px + env(safe-area-inset-top)) var(--gutter) 8px;background:var(--bg);border-bottom:1px solid #0000;align-items:center;gap:8px;display:flex;position:sticky;top:0}.screen-header h1{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;flex:1;min-width:0;line-height:1.15}.screen-header .subtitle{color:var(--text-muted);font-size:.8125rem;font-weight:500;display:block}.content{padding:8px var(--gutter) 0;flex-direction:column;gap:16px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.stack-sm{flex-direction:column;gap:6px;display:flex}.row{align-items:center;gap:8px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.switch-row{align-items:center;gap:12px;min-height:56px;display:flex}.switch{appearance:none;border:1px solid var(--border);background:var(--surface-3);cursor:pointer;border-radius:999px;flex-shrink:0;width:52px;height:32px;margin:0;transition:background-color .2s;position:relative}.switch:after{content:"";background:var(--surface);border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch:checked{background:var(--accent);border-color:var(--accent)}.switch:checked:after{transform:translate(20px)}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.workout-actions .btn{text-align:center;min-height:52px;padding:6px 10px;line-height:1.2}.muted{color:var(--text-muted)}.small{font-size:.875rem}.tiny{font-size:.75rem}.strong{font-weight:700}.center{text-align:center}.nums{font-variant-numeric:tabular-nums}.section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.8125rem;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:16px;display:flex}.card-button{text-align:left;width:100%;color:inherit;cursor:pointer;text-decoration:none;transition:background-color .15s,transform .1s}.card-button:hover{background:var(--surface-2)}.card-button:active{transform:scale(.99)}.card-header{align-items:center;gap:8px;display:flex}.card-header h2,.card-header h3{flex:1}.card-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.big-number{font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:750;line-height:1.1}.big-number .unit{color:var(--text-muted);margin-left:4px;font-size:.9375rem;font-weight:600}.btn{border:1px solid var(--border);background:var(--surface-2);min-height:48px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:650;text-decoration:none;transition:background-color .15s,transform .1s,opacity .15s;display:inline-flex}.btn:hover{background:var(--surface-3)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-strong)}.btn-danger{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2)}.btn-block{width:100%}.btn-sm{min-height:40px;padding:0 14px;font-size:.9375rem}.icon-btn{width:44px;height:44px;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;place-items:center;display:inline-grid}.icon-btn:hover,.icon-btn.filled{background:var(--surface-2)}.link-btn{min-height:44px;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:8px 0;font-weight:650}.field{flex-direction:column;gap:6px;display:flex}.field>label,.field>.label{font-size:.9375rem;font-weight:600}.field .hint{color:var(--text-muted);font-size:.8125rem}.field .error,.error{color:var(--danger);font-size:.875rem;font-weight:600}.input,.select,.textarea{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--text);padding:10px 14px}.input[aria-invalid=true]{border-color:var(--danger);border-width:2px}.textarea{resize:vertical;min-height:80px}.input-with-unit{align-items:center;display:flex;position:relative}.input-with-unit .input{padding-right:56px}.input-with-unit .unit{color:var(--text-muted);pointer-events:none;font-weight:600;position:absolute;right:14px}.checkbox-row{cursor:pointer;align-items:center;gap:12px;min-height:44px;display:flex}.checkbox-row input{width:22px;height:22px;accent-color:var(--accent)}.choice-list{flex-direction:column;gap:8px;display:flex}.choice{border-radius:var(--radius-sm);border:2px solid var(--border);background:var(--surface);text-align:left;cursor:pointer;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;display:flex}.choice[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.choice .radio-dot{border:2px solid var(--text-muted);border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;display:grid}.choice[aria-checked=true] .radio-dot{border-color:var(--accent)}.choice[aria-checked=true] .radio-dot:after{content:"";background:var(--accent);border-radius:50%;width:10px;height:10px}.choice .choice-desc{color:var(--text-muted);font-size:.8125rem;display:block}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;gap:4px;padding:4px;display:flex}.segmented button{min-height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;font-weight:650}.segmented button[aria-pressed=true],.segmented button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow);outline:1px solid var(--border)}.chip{background:var(--surface-2);border:1px solid var(--border);min-height:26px;color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.8125rem;font-weight:600;display:inline-flex}.chip-accent{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.pr-badge{background:var(--warn-soft);border:1px solid var(--warn);color:var(--warn);letter-spacing:.04em;border-radius:6px;align-items:center;gap:3px;padding:1px 7px;font-size:.75rem;font-weight:800;display:inline-flex}.list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list-item{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:56px;padding:10px 0;display:flex}.list-item:last-child{border-bottom:none}.list-button{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 4px;display:flex}.list-button:hover{background:var(--surface-2)}.list-title{overflow-wrap:break-word;font-weight:650}.list-sub{color:var(--text-muted);font-size:.8125rem}.progress{flex-direction:column;gap:4px;display:flex}.progress-track{background:var(--surface-3);border-radius:999px;height:10px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:999px;height:100%;transition:transform .3s}.progress-fill.over{background:repeating-linear-gradient(45deg, var(--warn) 0 6px, var(--accent) 6px 12px)}.progress-label{justify-content:space-between;gap:8px;font-size:.8125rem;display:flex}.macro-dot{border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;padding:20px 12px;display:flex}.empty-state .empty-title{color:var(--text);font-weight:700}.banner{border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--accent);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.banner.warn{background:var(--warn-soft);border-color:var(--warn)}.banner.danger{background:var(--danger-soft);border-color:var(--danger)}.banner .banner-icon{flex-shrink:0;margin-top:2px}.sync-status{align-items:center;gap:10px;font-weight:700;display:flex}.sync-dot{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:12px;height:12px}.sync-dot.ok{background:var(--ok)}.sync-dot.busy{border:2px solid var(--ok);background:0 0}.sync-dot.warn{background:var(--warn)}.sync-dot.danger{background:var(--danger)}.code-text{overflow-wrap:anywhere;font-family:ui-monospace,Cascadia Mono,Consolas,monospace}.notice{color:var(--text-muted);border-left:3px solid var(--border);padding-left:10px;font-size:.8125rem}.tabbar{width:100%;max-width:var(--col-max);z-index:30;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--surface);border-top:1px solid var(--border);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{min-width:0;min-height:48px;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:650;text-decoration:none;display:flex}.tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tab[aria-current=page]{color:var(--accent);font-weight:750}.tab[aria-current=page] .tab-icon{background:var(--accent-soft)}.tab-icon{border-radius:999px;place-items:center;width:min(56px,100%);height:30px;transition:background-color .2s;display:grid}.tab:focus-visible{outline-offset:-4px}@media (prefers-reduced-motion:reduce){.tab-icon{transition:none}}.workout-pill{left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 10px);z-index:25;background:var(--accent);min-height:48px;color:var(--on-accent);white-space:nowrap;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:10px;padding:0 18px;font-weight:700;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #00000040}.update-banner{top:calc(8px + env(safe-area-inset-top));z-index:40;background:var(--surface);width:min(92vw,520px);position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000040}dialog.dialog{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:min(92vw,440px);color:var(--text);padding:20px}dialog.dialog::backdrop{background:#0000008c}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.toast-region{left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 70px);z-index:60;pointer-events:none;flex-direction:column;gap:8px;width:min(92vw,520px);display:flex;position:fixed;transform:translate(-50%)}.toast{pointer-events:auto;border-radius:var(--radius-sm);background:var(--text);color:var(--bg);align-items:center;gap:12px;padding:12px 16px;font-weight:600;animation:.2s ease-out toast-in;display:flex;box-shadow:0 6px 20px #00000040}.toast button{color:inherit;cursor:pointer;background:0 0;border:none;min-height:36px;margin-left:auto;font-weight:800;text-decoration:underline}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.overlay{z-index:50;background:var(--bg);justify-content:center;display:flex;position:fixed;inset:0}.overlay:focus{outline:none}.overlay-inner{width:100%;max-width:var(--col-max);flex-direction:column;height:100dvh;display:flex}.overlay-body{padding:0 var(--gutter) 24px;flex:1;overflow-y:auto}.overlay-footer{padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface)}.workout-top{z-index:15;background:var(--bg);padding:calc(8px + env(safe-area-inset-top)) var(--gutter) 10px;border-bottom:1px solid var(--border);flex-direction:column;gap:10px;display:flex;position:sticky;top:0}.rest-timer{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:8px;padding:8px 10px;display:flex}.rest-timer.running{background:var(--accent-soft);border-color:var(--accent)}.rest-timer.finished{background:var(--warn-soft);border-color:var(--warn)}.rest-timer .time{font-variant-numeric:tabular-nums;min-width:70px;font-size:1.5rem;font-weight:800}.rest-progress{background:var(--surface-3);border-radius:999px;height:4px;overflow:hidden}.rest-progress>div{background:var(--accent);height:100%}.exercise-card{gap:8px;padding:12px}.exercise-name-btn{text-align:left;min-width:0;min-height:44px;color:var(--accent);cursor:pointer;background:0 0;border:none;flex:1;padding:0;font-size:1.0625rem;font-weight:750}.set-table{border-collapse:separate;border-spacing:0 4px;font-variant-numeric:tabular-nums;width:100%}.set-table th{color:var(--text-muted);text-align:center;letter-spacing:.04em;padding:0 2px;font-size:.75rem;font-weight:700}.set-table td{text-align:center;padding:0 2px}.set-table tr.done td{background:var(--accent-soft)}.set-table tr.done td:first-child{border-radius:8px 0 0 8px}.set-table tr.done td:last-child{border-radius:0 8px 8px 0}.set-table .set-no{width:40px;font-weight:800}.set-table .prev{color:var(--text-muted);white-space:nowrap;font-size:.8125rem}.set-input{text-align:center;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;width:100%;max-width:76px;min-height:44px;padding:0 4px;font-size:1rem;font-weight:700}.set-input::placeholder{color:var(--text-muted);opacity:.8;font-weight:500}.check-btn{border:2px solid var(--border);background:var(--surface-2);cursor:pointer;width:44px;height:44px;color:var(--text-muted);border-radius:10px;place-items:center;display:inline-grid}.check-btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.exercise-thumb{object-fit:cover;background:var(--surface-2);border-radius:10px;flex-shrink:0;width:56px;height:56px}.exercise-media{border-radius:var(--radius);aspect-ratio:4/3;background:#f4f4f4;position:relative;overflow:hidden}.exercise-media img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.exercise-media.animate img.frame-2{animation:2.4s step-end infinite frame-swap}@keyframes frame-swap{0%{opacity:0}50%{opacity:1}}.exercise-media .frame-label{color:#fff;background:#0009;border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:700;position:absolute;bottom:8px;right:8px}.legend{flex-wrap:wrap;gap:16px;font-size:.8125rem;display:flex}.legend-swatch{vertical-align:-2px;border:1px solid var(--border);border-radius:3px;width:14px;height:14px;margin-right:6px;display:inline-block}.ordered{flex-direction:column;gap:8px;margin:0;padding-left:22px;display:flex}.chart{width:100%;height:auto;display:block;overflow:visible}.chart text{fill:var(--text-muted);font-family:inherit;font-size:10px}.chart .grid-line{stroke:var(--chart-grid);stroke-width:1px}.chart .target-line{stroke:var(--text-muted);stroke-width:1.5px;stroke-dasharray:5 4}.chart .target-label{fill:var(--text);font-weight:700}.chart .bar{fill:var(--chart-mark)}.chart .bar.dim{opacity:.45}.chart .line{fill:none;stroke:var(--chart-mark);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .point{fill:var(--chart-mark);stroke:var(--surface);stroke-width:2px}.chart .hit{fill:#0000;cursor:pointer}.chart .cursor{stroke:var(--text-muted);stroke-width:1px}.chart .tip-bg{fill:var(--text)}.chart .tip-text{fill:var(--bg);font-size:11px;font-weight:700}.chart-card{background:var(--surface)}.chart-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.875rem}.chart-table th,.chart-table td{text-align:left;border-bottom:1px solid var(--border);padding:6px 4px}.chart-table td:last-child,.chart-table th:last-child{text-align:right}details.table-toggle summary{cursor:pointer;min-height:44px;color:var(--accent);align-items:center;font-size:.875rem;font-weight:650;display:flex}.onboarding{max-width:var(--col-max);min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) var(--gutter) calc(24px + env(safe-area-inset-bottom));flex-direction:column;gap:20px;margin:0 auto;display:flex}.steps-indicator{gap:6px;display:flex}.steps-indicator span{background:var(--surface-3);border-radius:999px;flex:1;height:6px}.steps-indicator span.active{background:var(--accent)}.result-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.stat{background:var(--surface-2);border-radius:var(--radius-sm);padding:10px 12px}.stat .stat-label{color:var(--text-muted);font-size:.8125rem;font-weight:600}.stat .stat-value{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:750}.food-entry{border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:10px;width:100%;min-height:56px;padding:8px 4px;display:flex}.food-entry:hover{background:var(--surface-2)}.macro-line{color:var(--text-muted);font-size:.8125rem}.date-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.date-nav .date-label{text-align:center;flex:1;font-weight:700}@media (width>=600px){.app{border-left:1px solid var(--border);border-right:1px solid var(--border)}}.nutrition-card{gap:8px}.pager{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;margin:0 -4px;display:flex;position:relative;overflow-x:auto}.pager::-webkit-scrollbar{display:none}.pager-page{scroll-snap-align:start;flex-direction:column;flex:0 0 100%;gap:10px;min-width:0;padding:4px;display:flex}.rings{grid-template-columns:repeat(auto-fit,minmax(min(100%,4rem),1fr));justify-items:center;gap:12px 6px;display:grid}.ring{cursor:pointer;text-align:center;background:0 0;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:2px;width:100%;max-width:96px;min-height:44px;padding:4px 0 6px;display:flex}.ring:hover{background:var(--surface-2)}.ring-figure{aspect-ratio:1;place-items:center;width:100%;max-width:88px;display:grid;position:relative;container-type:inline-size}.ring-figure>*{grid-area:1/1}.ring-svg{width:100%;height:100%;overflow:visible}.ring-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex}.ring-track{fill:none;stroke:var(--surface-3);stroke-width:9px}.ring-arc{fill:none;stroke-width:9px;stroke-linecap:round;transition:stroke-dashoffset .6s cubic-bezier(.22,1,.36,1)}.ring-overflow{fill:none;stroke-width:3.5px;stroke-linecap:round;transition:stroke-dashoffset .6s cubic-bezier(.22,1,.36,1) .2s}.ring-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:23cqw;font-weight:750}.ring-value-long{font-size:19cqw}.ring-unit{color:var(--text-muted);margin-top:2px;font-size:12cqw;font-weight:600}.ring-label{font-size:.8125rem;font-weight:700}.ring-sub{color:var(--text-muted);white-space:nowrap;font-size:.75rem;line-height:1.25}.ring-over{color:var(--text);font-weight:700}.soft-note{border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--text);align-items:center;gap:6px;padding:6px 10px;font-size:.8125rem;display:flex}.pager-dots{justify-content:center;gap:4px;display:flex}.pager-dots button{cursor:pointer;background:0 0;border:none;place-items:center;width:44px;height:28px;display:grid}.pager-dots span{background:var(--surface-3);border-radius:50%;width:8px;height:8px;transition:transform .2s,background-color .2s}.pager-dots button[aria-current=true] span{background:var(--text);transform:scale(1.25)}.week{flex-direction:column;gap:8px;display:flex}.week-bars{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:6px;margin:0;padding:0;list-style:none;display:grid}.week-col{flex-direction:column;align-items:center;gap:4px;display:flex}.week-value{color:var(--text-muted);font-size:.6875rem}.week-track{align-items:flex-end;width:100%;max-width:28px;height:72px;display:flex;position:relative}.week-bar{background:color-mix(in srgb, var(--kcal) 45%, var(--surface));border-radius:4px 4px 0 0;width:100%}.week-col.today .week-bar{background:var(--kcal)}.week-target{border-top:2px dashed var(--text-muted);z-index:1;height:0;position:absolute;left:-3px;right:-3px}.week-day{color:var(--text-muted);font-size:.75rem}.week-col.today .week-day,.week-col.today .week-value{color:var(--text);font-weight:700}.share-track{background:var(--surface-3);border-radius:999px;height:6px;margin-top:6px;overflow:hidden}.share-track span{border-radius:999px;height:100%;display:block}dialog.sheet{width:100%;max-width:var(--col-max);border:1px solid var(--border);background:var(--surface);max-height:85dvh;color:var(--text);border-bottom:none;border-radius:20px 20px 0 0;margin:auto auto 0;padding:0;overflow-y:auto}dialog.sheet::backdrop{background:#00000080}.sheet-body{padding:8px 16px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex}.sheet-handle{background:var(--surface-3);border-radius:999px;align-self:center;width:40px;height:4px}@keyframes sheet-in{0%{transform:translateY(100%)}}.big-number-sm{white-space:nowrap;font-size:1.375rem}.pager-page:first-child{justify-content:center}:root{--body-skin:#f1f3f4;--body-outline:#5d6a73;--muscle:#cdd4d8;--muscle-line:#7f8c95;--body-hair:#6b7780;--hl:#0d7a50;--hl-glow:#0d7a5073;--band-low:#93d3b6;--band-mid:#4fb38c;--band-high:#0b6b46}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--body-skin:#d5dbdf;--body-outline:#e9eef1;--muscle:#66727a;--muscle-line:#232b31;--body-hair:#8b979f;--hl:#2fbf82;--hl-glow:#3ddc978c;--band-low:#2a7d5f;--band-mid:#36c487;--band-high:#a9f2cf}}:root[data-theme=dark]{--body-skin:#d5dbdf;--body-outline:#e9eef1;--muscle:#66727a;--muscle-line:#232b31;--body-hair:#8b979f;--hl:#2fbf82;--hl-glow:#3ddc978c;--band-low:#2a7d5f;--band-mid:#36c487;--band-high:#a9f2cf}.body-figure{width:100%;height:auto;display:block;overflow:visible}.body-silhouette path{fill:var(--muscle-line);stroke:var(--body-outline);stroke-width:7px;stroke-linejoin:round}.m-neutral,.m-region{--cell:var(--muscle)}.m-region[data-state=secondary]{--cell:color-mix(in srgb, var(--hl) 40%, var(--muscle))}.m-region[data-state=primary]{--cell:var(--hl)}.m-region[data-status=fresh]{--cell:var(--rec-fresh)}.m-region[data-status=recovering]{--cell:var(--rec-mid)}.m-region[data-status=tired]{--cell:var(--rec-tired)}.m-region[data-fill]{--cell:var(--m-fill)}.m-grow{fill:var(--cell);stroke:var(--cell);stroke-width:4px;stroke-linejoin:round;pointer-events:none}.m-fill{fill:var(--cell);stroke:none;transition:fill .25s ease-out}.m-hit{fill:#0000;stroke:#0000;stroke-width:28px;stroke-linejoin:round;pointer-events:all}.body-skin path{fill:var(--body-skin);stroke:var(--muscle-line);stroke-width:2px;stroke-linejoin:round;pointer-events:none}.body-skin .body-hair{fill:var(--body-hair)}.m-neutral{pointer-events:none}.body-figure.is-interactive .m-region{cursor:pointer;outline:none}.body-figure.is-interactive .m-region:hover .m-fill,.body-figure.is-interactive .m-region:focus-visible .m-fill{stroke:var(--focus);stroke-width:5px}.m-region[data-status][data-state=primary] .m-fill,.m-region[data-fill][data-state=primary] .m-fill{stroke:var(--text);stroke-width:6px}@media (prefers-reduced-motion:reduce){.m-fill{transition:none}}.muscles-figures{grid-template-columns:1fr 1fr;gap:12px;display:grid}.muscles-figures figure{flex-direction:column;align-items:center;gap:4px;margin:0;display:flex}.muscles-figures .body-figure{max-width:190px}.swatch-primary{background:var(--hl)}.swatch-secondary{background:color-mix(in srgb, var(--hl) 40%, var(--muscle))}.chip-primary{background:var(--accent-soft);border-color:var(--hl);color:var(--text);font-weight:700}.chip-secondary{color:var(--text);background:0 0;border-style:dashed}.overlay-body{position:relative}.ex-browser{flex-direction:column;gap:12px;display:flex}.search-box{align-items:center;display:flex;position:relative}.search-box>svg{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.search-box .input{padding-left:44px}.chip-scroller{scrollbar-width:none;margin:0 calc(-1 * var(--gutter));padding:2px var(--gutter);overscroll-behavior-x:contain;gap:8px;display:flex;overflow-x:auto}.chip-scroller::-webkit-scrollbar{display:none}.chip-wrap{flex-wrap:wrap;gap:6px;display:flex}.filter-chip{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:0 14px;font-size:.875rem;font-weight:600;transition:background-color .15s,border-color .15s}.filter-chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);font-weight:750}.fold{opacity:1;grid-template-rows:1fr;transition:opacity .2s;display:grid}.fold.is-folded{opacity:0;grid-template-rows:0fr}.fold-inner{min-height:0;overflow:hidden}.muscle-picker{gap:10px}.muscle-picker .segmented{width:160px}.picker-figure{justify-content:center;display:flex}.picker-figure .body-figure{width:auto;height:min(46vh,340px)}.muscle-bar{z-index:5;margin:0 calc(-1 * var(--gutter));padding:6px var(--gutter);background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:4px;animation:.2s ease-out fade-in;display:flex;position:sticky}.muscle-bar-main{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;align-items:center;gap:10px;min-width:0;min-height:56px;padding:4px;display:flex}.muscle-bar-main:hover{background:var(--surface-2)}.muscle-bar-figure{flex-shrink:0;width:24px;height:52px;display:block}.ex-row{border-bottom:1px solid var(--border);content-visibility:auto;contain-intrinsic-size:auto 68px;align-items:center;gap:4px;display:flex}.ex-row:last-child{border-bottom:none}.ex-row-main{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;align-items:center;gap:12px;min-width:0;min-height:64px;padding:6px 4px;display:flex}.ex-row-main:hover{background:var(--surface-2)}.ex-thumb{background:var(--surface-2);border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:56px;display:grid}.ex-thumb .mini-body,.muscle-bar-figure .mini-body{width:auto;height:100%}.mini-base{fill:var(--muscle);stroke:var(--body-outline);stroke-width:18px;stroke-linejoin:round;paint-order:stroke}.mini-skin{fill:var(--body-skin)}.mini-hair{fill:var(--body-hair)}.mini-primary{fill:var(--hl)}.mini-secondary{fill:var(--hl);opacity:.4}.add-pill{border:2px solid var(--accent);width:40px;height:40px;color:var(--accent);border-radius:999px;flex-shrink:0;place-items:center;transition:background-color .15s,color .15s;display:grid}.add-pill.is-on{background:var(--accent);color:var(--on-accent)}.fade-list{animation:.15s ease-out fade-slide-in}@keyframes fade-slide-in{0%{opacity:0;transform:translateY(6px)}}@keyframes fade-in{0%{opacity:0}}:root{--badge-usda-bg:#e2edf8;--badge-usda:#134d80;--badge-recipe-bg:#fff1d6;--badge-recipe:#7a4f00;--badge-custom-bg:#d3eee1;--badge-custom:#0a613f;--badge-off-bg:#ece5f8;--badge-off:#5a3896;--badge-manual-bg:#e6efea;--badge-manual:#44604f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--badge-usda-bg:#14324a;--badge-usda:#9fd0f5;--badge-recipe-bg:#3a2c10;--badge-recipe:#f5c062;--badge-custom-bg:#163f2e;--badge-custom:#6ae8b1;--badge-off-bg:#2c2145;--badge-off:#cdb6f7;--badge-manual-bg:#173226;--badge-manual:#a3bfb3}}:root[data-theme=dark]{--badge-usda-bg:#14324a;--badge-usda:#9fd0f5;--badge-recipe-bg:#3a2c10;--badge-recipe:#f5c062;--badge-custom-bg:#163f2e;--badge-custom:#6ae8b1;--badge-off-bg:#2c2145;--badge-off:#cdb6f7;--badge-manual-bg:#173226;--badge-manual:#a3bfb3}.source-badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:6px;flex-shrink:0;align-items:center;padding:1px 7px;font-size:.6875rem;font-weight:750;line-height:1.5;display:inline-flex}.source-usda{background:var(--badge-usda-bg);color:var(--badge-usda)}.source-recipe{background:var(--badge-recipe-bg);color:var(--badge-recipe)}.source-custom{background:var(--badge-custom-bg);color:var(--badge-custom)}.source-off{background:var(--badge-off-bg);color:var(--badge-off)}.source-manual,.source-quick{background:var(--badge-manual-bg);color:var(--badge-manual)}.source-quick{border:1px dashed var(--badge-manual)}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.plain-list{margin:0;padding-left:18px}.h3{font-size:1rem;font-weight:700}.notice-warn{border-left-color:var(--warn);color:var(--text)}.search-box .search-clear{position:absolute;right:2px}.search-box input[type=search]{padding-right:44px}.search-box input[type=search]::-webkit-search-cancel-button{display:none}.add-actions{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.scan-main svg{flex-shrink:0}.add-action{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);min-height:48px;color:var(--text);text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:6px 10px;font-size:.9375rem;font-weight:650;line-height:1.2;transition:background-color .15s,transform .1s;display:flex}.add-action svg{color:var(--accent)}.add-action:hover{background:var(--surface-2)}.add-action:active{transform:scale(.97)}.food-list,.text-lines{padding:4px 12px}.food-row,.text-line-food{border:none;border-bottom:1px solid var(--border);width:100%;min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:10px;padding:8px 4px;display:flex}.food-list li:last-child .food-row{border-bottom:none}.text-line-food{border-bottom:none;min-height:48px;padding:4px 0}.food-row:hover,.text-line-food:hover{background:var(--surface-2)}.food-row-text{flex-direction:column;gap:2px;min-width:0;display:flex}.food-row-name{overflow-wrap:anywhere;align-items:center;gap:6px;display:flex}.food-row-sub{align-items:center;gap:6px;min-width:0;display:flex}.food-row-sub .macro-line{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.food-entry .food-row-sub .macro-line{white-space:normal}.food-row-kcal{text-align:right;flex-shrink:0}.fav-dot{background:var(--warn);border-radius:50%;flex-shrink:0;width:8px;height:8px}.fav-on{color:var(--warn)}.fav-on svg{fill:currentColor}.copy-card .list-item{padding:6px 0}.amount-form{gap:14px}.stepper{grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;display:grid}.stepper-btn{border:1px solid var(--border);background:var(--surface-2);width:52px;height:52px;color:var(--text);cursor:pointer;border-radius:50%;place-items:center;transition:transform .1s,background-color .15s;display:grid}.stepper-btn:hover{background:var(--surface-3)}.stepper-btn:active{transform:scale(.94)}.stepper-field{align-items:center;display:flex;position:relative}.stepper-field .input{text-align:center;padding-left:64px;padding-right:64px;font-size:1.375rem;font-weight:750}.stepper-unit{text-overflow:ellipsis;white-space:nowrap;max-width:56px;color:var(--text-muted);pointer-events:none;font-size:.8125rem;position:absolute;right:12px;overflow:hidden}.amount-preview{border-radius:var(--radius-sm);background:var(--surface-2);grid-template-columns:1.3fr repeat(3,1fr);gap:8px;padding:12px;display:grid}.amount-kcal{flex-direction:column;justify-content:center;display:flex}.amount-kcal .big-number{font-size:1.75rem;line-height:1.1}.macro-cell{grid-template-columns:auto 1fr;align-content:center;align-items:center;column-gap:5px;display:grid}.macro-cell .strong{grid-column:1/-1}.macro-dot{border-radius:50%;width:8px;height:8px}.source-details summary{cursor:pointer;color:var(--accent);align-items:center;min-height:32px;font-size:.875rem;font-weight:650;display:flex}.text-line{border-bottom:1px solid var(--border);flex-direction:column;gap:6px;padding:8px 0 12px;display:flex}.text-line:last-child{border-bottom:none}.mini-stepper{align-items:center;gap:8px;display:flex}.mini-stepper .stepper-btn{width:44px;height:44px}.mini-stepper-value{text-align:center;flex:1;font-size:.9375rem;font-weight:650}.filter-chip-sm{white-space:normal;text-align:left;min-height:40px;padding:0 12px;font-size:.8125rem;line-height:1.25}.text-total{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 8px);z-index:5;box-shadow:var(--shadow), 0 -6px 18px #0000001f;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;position:sticky}.text-total .big-number{font-size:1.5rem}.barcode-form{align-items:flex-start;gap:8px;display:flex}.barcode-form .btn{margin-top:26px}.scanner-dialog{color:#fff;background:#000;border:none;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.scanner-dialog::backdrop{background:#000}.scanner-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scanner-frame{border:3px solid var(--accent-d,#3ddc97);pointer-events:none;border-radius:14px;width:min(80vw,420px);height:min(32vw,170px);position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #00000073}.scanner-top,.scanner-bottom{align-items:center;gap:12px;padding:12px 16px;display:flex;position:absolute;left:0;right:0}.scanner-top{padding-top:max(12px, env(safe-area-inset-top));justify-content:space-between;top:0}.scanner-bottom{padding-bottom:max(24px, env(safe-area-inset-bottom));justify-content:center;bottom:0}.scanner-hint{text-align:center;text-shadow:0 1px 3px #000c;flex:1;font-weight:650}.scanner-round,.scanner-round-space{flex-shrink:0;width:52px;height:52px}.scanner-round{color:#fff;cursor:pointer;background:#00000073;border:2px solid #ffffffd9;border-radius:50%;place-items:center;display:grid}.scanner-round.on{color:#000;background:#fff}.scanner-link{color:#fff;cursor:pointer;background:#0000008c;border:2px solid #ffffffd9;border-radius:999px;min-height:52px;padding:0 22px;font-size:1rem;font-weight:700}.scanner-round:focus-visible,.scanner-link:focus-visible{outline-offset:2px;outline:3px solid #8cc8ff}.btn-lg{min-height:60px;font-size:1.125rem}@media (width<=380px){.amount-preview{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.add-action,.stepper-btn{transition:none}}.sport-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;display:grid}.sport-tile{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);min-height:84px;color:var(--text);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 6px;font-size:.875rem;font-weight:650;line-height:1.2;transition:background-color .15s,transform .1s;display:flex}.sport-tile svg{color:var(--accent)}.sport-tile:hover{background:var(--surface-2)}.sport-tile:active{transform:scale(.97)}.rpe-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.rpe-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);min-height:48px;color:var(--text);cursor:pointer;font-size:1.0625rem;font-weight:750}.rpe-btn[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.rpe-btn[data-level=hard][aria-checked=true]{background:var(--warn);border-color:var(--warn);color:var(--bg)}.derived-row{flex-wrap:wrap;gap:8px;display:flex}.derived-chip{border-radius:var(--radius-sm);background:var(--accent-soft);flex-direction:column;padding:8px 12px;display:flex}.inline-link{min-height:0;padding:0}.activity-hero{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:4px;display:grid}.hero-stat{flex-direction:column;display:flex}.hero-value{font-size:1.625rem;font-weight:750;line-height:1.15}.detail-list{flex-direction:column;margin:0;display:flex}.detail-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.detail-row:last-child{border-bottom:none}.detail-row dt{color:var(--text-muted)}.detail-row dd{text-align:right;margin:0;font-weight:650}.plain-fieldset{border:none;flex-direction:column;gap:4px;margin:0;padding:0;display:flex}@media (prefers-reduced-motion:reduce){.sport-tile{transition:none}}:root{--emblem-core:#ffffffe0;--emblem-ink:#10251b;--advice-go:#0d7a50;--advice-normal:#16649a;--advice-easy:#8a5a00;--advice-rest:#b3261e}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--emblem-core:#0b1a14d1;--emblem-ink:#e8f3ee;--advice-go:#3ddc97;--advice-normal:#8cc8ff;--advice-easy:#f5c062;--advice-rest:#ff8a80}}:root[data-theme=dark]{--emblem-core:#0b1a14d1;--emblem-ink:#e8f3ee;--advice-go:#3ddc97;--advice-normal:#8cc8ff;--advice-easy:#f5c062;--advice-rest:#ff8a80}.tag{background:var(--surface-2);color:var(--text-muted);vertical-align:middle;border-radius:6px;margin-left:6px;padding:1px 7px;font-size:.6875rem;font-weight:600;display:inline-block}.emblem{color:var(--emblem-ink);flex-shrink:0;place-items:center;display:inline-grid;position:relative}.emblem>svg{filter:drop-shadow(0 1px 2px #0000002e);grid-area:1/1}.emblem.is-locked>svg,.emblem.is-locked>.emblem-img{filter:brightness(0);opacity:var(--silhouette-opacity,.2)}.emblem.is-locked .emblem-motif{color:var(--text-muted);text-shadow:none}.emblem.is-locked .emblem-motif .motif-glyph{--emblem-motif-inner:transparent;filter:none}.emblem.is-locked .emblem-body{filter:grayscale();opacity:.6}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .emblem.is-locked>svg,:root:not([data-theme=light]) .emblem.is-locked>.emblem-img{filter:brightness(0)invert();--silhouette-opacity:.16}}:root[data-theme=dark] .emblem.is-locked>svg,:root[data-theme=dark] .emblem.is-locked>.emblem-img{filter:brightness(0)invert();--silhouette-opacity:.16}.emblem.is-empty{border:2px dashed var(--border);color:var(--text-muted);border-radius:50%}.emblem-motif{z-index:1;grid-area:1/1;place-items:center;display:grid}.emblem-sub{letter-spacing:.02em;font-weight:800;line-height:1}.emblem-body{place-items:center;display:grid}.emblem-body .mini-body{width:100%;height:100%}.rank-row{border:0;border-bottom:1px solid var(--border);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:14px;padding:12px 4px;display:flex}.rank-list li:last-child .rank-row{border-bottom:0}.rank-level{font-size:1.0625rem;font-weight:700;display:block}.rank-progress{background:var(--surface-2);border-radius:3px;height:6px;margin:6px 0 4px;display:block;overflow:hidden}.rank-progress>span{border-radius:3px;height:100%;display:block}.rank-hero{align-items:center;gap:16px;display:flex}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.badge-tile{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:132px;color:inherit;font:inherit;text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;display:flex}.badge-tile.is-locked{background:var(--surface-2)}.badge-title{font-size:.8125rem;font-weight:600;line-height:1.2}.level-ladder{margin:8px 0 0;padding:0;list-style:none}.level-ladder li{align-items:center;gap:8px;padding:4px 0;display:flex}.level-ladder li.is-current{font-weight:700}.level-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.evidence{border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;display:flex}.scale{border:0;margin:0;padding:0}.scale legend{margin-bottom:6px}.scale-buttons{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.scale-buttons button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:56px;color:inherit;font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;display:flex}.scale-buttons button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);font-weight:700}.scale-num{font-size:1.125rem;font-weight:700}.scale-name{text-align:center;font-size:.6875rem;line-height:1.15}.advice{flex-direction:column;gap:2px;display:flex}.advice-label{font-size:1.75rem;font-weight:800}.advice-go-hard .advice-label,.advice-text.advice-go-hard{color:var(--advice-go)}.advice-normal .advice-label,.advice-text.advice-normal{color:var(--advice-normal)}.advice-easy .advice-label,.advice-text.advice-easy{color:var(--advice-easy)}.advice-rest .advice-label,.advice-text.advice-rest{color:var(--advice-rest)}.points-chip{background:var(--surface-2);border-radius:8px;flex-shrink:0;place-items:center;min-width:42px;padding:2px 6px;font-size:.8125rem;font-weight:700;display:inline-grid}.points-chip.is-up{background:var(--warn-soft);color:var(--warn)}.points-chip.is-down{background:var(--ok-soft);color:var(--ok)}.card-icon.is-muted{background:var(--surface-2);color:var(--text-muted)}.emblem-img{object-fit:contain;grid-area:1/1}.emblem-motif.on-picture{color:#fff;text-shadow:0 1px 2px #000000b3;width:34%;height:34%}.emblem-motif.on-picture.clear-center{color:var(--emblem-ink);text-shadow:none}.emblem-motif.in-window{position:absolute;transform:translate(-50%,-50%)}.emblem-motif .motif-glyph{--emblem-motif-inner:#00000061;filter:drop-shadow(0 1px 1.5px #000000b3)}.emblem-motif.clear-center .motif-glyph{--emblem-motif-inner:var(--surface);filter:none}.goal-list{gap:10px;margin:0;padding-left:22px;display:grid}.goal-list li{flex-direction:column;gap:2px;display:flex}.review-points{gap:6px;margin:0;padding-left:18px;display:grid}.review-table{border-collapse:collapse;width:100%;font-size:.8125rem}.review-table th,.review-table td{border-bottom:1px solid var(--border);text-align:right;vertical-align:top;padding:6px 4px}.review-table thead th{color:var(--text-muted);font-weight:600}.review-table tbody th{text-align:left;font-weight:500}.review-table tr:last-child th,.review-table tr:last-child td{border-bottom:0}.change-up{color:var(--ok);font-weight:600}.change-down{color:var(--danger);font-weight:600}.change-same{color:var(--text-muted)}.story-track{scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:var(--radius);gap:12px;display:flex;overflow-x:auto}.story-track::-webkit-scrollbar{display:none}.story-track:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.story-slide{border-radius:var(--radius);color:#e8f3ee;scroll-snap-align:start;background:linear-gradient(150deg,#0b1a14 0%,#123d2c 55%,#1f7a55 100%);flex-direction:column;flex:0 0 100%;min-height:460px;padding:28px 24px;display:flex;position:relative;overflow:hidden}.story-slide.is-empty{background:linear-gradient(150deg,#1a2420 0%,#2a3a33 100%)}.story-kicker{color:#6ae8b1;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.story-title{margin:8px 0 0;font-size:2rem;line-height:1.1}.story-big{flex-direction:column;margin-top:36px;display:flex}.story-number{color:#3ddc97;font-size:4.5rem;font-weight:800;line-height:1}.story-label{color:#a3bfb3;font-size:1.0625rem;font-weight:600}.story-lines{gap:8px;margin:auto 0 0;padding:24px 0 0;font-size:1rem;list-style:none;display:grid}.story-controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.story-dots{gap:6px;display:flex}.story-dots span{background:var(--surface-3);border-radius:50%;width:8px;height:8px}.story-dots span.is-active{background:var(--accent)}.review-columns{gap:12px;display:grid}@media (width>=720px){.review-columns{grid-template-columns:1fr 1fr}}.hr-live{color:var(--danger);justify-content:center;align-items:baseline;gap:8px;display:flex}.hr-number{color:var(--text);font-variant-numeric:tabular-nums;font-size:4rem;font-weight:800}:root{--rec-fresh:#2e9d5b;--rec-mid:#dd9a12;--rec-tired:#d4433b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--rec-fresh:#3fcf80;--rec-mid:#f0b53a;--rec-tired:#ff6f61}}:root[data-theme=dark]{--rec-fresh:#3fcf80;--rec-mid:#f0b53a;--rec-tired:#ff6f61}.rec-cb{--rec-fresh:#2f6fbf;--rec-mid:#e3c98a;--rec-tired:#e0661c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .rec-cb{--rec-fresh:#5c9cf0;--rec-mid:#d8bd78;--rec-tired:#ff8a3d}}:root[data-theme=dark] .rec-cb{--rec-fresh:#5c9cf0;--rec-mid:#d8bd78;--rec-tired:#ff8a3d}.rec-figures{grid-template-columns:1fr 1fr;gap:12px;display:grid}.rec-figures figure{flex-direction:column;align-items:center;gap:4px;margin:0;display:flex}.rec-figures .body-figure{max-width:200px}.rec-figures.is-small{flex-shrink:0;gap:4px;width:92px}.graph-legend{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.graph-legend li{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:4px 10px;font-size:.8125rem;display:inline-flex}.graph-swatch{border-radius:50%;flex-shrink:0;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000002e}.rec-swatch,.rec-dot{border-radius:4px;flex-shrink:0;width:14px;height:14px}.rec-dot{border-radius:50%;width:12px;height:12px}.rec-fresh{background:var(--rec-fresh)}.rec-recovering{background:var(--rec-mid)}.rec-tired{background:var(--rec-tired)}.rec-verdict{background:var(--surface-2);border-radius:14px;gap:4px;padding:12px 14px;display:grid}.rec-verdict-label{font-size:1.375rem;font-weight:800;line-height:1.2}.rec-verdict-ready .rec-verdict-label,.rec-verdict-text.rec-verdict-ready,.rec-text-fresh{color:var(--advice-go)}.rec-verdict-rest .rec-verdict-label,.rec-verdict-text.rec-verdict-rest,.rec-text-tired{color:var(--advice-rest)}.rec-text-recovering{color:var(--advice-easy)}.rec-reasons{margin:0;padding-left:18px}.rec-state{font-size:1.25rem;font-weight:800}.rec-list .list-item{gap:10px}.rec-mini{align-items:center;gap:12px;display:flex}.rec-mini-text{flex-direction:column;gap:2px;min-width:0;display:flex}.how summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.how[open] summary{margin-bottom:4px}:root{--radius:22px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#07110d;--surface:#0f1e17;--surface-2:#162a21;--surface-3:#1e382c;--border:#22392e}}:root[data-theme=dark]{--bg:#07110d;--surface:#0f1e17;--surface-2:#162a21;--surface-3:#1e382c;--border:#22392e}.content{gap:18px}.card{gap:12px;padding:18px}.screen-header h1{letter-spacing:-.01em;font-size:1.875rem;font-weight:800}.tile-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:12px;display:grid}.stat-tile{justify-content:space-between;gap:6px;min-height:136px}.stat-label{color:var(--text-muted);align-items:center;gap:6px;font-size:.8125rem;font-weight:650;display:flex}.stat-label svg{color:var(--accent)}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:2rem;font-weight:800;line-height:1.05}.stat-value .unit{letter-spacing:0;color:var(--text-muted);margin-left:4px;font-size:.9375rem;font-weight:650}.stat-value.muted{color:var(--text-muted)}.nutri-hero{gap:2px;display:grid}.nutri-hero-num{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:3rem;font-weight:850;line-height:1}.nutri-hero-label{color:var(--kcal);font-weight:750}.rec-mini.is-large{flex-direction:column;align-items:stretch;gap:10px}.rec-mini.is-large .rec-figures{width:100%;max-width:300px;margin:0 auto}.tabbar{overflow:visible}.tab-start{justify-content:flex-end;gap:4px;padding-bottom:6px}.start-circle{background:var(--accent);width:64px;height:64px;color:var(--on-accent);box-shadow:0 0 0 6px var(--bg), 0 6px 18px #00000040;border-radius:50%;place-items:center;margin-top:-30px;transition:transform .15s ease-out,background-color .2s;display:grid}.tab-start:active .start-circle{transform:scale(.95)}.tab-start[aria-current=page] .start-circle{background:var(--accent-strong)}.tab-start .tab-label{color:var(--text);font-weight:750}.screen{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 48px)}.workout-pill{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 44px)}@media (prefers-reduced-motion:reduce){.start-circle{transition:none}}.section-title{letter-spacing:.04em;font-size:.875rem}.segmented button{min-height:44px}.search-box .input{border-radius:16px;min-height:52px}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.action-tile{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:132px;color:var(--text);font:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;transition:transform .12s ease-out,background-color .15s;display:flex}.action-tile:hover{background:var(--surface-2)}.action-tile:active{transform:scale(.98)}.action-tile.is-primary{background:var(--accent);color:var(--on-accent);border-color:#0000}.action-tile.is-primary:hover{background:var(--accent-strong)}.action-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:auto;display:grid}.action-tile.is-primary .action-icon{background:color-mix(in srgb, var(--on-accent) 16%, transparent);color:var(--on-accent)}.action-title{font-size:1.0625rem;font-weight:800;line-height:1.2}.action-sub{opacity:.85;font-size:.8125rem}.action-tile.is-primary .action-sub{opacity:1}.workout-live{border-color:var(--accent)}.workout-live-label{color:var(--accent);align-items:center;gap:8px;font-size:.8125rem;font-weight:700;display:flex}.live-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;animation:1.6s ease-in-out infinite live-pulse}@keyframes live-pulse{50%{opacity:.35}}.workout-live-name{font-size:1.5rem;font-weight:800}.routine-head{align-items:center;gap:12px;display:flex}.routine-thumb{background:var(--surface-2);border-radius:14px;flex-shrink:0;place-items:center;width:48px;height:64px;display:grid}.routine-thumb .mini-body{width:auto;height:100%}.routine-name{font-size:1.25rem;font-weight:800}.routine-items{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ex-list{gap:10px}.ex-row,.ex-row:last-child{border:1px solid var(--border);background:var(--surface);contain-intrinsic-size:auto 80px;border-radius:18px;padding-right:4px}.ex-row-main{border-radius:18px;min-height:76px;padding:8px 10px}.ex-thumb{border-radius:14px;width:48px;height:64px}.ex-row .list-title{font-size:1rem}.result-grid{gap:12px}.stat{border:1px solid var(--border);background:var(--surface);border-radius:18px;flex-direction:column;gap:4px;min-height:92px;padding:14px;display:flex}.stat .stat-label{display:block}.stat .stat-value{font-size:1.625rem;font-weight:800;line-height:1.1}.date-nav .date-label{font-size:1.125rem;font-weight:800}.rank-list{gap:10px}.rank-row,.rank-list li:last-child .rank-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:14px}.rank-row:hover{background:var(--surface-2)}.rank-progress{border-radius:4px;height:8px}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px}.badge-tile{border-radius:18px;gap:6px;min-height:148px;padding:12px 8px;transition:transform .12s ease-out,background-color .15s}.badge-tile:hover{background:var(--surface-2)}.badge-tile:active{transform:scale(.98)}@media (prefers-reduced-motion:reduce){.action-tile,.badge-tile{transition:none}.live-dot{animation:none}}.btn-sm{min-height:44px}.pager-dots button{height:44px}.sync-pill{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.8125rem;font-weight:700;display:inline-flex}.sync-pill .sync-dot{width:10px;height:10px}.pair-hint{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit}.pair-code{text-align:center;align-items:center}.pair-qr{background:#fff;border-radius:16px;width:220px;height:220px;padding:10px}.pair-code-text{letter-spacing:.08em;margin:0;font-size:1.75rem;font-weight:800}.accent-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 6px;display:grid}@media (width>=480px){.accent-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}.accent-option{--sw:var(--sw-l);--sw-on:var(--sw-on-l);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:2px solid #0000;flex-direction:column;align-items:center;gap:6px;min-height:44px;padding:6px 2px;display:flex}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .accent-option{--sw:var(--sw-d);--sw-on:var(--sw-on-d)}}:root[data-theme=dark] .accent-option{--sw:var(--sw-d);--sw-on:var(--sw-on-d)}.accent-option[aria-checked=true]{border-color:var(--sw);background:var(--surface-2)}.accent-swatch{background:var(--sw);width:40px;height:40px;color:var(--sw-on);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #0000001f}.accent-name{color:var(--text);text-align:center;font-size:.75rem;font-weight:600}.accent-option[aria-checked=true] .accent-name{font-weight:800}.accent-preview-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.accent-preview-tabs{border-radius:var(--radius-sm);background:var(--surface-2);gap:8px;padding:6px;display:flex}.accent-preview-tabs .tab{cursor:default;flex:1}.streak-flame{background:var(--surface-2);width:32px;height:32px;color:var(--text-muted);border-radius:10px;place-items:center;display:grid}.streak-flame.is-on{background:var(--flame-soft);color:var(--flame)}.streak-body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-top:10px;display:flex}.streak-numbers{flex:10rem;gap:4px;min-width:0;display:grid}.streak-current{align-items:baseline;gap:6px;display:flex}.streak-big{font-variant-numeric:tabular-nums;font-size:2.25rem;font-weight:800;line-height:1}.streak-nudge{color:var(--flame);font-weight:650}.streak-calendar{flex:none;grid-template-columns:repeat(7,16px);gap:4px;display:grid}.streak-weekday{text-align:center;color:var(--text-muted);font-size:.625rem;font-weight:700}.streak-cell{background:var(--surface-3);border-radius:4px;width:16px;height:16px}.streak-cell.is-logged{background:var(--flame)}.streak-cell.is-future{box-shadow:inset 0 0 0 1px var(--border);background:0 0}.streak-cell.is-today{outline:2px solid var(--text);outline-offset:1px}.lab-cross{z-index:2;pointer-events:none;background:#f0f;position:absolute}.lab-box{z-index:2;pointer-events:none;outline:1px solid #00e070;position:absolute}.lab-label{font-weight:700;position:absolute;top:4px;left:6px}.app:has(.emblem-lab-page){max-width:none}.emblem-lab-page~.tabbar{display:none}body:has(.emblem-lab-page) .tabbar{display:none}.badge-measures{color:var(--text-muted);font-size:.6875rem;font-weight:600;line-height:1.25}.badge-need{color:var(--text);font-size:.6875rem;line-height:1.25}.celebration{border:1px solid var(--border);background:var(--surface);width:min(420px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);border-radius:24px;padding:0;overflow-y:auto}.celebration::backdrop{background:#0000008c}.celebration[open]{animation:.35s cubic-bezier(.2,.9,.3,1.25) celebration-in}.celebration-body{text-align:center;gap:14px;padding:20px;display:grid}.celebration-hero{place-items:center;height:160px;display:grid;position:relative}.celebration-burst{background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--flame) 30%, transparent) 0deg 10deg, transparent 10deg 24deg);border-radius:50%;width:220px;height:220px;animation:14s linear infinite celebration-spin;position:absolute;-webkit-mask-image:radial-gradient(circle,#000 25%,#0000 70%);mask-image:radial-gradient(circle,#000 25%,#0000 70%)}.celebration-emblem{animation:.6s cubic-bezier(.2,.9,.3,1.4) .1s both celebration-pop;position:relative}.celebration-title{font-size:1.5rem;font-weight:800}.celebration-rank{gap:6px;display:grid}.celebration-section{text-align:left;gap:8px;animation:.4s ease-out .35s both celebration-rise;display:grid}.celebration-list{margin:0;padding:0;list-style:none}.celebration-badges,.celebration-prs{gap:8px;margin:0;padding:0;list-style:none;display:grid}.celebration-badges li{align-items:center;gap:10px;display:flex}.celebration-badges li>span:last-child{display:grid}.celebration-prs li{border-radius:var(--radius-sm);background:var(--surface-2);align-items:center;gap:10px;padding:8px 10px;display:flex}.pr-change{color:var(--ok);font-variant-numeric:tabular-nums;font-weight:800}@keyframes celebration-in{0%{opacity:0;transform:scale(.92)}}@keyframes celebration-pop{0%{opacity:0;transform:scale(.4)rotate(-12deg)}}@keyframes celebration-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes celebration-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.celebration[open],.celebration-emblem,.celebration-section,.celebration-burst{animation:none}}.recent-row{width:100%;min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;padding:8px 12px;display:flex}.recent-row .grow{display:grid}.avatar{flex-shrink:0;display:block}.avatar-btn{border:2px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;overflow:hidden}.avatar-card{align-items:center;gap:16px;display:flex}.avatar-preview{text-align:center;justify-items:center;gap:8px;display:grid}.swatch-row{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:2px solid var(--border);background:var(--swatch);cursor:pointer;border-radius:50%;width:36px;height:36px;padding:0;position:relative}.swatch[aria-checked=true]{outline:3px solid var(--accent);outline-offset:2px}.swatch-custom{background:conic-gradient(#e11d48,#ea6c0a,#ca9a04,#0d7a50,#2563eb,#7c3aed,#e11d48);place-items:center;display:grid;overflow:hidden}.swatch-custom input{opacity:0;cursor:pointer;width:100%;height:100%}.celebration-avatar{animation:.5s ease-out .2s both celebration-rise;position:absolute;bottom:-6px;left:calc(50% - 150px)}@media (prefers-reduced-motion:reduce){.celebration-avatar{animation:none}}.missed-row{align-items:center;gap:8px;display:flex}.missed-row .grow{min-width:0;display:grid}.home-backup-line{min-height:44px;color:var(--text-muted);justify-content:center;align-items:center;gap:6px;text-decoration:none;display:flex}.restore-preview{border-top:1px solid var(--border);padding-top:12px}.compact-list{gap:4px;display:grid}.choice-fieldset{border:0;min-width:0;margin:0;padding:0}.choice-row{border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;min-height:56px;padding:10px 12px;display:flex}.choice-row input{width:22px;height:22px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.choice-row:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.pr-mark{fill:var(--flame);stroke:var(--surface);stroke-width:1.5px}.chart-legend{align-items:center;gap:4px;display:flex}.bar-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.bar-row{grid-template-columns:minmax(0,7.5rem) minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.bar-track{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:999px;height:100%}.stats-link{text-align:left;align-items:center;gap:12px;width:100%;display:flex}.list-button .grow>.list-title,.list-button .grow>.list-sub,.list-item>.grow>.list-title,.list-item>.grow>.list-sub{display:block}.set-type-btn{min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;font-weight:700;display:inline-grid}.set-type-btn:hover{background:var(--surface-2)}.set-type-btn.type-warmup{color:var(--warn)}.set-type-tag{color:var(--text-muted);font-size:.6875rem;line-height:1;display:block}.set-table tr.warmup td{color:var(--text-muted)}.exercise-card.in-superset{border-left:4px solid var(--accent)}.superset-tag{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:.75rem;font-weight:700}.exercise-note{align-items:flex-start;gap:6px;margin:0;display:flex}.rest-chip{align-self:flex-start}.plate-row{flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.plate-chip{background:var(--surface-3);border:1px solid var(--border);border-radius:8px;place-items:center;min-width:44px;padding:0 8px;font-weight:700;display:grid}.warn-text{color:var(--warn)}.plan-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.plan-day{grid-template-columns:minmax(0,8.5rem) minmax(0,1fr);align-items:center;gap:10px;display:grid}.plan-day-name{flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;display:flex}.plan-day.is-today .plan-day-name{color:var(--accent-strong)}.plan-today{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.plan-today.is-rest{min-height:56px}.line-secondary{fill:none;stroke:var(--text-muted);stroke-width:2px;stroke-dasharray:5 4}.measure-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;display:grid}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.photo-tile{gap:4px;display:grid}.photo-pick{aspect-ratio:3/4;background:var(--surface-2);cursor:pointer;border:3px solid #0000;border-radius:12px;width:100%;padding:0;display:block;overflow:hidden}.photo-tile.is-picked .photo-pick{border-color:var(--accent)}.photo-pick img,.photo-compare img{object-fit:cover;width:100%;height:100%;display:block}.photo-compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.photo-compare figure{gap:4px;margin:0;display:grid}.photo-compare img{aspect-ratio:3/4;border-radius:10px}.btn.is-busy{opacity:.7;pointer-events:none}.ingredient-row{grid-template-columns:minmax(0,1fr) 7.5rem 44px;align-items:center;gap:8px;display:grid}.ingredient-grams .field{margin:0}.ingredient-grams label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.planner-day.is-today{border-color:var(--accent)}.shopping-list{background:var(--surface-2);font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:0;padding:12px;font-size:.9375rem}.micros-card summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.tour-icon{background:var(--accent-soft);width:64px;height:64px;color:var(--accent-strong);border-radius:50%;place-items:center;display:grid}.faq summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.faq+.faq{border-top:1px solid var(--border)}.licences{overflow-wrap:anywhere;min-width:0}.table-scroll{max-width:100%;overflow-x:auto}.table-scroll .chart-table{min-width:36rem}.licence-list{margin:0;padding-left:18px}:root{--dur-fast:.12s;--dur-base:.2s;--dur-slow:.3s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--move-s:6px;--move-m:12px;--sheet-from:100%;--press-scale:.97;--stagger:30ms}:root[data-motion=reduced]{--dur-base:.12s;--dur-slow:.12s;--move-s:0px;--move-m:0px;--sheet-from:0px;--press-scale:1;--stagger:0s}:root[data-motion=off] *,:root[data-motion=off] :before,:root[data-motion=off] :after,:root[data-motion=off] ::backdrop{scroll-behavior:auto!important;transition:none!important;animation:none!important}@keyframes m-fade-in{0%{opacity:0}}@keyframes m-rise-in{0%{opacity:0;transform:translateY(var(--move-s))}}@keyframes m-sheet-up{0%{opacity:.6;transform:translateY(var(--sheet-from))}}@keyframes m-pop-in{0%{opacity:0;transform:scale(calc(1 - (1 - var(--press-scale)) * 1.5))}}@keyframes m-check{40%{transform:scale(calc(1 + (1 - var(--press-scale)) * 3))}}@keyframes m-check-draw{0%{stroke-dashoffset:24px}}@keyframes m-tab-pop{40%{transform:scale(calc(1 - (1 - var(--press-scale)) * 3))}}@keyframes m-pulse{50%{opacity:.45}}.screen{animation:m-fade-in var(--dur-base) var(--ease-out)}dialog.sheet[open]{animation:m-sheet-up var(--dur-slow) var(--ease-out)}dialog.dialog[open],.celebration[open]{animation:m-pop-in var(--dur-base) var(--ease-out)}dialog::backdrop{animation:m-fade-in var(--dur-base) var(--ease-out)}.toast{animation:m-rise-in var(--dur-base) var(--ease-out)}.btn,.icon-btn,.chip,.list-button,.card-button,.ring,.recent-row,.check-btn,.tab{transition-property:transform,background-color,border-color,color,opacity;transition-duration:var(--dur-fast);transition-timing-function:var(--ease-out)}:is(.btn,.icon-btn,.chip,.list-button,.card-button,.ring,.recent-row):active:not(:disabled){transform:scale(var(--press-scale))}.screen .content>.card,.screen .list>li{animation:m-rise-in var(--dur-base) var(--ease-out) both}.screen .content>.card:nth-child(2),.screen .list>li:nth-child(2){animation-delay:calc(var(--stagger) * 1)}.screen .content>.card:nth-child(3),.screen .list>li:nth-child(3){animation-delay:calc(var(--stagger) * 2)}.screen .content>.card:nth-child(4),.screen .list>li:nth-child(4){animation-delay:calc(var(--stagger) * 3)}.screen .content>.card:nth-child(5),.screen .list>li:nth-child(5){animation-delay:calc(var(--stagger) * 4)}.screen .content>.card:nth-child(n+6),.screen .list>li:nth-child(n+6){animation-delay:calc(var(--stagger) * 5)}.check-btn[aria-pressed=true]{animation:m-check var(--dur-slow) var(--ease-out)}.check-btn[aria-pressed=true] svg path{stroke-dasharray:24;animation:m-check-draw var(--dur-slow) var(--ease-out)}.rest-timer{animation:m-rise-in var(--dur-base) var(--ease-out)}.tab[aria-current=page] .tab-icon,.tab[aria-current=page] .start-circle{animation:m-tab-pop var(--dur-slow) var(--ease-out)}.tab:active .tab-icon,.tab:active .start-circle{transform:scale(var(--press-scale));transition:transform var(--dur-fast) var(--ease-out)}.skeleton-card{gap:12px;display:grid}.skeleton{background:var(--surface-3);height:14px;animation:m-pulse 1.2s var(--ease-in-out) infinite;border-radius:999px;display:block}.skeleton-block{border-radius:var(--radius-sm);height:64px}details[open]>:not(summary){animation:m-rise-in var(--dur-base) var(--ease-out)}.fold{transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out)}.fold.is-folded{transform:translateY(calc(var(--move-s) * -1))}.progress-fill{transform-origin:0;width:100%;transition:transform var(--dur-slow) var(--ease-out)}.body-figure .m-region path{transition:fill var(--dur-slow) var(--ease-out), stroke var(--dur-slow) var(--ease-out)}.celebration-emblem{animation:m-pop-in var(--dur-slow) var(--ease-out) 80ms both}.celebration-section{animation:m-rise-in var(--dur-slow) var(--ease-out) .2s both}.celebration-body>.btn,.celebration-body>.row{animation:m-rise-in var(--dur-slow) var(--ease-out) .28s both}:root[data-motion=reduced] .celebration-burst{animation:none}
