:root{--brand-name:"Name TBD"}.theme-dark{--bg:#0b0c0e;--surface:#16181b;--surface-2:#202328;--surface-3:#2a2e34;--divider:#2c3036;--border-control:#767c83;--text:#f3f4f1;--text-2:#b4bab6;--text-3:#8f9692;--accent:#d4f25a;--accent-fill:#d4f25a;--on-accent:#14170a;--accent-text:#d4f25a;--accent-subtle:#d4f25a1f;--rec:#c8281e;--on-rec:#fff;--rec-text:#ff8a80;--success-text:#5bd98a;--success-bg:#5bd98a21;--warning-text:#f5b544;--warning-bg:#f5b54421;--danger-text:#ff8a80;--danger-bg:#ff8a8021;--info-text:#8cbcff;--info-bg:#8cbcff21;--neutral-bg:#f3f4f114;--focus:#d4f25a;--scrim:#0000009e;--shadow:0 18px 48px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.theme-light{--bg:#f4f4f0;--surface:#fff;--surface-2:#ecece6;--surface-3:#e2e2db;--divider:#dcdcd5;--border-control:#767b77;--text:#121412;--text-2:#4c514e;--text-3:#626864;--accent:#d4f25a;--accent-fill:#121412;--on-accent:#d4f25a;--accent-text:#4a6100;--accent-subtle:#4a610017;--rec:#c8281e;--on-rec:#fff;--rec-text:#b3261e;--success-text:#1e7a40;--success-bg:#1e7a401a;--warning-text:#9a5200;--warning-bg:#9a52001a;--danger-text:#b3261e;--danger-bg:#b3261e17;--info-text:#1f5fc4;--info-bg:#1f5fc417;--neutral-bg:#1214120f;--focus:#4a6100;--scrim:#12141273;--shadow:0 18px 48px #1214122e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.theme-dark,.theme-light{--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--r-sm:6px;--r-md:12px;--r-lg:20px;--r-xl:28px;--r-full:999px;--font:"Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;--touch:48px;font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}html,body{min-height:100%;margin:0}*,:before,:after{box-sizing:border-box}.t-display{letter-spacing:-.01em;margin:0;font-size:32px;font-weight:650;font-stretch:112%;line-height:36px}.t-title{letter-spacing:-.005em;margin:0;font-size:24px;font-weight:650;font-stretch:108%;line-height:30px}.t-headline{margin:0;font-size:17px;font-weight:600;line-height:24px}.t-body{margin:0;font-size:15px;font-weight:400;line-height:22px}.t-label{margin:0;font-size:13px;font-weight:550;line-height:18px}.t-caption{letter-spacing:.01em;margin:0;font-size:12px;font-weight:500;line-height:16px}.t-overline{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:650;font-stretch:112%;line-height:16px}.mono{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-2)}.subtle{color:var(--text-3)}.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}.app{background:var(--bg);min-height:100dvh;color:var(--text);flex-direction:column;display:flex}.app :focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app a:not(.btn){color:inherit}.skip-link{left:var(--s-3);z-index:10;padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface);color:var(--text);position:absolute;top:-100px}.skip-link:focus{top:var(--s-3)}.dev-strip{min-height:28px;padding:4px var(--s-4);letter-spacing:.04em;text-align:center;color:var(--text-2);background:var(--surface);border-bottom:1px solid var(--divider);flex:none;justify-content:center;align-items:center;gap:6px;font-size:11.5px;font-weight:600;line-height:16px;display:flex}.demo-switch{font:inherit;color:var(--accent-text);border:1px solid var(--divider);cursor:pointer;background:0 0;border-radius:999px;min-height:24px;padding:2px 10px}.demo-persona{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.demo-persona[aria-current=true]{background:var(--surface-2)}.demo-persona:disabled{cursor:progress}.dev-strip:before{content:"";background:var(--warning-text);border-radius:50%;flex:none;width:6px;height:6px}.appbar{align-items:center;gap:var(--s-2);min-height:60px;padding:0 var(--s-3);flex:none;width:100%;max-width:720px;margin:0 auto;display:flex}.appbar-title{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:16px;font-weight:600;line-height:22px;overflow:hidden}.appbar-spacer{flex:none;width:44px;height:44px}.wordmark{letter-spacing:-.01em;align-items:center;gap:8px;font-size:17px;font-weight:700;font-stretch:118%;text-decoration:none;display:inline-flex}.wordmark:before{content:"";background:var(--accent);width:22px;height:22px;box-shadow:inset 0 0 0 6px var(--bg), inset 0 0 0 22px var(--accent);border-radius:7px}.wordmark:after{content:var(--brand-name)}.content{width:100%;max-width:720px;padding:0 var(--s-5) var(--s-8);gap:var(--s-5);flex-direction:column;flex:1;margin:0 auto;display:flex}.content:focus{outline:none}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.grow{flex:1;min-width:0}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.ic{width:20px;height:20px;-webkit-mask:var(--i) center / contain no-repeat;-webkit-mask:var(--i) center / contain no-repeat;mask:var(--i) center / contain no-repeat;background:currentColor;flex:none;display:inline-block}.ic-sm{width:16px;height:16px}.ic-lg{width:24px;height:24px}.ic-xl{width:32px;height:32px}.ic-back{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M15 18l-6-6 6-6'/></svg>")}.ic-next{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18l6-6-6-6'/></svg>")}.ic-close{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M18 6L6 18M6 6l12 12'/></svg>")}.ic-check{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6L9 17l-5-5'/></svg>")}.ic-clock{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 7v5l3 2'/></svg>")}.ic-camera{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M23 7l-7 5 7 5V7z'/><rect x='1' y='5' width='15' height='14' rx='2'/></svg>")}.ic-shield{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/></svg>")}.ic-share{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='18' cy='5' r='3'/><circle cx='6' cy='12' r='3'/><circle cx='18' cy='19' r='3'/><path d='M8.6 13.5l6.8 4M15.4 6.5l-6.8 4'/></svg>")}.ic-eye{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8S1 12 1 12z'/><circle cx='12' cy='12' r='3'/></svg>")}.ic-layers{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2l10 5-10 5L2 7l10-5zM2 17l10 5 10-5M2 12l10 5 10-5'/></svg>")}.ic-play{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 4.5v15a1 1 0 0 0 1.5.86l12.5-7.5a1 1 0 0 0 0-1.72L8.5 3.64A1 1 0 0 0 7 4.5z' fill='black'/></svg>")}.ic-back10{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 4v6h6'/><path d='M3.5 15a9 9 0 1 0 2.1-9.4L1 10'/></svg>")}.ic-fwd10{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M23 4v6h-6'/><path d='M20.5 15a9 9 0 1 1-2.1-9.4L23 10'/></svg>")}.ic-full{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3'/></svg>")}.ic-upload{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M16 16l-4-4-4 4M12 12v9'/><path d='M20.4 18.4A5 5 0 0 0 18 9h-1.3A8 8 0 1 0 3 16.3'/></svg>")}.ic-gear{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2v4M12 18v4M4.9 4.9l2.8 2.8M16.2 16.2l2.8 2.8M2 12h4M18 12h4M4.9 19.1l2.8-2.8M16.2 7.8l2.8-2.8'/></svg>")}.ic-alert{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M10.3 3.9L1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0zM12 9v4M12 17h.01'/></svg>")}.ic-info{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 16v-4M12 8h.01'/></svg>")}.ic-users{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/><circle cx='9' cy='7' r='4'/><path d='M23 21v-2a4 4 0 0 0-3-3.9M16 3.1a4 4 0 0 1 0 7.8'/></svg>")}.ic-user{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/><circle cx='12' cy='7' r='4'/></svg>")}.ic-lock{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='11' width='18' height='11' rx='2'/><path d='M7 11V7a5 5 0 0 1 10 0v4'/></svg>")}.ic-film{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='4' width='20' height='16' rx='3'/><path d='M10 9l5 3-5 3V9z'/></svg>")}.ic-offline{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 1l22 22M16.7 11.1A11 11 0 0 1 19 12.6M5 12.6a11 11 0 0 1 5.2-2.4M10.7 5.1A16 16 0 0 1 22.6 9M1.4 9a16 16 0 0 1 4.7-2.9M8.5 16.1a6 6 0 0 1 7 0M12 20h.01'/></svg>")}.ic-retry{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M23 4v6h-6M1 20v-6h6'/><path d='M3.5 9a9 9 0 0 1 14.9-3.4L23 10M1 14l4.6 4.4A9 9 0 0 0 20.5 15'/></svg>")}.ic-block{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M5.6 5.6l12.8 12.8'/></svg>")}.ic-device{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='3' width='20' height='14' rx='2'/><path d='M8 21h8M12 17v4'/></svg>")}.ic-bookmark{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z'/></svg>")}.ic-pause{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect x='6' y='4' width='4' height='16' rx='1' fill='black'/><rect x='14' y='4' width='4' height='16' rx='1' fill='black'/></svg>")}.ic-cc{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='5' width='20' height='14' rx='3'/><path d='M10 10.5a2 2 0 1 0 0 3M17 10.5a2 2 0 1 0 0 3'/></svg>")}.ic-sun{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'/><path d='M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4'/></svg>")}.ic-minus{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'><path d='M5 12h14'/></svg>")}.ic-plus{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>")}.ic-up{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 19V5M5 12l7-7 7 7'/></svg>")}.ic-down{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M12 5v14M19 12l-7 7-7-7'/></svg>")}.ic-home{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 10.5L12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-6h-6v6H4a1 1 0 0 1-1-1v-9.5z'/></svg>")}.ic-trophy{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M8 21h8M12 17v4M7 4h10v5a5 5 0 0 1-10 0V4zM7 6H4a3 3 0 0 0 3 4M17 6h3a3 3 0 0 1-3 4'/></svg>")}.ic-moon{--i:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z'/></svg>")}.btn{appearance:none;font:inherit;cursor:pointer;letter-spacing:.005em;text-align:center;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:52px;margin:0;padding:0 22px;font-size:16px;font-weight:600;line-height:22px;text-decoration:none;transition:transform .12s,background-color .12s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-block{width:100%}.btn-sm{border-radius:12px;min-height:44px;padding:0 16px;font-size:14px}.btn-primary{background:var(--accent-fill);color:var(--on-accent)}.btn-secondary{background:var(--surface-2);color:var(--text)}.btn-outline{color:var(--text);box-shadow:inset 0 0 0 1.5px var(--border-control);background:0 0}.btn-ghost{color:var(--accent-text);background:0 0;padding:0 12px}.btn-danger{color:var(--danger-text);background:0 0;box-shadow:inset 0 0 0 1.5px}.btn-danger-fill{background:var(--rec);color:var(--on-rec)}.btn:disabled,.btn[aria-disabled=true]{background:var(--surface-2);color:var(--text-3);box-shadow:none;cursor:not-allowed}.iconbtn{appearance:none;width:44px;height:44px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin:0;padding:0;text-decoration:none;display:inline-flex}.iconbtn-filled{background:var(--surface-2)}.iconbtn[aria-pressed=true]{background:var(--accent-subtle);color:var(--accent-text)}.iconbtn:disabled{color:var(--text-3);cursor:not-allowed}.badge{border-radius:var(--r-full);white-space:nowrap;background:var(--neutral-bg);min-height:26px;color:var(--text-2);align-items:center;gap:6px;padding:0 10px 0 8px;font-size:12.5px;font-weight:600;line-height:16px;display:inline-flex}.badge .ic{width:14px;height:14px}.tone-success{background:var(--success-bg);color:var(--success-text)}.tone-info{background:var(--info-bg);color:var(--info-text)}.tone-warning{background:var(--warning-bg);color:var(--warning-text)}.tone-danger{background:var(--danger-bg);color:var(--danger-text)}.tone-neutral{background:var(--neutral-bg);color:var(--text-2)}.tone-rec{background:var(--rec);color:var(--on-rec);letter-spacing:.06em}.recdot{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px;animation:1.6s ease-in-out infinite recpulse}@keyframes recpulse{50%{opacity:.35}}.spin{animation:1.4s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.recdot,.spin,.skeleton{animation:none!important}.btn{transition:none}}.card{background:var(--surface);border-radius:var(--r-lg);padding:var(--s-4)}.list{background:var(--surface);border-radius:var(--r-lg);margin:0;padding:0;list-style:none;overflow:hidden}.list-row{color:inherit;align-items:center;gap:var(--s-3);min-height:64px;padding:10px var(--s-4);text-decoration:none;display:flex}.list>li+li{border-top:1px solid var(--divider)}.section-label{color:var(--text-3);padding:0 var(--s-1)}.skeleton{border-radius:var(--r-lg);background:var(--surface-2);min-height:88px;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.55}}.banner{gap:var(--s-3);padding:14px var(--s-4);border-radius:var(--r-md);color:var(--text);align-items:flex-start;font-size:14px;line-height:20px;display:flex}.banner .ic{margin-top:1px}.banner-info{background:var(--info-bg)}.banner-info .ic{color:var(--info-text)}.banner-warning{background:var(--warning-bg)}.banner-warning .ic{color:var(--warning-text)}.banner-danger{background:var(--danger-bg)}.banner-danger .ic{color:var(--danger-text)}.banner-success{background:var(--success-bg)}.banner-success .ic{color:var(--success-text)}.banner p{margin:0}.banner strong{font-weight:650}.state{text-align:center;align-items:center;gap:var(--s-3);padding:var(--s-10) var(--s-4);flex-direction:column;display:flex}.state-glyph{border-radius:24px;justify-content:center;align-items:center;width:72px;height:72px;display:inline-flex}.state .t-body{max-width:36ch}.video{border-radius:var(--r-lg);color:#f3f4f1;background:#0a0f0e;width:100%;margin:0;position:relative;overflow:hidden}.video video{aspect-ratio:16/9;background:#000;width:100%;display:block}.video-overlay{aspect-ratio:16/9;pointer-events:none;width:100%;position:absolute;top:0;left:0}.video-overlay svg{width:100%;height:100%;display:block}.video:fullscreen{border-radius:0;flex-direction:column;justify-content:center;display:flex}.video:fullscreen video{aspect-ratio:auto;flex:1;min-height:0}.video-placeholder{aspect-ratio:16/9;background:var(--surface-2);width:100%;color:var(--text-3);border-radius:var(--r-lg);justify-content:center;align-items:center;display:flex}.player-controls{--text:#f3f4f1;--text-2:#b4bab6;--text-3:#8f9692;--surface-2:#202328;--focus:#d4f25a;--accent-subtle:#d4f25a29;--accent-text:#d4f25a;gap:var(--s-2);padding:var(--s-2) var(--s-3) var(--s-3);color:var(--text);background:#16181b;flex-direction:column;display:flex}.player-controls :focus-visible{outline:2px solid var(--focus);outline-offset:2px}.player-row{align-items:center;gap:var(--s-1);display:flex}.player-time{color:var(--text-2);font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.seek{accent-color:#d4f25a;cursor:pointer;background:0 0;width:100%;min-height:32px;margin:0}.player-status{padding:0 var(--s-1);color:var(--text-2);font-size:12.5px}.player-keys{color:var(--text-2);font-size:13px}.player-keys summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.player-keys dl{margin:0 0 var(--s-2);grid-template-columns:max-content 1fr;gap:4px 12px;display:grid}.player-keys dl>div{display:contents}.player-keys dt{color:var(--text);font-weight:650}.player-keys dd{margin:0}.video-caption{padding:0 var(--s-3) var(--s-3);color:#b4bab6;background:#16181b;margin:0;font-size:12px;line-height:16px}.video video::cue{font-family:var(--font)}.thumb{aspect-ratio:16/10;object-fit:cover;background:var(--surface-2);width:116px;height:auto;color:var(--text-3);border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.step{gap:var(--s-3);padding-bottom:var(--s-4);display:flex;position:relative}.step:last-child{padding-bottom:0}.step:before{content:"";background:var(--divider);width:2px;position:absolute;top:30px;bottom:2px;left:13px}.step:last-child:before{display:none}.step-dot{background:var(--surface-2);width:28px;height:28px;color:var(--text-3);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.step-dot .ic{width:15px;height:15px}.step-done .step-dot{background:var(--success-bg);color:var(--success-text)}.step-current .step-dot{background:var(--info-bg);color:var(--info-text)}.step-failed .step-dot{background:var(--danger-bg);color:var(--danger-text)}.step-body{flex-direction:column;gap:2px;padding-top:4px;display:flex}.field{flex-direction:column;gap:8px;display:flex}.field label{color:var(--text-2);font-size:13px;font-weight:600;line-height:18px}.field input,.field select{background:var(--surface);height:54px;box-shadow:inset 0 0 0 1.5px var(--border-control);font:inherit;color:var(--text);border:0;border-radius:14px;padding:0 16px;font-size:16px}.field input:focus-visible,.field select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.field .hint{color:var(--text-2);margin:0;font-size:12.5px}.tabbar{border-top:1px solid var(--divider);background:var(--bg);padding-bottom:env(safe-area-inset-bottom,0);flex:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:sticky;bottom:0}.tab{min-height:56px;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11.5px;font-weight:600;text-decoration:none;display:flex}.tab[aria-current=page]{color:var(--text)}.tab[aria-current=page] .ic{color:var(--accent-text)}.segmented{border-radius:var(--r-full);background:var(--surface);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;padding:4px;display:grid}.segmented button{border-radius:var(--r-full);min-height:40px;color:var(--text-2);font:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:600;overflow:hidden}.segmented button[aria-pressed=true]{background:var(--accent-fill);color:var(--on-accent)}.stepper{border-radius:var(--r-full);background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--border-control);align-items:center;gap:4px;padding:4px;display:inline-flex}.stepper-value{width:3ch;min-width:44px;height:40px;color:var(--text);font:inherit;text-align:center;appearance:textfield;background:0 0;border:0;font-size:20px;font-weight:700}.stepper-value::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper-value::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.game-row{gap:var(--s-2);grid-template-columns:64px minmax(0,1fr) minmax(0,1fr);place-items:center;display:grid}.game-row>:first-child{justify-self:start}.scoreboard{border-collapse:collapse;width:100%;font-size:16px}.scoreboard th,.scoreboard td{text-align:center;padding:8px 4px}.scoreboard th[scope=row]{text-align:left;font-weight:650}.scoreboard thead th{color:var(--text-3);font-size:12px;font-weight:650}.scoreboard .won{font-weight:750}.scoreboard .lost{color:var(--text-3)}.score-big{margin:0;font-size:40px;font-weight:800;line-height:44px}.move{align-items:center;gap:4px;font-size:13px;font-weight:650;display:inline-flex}.move-up{color:var(--success-text)}.move-down{color:var(--danger-text)}.move-same{color:var(--text-3)}.tiles{gap:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tile{padding:var(--s-4);border-radius:var(--r-lg);background:var(--surface);color:inherit;flex-direction:column;gap:4px;text-decoration:none;display:flex}.tile-value{margin:0;font-size:28px;font-weight:800;line-height:32px}.rank-row{gap:var(--s-3);min-height:64px;padding:8px var(--s-4);color:inherit;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;text-decoration:none;display:grid}.rank-row.you{background:var(--accent-subtle)}.rank-num{text-align:center;color:var(--text-2);font-size:18px;font-weight:750}.form-strip{gap:6px;margin:0;padding:0;list-style:none;display:flex}.form-strip li{border-radius:var(--r-sm);place-items:center;width:32px;height:32px;font-size:13px;font-weight:750;display:grid}.form-strip .win{background:var(--success-bg);color:var(--success-text)}.form-strip .loss{background:var(--danger-bg);color:var(--danger-text)}.chart{width:100%;height:auto}.chart .grid{stroke:var(--divider);stroke-width:1px}.chart .line{fill:none;stroke:var(--accent-text);stroke-width:2.5px;stroke-linejoin:round}.chart .dot{fill:var(--accent-text)}.chart text{fill:var(--text-3);font-size:11px}.choice{gap:var(--s-3);min-height:48px;padding:12px var(--s-4);cursor:pointer;align-items:flex-start;display:flex}.choice input{width:20px;height:20px;accent-color:var(--accent-text);flex:none;margin:2px 0 0}.choice input:disabled+span{color:var(--text-3)}fieldset.plain{border:0;min-width:0;margin:0;padding:0}.kv{margin:0}.kv>div{justify-content:space-between;gap:var(--s-4);padding:10px 0;font-size:14px;line-height:20px;display:flex}.kv>div+div{border-top:1px solid var(--divider)}.kv dt{color:var(--text-2);margin:0}.kv dd{text-align:right;overflow-wrap:anywhere;margin:0;font-weight:600}.table-wrap{border-radius:var(--r-lg);background:var(--surface);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:14px}.table th,.table td{text-align:left;padding:10px var(--s-4);border-bottom:1px solid var(--divider);vertical-align:top}.table th{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:12px;font-weight:650}.table tr:last-child td{border-bottom:0}@media (min-width:768px){.content{padding-top:var(--s-4)}.tab{flex-direction:row;font-size:14px}}.moment-strip{height:44px;margin:0 var(--s-2);border-radius:var(--r-sm);background:var(--surface-2);position:relative}.moment-strip-preview{border-radius:var(--r-sm);background:var(--accent-subtle);position:absolute;inset:0 auto 0 0}.moment-marker{cursor:pointer;background:0 0;border:0;width:28px;height:44px;margin-left:-14px;padding:0;position:absolute;top:0}.moment-marker:before{content:"";background:var(--text-2);border-radius:2px;width:4px;position:absolute;top:6px;bottom:6px;left:12px}.moment-marker.mine:before{background:var(--accent-text)}.moment-marker[aria-disabled=true]:before{opacity:.45}.moment-marker:focus-visible{outline:2px solid var(--focus);outline-offset:0;border-radius:var(--r-sm)}.btn-mark{min-height:64px;font-size:17px}.accent-text{color:var(--accent-text)}.moment-time{font-variant-numeric:tabular-nums}.field textarea{background:var(--surface);min-height:88px;box-shadow:inset 0 0 0 1.5px var(--border-control);font:inherit;color:var(--text);resize:vertical;border:0;border-radius:14px;padding:12px 16px;font-size:16px}.field textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.pick{border-radius:var(--r-lg);background:var(--surface);min-height:176px;box-shadow:inset 0 0 0 1.5px var(--border-control);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.pick:focus-within{outline:2px solid var(--focus);outline-offset:2px}.pick-icon{background:var(--surface-2);width:56px;height:56px;color:var(--accent-text);border-radius:18px;justify-content:center;align-items:center;display:inline-flex}.bar{background:var(--surface-3);border-radius:4px;height:8px;position:relative;overflow:hidden}.bar-fill{background:var(--info-text);border-radius:4px;position:absolute;inset:0 auto 0 0}.switch-hit{flex:none;justify-content:center;align-items:center;min-width:52px;min-height:48px;display:inline-flex}.switch{appearance:none;cursor:pointer;background:var(--surface-3);width:52px;height:32px;box-shadow:inset 0 0 0 1.5px var(--border-control);border:0;border-radius:16px;margin:0;padding:0;position:relative}.switch:after{content:"";background:var(--text-2);border-radius:50%;width:24px;height:24px;transition:transform .16s;position:absolute;top:4px;left:4px}.switch[aria-checked=true]{background:var(--accent-fill);box-shadow:none}.switch[aria-checked=true]:after{background:var(--on-accent);transform:translate(20px)}.switch:disabled{cursor:not-allowed;opacity:.6}.purpose{gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-lg);background:var(--surface);align-items:flex-start;display:flex}.purpose-icon{background:var(--surface-2);width:40px;height:40px;color:var(--text);border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.purpose-on .purpose-icon{background:var(--accent-subtle);color:var(--accent-text)}.avatar{background:var(--surface-3);width:40px;height:40px;color:var(--text);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:650;display:inline-flex}.avatar-you{background:var(--accent);color:#14170a}.check-row{align-items:flex-start;gap:var(--s-3);min-height:56px;padding:14px var(--s-4);background:var(--surface);border-radius:var(--r-md);cursor:pointer;display:flex}.check-row input{width:22px;height:22px;accent-color:var(--accent-fill);flex:none;margin:1px 0 0}.rec-label{color:var(--rec-text,var(--danger-text))}.rec-timer{font-variant-numeric:tabular-nums;margin:0;font-size:48px;font-weight:600;line-height:56px}.scrim{background:var(--scrim);z-index:20;position:fixed;inset:0}.sheet{z-index:21;background:var(--surface);border-radius:var(--r-xl) var(--r-xl) 0 0;max-width:560px;max-height:90dvh;padding:10px var(--s-5) var(--s-6);gap:var(--s-4);box-shadow:var(--shadow);flex-direction:column;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.grabber{background:var(--surface-3);border-radius:3px;align-self:center;width:40px;height:5px}@media (prefers-reduced-motion:reduce){.switch:after{transition:none}}.calib-viewport{border-radius:var(--r-md);background:var(--surface-2);max-height:70vh;overflow:auto}.calib-stage{min-width:100%;position:relative}.calib-frame{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.calib-overlay{width:100%;height:100%;position:absolute;inset:0}.calib-pick{cursor:crosshair}.calib-line{fill:none;stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke;opacity:.8}.calib-mark line{stroke:var(--danger-text);stroke-width:2px;vector-effect:non-scaling-stroke}.calib-mark-selected line{stroke:var(--focus);stroke-width:3px}.calib-points{border:0;margin:0;padding:0}.calib-point-row{flex-wrap:wrap;min-height:48px}.calib-point-row>.btn:first-child{justify-content:flex-start;min-width:15em}.calib-coord input{border-radius:var(--r-sm);background:var(--surface);width:6.5em;height:40px;box-shadow:inset 0 0 0 1.5px var(--border-control);font:inherit;color:inherit;border:0;padding:0 8px}.calib-coord input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.theme-dark{--heat:#d4f25a;--track-near:#d4f25a;--track-far:#8cbcff}.theme-light{--heat:#4a6100;--track-near:#d4f25a;--track-far:#8cbcff}.analysis-head{justify-content:space-between;align-items:center}.analysis-court{align-items:center;gap:var(--s-2);flex-direction:column;display:flex}.court-map{background:var(--surface-2);border-radius:var(--r-md);width:min(100%,280px);height:auto}.court-floor{fill:var(--surface-3)}.court-heat{fill:var(--heat)}.court-line{stroke:var(--text-2);stroke-width:.04px}.court-net{stroke:var(--text);stroke-width:.08px;stroke-dasharray:.15 .1}.stat-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0;display:grid}.stat,.stat dd{margin:0}.zone-table td,.zone-table th{text-align:center}.track-box rect{fill:none;stroke-width:3px}.track-box text{font:600 22px var(--font);paint-order:stroke;stroke:#000;stroke-width:4px}.track-near rect{stroke:var(--track-near)}.track-near text{fill:var(--track-near)}.track-far rect{stroke:var(--track-far)}.track-far text{fill:var(--track-far)}.track-second rect{stroke-dasharray:10 6}.activity-strip{margin:0}.activity-strip svg{border-radius:var(--r-sm);width:100%;height:10px;display:block;overflow:hidden}.activity-active{fill:var(--heat);background:var(--heat)}.activity-still{fill:var(--track-far);background:var(--track-far)}.activity-none{fill:var(--surface-3);background:var(--surface-3)}.activity-playhead{fill:var(--text)}.activity-key{vertical-align:middle;border-radius:2px;width:10px;height:10px;display:inline-block}
