.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--bg)}.auth-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;gap:0;box-shadow:var(--shadow-md)}.auth-logo{width:48px;height:48px;border-radius:14px;background:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;box-shadow:0 4px 16px #22c55e4d}.auth-logo-mark{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.03em}.auth-title{font-size:1.2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .3rem;color:var(--text);text-align:center}.auth-subtitle{font-size:.875rem;color:var(--text-muted);margin:0 0 1.75rem;text-align:center}.auth-form{width:100%;display:flex;flex-direction:column;gap:1rem}.auth-label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.auth-input{padding:.65rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box}.auth-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.auth-input::placeholder{color:var(--text-faint)}.auth-account-type{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.auth-account-type-btn{display:flex;flex-direction:column;gap:.2rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s,box-shadow .15s,background .15s}.auth-account-type-btn:hover{border-color:var(--accent)}.auth-account-type-btn.is-active{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 1px var(--accent)}.auth-account-type-title{font-size:.9rem;font-weight:700;color:var(--text)}.auth-account-type-desc{font-size:.72rem;color:var(--text-muted);line-height:1.3}.auth-name-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.auth-error{font-size:.82rem;color:var(--danger);background:var(--danger-dim);border:1px solid color-mix(in srgb,var(--danger) 25%,transparent);border-radius:var(--radius-sm);padding:.5rem .75rem;margin:0}.auth-submit{width:100%;padding:.7rem 1rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,opacity .15s;margin-top:.25rem}.auth-submit:hover:not(:disabled){background:var(--accent-hover)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin-top:1.25rem;background:none;border:none;color:var(--text-muted);font-size:.85rem;cursor:pointer;font-family:inherit;text-decoration:underline;text-underline-offset:3px;transition:color .12s}.auth-switch:hover{color:var(--text)}.dashboard{max-width:1120px;margin:0 auto;padding:2rem 1.5rem 3rem}.dashboard-main{display:flex;flex-direction:column;gap:1.75rem}.dashboard-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.dashboard-title{font-size:1.45rem;font-weight:700;margin:0 0 .25rem;letter-spacing:-.025em;line-height:1.2}.dashboard-title-actions{display:flex;gap:.625rem;align-items:center;flex-wrap:wrap}.dashboard-admin-actions{margin-top:.75rem}.dashboard-scrape-msg{margin-top:.75rem;margin-bottom:0;white-space:pre-wrap;font-size:.85rem}.dashboard-scrape-msg--error{color:var(--danger)}.topbar-user-email{font-size:.85rem;color:var(--text-muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem 1.75rem}.card h2{font-size:1rem;font-weight:650;margin:0 0 1.25rem;color:var(--text);letter-spacing:-.01em}.tournament-form{display:flex;flex-direction:column;gap:1.1rem}.tournament-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:500;color:var(--text-muted);letter-spacing:.01em}.tournament-form .label-title{display:inline-flex;align-items:center;gap:.2rem}.tournament-form label .required{color:var(--accent);line-height:1}.tournament-form input,.tournament-form select,.tournament-form textarea{padding:.6rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:inherit;font-size:.9rem;transition:border-color .12s,box-shadow .12s}.tournament-form input:focus,.tournament-form select:focus,.tournament-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tournament-form textarea{resize:vertical;min-height:64px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.categories-fieldset{grid-column:1 / -1;border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;margin:0}.categories-fieldset legend{font-size:.875rem;color:var(--text-muted);padding:0 .5rem}.categories-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.category-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .6rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);font-size:.85rem;cursor:pointer;color:var(--text)}.category-chip:hover{border-color:var(--accent)}.category-chip input:checked+span{font-weight:600}.category-chip input[type=color]{width:1.6rem;height:1.1rem;padding:0;border:1px solid var(--border);border-radius:4px;background:transparent}.category-chip input[type=color]:disabled{opacity:.5}.category-chip:has(input:checked){border-color:var(--accent);background:#22c55e1a}.match-setup-section{display:flex;flex-direction:column;gap:1rem}.match-setup-heading{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--text)}.config-exceptions-section{margin-top:.5rem;padding:1.1rem 1.25rem 1.25rem;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--surface-raised));box-shadow:inset 3px 0 0 var(--accent)}.config-exceptions-section .match-setup-heading{color:var(--accent)}.config-exceptions-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:.75rem;margin-bottom:.25rem;border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.config-exceptions-hint{margin:.25rem 0 0;color:color-mix(in srgb,var(--text) 78%,var(--accent))}.config-exceptions-list{display:flex;flex-direction:column;gap:1rem}.config-exception-card{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:var(--radius-sm);margin:0;background:var(--surface);box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 8%,transparent);overflow:hidden}.config-exception-card--expanded{padding-bottom:1rem}.config-exception-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem}.config-exception-card--expanded .config-exception-card-header{border-bottom:1px solid color-mix(in srgb,var(--accent) 14%,var(--border));margin-bottom:.25rem}.config-exception-toggle{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;padding:.15rem .35rem;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm)}.config-exception-toggle:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.config-exception-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.config-exception-chevron{flex-shrink:0;color:var(--accent);transition:transform .15s ease}.config-exception-chevron--open{transform:rotate(180deg)}.config-exception-title{font-size:.875rem;font-weight:600;color:var(--accent)}.config-exception-summary{font-size:.8rem;margin-left:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-exception-body{display:flex;flex-direction:column;gap:1rem;padding:.75rem 1.25rem 0}.config-exception-legend{font-size:.8rem;font-weight:600;color:var(--accent);padding:0;letter-spacing:.02em;text-transform:uppercase}.match-setup-fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem 1.25rem;margin:0;background:var(--surface-raised)}.match-setup-fieldset legend{font-size:.8rem;font-weight:600;color:var(--text-muted);padding:0 .4rem;letter-spacing:.02em;text-transform:uppercase}.match-setup-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-top:.9rem;flex-wrap:wrap;padding:.5rem .1rem;border-bottom:1px dashed var(--border)}.match-setup-row:first-of-type{margin-top:.4rem}.match-setup-row:last-of-type{border-bottom:none;padding-bottom:.15rem}.match-setup-copy{display:flex;flex-direction:column;gap:.2rem;min-width:min(260px,100%)}.match-setup-label{font-size:.9rem;color:var(--text);font-weight:500}.match-setup-hint{display:block;font-size:.75rem;color:var(--text-muted);opacity:.9;margin-top:.15rem}.match-setup-fixed{font-size:.875rem;color:var(--text-muted);padding:.45rem .7rem;border:1px solid var(--border);border-radius:8px;background:#ffffff08}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg)}.segmented button{padding:.45rem .85rem;font-size:.82rem;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:background .12s,color .12s}.segmented button:hover{color:var(--text);background:var(--surface-raised)}.segmented button.segmented-active{background:var(--accent);color:#fff;font-weight:600}.segmented-three button{padding:.4rem .6rem;font-size:.78rem}.match-setup-control{align-self:center}.match-setup-games-per-set .match-setup-games-per-set-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;align-self:center}.match-setup-games-custom{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--text-muted)}.match-setup-games-custom-label{white-space:nowrap}.match-setup-number-input{width:3.25rem;padding:.35rem .4rem;font-size:.85rem;font-family:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}.match-setup-toggle{display:flex;align-items:flex-start}.switch{position:relative;width:48px;height:28px;display:inline-flex;align-items:center;cursor:pointer;flex-shrink:0}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-slider{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#94a3b840;border:1px solid var(--border);transition:all .2s ease}.switch-slider:before{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.switch input:checked+.switch-slider{background:var(--accent);border-color:var(--accent)}.switch input:checked+.switch-slider:before{transform:translate(20px)}.switch input:focus-visible+.switch-slider{box-shadow:0 0 0 2px #22c55e40}@media (max-width: 820px){.match-setup-row{gap:.7rem;padding:.45rem 0}.match-setup-control{align-self:flex-start}.switch{margin-top:.1rem}}.match-setup-toggle input[type=checkbox]{width:auto;margin:0;accent-color:var(--accent)}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.form-error{color:var(--danger);font-size:.82rem;margin:0;padding:.5rem .75rem;background:var(--danger-dim);border:1px solid color-mix(in srgb,var(--danger) 25%,transparent);border-radius:7px}.form-warning{color:var(--warning);font-size:.82rem;margin:0;padding:.5rem .75rem;background:var(--warning-dim);border:1px solid color-mix(in srgb,var(--warning) 25%,transparent);border-radius:7px}.form-success{color:var(--success);font-size:.82rem;margin:0;padding:.5rem .75rem;background:var(--success-dim);border:1px solid color-mix(in srgb,var(--success) 25%,transparent);border-radius:7px}.btn-primary{align-self:flex-start;padding:.6rem 1.2rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:.875rem;cursor:pointer;font-family:inherit;transition:background .12s,opacity .12s;letter-spacing:-.01em}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:.6rem 1.2rem;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);font-weight:500;font-size:.875rem;cursor:pointer;font-family:inherit;transition:background .12s,color .12s,border-color .12s}.btn-secondary:hover:not(:disabled){background:var(--surface-raised);color:var(--text);border-color:var(--text-faint)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-edit{padding:.3rem .7rem;background:var(--accent-dim);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .12s}.btn-edit:hover{background:color-mix(in srgb,var(--accent) 20%,transparent)}.btn-danger{padding:.3rem .7rem;background:var(--danger-dim);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .12s}.btn-danger:hover{background:color-mix(in srgb,var(--danger) 18%,transparent)}.btn-danger:disabled{opacity:.55;cursor:not-allowed}.btn-compact{padding:.3rem .65rem;font-size:.8rem}.btn-draws{padding:.35rem .7rem;font-size:.8rem;font-weight:500;color:var(--text-muted);text-decoration:none;border:1px solid var(--border);border-radius:6px;background:transparent;font-family:inherit;transition:background .12s,color .12s}.btn-draws:hover{background:var(--surface-raised);color:var(--text)}.icon-action{width:32px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text-muted);text-decoration:none;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.icon-action:hover{background:var(--surface-raised);color:var(--text);border-color:var(--text-faint)}.icon-action--edit{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--accent-dim)}.icon-action--edit:hover{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent)}.icon-img{width:38px;height:18px;object-fit:contain;filter:brightness(0) invert(1);opacity:.85}.podium-menu{position:relative;display:inline-flex}.podium-menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:20;min-width:11.5rem;padding:.25rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);box-shadow:0 8px 24px #0000002e;display:flex;flex-direction:column;gap:.15rem}.podium-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text);text-align:left;font:inherit;font-size:.82rem;padding:.45rem .6rem;border-radius:6px;cursor:pointer;white-space:nowrap}.podium-menu-item:hover:not(:disabled){background:color-mix(in srgb,var(--text) 8%,transparent)}.podium-menu-item:disabled{opacity:.55;cursor:wait}.table-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.card-actions{display:flex;justify-content:flex-end;margin-top:.5rem}.color-chip{display:inline-flex;gap:.5rem;align-items:center}.color-field{display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap}.color-dot{width:14px;height:14px;border-radius:999px;border:1px solid var(--border);display:inline-block}.category-add-action{display:flex;align-items:flex-end}.category-restrictions-wrap{margin-top:.75rem}.branding-preview-img{max-height:44px;width:auto;object-fit:contain;border:1px solid var(--border);border-radius:6px;background:var(--bg);padding:.2rem}.sponsor-preview-img{max-height:40px;width:auto;object-fit:contain;border:1px solid var(--border);border-radius:6px;background:var(--bg);padding:.2rem}.branding-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.branding-item{border:1px solid var(--border);border-radius:10px;padding:.9rem;background:#ffffff05}.branding-item--toggle{display:flex;align-items:stretch}.branding-item .interface-public-ad-toggle{width:100%}.branding-preview-wrap{margin-top:.6rem}.sponsor-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.sponsor-list-hint{margin:.5rem 0 0;font-size:.85rem}.sponsor-item{border:1px solid var(--border);border-radius:10px;padding:.75rem;background:#ffffff05;display:flex;align-items:center;gap:.6rem;cursor:grab;transition:border-color .15s ease,background .15s ease,opacity .15s ease}.sponsor-item:active{cursor:grabbing}.sponsor-item--dragging{opacity:.45}.sponsor-item--drop-target{border-color:var(--accent, #3b82f6);background:#3b82f614}.sponsor-drag-handle{display:inline-flex;align-items:center;color:var(--muted, #888);flex-shrink:0;touch-action:none}.sponsor-drag-grip{display:inline-flex;line-height:0}.sponsor-item-name{font-weight:600;flex:1;min-width:0}.file-upload{margin-top:.35rem;display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap}.file-upload-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-upload-btn{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 .85rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.85rem;cursor:pointer}.file-upload:hover .file-upload-btn{border-color:var(--text-muted)}.file-upload:focus-within .file-upload-btn{border-color:var(--accent);box-shadow:0 0 0 2px #22c55e33}.file-upload-name{font-size:.8rem;color:var(--text-muted);max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.datetime-field{position:relative}.datetime-field-icon{position:absolute;left:.6rem;top:50%;transform:translateY(-50%);pointer-events:none;font-size:.92rem;opacity:.9}.datetime-field input[type=datetime-local],.datetime-field input[type=time]{padding-left:2rem}.datetime-field input[type=datetime-local]::-webkit-calendar-picker-indicator,.datetime-field input[type=time]::-webkit-calendar-picker-indicator{opacity:.95;filter:invert(.82);cursor:pointer}[data-theme=light] .datetime-field input[type=datetime-local]::-webkit-calendar-picker-indicator,[data-theme=light] .datetime-field input[type=time]::-webkit-calendar-picker-indicator{filter:none}.number-input{text-align:right;font-variant-numeric:tabular-nums}.number-input--compact{max-width:8rem}.number-input--table{min-width:7rem}.number-input::-webkit-outer-spin-button,.number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.number-stepper{display:inline-flex;align-items:center;align-self:flex-start;width:fit-content;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg)}.number-stepper .number-input{border:none!important;border-radius:0!important;min-height:36px}.number-stepper .number-input:focus{box-shadow:none!important}.number-stepper:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #22c55e33}.number-stepper-btn{width:32px;height:36px;border:none;border-right:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;font-size:1rem;font-weight:700;line-height:1;font-family:inherit}.number-stepper-btn:last-child{border-right:none;border-left:1px solid var(--border)}.number-stepper-btn:hover:not(:disabled){background:#ffffff0d;color:var(--text)}.number-stepper-btn:disabled{opacity:.45;cursor:not-allowed}.number-stepper--compact .number-input{max-width:5rem}.number-stepper--table .number-input{min-width:6rem}.icon-action{width:34px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);text-decoration:none}.icon-img{width:40px;height:20px;object-fit:contain;filter:brightness(0) invert(1);opacity:.92}[data-theme=light] .icon-img{filter:none;opacity:.9}.icon-img--podium{width:20px;height:20px;filter:none;opacity:.95}.icon-action--ranking{color:#a16207;border-color:color-mix(in srgb,#a16207 35%,var(--border));background:color-mix(in srgb,#a16207 10%,transparent)}.icon-action--ranking:hover:not(:disabled){color:#854d0e;background:color-mix(in srgb,#a16207 16%,transparent);border-color:color-mix(in srgb,#a16207 55%,var(--border))}.icon-action:hover{background:#ffffff0d;color:var(--text);border-color:var(--text-muted)}.icon-action--edit{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));color:var(--accent)}.icon-action--edit:hover{background:#22c55e1f;border-color:var(--accent)}.icon-action--sheet-view{color:#217346;border-color:color-mix(in srgb,#217346 35%,var(--border));background:color-mix(in srgb,#217346 10%,transparent)}.icon-action--sheet-view:hover:not(:disabled){color:#185c37;background:color-mix(in srgb,#217346 16%,transparent);border-color:color-mix(in srgb,#217346 55%,var(--border))}.icon-action--sheet-generate{color:#b45309;border-color:color-mix(in srgb,#b45309 35%,var(--border));background:color-mix(in srgb,#b45309 10%,transparent)}.icon-action--sheet-generate:hover:not(:disabled){color:#92400e;background:color-mix(in srgb,#b45309 16%,transparent);border-color:color-mix(in srgb,#b45309 55%,var(--border))}.icon-action:disabled{opacity:.4;cursor:not-allowed}.dashboard-sheet-category-list{display:flex;flex-wrap:wrap;gap:.5rem}.dashboard-sheet-category-btn{min-width:4.5rem}.icon{display:block}.btn-draws{padding:.4rem .75rem;font-size:.8rem;font-weight:500;color:var(--text-muted);text-decoration:none;border:1px solid var(--border);border-radius:6px;background:transparent;font-family:inherit}.btn-draws:hover{background:#ffffff0d;color:var(--text);border-color:var(--text-muted)}.btn-interface{display:inline-flex;align-items:center;gap:.3rem}.btn-secondary{padding:.65rem 1.25rem;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:8px;font-weight:500;font-size:.9rem;cursor:pointer;font-family:inherit}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:0;max-width:560px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.1rem;font-weight:600}.modal-close{background:none;border:none;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem}.modal .tournament-form{padding:1.5rem 1.75rem}.modal-actions{display:flex;gap:.75rem;margin-top:.5rem}.table-wrap{overflow-x:auto}.tournaments-table{width:100%;border-collapse:collapse;font-size:.875rem}.tournaments-table th{text-align:left;padding:.55rem .85rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface);white-space:nowrap}.tournaments-table td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.tournaments-table tbody tr:last-child td{border-bottom:none}.tournaments-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 3%,var(--bg))}.tournament-name-cell{display:flex;align-items:center;gap:.65rem;min-width:0}.tournament-logo-avatar{width:2rem;height:2rem;border-radius:8px;object-fit:cover;flex-shrink:0;border:1px solid var(--border);background:var(--surface-raised)}.tournament-logo-avatar--placeholder{display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;background:var(--surface-raised)}.tournament-name-link,.tournament-name-text{color:var(--text);text-decoration:none;font-weight:600;font-size:.875rem;min-width:0;transition:color .12s}.tournament-name-link:hover{color:var(--accent)}.badge{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.badge-upcoming{background:#3b82f624;color:#60a5fa;border:1px solid rgba(59,130,246,.25)}.badge-ongoing{background:var(--accent-dim);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.badge-finished{background:#a1a1aa1f;color:var(--text-muted);border:1px solid var(--border)}.badge-registration-open{background:#22c55e24;color:#22c55e;border:1px solid rgba(34,197,94,.25)}.badge-registration-closed{background:#ef444424;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.muted{color:var(--text-muted);font-size:.875rem;margin:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:0;max-width:560px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-md)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1rem;font-weight:650;letter-spacing:-.01em}.modal-close{background:none;border:none;color:var(--text-muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:.2rem;border-radius:6px;transition:color .12s,background .12s}.modal-close:hover{color:var(--text);background:var(--surface-raised)}.modal .tournament-form{padding:1.25rem 1.5rem}.modal-actions{display:flex;gap:.625rem;margin-top:.5rem}.roles-create-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.5rem}.roles-create-row input[type=text]{flex:1;min-width:200px;padding:.45rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-family:inherit}.roles-list{display:flex;flex-direction:column;gap:1rem}.roles-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem 1.1rem;background:var(--surface-raised);transition:border-color .12s}.roles-card:hover{border-color:var(--text-faint)}.roles-card-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.65rem}.roles-name-input{flex:1;min-width:140px;padding:.35rem .5rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-family:inherit;font-weight:600}.roles-id{font-size:.75rem}.roles-builtin-badge{font-size:.72rem;padding:.15rem .45rem;border-radius:4px;background:#3b82f626;color:#93c5fd}.roles-delete{margin-left:auto}.roles-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.35rem .75rem}.roles-perm-item{display:flex;align-items:flex-start;gap:.4rem;font-size:.8rem;color:var(--text-muted);cursor:pointer}.roles-perm-item input{margin-top:.15rem}.users-admin-table .users-role-select{min-width:160px;max-width:100%;padding:.3rem .45rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:inherit;font-size:.82rem}.users-role-hint{font-size:.72rem;margin-top:.2rem}.users-tokens-input{width:4.5rem;padding:.3rem .35rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:inherit}.users-admin-checkbox{display:flex;align-items:center;gap:.35rem;font-size:.82rem;cursor:pointer}.users-actions-cell{display:flex;flex-wrap:nowrap;align-items:center;gap:.4rem;white-space:nowrap}.page-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3.5rem 2rem;text-align:center}.page-empty-icon{font-size:2.25rem;opacity:.3;line-height:1}.page-empty-text{font-size:.9rem;color:var(--text-muted);margin:0;max-width:280px;line-height:1.5}.profile-page{max-width:1040px;margin:0 auto;padding:2rem 1.5rem 3rem}.profile-header{margin-bottom:1rem}.profile-header h1{font-size:1.45rem;font-weight:700;margin:0;letter-spacing:-.025em}.profile-header p{margin:.3rem 0 0;color:var(--text-muted);font-size:.9rem}.profile-hero{padding:1.25rem 1.5rem;margin-bottom:1.25rem;border-left:3px solid var(--accent);background:linear-gradient(90deg,rgba(34,197,94,.06) 0%,transparent 60%);border-radius:var(--radius);border-top:1px solid var(--border);border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.profile-hero-left{display:flex;align-items:center;gap:1rem}.profile-hero-meta{display:flex;flex-direction:column;gap:.2rem;min-width:0}.profile-hero-name{font-weight:650;letter-spacing:-.01em;font-size:1.05rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-hero-email{color:var(--text-muted);font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-shell{display:grid;grid-template-columns:200px 1fr;gap:1.25rem;align-items:start}.profile-sidebar{position:sticky;top:calc(60px + 1.25rem)}.profile-nav{display:flex;flex-direction:column;gap:.2rem}.profile-nav-item{display:block;padding:.55rem .85rem;border-radius:999px;color:var(--text-muted);text-decoration:none;font-size:.875rem;font-weight:500;transition:background .12s ease,color .12s ease}.profile-nav-item:hover{background:var(--surface-raised);color:var(--text)}.profile-nav-item.active{background:var(--accent-dim);color:var(--accent);font-weight:600}.profile-content-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.profile-content-title{margin:0;font-size:1rem;font-weight:650;letter-spacing:-.01em}.profile-avatar-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-raised);border:2px solid var(--border);color:var(--text);font-weight:700;overflow:hidden;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-sm);flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar-xl{width:80px;height:80px;font-size:1.2rem;box-shadow:var(--shadow-md)}.avatar-md{width:44px;height:44px;font-size:.95rem}.avatar-lg{width:60px;height:60px;font-size:1.05rem}.file-pill{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font-size:.875rem;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s ease,border-color .12s ease}.file-pill:hover{border-color:var(--text-faint);background:color-mix(in srgb,var(--surface-raised) 80%,var(--border))}.file-pill input{display:none}.profile-actions{display:flex;justify-content:flex-end;margin-top:.5rem}@media (max-width: 860px){.profile-shell{grid-template-columns:1fr}.profile-sidebar{position:static}.profile-nav{flex-direction:row;flex-wrap:wrap;gap:.35rem}.profile-nav-item{width:auto}}.org-theme-section{display:flex;flex-direction:column;gap:.75rem}.org-theme-label{font-size:.875rem;font-weight:500;color:var(--text)}.org-custom-theme{display:flex;flex-direction:column;gap:1rem;padding:1rem 1.25rem;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm)}.org-custom-theme-row{display:flex;flex-direction:column;gap:.4rem}.org-custom-theme-field-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.org-accent-picker{display:flex;flex-direction:column;gap:.6rem}.org-accent-presets{display:flex;flex-wrap:wrap;gap:.45rem}.org-accent-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .1s,border-color .1s;outline:none}.org-accent-swatch:hover{transform:scale(1.15)}.org-accent-swatch--active{border-color:var(--text);transform:scale(1.15);box-shadow:0 0 0 2px var(--bg)}.org-accent-custom-row{display:flex;align-items:center;gap:.5rem}.org-accent-color-input{width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;padding:2px;flex-shrink:0}.org-accent-hex-input{width:96px;font-family:DM Mono,Fira Mono,monospace;font-size:.85rem;padding:.35rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text)}.org-accent-hex-input:focus{outline:none;border-color:var(--accent)}.org-accent-preview{display:inline-block;width:28px;height:28px;border-radius:50%;border:1px solid var(--border);flex-shrink:0}.draws-page{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.draws-header{margin-bottom:1.5rem}.draws-back{display:inline-block;font-size:.9rem;color:var(--accent);text-decoration:none;margin-bottom:.5rem}.draws-back:hover{text-decoration:underline}.draws-header-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.draws-header-row h1{font-size:1.5rem;font-weight:600;margin:0;letter-spacing:-.02em}.draws-manage-link{font-size:.9rem;font-weight:500;color:var(--accent);text-decoration:none}.draws-manage-link:hover{text-decoration:underline}.draws-page-tabs{display:flex;gap:0;margin-bottom:1.25rem;border-bottom:1px solid var(--border)}.draws-page-tab{padding:.65rem 1.25rem;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-muted);font-size:.95rem;font-weight:500;cursor:pointer;font-family:inherit;text-transform:capitalize}.draws-page-tab:hover{color:var(--text)}.draws-page-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tournament-dashboard{display:flex;flex-direction:column;gap:1.5rem}.tournament-dashboard-meta{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.tournament-dashboard-meta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,2fr));gap:.85rem 1.25rem;flex:1;min-width:0}.tournament-dashboard-meta-label{display:block;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.2rem}.tournament-dashboard-meta-value{font-size:.95rem;color:var(--text);font-weight:500}.tournament-dashboard-status{display:inline-block;padding:.15rem .5rem;border-radius:6px;font-size:.85rem;font-weight:500;background:#a1a1aa26;color:var(--text-muted)}.tournament-dashboard-status--ongoing{background:#22c55e26;color:var(--accent)}.tournament-dashboard-status--finished{background:#3b82f626;color:#60a5fa}.tournament-dashboard-status--cancelled,.tournament-dashboard-status--archived{background:#ef444426;color:#f87171}.tournament-dashboard-quick-actions{display:flex;flex-wrap:wrap;gap:.5rem}.tournament-dashboard-stats-section{display:flex;flex-direction:column;gap:.75rem}.tournament-dashboard-stats-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.tournament-dashboard-stats-header h2{margin:0;font-size:1rem;font-weight:600}.tournament-dashboard-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.tournament-dashboard-stat{padding:.9rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--bg);display:flex;flex-direction:column;gap:.25rem}.tournament-dashboard-stat--live{border-color:#22c55e59;background:#22c55e14}.tournament-dashboard-stat--warn{border-color:#ef444459;background:#ef444414}.tournament-dashboard-stat-value{font-size:1.5rem;font-weight:650;letter-spacing:-.03em;color:var(--text);line-height:1.1}.tournament-dashboard-stat-total{font-size:1rem;font-weight:500;color:var(--text-muted);letter-spacing:-.01em}.tournament-dashboard-stat-label{font-size:.8rem;color:var(--text-muted)}.tournament-dashboard-progress-header{display:flex;justify-content:space-between;font-size:.875rem;font-weight:500;margin-bottom:.45rem}.tournament-dashboard-progress-track{height:8px;border-radius:999px;background:#a1a1aa33;overflow:hidden}.tournament-dashboard-progress-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .25s ease}.tournament-dashboard-progress-caption{margin:.45rem 0 0;font-size:.8rem}.tournament-dashboard-panel{border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem;background:var(--bg);min-width:0}.tournament-dashboard-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.tournament-dashboard-panel-header h2{margin:0;font-size:1rem;font-weight:600}.tournament-dashboard-live-pill{font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;background:#22c55e2e;color:var(--accent)}.tournament-dashboard-today-stats{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;font-size:.875rem;color:var(--text-muted);margin-bottom:.75rem}.tournament-dashboard-today-stats strong{color:var(--text)}.tournament-dashboard-match-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:row;gap:.4rem}.tournament-dashboard-match-row{width:100%;display:flex;align-items:flex-start;gap:.75rem;text-align:left;padding:.65rem .7rem;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer}.tournament-dashboard-match-row:hover:not(:disabled){border-color:var(--border);background:#a1a1aa14}.tournament-dashboard-match-row:disabled{cursor:default;opacity:.85}.tournament-dashboard-match-row--live{border-color:#22c55e33;background:#22c55e0d}.tournament-dashboard-match-time{flex-shrink:0;min-width:3.25rem;font-size:.85rem;font-weight:600;color:var(--text);padding-top:.1rem}.tournament-dashboard-match-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.tournament-dashboard-match-meta,.tournament-dashboard-match-context{font-size:.75rem;color:var(--text-muted)}.tournament-dashboard-match-players{font-size:.9rem;color:var(--text)}.tournament-dashboard-match-score{font-size:.8rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.tournament-dashboard-mini-progress{display:flex;align-items:center;gap:.5rem;min-width:110px}.tournament-dashboard-mini-progress-track{flex:1;max-width:80px;height:6px;border-radius:999px;background:#a1a1aa33;overflow:hidden}.tournament-dashboard-mini-progress-fill{height:100%;border-radius:999px;background:var(--accent)}.tournament-dashboard .badge{display:inline-block;flex-shrink:0;padding:.2rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500;text-transform:capitalize}.tournament-dashboard .badge-live{background:#22c55e33;color:var(--accent)}.tournament-dashboard-attention h2{margin:0 0 .5rem;font-size:1rem;font-weight:600}.tournament-dashboard-attention ul{margin:0;padding-left:1.1rem;color:var(--text-muted);font-size:.9rem}.tournament-dashboard-attention li+li{margin-top:.35rem}.tournament-dashboard-inline-link{border:none;background:none;padding:0;margin-left:.25rem;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.tournament-dashboard-inline-link:hover{opacity:.85}.draws-section.card{padding:1.5rem 1.75rem}.draws-category-label{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem;color:var(--text-muted);margin-bottom:1.25rem}.draws-category-label select{max-width:200px;padding:.6rem .75rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:.9rem}.draws-actions{margin-bottom:1rem}.draws-add-qualifier{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.draws-inline-label{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem;color:var(--text-muted)}.draws-inline-label select{padding:.5rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.9rem}.draws-inline-label input{width:4rem;padding:.5rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.9rem}.draws-inline-label--draw-name input{width:min(14rem,100%);min-width:14rem}.draw-name-edit-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem;margin-bottom:.75rem}.draws-inline-label--draw-color .cat-color-row{min-height:2.15rem}.cat-color-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.cat-color-swatch{width:22px;height:22px;border-radius:6px;border:1px solid var(--border);flex-shrink:0;display:inline-block}.cat-color-input{width:36px;height:28px;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--bg);cursor:pointer;flex-shrink:0}.cat-color-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.cat-color-input:disabled{cursor:not-allowed;opacity:.6}.cat-color-hex{font-size:.8rem;color:var(--text-muted);font-family:monospace;letter-spacing:.02em}.draws-inline-label input:focus,.draws-inline-label select:focus{outline:none;border-color:var(--accent)}.draws-list{display:flex;flex-direction:column;gap:1.5rem}.group-assignments{margin-bottom:1.25rem;padding:1rem 1.1rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius, 10px);background:#ffffff05}.group-assignments-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.group-assignments-header-text{flex:1;min-width:min(100%,14rem)}.group-assignments h3{margin:0 0 .35rem;font-size:1rem;font-weight:600;color:var(--text)}.group-assignments-lead{margin:0;font-size:.82rem;line-height:1.45;color:var(--text-muted);max-width:36rem}.group-assignments-summary{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;flex-shrink:0}.group-assignments-summary-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text);line-height:1}.group-assignments-summary-sep{margin:0 .1em;font-weight:500;opacity:.45}.group-assignments-summary-label{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.group-assignments-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:.75rem}.group-assignments-slot-card{display:flex;flex-direction:column;gap:.5rem;padding:.65rem .75rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--bg);transition:border-color .15s ease,box-shadow .15s ease}.group-assignments-slot-card--filled{border-color:color-mix(in srgb,var(--accent, #22c55e) 35%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent, #22c55e) 18%,transparent)}.group-assignments-slot-card-top{display:flex;align-items:center;gap:.45rem}.group-assignments-slot-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.65rem;padding:0 .35rem;border-radius:8px;font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);background:color-mix(in srgb,var(--text-muted) 22%,transparent)}.group-assignments-slot-card--filled .group-assignments-slot-badge{background:color-mix(in srgb,var(--accent, #22c55e) 28%,transparent);color:var(--text)}.group-assignments-slot-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.group-assignments-slot-field{display:flex;flex-direction:column;gap:0;margin:0}.group-assignments-slot-select{width:100%;margin:0;padding:.5rem .55rem;border:1px solid var(--border);border-radius:8px;background:var(--surface, var(--bg));color:var(--text);font-family:inherit;font-size:.85rem;line-height:1.3;cursor:pointer}.group-assignments-slot-select:focus{outline:none;border-color:var(--accent, #22c55e);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent, #22c55e) 25%,transparent)}.draw-card{display:flex;flex-direction:column;gap:.75rem}.draw-card .bracket-graph{width:100%}.draw-card-actions{display:flex;align-items:center;gap:.5rem}.draw-participant-filter-toggle{margin:0 0 .75rem;padding:.7rem .85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.draw-participant-filter-toggle__label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.85rem;color:var(--text)}.draw-participant-filter-toggle__label input{margin:0;cursor:pointer}.draw-participant-filter-toggle__hint{margin:.45rem 0 0;font-size:.8rem;color:var(--text-muted)}.draw-heads-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:0 0 .75rem;padding:.7rem .85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.draw-heads-bar-hint{margin:0;font-size:.8rem}.bracket-slot-wrap--head-locked{align-items:center}.draws-page .muted{color:var(--text-muted);font-size:.9rem;margin:0 0 1rem}.draws-page .form-warning,.form-error{margin:0 0 1rem}.draws-categories-strip-wrap{overflow-x:auto;margin:0 -.5rem 1.25rem;padding:0 .5rem;-webkit-overflow-scrolling:touch}.draws-categories-strip{display:flex;gap:.5rem;min-width:min-content;padding-bottom:2px}.draws-category-pill{flex-shrink:0;padding:.5rem 1rem;border:1px solid var(--border);border-radius:999px;background:var(--bg);color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap}.draws-category-pill:hover{color:var(--text);border-color:var(--text-muted)}.draws-category-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.draws-tabs-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.draws-tabs-toolbar .draws-tabs-wrap{flex:1;min-width:0;margin-bottom:0}.draws-view-sheet-pdf-btn{flex-shrink:0;align-self:flex-end;margin-bottom:.05rem}.draws-category-workbook-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:0 0 .85rem;padding:.5rem .65rem;border-radius:8px;border:1px solid var(--border);background:#3b82f60f}.draws-category-workbook-label{font-size:.8rem;font-weight:600;color:var(--text);margin-right:auto}.draws-category-workbook-actions{display:flex;flex-wrap:wrap;gap:.35rem}.draws-category-workbook-btn{padding:.35rem .65rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:inherit;font-size:.75rem;font-weight:600;cursor:pointer}.draws-category-workbook-btn:hover:not(:disabled){border-color:#60a5fa;color:#60a5fa}.draws-category-workbook-btn:disabled{opacity:.55;cursor:not-allowed}.draws-category-workbook-meta{font-size:.68rem;width:100%}.draws-tabs-wrap{overflow-x:auto;margin:0 -.5rem 1rem;padding:0 .5rem;-webkit-overflow-scrolling:touch}.draws-tabs{display:flex;gap:0;min-width:min-content;border-bottom:1px solid var(--border)}.draws-tab-item{display:flex;align-items:stretch;flex-shrink:0;gap:.2rem;margin-right:.25rem}.draws-tab-item-exports{flex-direction:column;align-items:stretch;gap:0}.draws-tab-item-top{display:flex;align-items:stretch;gap:.2rem}.draws-tab-export-last-line{font-size:.65rem;color:var(--text-muted);padding:.15rem .25rem .35rem;max-width:14rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draws-tab-delete-btn{width:1.85rem;min-width:1.85rem;padding:0;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:.75rem;line-height:1}.draws-tab-export-btn{min-width:2.4rem;padding:0 .45rem;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:.68rem;font-weight:700;line-height:1}.draws-tab-export-btn:hover:not(:disabled){color:#60a5fa;background:#3b82f61f}.draws-tab-export-btn:disabled{opacity:.55;cursor:not-allowed}.draws-tab-delete-btn:hover:not(:disabled){color:#f87171;background:#ef444414}.draws-tab-delete-btn:disabled{opacity:.55;cursor:not-allowed}.draws-tab-delete-icon{display:block}.draws-tab-item:has(.draws-tab.active) .draws-tab-delete-btn{color:var(--accent)}.draws-tab-item:has(.draws-tab.active) .draws-tab-export-btn{color:var(--accent)}.draws-tab{flex-shrink:0;padding:.58rem .85rem;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap;max-width:14rem;overflow:hidden;text-overflow:ellipsis}.draws-tab:hover{color:var(--text)}.draws-tab.active{color:var(--accent);border-bottom-color:var(--accent)}@media (max-width: 720px){.draws-tab{max-width:10.5rem}}.draws-tab-add{color:var(--accent);margin-left:.5rem}.draws-tab-add:hover{color:var(--accent-hover, #22c55e)}.draws-empty{padding:1rem 0}.draw-content{padding-top:.5rem}.draws-add-inline{margin-bottom:1rem}.btn-secondary{padding:.5rem 1rem;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;font-family:inherit}.btn-secondary:hover{background:#ffffff0d;color:var(--text)}.matches-tab-content{padding:.5rem 0}.matches-date-tabs{display:flex;flex-wrap:nowrap;gap:.5rem;margin-bottom:.75rem;overflow-x:auto}.matches-date-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem;align-items:center}.oop-who-might-play-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.oop-who-might-play-toggle input{margin:0;accent-color:var(--accent, #2f6fed)}.oop-who-might-play-toggle:has(input:disabled){opacity:.65;cursor:not-allowed}.matches-date-tab-custom{margin-left:.15rem;color:var(--accent);font-weight:700}.day-time-slots-modal{max-width:28rem}.day-time-slots-subtitle{margin:.25rem 0 0;font-size:.85rem}.day-time-slots-body{padding:0 1.25rem .5rem}.day-time-slots-add-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.85rem}.day-time-slots-chip{cursor:pointer}.matches-view-switch{display:flex;gap:.4rem;margin-bottom:.9rem}.matches-view-switch-btn{padding:.35rem .75rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-muted);font-size:.8rem;cursor:pointer}.matches-view-switch-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.matches-grid-table td{vertical-align:top}.matches-grid-table thead th{background:#ffffff0f;color:var(--text);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--accent)}.matches-grid-table tbody td:first-child{background:#cb35350a;color:var(--text);font-weight:600;font-size:.8rem;white-space:nowrap;border-right:2px solid var(--accent)}.match-bracket-context-title{font-size:.72rem;font-weight:600;color:var(--text-muted);line-height:1.25;margin-bottom:.2rem}.matches-list-winner{font-weight:700}.matches-grid-context-title{font-size:.68rem;font-weight:600;color:var(--text-muted);line-height:1.2}.matches-slot-picker-context-title{font-size:.72rem;font-weight:600;color:var(--text-muted);line-height:1.25}.matches-grid-match{position:relative;width:100%;border:none;border-radius:6px;background:#ffffff08;color:var(--text);padding:.3rem .35rem .35rem;margin-bottom:.35rem;text-align:center;display:flex;flex-direction:column;gap:.2rem;font-size:.78rem;cursor:pointer}.matches-grid-score-row{position:relative;justify-content:center;padding-right:3.2rem}.matches-grid-score-label{display:inline-flex;align-items:center;justify-content:center}.matches-grid-live-pill{position:absolute;right:.3rem;bottom:.3rem;display:inline-flex;align-items:center;gap:.6rem;color:#ef4444;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.matches-grid-live-dot{width:.8rem;height:.8rem;border-radius:50%;background:#ef4444;box-shadow:0 0 0 1.5px #ef444433;flex-shrink:0;animation:matches-grid-live-pulse 1.2s ease-in-out infinite}.matches-grid-live-text{line-height:1;font-size:medium}.matches-grid-live-dot-draw{width:.5rem;height:.5rem}.matches-grid-live-text-draw{font-size:.7rem}@keyframes matches-grid-live-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 1.5px #ef444433;opacity:1}50%{transform:scale(1.2);box-shadow:0 0 0 .35rem #ef444429;opacity:.85}}.matches-grid-sections{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:4px;overflow:hidden}.matches-grid-section{padding:.28rem .35rem;border-top:1px solid var(--border);line-height:1.25;min-height:1.35rem;display:flex;align-items:center;justify-content:center;white-space:pre-line;text-align:center}.matches-grid-section:first-child{border-top:none}.matches-grid-section--cat{font-weight:600;background:#d9ead3}.matches-grid-section--score{font-size:.7rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em;min-height:1.25rem}.matches-grid-section--winner{font-weight:700}.conflict-dot{display:inline-block;width:8px;height:8px;min-width:8px;border-radius:50%;margin-left:.3rem;cursor:help;vertical-align:middle;box-shadow:0 0 0 1px #00000040}.availability-dot{display:inline-block;width:8px;height:8px;min-width:8px;border-radius:50%;margin-left:.3rem;cursor:help;vertical-align:middle;background:#ca8a04;box-shadow:0 0 0 1px #00000040}.participants-availability-cell{max-width:14rem;font-size:.85rem;vertical-align:middle}.participants-availability-cell--editable{cursor:pointer}.participants-availability-cell--editable:hover{text-decoration:underline;text-underline-offset:2px}.participants-availability-cell-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;white-space:normal;align-items:flex-start;gap:.25rem}.participants-availability-field{display:flex;flex-direction:column;gap:.35rem;width:100%;margin-top:.5rem}.participants-availability-textarea{resize:vertical;min-height:2.5rem;font-family:inherit}.participants-availability-summary{margin:0;font-size:.85rem}.availability-constraint-list{margin:.75rem 0 1rem;padding-left:1.25rem}.availability-constraint-raw{font-size:.85rem;margin-top:.15rem}.matches-grid-match--live{border-color:#ef4444}.matches-grid-match--complete{border-color:#22c55e}.matches-grid-match:last-child{margin-bottom:0}.matches-grid-match-wrap{position:relative;margin-bottom:.35rem}.matches-grid-match-wrap:last-child{margin-bottom:0}.matches-grid-match-wrap .matches-grid-match{margin-bottom:0;width:100%}.matches-grid-reset-btn{position:absolute;top:3px;right:3px;width:1.1rem;height:1.1rem;padding:0;border:none;border-radius:3px;background:#ef444426;color:#f87171;font-size:.6rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease}.matches-grid-match-wrap:hover .matches-grid-reset-btn{opacity:1}.matches-grid-reset-btn:hover{background:#ef444459;color:#fff}.matches-grid-match:disabled{opacity:.75;cursor:default}.matches-grid-slot-btn{margin-top:.35rem;width:100%}.matches-slot-picker-list{display:flex;flex-direction:column;gap:.45rem;max-height:min(60vh,520px);overflow-y:auto}.matches-slot-picker-modal{max-width:720px;width:min(720px,96vw)}.matches-slot-filter{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem;color:var(--text-muted);font-size:.82rem}.matches-slot-filter-label{font-weight:600;color:var(--text)}.matches-slot-filter select{min-width:180px;padding:.35rem .5rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text)}.slot-assign-undefined-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.slot-assign-undefined-label{font-size:.82rem;color:var(--text-muted);flex:1;min-width:0}button.slot-assign-undefined-switch{position:relative;width:44px;height:24px;flex-shrink:0;border-radius:12px;border:1px solid var(--border);background:var(--border);cursor:pointer;padding:0;transition:background .15s ease,border-color .15s ease}button.slot-assign-undefined-switch:hover:not(:disabled){border-color:var(--text-muted)}button.slot-assign-undefined-switch.is-on{background:var(--accent, #3b82f6);border-color:var(--accent, #3b82f6)}button.slot-assign-undefined-switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--bg, #fff);box-shadow:0 1px 2px #0003;transition:transform .15s ease}button.slot-assign-undefined-switch.is-on:after{transform:translate(20px)}button.slot-assign-undefined-switch:disabled{opacity:.55;cursor:not-allowed}.matches-slot-picker-item{border:1px solid var(--border);border-radius:8px;background:#ffffff08;color:var(--text);text-align:center;display:flex;flex-direction:column;gap:.2rem;padding:.55rem .6rem;cursor:pointer;font-family:inherit}.matches-slot-picker-item--with-availability{flex-direction:row;align-items:center;gap:.55rem;padding:.55rem .6rem}.matches-slot-picker-item-main{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:0;align-items:center;text-align:center}.matches-slot-picker-item--with-availability .matches-slot-picker-item-main{flex:1 1 auto}.matches-slot-picker-item-cat{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.matches-slot-picker-item-team{font-weight:600}.matches-slot-picker-item-vs{font-size:.75rem;color:var(--text-muted)}.matches-slot-picker-item-availability{flex:0 0 auto;width:11.5rem;max-width:40%;display:flex;flex-direction:column;gap:.25rem;justify-content:center;border-left:1px solid var(--border);padding-left:.55rem;text-align:left}.matches-slot-picker-availability-line{display:flex;align-items:flex-start;gap:.3rem;font-size:.68rem;line-height:1.3;color:var(--text-muted)}.matches-slot-picker-availability-line .availability-dot{margin-top:.25rem;flex-shrink:0;width:6px;height:6px}.matches-slot-picker-availability-name{display:block;font-size:.62rem;font-weight:600;color:var(--text);opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matches-slot-picker-availability-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 520px){.matches-slot-picker-item--with-availability{flex-direction:column;gap:.4rem}.matches-slot-picker-item-availability{width:100%;max-width:none;border-left:none;border-top:1px solid var(--border);padding-left:0;padding-top:.4rem}}.matches-slot-picker-item:hover:not(:disabled){border-color:var(--accent);background:#ffffff0f}.matches-slot-picker-item:disabled{opacity:.7;cursor:not-allowed}.matches-interface-wrap{display:flex;flex-direction:column;gap:.8rem}.matches-interface-controls{display:flex;flex-wrap:wrap;gap:.65rem}.matches-interface-controls label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--text-muted)}.matches-interface-controls input,.matches-interface-controls select{padding:.4rem .55rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text)}.matches-interface-canvas{display:grid;gap:.6rem}.matches-interface-canvas.layout-rows{grid-template-columns:1fr}.matches-interface-canvas.layout-columns{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.matches-interface-section{border:1px dashed var(--border);border-radius:8px;background:#ffffff05;color:var(--text);text-align:center;display:flex;flex-direction:column;gap:.2rem;padding:.6rem .55rem;cursor:pointer;min-height:110px;justify-content:center}.matches-interface-section:hover{border-color:var(--accent)}.matches-interface-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.public-scorecard{width:100%;display:flex;flex-direction:column;gap:.5rem}.public-scorecard-header{display:flex;justify-content:space-between;align-items:center;gap:.65rem;font-size:1.05rem}.public-scorecard-status{font-size:.88rem;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .5rem;border-radius:999px;border:1px solid var(--border)}.public-scorecard-status.status-live{border-color:#22c55e;color:#22c55e}.public-scorecard-status.status-scheduled{border-color:var(--text-muted);color:var(--text-muted)}.public-scorecard-status.status-complete{border-color:#60a5fa;color:#60a5fa}.public-scorecard-meta{display:flex;justify-content:space-between;align-items:center;gap:.7rem;font-size:.95rem;color:var(--text-muted)}.public-scorecard-grid{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,40px) 48px;gap:.35rem;align-items:center}.public-scorecard-team{text-align:left;font-size:1.12rem;font-weight:700;line-height:1.25;display:inline-flex;align-items:center;gap:.45rem;min-width:0}.public-scorecard-team-box{display:flex;flex-direction:column;align-items:stretch;gap:.28rem;padding:.28rem .45rem;border:1px solid var(--border);border-radius:8px;background:#ffffff08}.public-scorecard-team-player-row{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.public-scorecard-team-media{display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0}.public-scorecard-player-photo{width:20px;height:20px;border-radius:999px;object-fit:cover;border:1px solid var(--border);display:block}.public-scorecard-player-fallback{width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;letter-spacing:-.02em;color:var(--text);background:#ffffff14;border:1px solid var(--border);-webkit-user-select:none;user-select:none}.public-scorecard-player-flag{width:18px;height:12px;border-radius:2px;object-fit:cover;border:1px solid var(--border);display:block}.public-scorecard-set,.public-scorecard-total{text-align:center;font-size:1rem;border:1px solid var(--border);border-radius:4px;padding:.2rem .3rem;background:#ffffff08}.public-scorecard-total{font-weight:700;background:#6ab0ff1a}.public-interface-page{max-width:none;min-height:100vh;margin:0;padding:.6rem;display:grid;grid-template-rows:auto 1fr auto;gap:.45rem}.public-interface-header{margin:0;padding:.35rem .5rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.public-interface-header h1{margin:0;font-size:1.25rem;text-align:center;flex:1}.public-interface-header-side{width:88px;display:flex;justify-content:flex-start;align-items:center}.public-interface-header-right{justify-content:flex-end}.public-interface-header-logo{max-height:42px;max-width:88px;object-fit:contain}.public-interface-header-logo-placeholder{width:88px;height:42px}.public-interface-date label{display:flex;align-items:center;gap:.4rem;font-size:.95rem;color:var(--text-muted)}.public-interface-date select{padding:.45rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.95rem}.public-interface-main{margin:0;padding:.5rem;min-height:0;display:flex;flex-direction:column}.public-interface-page .matches-interface-canvas{flex:1;min-height:0;height:100%}.public-interface-page .matches-interface-section{min-height:0;height:100%}.public-interface-footer{display:flex;align-items:center;justify-content:center;font-size:.95rem;color:var(--text-muted);border-top:1px solid var(--border);padding-top:.4rem}.public-interface-sponsors{width:100%;display:flex;align-items:center;justify-content:space-evenly;flex-wrap:wrap;gap:.65rem 1rem}.public-interface-sponsor-item{display:inline-flex;align-items:center;gap:.45rem;max-width:240px}.public-interface-sponsor-logo{height:24px;width:auto;object-fit:contain;filter:drop-shadow(0 0 1px rgba(0,0,0,.35))}.public-interface-sponsor-name{font-size:.85rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-interface-page--ad{--ad-page-bg: #10141b;--ad-page-text: #f3f6fb;--ad-panel-bg: rgba(255, 255, 255, .06);--ad-panel-shadow: 0 1px 0 rgba(255, 255, 255, .04);--ad-tile-bg: rgba(255, 255, 255, .09);--ad-tile-shadow: 0 1px 2px rgba(0, 0, 0, .24);--ad-muted-text: rgba(227, 233, 242, .8);position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;min-height:0;max-width:none;margin:0;padding:clamp(.65rem,2.5vw,1.5rem);box-sizing:border-box;overflow:hidden;background:var(--ad-page-bg);color:var(--ad-page-text)}[data-theme=light] .public-interface-page--ad{--ad-page-bg: #f7f8fa;--ad-page-text: #141820;--ad-panel-bg: rgba(255, 255, 255, .72);--ad-panel-shadow: 0 1px 0 rgba(0, 0, 0, .04);--ad-tile-bg: rgba(255, 255, 255, .95);--ad-tile-shadow: 0 1px 2px rgba(0, 0, 0, .05);--ad-muted-text: #5c6570}.public-interface-ad-main{display:flex;flex-direction:column;align-items:stretch;flex:1;min-height:0;overflow:hidden;gap:clamp(.75rem,2.5vh,1.5rem);max-width:none;margin:0 auto;width:100%}.public-interface-ad-logo-row{display:flex;justify-content:center;align-items:center;flex-shrink:0;min-height:0;overflow:hidden}.public-interface-ad-logo{max-height:clamp(100px,22vh,200px);max-width:min(90vw,420px);width:auto;height:auto;object-fit:contain}.public-interface-ad-title-fallback{margin:0;font-size:clamp(1.35rem,4vw,2.25rem);font-weight:700;text-align:center;letter-spacing:-.02em;color:var(--ad-page-text)}.public-interface-ad-sponsors-wrap{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;background:var(--ad-panel-bg);border-radius:14px;padding:clamp(8px,1.2vmin,14px);box-sizing:border-box;box-shadow:var(--ad-panel-shadow)}.public-interface-ad-empty{text-align:center;font-size:1rem;margin:auto;padding:1rem;color:var(--ad-muted-text)}.public-interface-ad-sponsors{flex:1;min-height:0;width:100%;height:100%;display:grid;box-sizing:border-box;overflow:hidden;place-content:stretch;place-items:stretch}.public-interface-ad-sponsor-item{min-width:0;min-height:0;display:flex;box-sizing:border-box}.public-interface-ad-sponsor-tile{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;gap:clamp(4px,.35vmin,8px);padding:clamp(6px,1vmin,12px);border-radius:10px;background:var(--ad-tile-bg);box-shadow:var(--ad-tile-shadow);box-sizing:border-box}.public-interface-ad-sponsor-logo-wrap{flex:1;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center}.public-interface-ad-sponsor-logo-wrap--empty{opacity:0;pointer-events:none}.public-interface-ad-sponsor-logo{width:100%;height:100%;object-fit:contain;object-position:center}.public-interface-ad-sponsor-name{flex-shrink:0;text-align:center;line-height:1.2;color:var(--ad-muted-text);font-weight:500;font-size:clamp(9px,calc(var(--ad-tile-min, 80px) * .1),14px);max-width:100%;min-width:0;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.interface-public-ad-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;width:100%;flex-basis:100%;padding:.65rem .75rem;border:1px solid var(--border);border-radius:8px;background:#0000001f}.interface-public-ad-toggle-text{font-size:.9rem;font-weight:600;color:var(--text)}.interface-public-ad-toggle-hint{font-size:.78rem;color:var(--text-muted);line-height:1.35;max-width:42rem}.interface-public-ad-toggle input[type=checkbox]{width:2.75rem;height:1.45rem;margin-top:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;border:1px solid var(--border);background:var(--bg);cursor:pointer;position:relative;flex-shrink:0;transition:background .15s ease}.interface-public-ad-toggle input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:calc(50% - 4px);height:calc(100% - 4px);border-radius:50%;background:var(--text-muted);transition:transform .15s ease,background .15s ease}.interface-public-ad-toggle input[type=checkbox]:checked{background:#22c55e40;border-color:var(--accent)}.interface-public-ad-toggle input[type=checkbox]:checked:after{transform:translate(100%);background:var(--accent)}.matches-date-tab{padding:.35rem .75rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-muted);font-size:.8rem;cursor:pointer;white-space:nowrap}.matches-date-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.participants-tab-content{padding:.5rem 0}.participants-list-wrap{display:flex;flex-direction:column;gap:.75rem}.participants-heading{font-size:1rem;font-weight:600;margin:0;color:var(--text)}.participants-table-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;margin:.75rem 0 .5rem}.participants-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.35rem}.participants-list li{font-size:.9rem}.participants-list-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .6rem;background:#ffffff0a;border-radius:4px}.participants-drag-col{width:2rem;padding-left:.35rem!important;padding-right:.15rem!important;vertical-align:middle}.participants-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;color:var(--text-muted);cursor:grab;border-radius:4px}.participants-drag-grip{display:block;line-height:0}.participants-drag-grip--disabled{opacity:.22;cursor:not-allowed}.participants-row--draggable{cursor:grab}.participants-row--draggable:active{cursor:grabbing}.participants-row--dragging{opacity:.45}.participants-row--drop-target{outline:2px solid var(--accent, #22c55e);outline-offset:-2px}.draws-page-table .participants-row--draggable:hover .participants-drag-handle{color:var(--text);background:#ffffff0f}.participants-actions-cell{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.participants-edit-btn{flex-shrink:0;padding:.2rem .45rem;font-size:.75rem;border-radius:4px;border:1px solid var(--border);background:#ffffff0f;color:var(--text-muted);cursor:pointer;font-family:inherit}.participants-edit-btn:hover{color:var(--text);border-color:var(--accent)}.participants-delete-btn{flex-shrink:0;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:4px;background:#ffffff1a;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer}.participants-delete-btn:hover{background:#dc3c3c4d;color:var(--text)}.participants-add-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-start;margin-bottom:1rem}.participants-player-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr) 2.5rem minmax(0,1fr);gap:.5rem;align-items:center}.participants-input{padding:.5rem .65rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-size:.9rem;min-width:0}.participants-license-check-btn{width:2rem;height:2rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--accent);cursor:pointer;font-weight:700}.participants-license-check-btn:disabled{opacity:.5;cursor:not-allowed}.participants-file-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.participants-upload-hint{font-size:.8rem;line-height:1.35;margin:0 0 .75rem;max-width:42rem}.participants-upload-message{font-size:.9rem;margin:0 0 .75rem;color:var(--accent, #6ab0ff)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius, 10px);padding:0;max-width:fit-content;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #00000073}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem 1.35rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.15rem;font-weight:600}.modal-close{background:none;border:none;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.15rem;flex-shrink:0}.modal-close:hover{color:var(--text)}.modal .tournament-form{padding:1.25rem 1.35rem}.add-draw-form{display:flex;flex-direction:column;gap:1rem}.add-draw-type-row{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.15rem}.add-draw-type-label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.add-draw-type-select{font-weight:500}.add-draw-group-fieldset{margin:0;padding:1rem 1rem .85rem;border:1px solid var(--border);border-radius:var(--radius, 10px);background:#ffffff05;display:flex;flex-direction:column;gap:.9rem}.add-draw-group-fieldset legend{padding:0 .35rem;font-size:.82rem;font-weight:600;color:var(--text)}.add-draw-group-hint{margin:-.15rem 0 0;font-size:.82rem;line-height:1.45;color:var(--text-muted)}.add-draw-field-sublabel{display:block;margin-top:.35rem;font-size:.78rem;line-height:1.35;color:var(--text-muted);font-weight:400}.modal-actions{display:flex;gap:.65rem;justify-content:flex-end;flex-wrap:wrap;padding:1rem 1.35rem 1.25rem;border-top:1px solid var(--border);margin-top:0}.match-schedule-modal{max-width:640px}.match-schedule-header-actions{display:flex;align-items:flex-start;gap:.5rem;flex-shrink:0}.match-schedule-modal-error{margin:0 1.35rem;padding:.65rem .75rem;border-radius:8px;border:1px solid rgba(239,68,68,.45);background:#ef44441a;color:#fecaca;font-size:.85rem;line-height:1.4}.match-schedule-modal-info{margin:0 1.35rem .75rem;padding:.65rem .75rem;border-radius:8px;border:1px solid rgba(34,197,94,.4);background:#22c55e1a;color:#bbf7d0;font-size:.85rem;line-height:1.4}.match-schedule-bracket-advance{margin:0 1.35rem .75rem;padding:.75rem .85rem;border-radius:8px;border:1px solid var(--border, rgba(255, 255, 255, .12));background:#ffffff0a}.match-schedule-bracket-advance__text{margin:0 0 .65rem;font-size:.82rem;line-height:1.45;color:var(--text-muted, rgba(255, 255, 255, .7))}.match-schedule-score-error{margin:0 0 .55rem;padding:.55rem .65rem;border-radius:8px;border:1px solid rgba(239,68,68,.45);background:#ef44441a;color:#fecaca;font-size:.82rem;line-height:1.4}.match-schedule-field--error .match-schedule-label{color:#f87171}.match-schedule-field--error input[type=datetime-local],.match-schedule-field--error input[type=date],.match-schedule-field--error input[type=text]{border-color:#ef4444a6;box-shadow:0 0 0 1px #ef444433}.schedule-scores-grid--error{padding:.45rem;margin-left:-.45rem;margin-right:-.45rem;border-radius:8px;border:1px dashed rgba(239,68,68,.45);background:#ef44440f}.schedule-score-row--error .schedule-score-set-label{color:#f87171}.schedule-score-input--error{border-color:#ef4444bf!important;box-shadow:0 0 0 1px #ef444433}.match-schedule-teams{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .5rem;margin:.4rem 0 0;font-size:.88rem;color:var(--text-muted)}.match-schedule-team{font-weight:500;color:var(--text);max-width:11rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-schedule-vs{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;opacity:.75}.match-schedule-body{display:flex;flex-direction:column;gap:1.25rem}.match-schedule-section{display:flex;flex-direction:column;gap:.65rem}.match-schedule-section-title{margin:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.match-schedule-field{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem}.match-schedule-label{color:var(--text-muted);font-size:.8rem}.match-schedule-field input[type=datetime-local],.match-schedule-field input[type=date],.match-schedule-field input[type=text]{padding:.5rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.875rem;font-family:inherit}.match-schedule-field input:focus{outline:none;border-color:var(--accent)}.schedule-date-slot-wrap{display:flex;flex-direction:column;gap:.45rem}.schedule-slots-wrap,.court-tags-wrap{display:flex;flex-wrap:wrap;gap:.4rem}.court-tag{padding:.35rem .65rem;border:1px solid var(--border);border-radius:999px;background:#ffffff08;color:var(--text);font-size:.8rem;font-family:inherit;cursor:pointer;transition:border-color .12s,background .12s}.court-tag:hover{border-color:var(--accent);background:#ffffff0f}.court-tag.active{border-color:var(--accent);background:#6ab0ff1f;font-weight:600}.match-schedule-quick-dates{display:flex;flex-wrap:wrap;gap:.4rem}.btn-compact{padding:.35rem .65rem;font-size:.8rem}.match-schedule-hint{margin:0;font-size:.78rem;line-height:1.45;color:var(--text-muted)}.match-schedule-hint strong{color:var(--text);font-weight:600}.schedule-score-mode{display:flex;flex-wrap:wrap;gap:.35rem}.schedule-score-mode-btn{flex:1;min-width:6.5rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:6px;background:#ffffff08;color:var(--text);font-size:.8rem;font-family:inherit;cursor:pointer;transition:border-color .12s,background .12s}.schedule-score-mode-btn:hover{border-color:var(--accent);background:#ffffff0f}.schedule-score-mode-btn.active{border-color:var(--accent);background:#6ab0ff1f;font-weight:600}.schedule-final-kind{display:flex;flex-direction:column;gap:.4rem;margin-top:.25rem}.schedule-final-kind-btns{display:flex;flex-wrap:wrap;gap:.35rem}.schedule-final-kind-btns .schedule-score-mode-btn{flex:1 1 auto;min-width:0;text-align:center;line-height:1.25}.schedule-scores-grid{margin-top:.35rem;display:flex;flex-direction:column;gap:.35rem}.schedule-scores-header{display:grid;grid-template-columns:4.5rem 1fr 1fr;gap:.4rem;align-items:center;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:0 .15rem}.schedule-scores-col-head{text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-score-block{display:flex;flex-direction:column;gap:.35rem}.schedule-score-block--error{padding:.35rem .4rem;margin:0 -.4rem;border-radius:8px;border:1px solid rgba(239,68,68,.35)}.schedule-score-row{display:grid;grid-template-columns:4.5rem 1fr 1fr;gap:.4rem;align-items:center;font-size:.85rem}.schedule-tb-row{margin-left:.15rem}.schedule-tb-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.public-if-tb-sub{font-size:.85em;font-weight:500;opacity:.88}.schedule-score-set-label{color:var(--text-muted);font-size:.8rem}.schedule-score-input{width:100%;max-width:100%;box-sizing:border-box;padding:.4rem .45rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.875rem;text-align:center;font-variant-numeric:tabular-nums}.schedule-score-input:focus{outline:none;border-color:var(--accent)}.chair-umpire-card{margin-top:.6rem;padding:.75rem;border:1px solid var(--border);border-radius:10px;background:#ffffff08;display:flex;flex-direction:column;gap:.55rem}.chair-umpire-qr{width:min(220px,100%);max-width:220px;height:auto;border-radius:8px;background:#fff;padding:.35rem}.chair-umpire-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.draws-page-table{width:100%;border-collapse:collapse;font-size:.875rem}.draws-page-table th,.draws-page-table td{text-align:left;padding:.65rem .85rem;border-bottom:1px solid var(--border)}.draws-page-table th{color:var(--text-muted);font-weight:500}.draws-page-table tbody tr:hover{background:#ffffff05}.draws-page-table .badge{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500;text-transform:capitalize}.draws-page-table .badge-scheduled{background:#a1a1aa33;color:var(--text-muted)}.draws-page-table .badge-live{background:#22c55e33;color:var(--accent)}.draws-page-table .badge-complete{background:#3b82f633;color:#60a5fa}.draws-page-table .badge-abandoned{background:#ef444433;color:#f87171}.matches-grid-empty-cell-btn{width:100%;min-height:52px;border:1px dashed var(--border);border-radius:6px;background:transparent;color:var(--text-faint);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;font-family:inherit;transition:border-color .12s,background .12s,color .12s}.matches-grid-empty-cell-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.matches-grid-empty-cell-btn:disabled{opacity:.35;cursor:not-allowed}.matches-grid-empty-cell-icon{font-size:1.1rem;line-height:1;font-weight:300}.matches-grid-empty-cell-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.tunisia-ranking-page{display:flex;flex-direction:column;gap:1.5rem}.tunisia-ranking-page .tunisia-ranking-code{font-size:.85em}.tunisia-ranking-toolbar{padding:1.5rem 1.75rem 1.25rem}.tunisia-ranking-toolbar-head{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-subtle)}.tunisia-ranking-toolbar-title{margin:0 0 .3rem;font-size:1rem;font-weight:650;color:var(--text);letter-spacing:-.015em}.tunisia-ranking-toolbar-desc{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.45}.tunisia-ranking-form{display:flex;flex-direction:column;gap:1.25rem}.tunisia-ranking-search-block{display:flex;flex-direction:column;gap:.4rem}.tunisia-ranking-search-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.tunisia-ranking-search-field{display:flex;align-items:center;gap:.75rem;max-width:36rem;padding:.65rem 1rem;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s,box-shadow .15s}.tunisia-ranking-search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tunisia-ranking-search-icon{flex-shrink:0;font-size:1.1rem;color:var(--text-muted);line-height:1;-webkit-user-select:none;user-select:none}.tunisia-ranking-search-input{flex:1;min-width:0;border:none;background:transparent;color:var(--text);font-family:inherit;font-size:.95rem;outline:none}.tunisia-ranking-search-input::placeholder{color:var(--text-faint)}.tunisia-ranking-ranges{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem}.tunisia-ranking-fieldset{margin:0;padding:1rem 1.1rem;border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--surface-raised)}.tunisia-ranking-fieldset-legend{padding:0 .35rem;font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.tunisia-ranking-range-pair{display:flex;align-items:flex-end;gap:.65rem}.tunisia-ranking-range-item{flex:1;display:flex;flex-direction:column;gap:.35rem;min-width:0}.tunisia-ranking-sublabel{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.tunisia-ranking-range-item input{width:100%;padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.tunisia-ranking-range-item input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tunisia-ranking-range-item input::placeholder{color:var(--text-faint)}.tunisia-ranking-range-sep{flex-shrink:0;padding-bottom:.5rem;font-size:.85rem;color:var(--text-muted);-webkit-user-select:none;user-select:none}.tunisia-ranking-form-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding-top:.25rem}.tunisia-ranking-page-size{display:flex;align-items:center;gap:.65rem}.tunisia-ranking-page-size-label{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.tunisia-ranking-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);font-family:inherit;font-size:.875rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}.tunisia-ranking-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tunisia-ranking-count-bar{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.tunisia-ranking-count-badge{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.3rem;padding:.3rem .8rem;font-size:.8rem;font-weight:600;color:var(--accent);background:var(--accent-dim);border-radius:999px}.tunisia-ranking-count-total{font-weight:400;color:var(--text-muted)}.tunisia-ranking-table-title,.tunisia-ranking-table-wrap{margin-bottom:1rem}.tunisia-ranking-table .tunisia-ranking-col-numeric{text-align:right;font-variant-numeric:tabular-nums}.tunisia-ranking-licence{font-size:.82em;color:var(--text-muted)}.tunisia-ranking-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35rem;padding-top:.75rem}.tunisia-ranking-page-btn{font-size:.8rem;padding:.4rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised);color:var(--text-muted);cursor:pointer;font-family:inherit;transition:background .12s,border-color .12s,color .12s}.tunisia-ranking-page-btn:hover:not(:disabled){border-color:var(--text-faint);color:var(--text)}.tunisia-ranking-page-btn:disabled{opacity:.35;cursor:not-allowed}.tunisia-ranking-page-jump{display:inline-flex;align-items:center;gap:.4rem;margin:0 .25rem;padding:.3rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised)}.tunisia-ranking-page-jump-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.tunisia-ranking-page-input{width:3rem;min-width:2.5rem;padding:.3rem .4rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-family:inherit;font-size:.875rem;text-align:center;transition:border-color .15s,box-shadow .15s}.tunisia-ranking-page-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tunisia-ranking-page-of{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.tunisia-ranking-admin-hint{margin:0 0 1rem;font-size:.875rem}.tunisia-ranking-col-avatar{width:3.25rem;vertical-align:middle}.tunisia-ranking-col-flag{width:7.5rem;vertical-align:middle}.tunisia-ranking-flag-chip,.tunisia-ranking-flag-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .55rem;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text);font-family:inherit;font-size:.8rem;font-weight:500;white-space:nowrap}.tunisia-ranking-flag-btn{cursor:pointer;transition:border-color .12s,background .12s}.tunisia-ranking-flag-btn:hover{border-color:var(--border);background:color-mix(in srgb,var(--surface-raised) 80%,var(--border))}.tunisia-ranking-flag-img{width:18px;height:12px;object-fit:cover;border-radius:2px;border:1px solid var(--border-subtle);display:block}.tunisia-ranking-flag-code{color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.02em}.tunisia-ranking-avatar-wrap{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;overflow:hidden;background:var(--surface-raised);border:2px solid var(--border);flex-shrink:0}.tunisia-ranking-avatar-wrap--admin{border:2px solid var(--border);padding:0;cursor:pointer;font:inherit;color:inherit;vertical-align:middle;transition:border-color .15s,box-shadow .15s}.tunisia-ranking-avatar-wrap--admin:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tunisia-ranking-avatar-wrap--admin:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tunisia-ranking-avatar-img{width:100%;height:100%;object-fit:cover;display:block}.tunisia-ranking-avatar-initials{font-size:.7rem;font-weight:600;color:var(--text-muted);letter-spacing:-.02em}.tunisia-ranking-avatar-modal.modal{max-width:520px}.tunisia-ranking-avatar-modal .tunisia-ranking-avatar-modal-body{padding:1.25rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.tunisia-ranking-avatar-player-card,.tunisia-ranking-country-card{padding:.85rem 1rem;background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius)}.tunisia-ranking-country-head{margin-bottom:.65rem}.tunisia-ranking-country-title{margin:0 0 .2rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.tunisia-ranking-country-desc{margin:0;font-size:.85rem;color:var(--text-muted)}.tunisia-ranking-country-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}.tunisia-ranking-country-preview{width:2.25rem;height:2.25rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-raised);display:inline-flex;align-items:center;justify-content:center}.tunisia-ranking-country-preview-img{width:20px;height:14px;object-fit:cover;border-radius:2px;border:1px solid var(--border-subtle);display:block}.tunisia-ranking-country-select{min-width:16rem}.tunisia-ranking-avatar-player-name{margin:0 0 .3rem;font-size:1rem;font-weight:650;color:var(--text)}.tunisia-ranking-avatar-player-licence{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem}.tunisia-ranking-avatar-licence-label{color:var(--text-muted);text-transform:uppercase;font-size:.68rem;letter-spacing:.07em;font-weight:600}.tunisia-ranking-avatar-licence-code{padding:.2rem .5rem;font-size:.8rem;background:var(--bg);border-radius:6px;border:1px solid var(--border);font-family:monospace}.tunisia-ranking-avatar-modal-preview{display:flex;justify-content:center;min-height:0}.tunisia-ranking-crop-stage{width:100%;display:flex;flex-direction:column;gap:1rem}.tunisia-ranking-crop-container{position:relative;width:100%;height:300px;border-radius:var(--radius);overflow:hidden;background:var(--bg);border:1px solid var(--border)}.tunisia-ranking-crop-controls{display:flex;flex-direction:column;gap:.85rem}.tunisia-ranking-crop-zoom-label{display:flex;flex-direction:column;gap:.35rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.tunisia-ranking-crop-zoom-label input[type=range]{width:100%;accent-color:var(--accent)}.tunisia-ranking-apply-crop{align-self:stretch}.tunisia-ranking-pick-actions{display:flex;flex-direction:column;align-items:center;gap:.65rem;text-align:center}.tunisia-ranking-adjust-crop{margin-top:.5rem;width:100%}.tunisia-ranking-avatar-preview-img{width:7.5rem;height:7.5rem;border-radius:50%;object-fit:cover;border:2px solid var(--border);box-shadow:var(--shadow-md)}.tunisia-ranking-avatar-preview-placeholder{width:7.5rem;height:7.5rem;border-radius:50%;background:var(--surface-raised);display:flex;align-items:center;justify-content:center;font-size:1.65rem;font-weight:600;color:var(--text-muted);border:2px solid var(--border)}.tunisia-ranking-upload-zone{padding:1rem;border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface-raised)}.tunisia-ranking-upload-title{margin:0 0 .65rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.tunisia-ranking-upload-label{position:relative;display:block;cursor:pointer}.tunisia-ranking-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tunisia-ranking-upload-prompt{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1rem .75rem;text-align:center}.tunisia-ranking-upload-btn{display:inline-block;padding:.5rem 1.1rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--accent);border-radius:var(--radius-sm);transition:background .12s}.tunisia-ranking-upload-label:hover .tunisia-ranking-upload-btn{background:var(--accent-hover)}.tunisia-ranking-upload-label:focus-within .tunisia-ranking-upload-btn{outline:2px solid var(--accent);outline-offset:2px}.tunisia-ranking-upload-hint-inline{font-size:.78rem;color:var(--text-muted)}.tunisia-ranking-file-name{margin:.5rem 0 0;font-size:.8125rem;word-break:break-all;text-align:center;color:var(--text-muted)}.tunisia-ranking-file-hint{margin:.65rem 0 0;font-size:.78rem;text-align:center;color:var(--text-muted)}.tunisia-ranking-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem}.tunisia-ranking-edit-field{margin-top:.35rem;display:flex;flex-direction:column;gap:.35rem}.tunisia-ranking-edit-field input{width:100%;padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.tunisia-ranking-edit-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tunisia-ranking-add-player-modal.modal{max-width:480px;padding:20px}.tunisia-ranking-modal-error{margin:0}.tunisia-ranking-modal-actions{display:flex;flex-wrap:wrap;gap:.65rem;padding-top:.25rem}.tunisia-ranking-modal-cancel{margin-left:auto}@media (max-width: 520px){.tunisia-ranking-form-footer{flex-direction:column;align-items:stretch}.tunisia-ranking-reset,.tunisia-ranking-modal-cancel{margin-left:0}.tunisia-ranking-modal-actions{flex-direction:column}}.create-card{padding:1.65rem 1.85rem;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,var(--bg)) 0%,var(--surface) 100%)}.create-card .tournament-form{gap:1.35rem}.create-card .tournament-form input:not([type=checkbox]):not([type=number]),.create-card .tournament-form select,.create-card .tournament-form textarea{border:1.5px solid var(--border);border-radius:10px;padding:.62rem .85rem;background:var(--bg);box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent);transition:border-color .14s,box-shadow .14s,background .14s}.create-card .tournament-form input::placeholder,.create-card .tournament-form textarea::placeholder{color:color-mix(in srgb,var(--text-muted) 72%,transparent)}.create-card .tournament-form input:hover:not(:focus),.create-card .tournament-form select:hover:not(:focus),.create-card .tournament-form textarea:hover:not(:focus){border-color:color-mix(in srgb,var(--text-muted) 45%,var(--border))}.create-card .tournament-form input:focus,.create-card .tournament-form select:focus,.create-card .tournament-form textarea:focus{border-color:var(--accent);box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent),0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.create-card .tournament-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2.2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;cursor:pointer}.create-card .datetime-field{display:flex;align-items:center}.create-card .datetime-field-icon{display:none}.create-card .datetime-field:before{content:"";position:absolute;left:.72rem;width:1rem;height:1rem;pointer-events:none;opacity:.72;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E") center / contain no-repeat;color:var(--text-muted)}.create-card .datetime-field input[type=datetime-local]{padding-left:2.35rem;width:100%}.create-card .match-setup-fieldset{border-radius:12px;border-color:color-mix(in srgb,var(--border) 85%,var(--accent));background:color-mix(in srgb,var(--surface-raised) 70%,var(--surface))}.create-card .number-stepper{border-radius:10px;border-width:1.5px;box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent)}.create-card .number-stepper-btn{background:color-mix(in srgb,var(--surface) 60%,transparent)}.create-card .number-stepper-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}.st-input{width:100%;min-width:0;padding:.55rem .75rem;border:1.5px solid var(--border);border-radius:9px;background:var(--bg);color:var(--text);font-family:inherit;font-size:.875rem;font-weight:500;line-height:1.35;box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent);transition:border-color .14s,box-shadow .14s}.st-input::placeholder{color:color-mix(in srgb,var(--text-muted) 70%,transparent);font-weight:400}.st-input:hover:not(:focus){border-color:color-mix(in srgb,var(--text-muted) 40%,var(--border))}.st-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.st-select{flex:1;min-width:0;padding:.55rem 2rem .55rem .75rem;border:1.5px solid var(--border);border-radius:9px;background:var(--bg);color:var(--text);font-family:inherit;font-size:.875rem;font-weight:500;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;cursor:pointer;transition:border-color .14s,box-shadow .14s}.st-select:hover:not(:focus){border-color:color-mix(in srgb,var(--text-muted) 40%,var(--border))}.st-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.sf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.625rem;margin-top:.5rem}.sf-card{position:relative;border:1.5px solid var(--border);border-radius:12px;padding:1rem 1.1rem;cursor:pointer;background:var(--bg);transition:border-color .14s,background .14s,box-shadow .14s;text-align:left;font-family:inherit;width:100%}.sf-card:hover{border-color:color-mix(in srgb,var(--accent) 60%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--bg))}.sf-card.sf-card--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.sf-card-check{position:absolute;top:.7rem;right:.7rem;width:18px;height:18px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .14s}.sf-card--active .sf-card-check{opacity:1}.sf-card-check svg{display:block}.sf-card-name{font-weight:650;font-size:.9rem;color:var(--text);margin-bottom:.3rem;letter-spacing:-.01em}.sf-card-desc{font-size:.775rem;color:var(--text-muted);line-height:1.45}.sp-import{margin-top:.75rem;margin-bottom:.25rem}.sp-import-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.sp-import-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sp-import-btn{cursor:pointer;display:inline-flex;align-items:center;margin:0}.sp-import-hint{margin:.45rem 0 0;max-width:42rem}.sp-import-success{font-size:.8rem;color:var(--accent);margin:.4rem 0 0}.sp-list{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.875rem}.sp-row{display:flex;align-items:center;gap:.65rem;padding:.55rem .7rem .55rem .55rem;background:color-mix(in srgb,var(--bg) 35%,var(--surface));border:1.5px solid var(--border);border-radius:11px;transition:border-color .14s,box-shadow .14s,background .14s}.sp-row:hover{border-color:color-mix(in srgb,var(--text-muted) 35%,var(--border));background:color-mix(in srgb,var(--bg) 22%,var(--surface))}.sp-row--editing{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.sp-index{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.65rem;padding:0 .25rem;border-radius:999px;font-size:.68rem;font-weight:700;color:var(--text-muted);background:color-mix(in srgb,var(--border) 55%,var(--surface));flex-shrink:0}.sp-name{flex:1;font-size:.875rem;font-weight:500;color:var(--text)}.sp-gender-badge{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;border-radius:999px;flex-shrink:0}.sp-gender-badge--male{color:#3b82f6;background:color-mix(in srgb,#3b82f6 14%,var(--surface))}.sp-gender-badge--female{color:#ec4899;background:color-mix(in srgb,#ec4899 14%,var(--surface))}.sp-row .st-input{flex:1}.sp-partner-hint{margin-left:.45rem;font-size:.75rem;font-weight:400;color:var(--text-muted)}.sp-players-panel{padding:1.15rem 1.25rem;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 90%,var(--bg)) 0%,var(--surface) 100%)}.sp-players-actions{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0}.sp-action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:1.85rem;padding:.25rem .65rem;border-radius:8px;font-size:.75rem;font-weight:600;line-height:1.2;white-space:nowrap}.sp-action-btn--icon{min-width:1.85rem;padding-inline:.4rem}.sp-composer,.sp-add{display:flex;align-items:stretch;gap:0;padding:.35rem;border:1.5px solid var(--border);border-radius:12px;background:var(--bg);box-shadow:inset 0 1px color-mix(in srgb,#fff 5%,transparent),0 1px 2px color-mix(in srgb,#000 6%,transparent);transition:border-color .14s,box-shadow .14s}.sp-composer:focus-within,.sp-add:focus-within{border-color:var(--accent);box-shadow:inset 0 1px color-mix(in srgb,#fff 5%,transparent),0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.sp-composer-field{flex:1;min-width:0;display:flex;align-items:center}.sp-composer-field .st-input,.sp-add>input[type=text]{flex:1;min-width:0;border:none;border-radius:8px;padding:.6rem .75rem;background:transparent;box-shadow:none}.sp-composer-field .st-input:focus,.sp-add>input[type=text]:focus{outline:none;box-shadow:none}.sp-add>input[type=text]{width:auto;font-size:.875rem;font-weight:500;color:var(--text);font-family:inherit}.sp-add>input[type=text]::placeholder{color:color-mix(in srgb,var(--text-muted) 70%,transparent)}.sp-composer-meta{display:flex;align-items:center;gap:.35rem;padding-left:.35rem;border-left:1px solid var(--border);flex-shrink:0}.sp-composer-meta .sp-gender-toggle,.sp-add>.sp-gender-toggle{padding:0 .15rem}.sp-composer-btn,.sp-add>.btn-secondary{border-radius:8px!important;min-height:2.15rem;padding-inline:.85rem!important;font-weight:650;white-space:nowrap;align-self:center;margin-right:.1rem}.sp-gender-toggle{display:inline-flex;gap:.35rem;flex-shrink:0}.sp-gender-toggle--row{gap:.25rem}.sp-gender-toggle--row .sp-gender-btn{width:1.85rem;height:1.85rem;border-radius:7px}.sp-gender-btn{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;padding:0;border:1.5px solid var(--border);border-radius:9px;background:color-mix(in srgb,var(--bg) 80%,var(--surface));color:var(--text-muted);cursor:pointer;font-family:inherit;box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent);transition:border-color .14s,background .14s,color .14s,box-shadow .14s,transform .12s}.sp-gender-btn:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));color:var(--text)}.sp-gender-btn.sp-gender-btn--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg));color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.sp-gender-btn--male.sp-gender-btn--active{border-color:#3b82f6;background:color-mix(in srgb,#3b82f6 12%,var(--bg));color:#3b82f6;box-shadow:0 0 0 3px color-mix(in srgb,#3b82f6 20%,transparent)}.sp-gender-btn--female.sp-gender-btn--active{border-color:#ec4899;background:color-mix(in srgb,#ec4899 12%,var(--bg));color:#ec4899;box-shadow:0 0 0 3px color-mix(in srgb,#ec4899 20%,transparent)}.st-list{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.875rem}.st-row{display:flex;align-items:center;gap:.55rem;padding:.55rem .7rem .55rem .55rem;background:color-mix(in srgb,var(--bg) 35%,var(--surface));border:1.5px solid var(--border);border-radius:11px}.st-row .st-select{flex:1}.st-sep{font-size:.8rem;color:var(--text-muted);font-weight:600;flex-shrink:0}.sm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.sm-meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem;align-items:center}.sm-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:999px;background:var(--border);color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase}.sm-pill--format{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.sm-pill--sport{background:color-mix(in srgb,#60a5fa 12%,var(--surface));color:#60a5fa;border:1px solid color-mix(in srgb,#60a5fa 25%,transparent)}.sm-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.sm-tab{padding:.65rem 1.25rem;font-size:.875rem;font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;font-family:inherit;transition:color .13s,border-color .13s}.sm-tab:hover{color:var(--text)}.sm-tab.sm-tab--active{color:var(--text);border-bottom-color:var(--accent)}.sm-actions{display:flex;gap:.625rem;align-items:center;flex-wrap:wrap;margin-bottom:1.25rem}.sm-hint{font-size:.8rem;color:var(--text-muted)}.sr-list{display:flex;flex-direction:column;gap:1.25rem}.sr-card{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface);transition:opacity .15s,border-color .15s}.sr-card--locked{opacity:.55;background:color-mix(in srgb,var(--border) 25%,var(--surface))}.sr-card--locked .sm-team-names,.sr-card--locked .sm-court{color:var(--text-muted)}.sr-card--past{opacity:.85}.sr-card--current{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent)}.sr-badge{display:inline-flex;align-items:center;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.15rem .45rem;border-radius:999px}.sr-badge--current{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.sr-badge--locked{background:color-mix(in srgb,var(--border) 60%,var(--surface));color:var(--text-muted);border:1px solid var(--border)}.sm-locked-hint{margin:.55rem 0 0;font-size:.72rem;color:var(--text-muted);font-style:italic}.sr-head{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.1rem;border-bottom:1px solid var(--border)}.sr-head-left{display:flex;align-items:center;gap:.75rem}.sr-round-label{font-weight:650;font-size:.9rem;letter-spacing:-.01em}.sr-bye{font-size:.775rem;color:var(--text-muted);font-style:italic}.sr-status{font-size:.7rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;letter-spacing:.03em;text-transform:uppercase}.sr-status--done{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent)}.sr-status--pending{background:color-mix(in srgb,#f59e0b 14%,var(--surface));color:#f59e0b}.sm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.sm-cell{padding:.875rem 1.1rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.sm-grid>.sm-cell:last-child{border-bottom:none}.sm-court{font-size:.68rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.6rem}.sm-teams{display:flex;flex-direction:column;gap:0}.sm-team{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.3rem 0}.sm-team+.sm-team{border-top:1px dashed var(--border)}.sm-team-names{font-size:.85rem;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-score{font-size:1.05rem;font-weight:750;min-width:2rem;text-align:right;color:var(--text-muted);font-variant-numeric:tabular-nums}.sm-score--win{color:var(--accent)}.sm-score--lose{color:var(--text-muted);opacity:.7}.sm-entry{display:flex;align-items:center;gap:.4rem;margin-top:.625rem;flex-wrap:wrap}.sm-entry-input{width:3.25rem;text-align:center;padding:.35rem .4rem;font-size:.9rem;border:1px solid var(--border);border-radius:7px;background:var(--bg);color:var(--text);font-family:inherit;font-variant-numeric:tabular-nums;transition:border-color .12s,box-shadow .12s}.sm-entry-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.sm-entry-sep{font-size:.9rem;color:var(--text-muted);font-weight:600}.sm-entry-save{padding:.35rem .75rem;font-size:.8rem;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:7px;cursor:pointer;font-family:inherit;transition:background .12s}.sm-entry-save:hover:not(:disabled){background:var(--accent-hover)}.sm-entry-save:disabled{opacity:.55;cursor:not-allowed}.sm-entry-hint{font-size:.7rem;color:var(--text-muted);width:100%}.sm-entry-error{font-size:.72rem;color:var(--danger);width:100%}.ss-table{width:100%;border-collapse:collapse;font-size:.875rem}.ss-table th{padding:.55rem .85rem;text-align:left;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface)}.ss-table td{padding:.65rem .85rem;border-bottom:1px solid var(--border);vertical-align:middle}.ss-table tbody tr:last-child td{border-bottom:none}.ss-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 3%,var(--bg))}.ss-rank{font-size:.8rem;font-weight:700;color:var(--text-muted);width:2.5rem;text-align:center}.ss-rank-medal{font-size:1rem}.ss-player{font-weight:600;font-size:.875rem}.ss-partner{font-size:.8rem;color:var(--text-muted)}.ss-pts{font-size:1rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.ss-played,.ss-avg{font-size:.8rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.sl-table{width:100%;border-collapse:collapse;font-size:.875rem}.sl-table th{padding:.55rem .85rem;text-align:left;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface)}.sl-table td{padding:.7rem .85rem;border-bottom:1px solid var(--border);vertical-align:middle}.sl-table tbody tr:last-child td{border-bottom:none}.sl-table tbody tr:hover td{background:#ffffff04}.sl-name{font-weight:600;color:var(--text);text-decoration:none;font-size:.9rem}.sl-name:hover{color:var(--accent)}.s-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3.5rem 2rem;text-align:center}.s-empty-icon{font-size:2.5rem;opacity:.35}.s-empty-text{font-size:.9rem;color:var(--text-muted);max-width:320px;line-height:1.5}.s-banner{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem 1rem;border-radius:9px;font-size:.85rem;margin-bottom:1rem;border:1px solid}.s-banner--error{background:color-mix(in srgb,var(--danger) 8%,var(--surface));border-color:color-mix(in srgb,var(--danger) 30%,var(--border));color:var(--danger)}.s-banner--info{background:color-mix(in srgb,var(--accent) 7%,var(--surface));border-color:color-mix(in srgb,var(--accent) 25%,var(--border));color:var(--text-muted)}.sm-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.75rem;margin-bottom:1.5rem}.sm-stat{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.75rem 1rem}.sm-stat-val{font-size:1.4rem;font-weight:750;letter-spacing:-.03em;line-height:1;color:var(--text);font-variant-numeric:tabular-nums}.sm-stat-val--accent{color:var(--accent)}.sm-stat-label{font-size:.72rem;color:var(--text-muted);margin-top:.3rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.sm-progress{height:4px;background:var(--border);border-radius:999px;overflow:hidden;margin-bottom:1.5rem}.sm-progress-fill{height:100%;background:var(--accent);border-radius:999px;transition:width .3s ease}.sfs-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;justify-content:flex-end}.sfs-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;margin:0;background:#00000073;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:pointer;animation:sfs-fade-in .18s ease-out}.sfs-panel{position:relative;z-index:1;display:flex;flex-direction:column;width:min(440px,100%);height:100%;background:var(--surface);border-left:1px solid var(--border);box-shadow:-12px 0 40px #0000002e;animation:sfs-slide-in .22s ease-out}.sfs-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.35rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.sfs-kicker{margin:0 0 .35rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.sfs-title{margin:0;font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.25}.sfs-tagline{margin:.4rem 0 0;font-size:.82rem;color:var(--text-muted);line-height:1.4}.sfs-close{flex-shrink:0;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:var(--text-muted);font-size:1.45rem;line-height:1;cursor:pointer;font-family:inherit;transition:color .12s,background .12s}.sfs-close:hover{color:var(--text);background:color-mix(in srgb,var(--border) 70%,transparent)}.sfs-body{flex:1;overflow-y:auto;padding:1.1rem 1.35rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.sfs-section-title{margin:0 0 .45rem;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.sfs-prose{margin:0;font-size:.875rem;line-height:1.55;color:var(--text)}.sfs-steps{margin:0;padding-left:1.15rem;display:flex;flex-direction:column;gap:.45rem}.sfs-steps li{font-size:.875rem;line-height:1.5;color:var(--text);padding-left:.15rem}.sfs-section--example{padding:.9rem 1rem;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.sfs-example-setup{margin:0 0 .75rem;font-size:.82rem;line-height:1.45;color:var(--text-muted)}.sfs-example-rounds{display:flex;flex-direction:column;gap:.75rem}.sfs-example-round{padding:.65rem .75rem;border-radius:8px;background:var(--surface);border:1px solid var(--border)}.sfs-example-round-title{font-size:.78rem;font-weight:700;color:var(--accent);margin-bottom:.4rem;letter-spacing:-.01em}.sfs-example-matches{margin:0;padding-left:1rem;display:flex;flex-direction:column;gap:.25rem}.sfs-example-matches li{font-size:.82rem;line-height:1.4;color:var(--text);font-variant-numeric:tabular-nums}.sfs-example-note{margin:.45rem 0 0;font-size:.75rem;font-style:italic;color:var(--text-muted);line-height:1.4}.sfs-example-outcome{margin:.85rem 0 0;font-size:.82rem;line-height:1.5;color:var(--text);font-weight:500}.sfs-footer{flex-shrink:0;padding:.9rem 1.35rem 1.15rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end}@keyframes sfs-fade-in{0%{opacity:0}to{opacity:1}}@keyframes sfs-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width: 600px){.sf-grid{grid-template-columns:1fr 1fr}.sm-grid{grid-template-columns:1fr}.sm-stats{grid-template-columns:repeat(3,1fr)}.sfs-panel{width:100%}.sp-composer,.sp-add{flex-direction:column;align-items:stretch;padding:.45rem;gap:.35rem}.sp-composer-meta{border-left:none;border-top:1px solid var(--border);padding-left:0;padding-top:.35rem;justify-content:space-between}.sp-row{flex-wrap:wrap}.sp-players-actions{width:100%;justify-content:flex-end;padding-top:.15rem}}@media (max-width: 400px){.sf-grid{grid-template-columns:1fr}}.spv-page{--spv-navy: #0a1628;--spv-navy-raised: #0f1f38;--spv-navy-tile: #0c1a30;--spv-navy-line: rgba(148, 180, 220, .16);--spv-navy-line-strong: rgba(180, 205, 235, .28);--spv-accent: #3b82f6;--spv-live: #22c55e;--spv-muted: rgba(180, 205, 235, .55);--spv-gold: #fbbf24;--spv-silver: #cbd5e1;--spv-bronze: #d97706;position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto 1fr;background:var(--spv-navy);color:#fff;font-family:var(--font-sans);overflow:hidden;-webkit-font-smoothing:antialiased}.spv-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(.25rem,.6vw,.55rem);padding:clamp(.55rem,1.2vh,.9rem) clamp(.85rem,2vw,1.6rem);border-bottom:1px solid var(--spv-navy-line);background:color-mix(in srgb,var(--spv-navy-raised) 94%,transparent)}.spv-header-side{display:flex;align-items:center;min-width:0}.spv-header-side--right{justify-content:flex-end}.spv-header-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;text-align:center}.spv-header-logo{max-height:clamp(52px,8.5vh,104px);max-width:clamp(120px,20vw,280px);width:auto;height:auto;object-fit:contain}.spv-header-logo--right{margin-left:auto}.spv-header-main{min-width:0}.spv-title{margin:0;font-size:clamp(.85rem,calc(1.7vw + .3vmin),2rem);font-weight:700;letter-spacing:-.02em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.spv-meta{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-top:.25rem;font-size:clamp(.72rem,1.1vw,.9rem);color:var(--spv-muted)}.spv-meta-item{display:inline-flex;align-items:center;gap:.35rem}.spv-meta-dot:before{content:"·";margin-right:.35rem;opacity:.65}.spv-round-badge{flex-shrink:0;margin-top:.35rem;padding:.35rem .75rem;border-radius:999px;border:1px solid var(--spv-navy-line-strong);background:var(--spv-navy-tile);font-size:clamp(.72rem,1.1vw,.92rem);font-weight:600;white-space:nowrap}.spv-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(.55rem,1vw,.85rem);padding:clamp(.55rem,1vw,.85rem);min-height:0}.spv-panel{display:flex;flex-direction:column;min-height:0;border:1px solid var(--spv-navy-line);border-radius:clamp(8px,.8vw,12px);background:var(--spv-navy-tile);overflow:hidden}.spv-panel-head{flex-shrink:0;padding:clamp(.45rem,.9vh,.7rem) clamp(.65rem,1.2vw,1rem);border-bottom:1px solid var(--spv-navy-line);font-size:clamp(.78rem,1.2vw,.95rem);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--spv-muted)}.spv-panel-body{flex:1;min-height:0;overflow:auto;padding:clamp(.45rem,.9vh,.75rem)}.spv-empty{display:flex;align-items:center;justify-content:center;min-height:8rem;color:var(--spv-muted);font-size:clamp(.85rem,1.2vw,1rem);text-align:center;padding:1rem}.spv-match-section+.spv-match-section{margin-top:clamp(.65rem,1.2vh,1rem);padding-top:clamp(.55rem,1vh,.85rem);border-top:1px dashed var(--spv-navy-line)}.spv-section-label{display:flex;align-items:center;gap:.5rem;margin-bottom:clamp(.45rem,.8vh,.65rem);font-size:clamp(.72rem,1vw,.86rem);font-weight:650;color:#fff}.spv-section-label--next{color:var(--spv-muted)}.spv-live-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--spv-live);box-shadow:0 0 0 3px color-mix(in srgb,var(--spv-live) 28%,transparent);flex-shrink:0}.spv-match-list{display:flex;flex-direction:column;gap:clamp(.4rem,.7vh,.55rem)}.spv-match-card{border:1px solid var(--spv-navy-line);border-radius:clamp(6px,.6vw,10px);background:color-mix(in srgb,var(--spv-navy) 55%,var(--spv-navy-tile));overflow:hidden}.spv-match-card--pending{border-color:color-mix(in srgb,var(--spv-accent) 45%,var(--spv-navy-line));box-shadow:inset 3px 0 0 var(--spv-accent)}.spv-match-card--next{opacity:.82;border-style:dashed}.spv-match-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .65rem;border-bottom:1px solid var(--spv-navy-line);background:color-mix(in srgb,var(--spv-navy-raised) 70%,transparent);font-size:clamp(.68rem,.95vw,.82rem);color:var(--spv-muted)}.spv-match-court{font-weight:650;color:#fff}.spv-match-round{white-space:nowrap}.spv-match-teams{display:grid;gap:0}.spv-team-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.65rem;padding:clamp(.42rem,.8vh,.58rem) .65rem}.spv-team-row+.spv-team-row{border-top:1px solid var(--spv-navy-line)}.spv-team-names{font-size:clamp(.82rem,1.35vw,1.05rem);font-weight:600;line-height:1.25;word-break:break-word}.spv-team-score{min-width:2.1rem;text-align:center;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:800;font-variant-numeric:tabular-nums}.spv-team-score--win{color:var(--spv-live)}.spv-team-score--lose{color:var(--spv-muted)}.spv-team-score--pending{color:var(--spv-muted);font-size:clamp(.85rem,1.2vw,1rem);font-weight:600}.spv-standings{width:100%;border-collapse:collapse;font-size:clamp(.78rem,1.15vw,.95rem)}.spv-standings th,.spv-standings td{padding:clamp(.38rem,.7vh,.52rem) clamp(.45rem,.8vw,.65rem);border-bottom:1px solid var(--spv-navy-line);text-align:left}.spv-standings th{font-size:clamp(.68rem,.95vw,.78rem);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--spv-muted)}.spv-standings tr:last-child td{border-bottom:none}.spv-rank{width:2.4rem;text-align:center!important;font-weight:700;color:var(--spv-muted)}.spv-rank-medal{font-size:1.05em}.spv-player{font-weight:650}.spv-partner{color:var(--spv-muted);font-size:.92em}.spv-pts{font-weight:800;font-variant-numeric:tabular-nums;text-align:right!important}.spv-played,.spv-avg{text-align:right!important;font-variant-numeric:tabular-nums;color:var(--spv-muted)}.spv-standings tbody tr:nth-child(-n+3) .spv-player{color:#fff}@media (max-width: 860px){.spv-body{grid-template-columns:1fr;grid-template-rows:1fr auto}.spv-panel--ranking{max-height:42vh}}.bracket-graph{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;overflow-x:auto;--bracket-round-gap: 1rem;--bracket-bridge-core: 26px;--bracket-connector: #fcfcfc;--bracket-connector-glow: rgba(0, 0, 0, 0);--bracket-connector-width: 2.5px}.bracket-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.bracket-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.bracket-qualify-label input{width:3.5rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.875rem;text-align:center}.bracket-qualify-label input:focus{outline:none;border-color:var(--accent)}.bracket-title{font-weight:600;color:var(--text)}.bracket-slots-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-muted)}.bracket-slots-label select{padding:.35rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.875rem}.bracket-container{display:flex;gap:var(--bracket-round-gap);align-items:stretch;justify-content:flex-start;min-height:120px;padding:.25rem 0;overflow:visible}.bracket-round{display:flex;flex-direction:column;align-items:center;flex:0 0 auto;align-self:stretch;overflow:visible}.bracket-round .round-label{font-size:.75rem;color:var(--text-muted);margin-bottom:.35rem;min-height:1.25rem;height:1.25rem;display:flex;align-items:flex-end;flex-shrink:0}.bracket-entry{display:flex;flex-direction:column;flex-shrink:0}.bracket-entry-labels{display:grid;grid-template-columns:auto minmax(180px,1fr);column-gap:0}.bracket-entry-labels .round-label-slots{min-width:168px}.bracket-entry-row{display:flex;flex-direction:row;align-items:stretch;gap:0}.bracket-sync-grid{display:grid;grid-template-columns:auto minmax(180px,1fr);grid-auto-rows:var(--slot-block-px, 32px);row-gap:2px;column-gap:0;align-content:start}.bracket-sync-grid .bracket-slot-wrap{min-width:168px}.bracket-match-cell--sync-grid{min-height:0;align-self:stretch;overflow:visible}.bracket-r0-bridges{display:flex;flex-direction:column;gap:2px;width:var(--bracket-bridge-core);flex-shrink:0;margin-left:var(--bracket-round-gap)}.bracket-feeder-pair--bridge-only{flex-shrink:0;display:flex;align-items:stretch;height:var(--r0-pair-px);overflow:visible}.bracket-round-slots{min-width:168px;flex-shrink:0}.bracket-slots-column{display:flex;flex-direction:column;gap:2px;--slot-block-px: 32px}.bracket-slot-wrap{height:var(--slot-block-px);flex-shrink:0;display:flex;align-items:center;gap:.4rem;position:relative}.bracket-slot-index{flex:0 0 1.6rem;width:1.6rem;text-align:right;font-size:.74rem;font-weight:600;color:var(--text-muted);-webkit-user-select:none;user-select:none}.bracket-slot-head-index{flex:0 0 1.35rem;width:1.35rem;text-align:center;font-size:.68rem;font-weight:700;letter-spacing:.02em;color:var(--accent, #2563eb);-webkit-user-select:none;user-select:none;line-height:1.2}.bracket-slot-head-index--reserved{visibility:hidden}.bracket-slot-body{flex:1;min-width:0;min-height:0;display:flex;align-items:center}.bracket-slot-head-bundle{flex:1;min-width:0;min-height:0;height:100%;display:flex;flex-direction:row;align-items:center;gap:4px}.bracket-slot-head-bundle>.bracket-slot-display-only,.bracket-slot-head-bundle>.bracket-slot-doubles{flex:1;min-width:0}.bracket-slot-unlock svg{display:block}.bracket-slot-doubles{width:100%;display:flex;flex-direction:column;gap:4px;padding:6px;border:1px solid var(--border);border-radius:6px;background:#ffffff05}.bracket-slot-doubles .bracket-slot-input{min-width:0}.bracket-slot-select-bundle{display:flex;flex-direction:row;align-items:stretch;gap:4px;width:100%;min-width:100px;height:100%;min-height:0}.bracket-slot-select-bundle>.bracket-slot-select-trigger{flex:1;min-width:0;width:auto}.bracket-slot-reset{flex-shrink:0;width:1.65rem;min-height:1.65rem;padding:0;align-self:center;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text-muted);cursor:pointer;font-size:1.15rem;line-height:1;font-family:inherit;display:flex;align-items:center;justify-content:center}.bracket-slot-reset:hover{border-color:var(--accent);color:var(--text);background:#ffffff0f}.bracket-slot-reset:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.bracket-slot-select{width:100%;min-width:100px;padding:.4rem .45rem .4rem .5rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.8rem;text-align:left;cursor:pointer;font-family:inherit}.bracket-slot-select:not(.bracket-slot-doubles){height:100%;min-height:0;padding-top:.25rem;padding-bottom:.25rem}.bracket-slot-select-trigger{display:flex;flex-direction:row;align-items:center;gap:.35rem}.bracket-slot-select-trigger:hover{border-color:var(--accent);background:#ffffff0d}.bracket-slot-select-trigger:focus{outline:none}.bracket-slot-select-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.bracket-slot-select-value{flex:1;min-width:0;text-align:left}.bracket-slot-select-trigger.bracket-slot-doubles{align-items:stretch;padding:6px 6px 6px 8px;border-radius:8px;background:#ffffff08}.bracket-slot-select-trigger.bracket-slot-doubles .bracket-slot-select-value{display:flex;flex-direction:column;gap:4px;justify-content:center}.bracket-slot-select-chevron{flex-shrink:0;display:flex;align-items:center;align-self:center;color:var(--text-muted);opacity:.85}.bracket-slot-select-chevron-svg{display:block;transition:transform .18s ease}.bracket-slot-select-chevron-svg.is-open{transform:rotate(180deg)}.bracket-slot-text{display:block;min-height:1.2em}.bracket-slot-placeholder,.bracket-slot-qualifier-feed{color:var(--text-muted);font-style:italic}.bracket-slot-qualifier-suffix{color:var(--text-muted);font-size:.75rem;font-style:normal;font-weight:500;white-space:nowrap}.bracket-slot-display-only{width:100%;min-width:100px;padding:.4rem .5rem;border:1px solid transparent;border-radius:4px;font-size:.8rem;color:var(--text)}.bracket-slot-display-only:not(.bracket-slot-doubles){height:100%;min-height:0;display:flex;align-items:center;padding-top:.25rem;padding-bottom:.25rem}.bracket-slot-display-only.bracket-slot-doubles{display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:6px}.bracket-slot-display-only.bracket-slot-doubles.bracket-slot-qualifier-doubles-row{display:grid;grid-template-columns:minmax(1.5rem,auto) 1fr;column-gap:.5rem;row-gap:0;align-items:start}.bracket-slot-qualifier-q{flex-shrink:0;font-size:.7rem;font-weight:700;letter-spacing:.02em;color:var(--text-muted);line-height:1.25;padding-top:1px;align-self:center}.bracket-slot-qualifier-names{display:flex;flex-direction:column;gap:4px;min-width:0}.bracket-slot-select-trigger.bracket-slot-doubles .bracket-slot-qualifier-select-doubles-row{display:grid;grid-template-columns:minmax(1.5rem,auto) 1fr;column-gap:.5rem;align-items:start;width:100%;min-width:0}.bracket-slot-select-trigger.bracket-slot-doubles .bracket-slot-qualifier-select-doubles-row .bracket-slot-qualifier-names{text-align:left}.bracket-slot-qualifier-select-empty{width:100%;min-width:0}.bracket-slot-dropdown{position:absolute;left:0;top:100%;margin-top:4px;min-width:max(100%,12.5rem);max-width:min(22rem,92vw);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000059,0 0 0 1px #ffffff0a;z-index:50;overflow:hidden}.bracket-slot-dropdown-search-wrap{padding:.5rem .6rem;border-bottom:1px solid var(--border);flex-shrink:0;background:#00000026}.bracket-slot-dropdown-search{width:100%;box-sizing:border-box;padding:.4rem .55rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.8rem;font-family:inherit}.bracket-slot-dropdown-search::placeholder{color:var(--text-muted);opacity:.8}.bracket-slot-dropdown-search:focus{outline:none;border-color:var(--accent)}.bracket-slot-dropdown-scroll{max-height:min(240px,45vh);overflow-y:auto;padding:.25rem 0}.bracket-slot-dropdown-empty{padding:.75rem .85rem;font-size:.8rem;color:var(--text-muted);line-height:1.35}.bracket-slot-dropdown-item{display:block;width:100%;padding:.45rem .75rem;border:none;background:none;color:var(--text);font-size:.8rem;text-align:left;cursor:pointer;font-family:inherit;line-height:1.3}.bracket-slot-dropdown-item:hover,.bracket-slot-dropdown-item:focus{background:#ffffff14;outline:none}.bracket-slot-dropdown-item:focus-visible{box-shadow:inset 2px 0 0 var(--accent)}.bracket-slot-dropdown-item.bracket-slot-dropdown-clear{color:var(--text-muted);font-style:italic;border-bottom:1px solid var(--border);padding-bottom:.5rem;margin-bottom:.2rem}.bracket-slot-input{width:100%;min-width:100px;padding:.4rem .5rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-size:.8rem}.bracket-slot-input:focus{outline:none;border-color:var(--accent)}.bracket-slot-input::placeholder{color:var(--text-muted);opacity:.7}.bracket-round-matches{margin-left:0;flex-shrink:0}.bracket-matches-column{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:2px;overflow:visible}.bracket-feeder-pair{display:flex;flex-direction:row;align-items:stretch;flex-shrink:0;overflow:visible}.bracket-pair-matches{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0;overflow:hidden}.bracket-feeder-single{flex-shrink:0;overflow:visible}.bracket-pair-bridge{position:relative;width:var(--bracket-bridge-core);flex-shrink:0;align-self:stretch;z-index:2;pointer-events:none}.bracket-pair-bridge-svg{display:block;width:100%;height:100%}.bracket-pair-bridge-svg path{fill:none;stroke:var(--bracket-connector);stroke-width:var(--bracket-connector-width);stroke-linecap:square;stroke-linejoin:miter;filter:drop-shadow(0 0 3px var(--bracket-connector-glow))}.bracket-match-cell{display:flex;flex-direction:column;align-items:stretch;flex-shrink:0;position:relative;z-index:1}.bracket-match-cell--feeder-out .bracket-match-box{position:relative;z-index:3}.bracket-match-cell--feeder-out .bracket-match-box:after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);width:12px;height:var(--bracket-connector-width);background:var(--bracket-connector);box-shadow:0 0 4px var(--bracket-connector-glow);z-index:2;pointer-events:none}.bracket-match-cell--incoming:before{content:"";position:absolute;left:calc(-1 * (var(--bracket-round-gap) + var(--bracket-bridge-core)));top:50%;transform:translateY(-50%);width:calc(var(--bracket-round-gap) + var(--bracket-bridge-core));height:var(--bracket-connector-width);background:var(--bracket-connector);box-shadow:0 0 4px var(--bracket-connector-glow);z-index:2;pointer-events:none}.bracket-match-cell--incoming-slots.bracket-match-cell--slot-bridge{display:flex;flex-direction:row;align-items:stretch;overflow:visible}.bracket-match-cell--incoming-slots.bracket-match-cell--slot-bridge:before{display:none}.bracket-slot-feed-bridge{width:var(--bracket-round-gap);flex-shrink:0;align-self:stretch;position:relative;z-index:2;pointer-events:none}.bracket-slot-feed-bridge-svg{display:block;width:100%;height:100%}.bracket-slot-feed-bridge-svg path{fill:none;stroke:var(--bracket-connector);stroke-width:var(--bracket-connector-width);stroke-linecap:square;stroke-linejoin:miter;filter:drop-shadow(0 0 3px var(--bracket-connector-glow))}.bracket-match-cell-body{flex:1 1 auto;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:0}.bracket-match-cell--incoming-slots:not(.bracket-match-cell--slot-bridge):before{content:"";position:absolute;left:calc(-1 * var(--bracket-round-gap));top:50%;transform:translateY(-50%);width:var(--bracket-round-gap);height:var(--bracket-connector-width);background:var(--bracket-connector);box-shadow:0 0 4px var(--bracket-connector-glow);z-index:2;pointer-events:none}.bracket-match-line{flex:1 1 0;min-height:8px;border:none;width:auto;margin:0}.bracket-match-top{border-radius:2px 2px 0 0}.bracket-match-bottom{border-radius:0 0 2px 2px}.bracket-match-box{padding:.35rem .6rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);text-align:center;min-width:48px;position:relative;z-index:1}.bracket-match-vs{font-size:.75rem;color:var(--text-muted)}.bracket-match-card{min-width:180px;text-align:left;padding:.4rem .6rem;display:flex;flex-direction:column;gap:2px}.bracket-match-context-title{font-size:.68rem;font-weight:600;color:var(--text-muted);line-height:1.25;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bracket-team-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.bracket-team-name{font-size:.8rem;color:var(--text);white-space:pre-line;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.bracket-team-winner .bracket-team-name{font-weight:600}.bracket-score-row{margin-top:2px;display:flex;gap:4px}.bracket-score-cell{min-width:20px;padding:1px 4px;border-radius:3px;background:#ffffff0a;font-size:.7rem;display:flex;justify-content:space-between;gap:2px}.bracket-tb-sub{font-size:.92em;font-weight:500;opacity:.88;white-space:nowrap}.bracket-walkover-score{font-size:.72rem;font-weight:600;min-width:2rem;text-align:right}.bracket-walkover-loser{color:var(--accent, #6ab0ff);letter-spacing:.02em}.group-round-schedule{margin-bottom:1.5rem}.group-round-schedule-hint{margin:0 0 .75rem;font-size:.85rem;color:var(--muted, #666)}.group-round-schedule-group+.group-round-schedule-group{margin-top:1.5rem}.group-round-schedule-group-title{margin:0 0 .75rem;font-size:1rem;font-weight:600}.group-round-schedule-grid{display:grid;grid-template-columns:minmax(0,1fr) 1.25rem minmax(0,1fr) minmax(7.5rem,max-content);column-gap:.75rem;row-gap:.3rem;align-items:baseline}.group-round-schedule-round{display:contents}.group-round-schedule-round-title{grid-column:1 / -1;margin:.65rem 0 .15rem;font-size:.95rem;font-weight:700;color:var(--text)}.group-round-schedule-round:first-child .group-round-schedule-round-title{margin-top:0}.group-round-schedule-match{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:baseline;font-size:.9rem;line-height:1.4;color:var(--text);border-radius:6px;padding:.15rem .25rem;margin:0 -.25rem}.group-round-schedule-match--draggable{cursor:grab}.group-round-schedule-match--draggable:active{cursor:grabbing}.group-round-schedule-match--dragging{opacity:.45}.group-round-schedule-match--drag-over{background:#22c55e1f;outline:1px dashed rgba(34,197,94,.55)}.group-round-schedule-side{display:inline-flex;align-items:baseline;gap:.4rem;min-width:0}.group-round-schedule-num{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:600;min-width:1.25ch}.group-round-schedule-name{min-width:0;overflow-wrap:anywhere;text-transform:uppercase}.group-round-schedule-vs{color:var(--muted, #666);font-weight:500;text-align:center}.group-round-schedule-score{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600;font-size:.85rem;white-space:nowrap;text-align:right}@media (max-width: 640px){.group-round-schedule-grid{display:flex;flex-direction:column;gap:.35rem}.group-round-schedule-round{display:flex;flex-direction:column;gap:.25rem}.group-round-schedule-round-title{margin:.5rem 0 .1rem}.group-round-schedule-match{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-column:auto;column-gap:.5rem;row-gap:.1rem}.group-round-schedule-side--home{grid-column:1;grid-row:1}.group-round-schedule-vs{display:none}.group-round-schedule-side--away{grid-column:1;grid-row:2}.group-round-schedule-score{grid-column:2;grid-row:1 / span 2;align-self:center}}.lottery-modal-overlay{z-index:1200;padding:.75rem;align-items:center}.lottery-modal{max-width:480px;width:min(96vw,480px);height:auto;max-height:min(92vh,900px);display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--surface, #fff) 92%,#dce8f2) 0%,var(--surface, #fff) 42%),var(--surface, #fff)}.lottery-modal--options{max-width:440px;width:min(96vw,440px)}.lottery-modal--prep{max-width:520px;width:min(96vw,520px);max-height:min(90vh,720px)}.lottery-modal--wide{max-width:min(96vw,1100px);width:min(96vw,1100px);height:calc(100vh - 1.5rem);max-height:calc(100vh - 1.5rem)}.lottery-modal__header{align-items:center;background:color-mix(in srgb,var(--surface, #fff) 88%,#e8eef4)}.lottery-modal__header-main{display:flex;align-items:center;gap:.85rem;min-width:0}.lottery-modal__header-text{min-width:0;display:flex;flex-direction:column;gap:.15rem}.lottery-modal__header-text h2{margin:0;line-height:1.25}.lottery-modal__eyebrow{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent, #1f6b9a)}.lottery-modal__logo{width:auto;height:36px;max-width:120px;object-fit:contain;flex-shrink:0}.lottery-modal__footer{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;flex-wrap:wrap;padding-top:.25rem}.lottery-modal__footer--complete{justify-content:space-between;gap:.75rem}.lottery-modal__footer-secondary,.lottery-modal__footer-primary{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.lottery-modal__footer-primary{margin-left:auto}.lottery-modal .btn-primary--quiet{background:transparent;color:var(--accent, #1f6b9a);border:1px solid color-mix(in srgb,var(--accent, #1f6b9a) 45%,var(--border, #c5cdd6));box-shadow:none}.lottery-modal .btn-primary--quiet:hover:not(:disabled){background:color-mix(in srgb,var(--accent, #1f6b9a) 10%,transparent)}.lottery-error{margin:0 1.25rem .75rem;padding:.65rem .85rem;border-radius:8px;background:color-mix(in srgb,#c0392b 12%,transparent);color:#a93226;font-size:.9rem}.lottery-options{padding:1.15rem 1.35rem 1.25rem;display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0;overflow:auto}.lottery-options__lead{margin:0;line-height:1.5;color:var(--text-muted, #5a6a7a);font-size:.95rem}.lottery-options__panel{display:flex;flex-direction:column;gap:.95rem;padding:1rem 1.05rem;border-radius:12px;border:1px solid var(--border, #d5dde6);background:color-mix(in srgb,var(--surface, #fff) 70%,#eef3f8)}.lottery-options__field{display:flex;flex-direction:column;gap:.45rem}.lottery-options__label{font-weight:650;font-size:.82rem;letter-spacing:.02em;color:var(--text, #152838)}.lottery-speed{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;padding:.25rem;border-radius:10px;background:color-mix(in srgb,var(--surface, #fff) 55%,#d7e0ea);border:1px solid var(--border, #d5dde6)}.lottery-speed__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;border-radius:8px;padding:.5rem .35rem;font:inherit;font-size:.88rem;font-weight:650;color:var(--text-muted, #5a6a7a);cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.lottery-speed__btn:hover{color:var(--text, #152838)}.lottery-speed__btn.is-active{background:var(--surface, #fff);color:var(--accent, #1f6b9a);box-shadow:0 1px 3px #1432501f}.lottery-options__switch{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto;column-gap:.7rem;align-items:center;cursor:pointer;font-size:.92rem;color:var(--text, #152838)}.lottery-options__switch input{position:absolute;opacity:0;width:1px;height:1px}.lottery-options__switch-ui{width:2.4rem;height:1.35rem;border-radius:999px;background:#c5d0db;border:1px solid #b0bcc8;position:relative;transition:background .18s ease,border-color .18s ease;flex-shrink:0}.lottery-options__switch-ui:after{content:"";position:absolute;top:1px;left:2px;width:1.05rem;height:1.05rem;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .18s ease}.lottery-options__switch input:checked+.lottery-options__switch-ui{background:color-mix(in srgb,var(--accent, #1f6b9a) 75%,#2f9e7a);border-color:transparent}.lottery-options__switch input:checked+.lottery-options__switch-ui:after{transform:translate(1rem)}.lottery-options__switch input:focus-visible+.lottery-options__switch-ui{outline:2px solid var(--accent, #1f6b9a);outline-offset:2px}.lottery-options__switch-label{line-height:1.35}.lottery-options__meta{margin:0;font-size:.8rem;color:var(--text-muted, #5a6a7a)}.lottery-prep{padding:1.15rem 1.35rem 1.25rem;display:flex;flex-direction:column;gap:1.1rem;overflow:auto}.lottery-prep__lead{margin:0;line-height:1.5;color:var(--text-muted, #5a6a7a);font-size:.95rem}.lottery-prep__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.lottery-prep__stat{display:flex;flex-direction:column;gap:.2rem;align-items:center;text-align:center;padding:.75rem .5rem;border-radius:12px;border:1px solid var(--border, #d5dde6);background:color-mix(in srgb,var(--surface, #fff) 65%,#e8f0f6)}.lottery-prep__stat-value{font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--text, #152838);line-height:1.1}.lottery-prep__stat-label{font-size:.7rem;font-weight:650;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted, #5a6a7a)}.lottery-prep__choices{display:flex;flex-direction:column;gap:.65rem}.lottery-prep__choice{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;display:flex;flex-direction:column;gap:.4rem;padding:.95rem 1.05rem;border-radius:12px;border:1px solid var(--border, #d5dde6);background:var(--surface, #fff);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .15s ease}.lottery-prep__choice:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent, #1f6b9a) 45%,var(--border, #d5dde6));box-shadow:0 6px 18px #14325014;transform:translateY(-1px)}.lottery-prep__choice:disabled{opacity:.65;cursor:wait}.lottery-prep__choice--primary{border-color:color-mix(in srgb,var(--accent, #1f6b9a) 40%,var(--border, #d5dde6));background:linear-gradient(160deg,color-mix(in srgb,var(--accent, #1f6b9a) 10%,#fff),var(--surface, #fff) 55%)}.lottery-prep__choice-title{font-size:.98rem;font-weight:750;color:var(--text, #152838)}.lottery-prep__choice--primary .lottery-prep__choice-title{color:var(--accent, #1f6b9a)}.lottery-prep__choice-desc{font-size:.84rem;line-height:1.45;color:var(--text-muted, #5a6a7a)}.lottery-prep .lottery-modal__footer{justify-content:flex-start;border-top:1px solid var(--border, #d5dde6);padding-top:.95rem;margin-top:.15rem}.lottery-options__toggle{display:flex;align-items:center;gap:.55rem;font-size:.95rem;cursor:pointer}.lottery-stage{display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,1.15fr);gap:1.25rem;padding:0 1.25rem 1rem;align-items:stretch;flex:1;min-height:0;overflow:hidden}.lottery-stage__heading{margin:0 0 .75rem;font-size:1.05rem;letter-spacing:.02em}.lottery-stage__left{display:flex;flex-direction:column;align-items:center;gap:.85rem;min-height:0;overflow:auto}.lottery-stage__right{min-height:0;height:100%;overflow:auto;border-radius:12px;background:radial-gradient(120% 80% at 0% 0%,rgba(20,90,140,.06),transparent 55%),linear-gradient(180deg,#f7f9fb,#eef2f6);border:1px solid #d5dde6}.lottery-bowl{position:relative;margin:0 auto;filter:drop-shadow(0 14px 22px rgba(15,40,70,.22))}.lottery-bowl__glass{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.55),transparent 42%),radial-gradient(circle at 70% 75%,rgba(120,170,210,.18),transparent 50%),linear-gradient(160deg,#dcebf559,#a0bed733);border:2px solid rgba(255,255,255,.65);box-shadow:inset 0 -18px 36px #1e466e1f,inset 0 10px 24px #ffffff59,0 0 0 1px #5a789640;overflow:hidden}.lottery-bowl__rim{position:absolute;top:4%;right:4%;bottom:4%;left:4%;border-radius:50%;border:1px solid rgba(255,255,255,.4);pointer-events:none}.lottery-bowl__reflection{position:absolute;top:8%;left:14%;width:42%;height:28%;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.55),transparent);pointer-events:none}.lottery-bowl__shadow-inner{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:inset 0 -30px 40px #14325026;pointer-events:none}.lottery-bowl__balls{position:absolute;top:0;right:0;bottom:0;left:0}.lottery-bowl__base{position:absolute;left:22%;right:22%;bottom:2%;height:10%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(40,70,100,.2),transparent 70%);pointer-events:none}.lottery-ball{position:absolute;top:0;left:0;border-radius:50%;will-change:transform;transition:opacity .35s ease,filter .35s ease}.lottery-ball__core{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#e8eef4 28%,#7a93a8 72%,#3d5568);box-shadow:inset 0 -2px 4px #00000040,0 2px 4px #0000002e}.lottery-ball__shine{position:absolute;top:14%;left:18%;width:38%;height:28%;border-radius:50%;background:#ffffffb3;z-index:1;pointer-events:none}.lottery-ball--selected .lottery-ball__core,.lottery-ball--exiting .lottery-ball__core{background:radial-gradient(circle at 35% 30%,#fff,#f5e6c8 30%,#c9a04a 70%,#8a6a20);filter:drop-shadow(0 0 8px rgba(201,160,74,.7))}.lottery-ball--exiting{animation:lottery-ball-exit .55s ease forwards}@keyframes lottery-ball-exit{0%{opacity:1}to{opacity:0;transform:translate(var(--exit-x, 40px),var(--exit-y, -80px)) scale(1.35)}}.lottery-remaining{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;width:100%;max-width:280px}.lottery-remaining__block{display:flex;flex-direction:column;gap:.2rem;text-align:center}.lottery-remaining__label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#5a6a7a;font-weight:700}.lottery-remaining__value{font-size:1.85rem;font-weight:800;font-variant-numeric:tabular-nums;color:#1a3348;animation:lottery-count-pop .35s ease}.lottery-remaining__last{font-size:.92rem;font-weight:650;color:#243848;min-height:1.3em}@keyframes lottery-count-pop{0%{transform:scale(1.25);opacity:.5}to{transform:scale(1);opacity:1}}.lottery-progress{width:100%;max-width:280px}.lottery-progress__header{display:flex;justify-content:space-between;font-size:.8rem;font-weight:650;color:#3a4a5a;margin-bottom:.35rem}.lottery-progress__track{height:8px;border-radius:999px;background:#d7e0ea;overflow:hidden}.lottery-progress__fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#1f6b9a,#2f9e7a);transition:width .35s ease}.lottery-reveal{min-height:72px;display:flex;align-items:center;justify-content:center;width:100%;max-width:280px}.lottery-reveal--empty{min-height:72px}.lottery-reveal__orb{width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#f5e6c8 30%,#c9a04a 70%,#8a6a20);box-shadow:0 0 18px #c9a04a8c;animation:lottery-orb-spin .8s ease;position:relative}.lottery-reveal__orb-shine{position:absolute;top:12%;left:16%;width:40%;height:30%;border-radius:50%;background:#ffffffbf}.lottery-reveal--opening .lottery-reveal__orb{animation:lottery-orb-open .7s ease forwards}.lottery-reveal__card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.7rem 1rem;border-radius:12px;background:linear-gradient(160deg,#fff,#eef4f9);border:1px solid #c9d5e2;box-shadow:0 10px 28px #14325029;animation:lottery-card-in .45s cubic-bezier(.2,.9,.3,1.15);max-width:100%}.lottery-reveal--flying .lottery-reveal__card{animation:lottery-card-fly .65s ease forwards}.lottery-reveal__seed{font-size:.7rem;font-weight:800;letter-spacing:.08em;color:#8a6a20;text-transform:uppercase}.lottery-reveal__name{font-size:1rem;font-weight:750;text-align:center;color:#152838;word-break:break-word}@keyframes lottery-orb-spin{0%{transform:scale(.6) rotate(-120deg);opacity:.4}to{transform:scale(1) rotate(0);opacity:1}}@keyframes lottery-orb-open{0%{transform:scale(1) rotate(0);opacity:1}55%{transform:scale(1.35) rotate(180deg);opacity:.85}to{transform:scale(.2) rotate(280deg);opacity:0}}@keyframes lottery-card-in{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}@keyframes lottery-card-fly{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(40%,-30%) scale(.55);opacity:.15}}.lottery-bracket-preview{padding:.85rem .75rem 1rem}.lottery-bracket-preview__title{margin:0 0 .65rem;padding:0 .35rem;font-size:1.05rem}.lottery-bracket-preview__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.28rem}.lottery-bracket-preview__slot{display:grid;grid-template-columns:4.5rem 1fr;gap:.5rem;align-items:center;padding:.35rem .55rem;border-radius:8px;border:1px solid transparent;background:#ffffff8c;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease}.lottery-bracket-preview__slot-num{font-size:.72rem;font-weight:700;color:#6a7a8a;text-transform:uppercase;letter-spacing:.03em}.lottery-bracket-preview__slot-name{font-size:.88rem;font-weight:600;color:#9aa8b5;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lottery-bracket-preview__slot--filled .lottery-bracket-preview__slot-name{color:#152838}.lottery-bracket-preview__slot--bye .lottery-bracket-preview__slot-name{color:#7a8896;font-style:italic}.lottery-bracket-preview__slot--reserved .lottery-bracket-preview__slot-name{color:#1f6b9a}.lottery-bracket-preview__slot--highlight{border-color:#2f9e7a;background:#2f9e7a1f;box-shadow:0 0 0 2px #2f9e7a33}.lottery-bracket-preview__slot--pulse{animation:lottery-slot-pulse .8s ease}@keyframes lottery-slot-pulse{0%{transform:scale(1);box-shadow:0 0 #2f9e7a80}40%{transform:scale(1.02);box-shadow:0 0 16px #2f9e7a73}to{transform:scale(1);box-shadow:0 0 #2f9e7a00}}.lottery-complete{padding:0 1.25rem 1.25rem;flex-shrink:0;border-top:1px solid var(--border, #d5dde6);background:color-mix(in srgb,var(--surface, #fff) 90%,#eef4f0)}.lottery-complete__banner{text-align:center;font-size:1.05rem;font-weight:800;letter-spacing:.1em;color:#146b4a;padding:.75rem 1rem;margin:.85rem 0 .95rem;border-radius:10px;background:radial-gradient(circle at 50% 0%,rgba(47,158,122,.18),transparent 60%),linear-gradient(180deg,#e8f7f0,#d8efe4);border:1px solid rgba(47,158,122,.35);animation:lottery-complete-glow 1.2s ease}@keyframes lottery-complete-glow{0%{transform:scale(.96);opacity:.4;filter:brightness(1.2)}to{transform:scale(1);opacity:1;filter:brightness(1)}}@media (max-width: 840px){.lottery-stage{grid-template-columns:1fr}.lottery-stage__right{max-height:none}.lottery-prep__stats{grid-template-columns:1fr}.lottery-modal__footer--complete{flex-direction:column;align-items:stretch}.lottery-modal__footer-primary,.lottery-modal__footer-secondary{width:100%}.lottery-modal__footer-primary{margin-left:0}.lottery-modal__footer-primary .btn-primary,.lottery-modal__footer-secondary .btn-secondary{flex:1}}@media (min-width: 1400px){.lottery-modal--wide{max-width:min(96vw,1280px)}}@media (prefers-reduced-motion: reduce){.lottery-ball,.lottery-reveal__orb,.lottery-reveal__card,.lottery-bracket-preview__slot--pulse,.lottery-complete__banner,.lottery-remaining__value{animation:none!important}}.tif-body{display:flex;flex-direction:column;gap:1.25rem}.tif-tabs{display:flex;gap:.375rem;flex-wrap:wrap;align-items:center}.tif-tab{padding:.4rem .9rem;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .12s,color .12s,border-color .12s}.tif-tab:hover{color:var(--text);border-color:var(--text-faint);background:var(--surface-raised)}.tif-tab--active{background:var(--accent-dim);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);font-weight:600}.tif-settings-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:visible}.tif-settings-bar-head{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.tif-settings-bar-name{flex:1;min-width:160px;padding:.45rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:inherit;font-size:.9rem;transition:border-color .12s,box-shadow .12s}.tif-settings-bar-name:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tif-settings-bar-actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.tif-settings-bar-body{display:grid;grid-template-columns:1fr auto;gap:0;align-items:stretch;position:relative;overflow:visible}.tif-settings-controls{display:flex;align-items:center;gap:1.5rem;padding:.85rem 1.25rem;flex-wrap:wrap;border-right:1px solid var(--border)}.tif-layout-group{display:flex;flex-direction:column;gap:.3rem}.tif-field-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.tif-dims{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.tif-dim-field{display:flex;flex-direction:column;gap:.3rem}.tif-dim-input{width:4.5rem;padding:.4rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:inherit;font-size:.875rem;text-align:center;transition:border-color .12s,box-shadow .12s}.tif-dim-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.tif-toggles-inline{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.tif-toggle-chip{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.tif-toggle-chip-label{font-size:.82rem;font-weight:500;color:var(--text-muted);transition:color .12s}.tif-toggle-chip:has(input:checked) .tif-toggle-chip-label{color:var(--text)}.tif-share-panel{display:flex;flex-direction:column;justify-content:center;gap:.5rem;padding:.85rem 1.25rem;min-width:260px;max-width:320px;position:absolute;right:0}.tif-share-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.tif-share-row{display:flex;gap:.4rem;align-items:center;position:relative;z-index:2}.tif-share-input{flex:1;min-width:0;padding:.4rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);font-family:monospace;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tif-share-open{font-size:.78rem;color:var(--accent);text-decoration:none;transition:opacity .12s}.tif-share-open:hover{opacity:.75;text-decoration:underline}.tif-share-menu{position:absolute;top:calc(100% + .35rem);left:0;display:flex;flex-direction:column;gap:.25rem;min-width:220px;padding:.35rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:0 10px 24px #00000029;z-index:1000;isolation:isolate}.tif-share-menu-item{width:100%;padding:.45rem .6rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);text-align:left;font:inherit;cursor:pointer}.tif-share-menu-item:hover{background:var(--surface-raised)}.tif-create-wrap{position:relative}.tif-create-menu{position:absolute;top:calc(100% + .35rem);right:0;display:flex;flex-direction:column;gap:.25rem;min-width:280px;padding:.35rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:0 10px 24px #00000029;z-index:1000}.tif-create-menu-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.55rem .7rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);text-align:left;font:inherit;cursor:pointer}.tif-create-menu-item strong{font-size:.9rem;font-weight:650}.tif-create-menu-item span{font-size:.75rem;color:var(--text-muted);line-height:1.35}.tif-create-menu-item:hover{background:var(--surface-raised)}.tif-create-choices{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center}.tif-preview-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.tif-preview-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.tif-preview-count{font-size:.8rem}.tif-grid{display:grid;gap:.75rem}.tif-grid--rows{grid-template-columns:1fr}.tif-grid--columns{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.tif-grid--singleMatch{grid-template-columns:1fr;grid-template-rows:minmax(180px,1fr)}.tif-section{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.1rem 1rem;min-height:110px;border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font-family:inherit;text-align:center;transition:border-color .14s,background .14s;position:relative}.tif-section:hover{border-color:var(--accent);background:var(--accent-dim)}.tif-section--assigned{border-style:solid;border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.tif-section-num{position:absolute;top:.5rem;left:.65rem;font-size:.62rem;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}.tif-section-match{display:flex;flex-direction:column;align-items:center;gap:.25rem;width:100%;padding:0 .25rem}.tif-section-team{font-size:.85rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.tif-section-cat{font-size:.68rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;padding:.1rem .5rem;background:var(--accent-dim);border-radius:999px;margin:.1rem 0}.tif-section-empty{font-size:.78rem;color:var(--text-faint)}.tif-match-picker{display:flex;flex-direction:column;gap:.375rem;max-height:55vh;overflow-y:auto}.tif-match-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .12s,background .12s;flex-wrap:wrap}.tif-match-item:hover,.tif-match-item--active{border-color:var(--accent);background:var(--accent-dim)}.tif-match-item:disabled,.tif-match-item--assigned{cursor:not-allowed;opacity:.55}.tif-match-item:disabled:hover,.tif-match-item--assigned:hover{border-color:var(--border);background:var(--surface-raised)}.tif-match-assigned-hint{font-size:.68rem;font-weight:600;color:var(--text-muted);margin-left:auto;flex-shrink:0}.tif-match-cat{font-size:.7rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;min-width:2.5rem}.tif-match-teams{flex:1;font-size:.875rem;font-weight:500;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tif-match-vs{font-size:.72rem;color:var(--text-muted);font-weight:400;margin:0 .2rem}@media (max-width: 860px){.tif-settings-bar-body{grid-template-columns:1fr}.tif-share-panel{max-width:none;border-top:1px solid var(--border);border-right:none}}@media (max-width: 600px){.tif-grid--columns{grid-template-columns:1fr}.tif-settings-controls{gap:1rem}}.oop-iface-board{display:flex;flex-direction:column;min-height:0;flex:1}.oop-iface-board .table-wrap{overflow:auto;min-height:0;flex:1}.oop-iface-board--compact{max-height:min(70vh,720px)}.oop-iface-board--compact .table-wrap{max-height:min(60vh,640px)}.piv-page--orderOfPlay{--text: #f2f6fb;--text-muted: rgba(210, 225, 245, .72);--text-faint: rgba(180, 205, 235, .45);--border: rgba(148, 180, 220, .18);--accent: #3b82f6;grid-template-rows:1fr auto}.piv-page--orderOfPlay.piv-page--light{--text: #0a1628;--text-muted: rgba(10, 22, 40, .62);--text-faint: rgba(10, 22, 40, .4);--border: rgba(15, 35, 60, .14);--accent: #2563eb}.piv-page--orderOfPlay .piv-footer{padding:clamp(.9rem,2.2vh,1.75rem) clamp(.65rem,2vw,1.5rem);min-height:clamp(88px,14vh,160px)}.piv-page--orderOfPlay .piv-sponsors-strip{gap:clamp(.85rem,2.2vw,1.75rem);height:100%}.piv-page--orderOfPlay .piv-sponsor-logo{height:clamp(64px,11vh,128px);max-width:min(280px,28vw)}.piv-main--oop{overflow:hidden;padding:clamp(.5rem,1.2vh,1rem) clamp(.5rem,1.5vw,1.25rem);display:flex;flex-direction:column;min-height:0}.piv-page--orderOfPlay .matches-date-tabs{flex-shrink:0;margin-bottom:clamp(.5rem,1vh,.85rem)}.piv-page--orderOfPlay .matches-date-tab{border-color:var(--border);color:var(--text-muted);background:#ffffff0a;font-size:clamp(.95rem,1.4vw,1.25rem);padding:.45rem 1rem}.piv-page--orderOfPlay .matches-date-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.piv-page--orderOfPlay .matches-grid-table{font-size:clamp(1rem,1.65vw,1.45rem)}.piv-page--orderOfPlay .matches-grid-table thead th{font-size:clamp(.95rem,1.5vw,1.3rem);padding:clamp(.55rem,1vh,.85rem) clamp(.5rem,1vw,.85rem)}.piv-page--orderOfPlay .matches-grid-table tbody td{padding:clamp(.45rem,.9vh,.75rem) clamp(.45rem,1vw,.75rem)}.piv-page--orderOfPlay .matches-grid-table tbody td:first-child{font-size:clamp(1rem,1.55vw,1.35rem)}.piv-page--orderOfPlay .matches-grid-match{background:#ffffff0a;color:var(--text);cursor:pointer;font-size:inherit;padding:.4rem .4rem .45rem}.piv-page--orderOfPlay.piv-page--light .matches-grid-match{background:#0a162808}.piv-page--orderOfPlay.piv-page--light .matches-date-tab{background:#0a16280a}.piv-page--orderOfPlay.piv-page--light .draws-page-table tbody tr:hover{background:#0a162808}.piv-page--orderOfPlay .matches-grid-section{padding:clamp(.35rem,.8vh,.55rem) clamp(.4rem,.9vw,.6rem);min-height:1.55rem;line-height:1.3}.piv-page--orderOfPlay .matches-grid-match:disabled{cursor:default;opacity:1}.piv-page--orderOfPlay .matches-grid-section--score{color:var(--text-muted);font-size:.92em}.piv-page--orderOfPlay .draws-page-table tbody tr:hover{background:#ffffff08}.bsc{--bsc-navy: #0a1628;--bsc-navy-raised: #0f1f38;--bsc-navy-set: #122540;--bsc-bg: var(--bsc-navy);--bsc-text: #ffffff;--bsc-muted: rgba(180, 205, 235, .55);--bsc-faint: rgba(148, 180, 220, .28);--bsc-line: rgba(148, 180, 220, .14);--bsc-serve: #ffd600;--bsc-won: #00e676;--bsc-accent: #00b8ff;--bsc-break: #ff6b00;--bsc-live: #ef4444;width:100%;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;color:var(--bsc-text);background:transparent;box-sizing:border-box;container-type:size;container-name:bsc}.bsc--compact{gap:clamp(.15rem,.8cqmin,.45rem)}.bsc--hero{gap:clamp(.25rem,1cqmin,.75rem)}.bsc-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;flex-shrink:0}.bsc-meta-left{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0}.bsc-meta-cat{font-size:clamp(.55rem,3.2cqmin,1.1rem);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--bsc-accent)}.bsc-meta-status{display:inline-flex;align-items:center;gap:.35rem;font-size:clamp(.5rem,2.8cqmin,.95rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.15em .65em;border-radius:999px;border:1px solid var(--bsc-faint);color:var(--bsc-muted)}.bsc-meta-status--live{color:var(--bsc-live);border-color:color-mix(in srgb,var(--bsc-live) 45%,transparent);background:color-mix(in srgb,var(--bsc-live) 12%,transparent)}.bsc-meta-live-dot{width:.6rem;height:.6rem;border-radius:50%;background:var(--bsc-live);box-shadow:0 0 0 1.5px #ef444433;animation:bsc-meta-live-pulse 1.2s ease-in-out infinite;flex-shrink:0}.bsc-meta-live-text{line-height:1;font-size:small}@keyframes bsc-meta-live-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.85}}.bsc-meta-timer{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.bsc-meta-timer-value{font-weight:900;font-variant-numeric:tabular-nums;font-size:clamp(.85rem,4.5cqmin,2rem);letter-spacing:.04em}.bsc-meta-timer-label{font-size:clamp(.45rem,2cqmin,.75rem);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--bsc-muted)}.bsc-badge-row{display:flex;justify-content:center;align-items:center;flex-shrink:0;min-height:clamp(1.1rem,5cqmin,2.4rem)}.bsc-badge{font-weight:900;font-size:clamp(.55rem,3.4cqmin,1.35rem);letter-spacing:.12em;text-transform:uppercase;padding:.28em 1.2em;border-radius:999px;line-height:1}.bsc-badge--spacer{visibility:hidden;padding:.28em 1.2em}.bsc-badge--set{background:var(--bsc-accent);color:#000}.bsc-badge--break{background:var(--bsc-break);color:#fff}.bsc-badge--match{background:var(--bsc-won);color:#000}.bsc-badge--tb{background:var(--bsc-serve);color:#000}.bsc-set-headers{display:flex;align-items:center;flex-shrink:0;padding:0 clamp(.35rem,1.5cqmin,1rem)}.bsc-set-header{width:clamp(3.5rem,16cqmin,9rem);text-align:center;font-weight:800;font-size:clamp(.5rem,2.4cqmin,.95rem);letter-spacing:.1em;text-transform:uppercase;color:var(--bsc-faint)}.bsc-set-header--current{color:var(--bsc-text)}.bsc-teams{flex:1;min-height:0;display:flex;flex-direction:column;border-top:1px solid var(--bsc-line)}.bsc-team-row{flex:1;min-height:0;display:flex;align-items:center;border-left:4px solid transparent;border-bottom:1px solid var(--bsc-line);padding:.15rem clamp(.35rem,1.5cqmin,1.25rem);transition:border-color .25s ease}.bsc-team-row--serving{border-left-color:var(--bsc-serve)}.bsc-team-row--winner .bsc-player-name{color:var(--bsc-won)}.bsc-col-names{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:clamp(.15rem,1cqmin,.55rem)}.bsc-col-sets-game-container{display:flex;align-items:center;justify-content:flex-end;gap:1.5rem}.bsc-col-game{flex:1;display:flex;align-items:center;justify-content:center}.bsc-col-sets{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:clamp(.35rem,1.5cqmin,1rem);flex-wrap:nowrap;min-width:0}.bsc-set-headers .bsc-col-names{width:32%}.bsc-set-headers .bsc-col-game{width:22%}.bsc-set-headers .bsc-col-sets{width:46%}.bsc-player{display:flex;align-items:center;gap:clamp(.2rem,.8cqmin,.45rem);min-width:0}.bsc-serve-slot{width:clamp(14px,3.5cqmin,32px);height:clamp(14px,3.5cqmin,32px);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.bsc-serve-slot svg{width:100%;height:100%}.bsc-player-visuals{display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0}.bsc-player-photo,.bsc-player-fallback{width:clamp(16px,4.5cqmin,40px);height:clamp(16px,4.5cqmin,40px);border-radius:50%;object-fit:cover;border:1px solid var(--bsc-faint)}.bsc-player-fallback{display:inline-flex;align-items:center;justify-content:center;font-size:clamp(.4rem,2cqmin,.75rem);font-weight:700;background:color-mix(in srgb,var(--bsc-navy-raised) 70%,#fff 8%);color:var(--bsc-muted)}.bsc-player-flag{width:clamp(12px,3.2cqmin,28px);height:auto;border-radius:2px;border:1px solid var(--bsc-faint)}.bsc-player-name{font-weight:900;font-size:clamp(.65rem,min(5.5cqi,9cqmin),2.75rem);letter-spacing:-.03em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.bsc--hero .bsc-player-name{font-size:clamp(1.1rem,min(4.2vw,8cqmin),3.25rem)}.bsc-game-score{font-weight:900;font-variant-numeric:tabular-nums;font-size:clamp(2.5rem,min(24cqmin,18cqi),10rem);letter-spacing:-.04em;line-height:1}.bsc--hero .bsc-game-score{font-size:clamp(5rem,min(20vw,32cqmin),16rem)}.bsc-game-score--ad{color:var(--bsc-won)}.bsc-set-box{position:relative;width:clamp(3.5rem,16cqmin,9rem);height:clamp(3.5rem,16cqmin,9rem);display:flex;align-items:center;justify-content:center;border:3px solid var(--bsc-faint);border-radius:8px;background:color-mix(in srgb,var(--bsc-navy-set) 88%,transparent);flex-shrink:0;opacity:.55}.bsc-set-box--current{border-color:#dcebffd9;background:color-mix(in srgb,var(--bsc-navy-set) 75%,#1a3a5c);opacity:1}.bsc-set-box--won{border-color:var(--bsc-won);background:color-mix(in srgb,var(--bsc-won) 12%,var(--bsc-navy-set));opacity:1}.bsc-set-box--won .bsc-set-score{color:var(--bsc-won)}.bsc-set-box--lost{opacity:.45}.bsc-set-box--empty{opacity:.25;border-style:dashed}.bsc-set-score{font-weight:900;font-variant-numeric:tabular-nums;font-size:clamp(1.75rem,12cqmin,5.5rem);letter-spacing:-.02em;line-height:1;color:#ffffffd9}.bsc--hero .bsc-set-box{width:clamp(5rem,11vw,11rem);height:clamp(5rem,11vw,11rem);border-width:4px}.bsc--hero .bsc-set-header{width:clamp(5rem,11vw,11rem);font-size:clamp(.65rem,1.2vw,1.1rem)}.bsc--hero .bsc-set-score{font-size:clamp(2.75rem,8vw,7rem)}.bsc-set-box--current .bsc-set-score{color:#fff}.bsc-set-tb{position:absolute;top:4px;right:6px;font-weight:800;font-size:clamp(.65rem,3cqmin,1.35rem);color:var(--bsc-serve);line-height:1}.bsc--hero .bsc-set-tb{font-size:clamp(.9rem,1.8vw,1.75rem);top:6px;right:8px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.piv-page{--piv-navy: #0a1628;--piv-navy-raised: #0f1f38;--piv-navy-tile: #0c1a30;--piv-navy-hover: #122540;--piv-navy-line: rgba(148, 180, 220, .14);--piv-navy-line-strong: rgba(180, 205, 235, .22);--piv-navy-faint: rgba(180, 205, 235, .35);position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto 1fr auto;background:var(--piv-navy);color:#fff;font-family:var(--font-sans);overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.piv-page--broadcast{background:var(--piv-navy);color:#fff}.piv-page--broadcast .piv-header,.piv-page--broadcast .piv-footer{background:var(--piv-navy);border-color:var(--piv-navy-line)}.piv-page--broadcast .piv-header-title,.piv-page--broadcast .piv-footer-name{color:#fff}.piv-page--broadcast .piv-section{background:var(--piv-navy);border-color:var(--piv-navy-line)}.piv-page--broadcast .piv-section--empty{color:var(--piv-navy-faint)}.piv-page--broadcast .piv-section:hover:not(:disabled){background:var(--piv-navy-hover);border-color:var(--piv-navy-line-strong)}.piv-page:not(.piv-page--broadcast) .piv-section:not(.piv-section--empty){background:var(--piv-navy-tile);border-color:var(--piv-navy-line);color:#fff}.piv-page:not(.piv-page--broadcast) .piv-section:not(.piv-section--empty):hover:not(:disabled){background:var(--piv-navy-hover);border-color:var(--piv-navy-line-strong)}.piv-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(.25rem,.6vw,.55rem);padding:clamp(.12rem,.35vh,.3rem) clamp(.4rem,1.2vw,1.15rem);border-bottom:1px solid var(--piv-navy-line);background:color-mix(in srgb,var(--piv-navy-raised) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.piv-header-side{display:flex;align-items:center;min-width:0}.piv-header-side--right{justify-content:flex-end}.piv-header-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;min-width:0;text-align:center}.piv-header-sport{font-weight:900;font-size:clamp(.7rem,1.4vw,1.35rem);letter-spacing:.2em;text-transform:uppercase;color:#00b8ff}.piv-header-text-block{display:flex;flex-direction:column;gap:.05rem;min-width:0}.piv-header-kicker{font-weight:800;font-size:clamp(.6rem,1vw,.85rem);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.piv-header-sub{font-size:clamp(.48rem,.75vw,.68rem);letter-spacing:.06em;text-transform:uppercase}.piv-header-logo{max-height:clamp(52px,8.5vh,104px);max-width:clamp(120px,20vw,280px);width:auto;height:auto;object-fit:contain}.piv-header-logo--right{margin-left:auto}.piv-header-title{font-size:calc(var(--piv-section-scale, 1) * clamp(.85rem,calc(1.7vw + .3vmin),2.4rem));font-weight:700;letter-spacing:-.02em;text-align:center;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.05}.piv-header-title--sm{font-size:clamp(.62rem,1.1vw,.95rem);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#ffffff8c}.piv-main{min-height:0;height:100%;padding:clamp(.2rem,.6vmin,.65rem);display:flex;flex-direction:column;box-sizing:border-box}.piv-canvas{flex:1;min-height:0;height:100%;display:grid;gap:clamp(.2rem,.55vmin,.65rem);box-sizing:border-box}.piv-canvas--rows{grid-template-columns:1fr}.piv-canvas--columns{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.piv-canvas--singleMatch{grid-template-columns:1fr;grid-template-rows:1fr}.piv-section{container-type:size;container-name:piv-section;display:flex;align-items:stretch;justify-content:stretch;width:100%;height:100%;min-height:0;min-width:0;border:1px solid var(--piv-navy-line);border-radius:clamp(6px,1vmin,14px);background:var(--piv-navy-tile);cursor:pointer;font-family:inherit;padding:calc(var(--piv-section-scale, 1) * clamp(.35rem,1.1cqmin,1rem));box-sizing:border-box;transition:background .15s,border-color .15s;overflow:hidden}.piv-section:hover:not(:disabled){background:var(--piv-navy-hover);border-color:var(--piv-navy-line-strong)}.piv-section:disabled{cursor:default}.piv-section--empty{align-items:center;justify-content:center;color:var(--text-faint);font-size:calc(var(--piv-section-scale, 1) * clamp(.88rem,6cqmin,1.9rem));line-height:1.25;text-align:center}.piv-section--hero{border-radius:0;border:none;padding:clamp(.25rem,1cqmin,.75rem)}.piv-section--hero:hover:not(:disabled){background:inherit;border-color:transparent}.piv-scorecard{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;justify-content:space-between;gap:calc(var(--piv-section-scale, 1) * clamp(.2rem,.7cqmin,.55rem));box-sizing:border-box}.piv-scorecard-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.piv-scorecard-cat{font-size:calc(var(--piv-section-scale, 1) * clamp(.68rem,3.8cqmin,1.42rem));font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);background:var(--accent-dim);padding:clamp(.12rem,.35vmin,.22rem) clamp(.4rem,1vmin,.75rem);border-radius:999px;line-height:1.2}.piv-scorecard-status{font-size:calc(var(--piv-section-scale, 1) * clamp(.62rem,3.45cqmin,1.22rem));font-weight:600;text-transform:uppercase;letter-spacing:.07em;padding:clamp(.12rem,.35vmin,.22rem) clamp(.4rem,1vmin,.65rem);border-radius:999px;border:1px solid;line-height:1.2}.piv-scorecard-status--live{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:var(--accent-dim)}.piv-scorecard-status--scheduled{color:var(--piv-navy-faint);border-color:var(--piv-navy-line)}.piv-scorecard-status--complete{color:#60a5fa;border-color:#60a5fa66;background:#60a5fa14}.piv-scorecard-info{font-size:calc(var(--piv-section-scale, 1) * clamp(.68rem,3.55cqmin,1.32rem));color:var(--text-muted);display:flex;gap:clamp(.35rem,1cqmin,.95rem);flex-wrap:wrap;line-height:1.3}.piv-score-table{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) repeat(var(--set-cols, 3),calc(var(--piv-section-scale, 1) * clamp(1.75rem,10.5cqi,7rem))) calc(var(--piv-section-scale, 1) * clamp(2rem,11.5cqi,7.5rem));gap:calc(var(--piv-section-scale, 1) * clamp(.15rem,.9cqmin,.45rem)) calc(var(--piv-section-scale, 1) * clamp(.2rem,1cqmin,.65rem));align-items:center;align-content:center}.piv-score-header{font-size:calc(var(--piv-section-scale, 1) * clamp(.6rem,3.25cqmin,1.42rem));font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--text-faint);text-align:center;line-height:1.15}.piv-score-header--team{text-align:left}.piv-score-team{container-type:inline-size;container-name:piv-team;display:flex;flex-direction:column;gap:calc(var(--piv-section-scale, 1) * clamp(.08rem,.6cqmin,.22rem));min-width:0;text-align:left}.piv-score-player{display:flex;align-items:center;gap:calc(var(--piv-section-scale, 1) * clamp(.2rem,.5vmin,.4rem));min-width:0}.piv-score-player-name{font-size:calc(var(--piv-section-scale, 1) * clamp(.58rem,min(6.2cqi,13.5cqmin),4.85rem));font-weight:650;letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);line-height:1.12}.piv-score-player-photo{width:calc(var(--piv-section-scale, 1) * clamp(22px,min(9cqi,7cqmin),64px));height:calc(var(--piv-section-scale, 1) * clamp(22px,min(9cqi,7cqmin),64px));border-radius:50%;object-fit:cover;border:1px solid var(--piv-navy-line);flex-shrink:0}.piv-score-player-fallback{width:calc(var(--piv-section-scale, 1) * clamp(22px,min(9cqi,7cqmin),64px));height:calc(var(--piv-section-scale, 1) * clamp(22px,min(9cqi,7cqmin),64px));border-radius:50%;background:var(--piv-navy-raised);border:1px solid var(--piv-navy-line);display:inline-flex;align-items:center;justify-content:center;font-size:calc(var(--piv-section-scale, 1) * clamp(.52rem,min(3.2cqi,3.8cqmin),1.2rem));font-weight:700;color:var(--piv-navy-faint);flex-shrink:0}.piv-score-player-flag{width:calc(var(--piv-section-scale, 1) * clamp(18px,min(6.5cqi,5cqmin),40px));height:auto;border-radius:2px;border:1px solid var(--piv-navy-line);flex-shrink:0}.piv-score-set{font-size:calc(var(--piv-section-scale, 1) * clamp(.74rem,14.5cqmin,5.35rem));font-weight:700;font-variant-numeric:tabular-nums;text-align:center;color:var(--text-muted);line-height:1.05;letter-spacing:-.02em}.piv-score-set--won{color:var(--text)}.piv-score-set--empty{color:var(--text-faint);font-weight:400}.piv-score-set .piv-modal-score-tb{font-size:calc(var(--piv-section-scale, 1) * clamp(.5rem,4.8cqmin,1.42rem));font-weight:600}.piv-score-current{font-size:calc(var(--piv-section-scale, 1) * clamp(.72rem,13cqmin,5rem));font-weight:750;font-variant-numeric:tabular-nums;text-align:center;color:var(--accent);line-height:1.05;background:var(--accent-dim);border-radius:calc(var(--piv-section-scale, 1) * clamp(4px,1cqmin,11px));padding:calc(var(--piv-section-scale, 1) * clamp(.1rem,.9cqmin,.32rem)) calc(var(--piv-section-scale, 1) * clamp(.2rem,1.2cqmin,.5rem));letter-spacing:-.02em}.piv-score-divider{grid-column:1 / -1;height:1px;background:var(--piv-navy-line);margin:clamp(.05rem,.2vmin,.15rem) 0}.piv-footer{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;box-sizing:border-box;padding:clamp(.6rem,1.4vh,1.1rem) clamp(.5rem,1.5vw,1.35rem);border-top:1px solid var(--piv-navy-line);background:color-mix(in srgb,var(--piv-navy-raised) 92%,transparent);min-height:clamp(72px,11vh,128px)}.piv-sponsors-strip{display:flex;flex-direction:row;align-items:center;justify-content:stretch;width:100%;min-width:0;gap:clamp(.65rem,1.8vw,1.5rem)}.piv-sponsor-item{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center}.piv-sponsor-logo{height:clamp(52px,9vh,104px);width:100%;max-width:min(280px,26vw);object-fit:cover}.piv-footer-name{font-size:clamp(1rem,2.1vmin,1.5rem);color:var(--text-muted);font-weight:500}@media (min-width: 1920px){.piv-score-player-name{font-size:calc(var(--piv-section-scale, 1) * clamp(.78rem,min(6.4cqi,14cqmin),5.5rem))}.piv-score-set{font-size:calc(var(--piv-section-scale, 1) * clamp(.88rem,15.5cqmin,6rem))}.piv-score-current{font-size:calc(var(--piv-section-scale, 1) * clamp(.82rem,14cqmin,5.5rem))}.piv-score-table{grid-template-columns:minmax(0,1fr) repeat(var(--set-cols, 3),calc(var(--piv-section-scale, 1) * clamp(1.95rem,11cqi,8rem))) calc(var(--piv-section-scale, 1) * clamp(2.25rem,12cqi,8.5rem))}}.piv-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--piv-navy) 82%,#000);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:1.5rem}.piv-modal{background:var(--piv-navy-raised);border:1px solid var(--piv-navy-line);border-radius:var(--radius);max-width:min(96vw,clamp(520px,42vw,920px));width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 24px 64px #0000008c;color:#fff}.piv-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:clamp(1rem,2vmin,1.5rem) clamp(1.25rem,2.5vmin,2rem);border-bottom:1px solid var(--piv-navy-line)}.piv-modal-header h2{margin:0;font-size:clamp(1.2rem,calc(2.65vmin + .45vw),2.35rem);font-weight:650;line-height:1.2}.piv-modal-close{background:none;border:none;color:var(--text-muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:.2rem;border-radius:6px;transition:color .12s,background .12s}.piv-modal-close:hover{color:#fff;background:var(--piv-navy-hover)}.piv-modal-body{padding:clamp(1.1rem,2.2vmin,1.75rem) clamp(1.25rem,2.5vmin,2rem);display:flex;flex-direction:column;gap:clamp(1rem,2vmin,1.5rem)}.piv-modal-section-title{font-size:clamp(.82rem,1.55vmin,1.12rem);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .6rem;line-height:1.2}.piv-modal-info-grid{display:grid;grid-template-columns:auto 1fr;gap:.35rem .85rem;font-size:clamp(1rem,1.85vmin,1.4rem);line-height:1.35}.piv-modal-info-key{color:var(--text-muted);font-weight:500;white-space:nowrap}.piv-modal-info-val{color:var(--text)}.piv-modal-score-table{display:grid;grid-template-columns:1fr repeat(var(--piv-modal-set-cols, 3),minmax(2.5rem,clamp(2.75rem,9vmin,5.75rem)));gap:.4rem .6rem;font-size:clamp(1.05rem,2vmin,1.5rem);align-items:center}.piv-modal-score-label{color:var(--text-muted);font-size:clamp(.8rem,1.5vmin,1.15rem);font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-align:center;line-height:1.15}.piv-modal-score-label--team{text-align:left}.piv-modal-score-team{font-weight:600;font-size:clamp(1.05rem,2.05vmin,1.55rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25}.piv-modal-score-val{font-size:clamp(1.15rem,calc(2.75vmin + .35vw),2.65rem);font-weight:700;font-variant-numeric:tabular-nums;text-align:center;color:var(--text);line-height:1.1}.piv-modal-score-val--empty{font-weight:500;color:var(--text-muted)}.piv-modal-score-tb{font-size:clamp(.72rem,1.5vmin,1.2rem);color:var(--text-muted);font-weight:500}.piv-modal-divider{grid-column:1 / -1;height:1px;background:var(--piv-navy-line);margin:.1rem 0}.piv-page--light{--piv-navy: #eef2f7;--piv-navy-raised: #ffffff;--piv-navy-tile: #ffffff;--piv-navy-hover: #e4ebf4;--piv-navy-line: rgba(15, 35, 60, .12);--piv-navy-line-strong: rgba(15, 35, 60, .22);--piv-navy-faint: rgba(15, 35, 60, .45);--text: #0a1628;--text-muted: rgba(10, 22, 40, .62);--text-faint: rgba(10, 22, 40, .4);background:var(--piv-navy);color:var(--text)}.piv-page--light.piv-page--broadcast,.piv-page--light.piv-page--broadcast .piv-header,.piv-page--light.piv-page--broadcast .piv-footer{background:var(--piv-navy);color:var(--text)}.piv-page--light .piv-header-title,.piv-page--light .piv-footer-name,.piv-page--light.piv-page--broadcast .piv-header-title,.piv-page--light.piv-page--broadcast .piv-footer-name{color:var(--text)}.piv-page--light .piv-header-title--sm{color:var(--text-muted)}.piv-page--light .piv-header-sport{color:#07a}.piv-page--light:not(.piv-page--broadcast) .piv-section:not(.piv-section--empty){background:var(--piv-navy-tile);border-color:var(--piv-navy-line);color:var(--text)}.piv-page--light .piv-section--empty{color:var(--piv-navy-faint)}.piv-page--light .piv-modal,.piv-page--light .piv-modal-header h2,.piv-page--light .piv-modal-close{color:var(--text)}.piv-page--light .bsc{--bsc-navy: #ffffff;--bsc-navy-raised: #f3f6fa;--bsc-navy-set: #e6edf5;--bsc-bg: #ffffff;--bsc-text: #0a1628;--bsc-muted: rgba(10, 22, 40, .55);--bsc-faint: rgba(10, 22, 40, .3);--bsc-line: rgba(15, 35, 60, .12);--bsc-accent: #0077aa}.scorer-page{min-height:100vh;background:var(--bg, #0b0d10);color:var(--text, #f2f2f2);display:flex;flex-direction:column}.scorer-page--center{align-items:center;justify-content:center}.scorer-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.scorer-header-logo{height:32px;width:auto;border-radius:4px}.scorer-header-title{margin:0;font-size:1.05rem;font-weight:650}.scorer-list{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;padding:1.25rem;align-content:start}.scorer-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-radius:10px;border:1px solid var(--border, rgba(255, 255, 255, .12));background:var(--card-bg, rgba(255, 255, 255, .04));text-align:left;cursor:pointer;color:inherit}.scorer-card:hover{border-color:var(--accent, #4f8cff)}.scorer-card-teams{display:flex;flex-direction:column;gap:.15rem;font-weight:600}.scorer-card-meta{display:flex;gap:.5rem;align-items:center;font-size:.8rem;color:var(--text-muted, #9aa0a6)}.scorer-card-status{padding:.1rem .5rem;border-radius:999px;font-size:.72rem;text-transform:uppercase;letter-spacing:.02em;background:#ffffff14}.scorer-card-status--live{background:#dc3c3c33;color:#ff7676}.scorer-card-status--complete{background:#3cb4642e;color:#6fd88c}.scorer-empty{padding:2rem;text-align:center;color:var(--text-muted, #9aa0a6)}.scorer-muted{color:var(--text-muted, #9aa0a6);text-align:center}.scorer-error{color:var(--danger, #ff6b6b);text-align:center;padding:1rem}.scorer-live-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--bg, #0b0d10);display:flex;flex-direction:column}.scorer-live{flex:1;display:flex;flex-direction:column;max-width:520px;width:100%;margin:0 auto;min-height:0}.scorer-live-appbar{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;min-height:48px;padding:.15rem .35rem;border-bottom:1px solid var(--border, rgba(255, 255, 255, .1));background:var(--card-bg, rgba(255, 255, 255, .04))}.scorer-live-title{margin:0;font-size:.95rem;font-weight:600;letter-spacing:.02em;text-align:center}.scorer-live-icon-btn{width:44px;height:44px;border:none;background:transparent;color:var(--text-muted, #9aa0a6);font-size:1.25rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;justify-self:start}.scorer-live-icon-btn--accent{color:var(--accent, #4f8cff);justify-self:end}.scorer-live-icon-spacer{width:44px;height:44px;justify-self:end}.scorer-incoming-banner{padding:.65rem 1rem;text-align:center;font-size:.82rem;line-height:1.35;color:var(--text-muted, #9aa0a6);background:color-mix(in srgb,var(--accent, #4f8cff) 8%,transparent);border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.scorer-sync-error{margin:.5rem 1rem 0;padding:.55rem .75rem;border-radius:8px;background:#dc3c3c26;color:#ff7676;font-size:.85rem}.scorer-sync-hint{margin:.35rem 1rem 0;text-align:center;font-size:.8rem;color:var(--text-muted, #9aa0a6)}.scorer-live-loading{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.scorer-live-scroll{flex:1;overflow:auto;padding:.65rem 1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.scorer-card-panel{border-radius:16px;padding:.85rem 1rem;background:var(--card-bg, rgba(255, 255, 255, .05));border:1px solid var(--border, rgba(255, 255, 255, .08))}.scorer-card-panel--game{text-align:center}.scorer-section-label{margin:0 0 .65rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:center;color:var(--text-muted, #9aa0a6)}.scorer-sets-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.scorer-set-chip{flex:1;min-width:28%;text-align:center;padding:.35rem .4rem}.scorer-set-chip--current{background:color-mix(in srgb,var(--accent, #4f8cff) 14%,transparent);border-radius:999px;padding:.55rem .6rem}.scorer-set-label{display:block;font-size:.65rem;font-weight:600;color:var(--text-muted, #9aa0a6);margin-bottom:.2rem}.scorer-set-score{font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.scorer-set-check{display:block;margin-top:.1rem;color:#6fd88c;font-weight:600}.scorer-serving-line{margin:0 0 .5rem;font-size:.78rem;font-weight:600;color:var(--accent, #4f8cff);line-height:1.3}.scorer-game-score{margin:0;font-size:2.15rem;font-weight:700;letter-spacing:-.04em}.scorer-special{border-radius:16px;padding:.85rem 1rem;text-align:center;font-size:.9rem;font-weight:700;letter-spacing:.02em;color:#fff}.scorer-special--match{background:var(--danger, #e04545)}.scorer-special--set{background:#d97706}.scorer-special--break{background:#6366f1}.scorer-players-row{display:flex;align-items:flex-start;gap:.4rem;padding:.75rem .65rem;border-radius:16px;border:1px solid var(--border, rgba(255, 255, 255, .1));background:#ffffff08}.scorer-player-col{flex:1;min-width:0;text-align:center}.scorer-player-name{margin:0;font-size:.9rem;font-weight:600;line-height:1.35;word-break:break-word}.scorer-serving-pill{display:inline-block;margin-top:.45rem;padding:.2rem .65rem;border-radius:999px;font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent, #4f8cff);background:color-mix(in srgb,var(--accent, #4f8cff) 16%,transparent)}.scorer-vs{padding-top:.35rem;font-size:.65rem;font-weight:800;letter-spacing:.12em;color:var(--text-muted, #9aa0a6);opacity:.8}.scorer-point-controls{display:flex;gap:.65rem;margin-top:.35rem}.scorer-action-row{display:flex;gap:.75rem}.scorer-btn{border-radius:12px;border:1px solid transparent;font-size:.95rem;font-weight:700;cursor:pointer;padding:.75rem 1rem;color:inherit;background:transparent}.scorer-btn--point{flex:1;min-height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;line-height:1.2}.scorer-btn--point span{font-size:.82rem;font-weight:600;opacity:.92}.scorer-btn--primary{background:var(--accent, #4f8cff);color:#fff}.scorer-btn--secondary{background:#6366f1;color:#fff}.scorer-btn--outline{flex:1;border-color:var(--border, rgba(255, 255, 255, .2));background:transparent}.scorer-btn--outline:hover{border-color:var(--accent, #4f8cff)}.scorer-complete-banner{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;text-align:center;font-weight:650;padding:.5rem 0 0}.scorer-serve-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:2}.scorer-serve-modal{width:min(100%,380px);border-radius:18px;padding:1.35rem 1.2rem;background:var(--card-bg, #161a20);border:1px solid var(--border, rgba(255, 255, 255, .1));box-shadow:0 16px 40px #00000073;display:flex;flex-direction:column;gap:.55rem}.scorer-serve-modal h3{margin:0;text-align:center;font-size:1rem}.scorer-serve-modal .scorer-muted{margin:0 0 .5rem;font-size:.78rem}.scorer-serve-option{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;text-align:left;padding:.75rem .9rem;border-radius:12px;border:1px solid var(--border, rgba(255, 255, 255, .12));background:#ffffff08;color:inherit;cursor:pointer;font-weight:600}.scorer-serve-option.is-current{background:color-mix(in srgb,var(--accent, #4f8cff) 14%,transparent);border-color:color-mix(in srgb,var(--accent, #4f8cff) 40%,transparent)}.scorer-serve-option em{font-style:normal;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent, #4f8cff)}@media (min-width: 640px){.scorer-live{border-left:1px solid var(--border, rgba(255, 255, 255, .06));border-right:1px solid var(--border, rgba(255, 255, 255, .06))}}.public-registration-page{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:2.5rem 1rem;background:radial-gradient(ellipse 80% 50% at 50% -20%,var(--accent-dim),transparent),var(--bg);color:var(--text)}.public-registration-card{width:100%;max-width:520px;display:flex;flex-direction:column;gap:1.15rem;padding:1.75rem 1.5rem 1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md)}.public-registration-card--wide{max-width:920px}.public-registration-card h1{margin:0;font-size:1.45rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.public-registration-logo-row{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;flex:1;min-width:0}.public-registration-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:.35rem;border-bottom:1px solid var(--border-subtle)}.public-registration-top .public-registration-logo-row{padding-bottom:0;border-bottom:none}.public-registration-lang{display:inline-flex;gap:.25rem;padding:.2rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);flex-shrink:0}.public-registration-lang-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.35rem .55rem;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.public-registration-lang-btn:hover{color:var(--text)}.public-registration-lang-btn.is-active{background:var(--accent-dim);color:var(--accent)}.public-registration-license-hint{margin:0;font-size:.8rem;font-weight:500;line-height:1.4;color:var(--text-muted);letter-spacing:0;padding:.55rem .7rem;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius-sm)}.public-registration-logo{width:auto;height:72px;max-width:180px;object-fit:contain}.public-registration-subtitle{margin:-.35rem 0 .15rem;color:var(--text-muted);font-size:.9rem}.public-registration-players-row{display:flex;gap:1rem;align-items:stretch}.public-registration-players-row>.public-registration-fieldset{flex:1 1 0;min-width:0}@media (max-width: 640px){.public-registration-page{padding:1.25rem .75rem}.public-registration-card{padding:1.35rem 1rem 1.15rem}.public-registration-players-row{flex-direction:column}.public-registration-name-row{grid-template-columns:1fr}}.public-registration-fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);padding:.85rem 1rem 1.05rem;display:flex;flex-direction:column;gap:.85rem;background:color-mix(in srgb,var(--bg) 55%,var(--surface));margin:0}.public-registration-fieldset legend{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:0 .35rem}.public-registration-name-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.public-registration-field{display:flex;flex-direction:column;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em}.public-registration-field .label-title{display:inline-flex;align-items:center;gap:.25rem}.public-registration-field .required{color:var(--accent);font-weight:700}.public-registration-field .label-optional{font-weight:500;color:var(--text-faint);text-transform:none;letter-spacing:0;font-size:.75rem}.public-registration-field input,.public-registration-field select,.public-registration-field textarea{width:100%;padding:.7rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.95rem;font-weight:400;font-family:inherit;letter-spacing:0;line-height:1.35;transition:border-color .15s,box-shadow .15s,background .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.public-registration-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238b8b96' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;padding-right:2.25rem;cursor:pointer}.public-registration-field input::placeholder,.public-registration-field textarea::placeholder{color:var(--text-faint);font-weight:400}.public-registration-field input:hover,.public-registration-field select:hover,.public-registration-field textarea:hover{border-color:color-mix(in srgb,var(--text-faint) 55%,var(--border))}.public-registration-field input:focus,.public-registration-field select:focus,.public-registration-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);background:var(--surface-raised)}.public-registration-field textarea{resize:vertical;min-height:5rem;line-height:1.45}.public-registration-field-meta{display:flex;justify-content:flex-end;font-size:.72rem;font-weight:500;color:var(--text-faint);letter-spacing:0}.public-registration-card>.btn-primary{align-self:stretch;width:100%;margin-top:.25rem;padding:.8rem 1.2rem;font-size:.95rem;border-radius:var(--radius-sm)}.public-registration-card>.form-error{margin-top:.15rem}.public-registration-success{margin:0;color:var(--success);font-weight:600;font-size:.95rem;padding:.75rem .9rem;background:var(--success-dim);border:1px solid color-mix(in srgb,var(--success) 25%,transparent);border-radius:var(--radius-sm)}.public-registration-preview-title{margin:.35rem 0 0;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.public-registration-preview{margin:0;display:flex;flex-direction:column;gap:.55rem}.public-registration-preview-row{display:grid;grid-template-columns:minmax(7rem,9rem) 1fr;gap:.35rem 1rem;align-items:baseline;font-size:.9rem}.public-registration-preview-row--block{grid-template-columns:1fr}.public-registration-preview-row dt{margin:0;color:var(--text-muted);font-weight:500;font-size:.8rem}.public-registration-preview-row dd{margin:0;word-break:break-word;font-weight:500;color:var(--text)}.draws-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.registrations-link-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem;padding:.6rem .75rem;border:1px solid var(--border);border-radius:8px}.registrations-link-row code{font-size:.85rem;overflow-wrap:anywhere}.registrations-link-row .badge{padding:.25rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600}.registrations-link-row .badge-live{background:#22c55e2e;color:#22c55e}.registrations-link-row .badge-abandoned{background:#ef44442e;color:#ef4444}:root{--bg: #0c0c0f;--surface: #141417;--surface-raised: #1a1a1f;--border: #242429;--border-subtle: #1e1e23;--text: #e8e8ec;--text-muted: #8b8b96;--text-faint: #55555f;--accent: #22c55e;--accent-hover: #16a34a;--accent-dim: rgba(34, 197, 94, .12);--success: #22c55e;--success-dim: rgba(34, 197, 94, .12);--warning: #f59e0b;--warning-dim: rgba(245, 158, 11, .12);--danger: #ef4444;--danger-dim: rgba(239, 68, 68, .1);--radius: 12px;--radius-sm: 8px;--font-sans: "DM Sans", system-ui, sans-serif;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4)}[data-theme=light]{--bg: #f4f5f7;--surface: #ffffff;--surface-raised: #f9fafb;--border: #e5e7eb;--border-subtle: #f0f1f3;--text: #111827;--text-muted: #6b7280;--text-faint: #9ca3af;--accent: #16a34a;--accent-hover: #15803d;--accent-dim: rgba(22, 163, 74, .1);--success: #16a34a;--success-dim: rgba(22, 163, 74, .1);--warning: #d97706;--warning-dim: rgba(217, 119, 6, .12);--danger: #dc2626;--danger-dim: rgba(220, 38, 38, .08);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}#root{min-height:100vh}.app-shell{display:flex;min-height:100vh}.app-shell-appbar{position:fixed;top:0;left:0;right:0;height:60px;display:flex;align-items:center;gap:.75rem;padding:0 1.25rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:50}.appbar-title{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;font-size:.95rem;letter-spacing:-.02em}.appbar-logo-img{width:50px;height:50px;border-radius:7px;object-fit:cover;border:1px solid var(--border)}.appbar-spacer{flex:1}.appbar-credit{font-size:.8rem;color:var(--text-muted);background:var(--surface-raised);border:1px solid var(--border);padding:.2rem .6rem;border-radius:999px}.appbar-icon-btn{height:36px;min-width:36px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}.appbar-icon-btn:hover{background:var(--surface-raised);border-color:var(--text-faint)}.appbar-avatar-btn{border:none;background:transparent;padding:0;cursor:pointer}.appbar-avatar{width:34px;height:34px;border-radius:999px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border);background:var(--surface-raised);color:var(--text);font-weight:700;font-size:.8rem;-webkit-user-select:none;user-select:none;transition:border-color .12s}.appbar-avatar:hover{border-color:var(--accent)}.appbar-avatar img{width:100%;height:100%;object-fit:cover;display:block}.appbar-logout-btn{height:34px;padding:0 .85rem;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:.85rem;transition:background .12s,color .12s}.appbar-logout-btn:hover{background:var(--surface-raised);color:var(--text)}.app-shell-sidebar{width:216px;background:var(--surface);border-right:1px solid var(--border);padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1.5rem;padding-top:calc(60px + 1.25rem);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);transition:transform .16s ease;z-index:60;overflow-y:auto}.app-shell-sidebar.open{transform:translate(0)}.app-shell-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:55}.app-shell-logo{display:flex;flex-direction:column;align-items:center;gap:.5rem;font-weight:700;letter-spacing:-.03em;font-size:.95rem;padding:.25rem .25rem .5rem;text-align:center}.app-shell-logo-img{width:100px;height:100px;border-radius:12px;object-fit:cover;border:1px solid var(--border)}.app-shell-nav{display:flex;flex-direction:column;gap:1.5rem}.app-shell-nav-group{display:flex;flex-direction:column;gap:.2rem}.app-shell-nav-heading{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);font-weight:700;padding:0 .5rem;margin-bottom:.25rem}.app-shell-nav-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;border-radius:9px;color:var(--text-muted);text-decoration:none;font-size:.875rem;font-weight:500;transition:background .12s,color .12s}.app-shell-nav-item:hover{background:var(--surface-raised);color:var(--text)}.app-shell-nav-item.active{background:var(--accent-dim);color:var(--accent);font-weight:600}.app-shell-nav-item--sub{margin-left:.5rem;font-size:.84rem}.app-shell-main{flex:1;overflow-y:auto;padding-top:60px;width:100%}@media (min-width: 980px){.app-shell-backdrop{display:none}.app-shell-sidebar{transform:translate(0)}.app-shell-main{margin-left:216px}.appbar-menu-btn{display:none}}
