#root:has(.prefs-workspace){max-width:none;padding:0}#root:has(.prefs-workspace)>main{max-width:none;margin:0;padding:0}.prefs-workspace,.prefs-dialog{--prefs-accent:var(--accent-text);--prefs-soft:var(--surface-2);--prefs-green-soft:var(--court-soft)}.prefs-workspace{background:var(--surface);min-height:100dvh;color:var(--fg)}.prefs-workspace *,.prefs-dialog *{box-sizing:border-box}.prefs-workspace button,.prefs-dialog button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.prefs-workspace button:disabled,.prefs-dialog button:disabled{opacity:.48;cursor:default}.prefs-workspace svg,.prefs-dialog svg{flex-shrink:0}.prefs-header{height:var(--header-height);padding:0 var(--page-gutter);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;display:flex}.prefs-brand{color:var(--fg);background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex;font-size:18px!important;font-weight:700!important}.prefs-brand svg{color:var(--court)}.prefs-layout{max-width:1120px;padding:var(--page-space) var(--page-gutter) 48px;grid-template-columns:216px minmax(0,760px);gap:32px;margin:0 auto;display:grid}.prefs-sidebar{border-right:1px solid var(--border);padding-right:24px}.prefs-sidebar h1{letter-spacing:0;margin:0 0 26px 12px;font-size:23px;font-weight:650;line-height:1.4}.prefs-sidebar nav{gap:6px;display:grid}.prefs-sidebar nav button{border-radius:var(--r-sm);text-align:left;min-height:46px;color:var(--muted);background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.prefs-sidebar nav button[aria-current=page]{background:var(--prefs-green-soft);color:var(--prefs-accent);font-weight:700}.prefs-sidebar nav button:not(:disabled):focus-visible{background:var(--prefs-soft);color:var(--fg)}.prefs-sidebar nav button[aria-current=page]:not(:disabled):focus-visible{background:var(--prefs-green-soft);color:var(--prefs-accent);border-color:var(--court)}.prefs-content{min-width:0}.prefs-content>h1{font-size:var(--page-title);letter-spacing:0;margin:0 0 24px;font-weight:650;line-height:1.4}.prefs-content>h1:focus{outline:0}.prefs-section{border-bottom:1px solid var(--border);margin:0 0 24px;padding:0 0 24px}.prefs-section:last-of-type{margin-bottom:0}.prefs-section>h2,.prefs-receive h2{margin:0 0 16px;font-size:15px;font-weight:700;line-height:1.5}.prefs-description{color:var(--muted);margin:-4px 0 18px;font-size:13px;line-height:1.75}.prefs-button{background:var(--surface);min-height:44px;color:var(--fg);border:1px solid var(--control-border);border-radius:var(--r-sm);white-space:nowrap;box-shadow:none;justify-content:center;align-items:center;gap:8px;padding:10px 16px;line-height:1.5;display:inline-flex;font-size:13px!important;font-weight:600!important}.prefs-button:focus-visible:not(:disabled){border-color:var(--accent-text);background:var(--surface-2)}.prefs-button.primary{color:#fff;background:var(--action);border-color:var(--action)}.prefs-button.primary:focus-visible:not(:disabled){background:var(--action-hover);border-color:var(--action-hover)}.prefs-button.quiet{padding-inline:12px}.prefs-back{min-height:36px;font-weight:500!important}.prefs-account-row{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.prefs-avatar{background:var(--prefs-soft);border:1px solid var(--border);width:44px;height:44px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.prefs-account-name{gap:5px;min-width:0;display:grid}.prefs-account-name strong{overflow-wrap:anywhere;font-size:15px;font-weight:600}.prefs-account-name>span{color:var(--muted);font-size:12px}.prefs-theme-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.prefs-theme{border:1px solid var(--control-border);border-radius:var(--r-lg);background:var(--surface);min-width:0;color:var(--fg);text-align:left;padding:6px}.prefs-theme.selected{border-color:var(--court);background:var(--prefs-green-soft)}.prefs-theme:focus-visible:not(:disabled){border-color:var(--court)}.prefs-theme-preview{background:#fff;border:1px solid #e1e5e8;border-radius:3px;grid-template-columns:24% 1fr;height:82px;display:grid;overflow:hidden}.prefs-theme-preview i{background:#f2f4f6;border-right:1px solid #e5e8eb}.prefs-theme-preview>span{flex-direction:column;gap:7px;padding:15px 12px;display:flex}.prefs-theme-preview b{background:#e9edf0;border-radius:2px;height:5px;display:block}.prefs-theme-preview b:first-child{background:#d8eee4;width:62%;margin-bottom:3px}.prefs-theme-preview.theme-dark{background:#161f30;border-color:#303d51}.prefs-theme-preview.theme-dark i{background:#0d1522;border-color:#2d3949}.prefs-theme-preview.theme-dark b{background:#354258}.prefs-theme-preview.theme-dark b:first-child{background:#28785c}.prefs-theme-preview.theme-system{background:linear-gradient(115deg,#fff 49%,#161f30 49.5%)}.prefs-theme-preview.theme-system b{background:linear-gradient(115deg,#e9edf0 35%,#354258 36%)}.prefs-theme-preview.theme-system b:first-child{background:#9dc9b6}.prefs-theme-label{justify-content:space-between;align-items:center;gap:4px;min-height:37px;padding:8px 4px 2px;font-size:12px;font-weight:500;display:flex}.prefs-radio{border:1px solid var(--border);background:var(--surface);border-radius:50%;flex-shrink:0;place-items:center;width:15px;height:15px;display:grid}.selected .prefs-radio{border-color:var(--court-strong);background:var(--court-strong);color:#fff}.prefs-save-state{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.prefs-save-icon{width:44px;height:44px;color:var(--muted);background:var(--prefs-soft);border-radius:50%;place-items:center;display:grid}.prefs-save-icon.saved{color:var(--prefs-accent);background:var(--prefs-green-soft)}.prefs-save-state strong{font-size:15px;font-weight:600;line-height:1.5}.prefs-save-state p{color:var(--muted);margin:6px 0 0;font-size:12px}.prefs-data-counts{color:var(--muted);gap:28px;margin-top:22px;font-size:12px;display:flex}.prefs-data-counts>span{align-items:baseline;gap:7px;display:flex}.prefs-data-counts strong{color:var(--fg);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.prefs-paired-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.prefs-link-row{border:1px solid var(--control-border);border-radius:var(--r-sm);text-align:left;background:var(--surface);width:100%;min-height:56px;color:var(--fg);align-items:center;gap:14px;padding:12px 14px;display:flex}.prefs-link-row:focus-visible:not(:disabled){border-color:var(--muted);background:var(--prefs-soft)}.prefs-link-row>span:first-of-type{flex:1;gap:5px;min-width:0;display:grid}.prefs-link-row strong{font-size:14px;font-weight:600}.prefs-link-row small{color:var(--muted);font-size:12px;line-height:1.6}.prefs-row-count{white-space:nowrap;color:var(--muted);font-size:12px}.prefs-notice{background:color-mix(in srgb, var(--court) 7%, var(--surface));border-left:3px solid var(--court);color:var(--fg);overflow-wrap:anywhere;margin:18px 0 0;padding:12px 14px;font-size:13px;line-height:1.7}.prefs-notice.is-error{border-color:var(--loss);background:var(--loss-soft)}.prefs-dialog{border-radius:var(--r-lg);max-width:500px;padding:24px}.prefs-dialog>h2{margin-bottom:20px;font-size:18px}.prefs-dialog-copy{overflow-wrap:anywhere;color:var(--muted);margin:0 0 18px;font-size:14px;line-height:1.8}.prefs-dialog-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:24px;padding-top:20px;display:flex}.prefs-import-counts{margin:0 0 22px}.prefs-import-counts>div{border-bottom:1px solid var(--border);justify-content:space-between;padding:9px 0;font-size:14px;display:flex}.prefs-import-counts dd{font-variant-numeric:tabular-nums;margin:0}.prefs-parent-link{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:5px;align-items:center;gap:4px;min-height:32px;margin:-8px 0 18px;padding:4px 8px;display:inline-flex;font-size:12px!important}.prefs-trash-toolbar{grid-template-columns:minmax(0,1fr) 120px;gap:12px;margin-bottom:12px;display:grid}.prefs-search{border:1px solid var(--control-border);border-radius:var(--r-sm);color:var(--muted);background:var(--surface);align-items:center;gap:8px;min-width:0;padding:0 12px;display:flex}.prefs-search:focus-within{border-color:var(--court)}.prefs-search input[type=search]{width:100%;min-width:0;height:44px;box-shadow:none;background:0 0;border:0;padding:0;font-size:14px}.prefs-search input[type=search]:focus{box-shadow:none}.prefs-trash-toolbar .dropdown-trigger{border-radius:var(--r-sm);min-height:44px;box-shadow:none;font-size:13px}.prefs-trash-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.prefs-trash-name{gap:8px;min-width:0;display:grid}.prefs-trash-name>strong{overflow-wrap:anywhere;font-size:14px;font-weight:600}.prefs-trash-name>small{color:var(--muted);font-size:11px;line-height:1.7}.prefs-trash-actions{flex-shrink:0;gap:8px;display:flex}.prefs-trash-actions .prefs-button{padding-inline:12px}.prefs-empty{text-align:center;color:var(--muted);justify-items:center;gap:15px;padding:56px 0;display:grid}.prefs-empty strong{color:var(--fg);font-size:14px;font-weight:500}.prefs-empty p{margin:0;font-size:12px}.prefs-match-label{text-align:left;overflow-wrap:anywhere;gap:5px;min-width:0;display:grid}.prefs-match-label strong{font-size:14px;font-weight:600;line-height:1.7}.prefs-match-label>span{color:var(--muted);font-size:12px;line-height:1.7}.prefs-match-label small{color:var(--muted);font-size:11px;line-height:1.7}.prefs-versus{color:var(--muted);padding-inline:10px;font-weight:400}.prefs-segmented{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);width:240px;margin-bottom:24px;padding:3px;display:flex}.prefs-segmented button{color:var(--muted);background:0 0;border:1px solid #0000;border-radius:4px;flex:1;min-height:36px;font-size:13px;font-weight:500}.prefs-segmented button[aria-pressed=true]{background:var(--selected-surface);color:var(--accent-text);border-color:#0000}.prefs-segmented button:focus-visible:not(:disabled){border-color:var(--accent-text)}.prefs-field{gap:8px;margin-bottom:24px;display:grid}.prefs-field>label{font-size:13px;font-weight:600}.prefs-field>input{border-radius:var(--r-sm);border:1px solid var(--control-border);min-height:44px;box-shadow:none;background:var(--surface);color:var(--fg);padding:10px 12px;font-family:inherit;font-size:14px}.prefs-match-select{background:var(--surface);width:100%;color:var(--muted);border:1px solid var(--control-border);border-radius:var(--r-sm);justify-content:space-between;align-items:center;gap:14px;min-height:48px;padding:12px;display:flex;font-size:14px!important}.prefs-match-select.has-match{color:var(--fg);padding:16px}.prefs-match-select:focus-visible:not(:disabled){border-color:var(--court)}.prefs-recipient{border:1px solid var(--border);border-radius:var(--r-sm);justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:8px 10px 8px 14px;font-size:14px;display:flex}.prefs-recipient>span{overflow-wrap:anywhere}.prefs-recipient-results{border:1px solid var(--border);border-radius:var(--r-sm);margin-top:-4px;overflow:hidden}.prefs-recipient-results>button{text-align:left;border:0;border-bottom:1px solid var(--border);background:var(--surface);width:100%;color:var(--fg);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:12px;padding:13px;font-size:14px;display:flex}.prefs-recipient-results>button:last-child{border-bottom:0}.prefs-recipient-results>button:not(:disabled):focus-visible{background:var(--prefs-green-soft)}.prefs-recipient-results>p{color:var(--muted);padding:10px 14px;font-size:13px}.prefs-share-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding-top:20px;display:flex}.prefs-share-footer>p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.prefs-share-footer>button{min-width:116px}.prefs-received-match{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding:18px 0;display:flex}.prefs-received-match>svg{color:var(--court)}.prefs-match-options{max-height:48dvh;margin:12px 0 0;overflow-y:auto}.prefs-match-options>button{background:var(--surface);border:0;border-bottom:1px solid var(--border);width:100%;color:var(--fg);justify-content:space-between;align-items:center;gap:12px;padding:16px 10px;display:flex}.prefs-match-options>button:not(:disabled):focus-visible{background:color-mix(in srgb, var(--court) 8%, var(--surface))}@media (width<=900px){.prefs-layout{grid-template-columns:172px minmax(0,1fr)}.prefs-sidebar{padding-right:18px}}@media (width<=700px){.prefs-brand{gap:7px;font-size:14px!important}.prefs-brand svg{width:22px}.prefs-back{gap:2px;padding:6px 8px;font-size:12px!important}.prefs-layout{padding:0 var(--page-gutter) 40px;display:block}.prefs-sidebar{border:0;padding:24px 0 0}.prefs-sidebar h1{margin:0 0 20px;font-size:24px}.prefs-sidebar nav{border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.prefs-sidebar nav button{border:0;border-bottom:2px solid #0000;border-radius:0;justify-content:center;gap:6px;margin-bottom:-1px;padding:10px 0;font-size:13px}.prefs-sidebar nav button svg{width:17px;height:17px}.prefs-sidebar nav button[aria-current=page]{border-bottom-color:var(--court);background:0 0}.prefs-content{padding-top:24px}.prefs-content>h1{margin-bottom:28px}.prefs-section{margin-bottom:24px;padding-bottom:24px}.prefs-section>h2,.prefs-receive h2{margin-bottom:16px;font-size:14px}.prefs-account-row{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}.prefs-avatar{width:36px;height:36px}.prefs-avatar svg{width:19px}.prefs-account-row>button{padding-inline:12px}.prefs-account-name strong{font-size:14px}.prefs-theme-options{gap:10px}.prefs-theme{padding:4px}.prefs-theme-preview{height:66px}.prefs-theme-preview>span{gap:6px;padding:12px 7px}.prefs-theme-preview b{height:4px}.prefs-theme-label{padding-inline:2px}.prefs-save-state{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}.prefs-save-icon{width:36px;height:36px}.prefs-save-icon svg{width:20px}.prefs-save-state>button{padding-inline:12px}.prefs-save-state strong{font-size:14px}.prefs-data-counts{gap:24px;margin-top:24px}.prefs-data-counts strong{font-size:19px}.prefs-paired-actions{gap:10px}.prefs-paired-actions .prefs-button{gap:5px;padding-inline:8px}.prefs-paired-actions svg{width:16px}.prefs-link-row{gap:10px;padding:12px}.prefs-link-row small{font-size:11px}.prefs-trash-toolbar{grid-template-columns:minmax(0,1fr) 98px;gap:8px}.prefs-search{padding-inline:10px}.prefs-search input[type=search],.prefs-field>input,.prefs-feedback .feedback-input{font-size:16px}.prefs-trash-row{flex-wrap:wrap;gap:12px;padding-block:18px}.prefs-trash-name{flex:190px}.prefs-trash-match .prefs-trash-name{flex-basis:100%}.prefs-trash-actions{margin-left:auto}.prefs-trash-actions .prefs-button{min-height:44px}.prefs-segmented{width:100%}.prefs-share-footer{flex-direction:column;align-items:stretch;gap:14px}.prefs-share-footer .prefs-button{width:100%}.prefs-recipient{font-size:13px}.prefs-dialog{width:calc(100% - 28px);padding:20px}.prefs-dialog-actions{padding-top:18px}.prefs-dialog-actions .prefs-button{padding-inline:12px}.prefs-parent-link{margin-top:-5px}}@media (width<=420px){.prefs-theme-label .prefs-radio{display:none}.prefs-theme-label{justify-content:center}}@media (width<=360px){.prefs-sidebar nav button{gap:5px;font-size:12px}.prefs-sidebar nav button svg{width:15px}.prefs-paired-actions svg{display:none}.prefs-data-counts{gap:18px}.prefs-data-counts>span{gap:5px}.prefs-account-row,.prefs-save-state{grid-template-columns:36px minmax(0,1fr)}.prefs-account-row>button,.prefs-save-state>button{grid-column:2;justify-self:start;margin-top:4px}}.help-topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}.help-topics h2{color:var(--muted);margin:0 0 10px;font-size:13px;font-weight:500}.help-topics section>button{border:0;border-bottom:1px solid var(--border);width:100%;min-height:48px;color:var(--fg);text-align:left;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 0;font-size:14px;display:flex}.help-topics section>button:not(:disabled):focus-visible{color:var(--prefs-accent);background:var(--prefs-green-soft)}.help-topics section>button svg{color:var(--muted)}.help-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:32px;padding-top:20px;display:flex}.help-steps{gap:16px;margin:0;padding-left:22px;font-size:14px;line-height:1.8;display:grid}.help-steps li{padding-left:5px}.help-steps li::marker{color:var(--muted);font-variant-numeric:tabular-nums}.help-note{color:var(--muted);margin:22px 0 0;font-size:13px;line-height:1.8}.help-choices,.help-keys{margin:0}.help-choices>div{border-bottom:1px solid var(--border);padding:16px 0}.help-choices>div:first-child{padding-top:0}.help-choices dt{font-size:15px;font-weight:600}.help-choices dd{color:var(--muted);margin:8px 0 0;font-size:13px}.help-keys>div{border-bottom:1px solid var(--border);grid-template-columns:100px 1fr;gap:12px;padding:12px 0;font-size:13px;display:grid}.help-keys dd{color:var(--muted);margin:0}@media (width<=700px){.help-topics{gap:24px}.help-topics section>button{min-height:52px;font-size:13px}.help-footer{gap:8px}.help-footer .prefs-button{padding-inline:10px}}@media (width<=360px){.help-topics{gap:16px}.help-topics section>button{min-height:44px}.help-footer .prefs-button{font-size:12px!important}}.prefs-account-end{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.prefs-legal{flex-wrap:wrap;gap:12px 20px;font-size:12px;display:flex}.prefs-legal a{color:var(--muted);text-underline-offset:4px}.prefs-button.danger{color:var(--loss);border-color:color-mix(in srgb, var(--loss) 40%, var(--border));background:var(--surface)}.prefs-brand:focus-visible{color:var(--prefs-accent);background:var(--prefs-soft)}.prefs-parent-link:focus-visible:not(:disabled){color:var(--fg);background:var(--prefs-soft);border-color:var(--accent-text)}.prefs-theme.selected:focus-visible:not(:disabled){border-color:var(--accent-text);background:color-mix(in srgb, var(--court) 18%, var(--surface))}.prefs-button.danger:focus-visible:not(:disabled){color:var(--loss);border-color:var(--loss);background:var(--loss-soft)}.prefs-legal a:focus-visible{color:var(--accent-text);background:var(--surface-2);text-decoration-thickness:2px}@media (hover:hover){.prefs-brand:hover{color:var(--prefs-accent)}.prefs-sidebar nav button:not(:disabled):hover{color:var(--fg);background:var(--prefs-soft)}.prefs-sidebar nav button[aria-current=page]:not(:disabled):hover{color:var(--prefs-accent);background:var(--prefs-green-soft);border-color:var(--court)}.prefs-button:not(:disabled):hover,.prefs-parent-link:not(:disabled):hover{border-color:var(--muted);background:var(--surface-2)}.prefs-button.primary:not(:disabled):hover{color:var(--on-accent);border-color:var(--action-hover);background:var(--action-hover)}.prefs-button.danger:not(:disabled):hover{color:var(--loss);border-color:var(--loss);background:var(--loss-soft)}.prefs-theme:not(:disabled):hover{border-color:var(--court)}.prefs-theme.selected:not(:disabled):hover{background:color-mix(in srgb, var(--court) 14%, var(--surface))}.prefs-link-row:not(:disabled):hover{border-color:var(--muted);background:var(--prefs-soft)}.prefs-match-select:not(:disabled):hover{border-color:var(--court);background:var(--surface-2)}.prefs-segmented button:not(:disabled):hover{color:var(--fg);background:var(--surface-3)}.prefs-segmented button[aria-pressed=true]:not(:disabled):hover{color:var(--accent-text);background:var(--selected-surface);border-color:var(--control-border)}.prefs-recipient-results>button:not(:disabled):hover,.prefs-match-options>button:not(:disabled):hover,.help-topics section>button:not(:disabled):hover{color:var(--prefs-accent);background:var(--prefs-green-soft)}.prefs-legal a:hover{color:var(--accent-text);text-decoration-thickness:2px}}.prefs-brand:active,.prefs-parent-link:not(:disabled):active,.prefs-button:not(:disabled):active,.prefs-sidebar nav button:not(:disabled):active,.prefs-link-row:not(:disabled):active,.prefs-match-select:not(:disabled):active,.prefs-recipient-results>button:not(:disabled):active,.prefs-match-options>button:not(:disabled):active,.help-topics section>button:not(:disabled):active{background:var(--surface-3)}.prefs-button.primary:not(:disabled):active{color:var(--on-accent);background:color-mix(in srgb, var(--action-hover) 85%, black);border-color:var(--action-hover)}.prefs-button.danger:not(:disabled):active{color:var(--loss);background:color-mix(in srgb, var(--loss) 18%, var(--surface));border-color:var(--loss)}.prefs-theme:not(:disabled):active,.prefs-segmented button:not(:disabled):active{background:color-mix(in srgb, var(--court) 18%, var(--surface));border-color:var(--accent-text)}.prefs-theme.selected:not(:disabled):active,.prefs-segmented button[aria-pressed=true]:not(:disabled):active,.prefs-sidebar nav button[aria-current=page]:not(:disabled):active{background:color-mix(in srgb, var(--court) 22%, var(--surface));border-color:var(--accent-text)}.prefs-legal a:active{color:var(--fg);background:var(--surface-3)}:root{--bg:#0b0f19;--track:#070a10;--surface:#161f30;--card:#161f30;--surface-2:#1e293b;--surface-3:#263449;--elevated:#2d3d54;--border:#24324a;--hairline:#1a2436;--fg:#f1f5f9;--muted:#94a3b8;--faint:#64748b;--on-accent:#fff;--court:#10b981;--court-strong:#059669;--red:#ef4444;--blue:#3b82f6;--red-text:#fca5a5;--blue-text:#93c5fd;--win:#10b981;--loss:#ef4444;--warn:#f59e0b;--info:#3b82f6;--motion:#d946ef;--court-soft:#10b98129;--red-soft:#ef444429;--blue-soft:#3b82f629;--win-soft:#10b98129;--loss-soft:#ef444429;--warn-soft:#f59e0b2e;--info-soft:#3b82f629;--court-surface:#0f766e;--court-runoff:#0f172a;--court-line:#ccfbf1;--court-net:#99f6e4;--press:#ffffff14;--ring:#fff3;--scrim:#000000bf;--r-sm:6px;--r-md:6px;--r-lg:8px;--r-pill:999px;--action:#047857;--action-hover:#065f46;--accent-text:#6ee7b7;--control-border:#526178;--selected-surface:#263449;--control-height:44px;--header-height:68px;--page-gutter:24px;--page-space:32px;--section-gap:24px;--panel-pad:20px;--page-title:28px;--sh-1:0 1px 3px #0006, 0 1px 2px #0003;--sh-2:0 10px 15px -3px #00000080, 0 4px 6px -4px #0006;--sh-pop:0 20px 25px -5px #0009, 0 8px 10px -6px #0009;color:var(--fg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,Noto Sans JP,system-ui,-apple-system,sans-serif}[data-theme=light]{--bg:#f8fafc;--track:#f1f5f9;--surface:#fff;--card:#fff;--surface-2:#f1f5f9;--surface-3:#e2e8f0;--elevated:#fff;--border:#e2e8f0;--hairline:#f1f5f9;--fg:#0f172a;--muted:#64748b;--faint:#94a3b8;--on-accent:#fff;--court:#059669;--court-strong:#047857;--accent-text:#047857;--control-border:#cbd5e1;--selected-surface:#fff;--red:#dc2626;--blue:#2563eb;--red-text:#b91c1c;--blue-text:#1d4ed8;--win:#059669;--loss:#dc2626;--warn:#d97706;--info:#2563eb;--motion:#c084fc;--court-soft:#05966914;--red-soft:#dc262614;--blue-soft:#2563eb14;--win-soft:#0596691a;--loss-soft:#dc262614;--warn-soft:#fffbeb;--info-soft:#eff6ff;--court-surface:#10b981;--court-runoff:#d1fae5;--court-line:#fff;--court-net:#ecfdf5;--press:#0000000a;--ring:#0000001f;--scrim:#0f172a4d;--sh-1:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--sh-2:0 4px 6px -1px #00000014, 0 2px 4px -2px #00000014;--sh-pop:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width<=760px){:root{--header-height:60px;--page-gutter:16px;--page-space:24px;--section-gap:16px;--panel-pad:16px;--page-title:24px}}*{box-sizing:border-box}html,body{background:var(--bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;padding:0}#root{max-width:760px;padding:env(safe-area-inset-top) 14px calc(env(safe-area-inset-bottom) + 24px);margin:0 auto}@media (width>=768px){#root{max-width:980px;padding-left:24px;padding-right:24px}}button:disabled{cursor:default}button{font:inherit;cursor:pointer;touch-action:manipulation}.btn,.seg button,.chip,.theme-toggle,.navbtn,.match-card-row,input[type=text],input[type=url],input[type=date],select,textarea{transition:background .16s,border-color .16s,color .16s,box-shadow .16s,filter .16s,transform 70ms}:focus-visible{outline:none}button:focus-visible,summary:focus-visible,a:focus-visible{background-color:var(--surface-2);border-color:var(--accent-text)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}@keyframes pop-in{0%{opacity:0;transform:scale(.96)translateY(-4px)}}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}h1{margin:16px 0 4px;font-size:20px}h2{margin:20px 0 8px;font-size:16px}.muted{color:var(--muted);font-size:13px}.main-tabs{margin:4px 0 14px}.appbar{background:var(--bg);z-index:100;border-bottom:1px solid var(--hairline);align-items:center;gap:12px;margin-bottom:16px;padding:10px 0;display:flex;position:sticky;top:0}.native-app .appbar{top:env(safe-area-inset-top)}.native-app body:before{content:"";height:env(safe-area-inset-top);background:var(--bg);pointer-events:none;z-index:1000;position:fixed;inset:0 0 auto}.appbar-title-group{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.appbar .title{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:18px;font-weight:650;overflow:hidden}.help-btn{border-radius:var(--r-pill);background:var(--surface-2);width:26px;height:26px;color:var(--muted);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;transition:color .16s,background-color .16s;display:inline-flex}@media (hover:hover){.help-btn:hover{color:var(--fg);background-color:var(--elevated)}}.appbar-actions{flex:none;align-items:center;gap:12px;display:flex}.theme-toggle{border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);width:42px;height:42px;color:var(--muted);flex:none;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:inline-flex}.theme-toggle:active{transform:scale(.92)}@media (hover:hover){.theme-toggle:hover{color:var(--fg);border-color:var(--muted)}}.card{background:var(--card);border-radius:var(--r-lg);box-shadow:none;border:1px solid var(--border);padding:16px;transition:transform .15s,box-shadow .15s,border-color .15s}.card+.card{margin-top:12px}.card h2{color:var(--muted);letter-spacing:0;border-bottom:1px solid var(--hairline);margin-top:0;margin-bottom:12px;padding-bottom:6px;font-size:13px;font-weight:600}.match-card-row{z-index:0;align-items:center;gap:12px;display:flex;position:relative}.match-card-row.menu-open{z-index:90}.match-card-row:has(.match-card-main:active){transform:scale(.99)}@media (hover:hover){.match-card-row:hover{border-color:color-mix(in srgb, var(--border) 40%, var(--fg));box-shadow:var(--sh-2)}body:has(.match-menu-popover) .match-card-row:not(.menu-open):hover{border-color:var(--border);box-shadow:var(--sh-1)}}.match-card-main{text-align:left;min-width:0;color:var(--fg);background:0 0;border:none;flex:1;padding:0}.mc-body{flex-direction:column;gap:7px;display:flex}.mc-meta{color:var(--muted);letter-spacing:.02em;font-size:12px;line-height:1.3}.mc-vertical-teams{flex-direction:column;gap:10px;margin-top:2px;display:flex}.mc-vertical-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.mc-vertical-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mc-vertical-team{color:var(--muted);letter-spacing:.02em;font-size:11px;font-weight:600}.mc-vertical-players{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.mc-vertical-score{width:32px;height:32px;color:var(--fg);font-variant-numeric:tabular-nums;flex:none;justify-content:center;align-items:center;font-size:18px;font-weight:800;display:inline-flex}.mc-vertical-score.circled{border:2px solid var(--fg);border-radius:50%}.match-menu{flex:none;position:relative}.match-menu-btn{min-width:42px;min-height:42px;padding:0;font-size:28px;line-height:1}.match-menu-popover{z-index:1;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);min-width:168px;box-shadow:var(--sh-2);transform-origin:100% 0;gap:2px;padding:5px;animation:.13s pop-in;display:grid;position:absolute;top:calc(100% + 6px);right:0}.match-menu-popover button{border-radius:var(--r-sm);width:100%;min-height:42px;color:var(--fg);text-align:left;background:0 0;border:none;padding:9px 13px;font-size:13px;font-weight:500;transition:background-color .12s;display:block}@media (hover:hover){.match-menu-popover button:not(:disabled):hover{background:var(--surface-2)}.match-menu-popover button.danger:not(:disabled):hover{background:color-mix(in srgb, var(--red) 12%, transparent)}}.match-menu-popover button:not(:disabled):active{background:var(--surface-3)}.match-menu-popover button.danger:not(:disabled):active{background:color-mix(in srgb, var(--red) 18%, transparent)}.match-menu-popover button:disabled{color:var(--muted)}.match-menu-popover button.danger{color:var(--red);margin-top:7px;position:relative}.match-menu-popover button.danger:before{content:"";background:var(--hairline);height:1px;position:absolute;top:-4px;left:8px;right:8px}.folder-path-title{align-items:center;gap:4px;min-width:0;display:flex}.folder-up-btn{flex:none;min-width:38px;min-height:38px;padding:0}.folder-path-segment{align-items:center;min-width:0;display:inline-flex}.folder-path-separator{color:var(--muted);margin:0 2px;font-weight:700}.folder-path-link{min-width:0;max-width:180px;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:2px 0;font-size:18px;font-weight:800;overflow:hidden}.folder-path-link:disabled{color:var(--fg)}.folder-settings-shortcut{justify-content:flex-end;gap:8px;margin:0 0 8px;display:flex}.folder-settings-shortcut-btn{min-height:36px;padding:7px 12px;font-size:13px;font-weight:800}.folder-settings-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.folder-settings-actions>.btn{min-width:128px}.folder-settings-page :is(.card,input,textarea,.btn){box-shadow:none;border-radius:6px}.folder-settings-page .btn-lg{min-height:48px;padding:12px 16px;font-size:15px}@media (width<=520px){.folder-settings-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.folder-settings-actions>.btn{min-width:0;padding-inline:10px}}.folder-delete-btn{color:var(--red)}.folder-action-stack{gap:8px;margin:0 0 14px;display:grid}.folder-action-btn{justify-content:flex-start;min-height:48px}.folder-create-form{grid-template-columns:1fr auto auto;align-items:center;gap:8px;margin:0 0 14px;display:grid}.folder-create-form input{min-width:0}.folder-screen-list{gap:8px;display:grid}.folder-screen-list .card+.card{margin-top:0}.folder-row{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);min-height:48px;color:var(--fg);text-align:left;box-shadow:var(--sh-1);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-weight:800;display:flex}.folder-row-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.folder-row-arrow{color:var(--muted);flex:none;font-size:22px;line-height:1}.move-dialog{flex-direction:column;width:min(100vw - 32px,720px);max-height:min(82vh,720px);display:flex}.folder-tree-list{border:1px solid var(--border);border-radius:var(--r-md);background:var(--hairline);gap:1px;max-height:min(58vh,520px);margin:12px 0 16px;display:grid;overflow:hidden auto}.folder-tree-option{background:var(--surface);min-height:36px;color:var(--fg);text-align:left;border:none;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:4px;padding:7px 10px;font-weight:700;display:grid}.folder-tree-option:disabled{color:var(--muted);background:var(--surface-2);cursor:default}@media (hover:hover){.folder-tree-option:not(:disabled):hover{background:var(--surface-3)}}.folder-tree-caret{text-align:center;width:18px;color:var(--muted);font-size:11px;line-height:1}.folder-tree-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.folder-settings-dialog{gap:12px;display:grid}.confirm-overlay{z-index:300;background:var(--scrim);justify-content:center;align-items:center;padding:20px;animation:.15s fade-in;display:flex;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);width:min(100vw - 32px,520px);max-height:calc(100vh - 40px);box-shadow:var(--sh-pop);padding:24px;animation:.18s cubic-bezier(.34,1.56,.64,1) dialog-in;overflow-y:auto}.confirm-dialog h2{margin:0;font-size:18px;font-weight:650;line-height:1.5}.confirm-message{color:var(--muted);margin:12px 0 18px;line-height:1.55}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.btn{letter-spacing:0;min-height:44px;color:var(--fg);background:var(--surface);border:1px solid var(--control-border);border-radius:var(--r-md);box-shadow:none;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:600;line-height:1.5;display:inline-flex}.btn:not(:disabled):active{filter:brightness(.97);transform:none}.btn:disabled{opacity:.4;box-shadow:none}.btn-primary{background:var(--action);color:var(--on-accent);box-shadow:none;border-color:#0000}.btn-primary:focus-visible{background:var(--action-hover);color:var(--on-accent)}@media (hover:hover){.btn-primary:hover:not(:disabled){background:var(--action-hover)}}.btn-red{background:var(--red);color:var(--on-accent);box-shadow:none;border-color:#0000}.btn-blue{background:var(--blue);color:var(--on-accent);box-shadow:none;border-color:#0000}.btn-ghost{color:var(--muted);box-shadow:none;background:0 0;border-color:#0000}.btn.btn-secondary{border-color:var(--control-border);background:var(--surface);min-height:44px;color:var(--fg);box-shadow:none;border-radius:6px;padding:10px 16px;font-size:13px;font-weight:600;line-height:1.5}.btn.btn-danger-outline{color:var(--red);border-color:color-mix(in srgb, var(--red) 28%, var(--border))}.btn.btn-secondary:focus-visible{box-shadow:none;border-color:var(--court);background:var(--surface-2);outline:none}@media (hover:hover){.btn.btn-secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--muted)}.btn.btn-danger-outline:hover:not(:disabled){background:var(--red-soft);border-color:var(--red)}}.btn-lg{border-radius:var(--r-lg);min-height:56px;padding:18px 16px;font-size:17px}.btn-block{width:100%}@media (hover:hover){.btn:not(:disabled):hover{border-color:var(--muted)}.btn-primary:not(:disabled):hover,.btn-red:not(:disabled):hover,.btn-blue:not(:disabled):hover{filter:none;border-color:#0000}.btn-ghost:not(:disabled):hover{background:var(--surface-2);color:var(--fg);border-color:#0000}}.row{gap:8px;display:flex}.row>*{flex:1}label.field{margin:12px 0 0;display:block}label.field>.lbl{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}input[type=text],input[type=url],input[type=email],input[type=search],input[type=date],select,textarea{border:1px solid var(--control-border);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--fg);box-shadow:none;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .16s,box-shadow .16s,background-color .16s}textarea{resize:none;min-height:72px}input[type=text]:focus,input[type=url]:focus,input[type=email]:focus,input[type=search]:focus,input[type=date]:focus,select:focus,textarea:focus{border-color:var(--accent-text);box-shadow:none;background-color:var(--surface);outline:none}.seg{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);box-shadow:none;gap:2px;padding:3px;display:flex}.seg button{white-space:nowrap;color:var(--muted);background:0 0;border:none;border-radius:4px;flex:1;padding:10px 12px;font-size:13px;font-weight:500;transition:color .15s,background-color .15s,transform 80ms}.seg.is-disabled{opacity:.45}.seg.is-disabled button{cursor:default}.seg.is-disabled button:active{transform:none}.seg button.on{background:var(--selected-surface);color:var(--fg);box-shadow:none}.seg.seg-red button.on{background:var(--red);color:var(--on-accent);box-shadow:none}.seg.seg-blue button.on{background:var(--blue);color:var(--on-accent);box-shadow:none}.seg:not(.is-disabled) button:not(:disabled):active{transform:scale(.97)}.seg button:focus:not(:focus-visible){outline:none}@media (hover:hover){.seg:not(.is-disabled) button:not(.on):not(:disabled):hover{color:var(--fg)}}.main-tabs .seg button{padding:12px 10px;font-size:15px}.score-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.score-table th,.score-table td{text-align:center;border-bottom:1px solid var(--border);padding:8px 4px}.score-table th:first-child,.score-table td:first-child{text-align:left;font-weight:600}.score-table td.win{font-weight:800}.dot{vertical-align:middle;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.dot-red{background:var(--red)}.dot-blue{background:var(--blue)}.badges{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.badge{border-radius:var(--r-pill);background:var(--surface-2);color:var(--muted);padding:4px 10px;font-size:12px;font-weight:600}.badge-final{background:var(--warn-soft);color:var(--warn)}.badge-deuce{background:var(--loss-soft);color:var(--loss)}.badge-red{background:var(--red);color:var(--on-accent)}.badge-blue{background:var(--blue);color:var(--on-accent)}.bignum{font-variant-numeric:tabular-nums;font-size:40px;font-weight:800;line-height:1}.empty{text-align:center;color:var(--muted);padding:40px 20px}.mk{width:20px;height:20px;color:var(--on-accent);vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;margin:0 5px;font-size:12px;font-weight:800;display:inline-flex}.mk-red{background:var(--red)}.mk-blue{background:var(--blue)}.score-table{border-collapse:collapse;background:var(--surface);border:2px solid var(--border);font-variant-numeric:tabular-nums;width:100%;margin-top:8px}.score-table th,.score-table td{border:1px solid var(--border);vertical-align:middle;padding:12px 14px}.score-table thead th{background:var(--surface-2);vertical-align:top;padding:14px}.st-header-row th{border-bottom:2px solid var(--border)}.st-team{width:45%}.st-team.red{text-align:left}.st-team.blue{text-align:right}.st-team-name{font-size:17px;font-weight:800}.st-team.red .st-team-name{color:var(--red)}.st-team.blue .st-team-name{color:var(--blue)}.st-players{color:var(--muted);flex-direction:column;gap:3px;margin-top:6px;font-size:14px;font-weight:400;display:flex}.st-team.blue .st-players{align-items:flex-end}.st-player{align-items:center;min-width:0;display:flex}.st-player>span:not(.mk){overflow-wrap:anywhere}.st-player .mk{flex-shrink:0}@media (width<=520px){.match-score-sheet thead th{padding:12px 8px}.match-score-sheet .st-g{width:72px}.match-score-sheet .st-total-score{grid-template-columns:1.25em .5em 1.25em;font-size:24px}.match-score-sheet .st-total-score .st-score-num{width:1.25em;height:1.25em}.match-score-sheet .st-players{font-size:13px}.match-score-sheet .st-player .mk{margin:0 3px}.match-score-sheet td{padding:10px 8px}}.st-total-score{font-variant-numeric:tabular-nums;white-space:nowrap;grid-template-columns:1.55em auto 1.55em;justify-content:center;align-items:center;column-gap:.08em;font-size:32px;font-weight:800;display:grid}.st-total-score .dash{color:var(--muted);margin:0;font-weight:400}.st-winner{margin-top:2px;font-size:16px}.st-g{text-align:center;vertical-align:middle;width:60px}.st-center{text-align:center;background:var(--surface-2);width:52px}.st-label{color:var(--muted);font-size:18px;font-weight:800;display:block}.st-gscore{grid-template-columns:1.55em auto 1.55em;justify-content:center;align-items:center;column-gap:.08em;margin-top:2px;font-size:18px;font-weight:800;display:grid}.gw-red{color:var(--red)}.gw-blue{color:var(--blue)}.st-gscore .dash{color:var(--muted);margin:0}.st-score-num{justify-content:center;align-items:center;width:1.55em;height:1.55em;line-height:1;display:inline-flex}.circled{box-sizing:border-box;border:2px solid;border-radius:50%}.st-meta{color:var(--muted);text-align:center;margin:8px 0 2px;font-size:13px}.score-sheet-actions{justify-content:flex-end;margin:8px 0 0;display:flex}.speed-sheet-paper{--sheet-paper:#fff;--sheet-ink:#172033;--sheet-line:#64748b;--sheet-grid:#64748b47;width:100%;max-width:none;color:var(--sheet-ink);background:var(--sheet-paper);border:1px solid var(--sheet-line);margin:0 auto;padding:0;font-family:Noto Sans JP,system-ui,sans-serif}.speed-settings-panel{margin-bottom:12px}.speed-sheet-title{border-bottom:1px solid var(--sheet-line);text-align:center;letter-spacing:.08em;justify-content:center;align-items:center;min-height:36px;padding:6px 8px;font-size:14px;font-weight:800;display:flex}.speed-sheet-meta{grid-template-columns:1.5fr 1fr 1fr .8fr;display:grid}.speed-sheet-meta-cell{border-right:1px solid var(--sheet-line);border-bottom:1px solid var(--sheet-line);grid-template-columns:auto minmax(0,1fr);align-items:center;min-width:0;min-height:40px;display:grid}.speed-sheet-meta-cell:last-child{border-right:none}.speed-sheet-meta-cell span{border-right:1px solid var(--sheet-grid);white-space:nowrap;align-self:stretch;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.speed-sheet-meta-cell strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 8px;font-size:13px;overflow:hidden}.speed-score-table{table-layout:fixed;color:var(--sheet-ink);background:var(--sheet-paper);border:none;margin-top:0}.speed-score-table th,.speed-score-table td{color:var(--sheet-ink);background-color:var(--sheet-paper);border:1px solid var(--sheet-line);padding:7px 9px}.speed-score-table thead th{background:var(--sheet-paper);border-bottom:1.5px solid var(--sheet-line);height:82px;padding:9px}.speed-score-table .st-team{width:43%}.speed-score-table .st-g{width:14%}.speed-score-table .st-team-name{font-size:18px}.speed-score-table .st-players{color:var(--sheet-ink);gap:2px;margin-top:5px;font-size:13px}.speed-score-table .mk{width:19px;height:19px;margin:0 3px;font-size:11px}.speed-score-table .st-total-score{font-size:30px}.speed-score-table .st-center{background:var(--sheet-paper);width:14%}.speed-score-table .st-label{color:var(--sheet-ink);font-size:16px}.speed-score-table .st-gscore{margin-top:2px;font-size:16px}.speed-score-table tbody tr{height:auto}.speed-score-table .st-marks{background-color:var(--sheet-paper);background-image:none;padding:0}.speed-mark-row{grid-template-columns:30px minmax(0,1fr);width:100%;height:auto;display:grid}.speed-score-table .st-srv{width:100%;height:100%;color:var(--sheet-ink);background:var(--sheet-paper);border:none;border-right:1px solid var(--sheet-line);border-radius:0;font-size:11px;display:flex}.speed-point-grid{width:100%;height:auto;display:grid}.speed-point-slot{aspect-ratio:1;min-width:0;height:auto;color:var(--sheet-ink);border:none;border-right:1px solid var(--sheet-grid);box-shadow:none;background:0 0;border-radius:0;padding:0;font-size:clamp(8px,1.4vw,13px);font-weight:800;line-height:1;position:relative}.speed-cell-result{white-space:nowrap;justify-content:center;align-items:center;max-width:100%;display:inline-flex}.speed-point-slot:last-child{border-right:none}.speed-point-slot.has-row-below{border-bottom:1px solid var(--sheet-grid)}.speed-point-slot.row-end{border-right:none}.speed-score-table .speed-point-slot.winner-red{color:var(--red)}.speed-score-table .speed-point-slot.winner-blue{color:var(--blue)}.speed-point-slot:active{background:var(--sheet-grid)}.speed-score-table .st-row.st-empty td{opacity:1;min-height:0}.speed-score-table .st-row.st-active td{background-color:var(--sheet-paper)}.speed-point-slot:focus-visible{z-index:1;position:relative}.speed-record-entry-stage{min-height:calc(100dvh - 140px)}.speed-entry-scoreboard{margin-left:8px}.speed-serve-field{margin:0}.speed-serve-field .seg button{min-height:40px;font-size:15px}.speed-last-player-field,.speed-development-field{margin-top:8px}.speed-last-player-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.speed-development-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.speed-development-grid .speed-finish-option{min-height:31px;font-size:11px}.speed-inline-fields{gap:8px;display:flex}.speed-inline-fields>.field{flex:1;min-width:0}.speed-last-player-option{justify-content:flex-start;width:100%;min-width:0;min-height:40px;padding:6px 8px;font-size:12px;overflow:hidden}.speed-last-player-option>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.speed-last-player-option.red.on{color:var(--red);background:var(--red-soft);border-color:var(--red)}.speed-last-player-option.blue.on{color:var(--blue);background:var(--blue-soft);border-color:var(--blue)}.speed-finish-field,.speed-side-field,.speed-end-field{margin-top:8px}.speed-finish-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.speed-end-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.speed-shot-group{margin-top:6px}.speed-shot-group:first-of-type{margin-top:0}.speed-shot-group-label{color:var(--muted);margin:0 0 4px;font-size:10px;font-weight:700;display:block}.speed-finish-option{text-align:center;white-space:nowrap;justify-content:center;align-items:center;width:100%;min-width:0;min-height:36px;padding:5px 4px;font-size:12px;display:flex;overflow:hidden}.speed-finish-option.span-2{grid-column:span 2}.speed-side-field .seg button{min-height:38px;font-size:13px}.speed-finish-option.red.on{color:var(--red);background:var(--red-soft);border-color:var(--red)}.speed-finish-option.blue.on{color:var(--blue);background:var(--blue-soft);border-color:var(--blue)}.speed-point-navigation{bottom:max(10px, env(safe-area-inset-bottom));pointer-events:none;justify-content:space-between;margin-top:10px;display:flex;position:sticky}.speed-point-nav-button{background:var(--surface);width:44px;height:44px;box-shadow:var(--shadow-sm);pointer-events:auto;border-radius:50%;padding:0;font-size:20px}.speed-point-nav-button:disabled{opacity:.28;box-shadow:none}.speed-score-table tr>:first-child{border-left:none}.speed-score-table tr>:last-child{border-right:none}.speed-score-table tbody tr:last-child td{border-bottom:none}@media (width<=520px){.speed-sheet-meta{grid-template-columns:1fr 1fr}.speed-sheet-meta-cell:nth-child(2){border-right:none}}.st-srv{width:28px;height:28px;color:var(--fg);border:1px solid var(--border);background:var(--surface-2);vertical-align:middle;border-radius:6px;grid-column:1;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.st-srv .mk{width:16px;height:16px;margin:0;font-size:10px}.st-marks{width:45%;min-height:36px}.st-mark-line{grid-template-columns:28px minmax(0,1fr);align-items:flex-start;column-gap:8px;width:100%;display:grid}.st-point-marks{flex-wrap:wrap;grid-column:2;justify-content:flex-start;gap:6px;min-width:0;display:flex}.st-marks.red .st-srv{margin-right:0}.st-marks.red .st-point-marks{justify-content:flex-start}.st-marks.blue .st-srv{margin-right:0}.st-marks.blue .st-point-marks{justify-content:flex-start}.st-mk{cursor:pointer;vertical-align:middle;background:var(--surface-2);border:1px solid var(--border);width:28px;height:28px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;margin:0;font-size:16px;font-weight:800;transition:background-color .12s,border-color .12s,color .12s,filter .12s,transform .12s;display:inline-flex}.st-mk:active{transform:scale(.92)}.st-marks.red .st-mk.win{color:var(--red);background:var(--red-soft);border-color:var(--red)}.st-marks.blue .st-mk.win{color:var(--blue);background:var(--blue-soft);border-color:var(--blue)}.st-mk.lose{color:var(--faint);background:var(--track);border-color:var(--hairline)}.st-mk.pending{border:1.5px dashed var(--muted);color:var(--muted);background:0 0}.st-draft{color:var(--muted);border:1.5px dashed var(--border);cursor:pointer;background:0 0;font-size:11px}.st-row.st-empty td{opacity:.4;min-height:28px}.st-row.st-active td{background:var(--court-soft)}.sheet{display:none}.sheet-game{align-items:stretch;gap:6px;display:flex}.game-label{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);flex-direction:column;flex:none;justify-content:center;align-items:center;gap:3px;width:34px;display:flex}.game-label .gno{font-size:14px;font-weight:800}.game-label .srv{width:16px;height:16px;color:var(--on-accent);border-radius:50%;justify-content:center;align-items:center;font-size:10px;font-weight:800;display:flex}.game-label .srv.mk-red{background:var(--red)}.game-label .srv.mk-blue{background:var(--blue)}.pt-row{flex-wrap:wrap;flex:1;align-content:flex-start;gap:4px;display:flex}.pt-cell{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:46px;min-height:44px;padding:4px 6px;display:flex}.pt-cell:active{transform:scale(.96)}.pt-cell.win-red{border-color:var(--red);box-shadow:inset 0 -3px 0 var(--red)}.pt-cell.win-blue{border-color:var(--blue);box-shadow:inset 0 -3px 0 var(--blue)}.pt-cell.draft{border-style:dashed;border-color:var(--muted)}.pt-score{font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.pt-dots{align-items:center;gap:2px;min-height:8px;display:flex}.bd{border-radius:50%;width:7px;height:7px;display:inline-block}.bd-red{background:var(--red)}.bd-blue{background:var(--blue)}.bd.term{outline:2px solid var(--ring);outline-offset:1px}.bd-add{color:var(--muted);font-size:12px;font-style:normal;font-weight:700}.record-cta{margin-top:16px}.detail-toggle{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);width:100%;color:var(--fg);text-align:left;margin-top:12px;padding:10px;font-size:14px;font-weight:700}.detail-toggle:after{content:"▸";float:right;transition:transform .2s}.detail-toggle.open:after{transform:rotate(90deg)}.formation-editor{margin-top:8px}.fm-tabs{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.fm-tab{border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--fg);text-align:center;white-space:nowrap;border-radius:6px;flex:1;padding:6px 4px;font-size:11px;font-weight:600}.fm-tab.on{background:var(--court);color:var(--on-accent);border-color:var(--court)}.fm-canvas{touch-action:none;border:1px solid var(--border);width:100%;height:300px;display:block}.editor{--editor-pad-x:14px;--court-gap:8px;--side-panel-min:0px;--side-panel-max:none;background:var(--bg);z-index:1000;width:100%;max-width:760px;height:100dvh;padding:env(safe-area-inset-top) var(--editor-pad-x) calc(env(safe-area-inset-bottom) + 16px);box-sizing:border-box;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.editor-workspace{display:contents}.editor-video-pane,.editor-split,.editor-video-tab{display:none}@media (width<=1179px){.native-app .editor{overflow-y:auto}.native-app .editor-video-pane.has-video{flex-direction:column;flex:none;min-width:0;margin-bottom:12px;display:flex}.native-app .editor-video-pane.is-closed{display:none}.native-app .editor-video-head{justify-content:flex-end;display:flex}.native-app .editor-video-shortcuts{display:none}.native-app .editor-video-close{width:44px;height:44px;color:var(--muted);background:0 0;border:0;font-size:24px}.native-app .editor-video-stage,.native-app .editor-video-frame{width:100%;min-width:0}.native-app .editor-video-frame{aspect-ratio:16/9;background:#000;border:0;display:block}.native-app .editor-youtube-host{height:100%}.native-app .editor-video-tab{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);min-height:44px;color:var(--fg);flex:none;align-self:flex-end;padding:8px 12px;display:block}}.editor-scoreboard{flex-direction:column;flex:1;justify-content:center;min-width:0;margin-left:12px;display:flex}.editor-score-row{font-variant-numeric:tabular-nums;align-items:center;gap:12px;min-width:0;line-height:1.35;display:flex}.editor-score-game{color:var(--muted);min-width:24px;font-weight:700}.editor-score-point{color:var(--fg);min-width:16px;font-weight:800}.editor-score-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.editor-header-actions{flex:none;align-items:center;gap:8px;display:flex}.editor .server-chip{background:var(--surface-2);border-radius:var(--r-pill);align-items:center;padding:3px 10px 3px 4px;font-size:13px;font-weight:700;display:inline-flex}.btn.icon{justify-content:center;align-items:center;min-width:36px;min-height:36px;padding:4px 8px;font-size:18px;display:inline-flex}.btn.icon.on{color:var(--court)}.btn-settings{min-width:44px;min-height:44px;color:var(--muted);justify-content:center;align-items:center;padding:8px;font-size:26px;line-height:1;display:inline-flex}.court-row{z-index:2;gap:var(--court-gap);flex:1;min-height:0;margin-top:6px;margin-bottom:8px;display:flex;position:relative;container-type:size}.court-col{width:min(calc((100cqh - 76px) / var(--court-aspect,1.54)), calc(100% - var(--side-panel-min) - var(--court-gap)));flex-direction:column;flex:0 auto;align-items:stretch;min-width:0;max-width:100%;height:100%;display:flex}.court-team-label{border:1px solid var(--border);background:var(--surface);border-radius:0;align-items:center;gap:10px;padding:8px 6px;font-size:12px;line-height:1.3;display:flex;overflow:hidden}.court-team-label .ct-name{white-space:nowrap;text-overflow:ellipsis;flex:none;max-width:40%;font-size:13px;font-weight:800;overflow:hidden}.ct-red .ct-name{color:var(--red)}.ct-blue .ct-name{color:var(--blue)}.ct-roster{gap:10px;min-width:0;display:flex}.ct-player{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;align-items:center;min-width:0;font-size:12px;display:inline-flex;overflow:hidden}.ct-player-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.ct-player .mk{flex:none}.ct-serve-badge{border-radius:var(--r-pill);background:var(--court);color:var(--on-accent);flex:none;margin-left:5px;padding:1px 6px;font-size:10px;font-weight:800;line-height:1.5}.ct-receive-badge{color:var(--muted);border:1px solid var(--border);background:0 0}.court-wrap{flex:1 1 0;align-self:center;width:100%;min-width:0;min-height:0;max-height:100%;position:relative}.side-panel{z-index:3;min-width:var(--side-panel-min);max-width:var(--side-panel-max);overscroll-behavior:contain;scrollbar-width:thin;padding:2px;flex-direction:column;flex:1 1 0;gap:4px;min-height:0;padding-bottom:8px;display:flex;position:relative;overflow-y:auto}.read-only-shot-facts{margin:8px 0 0}.read-only-shot-facts>div{border-bottom:1px solid var(--border);overflow-wrap:anywhere;grid-template-columns:minmax(0,64px) minmax(0,1fr);gap:8px;padding:12px 0;display:grid}.read-only-shot-facts dt{color:var(--muted);font-size:12px}.read-only-shot-facts dd{min-width:0;margin:0;font-size:13px;line-height:1.6}@media (width<=767px){html:has(.editor){height:100%;overflow:hidden}body:has(.editor){height:100%;overflow:hidden}#root:has(.editor){height:100%;overflow:hidden}.editor{--editor-pad-x:8px;--side-panel-min:144px;--side-panel-max:240px}.court-row{justify-content:center}.side-panel{flex-basis:144px}.ballnav{flex:none}}@media (width>=768px){.editor{--editor-pad-x:20px;--court-gap:12px;--side-panel-min:220px;--side-panel-max:300px;max-width:1080px}.court-row{justify-content:center}.side-panel{flex-basis:260px}}@media (width>=1180px) and (hover:hover) and (pointer:fine){.editor{--editor-pad-x:20px;--court-gap:12px;--side-panel-min:220px;--side-panel-max:300px;grid-template-columns:minmax(360px, var(--editor-video-col,1.15fr)) auto minmax(600px, 1fr);align-items:stretch;gap:10px;width:100vw;max-width:none;display:grid;left:0;right:0;transform:none}.editor.video-collapsed{grid-template-columns:minmax(680px,860px);justify-content:center}.editor-split{cursor:col-resize;touch-action:none;border-radius:var(--r-pill);justify-content:center;align-self:stretch;align-items:center;width:10px;display:flex}.editor-split:before{content:"";border-radius:var(--r-pill);background:var(--border);width:4px;height:44px;transition:background .16s,height .16s}.editor-split:focus-visible:before,.editor-split.is-dragging:before{background:var(--court);height:64px}@media (hover:hover){.editor-split:hover:before{background:var(--court);height:64px}}.editor-workspace{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.editor-video-pane{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--track);flex-direction:column;justify-content:stretch;align-items:stretch;min-width:0;height:100%;min-height:0;padding:12px;display:flex;overflow:hidden}.editor-video-pane.is-closed{display:none}.editor-video-head{flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:34px;margin-bottom:10px;display:flex}.editor-video-shortcuts,.editor-video-notice{min-width:0;color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex;overflow:hidden}.editor-video-shortcuts kbd{border:1px solid var(--border);background:var(--surface);min-width:24px;color:var(--fg);font:inherit;text-align:center;border-radius:5px;padding:3px 7px;font-size:11px;line-height:1}.editor-video-close{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);width:32px;height:32px;color:var(--muted);flex:none;justify-content:center;align-items:center;font-size:19px;font-weight:800;line-height:1;display:inline-flex}.editor-video-stage{flex:1;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;container-type:size}.editor-video-frame,.editor-video-pane>iframe,.editor-video-empty{aspect-ratio:16/9;background:var(--track);border:0;flex:none;width:100%;min-width:0;max-width:min(100%,177.778cqh);height:auto;min-height:0;max-height:100%;display:block}video.editor-video-frame{object-fit:contain}.editor-video-frame>iframe,.editor-youtube-host{border:0;width:100%;height:100%;display:block}.editor-video-tab{z-index:3;border:1px solid var(--border);border-radius:0 var(--r-md) var(--r-md) 0;background:var(--surface);min-width:42px;min-height:84px;color:var(--fg);writing-mode:vertical-rl;letter-spacing:0;box-shadow:var(--sh-2);justify-content:center;align-items:center;padding:10px 8px;font-size:13px;font-weight:900;display:inline-flex;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.editor-workspace .appbar{flex:none;margin-bottom:12px}.editor-workspace .court-row{flex:1;min-height:0}.editor-workspace .ballnav{flex:none}}.sp-top{align-items:center;gap:4px;display:flex}.ball-label{text-align:center;background:var(--surface-2);border-radius:4px;flex:1;padding:4px;font-size:13px;font-weight:800}.sp-reset{border:1px solid var(--border);background:var(--surface);cursor:pointer;width:26px;height:26px;color:var(--muted);border-radius:4px;flex:none;font-size:13px}.sp-act{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);cursor:pointer;text-align:center;border-radius:3px;width:100%;padding:4px 6px;font-size:10px;font-weight:600}.sp-toggle{background:var(--track);border-radius:4px;gap:2px;padding:1px;display:flex}.sp-tgl{cursor:pointer;color:var(--muted);text-align:center;background:0 0;border:none;border-radius:3px;flex:1;padding:7px 2px;font-size:12px;font-weight:700}.sp-tgl.on{background:var(--elevated);color:var(--fg);box-shadow:none}.sp-types{grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.sp-type{border:1px solid var(--border);background:var(--surface);color:var(--fg);text-align:center;cursor:pointer;border-radius:3px;padding:7px 1px;font-size:12px;font-weight:600}.sp-type.on{background:var(--court);color:var(--on-accent);border-color:var(--court)}.sp-add-on-chip.on{background:var(--red);color:var(--on-accent);border-color:var(--red)}.sp-add-on-group{border:1.5px dashed var(--muted);border-radius:var(--r-sm);background:color-mix(in srgb, var(--muted) 8%, transparent);padding:6px}.sp-shot-group{flex-direction:column;gap:3px;display:flex}.sp-shot-taxonomy{border:1.5px dashed var(--court);border-radius:var(--r-sm);background:color-mix(in srgb, var(--court) 6%, transparent);flex-direction:column;gap:6px;padding:6px;display:flex}.sp-group-label{color:var(--muted);font-size:11px;font-weight:800}.sp-motion{width:100%;color:var(--muted);cursor:pointer;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);justify-content:center;align-items:center;gap:7px;padding:8px;font-size:12px;font-weight:700;display:flex}.sp-motion:before{content:"";opacity:.55;border:2px solid;border-radius:50%;flex:none;width:16px;height:16px}.sp-motion.on{background:var(--motion);color:var(--on-accent);border-color:#0000}.sp-motion.on:before{content:"✓";opacity:1;background:#ffffff47;border-color:#0000;justify-content:center;align-items:center;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.sp-motion:not(:disabled):active{transform:scale(.98)}.sp-motion:disabled{opacity:.5;cursor:default}.sp-results{flex-direction:column;gap:3px;margin-top:auto;display:flex}.sp-serve-style{background:var(--track);border-radius:5px;gap:2px;padding:2px;display:flex}.sp-ss{cursor:pointer;color:var(--muted);text-align:center;background:0 0;border:none;border-radius:4px;flex:1;padding:5px 2px;font-size:11px;font-weight:700}.sp-ss.on{background:var(--elevated);color:var(--fg);box-shadow:none}.sp-result-label{text-align:center;border-radius:5px;padding:6px;font-size:14px;font-weight:800}.sp-end-in,.sp-end-winner{background:var(--court-soft);color:var(--court)}.sp-end-fault{background:var(--loss-soft);color:var(--loss)}.sp-end-out{background:var(--warn-soft);color:var(--warn)}.sp-end-net{background:var(--info-soft);color:var(--info)}.sp-winner{z-index:4;border:2px solid var(--court);background:var(--surface);width:100%;color:var(--court);cursor:pointer;text-align:center;border-radius:5px;padding:9px;font-size:14px;font-weight:700;position:relative}.sp-winner.on{background:var(--court);color:var(--on-accent)}.sp-view{flex-direction:column;gap:4px;margin-top:auto;display:flex}.sp-btn{border:1px solid var(--border);background:var(--surface);color:var(--fg);text-align:center;cursor:pointer;border-radius:4px;padding:6px;font-size:11px;font-weight:600}.sp-del{border-color:var(--red);color:var(--red)}.place-legend{border-radius:var(--r-pill);background:#00000059;gap:8px;padding:6px 10px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.place-legend .mk{opacity:.35;width:24px;height:24px;margin:0;font-size:13px}.place-legend .mk.placed{opacity:1}.place-legend .legend-label{color:#ffffffb3;align-self:center;font-size:11px;line-height:1}.place-legend .legend-sep{color:#ffffff4d;align-self:center;font-size:16px}@keyframes pulse{0%,to{box-shadow:0 0 #fff9}50%{box-shadow:0 0 0 6px #fff0}}.chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.type-chips{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.chip{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--fg);flex:none;padding:9px 14px;font-size:14px;font-weight:700}.chip:not(:disabled):active{transform:scale(.96)}.chip.on{background:var(--court);color:var(--on-accent);border-color:#0000}@media (hover:hover){.chip:not(.on):not(:disabled):hover{border-color:var(--muted)}}.end-chips{margin-top:6px}.chip-end{background:var(--surface);border-color:var(--red);color:var(--red);flex:1;justify-content:center;font-weight:700}.chip-end.suggested{background:var(--red);color:var(--on-accent)}.chip-reset{background:var(--surface);border:1.5px solid var(--border);color:var(--muted);text-align:center;border-radius:var(--r-sm);width:100%;padding:10px 8px;font-size:13px;font-weight:600}.ballnav{z-index:1;align-items:center;gap:8px;margin-top:0;margin-bottom:0;display:flex;position:relative}.navbtn{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);width:52px;height:48px;color:var(--fg);box-shadow:none;flex:none;font-size:20px;font-weight:700}.navbtn:not(:disabled):active{transform:scale(.95)}.navbtn:disabled{opacity:.3;box-shadow:none}.ball-strip{flex:1;gap:5px;padding:2px;display:flex;overflow-x:auto}.ball-dot{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);min-width:36px;height:48px;color:var(--on-accent);flex:none;justify-content:center;align-items:center;padding:0 8px;font-size:14px;font-weight:700;display:inline-flex}.ball-dot.bd-red{background:var(--red);border-color:var(--red)}.ball-dot.bd-blue{background:var(--blue);border-color:var(--blue)}.ball-dot.term{border-color:var(--fg)}.ball-dot.pending{background:var(--surface-2);color:var(--muted);border-color:var(--border)}.ball-dot.on{border-color:var(--court);border-width:2px}.ball-dot.unrated{border-color:var(--warn);border-style:dashed}.analysis-search{flex-direction:column;gap:12px;padding-bottom:16px;display:flex}.analysis-filter-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;margin:-2px;padding:2px;display:flex;overflow-x:auto}.analysis-filter-row::-webkit-scrollbar{display:none}.analysis-filter-row button{border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);min-height:38px;color:var(--muted);white-space:nowrap;flex:none;padding:0 14px;font-size:13px;font-weight:800}.analysis-filter-row button.on{background:var(--court);color:var(--on-accent);border-color:#0000}.analysis-count{color:var(--muted);align-items:baseline;gap:5px;font-size:13px;font-weight:800;display:inline-flex}.analysis-count strong{color:var(--fg);font-size:24px;line-height:1}.analysis-result-list{flex-direction:column;gap:8px;display:flex}.analysis-result-row{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);min-height:58px;color:var(--fg);text-align:left;grid-template-columns:minmax(112px,auto) 66px 48px 30px minmax(0,1fr);align-items:center;gap:8px;padding:10px 12px;display:grid}.analysis-result-row:active{background:var(--surface-2);transform:scale(.992)}.analysis-scene{border-radius:var(--r-pill);background:var(--court-soft);min-width:0;color:var(--court);text-overflow:ellipsis;white-space:nowrap;padding:5px 9px;font-size:12px;font-weight:900;overflow:hidden}.analysis-result-row strong{font-variant-numeric:tabular-nums;font-size:14px;font-weight:900}.analysis-result-row span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.analysis-result-row em{background:var(--surface-2);width:28px;height:28px;color:var(--fg);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-style:normal;font-weight:900;display:inline-flex}.analysis-result-row small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}@media (width<=520px){.analysis-result-row{grid-template-columns:minmax(0,1fr) 64px 44px 30px}.analysis-result-row small{grid-column:1/-1}}.create-match-fields{border:0;min-width:0;margin:0;padding:0}.create-player-grid{gap:14px;margin-top:10px;display:grid}.create-player-field{grid-template-columns:56px minmax(0,.9fr) minmax(0,1.1fr) 22px;align-items:center;gap:10px;margin:0;display:grid}.create-slot-check{width:22px;height:22px;color:var(--faint);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.create-slot-check.is-ok{background:var(--win-soft);color:var(--win)}.create-player-field .lbl{justify-content:center;margin:0;display:flex}.create-slot-label{border-radius:var(--r-pill);min-height:24px;color:var(--on-accent);justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.create-slot-red{background:var(--red)}.create-slot-blue{background:var(--blue)}.combo-input{min-width:0;position:relative}.combo-panel{z-index:220;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);max-height:min(280px,46vh);box-shadow:var(--sh-2);gap:2px;padding:5px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combo-option{border-radius:var(--r-sm);width:100%;min-height:38px;color:var(--fg);font:inherit;text-align:left;background:0 0;border:none;align-items:center;padding:8px 12px;font-size:13px;font-weight:500;transition:background-color .15s;display:flex}.combo-option:disabled{cursor:default;opacity:.35}.combo-option.is-action{border-top:1px solid var(--hairline);color:var(--court);border-radius:0;font-weight:700}.combo-option.active{background:var(--surface-2)}@media (hover:hover){.combo-option:not(:disabled):hover{background:var(--surface-2)}}@media (width<=560px){.create-player-field{grid-template-columns:56px minmax(0,1fr) 22px}.create-player-field .combo-input:first-of-type{grid-column:2/4}.create-player-field .combo-input:nth-of-type(2){grid-column:2}}.form-error{border:1px solid color-mix(in srgb, var(--red) 40%, var(--border));border-radius:var(--r-md);background:color-mix(in srgb, var(--red) 8%, var(--bg));color:var(--fg);box-shadow:var(--sh-1);margin:0 0 16px;padding:12px 14px;font-size:14px;font-weight:700}.profile-form{gap:20px;margin-top:16px;display:grid}.profile-section{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--sh-1);border:none;padding:24px}.profile-section-title{color:var(--fg);letter-spacing:-.01em;border-bottom:1px solid var(--hairline);margin-top:0;margin-bottom:20px;padding-bottom:8px;font-size:15px;font-weight:800}.profile-team-add{gap:12px;display:flex}.profile-team-add input{flex:1}.profile-player-add{gap:20px;display:grid}.profile-player-mode{border-top:1px solid var(--hairline);gap:12px;margin-top:20px;padding-top:20px;display:grid}.profile-mode-title{color:var(--muted);font-size:13px;font-weight:800}.profile-name-list{background:var(--hairline);border-radius:var(--r-md);gap:1px;margin-top:12px;display:grid;overflow:hidden}.profile-player-row{background:var(--surface-2);color:var(--fg);align-items:center;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.manage-form{gap:20px;margin-top:16px;display:grid}.manage-team-unit{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--sh-1);border:none;gap:16px;padding:24px;display:grid}.manage-team-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;display:flex}.manage-row-main{flex:1;align-items:baseline;gap:8px;display:flex}.manage-name{color:var(--fg);letter-spacing:-.01em;font-size:18px;font-weight:800}.manage-count{color:var(--muted);font-size:12px;font-weight:700}.manage-team-settings{border-radius:var(--r-sm);border:1px solid var(--border);min-height:32px;color:var(--muted);background:0 0;padding:0 12px;font-size:12px;font-weight:800;transition:background-color .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1)}@media (hover:hover){.manage-team-settings:hover{color:var(--fg);background:var(--surface-2);border-color:var(--muted)}}.manage-player-list{border-radius:var(--r-md);border:1px solid var(--border);gap:0;display:grid;overflow:hidden}.manage-player-row{background:var(--surface);border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 8px 0 16px;display:flex}.manage-player-row:last-child{border-bottom:none}@media (hover:hover){.manage-player-row:hover{background:var(--surface-2)}}.manage-player-main{color:var(--fg);background:0 0;border:none;flex:1;align-items:center;padding:0;font-size:15px;font-weight:700;display:flex}.manage-player-settings{border-radius:var(--r-sm);width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:16px;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}@media (hover:hover){.manage-player-settings:hover{color:var(--fg);background:#ffffff14}}.manage-empty{text-align:center;color:var(--muted);background:var(--surface-2);border-radius:var(--r-lg);border:1px dashed var(--border);padding:48px 24px;font-size:14px;font-weight:700}.settings-dialog{width:min(100vw - 32px,620px);max-height:calc(100vh - 40px);padding:28px;overflow-y:auto}.settings-dialog-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.settings-dialog-head h2{margin:0;font-size:18px;font-weight:800}.btn-close{color:var(--muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-right:-6px;padding:6px;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:flex}@media (hover:hover){.btn-close:hover{background:var(--surface-2);color:var(--fg)}}.settings-delete-btn{color:var(--red);border-radius:var(--r-md);cursor:pointer;background:0 0;border:1px solid #0000;margin-right:auto;padding:8px 12px;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}@media (hover:hover){.settings-delete-btn:hover{background:color-mix(in srgb, var(--red) 10%, var(--surface));border-color:color-mix(in srgb, var(--red) 30%, transparent)}}.dropdown{width:100%;position:relative}.dropdown-trigger{border:1px solid var(--control-border);border-radius:var(--r-md);background:var(--surface);width:100%;min-height:44px;color:var(--fg);font:inherit;text-align:left;box-shadow:none;padding:11px 38px 11px 14px;font-size:15px;transition:background-color .16s,border-color .16s;position:relative}.dropdown-trigger:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:7px;height:7px;transition:transform .2s,border-color .16s;position:absolute;top:50%;right:16px;transform:translateY(-70%)rotate(45deg)}.dropdown.open .dropdown-trigger,.dropdown-trigger:focus{border-color:var(--court);box-shadow:none;outline:none}.dropdown.open .dropdown-trigger:after{border-color:var(--fg);transform:translateY(-30%)rotate(225deg)}.dropdown-value,.dropdown-placeholder{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.dropdown-placeholder{color:var(--muted)}.dropdown-panel{z-index:220;overscroll-behavior:contain;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);max-height:min(280px,46vh);box-shadow:var(--sh-2);transform-origin:top;gap:2px;padding:5px;animation:.13s pop-in;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.dropdown-option{border-radius:var(--r-sm);width:100%;min-height:38px;color:var(--fg);font:inherit;text-align:left;background:0 0;border:none;align-items:center;padding:8px 12px;font-size:13px;font-weight:500;transition:background-color .15s;display:flex}.dropdown-option.active{background:var(--surface-2)}.dropdown-option.selected{background:var(--court-soft);color:var(--fg);font-weight:700}.dropdown-option:disabled{cursor:default;opacity:.35}.inline-add{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.inline-add .btn{min-width:72px}.sp-effectiveness-group{border:1.5px dashed var(--blue);border-radius:var(--r-sm);background:color-mix(in srgb, var(--blue) 6%, transparent);flex-direction:column;gap:3px;padding:6px;display:flex}.sp-effectiveness-group.is-disabled{border-color:var(--border);background:color-mix(in srgb, var(--muted) 7%, transparent)}.sp-effectiveness-group.is-required{border-style:solid;border-color:var(--warn);background:var(--warn-soft)}.sp-effectiveness-scale{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;display:grid}.sp-effectiveness{background:var(--surface);border:1px solid var(--border);width:100%;min-width:0;height:34px;color:var(--fg);text-align:center;white-space:nowrap;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;padding:0 4px;font-size:12px;font-weight:700;line-height:1.15;transition:background .16s,border-color .16s,color .16s;display:inline-flex}@media (hover:hover){.sp-effectiveness:not(:disabled):hover{border-color:var(--muted)}}.sp-effectiveness.on{background:var(--blue);color:var(--on-accent);border-color:var(--blue)}.sp-effectiveness:disabled,.sp-effectiveness.on:disabled{background:var(--surface-2);color:color-mix(in srgb, var(--muted) 78%, var(--surface));border-color:var(--border);cursor:not-allowed;box-shadow:none;opacity:1}.modal-overlay{background-color:var(--scrim);z-index:1000;justify-content:center;align-items:center;animation:.15s fade-in;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:min(100vw - 32px,520px);max-height:calc(100vh - 40px);box-shadow:var(--sh-pop);color:var(--fg);flex-direction:column;padding:24px;animation:.18s cubic-bezier(.34,1.56,.64,1) dialog-in;display:flex;overflow-y:auto}@keyframes dialog-in{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}.modal-header{text-align:center;border-bottom:1px solid var(--border);color:var(--fg);margin-bottom:16px;padding-bottom:12px;font-size:1.1rem;font-weight:700}.modal-body{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.modal-body p{text-align:center;color:var(--muted);margin:0 0 4px;font-size:.95rem;line-height:1.4}.modal-warning-text{font-weight:500;color:var(--red)!important;font-size:.85rem!important}.modal-btn{border-radius:var(--r-sm);cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;width:100%;padding:12px;font-size:.95rem;font-weight:600;transition:background-color .12s,border-color .12s,color .12s,filter .12s,transform .12s;display:flex}.btn-primary.modal-btn{background-color:var(--action);color:var(--on-accent)}.btn-primary.modal-btn:hover{background-color:var(--action-hover)}.btn-secondary.modal-btn{background-color:var(--surface-2);color:var(--fg);border:1px solid var(--border)}.btn-secondary.modal-btn:hover{background-color:var(--elevated);border-color:var(--muted)}.btn-danger.modal-btn{background-color:var(--red);color:var(--on-accent)}.btn-danger.modal-btn:hover{filter:brightness(1.1)}.btn-ghost.modal-btn{color:var(--muted);background:0 0}.btn-ghost.modal-btn:hover{background-color:var(--press);color:var(--fg)}.modal-footer{flex-direction:column;gap:8px;display:flex}.app-settings-list{min-width:0}.settings-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);margin-bottom:24px;overflow:hidden}.settings-group-title{color:var(--muted);letter-spacing:.04em;margin:0 0 8px 4px;font-size:13px;font-weight:800}.settings-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.settings-row:last-child{border-bottom:none}.settings-row-left{flex-direction:column;flex:1;gap:3px;display:flex}.settings-row-label{color:var(--fg);font-size:15px;font-weight:800}.settings-row-subtext{color:var(--muted);word-break:break-all;font-size:12px}.settings-row-right{flex-shrink:0;align-items:center;display:flex}.settings-btn{min-height:38px;color:var(--fg);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;justify-content:center;align-items:center;padding:8px 16px;font-size:14px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}@media (hover:hover){.settings-btn:hover{background:var(--surface-3);border-color:var(--muted)}}.settings-btn-primary{background:var(--action);color:var(--on-accent);border-color:#0000;box-shadow:0 1px 2px #0003}@media (hover:hover){.settings-btn-primary:hover{filter:brightness(1.08);background:var(--action-hover);border-color:#0000}}.deleted-match-list{gap:12px;margin-top:8px;display:grid}.deleted-match-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.deleted-match-main{flex:1;gap:4px;display:grid}.deleted-match-title{color:var(--fg);font-size:15px;font-weight:800}.deleted-match-meta{color:var(--muted);font-size:12px}.deleted-match-actions{flex-shrink:0;gap:8px;display:flex}.deleted-match-empty{text-align:center;color:var(--muted);background:var(--surface-2);border-radius:var(--r-lg);border:1px dashed var(--border);padding:48px 24px;font-size:14px}.share-send-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);min-width:0;box-shadow:var(--sh-1);grid-template-columns:minmax(0,1fr);gap:16px;padding:24px;display:grid}.share-user-list{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);max-height:180px;overflow-y:auto}.share-user-row{text-align:left;border:none;border-bottom:1px solid var(--border);width:100%;color:var(--fg);cursor:pointer;background:0 0;padding:12px 16px;font-size:14px;transition:background-color .12s,border-color .12s,color .12s,filter .12s,transform .12s}.share-user-row:last-child{border-bottom:none}@media (hover:hover){.share-user-row:hover{background:var(--surface-3)}}.share-user-row.selected{background:color-mix(in srgb, var(--court) 12%, var(--surface-2));color:var(--court);font-weight:800}.share-user-empty{text-align:center;color:var(--muted);padding:24px;font-size:13.5px}.share-selected-user{color:var(--muted);overflow-wrap:anywhere;font-size:13.5px}.share-selected-user span{color:var(--fg);font-weight:800}.share-send-actions{margin-top:8px;display:flex}.share-send-status{border-radius:var(--r-md);background:color-mix(in srgb, var(--court) 8%, var(--bg));color:var(--court);padding:12px 16px;font-size:13px;font-weight:800}.match-analysis{gap:16px;padding-bottom:16px;display:grid}.match-analysis-header h1{margin:3px 0 0;font-size:18px}.match-analysis-sections,.player-analysis-block{gap:14px;display:grid}.player-analysis-heading{border-bottom:2px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:14px;padding:0 2px 8px;display:flex}.player-analysis-block.is-red .player-analysis-heading{border-bottom-color:var(--red)}.player-analysis-block.is-blue .player-analysis-heading{border-bottom-color:var(--blue)}.player-analysis-heading .player-analysis-link{white-space:nowrap;min-height:34px;margin-left:auto;padding:6px 12px;font-size:12px;font-weight:800}.player-analysis-heading h2{margin:0;font-size:18px;font-weight:800}.player-analysis-heading span{color:var(--muted);letter-spacing:.02em;font-size:12px;font-weight:700}.match-analysis-card{padding:0;overflow:hidden}.match-analysis-card h2{border-bottom:1px solid var(--border);margin:0;padding:13px 14px 10px;font-size:14px;font-weight:800}.match-analysis-card h3{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;margin:0;padding:11px 14px 7px;font-size:12px;font-weight:700;display:flex}.match-analysis-card h3 span{color:var(--fg)}.match-analysis-summary{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.match-analysis-summary.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}.match-analysis-summary>div{text-align:center;gap:4px;padding:14px;display:grid}.match-analysis-summary>div+div{border-left:1px solid var(--border)}.match-analysis-summary span{color:var(--muted);font-size:12px}.match-analysis-summary strong{font-size:22px;line-height:1.1}.match-analysis-table{border-collapse:collapse;width:100%;font-size:13px}.match-analysis-table th,.match-analysis-table td{border-bottom:1px solid var(--hairline);text-align:right;height:36px;padding:7px 12px}.match-analysis-table th{color:var(--muted);font-size:11px;font-weight:600}.match-analysis-table th:first-child,.match-analysis-table td:first-child{text-align:left}.match-analysis-table tbody tr:last-child td{border-bottom:0}.match-analysis-table tbody tr.is-boundary td{border-top:1px solid var(--border)}.match-analysis-table td.is-indent{color:var(--muted);padding-left:26px}.match-analysis-single-row,.match-analysis-list>div{justify-content:space-between;align-items:center;min-height:39px;padding:8px 14px;font-size:13px;display:flex}.match-analysis-single-row{border-top:1px solid var(--border)}.match-analysis-list>div+div{border-top:1px solid var(--hairline)}.match-analysis-single-row strong,.match-analysis-list strong{font-size:14px}.match-analysis-player-select{margin:0}.match-analysis-player-select .lbl{margin-bottom:6px}.team-analysis-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.team-analysis-heading h1{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:18px;overflow:hidden}.team-analysis-heading span{color:var(--muted);flex:none;font-size:12px}.analysis-table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;overflow:auto hidden}.advanced-analysis-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:820px;font-size:12px}.advanced-analysis-table th,.advanced-analysis-table td{border-bottom:1px solid var(--hairline);text-align:right;white-space:nowrap;height:39px;padding:6px 9px}.advanced-analysis-table th{color:var(--muted);font-size:11px;font-weight:600}.advanced-analysis-table th .th-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.advanced-analysis-table th.is-sorted .th-sort{color:var(--fg)}.th-sort-mark{vertical-align:1px;min-width:11px;margin-left:1px;font-size:8px;display:inline-block}.advanced-analysis-table th:first-child,.advanced-analysis-table td:first-child{z-index:1;background:var(--card);text-align:left;white-space:normal;min-width:142px;max-width:190px;position:sticky;left:0}.advanced-analysis-table td:first-child.is-indent{color:var(--muted);padding-left:24px}.advanced-analysis-table tr.is-group td{background:var(--surface-2);height:32px;color:var(--fg);padding-top:5px;padding-bottom:5px;font-size:12px;font-weight:700}.advanced-analysis-table tr.is-group td small{color:var(--muted);margin-left:6px;font-size:10px;font-weight:600}.group-dot{vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.group-dot.is-red{background:var(--red)}.group-dot.is-blue{background:var(--blue)}.advanced-analysis-table tbody tr:last-child td{border-bottom:0}.advanced-outcome-value strong,.advanced-outcome-value small{display:block}.advanced-outcome-value strong{color:var(--fg);font-size:12px}.advanced-outcome-value small{color:var(--muted);margin-top:1px;font-size:10px}.advanced-outcome-value.oc-error strong{color:var(--loss)}.advanced-outcome-value.oc-chance strong{color:var(--warn)}.advanced-outcome-value.oc-effective strong{color:var(--info)}.advanced-outcome-value.oc-ace strong{color:var(--win)}.advanced-outcome-value.oc-unrated strong{color:var(--muted)}.advanced-outcome-value.is-zero strong{color:var(--faint)}.count-cell strong{font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.count-cell small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:700;display:block}.outcome-dist{min-width:106px}.outcome-dist-bar{border-radius:var(--r-pill);background:var(--track);min-width:88px;height:6px;display:flex;overflow:hidden}.outcome-dist-bar i{min-width:2px;display:block}.outcome-dist-bar .d-error{background:var(--loss)}.outcome-dist-bar .d-chance{background:var(--warn)}.outcome-dist-bar .d-normal{background:var(--faint)}.outcome-dist-bar .d-effective{background:var(--info)}.outcome-dist-bar .d-ace{background:var(--win)}.outcome-dist-bar .d-unrated{background:var(--surface-2)}.team-finding{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:12px;padding:9px 14px;display:flex}.team-findings .team-finding:last-child{border-bottom:0}.team-finding-main{flex-direction:column;gap:1px;min-width:0;display:flex}.team-finding-main strong{font-size:13px;font-weight:700}.team-finding-main span{color:var(--muted);font-size:11px}.team-finding-rate{text-align:right;font-variant-numeric:tabular-nums;flex:none}.team-finding-rate strong{font-size:15px;font-weight:800}.team-finding-rate.is-issue strong{color:var(--loss)}.team-finding-rate.is-strength strong{color:var(--win)}.team-finding-rate small{color:var(--muted);margin-top:1px;font-size:10px;display:block}.analysis-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-right:10px;display:flex}.analysis-card-head h2{border-bottom:0}.analysis-card-head .seg{flex:none}.analysis-card-head .seg button{flex:none;padding:4px 12px;font-size:11px}@media (width>=768px){.match-analysis-sections{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.match-analysis-sections>:first-child,.match-analysis-sections>.match-analysis-card.is-wide,.match-analysis-player-select{grid-column:1/-1}.player-analysis-block .match-analysis-sections>:first-child{grid-column:auto}.player-analysis-block .match-analysis-sections>.match-analysis-card.is-wide{grid-column:1/-1}}.stat-rows{padding:6px 0 8px}.stat-row{grid-template-columns:minmax(0,1fr) minmax(56px,92px) auto 48px;align-items:center;gap:10px;min-height:38px;padding:0 14px;display:grid}.stat-row.is-plain{grid-template-columns:minmax(0,1fr) minmax(56px,92px) auto}@media (width<=480px){.stat-row{grid-template-columns:minmax(0,1fr) 54px auto 44px;gap:8px;padding:0 12px}.stat-row.is-plain{grid-template-columns:minmax(0,1fr) 54px auto}.split-meter{gap:8px;padding:0 12px}}.stat-row.is-boundary{border-top:1px solid var(--hairline);margin-top:6px;padding-top:6px}.stat-row-label{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.stat-row.is-indent .stat-row-label{color:var(--muted);padding-left:14px;font-size:13px}.stat-row-bar{border-radius:var(--r-pill);background:var(--track);height:6px;position:relative;overflow:hidden}.stat-row-bar i{border-radius:inherit;background:var(--court);width:0;transition:width .3s;position:absolute;inset:0 auto 0 0}.stat-row-bar.is-win i{background:var(--win)}.stat-row-bar.is-loss i{background:var(--loss)}.stat-row-count{min-width:30px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.stat-row-pct,.stat-row-value{text-align:right;font-variant-numeric:tabular-nums;font-size:15px;font-weight:800}.stat-row.is-empty .stat-row-pct{color:var(--muted);font-weight:700}.split-meter{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:44px;padding:0 14px;display:grid}.split-meter-side{color:var(--muted);align-items:baseline;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.split-meter-side b{color:var(--fg);font-variant-numeric:tabular-nums;font-size:15px;font-weight:800}.split-meter-bar{border-radius:var(--r-pill);background:color-mix(in srgb, var(--muted) 28%, var(--track));height:8px;position:relative;overflow:hidden}.split-meter-bar i{border-radius:inherit;background:var(--court);width:0;transition:width .3s;position:absolute;inset:0 auto 0 0}.player-analysis-basics{gap:14px;display:grid}@media (width>=700px){.player-analysis-basics{columns:320px;column-gap:14px;display:block}.player-analysis-basics>.card{break-inside:avoid;margin:0 0 14px}}@media (width>=1200px){.player-analysis-main{grid-template-columns:minmax(0,1fr) clamp(380px,32%,460px);align-items:start;gap:14px;display:grid}.player-analysis-main>.court-visual-card{position:sticky;top:64px}}@media (height<=660px){.editor{padding-bottom:calc(env(safe-area-inset-bottom) + 8px)}.court-row{margin-top:4px;margin-bottom:6px}.sp-type{padding:5px 1px;font-size:11px}.sp-motion{padding:6px}.sp-shot-taxonomy{gap:4px;padding:5px}.sp-add-on-group,.sp-effectiveness-group{padding:5px}}.editor-video-dl{flex:none;align-items:center;gap:8px;display:inline-flex}.editor-video-dl-btn{border:1px solid var(--court);border-radius:var(--r-pill);background:var(--court-soft);color:var(--court);white-space:nowrap;cursor:pointer;padding:5px 12px;font-size:12px;font-weight:800;line-height:1}.editor-video-dl-btn.is-error{border-color:var(--loss);background:var(--loss-soft);color:var(--loss)}.editor-video-dl-progress{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px;font-weight:800}.editor-video-dl-badge{border:1px solid var(--court);border-radius:var(--r-pill);color:var(--court);white-space:nowrap;padding:3px 9px;font-size:11px;font-weight:800;line-height:1}.shot-stat-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;margin-top:12px;overflow-x:auto}.shot-stat{border-spacing:0;border-collapse:separate;font-variant-numeric:tabular-nums;width:max-content;min-width:100%}.shot-stat th,.shot-stat td{text-align:center;white-space:nowrap;padding:6px 9px}.shot-stat thead th{color:var(--muted);font-size:11px;font-weight:800}.shot-stat .ss-name{z-index:1;background:var(--card);min-width:84px;color:var(--fg);text-align:left;padding-left:0;font-size:12px;font-weight:800;position:sticky;left:0}.shot-stat tbody tr td,.shot-stat tbody tr th{border-top:1px solid var(--hairline)}.shot-stat tbody td strong{color:var(--fg);font-size:13px;font-weight:800;line-height:1.2;display:block}.shot-stat tbody td small{color:var(--faint);margin-top:1px;font-size:10px;font-weight:700;display:block}.shot-stat tr.is-total .ss-name,.shot-stat tr.is-total td strong{color:var(--court)}.shot-stat tr.is-total td,.shot-stat tr.is-total th{border-top:1px solid var(--border)}.filter-row{align-items:flex-start;gap:10px;min-width:0;display:flex}.filter-row-label{width:7.5em;color:var(--faint);letter-spacing:.02em;white-space:nowrap;flex:none;padding-top:8px;font-size:11px;font-weight:800;line-height:1.3}.filter-chips{flex-wrap:wrap;flex:1;gap:5px;min-width:0;display:flex}.filter-chip{border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);height:30px;color:var(--muted);white-space:nowrap;cursor:pointer;flex:none;padding:0 12px;font-size:12px;font-weight:700;transition:color .15s,border-color .15s,background-color .15s}.filter-chip.is-on{border-color:var(--court);background:var(--court-soft);color:var(--court)}.filter-chip:focus-visible{border-color:var(--accent-text);outline:none}@media (hover:hover){.filter-chip:not(:disabled):hover{color:var(--fg);border-color:var(--muted)}.filter-chip.is-on:not(:disabled):hover{color:var(--court);border-color:var(--court)}}@media (pointer:coarse){.filter-chip{height:34px;padding:0 14px}}.filter-clear{color:var(--faint);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:start;margin-top:2px;padding:0;font-size:11px;font-weight:800;text-decoration:underline}@media (hover:hover){.filter-clear:hover{color:var(--fg)}}.seg:not(.is-disabled) button:disabled{opacity:.35;cursor:default}.opponent-compare-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;margin-top:4px;overflow-x:auto}.opponent-compare{border-spacing:0;border-collapse:separate;font-variant-numeric:tabular-nums;width:max-content;min-width:100%}.opponent-compare th,.opponent-compare td{text-align:center;white-space:nowrap;padding:7px 10px}.opponent-compare thead th{color:var(--muted);font-size:11px;font-weight:800;line-height:1.2}.opponent-compare thead th small{color:var(--faint);font-size:10px;font-weight:700;display:block}.opponent-compare .oc-head th{border-bottom:1px solid var(--hairline);text-align:left;padding:12px 10px 5px 0}.opponent-compare .oc-head-inner{background:var(--card);align-items:baseline;gap:8px;padding-right:10px;display:inline-flex;position:sticky;left:0}.opponent-compare .oc-label{color:var(--fg);font-size:13px;font-weight:900}.opponent-compare .oc-meta{color:var(--muted);font-size:11px;font-weight:700}.opponent-compare .oc-who{z-index:1;background:var(--card);text-align:left;min-width:116px;padding-left:0;font-size:12px;font-weight:800;position:sticky;left:0}.opponent-compare .oc-row.is-self .oc-who{color:var(--court)}.opponent-compare .oc-row.is-opponent .oc-who,.opponent-compare .oc-row.is-opponent td strong{color:var(--fg)}.opponent-compare .oc-row td strong{color:var(--fg);font-size:14px;font-weight:900;line-height:1.2;display:block}.opponent-compare .oc-row td small{color:var(--faint);margin-top:1px;font-size:10px;font-weight:700;display:block}.player-match-picker-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.player-match-picker-head h2{margin:0}.player-match-picker-actions{gap:6px;display:flex}.player-match-picker-actions .btn{padding:5px 12px;font-size:12px}.player-match-list{overscroll-behavior:contain;flex-direction:column;gap:6px;max-height:320px;margin-top:10px;display:flex;overflow-y:auto}.player-match-row{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);width:100%;color:var(--fg);text-align:left;align-items:center;gap:10px;padding:9px 10px;display:flex}.player-match-row.is-on{border-color:var(--court);background:var(--court-soft)}.player-match-row .pm-check{border:1.5px solid var(--border);background:var(--surface);width:20px;height:20px;color:var(--on-accent);border-radius:5px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.player-match-row.is-on .pm-check{border-color:var(--court);background:var(--court)}.player-match-row .pm-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.player-match-row .pm-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.player-match-row .pm-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.player-match-row .pm-result{font-variant-numeric:tabular-nums;flex-direction:column;flex:none;align-items:flex-end;gap:1px;font-size:13px;font-weight:900;display:flex}.player-match-row .pm-result.is-won{color:var(--win)}.player-match-row .pm-result.is-lost{color:var(--loss)}.player-match-row .pm-result.is-in_progress{color:var(--faint)}.player-match-row .pm-result small{color:var(--muted);font-size:11px;font-weight:700}.court-visual-card{--court-visual-pad:14px;padding-bottom:var(--court-visual-pad,14px)}.court-visual-head{flex-direction:column;gap:12px;display:flex}.court-visual-head h2{margin:0}.court-visual-controls{padding:0 var(--court-visual-pad,14px);flex-wrap:wrap;align-items:stretch;gap:6px;display:flex}.court-visual-controls .seg{border-radius:var(--r-sm);flex:none;padding:2px}.court-visual-controls .seg button{border-radius:var(--r-sm);flex:none;padding:6px 13px;font-size:12px}.court-visual-switch{border:1px solid var(--border);border-radius:var(--r-pill);background:var(--track);color:var(--muted);white-space:nowrap;cursor:pointer;flex:none;align-items:center;gap:8px;padding:2px 14px 2px 4px;font-size:12px;font-weight:700;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.court-visual-switch-track{border-radius:var(--r-pill);background:var(--surface-2);width:30px;height:18px;transition:background-color .18s;position:relative}.court-visual-switch-track:after{content:"";background:var(--faint);border-radius:50%;width:12px;height:12px;transition:transform .18s cubic-bezier(.34,1.4,.64,1),background-color .18s;position:absolute;top:3px;left:3px}.court-visual-switch.is-on{border-color:var(--court);background:var(--court-soft);color:var(--court)}.court-visual-switch.is-on .court-visual-switch-track{background:var(--court)}.court-visual-switch.is-on .court-visual-switch-track:after{background:var(--on-accent);transform:translate(12px)}.court-visual-switch:disabled{opacity:.45;cursor:default}@media (hover:hover){.court-visual-switch:not(:disabled):hover{color:var(--fg);border-color:var(--muted)}.court-visual-switch.is-on:not(:disabled):hover{color:var(--court);border-color:var(--court)}}.court-visual-filter{margin:14px var(--court-visual-pad,14px) 0;border-top:1px solid var(--hairline);gap:8px;padding-top:12px;display:grid}.court-plot{margin-top:12px}.court-plot-title{color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:800}.court-plot-svg{border-radius:var(--r-sm);width:100%;max-width:430px;height:auto;margin:0 auto;display:block}@media (width<=480px){.court-plot-svg{width:auto;max-width:100%;max-height:62vh}}.court-plot-runoff{fill:var(--court-runoff)}.court-plot-surface{fill:var(--court-surface)}.court-plot-line{stroke:var(--court-line);stroke-width:4px;fill:none}.court-plot-hit{cursor:pointer}.court-plot-legend{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:6px 14px;margin-top:10px;font-size:11px;font-weight:700;display:flex}.court-plot-legend span{align-items:center;gap:5px;display:inline-flex}.court-plot-legend i{border-radius:3px;width:11px;height:11px}.court-plot-shape-key{color:var(--fg)}.court-plot-legend i.court-plot-shape{background:var(--muted);border:1px solid var(--card)}.court-plot-legend i.court-plot-shape.is-circle{border-radius:50%}.court-plot-legend i.court-plot-shape.is-square{border-radius:1px}.court-plot-legend .court-plot-shape.is-cross{width:12px;height:12px;stroke:var(--muted);stroke-width:2.2px;stroke-linecap:round;fill:none;background:0 0;border:0}.court-plot-legend.is-scale{align-items:center}.court-plot-scale{border-radius:var(--r-pill);background:linear-gradient(90deg,#feebe2,#fc9272,#de2d26,#67000d);width:110px;height:9px}.zone-grid{margin-top:12px}.zone-grid-table{gap:2px;max-width:480px;margin:0 auto;display:grid}.zone-cell{border:1px solid var(--border);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:46px;padding:4px 2px;line-height:1.15;display:flex}.zone-cell.is-out{border-style:dashed;border-color:var(--hairline);background:0 0}.zone-cell.is-out.is-empty{border-color:#0000}.zone-cell.is-empty:not(.is-out){background:color-mix(in srgb, var(--surface) 55%, transparent)}.zone-cell.is-net-edge{border-bottom-style:solid;border-bottom-width:2.5px;border-bottom-color:var(--court)}.zone-cell strong{color:var(--fg);font-size:13px;font-weight:900}.zone-cell small{color:var(--muted);font-size:10px;font-weight:700}.zone-cell.is-out strong,.zone-cell.is-out small{color:var(--faint)}.zone-cell strong.is-on-dark,.zone-cell small.is-on-dark{color:#fff}.zone-grid-foot{max-width:480px;color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:10px auto 0;font-size:11px;font-weight:700;display:flex}.zone-grid-note{color:var(--faint)}.court-visual-grid{padding:0 var(--court-visual-pad,14px);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:12px;display:grid}.court-visual-pane{border-top:2px solid var(--border);min-width:0;padding-top:8px}.court-visual-pane.is-red{border-top-color:var(--red)}.court-visual-pane.is-blue{border-top-color:var(--blue)}.court-visual-pane .court-plot-title{color:var(--fg);justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;display:flex}.court-visual-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.st-mk.st-unknown{position:relative}.st-mk.st-unknown:after{content:"";background:var(--warn);border-radius:1px;height:2px;position:absolute;bottom:1px;left:22%;right:22%}.speed-point-winner{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);text-align:center;margin:12px 0 0;padding:9px 12px;font-size:13px;font-weight:700}.speed-point-winner.is-red{border-color:var(--red);background:var(--red-soft)}.speed-point-winner.is-blue{border-color:var(--blue);background:var(--blue-soft)}.match-analysis-tabs{width:min(100%,360px);margin:0 0 16px}.point-table-card{padding:0;overflow:visible}.point-table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;overflow:auto hidden}.point-table{border-spacing:0;border-collapse:separate;font-variant-numeric:tabular-nums;width:max-content;min-width:100%}.point-table th,.point-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--card);text-align:center;vertical-align:middle;min-width:126px;padding:10px 12px}.point-table th{z-index:1;color:var(--muted);background:var(--surface-2);white-space:nowrap;font-size:12px;font-weight:800;position:sticky;top:0}.point-table tr:last-child td{border-bottom:0}.point-table th:last-child,.point-table td:last-child{border-right:0}.point-table .point-table-score{z-index:2;text-align:left;width:158px;min-width:158px;position:sticky;left:0}.point-table th.point-table-score{z-index:3;background:var(--surface-2)}.point-table td.point-table-score{background:var(--card)}.point-table .point-table-match{z-index:2;text-align:left;width:150px;min-width:150px;position:sticky;left:0}.point-table th.point-table-match{z-index:3;background:var(--surface-2)}.point-table td.point-table-match{background:var(--card)}.point-table-match span,.point-table-match strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.point-table-match span{color:var(--muted);font-size:11px;font-weight:700}.point-table-match strong{font-size:13px}.point-table-match~.point-table-score{left:150px}.point-table tr.is-focus td,.point-table tr.is-focus td.point-table-score,.point-table tr.is-focus td.point-table-match{background:var(--surface-3)}.point-table-score span,.point-table-score strong{white-space:nowrap;display:block}.point-table-score span{color:var(--muted);font-size:11px;font-weight:700}.point-table-score strong{color:var(--fg);margin-top:3px;font-size:13px;font-weight:900}.point-table-shot-types{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.point-table-shot-types span{border-radius:var(--r-pill);background:var(--court-soft);min-height:26px;color:var(--court);white-space:nowrap;align-items:center;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.point-table-shot.is-empty{color:var(--faint)}.point-table td.point-table-shot.is-openable{padding:0}.point-table-shot-open{width:100%;color:inherit;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;padding:10px 12px;display:block}@media (hover:hover){.point-table-shot-open:hover{background:var(--surface-2)}}.point-table-shot-open:active{background:var(--surface-3)}.point-table-shot-open:focus-visible{background:var(--surface-2);outline:none}.point-table-shot-meta{color:var(--muted);flex-direction:column;gap:2px;margin-top:6px;font-size:10px;font-weight:800;line-height:1.25;display:flex}.point-table-shot.is-error .point-table-shot-types span{background:var(--loss-soft);color:var(--loss)}.point-table-shot.is-error .point-table-shot-meta{color:var(--loss)}.point-table-shot.is-ace .point-table-shot-types span{background:var(--info-soft);color:var(--info)}.point-table-shot.is-ace .point-table-shot-meta{color:var(--info)}.point-table th:not(.point-table-score),.point-table td.point-table-shot{min-width:154px}.point-table-shot-context{border-top:1px solid var(--hairline);color:var(--muted);flex-direction:column;gap:2px;margin-top:8px;padding-top:7px;font-size:10px;font-weight:700;line-height:1.3;display:flex}.point-table-shot-context strong{color:var(--fg);font-size:11px;font-weight:900}.point-table-shot-context .is-red{color:var(--red)}.point-table-shot-context .is-blue{color:var(--blue)}.point-table-shot.is-first-error .point-table-shot-types span{background:var(--warn-soft);color:var(--warn)}.point-table-shot.is-first-error .point-table-shot-meta{color:var(--warn)}.point-filter-card{margin-bottom:12px;padding:14px}.point-filter-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.point-filter-head>div{align-items:center;gap:8px;display:flex}.point-filter-head>div>strong{font-size:14px;font-weight:900}.point-filter-head>div>span{border-radius:var(--r-pill);background:color-mix(in srgb, var(--motion) 14%, transparent);color:var(--motion);padding:3px 8px;font-size:10px;font-weight:900}.point-filter-head .btn{min-height:34px;padding:5px 10px;font-size:11px}.point-filter-groups{gap:10px;margin-top:10px;display:grid}.point-filter-summary{color:var(--muted);text-align:right;margin-top:8px;font-size:11px;font-weight:800}.point-table-shot.is-filter-match{background:var(--court-soft);box-shadow:inset 3px 0 0 var(--accent-text)}.point-table .point-table-no-results{height:90px;color:var(--muted);text-align:center;font-size:12px;font-weight:800}.sync-chip{border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;flex:none;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.sync-chip .sync-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.sync-chip.sync-synced{color:var(--win);background:var(--win-soft)}.sync-chip.sync-local{color:var(--muted);background:var(--surface-2)}.sync-chip.sync-warn{color:var(--warn);background:var(--warn-soft)}.sync-chip.sync-error{color:var(--loss);background:var(--loss-soft)}.sync-chip.sync-info{color:var(--info);background:var(--info-soft)}@media (width<=700px){.editor .sync-chip,.speed-record-entry .sync-chip{gap:0;height:22px;padding:0 5px}.editor .sync-chip .sync-label,.speed-record-entry .sync-chip .sync-label{display:none}.editor .sync-chip .sync-dot,.speed-record-entry .sync-chip .sync-dot{width:8px;height:8px}}.sync-chip-floating{top:calc(env(safe-area-inset-top) + 58px);z-index:1200;border-color:var(--border);background-color:var(--surface);box-shadow:var(--sh-2);position:fixed;right:12px}.sync-chip-floating.sync-warn{border-color:var(--warn)}.sync-chip-floating.sync-error{border-color:var(--loss)}.sync-banner{border-radius:var(--r-md);border:1px solid;align-items:center;gap:10px;margin:2px 0 12px;padding:10px 12px;font-size:12.5px;line-height:1.55;display:flex}.sync-banner.warn{color:var(--fg);background:var(--warn-soft);border-color:var(--warn)}.sync-banner.error{color:var(--fg);background:var(--loss-soft);border-color:var(--loss)}.sync-banner .sync-banner-text{flex:1;min-width:0}.sync-banner .btn{flex:none}.network-blocked-page{min-height:100dvh}.network-blocked-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--card);width:min(100% - 32px,520px);box-shadow:var(--sh-1);text-align:center;flex-direction:column;align-items:center;margin:clamp(48px,12vh,120px) auto 0;padding:32px 24px;display:flex}.network-blocked-icon{background:var(--loss-soft);width:48px;height:48px;color:var(--loss);border-radius:50%;place-items:center;font-size:26px;font-weight:900;display:grid}.network-blocked-card h2{margin:18px 0 8px;font-size:20px}.network-blocked-card p{max-width:380px;color:var(--muted);margin:0;font-size:14px;font-weight:700;line-height:1.7}.network-blocked-card .btn{min-width:180px;margin-top:22px}@media (width<=480px){.network-blocked-card{padding:28px 20px}}.court-visual-total{color:var(--muted);margin-left:10px;font-size:12.5px;font-weight:700}.court-visual-note{padding:0 var(--court-visual-pad,14px);color:var(--faint);margin:10px 0 0;font-size:11.5px;font-weight:600}.court-plot-empty-label{fill:var(--muted);opacity:.75;font-size:64px;font-weight:700}.feedback-page{gap:14px;display:grid}.feedback-compose{gap:10px;padding:14px;display:grid}.feedback-input{border:1px solid var(--control-border);border-radius:var(--r-sm);background:var(--surface-2);width:100%;min-height:76px;color:var(--fg);font:inherit;resize:none;padding:10px 12px;font-size:14px;line-height:1.55}.feedback-input:focus{border-color:var(--court);outline:none}.feedback-compose-foot{color:var(--faint);justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:700;display:flex}.feedback-error{border-radius:var(--r-sm);background:var(--loss-soft);color:var(--loss);padding:10px 14px;font-size:12px;font-weight:800}.feedback-section{padding:0;overflow:hidden}.feedback-section h2{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin:0;padding:13px 14px 10px;font-size:14px;font-weight:800;display:flex}.feedback-count{border-radius:var(--r-pill);background:var(--surface-2);min-width:20px;color:var(--muted);text-align:center;padding:2px 7px;font-size:11px;font-weight:900}.feedback-empty{color:var(--faint);padding:16px 14px;font-size:12px;font-weight:700}.feedback-list{margin:0;padding:0;list-style:none}.feedback-item{gap:8px;padding:13px 14px;display:grid}.feedback-item+.feedback-item{border-top:1px solid var(--hairline)}.feedback-item-body{color:var(--fg);white-space:pre-wrap;word-break:break-word;font-size:14px;font-weight:600;line-height:1.6}.feedback-item-note{border-left:3px solid var(--court);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--court-soft);color:var(--court);white-space:pre-wrap;word-break:break-word;padding:8px 10px;font-size:13px;font-weight:700;line-height:1.55}.feedback-item.is-declined .feedback-item-body{color:var(--muted)}.feedback-item-meta{color:var(--faint);flex-wrap:wrap;gap:4px 12px;font-size:11px;font-weight:700;display:flex}.feedback-item-edit{gap:8px;display:grid}.feedback-item-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.feedback-page .feedback-item-actions .btn{min-width:80px;min-height:44px;box-shadow:none;border-radius:6px;padding:8px 12px;font-size:13px;line-height:1.4}.feedback-delete{color:var(--loss);margin-left:auto}.feedback-item-actions .feedback-delete{min-width:64px}.feedback-review-actions{flex-wrap:nowrap}.feedback-page .feedback-review-actions>.btn:not(.feedback-delete){flex:0 96px;min-width:0;padding-inline:10px}.feedback-page .feedback-review-actions>.feedback-delete{flex:none;min-width:64px}.settings-feedback-button.btn{text-align:left;justify-content:space-between;width:100%;min-height:48px;margin-bottom:16px}.settings-feedback-button>svg{color:var(--muted);flex:none}.speed-live-score{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:14px 0;display:grid}.speed-live-score>div{gap:4px;min-width:0;display:grid}.speed-live-score>div:last-child{text-align:right}.speed-live-score>div>span{overflow-wrap:anywhere;font-size:12px}.speed-live-games{white-space:nowrap;font-size:26px}.speed-record-actions{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.speed-record-actions>.btn{border-radius:6px;min-height:44px;padding:10px 14px;font-size:14px;line-height:1.4}.speed-game{border-top:1px solid var(--border);padding:10px 0}.speed-game-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.speed-game-score{font-variant-numeric:tabular-nums;align-items:center;gap:9px;font-size:18px;font-weight:700;display:inline-flex}.speed-point-list{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.speed-point-button{gap:3px;width:44px;min-height:44px;padding:4px;display:grid}.speed-point-button>span{color:var(--muted);font-size:10px}.speed-point-button.red{color:var(--red);background:var(--red-soft);border-color:var(--red)}.speed-point-button.blue{color:var(--blue);background:var(--blue-soft);border-color:var(--blue)}.speed-entry-heading{justify-content:space-between;align-items:center;gap:8px;margin:8px 0;font-size:13px;display:flex}.speed-entry-heading>.btn{white-space:nowrap;flex:none}.speed-winner-field .seg button{white-space:normal;overflow-wrap:anywhere;min-height:50px}.speed-details{border-top:1px solid var(--border);margin-top:16px}.speed-details>summary{cursor:pointer;padding:12px 0;font-weight:700}.speed-clear-point{margin-top:16px}.speed-point-navigation{background:var(--bg);gap:12px;padding:10px 0}.speed-point-nav-button{border-radius:var(--r-md);width:auto;min-width:0;height:48px;box-shadow:none;flex:1;padding:0 10px;font-size:14px}.speed-point-nav-button.btn-primary{background:var(--action);color:var(--on-accent)}.speed-record-entry-stage{min-height:auto;padding-bottom:max(12px, env(safe-area-inset-bottom))}@media (width<=520px){.speed-last-player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.speed-serve-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;font-size:13px;display:flex}.speed-serve-heading .lbl{margin:0}.speed-serve-heading .dropdown{width:auto;min-width:125px}.speed-serve-heading .dropdown-trigger{min-height:36px;font-size:13px}.match-score-sheet{table-layout:fixed}.match-score-sheet .st-team,.match-score-sheet .st-marks{width:auto}.match-score-sheet .st-g{width:112px}.match-score-sheet .st-team-name,.match-sheet .st-meta{overflow-wrap:anywhere}.match-sheet-toolbar{z-index:100;background:var(--bg);padding-bottom:6px;position:sticky;top:0}.native-app .match-sheet-toolbar{top:env(safe-area-inset-top)}.match-sheet-toolbar .appbar{margin-bottom:0;position:static}.match-sheet-toolbar .score-sheet-actions{justify-content:space-between;gap:8px;margin-top:4px}.editor .appbar,.speed-record-entry .appbar{flex:none;min-width:0}.editor .ballnav{flex:none}.editor .ball-strip{min-width:0}.editor .side-panel{overflow:hidden;container-type:inline-size}.editor .side-panel>*{flex-shrink:0}.editor .side-panel>.side-panel-scroll{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:0 auto;gap:8px;min-height:0;padding-bottom:1px;display:flex;overflow:hidden auto}.editor .side-panel-scroll>*{flex-shrink:0}.editor .sp-type,.editor .sp-effectiveness{white-space:normal;overflow-wrap:anywhere}.editor .sp-type{min-width:0}.editor .sp-effectiveness{height:auto;min-height:34px}.editor .sp-winner{margin:0;position:relative}.editor .court-team-label{flex:none}.editor .court-col{min-width:96px}.editor .ct-roster,.editor .ct-player{flex:1}.editor .ct-serve-badge{flex:none}@container (width>=260px){.editor .sp-shot-taxonomy{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.editor .sp-shot-taxonomy .sp-types{grid-template-columns:repeat(2,minmax(0,1fr))}}.speed-record-entry{width:100%;max-width:980px;height:100dvh;padding:env(safe-area-inset-top) 14px max(8px, env(safe-area-inset-bottom));background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 50%;overflow:hidden;transform:translate(-50%)}.speed-record-entry-stage{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.speed-entry-fields{overscroll-behavior:contain;flex:1;min-height:0;padding:0 2px 12px;overflow-y:auto}.speed-record-entry .speed-point-navigation{z-index:1;flex:none;margin:0;position:static}.speed-recorder .speed-live-score{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.speed-recorder .speed-live-score strong{overflow-wrap:anywhere}.speed-record-entry .speed-serve-heading .dropdown{min-width:0;max-width:calc(100% - 60px)}.speed-record-entry .speed-finish-option{white-space:normal;overflow-wrap:anywhere}@media (width<=520px){.match-score-sheet .st-g{width:88px}.match-score-sheet .st-label{overflow-wrap:anywhere;font-size:14px}.match-score-sheet .st-mark-line{grid-template-columns:1fr;gap:5px}.match-score-sheet .st-point-marks{grid-column:1;gap:4px}.editor .appbar,.speed-record-entry .appbar{gap:6px;margin-bottom:8px;padding-block:6px}.editor-scoreboard{margin-left:0}.editor-score-row{gap:6px;font-size:13px}.editor-header-actions{gap:2px}.editor .appbar>.btn{padding-inline:8px}.editor .court-col{width:calc(100% - var(--side-panel-min) - var(--court-gap))}.editor .court-team-label{flex-direction:column;align-items:stretch;gap:3px;padding:5px 3px}.editor .ct-name{max-width:100%;font-size:12px}.editor .ct-roster{flex-direction:column;gap:2px}.editor .ct-player{font-size:11px}.editor .ct-player .mk{width:16px;height:16px;margin-inline:2px;font-size:10px}.editor .ct-serve-badge{margin-left:2px;padding-inline:3px;font-size:9px}.editor .sp-shot-taxonomy{padding:4px}.editor .sp-shot-taxonomy .sp-types{grid-template-columns:repeat(2,minmax(0,1fr))}.editor .sp-type{padding:7px 1px;font-size:11px;line-height:1.3}.editor .sp-effectiveness{padding-inline:1px;font-size:11px}.editor .sp-motion{gap:3px;padding-inline:2px;font-size:11px}.editor .sp-winner{padding:9px 2px;font-size:12px}}@media (width>=521px) and (height<=600px){.speed-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;column-gap:16px;display:grid}.speed-entry-heading,.speed-details,.speed-clear-point{grid-column:1/-1}.speed-entry-heading,.speed-record-entry .speed-winner-field{margin:0}.speed-record-entry .speed-winner-field>.lbl{align-items:center;min-height:36px;display:flex}}@media (height<=440px){.editor .appbar{margin-bottom:4px;padding-block:4px}.editor .court-team-label{padding-block:3px}.editor .ct-roster{display:none}.editor .navbtn,.editor .ball-dot{height:40px}.editor .court-col{width:min(calc((100cqh - 46px) / var(--court-aspect,1.54)), calc(100% - var(--side-panel-min) - var(--court-gap)))}.speed-record-entry .appbar{margin-bottom:4px;padding-block:4px}.speed-record-entry .speed-point-navigation{padding-block:6px}}:is(.web-create-match,.match-sheet,.speed-recorder,.speed-record-entry,.editor,.match-flow-dialog){--r-sm:6px;--r-md:6px;--r-lg:8px}:is(.match-sheet,.speed-recorder,.speed-record-entry,.editor,.match-flow-dialog) :is(.btn,.seg,.seg button,input,textarea,.dropdown-trigger,.navbtn,.sp-tgl,.sp-ss,.sp-motion){box-shadow:none}:is(.match-sheet,.speed-recorder,.speed-record-entry,.editor,.match-flow-dialog) :is(button,input,textarea):focus{box-shadow:none;outline:none}:is(.match-sheet,.speed-recorder,.speed-record-entry,.editor,.match-flow-dialog) :is(input,textarea,.dropdown-trigger):focus{border-color:var(--court)}:is(.match-sheet,.speed-recorder,.speed-record-entry,.editor,.match-flow-dialog) .btn-primary:focus-visible{background-color:var(--action-hover)}:is(.match-sheet,.speed-recorder,.speed-record-entry) .btn-settings{min-width:44px;min-height:44px;padding:8px}.match-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.match-settings .field{min-width:0;margin:0}.match-settings .field:last-child{grid-column:1/-1}.match-settings .seg button{white-space:normal;overflow-wrap:anywhere}.match-settings-wide{grid-column:1/-1;min-width:0}.match-settings-player{border:0;border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;margin:0;padding:14px 0;display:grid}.match-settings-player legend{padding:0 8px 0 0;font-size:13px}.match-settings-player .field:first-of-type,.match-settings-register{grid-column:1/-1}.match-settings-register{justify-self:start;font-size:12px}.match-settings-position-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:18px 0;display:grid}.match-settings-position-fields>div{gap:12px;min-width:0;display:grid}.match-settings-positions summary{cursor:pointer;font-size:14px}.point-table-column-picker{border-bottom:1px solid var(--border);justify-content:flex-end;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex}.point-table-column-picker>span{white-space:nowrap}.point-table-column-picker>.dropdown{flex:0 180px;width:180px;min-width:100px}.match-settings input,.match-settings textarea{border-radius:6px}.match-flow-dialog{border-radius:8px;max-height:calc(100dvh - 40px)}.match-flow-dialog .confirm-actions{margin-top:20px}.match-flow-dialog .btn-danger{background:var(--red);color:var(--on-accent);border-color:#0000}.point-action-list{gap:4px;margin-top:16px;display:grid}.point-action-list .btn{text-align:left;background:0 0;border-color:#0000;justify-content:flex-start;padding:10px 12px;font-weight:500}.point-action-list .btn:not(:disabled):hover{background:var(--surface-2)}.point-action-list .point-delete-action{color:var(--red)}.point-winner-options{gap:8px;margin-top:16px;display:grid}.point-winner-options .btn{white-space:normal;overflow-wrap:anywhere}.point-team-red{background:var(--red-soft);border-color:var(--red);color:var(--red)}.point-team-blue{background:var(--blue-soft);border-color:var(--blue);color:var(--blue)}.create-player-dialog{overflow-y:auto}.create-player-dialog fieldset{border:0;min-width:0;margin:0;padding:0}.editor .side-panel{gap:8px}.editor :is(.sp-shot-taxonomy,.sp-add-on-group,.sp-effectiveness-group){background:0 0;border:0;border-radius:0;padding:0}.editor :is(.sp-add-on-group,.sp-effectiveness-group){border-top:1px solid var(--border);padding-top:8px}.editor .sp-effectiveness-group.is-required{background:var(--warn-soft);border:0;border-radius:6px;padding:6px}.editor .sp-effectiveness-group.is-required .sp-group-label{color:var(--warn)}.editor :is(.sp-type,.sp-effectiveness,.sp-winner,.sp-reset,.ball-label,.sp-serve-style,.sp-toggle){border-radius:6px}.editor :is(.sp-effectiveness.on,.sp-add-on-chip.on):not(:disabled){background:var(--court);color:var(--on-accent);border-color:var(--court)}.editor .sp-winner{border-width:1px}.editor .sp-motion.on{box-shadow:none}.editor .sp-type:focus-visible,.editor .sp-effectiveness:focus-visible{border-color:var(--court)}.editor .sp-type.on:focus-visible,.editor .sp-effectiveness.on:focus-visible{background:var(--court-strong);color:var(--on-accent)}.speed-record-entry .dropdown-trigger{border-radius:6px}.speed-record-entry .dropdown-panel{box-shadow:var(--sh-2);border-radius:6px}.speed-winner-field .seg button:first-child.on{color:var(--red);background:var(--red-soft)}.speed-winner-field .seg button:last-child.on{color:var(--blue);background:var(--blue-soft)}@media (width<=640px){.match-settings{grid-template-columns:minmax(0,1fr);gap:18px}.match-settings input,.match-settings textarea,.match-flow-dialog input{font-size:16px}.match-flow-dialog{padding:20px}}.date-input-control{position:relative}.date-input-control input{width:100%;padding-right:44px}.date-input-trigger{width:44px;color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:absolute;inset:0 0 0 auto}@media (hover:hover){.date-input-trigger:not(:disabled):hover{color:var(--fg);background:var(--surface-2)}}.date-dialog{width:min(360px,100vw - 32px)}.calendar-heading{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.calendar-heading .btn{min-width:44px;padding:8px;font-size:22px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.calendar-weekday{text-align:center;color:var(--muted);padding-block:8px;font-size:12px}.calendar-grid button{min-height:40px;color:var(--fg);font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px}.calendar-grid button.on{background:var(--court);color:var(--on-accent)}.calendar-grid button:not(:disabled):focus-visible{border-color:var(--court)}@media (hover:hover){.calendar-grid button:not(:disabled):hover{border-color:var(--court)}}@media (height<=500px){.date-dialog{padding:16px}.calendar-grid button{min-height:30px}.date-dialog .confirm-actions{margin-top:10px}}:is(.web-create-match,.match-flow-dialog) .form-error{box-shadow:none;color:var(--red);background:0 0;border:0;padding:0;font-weight:500}.web-create-match .create-player-grid:has(.create-player-field:only-child){grid-template-columns:repeat(2,minmax(0,1fr))}.web-create-match .create-player-field:only-child{grid-column:1/-1}.editor .editor-header-actions{gap:6px}.editor .editor-header-actions>.btn{border-radius:6px;flex:none;width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.editor .editor-header-actions>.btn.icon{font-size:18px}.editor .editor-header-actions>.btn.on{border-color:var(--court);background:var(--court-soft);color:var(--accent-text)}.editor .editor-video-open{font-size:12px}@media (width<=350px){.editor .editor-header-actions{gap:4px}.speed-recorder .appbar{gap:6px}.speed-recorder .appbar>.btn:first-child{width:44px;min-width:44px;padding:8px}.speed-recorder .appbar .title{font-size:18px}}.editor-video-title{color:var(--muted);font-size:13px;font-weight:600}.video-dialog{width:min(960px,100vw - 32px);position:relative}.video-dialog>h2{position:absolute;top:24px;left:24px}.video-dialog .editor-video-pane{background:0 0;border:0;flex-direction:column;min-width:0;height:auto;padding:0;display:flex;overflow:hidden}.video-dialog .editor-video-head{justify-content:flex-end;min-height:32px;margin-bottom:12px;display:flex}.video-dialog .editor-video-title{display:none}.video-dialog .editor-video-close{min-width:36px;min-height:36px;color:var(--muted);background:0 0;border:0;font-size:24px}.video-dialog .editor-video-stage{justify-content:center;align-items:center;min-height:0;display:flex}.video-dialog .editor-video-frame{aspect-ratio:16/9;background:var(--track);object-fit:contain;border:0;width:100%;max-height:calc(100dvh - 150px);display:block}.video-dialog .editor-video-frame iframe,.video-dialog .editor-youtube-host{border:0;width:100%;height:100%}.confirm-overlay:has(.match-flow-dialog){z-index:1400}.date-dialog .confirm-actions .btn{white-space:nowrap;flex:1;min-width:0;padding-inline:8px;font-size:14px}.speed-record-actions{z-index:90;background:var(--bg);padding-block:6px;position:sticky;top:65px}.native-app .speed-record-actions{top:calc(65px + env(safe-area-inset-top))}.speed-point-button{width:auto;min-width:48px;max-width:100px;padding-inline:6px}.speed-point-button strong{overflow-wrap:anywhere;font-size:11px;font-weight:600}.network-blocked-page .btn{box-shadow:none;border-radius:6px}.network-blocked-card{width:min(100%,520px);box-shadow:none;text-align:left;background:0 0;border:0;border-radius:0;align-items:flex-start;margin-top:40px;padding:20px 0}.network-blocked-card h2{margin-top:0;font-size:18px}.network-blocked-card p{font-weight:500}.network-blocked-page button:focus{box-shadow:none;outline:none}.speed-record-entry .field>.lbl,.speed-serve-heading>.lbl{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.speed-record-entry .speed-serve-heading>.lbl{margin:0}.speed-details>summary{font-size:14px;font-weight:600}.speed-shot-group-label{font-size:11px}.btn:not(:disabled):focus-visible{background-color:var(--surface-2);border-color:var(--accent-text)}.btn-primary:not(:disabled):focus-visible{background-color:var(--action-hover);color:var(--on-accent);border-color:#0000}.btn-red{--button-color:var(--red)}.btn-blue{--button-color:var(--blue)}:is(.btn-red,.btn-blue):not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--button-color) 82%, black);color:var(--on-accent);border-color:#0000}.btn.btn-danger-outline:not(:disabled):is(:focus-visible,:active){background-color:var(--red-soft);border-color:var(--red);color:var(--red)}.btn.btn-secondary:not(:disabled):active{background-color:var(--surface-3)}.btn.btn-danger-outline:not(:disabled):active{background-color:color-mix(in srgb, var(--red) 16%, var(--surface))}.btn-primary:not(:disabled):active{background-color:color-mix(in srgb, var(--action-hover) 88%, black)}.seg:not(.is-disabled) button:not(:disabled):is(:focus-visible,:active){background-color:var(--surface-3);color:var(--fg)}.seg:not(.is-disabled) button.on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--selected-surface) 84%, var(--accent-text));color:var(--fg)}.seg.seg-red{--segment-color:var(--red)}.seg.seg-blue{--segment-color:var(--blue)}.seg:is(.seg-red,.seg-blue):not(.is-disabled) button.on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--segment-color) 82%, black);color:var(--on-accent)}.dropdown-trigger:disabled{opacity:.45;cursor:default}.dropdown-trigger:not(:disabled):focus-visible{background-color:var(--surface-2);border-color:var(--accent-text)}.dropdown-trigger:not(:disabled):active{background-color:var(--surface-3)}.dropdown-option.selected.active:not(:disabled),.dropdown-option.selected:not(:disabled):focus-visible{background-color:color-mix(in srgb, var(--court) 18%, var(--surface))}.dropdown-option:not(:disabled):active{background-color:var(--surface-3)}:is(.filter-chip,.court-visual-switch).is-on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--court) 18%, var(--surface));border-color:var(--accent-text)}:is(.filter-chip,.court-visual-switch):not(.is-on):not(:disabled):active{background-color:var(--surface-3)}.chip.on:not(:disabled):is(:focus-visible,:active){background-color:var(--court-strong);color:var(--on-accent)}:is(.speed-details,.match-settings-positions)>summary:is(:focus-visible,:active){background-color:var(--surface-2)}:is(.date-input-trigger,.editor-video-close):not(:disabled):is(:focus-visible,:active){background-color:var(--surface-2);color:var(--fg)}.calendar-grid button:not(:disabled):active{background-color:var(--surface-3)}.calendar-grid button.on:not(:disabled):is(:focus-visible,:active){background-color:var(--court-strong);color:var(--on-accent)}:is(.sp-reset,.sp-act,.sp-tgl,.sp-type,.sp-ss,.sp-motion,.sp-winner,.sp-btn,.navbtn,.ball-dot):disabled{opacity:.45;cursor:default}:is(.sp-reset,.sp-act,.sp-tgl,.sp-type,.sp-ss,.sp-motion,.sp-winner,.sp-btn,.navbtn,button.ball-dot.pending):not(:disabled):is(:focus-visible,:active){background-color:var(--surface-3)}:is(.sp-tgl,.sp-ss).on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--elevated) 84%, var(--accent-text));color:var(--fg)}.editor :is(.sp-type,.sp-effectiveness,.sp-add-on-chip,.sp-winner).on{--record-color:var(--court)}.editor .sp-motion.on{--record-color:var(--motion)}.editor :is(.sp-type,.sp-effectiveness,.sp-add-on-chip,.sp-winner,.sp-motion).on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--record-color) 82%, black);color:var(--on-accent)}.ball-dot.bd-red{--ball-color:var(--red)}.ball-dot.bd-blue{--ball-color:var(--blue)}button.ball-dot:is(.bd-red,.bd-blue):not(.pending):not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--ball-color) 78%, black);color:var(--on-accent)}.speed-winner-field .seg button:first-child.on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--red) 18%, var(--surface));color:var(--red-text)}.speed-winner-field .seg button:last-child.on:not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--blue) 18%, var(--surface));color:var(--blue-text)}:is(.st-mk,.pt-cell,.speed-point-slot):not(:disabled):is(:focus-visible,:active){background-color:var(--sheet-grid,var(--surface-3))}@media (hover:hover){:is(.btn-red,.btn-blue):not(:disabled):hover{background-color:color-mix(in srgb, var(--button-color) 88%, black)}.seg:not(.is-disabled) button:not(:disabled):hover{background-color:var(--surface-3);color:var(--fg)}.seg:not(.is-disabled) button.on:not(:disabled):hover{background-color:color-mix(in srgb, var(--selected-surface) 90%, var(--accent-text))}.seg:is(.seg-red,.seg-blue):not(.is-disabled) button.on:not(:disabled):hover{background-color:color-mix(in srgb, var(--segment-color) 88%, black);color:var(--on-accent)}.dropdown-trigger:not(:disabled):hover{background-color:var(--surface-2);border-color:var(--muted)}:is(.filter-chip,.court-visual-switch).is-on:not(:disabled):hover{background-color:color-mix(in srgb, var(--court) 14%, var(--surface))}.chip.on:not(:disabled):hover{background-color:var(--court-strong);color:var(--on-accent)}:is(.speed-details,.match-settings-positions)>summary:hover{background-color:var(--surface-2)}.editor-video-close:not(:disabled):hover{background-color:var(--surface-2);color:var(--fg)}.calendar-grid button.on:not(:disabled):hover{background-color:var(--court-strong);color:var(--on-accent)}:is(.sp-reset,.sp-act,.sp-tgl,.sp-type,.sp-ss,.sp-motion,.sp-winner,.sp-btn,.navbtn,button.ball-dot.pending):not(:disabled):hover{background-color:var(--surface-3)}:is(.sp-tgl,.sp-ss).on:not(:disabled):hover{background-color:color-mix(in srgb, var(--elevated) 90%, var(--accent-text));color:var(--fg)}.editor :is(.sp-type,.sp-effectiveness,.sp-add-on-chip,.sp-winner,.sp-motion).on:not(:disabled):hover{background-color:color-mix(in srgb, var(--record-color) 88%, black);color:var(--on-accent)}button.ball-dot:is(.bd-red,.bd-blue):not(.pending):not(:disabled):hover{background-color:color-mix(in srgb, var(--ball-color) 86%, black);color:var(--on-accent)}.speed-winner-field .seg button:first-child.on:not(:disabled):hover{background-color:color-mix(in srgb, var(--red) 14%, var(--surface));color:var(--red-text)}.speed-winner-field .seg button:last-child.on:not(:disabled):hover{background-color:color-mix(in srgb, var(--blue) 14%, var(--surface));color:var(--blue-text)}:is(.st-mk,.pt-cell,.speed-point-slot):not(:disabled):hover{background-color:var(--sheet-grid,var(--surface-3))}}.st-marks.red .st-mk.win,.pt-cell.win-red{--point-color:var(--red);--point-text:var(--red-text)}.st-marks.blue .st-mk.win,.pt-cell.win-blue{--point-color:var(--blue);--point-text:var(--blue-text)}.match-sheet .st-mk.win:not(:disabled):is(:focus-visible,:active),.pt-cell:is(.win-red,.win-blue):not(:disabled):is(:focus-visible,:active){background-color:color-mix(in srgb, var(--point-color) 20%, var(--surface));border-color:var(--point-color)}.advanced-analysis-table th .th-sort:not(:disabled):is(:focus-visible,:active){background-color:var(--surface-3);color:var(--accent-text);text-underline-offset:3px;text-decoration:underline}@media (hover:hover){.match-sheet .st-mk.win:not(:disabled):hover,.pt-cell:is(.win-red,.win-blue):not(:disabled):hover{background-color:color-mix(in srgb, var(--point-color) 16%, var(--surface))}.advanced-analysis-table th .th-sort:not(:disabled):hover{color:var(--accent-text);text-underline-offset:3px;text-decoration:underline}}:is(.btn,.dropdown-trigger,.dropdown-option,.seg button,.filter-chip,.court-visual-switch,.sp-reset,.sp-act,.sp-tgl,.sp-type,.sp-ss,.sp-motion,.sp-winner,.sp-effectiveness,.sp-btn,button.ball-dot,.date-input-trigger,.calendar-grid button):not(:disabled):active{filter:brightness(.92)}.btn.btn-danger:not(:disabled):is(:focus-visible,:active){background:color-mix(in srgb, var(--red) 82%, black);color:var(--on-accent);border-color:#0000}:is(.speed-last-player-option,.speed-finish-option).red.on,.speed-point-button.red,.point-team-red{--choice-color:var(--red);--choice-text:var(--red-text)}:is(.speed-last-player-option,.speed-finish-option).blue.on,.speed-point-button.blue,.point-team-blue{--choice-color:var(--blue);--choice-text:var(--blue-text)}:is(.speed-last-player-option,.speed-finish-option).on:not(:disabled):is(:focus-visible,:active),:is(.speed-point-button.red,.speed-point-button.blue,.point-team-red,.point-team-blue):not(:disabled):is(:focus-visible,:active){background:color-mix(in srgb, var(--choice-color) 20%, var(--surface));color:var(--choice-text);border-color:var(--choice-color)}.fm-tab:not(:disabled):is(:focus-visible,:active){background:var(--surface-3);border-color:var(--accent-text)}.fm-tab.on:not(:disabled):is(:focus-visible,:active){background:var(--court-strong);color:var(--on-accent)}.editor .editor-header-actions>.btn.on:not(:disabled):is(:focus-visible,:active){background:color-mix(in srgb, var(--court) 20%, var(--surface));border-color:var(--court)}@media (hover:hover){.btn.btn-danger:not(:disabled):hover{background:color-mix(in srgb, var(--red) 88%, black);color:var(--on-accent);border-color:#0000}:is(.speed-last-player-option,.speed-finish-option).on:not(:disabled):hover,:is(.speed-point-button.red,.speed-point-button.blue,.point-team-red,.point-team-blue):not(:disabled):hover{background:color-mix(in srgb, var(--choice-color) 14%, var(--surface));color:var(--choice-text);border-color:var(--choice-color)}.fm-tab:not(:disabled):hover{background:var(--surface-2)}.fm-tab.on:not(:disabled):hover{background:var(--court-strong);color:var(--on-accent)}.editor .editor-header-actions>.btn.on:not(:disabled):hover{background:color-mix(in srgb, var(--court) 14%, var(--surface));border-color:var(--court)}}.folder-tree-option:not(:disabled):active{background:color-mix(in srgb, var(--fg) 12%, var(--surface-3))}:is(.speed-details,.match-settings-positions)>summary:active{background:var(--surface-3)}.btn:is(.speed-last-player-option,.speed-finish-option).on,:is(.speed-point-button.red,.speed-point-button.blue,.point-team-red,.point-team-blue){color:var(--choice-text)}.speed-winner-field .seg button:first-child.on{color:var(--red-text)}.speed-winner-field .seg button:last-child.on{color:var(--blue-text)}.st-marks:is(.red,.blue) .st-mk.win,.pt-cell:is(.win-red,.win-blue){color:var(--point-text)}.speed-entry-heading{min-height:44px}.speed-sheet{border-top:1px solid var(--border);display:grid}.speed-sheet-row{border-bottom:1px solid var(--border);grid-template-columns:32px minmax(0,1fr) 56px;align-items:center;gap:10px;padding:8px 0;display:grid}.speed-sheet-game{color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.speed-sheet-row.current .speed-sheet-game{color:var(--fg)}.speed-sheet-cells{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.speed-sheet-cells::-webkit-scrollbar{display:none}.speed-sheet-cell{border:1px solid var(--control-border);background:var(--surface);width:44px;height:44px;color:var(--fg);font:inherit;cursor:pointer;border-radius:6px;flex:none;padding:0;font-size:11px;font-weight:700}.speed-sheet-cell.red{border-color:var(--red);background:var(--red);color:#fff}.speed-sheet-cell.blue{border-color:var(--blue);background:var(--blue);color:#fff}.speed-sheet-cell.draft{border-style:dashed;border-color:var(--muted)}.speed-sheet-cell.next{border:2px solid var(--action)}.speed-sheet-score{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.speed-sheet-score.red{color:var(--red)}.speed-sheet-score.blue{color:var(--blue)}@media (hover:hover){.speed-sheet-cell:not(.red):not(.blue):hover{background:var(--surface-2)}}@media (width<=420px){.speed-sheet-row{grid-template-columns:24px minmax(0,1fr) 44px;gap:6px}.speed-sheet-cell{width:38px;height:44px}}@media (width>=768px){.speed-sheet-cell{width:52px;height:52px;font-size:12px}.speed-sheet-cells{gap:6px}}@media (width<=420px){.speed-sheet-cell{width:36px}.speed-sheet-cells{gap:3px}}.speed-record-entry .speed-entry-heading{min-height:40px;margin:4px 0 8px}.sre-layout{gap:20px;display:grid}.sre-column{align-content:start;gap:20px;min-width:0;display:grid}.sre-group{border:0;align-content:start;gap:10px;min-width:0;margin:0;padding:0;display:grid}.sre-group:disabled{opacity:.4}.sre-group-title{color:var(--fg);margin:0;font-size:15px;font-weight:700}.sre-field{gap:6px;min-width:0;display:grid}.sre-field+.sre-field{margin-top:6px}.sre-field-label,.sre-shot-group-label{color:var(--muted);font-size:12px;font-weight:600}.sre-seg{background:var(--surface-2);border-radius:10px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;padding:3px;display:grid}.sre-seg-item{min-width:0;min-height:44px;color:var(--fg);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:4px 8px;font-size:15px;font-weight:600;display:flex}.sre-seg-item.on{background:var(--action);color:#fff}.sre-seg-item:disabled{color:var(--muted);opacity:.45;cursor:default}.sre-attempts .sre-seg-item,.sre-ends .sre-seg-item{min-height:52px;font-size:17px;font-weight:700}.sre-servers{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.sre-player.red.on{background:var(--red)}.sre-player.blue.on{background:var(--blue)}.sre-player.on .mk,.sre-court-player.on .mk{color:var(--fg);background:#fff}.sre-player-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.sre-developments{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.sre-tile{border:1px solid var(--border);background:var(--surface);min-width:0;min-height:88px;color:var(--fg);font:inherit;cursor:pointer;border-radius:10px;align-content:center;justify-items:center;gap:6px;padding:8px 2px;font-size:12px;font-weight:600;line-height:1.2;display:grid}.sre-tile.on{border-color:var(--action);background:var(--action);color:#fff}.sre-development-icon{fill:none;stroke:currentColor;width:28px;height:40px}.sre-development-icon rect,.sre-development-icon .net{stroke-width:1.5px;opacity:.45}.sre-development-icon .path{stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.sre-development-icon .broken{stroke-dasharray:4 3}.sre-development-icon circle{fill:currentColor;stroke:none}.sre-court{border:1px solid var(--border);background:var(--surface);border-radius:12px;display:grid;overflow:hidden}.sre-court-half{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:10px;min-height:112px;padding:8px 10px;display:grid}.sre-court-half.far{border-bottom:2px solid var(--control-border)}.sre-court-half>:first-child{align-self:start}.sre-court-half>:last-child{align-self:end}.sre-court-half>:only-child{align-self:center}.sre-court-player{border:1px solid var(--control-border);background:var(--bg);min-width:0;min-height:52px;color:var(--fg);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:6px 10px;font-size:17px;font-weight:700;display:flex}.sre-court-player .mk{flex:none;width:24px;height:24px;font-size:13px}.sre-court-player.red.on{border-color:var(--red);background:var(--red);color:#fff}.sre-court-player.blue.on{border-color:var(--blue);background:var(--blue);color:#fff}.sre-shot-groups{gap:6px;display:grid}.sre-shot-group{gap:4px;display:grid}.sre-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.sre-chip{background:var(--surface-2);min-width:0;min-height:44px;color:var(--fg);font:inherit;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border:0;border-radius:8px;padding:4px;font-size:13px;font-weight:600;overflow:hidden}.sre-chip.on{background:var(--action);color:#fff}.sre-sides{margin-top:4px}@media (hover:hover){.sre-seg-item:not(.on):not(:disabled):hover,.sre-chip:not(.on):not(:disabled):hover{background:color-mix(in srgb, var(--fg) 8%, transparent)}.sre-tile:not(.on):not(:disabled):hover,.sre-court-player:not(.on):not(:disabled):hover{background:var(--surface-2)}}.sre-group :disabled{cursor:default}@media (width>=768px){.sre-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:28px}.sre-developments{grid-template-columns:repeat(3,minmax(0,1fr))}.sre-chips{grid-template-columns:repeat(7,minmax(0,1fr))}.sre-shot-group{grid-template-columns:84px minmax(0,1fr);align-items:center;column-gap:8px}.sre-court-half{min-height:104px}}@media (width>=521px) and (height<=600px){.sre-layout{grid-column:1/-1}}@media (width>=768px){.sre-layout{grid-template-columns:minmax(0,4fr) minmax(0,8fr);column-gap:24px}.sre-group{gap:8px}.sre-field+.sre-field{margin-top:2px}.sre-court-half{min-height:74px;padding:6px 10px}.sre-court-player{min-height:44px}.sre-shot-group{grid-template-columns:76px minmax(0,1fr)}.sre-shot-group-label{font-size:11px}.sre-shot-group.serve .sre-chip{grid-column:span 2}.sre-chip{padding-inline:2px;font-size:13px}.sre-tile{min-height:80px}}.speed-entry-position{white-space:nowrap;margin-left:auto;font-size:14px;font-weight:700}.speed-record-entry .appbar{gap:8px}.sre-shot-group.serve .sre-chip{grid-column:span 2}@media (width>=768px) and (width<=999px){.sre-layout{grid-template-columns:minmax(0,1fr)}.sre-developments{grid-template-columns:repeat(5,minmax(0,1fr))}.sre-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px}}@media (width>=1000px){.sre-court-half{min-height:68px}}@media (width<=520px){.speed-entry-position{font-size:12px}}@media (width>=768px) and (width<=999px){.sre-finish.sre-column{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.speed-record-entry .appbar{flex-wrap:wrap;row-gap:2px}.speed-entry-position{flex-basis:100%;order:5;margin-left:40px}}.sre-court-half,.sre-court-half.far{align-items:stretch;min-height:0;padding:10px}.sre-court-half>:first-child,.sre-court-half>:last-child,.sre-court-half>:only-child{align-self:stretch}.sre-court-player{min-height:52px}@media (width>=768px){.sre-shot-group{grid-template-columns:84px minmax(0,1fr)}.sre-shot-group-label{white-space:nowrap}}.sre-layout,.sre-column{gap:12px}.sre-zone{border:1px solid var(--control-border);background:var(--surface);border-radius:12px;padding:12px}.sre-zone-court{border-color:var(--control-border)}.sre-zone-finish{gap:10px;display:grid}.sre-zone .sre-seg{background:var(--surface-2)}.sre-zone .sre-tile{background:var(--bg)}.sre-finish{gap:12px}@media (width>=768px){.sre-zone{padding:10px 12px}.sre-zone-finish{gap:8px}}@media (width>=1000px){.sre-shot-group{grid-template-columns:72px minmax(0,1fr);column-gap:6px}.sre-shot-group-label{font-size:10px}.sre-chip{text-overflow:clip;padding-inline:2px;font-size:12px}}@media (width<=520px){.sre-tile{letter-spacing:-.02em;font-size:10px}}.sre-court-half.red{border-bottom:2px solid var(--control-border)}@media (width>=768px) and (width<=999px){.sre-developments{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=520px){.sre-tile{letter-spacing:-.04em;padding-inline:0}}.btn-reset-point{min-width:44px;min-height:44px;padding:8px}.sre-zone .sre-tile.on{border-color:var(--action);background:var(--action);color:#fff}.sre-group-title{height:22px;line-height:22px}.speed-entry-points{display:none}.speed-sheet{border-top:0}.speed-sheet-cells{flex:1;min-width:0}.speed-sheet-cell{flex:1 0 36px;width:auto;max-width:64px}.sre-group:disabled :is(.sre-seg-item,.sre-chip,.sre-tile,.sre-court-player).on{border-color:var(--border);color:var(--fg);background:0 0}.sre-group:disabled .sre-court-player.red.on .mk{background:var(--red);color:#fff}.sre-group:disabled .sre-court-player.blue.on .mk{background:var(--blue);color:#fff}@media (width<=520px){.speed-recorder .speed-sheet-row{grid-template-columns:22px minmax(0,1fr) 40px;gap:6px}.speed-sheet-cell{flex-basis:34px;height:46px}.speed-record-entry .match-header{margin-bottom:4px}.speed-record-entry .appbar{flex-wrap:nowrap;min-height:48px;padding-block:2px}.speed-record-entry .speed-entry-scoreboard{display:none}.speed-entry-position{flex:auto;order:0;margin-left:4px;font-size:14px}.speed-entry-points{font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;font-size:20px;font-weight:800;display:inline-flex}.speed-entry-points .red{color:var(--red)}.speed-entry-points .blue{color:var(--blue)}.sre-zone{padding:10px}.sre-developments{gap:4px}.sre-tile{letter-spacing:-.06em;min-height:80px}.speed-record-entry .appbar{gap:4px}.speed-entry-position{text-overflow:ellipsis;min-width:0;overflow:hidden}}@media (width<=360px){.speed-entry-points{gap:4px;font-size:17px}.speed-entry-position{font-size:12px}.speed-record-entry .appbar>.btn-ghost:first-child,.btn-reset-point{min-width:40px;padding-inline:4px}.sre-developments{grid-template-columns:repeat(3,minmax(0,1fr))}.sre-tile{letter-spacing:0;font-size:11px}}@media (width<=520px){.speed-sheet-cells{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid;overflow:visible}.speed-sheet-cell{width:auto;max-width:none}}
