/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#14231d;--paper:#f4f3ed;--card:#fffdf8;--lime:#c9f04e;--lime-dark:#9fc627;--orange:#ff7448;--muted:#6f7b75;--line:#dcded6}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,a{font:inherit}button{color:inherit}.app-shell{min-height:100vh;padding-bottom:40px}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f3edeb;justify-content:space-between;align-items:center;height:84px;padding:0 clamp(20px,4vw,64px);display:flex;position:sticky;top:0}.brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:var(--ink);width:42px;height:42px;color:var(--lime);letter-spacing:-1px;box-shadow:3px 3px 0 var(--lime);border-radius:13px;place-items:center;font-weight:900;display:grid;transform:rotate(-3deg)}.brand strong,.brand small{display:block}.brand strong{letter-spacing:-.2px;font-size:16px}.brand small{color:var(--muted);text-transform:uppercase;letter-spacing:1.4px;margin-top:2px;font-size:10px;font-weight:800}.desktop-nav{background:#e9e9e2;border-radius:15px;gap:3px;padding:5px;display:flex}.desktop-nav button{cursor:pointer;background:0 0;border:0;border-radius:11px;padding:10px 18px;font-size:13px;font-weight:800}.desktop-nav button.active{background:var(--card);box-shadow:0 2px 8px #14231d14}.avatar{background:var(--lime);width:42px;height:42px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;font-weight:900}.avatar.active{box-shadow:0 0 0 3px var(--ink)}.page{max-width:1380px;margin:0 auto;padding:42px clamp(20px,4vw,64px) 80px}.tournament-head{justify-content:space-between;align-items:flex-end;gap:32px;padding:18px 0 34px;display:flex}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:1.8px;color:#617068;font-size:11px;font-weight:900}.live-dot{background:var(--orange);border-radius:50%;width:8px;height:8px;margin-right:7px;animation:1.8s infinite pulse;display:inline-block;box-shadow:0 0 0 5px #ff744821}.done-dot{background:#44ad74;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block;box-shadow:0 0 0 5px #44ad7421}@keyframes pulse{50%{opacity:.5}}h1{letter-spacing:-5px;margin:10px 0 0;font-size:clamp(46px,6vw,86px);font-weight:950;line-height:.84}h1 em{color:var(--orange);letter-spacing:-4px;font-family:Georgia,serif;font-style:normal;font-weight:400}.tournament-meta{border:1px solid var(--line);background:var(--card);border-radius:22px;padding:8px;display:flex;box-shadow:0 8px 30px #14231d0f}.tournament-meta>div{border-right:1px solid var(--line);min-width:112px;padding:13px 20px}.tournament-meta>div:last-child{border:0}.tournament-meta span{color:var(--muted);letter-spacing:1.4px;font-size:9px;font-weight:900;display:block}.tournament-meta strong{letter-spacing:-1.5px;margin-top:5px;font-size:28px;display:block}.tournament-meta small{color:var(--muted);margin-left:3px;font-size:14px}.final-callout{background:#fff3ed;border:1px solid #efcbbd;border-radius:16px;align-items:center;gap:14px;margin-bottom:32px;padding:13px 16px;display:flex}.final-callout.finished{background:#edf8e9;border-color:#bddbb4}.final-callout.finished .callout-icon{background:#44ad74}.final-callout.finished .final-action{background:#2f7c50;box-shadow:3px 3px #b9dcbf}.callout-icon{background:var(--orange);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.final-callout div{flex:1}.final-callout strong{font-size:13px}.final-callout p{color:#7c655d;margin:2px 0 0;font-size:12px}.final-action{background:var(--orange);color:#fff;white-space:nowrap;cursor:pointer;border:0;border-radius:12px;padding:11px 15px;font-size:11px;font-weight:950;box-shadow:3px 3px #efc2b0}.final-action:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:5px 5px #efc2b0}.final-action:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.content-grid{grid-template-columns:minmax(0,1.75fr) minmax(300px,.65fr);align-items:start;gap:28px;display:grid}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.section-heading h2{letter-spacing:-1.4px;margin:4px 0 0;font-size:30px}.section-heading.compact h2{font-size:25px}.sync-note{color:var(--muted);font-size:11px;font-weight:800}.sync-note i{background:#44ad74;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.round-switcher{background:#e9e9e2;border:1px solid #d8dad3;border-radius:17px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:7px 8px 7px 15px;display:flex}.round-switcher>span{text-transform:uppercase;letter-spacing:1.2px;color:#738078;white-space:nowrap;font-size:10px;font-weight:900}.round-switcher>div{scrollbar-width:none;gap:5px;display:flex;overflow-x:auto}.round-switcher>div::-webkit-scrollbar{display:none}.round-switcher button{cursor:pointer;background:0 0;border:0;border-radius:11px;min-width:38px;height:36px;font-size:12px;font-weight:950;position:relative}.round-switcher button:hover{background:#f5f5ef}.round-switcher button.active{background:var(--ink);color:var(--lime);box-shadow:0 3px 10px #14231d29}.round-switcher button small{color:#5d850c;font-size:8px;position:absolute;top:2px;right:3px}.round-switcher button.active small{color:var(--lime)}.round-switcher button.final-round-button{color:var(--orange);border:1px solid #e6ab95}.round-switcher button.final-round-button.active{background:var(--orange);color:#fff;border-color:var(--orange)}.court-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.court-card{background:var(--card);border:1px solid var(--line);border-radius:21px;padding:17px;transition:all .2s;box-shadow:0 8px 24px #14231d0b}.court-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px #14231d14}.court-card.waiting{background:#f9f8f3;border:2px dashed #b8bdb4}.court-card header{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.court-card header span{text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:950}.court-card header small{color:#6b786f;background:#edf0e9;border-radius:10px;padding:5px 8px;font-size:10px}.court-card.waiting header small{color:#b35030;background:#fff0e9}.team-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;justify-content:space-between;align-items:center;width:100%;padding:12px;transition:all .15s;display:flex}.team-row:hover{background:#f1f2ea}.team-row.winner{background:#eff8d5}.team-row span strong{font-size:14px;line-height:1.45;display:block}.team-row b{letter-spacing:-2px;text-align:center;min-width:44px;font-size:32px}.team-row.winner b{color:#648c0a}.versus{color:#9aa39e;letter-spacing:1px;align-items:center;gap:8px;margin:0 12px;font-size:8px;font-weight:900;display:flex}.versus span{background:#e3e4df;flex:1;height:1px}.court-card footer{color:#8a928d;text-align:center;border-top:1px solid #ecece6;margin-top:11px;padding:11px 4px 0;font-size:10px}.round-controls{grid-template-columns:minmax(220px,360px);justify-content:end;gap:8px;margin-top:20px;display:grid}.round-controls p{text-align:right;color:#8a6154;margin:0;font-size:11px}.final-round-note{background:#fff1e9;border:1px solid #edc5b5;border-radius:15px;padding:13px 16px}.final-round-note strong,.final-round-note span{display:block}.final-round-note strong{font-size:12px}.final-round-note span{color:#80675e;margin-top:3px;font-size:10px}.finish-button{background:var(--orange);color:#fff;cursor:pointer;border:0;border-radius:15px;padding:15px 20px;font-size:13px;font-weight:950;box-shadow:4px 4px #efc1af}.finish-button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:6px 6px #efc1af}.finish-button:disabled{opacity:.4;box-shadow:none;cursor:not-allowed}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:15px;padding:15px 20px;font-size:13px;font-weight:900;transition:all .18s}.primary-button{background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--lime)}.primary-button:hover:not(:disabled){box-shadow:6px 6px 0 var(--lime);transform:translate(-1px,-1px)}.secondary-button{background:0 0;border:1px solid #cdd1ca}.primary-button:disabled,.secondary-button:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.ranking-panel,.standalone-panel{background:var(--ink);color:#fff;border-radius:24px;padding:23px;box-shadow:0 16px 38px #14231d26}.ranking-panel .section-kicker,.standalone-panel .section-kicker{color:#9da9a3}.ranking-panel .section-heading button{color:var(--lime);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:900}.podium{border-bottom:1px solid #39463f;justify-content:center;align-items:flex-end;gap:7px;padding:18px 0 22px;display:flex}.podium-place{text-align:center;flex:1;position:relative}.podium-place>span{background:var(--lime);color:var(--ink);border-radius:50%;place-items:center;width:20px;height:20px;font-size:10px;font-weight:950;display:grid;position:absolute;top:-2px;right:11px}.podium-place.place-1{order:2;transform:translateY(-10px)}.podium-place.place-2{order:1}.podium-place.place-3{order:3}.player-initials{width:48px;height:48px;color:var(--lime);background:#34473e;border-radius:16px;place-items:center;margin:0 auto 8px;font-size:13px;font-weight:950;display:grid}.place-1 .player-initials{background:var(--lime);width:58px;height:58px;color:var(--ink)}.podium-place strong,.podium-place b{display:block}.podium-place strong{font-size:11px}.podium-place b{color:#9ca9a2;margin-top:4px;font-size:10px}.mini-ranking>div{border-bottom:1px solid #344139;grid-template-columns:24px 1fr 38px 38px;align-items:center;gap:7px;padding:12px 4px;font-size:11px;display:grid}.mini-ranking>div>span{color:#89968f}.mini-ranking small{color:#8f9c95}.mini-ranking b{text-align:right}.ranking-link{width:100%;color:var(--lime);cursor:pointer;background:#28372f;border:0;border-radius:12px;margin-top:14px;padding:12px;font-size:11px;font-weight:900}.standalone-panel{max-width:900px;margin:0 auto;padding:clamp(22px,4vw,40px)}.standalone-panel .legend{color:#9ba7a1;font-size:11px}.full-ranking>div{border-bottom:1px solid #344139;grid-template-columns:35px 40px 1fr 80px 60px 70px;align-items:center;gap:12px;padding:13px 10px;font-size:12px;display:grid}.full-ranking .top-player{background:#263a30;border:0;border-radius:12px;margin:4px 0}.rank-number{color:#95a19b;font-weight:950}.player-initials.small{border-radius:11px;width:34px;height:34px;margin:0}.full-ranking>div>span{color:#aab4af}.full-ranking>div>b{text-align:right;color:var(--lime)}.finished-banner{color:var(--ink);background:#eaf7d1;border-radius:15px;align-items:center;gap:12px;margin-bottom:18px;padding:13px 15px;display:flex}.finished-banner>span{background:var(--lime);border-radius:10px;place-items:center;width:30px;height:30px;font-weight:950;display:grid}.finished-banner strong,.finished-banner small{display:block}.finished-banner strong{font-size:12px}.finished-banner small{color:#607066;margin-top:3px;font-size:10px}.ranking-mode{background:#28372f;border-radius:14px;margin-bottom:24px;padding:5px;display:flex}.ranking-mode button{color:#8f9c95;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;padding:10px;font-size:11px;font-weight:900}.ranking-mode button.active{background:var(--lime);color:var(--ink)}.full-ranking .current-player{border:1px solid var(--lime);background:#314b3e;border-radius:12px;margin:4px 0}.all-time-ranking>div>span:nth-of-type(2){color:var(--lime);font-weight:900}.ranking-explainer{border-left:3px solid var(--lime);color:#b0bbb5;background:#293a31;border-radius:10px;margin:0 0 12px;padding:11px 13px;font-size:10px;line-height:1.5}.profile-panel{background:var(--card);border:1px solid var(--line);border-radius:26px;max-width:1000px;margin:0 auto;padding:clamp(24px,4vw,42px);box-shadow:0 15px 40px #14231d14}.profile-hero{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding-bottom:24px;display:flex}.profile-avatar{background:var(--ink);width:74px;height:74px;color:var(--lime);box-shadow:5px 5px 0 var(--lime);border-radius:23px;place-items:center;font-size:22px;font-weight:950;display:grid}.profile-hero h2{letter-spacing:-1.5px;margin:5px 0;font-size:32px}.profile-hero p{color:var(--muted);margin:0;font-size:12px}.profile-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px;display:grid}.profile-stats article{background:#f0f0e9;border-radius:18px;padding:20px}.profile-stats article.all-time-place{background:var(--ink);color:#fff}.profile-stats article>span{text-transform:uppercase;letter-spacing:1px;color:#78847e;font-size:10px;font-weight:900}.profile-stats .all-time-place>span{color:#a9b5ae}.profile-stats strong{letter-spacing:-3px;margin-top:12px;font-size:44px;display:block}.profile-stats strong small{color:var(--orange);margin-right:3px;font-size:18px}.profile-stats p{color:#77837d;margin:4px 0 0;font-size:10px}.profile-stats .all-time-place p{color:#9eaaa4}.podium-counts>div{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px;display:grid}.profile-stats .podium-counts p{text-align:center;margin:0}.podium-counts p+p{border-left:1px solid #d6dad2}.profile-stats .podium-counts p>b{background:var(--ink);width:22px;height:22px;color:var(--lime);border-radius:50%;margin:0 auto 5px;font-size:10px;line-height:22px;display:block}.profile-stats .podium-counts p>strong{letter-spacing:-1.5px;margin:0;font-size:29px}.profile-stats .podium-counts p>small{color:#77837d;margin-top:3px;font-size:8px;display:block}.profile-ranking-link{background:var(--lime);width:100%;color:var(--ink);cursor:pointer;border:0;border-radius:14px;margin-top:16px;padding:14px;font-size:11px;font-weight:950}.full-ranking>.ranking-empty{text-align:center;border-bottom:0;grid-column:1/-1;padding:46px 24px;display:block}.ranking-empty strong{color:#fff;font-size:17px;line-height:1.3;display:block}.ranking-empty p{color:#9ba7a1;max-width:420px;margin:9px auto 0;font-size:10px;line-height:1.6;display:block}.history-list{gap:10px;display:grid}.history-list article{background:#26362e;border-radius:15px;grid-template-columns:90px 1fr auto;align-items:center;gap:16px;padding:16px;display:grid}.history-round{text-transform:uppercase;letter-spacing:1px;color:var(--lime);font-size:10px;font-weight:900}.history-list strong,.history-list small{display:block}.history-list strong{font-size:12px}.history-list small{color:#94a199;margin-top:5px;font-size:10px}.history-list b{letter-spacing:-1px;font-size:20px}.admin-panel{max-width:1180px;margin:0 auto}.admin-hero{justify-content:space-between;align-items:flex-end;gap:30px;padding:18px 0 34px;display:flex}.admin-hero p{max-width:550px;color:var(--muted);margin:20px 0 0;font-size:13px;line-height:1.6}.admin-badge{background:var(--ink);color:#fff;width:180px;box-shadow:6px 6px 0 var(--lime);border-radius:22px;padding:18px}.admin-badge span,.admin-badge small{display:block}.admin-badge span{color:var(--lime);letter-spacing:1.5px;font-size:9px;font-weight:950}.admin-badge strong{margin:12px 0 5px;font-size:32px;display:block}.admin-badge small{color:#9ca8a2;font-size:10px}.setup-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;gap:22px;display:grid}.setup-card,.setup-preview,.tournament-manager{background:var(--card);border:1px solid var(--line);border-radius:25px;padding:clamp(20px,3vw,32px);box-shadow:0 12px 34px #14231d0f}.field{gap:7px;margin-bottom:16px;display:grid}.field>span,.court-choice legend,.manager-controls>div>span,.match-link>span{text-transform:uppercase;letter-spacing:1.1px;color:#68766f;font-size:10px;font-weight:900}.field input,.field select{background:#f8f8f3;border:1px solid #d6d9d2;border-radius:13px;outline:none;width:100%;padding:13px 14px}.field input:focus,.field select:focus{border-color:var(--lime-dark);box-shadow:0 0 0 3px #c9f04e38}.field-row{grid-template-columns:1fr 1fr;gap:13px;display:grid}.court-choice{border:0;margin:7px 0 22px;padding:0}.court-choice legend{margin-bottom:8px}.court-choice>div{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.court-choice button{border:1px solid var(--line);cursor:pointer;background:#f3f3ed;border-radius:14px;padding:12px 8px;font-size:19px;font-weight:950}.court-choice button small{color:var(--muted);margin-top:5px;font-size:8px;display:block}.court-choice button.active,.inline-courts button.active{background:var(--ink);color:var(--lime);border-color:var(--ink)}.court-choice button.active small{color:#b6c0ba}.create-button{width:100%}.setup-preview{background:var(--ink);color:#fff;position:sticky;top:106px}.setup-preview h2{letter-spacing:-1.8px;margin:18px 0 7px;font-size:36px}.setup-preview>p{color:#a9b4ae;font-size:12px}.setup-preview>small{color:#aab5af;border-top:1px solid #344139;padding-top:17px;font-size:10px;line-height:1.6;display:block}.preview-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0;display:grid}.preview-stats>div{background:#293931;border-radius:14px;padding:14px 10px}.preview-stats strong,.preview-stats span{display:block}.preview-stats strong{color:var(--lime);font-size:27px}.preview-stats span{color:#a7b2ac;margin-top:3px;font-size:9px}.tournament-manager{padding:clamp(18px,3vw,30px)}.manager-summary{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding-bottom:22px;display:flex}.manager-summary h2{letter-spacing:-1.5px;margin:7px 0;font-size:34px}.manager-summary p{color:var(--muted);margin:0;font-size:11px}.match-link{background:#edf0e9;border-radius:15px;min-width:360px;padding:13px 14px}.match-link strong{word-break:break-all;margin:6px 0 9px;font-size:12px;display:block}.match-link button{background:var(--ink);color:var(--lime);cursor:pointer;border:0;border-radius:9px;padding:8px 11px;font-size:9px;font-weight:900}.manager-controls{grid-template-columns:1fr auto auto;align-items:center;gap:18px;padding:20px 0;display:grid}.manager-controls>div>small{color:var(--muted);margin-top:7px;font-size:9px;display:block}.inline-courts{gap:6px;margin-top:7px;display:flex}.inline-courts button{border:1px solid var(--line);cursor:pointer;background:#f2f2ec;border-radius:10px;width:36px;height:34px;font-weight:950}.registration-count{text-align:center;border-left:1px solid var(--line);padding-left:20px}.registration-count strong,.registration-count span{display:block}.registration-count strong{font-size:31px}.registration-count span{color:var(--muted);font-size:9px}.lists-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.player-list{border:1px solid var(--line);border-radius:18px;overflow:hidden}.player-list header{background:#f0f0ea;justify-content:space-between;align-items:center;padding:15px;display:flex}.player-list h3{margin:4px 0 0;font-size:17px}.player-list header>b{background:var(--lime);border-radius:9px;padding:7px 9px;font-size:9px}.reserve-list header>b{color:#9e452a;background:#ffe4d8}.player-list>div{border-top:1px solid #ecece6;grid-template-columns:28px 1fr auto;align-items:center;gap:7px;padding:10px 14px;font-size:11px;display:grid}.player-list>div>span{color:#8b9690;font-weight:900}.player-list>div>small{color:#7f8b84;font-size:9px}.empty-list{color:var(--muted);text-align:center;padding:24px 15px;font-size:11px}.start-bar{background:var(--ink);color:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:17px 19px;display:flex}.start-bar strong{font-size:13px}.start-bar p{color:#a8b3ad;margin:4px 0 0;font-size:10px}.start-bar .primary-button{background:var(--lime);color:var(--ink);white-space:nowrap;box-shadow:4px 4px #58701d}.player-list>div.player-entry{grid-template-columns:28px 1fr auto}.player-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.player-actions button{cursor:pointer;border:0;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:950}.player-actions .promote-player{background:var(--lime);color:var(--ink)}.player-actions .promote-player:disabled{color:#9da59f;cursor:not-allowed;background:#e7e9e3}.player-actions .remove-player{color:#b14828;background:#fff0ea}.player-actions .remove-player:hover{background:#ffdcd0}.confirm-sheet{background:var(--card);border-radius:24px;width:min(460px,100%);padding:28px;animation:.22s ease-out sheetIn;box-shadow:0 30px 80px #00000040}.confirm-icon{color:#c34e2a;background:#fff0ea;border-radius:13px;place-items:center;width:42px;height:42px;margin-bottom:18px;font-size:20px;font-weight:950;display:grid}.role-confirm .confirm-icon{background:var(--ink);color:var(--lime)}.confirm-sheet h2{letter-spacing:-1.3px;margin:7px 0 9px;font-size:29px}.confirm-sheet p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.confirm-sheet p strong{color:var(--ink)}.confirm-actions{grid-template-columns:1fr 1.4fr;gap:9px;margin-top:24px;display:grid}.danger-button,.grant-confirm{color:#fff;cursor:pointer;border:0;border-radius:15px;padding:15px 18px;font-size:11px;font-weight:950}.danger-button{background:#d95732}.danger-button:hover{background:#bd4322}.grant-confirm{background:var(--ink);color:var(--lime)}.link-value{width:100%;color:var(--ink);background:0 0;border:0;outline:none;padding:7px 0 9px;font-size:11px;font-weight:800;display:block}.link-value:focus{color:#56770c}.participant-name strong,.participant-name small{display:block}.participant-name small{color:var(--muted);margin-top:3px;font-size:8px}.participant-picker{align-items:center;gap:7px;display:flex}.participant-picker select{border:1px solid var(--line);background:#f6f6f0;border-radius:11px;min-width:220px;padding:11px;font-size:10px}.participant-picker .secondary-button{white-space:nowrap;padding:11px 13px}.admin-loading{background:var(--card);border:1px solid var(--line);text-align:center;color:var(--muted);border-radius:22px;padding:40px;font-size:12px}.registration-page{max-width:1100px;margin:0 auto}.registration-hero{justify-content:space-between;align-items:flex-end;gap:28px;padding:20px 0 30px;display:flex}.registration-hero h1{font-size:clamp(42px,6vw,72px);line-height:.95}.registration-hero p{color:var(--muted);margin:16px 0 0;font-size:12px}.registration-summary{background:var(--ink);color:#fff;border-radius:20px;padding:8px;display:flex}.registration-summary>div{border-right:1px solid #38463f;min-width:112px;padding:12px 17px}.registration-summary>div:last-child{border:0}.registration-summary strong,.registration-summary span{display:block}.registration-summary strong{color:var(--lime);font-size:27px}.registration-summary strong small{color:#aab5af;font-size:13px}.registration-summary span{text-transform:uppercase;letter-spacing:.8px;color:#aab5af;margin-top:4px;font-size:8px}.signup-card{background:var(--card);border:1px solid var(--line);border-radius:21px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:21px;display:flex;box-shadow:0 9px 26px #14231d0d}.signup-card h2{letter-spacing:-1px;margin:5px 0;font-size:25px}.signup-card p{color:var(--muted);margin:0;font-size:10px}.public-lists{margin-bottom:14px}.admin-shortcut{color:#526d15;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:10px;font-size:11px;font-weight:950;display:block}.player-actions button:disabled{opacity:.45;cursor:not-allowed}.home-dashboard{max-width:1180px;margin:0 auto}.home-welcome{justify-content:space-between;align-items:flex-end;gap:30px;padding:20px 0 44px;display:flex}.home-welcome h1{font-size:clamp(48px,6vw,78px)}.home-welcome>div>p{color:var(--muted);margin:20px 0 0;font-size:13px}.home-profile-card{background:var(--ink);color:#fff;min-width:265px;box-shadow:5px 5px 0 var(--lime);border-radius:21px;padding:18px 20px}.home-profile-card span,.home-profile-card strong,.home-profile-card small{display:block}.home-profile-card span{text-transform:uppercase;letter-spacing:1px;color:#9faaa4;font-size:8px;font-weight:900}.home-profile-card strong{color:var(--lime);margin:9px 0 4px;font-size:16px}.home-profile-card small{color:#a8b3ad;font-size:9px}.home-section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:17px;display:flex}.home-section-heading h2{letter-spacing:-1.4px;margin:4px 0 0;font-size:30px}.tournament-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.tournament-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 10px 28px #14231d0e}.tournament-card.status-active{border:2px solid var(--orange)}.tournament-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.tournament-status,.joined-badge{text-transform:uppercase;letter-spacing:.7px;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:950}.tournament-status{color:#5e7c18;background:#edf3d9}.status-active .tournament-status{color:#b24929;background:#fff0e9}.joined-badge{background:var(--ink);color:var(--lime)}.tournament-card h3{letter-spacing:-1px;margin:20px 0 5px;font-size:25px}.tournament-card>p{color:var(--muted);margin:0;font-size:10px}.countdown-box{background:#eff0ea;border-radius:14px;margin:18px 0;padding:13px 14px}.countdown-box span,.countdown-box strong{display:block}.countdown-box span{text-transform:uppercase;letter-spacing:.8px;color:#78837d;font-size:8px;font-weight:900}.countdown-box strong{margin-top:5px;font-size:20px}.tournament-card-meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin-bottom:17px;font-size:9px;display:flex}.tournament-card-meta strong{color:var(--ink);font-size:11px}.tournament-card>.primary-button{width:100%}.home-empty{background:var(--card);text-align:center;color:var(--muted);border:1px dashed #cfd3ca;border-radius:20px;padding:35px}.home-empty strong{color:var(--ink);font-size:15px}.home-empty p{margin:7px 0 0;font-size:10px}.home-empty.compact{padding:22px}.completed-heading{margin-top:40px}.finished-cards{gap:8px;display:grid}.finished-cards>button{border:1px solid var(--line);background:var(--card);text-align:left;cursor:pointer;border-radius:15px;justify-content:space-between;align-items:center;padding:15px 17px;display:flex}.finished-cards strong,.finished-cards small{display:block}.finished-cards small{color:var(--muted);margin-top:4px;font-size:9px}.finished-cards b{color:#5e7d17;font-size:10px}.finished-tournament-page{max-width:980px;margin:0 auto}.back-link{color:#647169;cursor:pointer;background:0 0;border:0;padding:8px 0 18px;font-size:10px;font-weight:900}.finished-tournament-hero{background:var(--ink);color:#fff;border-radius:25px;justify-content:space-between;align-items:center;gap:25px;padding:clamp(24px,4vw,40px);display:flex;box-shadow:0 15px 38px #14231d24}.finished-tournament-hero h1{font-size:clamp(40px,6vw,68px);line-height:.95}.finished-tournament-hero p{color:#a8b3ad;margin:16px 0 0;font-size:10px}.finished-mark{background:var(--lime);width:76px;height:76px;color:var(--ink);border-radius:24px;place-items:center;font-size:35px;font-weight:950;display:grid;transform:rotate(-4deg)}.finished-tabs{background:#e8e9e2;border-radius:15px;margin:18px 0;padding:5px;display:flex}.finished-tabs button{cursor:pointer;background:0 0;border:0;border-radius:11px;flex:1;padding:12px;font-size:10px;font-weight:950}.finished-tabs button.active{background:var(--card);box-shadow:0 3px 10px #14231d14}.finished-placements,.finished-history{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}.finished-placements article{border-bottom:1px solid #eceee7;grid-template-columns:35px 40px 1fr auto;align-items:center;gap:11px;padding:13px 16px;display:grid}.finished-placements article:last-child{border:0}.finished-placements article>span{color:#7c8781;font-size:19px;font-weight:950}.finished-placements article>small{color:#5f7d18;font-size:9px;font-weight:900}.finished-placements .podium-row{background:#f4f9e4}.finished-history article{border-bottom:1px solid #eceee7;grid-template-columns:95px 1fr auto;align-items:center;gap:15px;padding:15px 17px;display:grid}.finished-history article:last-child{border:0}.finished-history article>span{text-transform:uppercase;color:#638012;font-size:10px;font-weight:950}.finished-history article>span small,.finished-history article>div strong,.finished-history article>div small{display:block}.finished-history article>span small{color:var(--muted);margin-top:4px;font-size:8px}.finished-history article>div strong{font-size:10px}.finished-history article>div small{color:var(--muted);margin:3px 0;font-size:8px}.finished-history article>b{font-size:22px}.ranking-link.static{cursor:default;text-align:center;color:#aab5af;line-height:1.5}.admin-hero-actions{align-items:flex-end;gap:12px;display:flex}.organization-tournament-switcher{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:18px}.organization-tournament-switcher>span{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:8px;font-weight:900}.organization-tournament-switcher>div{gap:7px;margin-top:8px;display:flex;overflow-x:auto}.organization-tournament-switcher button{border:1px solid var(--line);text-align:left;white-space:nowrap;cursor:pointer;background:#f2f3ed;border-radius:11px;padding:9px 11px;font-size:10px;font-weight:900}.organization-tournament-switcher button small{color:var(--muted);margin-top:3px;font-size:8px;display:block}.organization-tournament-switcher button.active{background:var(--ink);color:var(--lime)}.organization-tournament-switcher button.active small{color:#aab5af}.super-avatar{position:relative}.super-avatar small{background:var(--ink);width:16px;height:16px;color:var(--lime);border:2px solid var(--paper);border-radius:50%;place-items:center;font-size:8px;display:grid;position:absolute;top:-5px;right:-3px}.users-panel{max-width:1180px;margin:0 auto}.users-hero{justify-content:space-between;align-items:flex-end;gap:30px;padding:18px 0 30px;display:flex}.users-hero p{color:var(--muted);margin:18px 0 0;font-size:13px}.permission-summary{background:var(--ink);color:#fff;min-width:260px;box-shadow:5px 5px 0 var(--lime);border-radius:20px;padding:17px 20px}.permission-summary span,.permission-summary strong,.permission-summary small{display:block}.permission-summary span{text-transform:uppercase;letter-spacing:1.2px;color:#a8b4ae;font-size:9px;font-weight:900}.permission-summary strong{color:var(--lime);margin:9px 0 4px;font-size:17px}.permission-summary small{color:#9eaaa4;font-size:9px}.user-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px;display:grid}.user-stats article{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:16px}.user-stats span{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:9px;font-weight:900;display:block}.user-stats strong{margin-top:8px;font-size:29px;display:block}.users-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:clamp(17px,3vw,28px);box-shadow:0 12px 35px #14231d0f}.users-toolbar{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.users-toolbar h2{letter-spacing:-1.2px;margin:4px 0 0;font-size:29px}.user-search{background:#f0f1eb;border:1px solid #dde0d8;border-radius:13px;align-items:center;gap:8px;width:min(360px,100%);padding:0 12px;display:flex}.user-search>span{color:#758179;font-size:20px}.user-search input{background:0 0;border:0;outline:none;width:100%;padding:12px 0;font-size:11px}.users-table{border:1px solid var(--line);border-radius:17px;overflow:hidden}.users-table-head,.users-table article{grid-template-columns:minmax(230px,2.1fr) .75fr .55fr 1fr 1fr;align-items:center;gap:12px;padding:12px 15px;display:grid}.users-table-head{color:#6f7b75;text-transform:uppercase;letter-spacing:1px;background:#eef0e9;font-size:8px;font-weight:950}.users-table article{border-top:1px solid #ebede7;font-size:10px}.users-table article.super-user-row{background:#f2f8dd}.user-identity{align-items:center;gap:10px;min-width:0;display:flex}.user-initials{background:var(--ink);width:34px;height:34px;color:var(--lime);border-radius:10px;flex:none;place-items:center;font-size:10px;font-weight:950;display:grid}.user-identity strong,.user-identity small{display:block}.user-identity strong{font-size:11px}.user-identity small{color:var(--muted);text-overflow:ellipsis;margin-top:3px;font-size:8px;overflow:hidden}.account-status{align-items:center;gap:5px;font-size:9px;display:flex}.account-status i{border-radius:50%;width:7px;height:7px}.account-status.active i{background:#42ad72}.account-status.pending i{background:#e7a13d}.role-badge{border-radius:9px;justify-self:start;padding:6px 8px;font-size:8px;font-weight:950}.role-user{color:#68746d;background:#eceee8}.role-admin{color:#b74c2b;background:#fff0e8}.role-superuser{background:var(--ink);color:var(--lime)}.users-table article>button{cursor:pointer;border:0;border-radius:9px;padding:8px 9px;font-size:8px;font-weight:950}.grant-admin{background:var(--lime);color:var(--ink)}.revoke-admin{color:#b14828;background:#fff0ea}.role-locked{color:#7b867f;font-size:8px;font-weight:800}.no-users{text-align:center;color:var(--muted);padding:28px;font-size:11px}.auth-loading{background:var(--paper);place-content:center;justify-items:center;gap:18px;min-height:100vh;display:grid}.auth-loading strong{color:var(--muted);font-size:12px}.auth-page{background:var(--paper);grid-template-columns:minmax(420px,1.05fr) minmax(460px,.95fr);min-height:100vh;display:grid}.auth-brand-panel{background:var(--ink);color:#fff;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(30px,6vw,82px);display:flex;position:relative;overflow:hidden}.auth-brand-panel:after{content:"21";color:#c9f04e0d;letter-spacing:-35px;font-size:330px;font-weight:950;position:absolute;bottom:-90px;right:-30px}.auth-brand{z-index:1;position:relative}.auth-brand .brand-mark{background:var(--lime);color:var(--ink);box-shadow:3px 3px 0 var(--orange)}.auth-brand-panel h1{z-index:1;font-size:clamp(50px,6vw,90px);position:relative}.auth-brand-panel h1 em{color:var(--lime)}.auth-brand-panel>div>p{color:#aab5af;z-index:1;max-width:500px;font-size:13px;line-height:1.7;position:relative}.auth-brand-panel ul{z-index:1;gap:12px;margin:30px 0 0;padding:0;list-style:none;display:grid;position:relative}.auth-brand-panel li{color:#b3beb8;font-size:11px}.auth-brand-panel li span{width:20px;height:20px;color:var(--lime);background:#304039;border-radius:7px;place-items:center;margin-right:8px;display:inline-grid}.auth-form-panel{place-items:center;padding:30px;display:grid}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:27px;width:min(460px,100%);padding:clamp(24px,4vw,40px);box-shadow:0 20px 55px #14231d1a}.auth-card h2{letter-spacing:-2px;margin:8px 0;font-size:36px}.auth-card>p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.auth-tabs{background:#eceee8;border-radius:13px;grid-template-columns:1fr 1fr;margin:22px 0;padding:5px;display:grid}.auth-tabs button{cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px;font-size:10px;font-weight:950}.auth-tabs button.active{background:var(--ink);color:var(--lime)}.password-control{position:relative}.password-control input{padding-right:66px}.password-control button{color:#516057;cursor:pointer;background:#e4e7df;border:0;border-radius:8px;padding:7px 9px;font-size:8px;font-weight:950;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.password-control button:hover{background:#d9ddd4}.password-control.mismatch input{border-color:#d86a48;box-shadow:0 0 0 3px #d86a481f}.password-match{margin-top:-2px;font-size:8px;font-weight:800}.password-match.ok{color:#578017}.password-match.error{color:#b84b2b}.invite-field input{text-transform:uppercase;letter-spacing:1px}.auth-alert{border-radius:12px;align-items:flex-start;gap:8px;margin:12px 0;padding:11px 12px;font-size:10px;line-height:1.45;display:flex}.auth-alert span{font-weight:950}.auth-alert.error{color:#9f3e22;background:#fff0ea}.auth-alert.success{color:#526d15;background:#edf7d7}.auth-submit{width:100%;margin-top:5px}.auth-security{color:#8a958f;text-align:center;margin-top:16px;font-size:8px;line-height:1.5;display:block}.invite-manager{background:var(--ink);color:#fff;border-radius:21px;grid-template-columns:1fr 1.3fr;align-items:end;gap:20px;margin-bottom:17px;padding:20px;display:grid}.invite-manager h2{letter-spacing:-1px;margin:5px 0;font-size:23px}.invite-manager p{color:#a6b2ac;margin:0;font-size:9px;line-height:1.5}.invite-manager form{grid-template-columns:1.3fr .8fr auto;align-items:end;gap:8px;display:grid}.invite-manager label>span{color:#9eaaa4;text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;font-size:8px;font-weight:900;display:block}.invite-manager input,.invite-manager select{color:#fff;background:#2a3931;border:1px solid #3d4b44;border-radius:11px;outline:none;width:100%;padding:11px;font-size:10px}.invite-manager .primary-button{background:var(--lime);color:var(--ink);box-shadow:none;white-space:nowrap;padding:12px 14px}.generated-code{background:#293a31;border:1px solid #42534a;border-radius:13px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:15px;padding:11px 13px;display:flex}.generated-code span,.generated-code strong{display:block}.generated-code span{color:#9eaaa4;font-size:8px}.generated-code strong{color:var(--lime);letter-spacing:1px;margin-top:4px;font-size:15px}.generated-code button{background:var(--lime);color:var(--ink);cursor:pointer;border:0;border-radius:9px;padding:8px 11px;font-size:8px;font-weight:950}.profile-actions{grid-template-columns:1fr auto;gap:10px;margin-top:16px;display:grid}.profile-actions .profile-ranking-link{margin-top:0}.signout-button{color:#a94629;cursor:pointer;background:#fff0ea;border:1px solid #e4c8bd;border-radius:14px;padding:0 18px;font-size:10px;font-weight:950}.manager-action-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.manager-action-bar>p{color:var(--muted);margin:0;font-size:9px;line-height:1.5}.manager-action-bar>div{gap:8px;display:flex}.manager-action-bar .secondary-button{border-radius:11px;padding:10px 13px;font-size:9px}.delete-tournament-button{color:#aa4325;cursor:pointer;background:#fff0ea;border:1px solid #e5bcae;border-radius:11px;padding:10px 13px;font-size:9px;font-weight:950}.delete-tournament-button:hover:not(:disabled){background:#ffded2}.delete-tournament-button:disabled{opacity:.38;cursor:not-allowed}.edit-tournament-form{border:1px solid var(--line);background:#f3f4ee;border-radius:18px;margin-top:17px;padding:18px}.edit-tournament-form .section-heading{align-items:center;margin-bottom:17px}.edit-tournament-form .section-heading h2{font-size:23px}.close-edit-button{cursor:pointer;background:#e3e5de;border:0;border-radius:50%;width:32px;height:32px;font-size:20px}.edit-form-actions{justify-content:flex-end;gap:9px;display:flex}.edit-form-actions .primary-button,.edit-form-actions .secondary-button{border-radius:12px;padding:11px 15px;font-size:10px}.tournament-delete-confirm .confirm-icon{color:#fff;background:#b74325}.group-invite-badge{background:#edf7d7;border:1px solid #d2e8a5;border-radius:13px;align-items:center;gap:10px;margin-top:15px;padding:11px 12px;display:flex}.group-invite-badge>span{background:var(--lime);width:25px;height:25px;color:var(--ink);border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:950;display:grid}.group-invite-badge strong,.group-invite-badge small{display:block}.group-invite-badge strong{font-size:10px}.group-invite-badge small{color:#607066;margin-top:3px;font-size:8px}.group-registration-manager{align-items:center}.group-link-controls{grid-template-columns:auto auto 1fr;align-items:stretch;gap:8px;display:grid}.group-link-controls>div{background:#293a31;border:1px solid #3e4e46;border-radius:12px;min-width:92px;padding:10px 12px}.group-link-controls strong,.group-link-controls small{display:block}.group-link-controls strong{color:var(--lime);font-size:18px}.group-link-controls small{color:#9eaaa4;margin-top:2px;font-size:8px}.group-link-controls .primary-button{justify-self:end}.generated-registration-link>div{flex:1;min-width:0}.generated-registration-link input{color:var(--lime);margin-top:7px;font-size:9px}.registration-link-list{border:1px solid #3e4e46;border-radius:14px;grid-column:1/-1;overflow:hidden}.registration-link-list header,.registration-link-list article{grid-template-columns:minmax(170px,.85fr) minmax(260px,1.45fr) 80px 105px 65px;align-items:center;gap:10px;padding:10px 13px;display:grid}.registration-link-list header{color:#97a49d;text-transform:uppercase;letter-spacing:.8px;background:#293a31;font-size:8px;font-weight:950}.registration-link-list article{border-top:1px solid #34463d;font-size:9px}.registration-link-list article>div strong,.registration-link-list article>div small{display:block}.registration-link-list article>div strong{font-size:10px}.registration-link-list article>div small{color:#94a199;margin-top:3px;font-size:8px}.registration-link-list article>b{color:var(--lime)}.saved-registration-link{align-items:center;gap:6px;min-width:0;display:flex}.saved-registration-link input{color:#c9f04e;background:#26372f;border:1px solid #46574e;border-radius:8px;outline:none;width:100%;min-width:0;padding:7px 8px;font-size:8px}.saved-registration-link input:focus{border-color:var(--lime)}.saved-registration-link button{background:var(--lime);color:var(--ink);cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:8px 9px;font-size:8px;font-weight:950}.link-status{align-items:center;gap:6px;display:flex}.link-status i{border-radius:50%;width:7px;height:7px}.link-status.active i{background:#6fc68e}.link-status.inactive{color:#99a49e}.link-status.inactive i{background:#6e7c74}.registration-link-list article>button{color:#b14828;cursor:pointer;background:#fff0ea;border:0;border-radius:8px;padding:7px 8px;font-size:8px;font-weight:950}.registration-link-list>p{text-align:center;padding:15px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08120d9e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.score-sheet{background:var(--card);border-radius:26px;width:min(560px,100%);padding:28px;animation:.22s ease-out sheetIn;position:relative;box-shadow:0 30px 80px #00000040}.score-sheet h2{letter-spacing:-1.3px;margin:7px 0 3px;font-size:29px}.selected-team{color:var(--muted);margin:0;font-size:13px}.close-button{cursor:pointer;background:#ebece6;border:0;border-radius:50%;width:34px;height:34px;font-size:24px;position:absolute;top:16px;right:18px}.score-preview{justify-content:center;align-items:center;gap:18px;margin:20px 0 16px;display:flex}.score-preview span{background:var(--ink);width:70px;height:62px;color:var(--lime);border-radius:16px;place-items:center;font-size:32px;font-weight:950;display:grid}.score-preview small{font-size:24px;font-weight:900}.score-picker{grid-template-columns:repeat(11,1fr);gap:6px;display:grid}.score-picker button{aspect-ratio:1;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;font-size:11px;font-weight:900}.score-picker button.selected{background:var(--lime);border-color:var(--lime-dark);box-shadow:0 0 0 2px var(--ink)}.save-score{width:100%;margin-top:18px}.toast{background:var(--ink);color:#fff;z-index:70;border-radius:14px;padding:13px 18px;font-size:12px;font-weight:800;animation:.25s toastIn;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 15px 35px #0003}.toast span{background:var(--lime);width:20px;height:20px;color:var(--ink);border-radius:50%;place-items:center;margin-right:9px;display:inline-grid}.mobile-nav{display:none}@keyframes sheetIn{0%{opacity:0;transform:translateY(18px)scale(.98)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}}@media (width<=960px){.content-grid{grid-template-columns:1fr}.ranking-panel{margin-top:8px}.tournament-head{align-items:flex-start}.tournament-meta>div{min-width:88px;padding:11px 14px}.tournament-meta strong{font-size:23px}.desktop-nav{display:none}.tournament-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.app-shell{padding-bottom:82px}.topbar{height:68px;padding:0 17px}.brand-mark{border-radius:11px;width:36px;height:36px}.brand small{display:none}.avatar{width:36px;height:36px;font-size:12px}.page{padding:26px 14px 45px}.tournament-head{padding:5px 4px 23px;display:block}h1{letter-spacing:-3.6px;font-size:50px}.tournament-meta{justify-content:stretch;width:100%;margin-top:24px}.tournament-meta>div{flex:1;min-width:0;padding:10px 12px}.tournament-meta strong{font-size:22px}.final-callout{flex-wrap:wrap;align-items:stretch;margin-bottom:24px;padding:12px}.final-callout p{line-height:1.45}.final-action{width:100%}.section-heading{padding:0 3px}.section-heading h2{font-size:26px}.round-switcher{margin-bottom:13px;padding:8px 9px;display:block}.round-switcher>span{padding:2px 4px 7px;display:block}.round-switcher>div{width:100%}.round-switcher button{flex:0 0 40px}.court-grid{grid-template-columns:1fr;gap:12px}.court-card{padding:14px}.team-row{padding:10px}.team-row span strong{font-size:13px}.team-row b{font-size:29px}.round-controls{grid-template-columns:1fr}.round-controls p{text-align:center}.ranking-panel{border-radius:21px}.mobile-nav{z-index:30;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:7px 10px calc(7px + env(safe-area-inset-bottom));background:#fffdf8f2;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#7d8882;cursor:pointer;background:0 0;border:0;place-items:center;gap:3px;font-size:9px;font-weight:900;display:grid}.mobile-nav button span{font-size:17px;line-height:1}.mobile-nav button.active{color:var(--ink)}.standalone-panel{border-radius:20px;padding:18px 12px}.standalone-panel .section-heading{align-items:flex-start}.standalone-panel .legend{display:none}.full-ranking>div{grid-template-columns:27px 34px 1fr 58px;gap:7px;padding:11px 5px}.full-ranking>div>span:nth-of-type(2),.full-ranking>div>span:nth-of-type(3){display:none}.history-list article{grid-template-columns:1fr auto;padding:14px}.history-round{grid-column:1/-1}.history-list strong{line-height:1.5}.score-sheet{border-radius:24px 24px 0 0;align-self:end;width:calc(100% + 14px);margin:0 -7px -7px;padding:24px 18px 28px}.score-sheet h2{padding-right:24px;font-size:24px}.score-picker{grid-template-columns:repeat(6,1fr);gap:8px}.score-picker button{font-size:12px}.modal-backdrop{padding:7px}.toast{text-align:center;width:calc(100% - 28px);bottom:82px}.profile-panel{border-radius:21px;padding:20px 15px}.profile-hero{align-items:flex-start}.profile-avatar{border-radius:18px;flex:none;width:58px;height:58px;font-size:17px}.profile-hero h2{font-size:25px}.profile-stats{grid-template-columns:1fr}.profile-stats article{padding:17px}.profile-stats strong{font-size:36px}.ranking-mode{margin-bottom:18px}.ranking-mode button{padding:9px 5px;font-size:10px}.finished-banner{align-items:flex-start}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}.forgot-password{color:#526a23;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:-7px 0 16px auto;font-size:9px;font-weight:950;text-decoration:underline;display:block}.auth-back{color:#526a23;cursor:pointer;background:0 0;border:0;margin:20px 0;padding:0;font-size:9px;font-weight:950}.users-table-head,.users-table article{grid-template-columns:minmax(210px,1.8fr) .7fr .5fr .8fr minmax(270px,1.65fr)}.user-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.user-actions button{cursor:pointer;white-space:nowrap;border:0;border-radius:9px;padding:8px 7px;font-size:8px;font-weight:950}.user-actions button:disabled{opacity:.55;cursor:wait}.reset-user-password{color:#36578a;background:#e9eefb}.delete-user{color:#a94629;background:#fff0ea}.user-delete-confirm .confirm-icon{color:#fff;background:#b74325}@media (width<=960px){.users-table-head,.users-table article{grid-template-columns:minmax(190px,1.5fr) .65fr .45fr .75fr minmax(235px,1.4fr)}.user-actions{grid-template-columns:1fr 1fr}.user-actions .delete-user{grid-column:1/-1}}@media (width<=680px){.users-table article{grid-template-columns:1fr auto}.user-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.user-actions .delete-user{grid-column:1/-1}.role-locked{grid-area:3/2}}.placement-points{text-align:right}.placement-points b,.placement-points small{display:block}.placement-points b{color:var(--ink);font-size:12px}.placement-points small{color:#5f7d18;margin-top:3px;font-size:9px;font-weight:900}@media (width<=680px){.placement-points{text-align:left;grid-column:3}}.extra-player-toggle{border:1px solid var(--line);cursor:pointer;background:#f1f4e8;border-radius:15px;align-items:flex-start;gap:12px;padding:14px 15px;display:flex}.extra-player-toggle input{width:20px;height:20px;accent-color:var(--ink);flex:none;margin:1px 0 0}.extra-player-toggle span,.extra-player-toggle strong,.extra-player-toggle small{display:block}.extra-player-toggle strong{font-size:11px}.extra-player-toggle small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.45}.manager-extra{background:#f7f8f2;align-self:stretch}.manager-extra input:disabled{opacity:.55}.paused-player-callout{background:#eff8d9;border:1px solid #c9dda0;border-radius:16px;align-items:center;gap:13px;margin:0 0 14px;padding:12px 14px;display:flex}.paused-player-callout>span{background:var(--ink);color:var(--lime);letter-spacing:1px;border-radius:9px;padding:7px 9px;font-size:8px;font-weight:950}.paused-player-callout strong,.paused-player-callout small{display:block}.paused-player-callout strong{font-size:12px}.paused-player-callout small{color:#5e6d65;margin-top:3px;font-size:9px}.podium-place b{white-space:nowrap;font-size:9px}.player-profile-link{color:inherit;text-align:left;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:900;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.player-profile-link:hover,.player-profile-link:focus-visible{-webkit-text-decoration-color:var(--lime);-webkit-text-decoration-color:var(--lime);-webkit-text-decoration-color:var(--lime);text-decoration-color:var(--lime);outline:none}.player-profile-link.light{color:#fff}.participant-name .player-profile-link{display:block}.podium-place{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.podium-place:focus-visible{outline:2px solid var(--lime);outline-offset:5px;border-radius:12px}.public-profile-sheet{background:var(--card);border-radius:27px;width:min(760px,100%);padding:clamp(24px,4vw,38px);position:relative;box-shadow:0 30px 80px #00000040}.public-profile-head{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:0 42px 22px 0;display:flex}.public-profile-head h2{letter-spacing:-1.4px;margin:5px 0;font-size:32px}.public-profile-head p{color:var(--muted);margin:0;font-size:10px}.current-tournament-profile{background:var(--ink);color:#fff;border-radius:14px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;margin-top:17px;padding:12px 15px;display:grid}.current-tournament-profile span{text-transform:uppercase;letter-spacing:1px;color:#aab5af;font-size:9px;font-weight:900}.current-tournament-profile strong{color:var(--lime);font-size:16px}.current-tournament-profile small{color:#aab5af;font-size:9px}.public-profile-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:17px;display:grid}.public-profile-stats article{background:#f0f0e9;border-radius:16px;min-width:0;padding:16px}.public-profile-stats article.all-time-place{background:var(--ink);color:#fff}.public-profile-stats article>span{color:#75817a;text-transform:uppercase;letter-spacing:.8px;font-size:8px;font-weight:900;display:block}.public-profile-stats .all-time-place>span{color:#aab5af}.public-profile-stats article>strong{letter-spacing:-2px;margin-top:10px;font-size:32px;display:block}.public-profile-stats article>p{color:var(--muted);margin:4px 0 0;font-size:8px}.public-profile-stats .all-time-place>p{color:#9faaa4}.public-podium-counts>div{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px;display:grid}.public-podium-counts p{text-align:center;margin:0}.public-podium-counts b,.public-podium-counts strong{display:block}.public-podium-counts b{color:#6f7b75;font-size:8px}.public-podium-counts strong{margin-top:3px;font-size:22px}@media (width<=680px){.public-profile-sheet{border-radius:24px 24px 0 0;align-self:end;width:calc(100% + 14px);margin:0 -7px -7px;padding:24px 17px 28px}.public-profile-head{align-items:flex-start}.public-profile-head h2{font-size:25px}.public-profile-stats{grid-template-columns:1fr 1fr}.current-tournament-profile{grid-template-columns:1fr auto}.current-tournament-profile small{grid-column:1/-1}.public-profile-stats article>strong{font-size:28px}.manager-action-bar{display:block}.manager-action-bar>div{grid-template-columns:1fr 1fr;margin-top:11px;display:grid}.manager-action-bar button{width:100%}.edit-tournament-form{padding:15px 12px}.edit-form-actions{grid-template-columns:1fr 1fr;display:grid}.group-link-controls{grid-template-columns:1fr 1fr}.group-link-controls .primary-button{grid-column:1/-1;width:100%}.registration-link-list header{display:none}.registration-link-list article{grid-template-columns:1fr auto;padding:13px}.registration-link-list article>div{grid-column:1/-1}.registration-link-list article>.saved-registration-link{grid-template-columns:1fr auto;display:grid}.registration-link-list article>.link-status{justify-self:end}.registration-link-list article>button{grid-column:1/-1;width:100%}.generated-registration-link input{font-size:8px}}@media (width<=960px){.setup-grid{grid-template-columns:1fr}.setup-preview{position:static}.manager-summary{align-items:flex-start}.lists-grid{grid-template-columns:1fr}.users-table-head,.users-table article{grid-template-columns:minmax(210px,1.8fr) .7fr .5fr 1fr 1fr}}@media (width<=680px){.mobile-nav{grid-template-columns:repeat(4,1fr);padding-left:4px;padding-right:4px}.mobile-nav.nav-2{grid-template-columns:repeat(2,1fr)}.mobile-nav.nav-3{grid-template-columns:repeat(3,1fr)}.mobile-nav button{font-size:7px}.home-welcome{padding-top:5px;display:block}.home-profile-card{display:none}.home-welcome>div>p{font-size:11px}.home-section-heading{align-items:center}.home-section-heading h2{font-size:25px}.home-section-heading .secondary-button{padding:10px;font-size:9px}.tournament-cards{grid-template-columns:1fr}.finished-cards>button{align-items:flex-start;gap:12px}.finished-cards b{text-align:right}.finished-tournament-hero{align-items:flex-start}.finished-mark{border-radius:17px;flex:none;width:52px;height:52px;font-size:24px}.finished-placements article{grid-template-columns:28px 34px 1fr}.finished-placements article>small{grid-column:3}.finished-history article{grid-template-columns:70px 1fr auto;gap:9px;padding:13px 10px}.admin-hero{padding-top:5px;display:block}.admin-hero-actions{margin-top:18px;display:block}.admin-badge{display:none}.admin-hero p{font-size:12px}.setup-card,.setup-preview,.tournament-manager{border-radius:20px;padding:18px 14px}.field-row{grid-template-columns:1fr}.court-choice>div{grid-template-columns:repeat(2,1fr)}.manager-summary{display:block}.match-link{min-width:0;margin-top:17px}.manager-controls{grid-template-columns:1fr}.registration-count{text-align:left;border-left:0;border-top:1px solid var(--line);padding:13px 0 0}.participant-picker{grid-template-columns:1fr;display:grid}.participant-picker select{width:100%;min-width:0}.start-bar{display:block}.start-bar .primary-button{width:100%;margin-top:14px}.registration-hero{padding-top:5px;display:block}.registration-summary{width:100%;margin-top:22px}.registration-summary>div{flex:1;min-width:0;padding:10px}.signup-card{display:block}.signup-card button{width:100%;margin-top:16px}.users-hero{padding-top:5px;display:block}.permission-summary{min-width:0;margin-top:20px}.user-stats{grid-template-columns:repeat(2,1fr)}.users-card{border-radius:20px;padding:15px 10px}.users-toolbar{display:block}.user-search{width:100%;margin-top:14px}.users-table-head{display:none}.users-table article{grid-template-columns:1fr auto;gap:10px;padding:14px}.user-identity{grid-column:1/-1}.users-table article>b{font-size:9px}.role-badge{grid-column:1}.users-table article>button,.role-locked{grid-area:3/2}.confirm-actions{grid-template-columns:1fr}.confirm-sheet{border-radius:24px 24px 0 0;align-self:end;width:calc(100% + 14px);margin:0 -7px -7px;padding:24px 18px 28px}.auth-page{display:block}.auth-brand-panel{min-height:auto;padding:24px 20px}.auth-brand-panel>div:nth-child(2),.auth-brand-panel ul{display:none}.auth-form-panel{padding:22px 14px}.auth-card{border-radius:21px;padding:24px 18px}.auth-card h2{font-size:31px}.invite-manager{grid-template-columns:1fr;padding:17px}.invite-manager form{grid-template-columns:1fr}.generated-code{grid-column:1;display:block}.generated-code button{margin-top:10px}.profile-actions{grid-template-columns:1fr}.signout-button{padding:13px}}@media (width<=960px) and (width>=681px){.users-table-head,.users-table article{grid-template-columns:minmax(190px,1.5fr) .65fr .45fr .75fr minmax(235px,1.4fr)}}@media (width<=680px){.users-table article{grid-template-columns:1fr auto}.user-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.user-actions .delete-user{grid-column:1/-1}.role-locked{grid-area:3/2}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
