/*
 * Nomad Volleyball — © 2026 Artifexon. All rights reserved.
 * Proprietary and confidential.
 */
@import url(https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,100..900;1,100..900&display=swap);:root{--bg-page:#FFFFFF;--text-primary:#0A0A0A;--text-muted:#6B6B6B;--action-primary:#00697E;--status-live:#00697E;--border-hairline:#EAEAEA;--radius-sm:4px;--radius-card:16px;--brand-cyan:#00ACD2;--brand-red:#D8303C;--brand-gold:#FCBD11;--color-silver:#B9C2C8;--color-bronze:#D9884D}*,::after,::before{box-sizing:border-box;margin:0;padding:0;user-select:none;-webkit-user-select:none}input,textarea{user-select:auto;-webkit-user-select:auto}body,html{width:100%;height:100%;height:100dvh;margin:0;padding:0;background-color:var(--bg-page);color:var(--text-primary);font-family:Archivo,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}#app{width:100vw;height:100dvh;background-color:var(--bg-page);position:relative;overflow:hidden;display:flex;flex-direction:column}#main-app{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.code-entry{position:absolute;inset:0;background-color:var(--bg-page);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px;text-align:center;gap:24px;z-index:100;overflow:hidden}.code-entry__logo{width:128px;height:124px;object-fit:contain}.code-entry__title{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.code-entry__inputs{display:flex;gap:12px;justify-content:center}.code-digit{width:56px;height:68px;background-color:var(--bg-page);border:1.5px solid var(--border-hairline);border-radius:var(--radius-sm);font-family:Archivo,sans-serif;font-weight:900;font-size:28px;color:var(--text-primary);text-align:center;text-transform:uppercase;outline:0;transition:border-color .15s}.code-digit:focus{border-color:var(--action-primary)}.code-digit--error{border-color:var(--brand-red)}.code-entry__subtitle{font-size:15px;font-weight:400;color:var(--text-muted)}.code-entry__error{font-size:14px;font-weight:600;color:var(--brand-red);min-height:18px}.code-entry__error:empty{display:none}.code-entry__sep{height:12px}.code-entry__link{font-size:13px;font-weight:600;color:var(--action-primary);text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 24px;font-family:Archivo,sans-serif;font-size:16px;font-weight:700;border-radius:var(--radius-sm);border:1px solid var(--border-hairline);background-color:var(--bg-page);color:var(--text-primary);cursor:pointer;text-decoration:none;transition:opacity .15s}.btn:active{opacity:.85}.btn:disabled{opacity:.4;pointer-events:none}.btn--primary{background-color:var(--action-primary);border-color:var(--action-primary);color:#fff}.btn--danger{background-color:transparent;border-color:var(--brand-red);color:var(--brand-red)}.btn--sm{height:36px;padding:0 16px;font-size:13px;font-weight:600;border-radius:var(--radius-sm)}.btn--ghost{background:0 0;border:1px solid var(--border-hairline);color:var(--text-primary)}.btn--ghost:hover{background:rgba(0,0,0,.03)}.btn--block{width:100%}.main-app{position:absolute;inset:0;display:flex;flex-direction:column;background-color:var(--bg-page);overflow:hidden}.app-header{height:108px;flex-shrink:0;border-bottom:1px solid var(--border-hairline);background-color:var(--bg-page);display:flex;flex-direction:column;justify-content:flex-end;padding:0 20px 18px;position:relative}.app-header__inner{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;width:100%;position:relative}.app-header__titles{display:flex;flex-direction:column;min-width:0}.app-header__utility{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-bottom:2px}.team-badge{font-size:12px;font-weight:700;color:var(--text-primary);background-color:#f5f5f5;padding:3px 8px;border-radius:var(--radius-sm);cursor:pointer;line-height:1.2}.icon-btn{background:0 0;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;padding:0;width:24px;height:24px;transition:color .15s}.icon-btn:hover{color:var(--text-primary)}.app-header__eyebrow{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.app-header__title{font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.app-main{flex:1;position:relative;overflow:hidden}.view{display:none;position:absolute;inset:0;overflow:hidden;flex-direction:column}.view.active{display:flex}.view__body{padding:20px 20px 16px;flex:1;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.action-footer{position:absolute;bottom:0;left:0;right:0;height:auto;min-height:68px;padding:10px 20px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,.95) 25%,#fff 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;z-index:20}.action-footer.hidden{display:none!important}.action-footer__row{display:flex;gap:12px;width:100%}.action-footer__link{font-size:13px;font-weight:600;color:var(--action-primary);text-decoration:none;text-align:center}.tab-nav{height:64px;flex-shrink:0;background-color:var(--bg-page);border-top:1px solid var(--border-hairline);z-index:30;box-shadow:0 -2px 8px rgba(0,0,0,.03)}.tab-nav__inner{display:grid;grid-template-columns:repeat(4,1fr);width:100%;height:100%;align-items:center;justify-items:center;margin:0;padding:0}.tab-btn{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:0 0;border:none;color:var(--text-muted);cursor:pointer;font-family:Archivo,sans-serif;font-size:11px;font-weight:600;letter-spacing:.01em;position:relative;transition:color .15s;padding:0;margin:0}.tab-btn .tab-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;opacity:.55;transition:opacity .15s,transform .15s}.tab-btn .tab-icon svg{width:20px;height:20px;display:block}.tab-btn.active,.tab-btn.tab-btn--active{color:var(--action-primary)}.tab-btn.active .tab-icon,.tab-btn.tab-btn--active .tab-icon{opacity:1}.dashboard-col-primary,.dashboard-col-secondary,.dashboard-desktop-grid{display:flex;flex-direction:column;gap:16px;width:100%}.dash-overview-card{border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:16px;background-color:var(--bg-page);box-shadow:0 1px 4px rgba(0,0,0,.02)}.match-card{width:100%;padding:10px 0 14px;background:0 0;border:none;border-bottom:1px solid var(--border-hairline);display:flex;flex-direction:column;gap:6px;text-align:left;font-family:Archivo,sans-serif;color:inherit;text-decoration:none;box-shadow:none;transition:opacity .15s}.match-card:last-child{border-bottom:none}.match-card--tappable{cursor:pointer}.match-card--tappable:active,.match-card--tappable:hover{opacity:.8}.match-card__top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}.match-card__status{display:flex;align-items:center;gap:5px}.match-card__status-dot{width:7px;height:7px;background-color:var(--status-live);border-radius:50%;flex-shrink:0}.match-card__status-label{font-size:11px;font-weight:700;color:var(--status-live);text-transform:uppercase;letter-spacing:.04em}.match-card__status--ft .match-card__status-dot{background-color:var(--text-muted)}.match-card__status--ft .match-card__status-label{color:var(--text-muted)}.match-card__status--pending .match-card__status-dot{display:none}.match-card__status--pending .match-card__status-label{color:var(--text-muted)}.match-card__meta{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.match-card__teams{width:100%;display:flex;flex-direction:column;gap:4px}.match-card__team-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.match-card__team-name{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.match-card__score{font-size:20px;font-weight:800;color:var(--text-primary);width:36px;text-align:right;line-height:1;font-variant-numeric:tabular-nums}.match-card__score--pending{color:var(--text-muted);font-size:16px;font-weight:400;opacity:.35}.situation-tip{width:100%;display:flex;align-items:flex-start;padding:12px 14px;background-color:#eef4f6;border-left:3px solid var(--action-primary);margin:12px 0}.situation-tip--warning{border-left-color:var(--brand-gold);background-color:#fff9e6}.situation-tip--danger{border-left-color:var(--brand-red);background-color:#fdf2f2}.situation-tip__bar{display:none}.situation-tip__body{display:flex;flex-direction:column;gap:2px}.situation-tip__eyebrow{font-size:12px;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.06em}.situation-tip__text{font-size:14px;font-weight:400;color:var(--text-primary);line-height:1.4}.section-label{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:16px 0 10px}.section-label:first-child{margin-top:0}.podium{width:100%;display:flex;align-items:flex-end;justify-content:center;gap:10px;margin:16px 0 24px;padding:8px 2px 0}.podium__col{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:transform .15s;min-width:0}.podium__col:hover{transform:translateY(-2px)}.podium__medal{font-size:20px;line-height:1;margin-bottom:6px;filter:drop-shadow(0 2px 4px rgba(0, 0, 0, .1))}.podium__col--first .podium__medal{font-size:24px}.podium__pillar{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:10px 6px 12px;border-radius:8px 8px 4px 4px;position:relative;overflow:hidden;box-sizing:border-box}.podium__col--first .podium__pillar{height:120px;background:linear-gradient(180deg,#fde047 0,#eab308 55%,#ca8a04 100%);color:#1e1b4b;box-shadow:0 6px 20px rgba(234,179,8,.3);border:1px solid rgba(255,255,255,.6)}.podium__col--second .podium__pillar{height:98px;background:linear-gradient(180deg,#f8fafc 0,#e2e8f0 55%,#cbd5e1 100%);color:#0f172a;box-shadow:0 4px 14px rgba(0,0,0,.06);border:1px solid rgba(255,255,255,.8)}.podium__col--third .podium__pillar{height:82px;background:linear-gradient(180deg,#ffedd5 0,#fb923c 55%,#c2410c 100%);color:#431407;box-shadow:0 4px 14px rgba(251,146,60,.25);border:1px solid rgba(255,255,255,.5)}.podium__rank{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:2px 6px;border-radius:99px;background:rgba(0,0,0,.08);margin-bottom:4px}.podium__col--first .podium__rank{background:rgba(0,0,0,.12);color:#1e1b4b}.podium__name{font-size:12px;font-weight:700;line-height:1.2;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.podium__stat{font-size:10px;font-weight:600;opacity:.8}.leaderboard-list{width:100%;display:flex;flex-direction:column;gap:4px}.leaderboard-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid transparent;background:0 0;font-family:Archivo,sans-serif;text-align:left;cursor:pointer;transition:.15s;box-sizing:border-box}.leaderboard-row:not(.leaderboard-row--1):not(.leaderboard-row--2):not(.leaderboard-row--3){padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-hairline);background-color:rgba(0,0,0,.015)}.leaderboard-row:not(.leaderboard-row--1):not(.leaderboard-row--2):not(.leaderboard-row--3) .leaderboard-row__rank{background-color:rgba(0,0,0,.04);border:1px solid var(--border-hairline);color:var(--text-muted)}.leaderboard-row:hover{background-color:rgba(0,0,0,.03)}.leaderboard-row--1{background-color:rgba(245,158,11,.07);border-color:rgba(245,158,11,.22)}.leaderboard-row--2{background-color:rgba(100,116,139,.05);border-color:rgba(100,116,139,.18)}.leaderboard-row--3{background-color:rgba(180,83,9,.05);border-color:rgba(180,83,9,.18)}.leaderboard-row__rank{width:26px;height:26px;border-radius:6px;border:1px solid transparent;font-size:13px;font-weight:700;color:var(--text-muted);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box}.leaderboard-row__rank--1{background-color:rgba(245,158,11,.16);color:#b45309;border:1px solid rgba(245,158,11,.4);font-weight:800}.leaderboard-row__rank--2{background-color:rgba(100,116,139,.14);color:#334155;border:1px solid rgba(100,116,139,.35);font-weight:800}.leaderboard-row__rank--3{background-color:rgba(180,83,9,.12);color:#9a3412;border:1px solid rgba(180,83,9,.32);font-weight:800}.leaderboard-row__name{flex:1;min-width:0;font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-row__stats{display:flex;align-items:center;gap:10px;flex-shrink:0}.leaderboard-row__diff{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;min-width:32px;text-align:right}.leaderboard-row__diff--pos{color:#16a34a}.leaderboard-row__diff--neg{color:#dc2626}.leaderboard-row__diff--zero{color:var(--text-muted)}.leaderboard-row__record{font-size:15px;font-weight:800;text-align:right;min-width:40px;flex-shrink:0;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:flex-end;gap:1px}.leaderboard-row__win{color:#16a34a}.leaderboard-row__sep{color:var(--text-muted);font-weight:600}.leaderboard-row__loss{color:#dc2626}.bracket-tree{width:100%;display:flex;flex-direction:column;gap:12px}.bracket-round-label{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.bracket-slot{width:100%;height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border:1px solid var(--border-hairline);background-color:var(--bg-page);margin-bottom:4px}.bracket-slot__name{font-size:14px;font-weight:400;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bracket-slot__score{font-size:14px;font-weight:700;color:var(--text-primary)}.champion-card{width:100%;display:flex;flex-direction:column;align-items:center;padding:32px 16px;text-align:center}.champion-card__trophy{width:56px;height:56px;border-radius:50%;background-color:var(--brand-gold);color:#000;font-size:28px;font-weight:900;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.champion-card__eyebrow{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.champion-card__name{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:6px}.champion-card__subtitle{font-size:14px;color:var(--text-muted)}.back-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius-sm);background-color:var(--bg-page);border:1px solid var(--border-hairline);font-family:Archivo,sans-serif;font-size:13px;font-weight:700;color:var(--text-primary);cursor:pointer;margin-bottom:16px;width:fit-content;transition:.15s}.back-btn:hover{background-color:rgba(0,0,0,.03);border-color:var(--action-primary);color:var(--action-primary)}.score-col-header{width:100%;display:flex;justify-content:space-between;margin-bottom:16px;font-size:13px;font-weight:600;color:var(--text-muted)}.match-card__set-label{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.match-card__set-label--live{color:var(--status-live)}.match-card__score-fields{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.match-card__score-sep{font-size:20px;color:var(--text-muted)}.score-field{background-color:var(--bg-page);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);color:var(--text-primary);outline:0}.form-field{width:100%;display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.form-field__label{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.form-field__input{width:100%;height:44px;padding:0 14px;background-color:var(--bg-page);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);font-family:Archivo,sans-serif;font-size:15px;color:var(--text-primary);outline:0}.form-field__input:focus{border-color:var(--action-primary)}.team-chip{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border-hairline)}.team-chip__info{display:flex;flex-direction:column;gap:2px}.team-chip__name{font-size:15px;font-weight:700}.team-chip__code{font-size:12px;font-weight:600;color:var(--text-muted)}.team-chip__edit{background:0 0;border:none;color:var(--action-primary);font-weight:600;font-size:13px;cursor:pointer}.team-chip__remove{background:0 0;border:none;color:var(--brand-red);font-size:16px;cursor:pointer}.empty-state{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;gap:8px}.empty-state__icon{width:32px;height:32px;color:var(--text-muted);margin-bottom:6px}.empty-state__title{font-size:18px;font-weight:700}.empty-state__body{font-size:14px;color:var(--text-muted);line-height:1.4}.confirm-overlay,.modal-overlay{position:absolute;inset:0;background-color:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.confirm-card,.modal-sheet{width:100%;max-width:340px;background-color:var(--bg-page);border-radius:var(--radius-sm);padding:24px}.confirm-card__title{font-size:18px;font-weight:700;margin-bottom:8px}.confirm-card__body{font-size:14px;color:var(--text-muted);margin-bottom:20px}.confirm-card__row{display:flex;gap:12px}#admin-modal.active,#confirm-modal.active{display:flex}#admin-modal,#confirm-modal{display:none}.view__header-bar{padding:12px 20px 0;background-color:var(--bg-page);flex-shrink:0;min-height:48px;box-sizing:border-box;z-index:10}.view__header-bar:empty{display:none;min-height:0}#view-bracket .view__body,#view-dashboard .view__body,#view-leaderboard .view__body,#view-matches .view__body{padding-top:8px;overflow:hidden}.round-chips{display:flex;gap:22px;margin:0;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--border-hairline);padding:0;min-height:36px;box-sizing:border-box}.round-chips::-webkit-scrollbar{display:none}.round-chip{padding:6px 2px 10px;background:0 0;border:none;border-bottom:2px solid transparent;border-radius:0;font-family:Archivo,sans-serif;font-size:13px;font-weight:700;color:var(--text-muted);cursor:pointer;white-space:nowrap;letter-spacing:.02em;transition:color .15s,border-color .15s;position:relative;margin-bottom:-1px}.round-chip:hover{color:var(--text-primary)}.round-chip.active{color:var(--text-primary);border-bottom-color:var(--action-primary)}.matches-content-wrapper{width:100%;display:flex;flex-direction:column;gap:16px}.matches-slot-section{width:100%}.matches-slot-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 2px}.matches-slot-time{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.matches-slot-badge{font-size:11px;font-weight:600;color:var(--action-primary);background:rgba(0,105,126,.08);padding:2px 8px;border-radius:99px}.matches-grid{display:grid;grid-template-columns:1fr;gap:8px;width:100%}@media (min-width:768px){.matches-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px}}.carousel-container{width:100%;flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;height:100%;max-height:100%}.carousel-track{display:flex;width:100%;flex:1;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overscroll-behavior-y:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0;touch-action:pan-x;height:100%;max-height:100%}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{flex:0 0 100%;width:100%;min-width:100%;max-width:100%;height:100%;max-height:100%;scroll-snap-align:start;display:flex;flex-direction:column;gap:4px;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.carousel-slide::-webkit-scrollbar{display:none;width:0;height:0}#view-dashboard .carousel-slide[data-slide="0"],#view-dashboard .carousel-slide[data-slide="2"]{overflow-y:hidden!important;overscroll-behavior:none!important;touch-action:pan-x!important}#view-dashboard .carousel-slide[data-slide="1"]{overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y pan-x;scrollbar-width:none;-ms-overflow-style:none}#view-dashboard .carousel-slide[data-slide="1"]::-webkit-scrollbar{display:none;width:0;height:0}.carousel-pagination{display:flex;justify-content:center;align-items:center;gap:6px;padding:10px 0 6px;flex-shrink:0}.carousel-dot{width:6px;height:6px;border-radius:50%;background-color:var(--border-hairline);transition:.2s}.carousel-dot.active{width:16px;border-radius:3px;background-color:var(--action-primary)}.bracket-match{width:100%;border:1px solid var(--border-hairline);background:var(--bg-page);padding:8px 12px;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px;text-align:left;font-family:inherit;color:inherit;box-shadow:0 1px 3px rgba(0,0,0,.02);transition:border-color .15s,box-shadow .15s}.bracket-match--tappable{cursor:pointer}.bracket-match--tappable:hover{border-color:var(--action-primary);box-shadow:0 2px 8px rgba(0,105,126,.08)}.bracket-match--tappable:active{opacity:.88}.bracket-match--final{border-color:rgba(252,189,17,.4);background:linear-gradient(180deg,rgba(252,189,17,.03) 0,var(--bg-page) 100%)}.bracket-match--third{border-color:rgba(217,136,77,.3)}.bracket-match__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:2px;border-bottom:1px solid rgba(0,0,0,.04)}.bracket-match__label{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--action-primary);letter-spacing:.06em}.bracket-match__meta{font-size:10px;font-weight:600;color:var(--text-muted)}.bracket-match__meta--projected{color:var(--action-primary);font-weight:700}.bracket-match__team-row{display:flex;align-items:center;justify-content:space-between;padding:2px 0;gap:8px}.bracket-match__team-row--winner .bracket-match__team-name{font-weight:800;color:var(--text-primary)}.bracket-match__team-row--winner .bracket-match__team-score{font-weight:800;color:var(--action-primary)}.bracket-match__team-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.bracket-match__team-score{font-size:14px;font-weight:700;color:var(--text-muted);min-width:16px;text-align:right}.bracket-stage-content{width:100%;display:flex;flex-direction:column;gap:8px}@keyframes pulse-dot{0%{transform:scale(.95);opacity:.8;box-shadow:0 0 0 0 rgba(0,105,126,.7)}70%{transform:scale(1.05);opacity:1;box-shadow:0 0 0 4px rgba(0,105,126,0)}100%{transform:scale(.95);opacity:.8;box-shadow:0 0 0 0 rgba(0,105,126,0)}}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background-color:var(--action-primary);animation:1.8s ease-in-out infinite pulse-dot;flex-shrink:0}.bracket-prediction-pill{display:flex;align-items:center;justify-content:space-between;background:rgba(0,105,126,.06);border:1px solid rgba(0,105,126,.18);border-radius:var(--radius-sm);padding:6px 12px;margin-bottom:8px;gap:8px;flex-shrink:0}.bracket-prediction-pill__left{display:flex;align-items:center;gap:8px;min-width:0}.bracket-prediction-pill__text{font-size:11px;font-weight:700;color:var(--action-primary);letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bracket-prediction-pill__btn{font-size:11px;padding:3px 8px;height:24px;flex-shrink:0}.bracket-match--projected{border-style:dashed;cursor:pointer}.bracket-match--projected:hover{border-color:var(--action-primary);background:var(--bg-surface-elevated,var(--bg-page))}.scorecard-unified{background:var(--bg-page);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:16px;display:flex;flex-direction:column;gap:14px;box-shadow:0 1px 4px rgba(0,0,0,.03)}.scorecard-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--border-hairline)}.scorecard-team{display:flex;flex-direction:column;gap:2px}.scorecard-team--a{text-align:left}.scorecard-team--b{text-align:right}.scorecard-team-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.scorecard-team-name{font-size:15px;font-weight:800;color:var(--text-primary);line-height:1.25;word-break:break-word;overflow-wrap:break-word}.scorecard-meta-badge{display:flex;flex-direction:column;align-items:center;gap:2px}.scorecard-vs{font-size:10px;font-weight:800;color:var(--action-primary);background:rgba(235,94,40,.1);padding:2px 6px;border-radius:4px;letter-spacing:.06em}.scorecard-court{font-size:10px;font-weight:700;color:var(--text-muted);white-space:nowrap}.scorecard-sets{display:flex;flex-direction:column;gap:10px}.scorecard-set-row{display:flex;flex-direction:column;align-items:center;gap:4px}.scorecard-set-tag{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.scorecard-set-tag--decider{color:var(--action-primary)}.scorecard-inputs{display:flex;align-items:center;justify-content:center;gap:16px;width:100%}.scorecard-sep{font-size:20px;font-weight:700;color:var(--text-muted)}.score-field{width:68px;height:48px;background-color:var(--bg-page);border:1.5px solid var(--border-hairline);border-radius:var(--radius-sm);font-family:Archivo,sans-serif;font-size:24px;font-weight:900;text-align:center;transition:border-color .15s}.score-field:focus{border-color:var(--action-primary)}.carousel-dot{cursor:pointer;border:none;padding:0}.carousel-track{cursor:grab;user-select:none;-webkit-user-select:none}.carousel-track:active{cursor:grabbing}@media (max-height:720px){.app-header{height:84px;padding-bottom:10px}.app-header__title{font-size:18px}.match-card{padding:6px 0 10px;gap:4px}.match-card__team-name{font-size:18px}.match-card__score{font-size:28px}.podium{padding:4px 0 10px}.podium__place--first{height:76px}.podium__place--second{height:64px}.podium__place--third{height:54px}.view__body{padding:14px 20px 0}.tab-nav{height:54px}}@media (max-width:767px){*{scrollbar-width:none!important;-ms-overflow-style:none!important}::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}}@media (min-width:768px){*{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,0.15) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}body{background-color:var(--bg-page);display:block;width:100vw;height:100vh;height:100dvh;margin:0;padding:0;overflow:hidden}#app{width:100vw;max-width:none;height:100dvh;margin:0;border:none;box-shadow:none;background-color:var(--bg-page);display:flex;flex-direction:column}#main-app{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.app-header{order:1;height:70px;padding:0;display:flex;justify-content:center;border-bottom:1px solid var(--border-hairline);background-color:var(--bg-page);position:relative;flex-shrink:0;width:100%}.app-header__inner{max-width:1280px;width:100%;margin:0 auto;padding:0 clamp(24px,4vw,48px);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;position:relative}.app-header__titles{display:flex;flex-direction:column;justify-content:center}.app-header__eyebrow{font-size:11px;font-weight:700;margin-bottom:2px;letter-spacing:.08em;color:var(--text-muted)}.app-header__title{font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary)}.app-header__utility{position:static;display:flex;align-items:center;gap:16px}.team-badge{font-size:13px;font-weight:700;color:var(--action-primary);background-color:rgba(0,105,126,.08);border:1px solid rgba(0,105,126,.2);padding:6px 12px;border-radius:var(--radius-sm);transition:.15s}.team-badge:hover{background-color:rgba(0,105,126,.14)}.tab-nav{order:2;height:52px;border-top:none;border-bottom:1px solid var(--border-hairline);padding:0;display:flex;justify-content:center;background-color:var(--bg-page);z-index:20;flex-shrink:0;width:100%;box-shadow:none}.tab-nav__inner{max-width:1280px;width:100%;margin:0 auto;padding:0 clamp(24px,4vw,48px);display:flex;align-items:center;justify-content:flex-start;gap:8px;box-sizing:border-box}.tab-btn{flex:0 0 auto;width:auto;height:38px;flex-direction:row;gap:8px;padding:0 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;color:var(--text-muted);border:1px solid transparent;transition:.15s}.tab-btn:hover{color:var(--text-primary);background-color:rgba(0,0,0,.03)}.tab-btn.active,.tab-btn.tab-btn--active{color:var(--action-primary);background-color:rgba(0,105,126,.08);border-color:rgba(0,105,126,.25);font-weight:700}.tab-btn .tab-icon{width:16px;height:16px;margin-bottom:0}.app-main{order:3;flex:1;overflow-y:auto;overflow-x:hidden;position:relative;background-color:var(--bg-page)}.view{position:relative;inset:auto;min-height:100%;overflow:visible;display:none;flex-direction:column}.view.active{display:flex}.view__header-bar{padding:20px clamp(24px,4vw,48px) 0;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box}.view__body{padding:24px clamp(24px,4vw,48px) 64px;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box;overflow:visible;flex:1}#view-bracket .view__body,#view-dashboard .view__body,#view-leaderboard .view__body,#view-matches .view__body{padding-top:16px}.dashboard-desktop-grid{display:grid;grid-template-columns:minmax(380px,1.25fr) minmax(320px,1fr);gap:clamp(24px,3.5vw,48px);width:100%;align-items:start}.dashboard-col-primary,.dashboard-col-secondary{display:flex;flex-direction:column;gap:20px}.dash-overview-card{border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:24px;background-color:var(--bg-page);box-shadow:0 1px 6px rgba(0,0,0,.03)}.action-footer{display:none!important}.matches-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;width:100%}.match-card{border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:16px 20px;background:var(--bg-page);box-shadow:0 1px 3px rgba(0,0,0,.02);display:flex;flex-direction:column;gap:8px;transition:border-color .15s,box-shadow .15s,transform .15s}.match-card:last-child{border-bottom:1px solid var(--border-hairline)}.match-card--tappable:hover{border-color:var(--action-primary);box-shadow:0 4px 12px rgba(0,0,0,.06);transform:translateY(-1px);opacity:1}.leaderboard-desktop-grid{display:grid;grid-template-columns:clamp(320px,28vw,400px) 1fr;gap:clamp(28px,4vw,56px);width:100%;align-items:start}.leaderboard-col-podium,.leaderboard-col-table{display:flex;flex-direction:column;gap:12px}.desktop-table-container{width:100%;overflow-x:auto;border:1px solid var(--border-hairline);border-radius:var(--radius-sm);background-color:var(--bg-page);box-shadow:0 1px 4px rgba(0,0,0,.02)}.desktop-table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}.desktop-table th{font-size:11px;font-weight:800;text-transform:uppercase;color:var(--text-muted);letter-spacing:.06em;padding:14px 18px;border-bottom:2px solid var(--border-hairline);background-color:rgba(0,0,0,.02)}.desktop-table td{padding:14px 18px;border-bottom:1px solid var(--border-hairline);color:var(--text-primary)}.desktop-table tr.desktop-table-row:hover td{background-color:rgba(0,105,126,.04);cursor:pointer}.desktop-table .td-rank{font-weight:700;color:var(--text-muted);width:54px;padding-right:6px}.desktop-table .rank-badge{width:26px;height:26px;border-radius:6px;font-size:13px;font-weight:700;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box}.desktop-table .rank-badge--1{background-color:rgba(245,158,11,.16);color:#b45309;border:1px solid rgba(245,158,11,.4);font-weight:800}.desktop-table .rank-badge--2{background-color:rgba(100,116,139,.14);color:#334155;border:1px solid rgba(100,116,139,.35);font-weight:800}.desktop-table .rank-badge--3{background-color:rgba(180,83,9,.12);color:#9a3412;border:1px solid rgba(180,83,9,.32);font-weight:800}.desktop-table tr.desktop-table-row--1 td{background-color:rgba(245,158,11,.04)}.desktop-table tr.desktop-table-row--2 td{background-color:rgba(100,116,139,.025)}.desktop-table tr.desktop-table-row--3 td{background-color:rgba(180,83,9,.025)}.desktop-table .td-name{font-weight:600;font-size:15px}.desktop-table .td-stat{text-align:right;font-weight:700}.bracket-desktop-tree{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(20px,2.5vw,32px);width:100%;align-items:start;padding-top:8px}.bracket-stage-col{display:flex;flex-direction:column;gap:16px;background:rgba(0,0,0,.015);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:16px}.bracket-stage-col__header{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--action-primary);letter-spacing:.06em;padding-bottom:8px;border-bottom:1px solid var(--border-hairline)}.bracket-stage-content{display:flex;flex-direction:column;gap:12px}.bracket-match{margin-bottom:0;box-shadow:0 1px 3px rgba(0,0,0,.02)}.subscreen-desktop-card{max-width:640px;width:100%;margin:24px auto;padding:36px;background-color:var(--bg-page);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);box-shadow:0 4px 20px rgba(0,0,0,.05);display:flex;flex-direction:column}.code-entry{max-width:440px;max-height:560px;margin:auto;border:1px solid var(--border-hairline);border-radius:var(--radius-sm);box-shadow:0 8px 32px rgba(0,0,0,.06);padding:48px 36px}}.score-entry-card{background-color:var(--bg-card);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:20px 16px;box-shadow:0 1px 4px rgba(0,0,0,.03);display:flex;flex-direction:column;gap:16px}.score-entry-team{display:flex;flex-direction:column;gap:12px;background-color:rgba(0,0,0,.015);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:14px 16px}.score-entry-team__header{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%}.score-entry-team__badge{font-size:10px;font-weight:800;letter-spacing:.06em;color:var(--action-primary);background-color:rgba(0,107,125,.08);padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase}.score-entry-team__name{font-size:16px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;line-height:1.25}.score-entry-team__sets{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.score-entry-set{display:flex;flex-direction:column;align-items:center;gap:6px}.score-entry-set__label{font-size:10px;font-weight:700;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.score-entry-set--decider .score-entry-set__label{color:var(--action-primary)}.score-entry-card .score-input{width:100%;height:46px;text-align:center;font-size:18px;font-weight:700;font-family:inherit;background-color:var(--bg-page);border:1.5px solid var(--border-hairline);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color .15s,box-shadow .15s;padding:0;margin:0;-moz-appearance:textfield}.score-entry-card .score-input::-webkit-inner-spin-button,.score-entry-card .score-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.score-entry-card .score-input:focus{outline:0;border-color:var(--action-primary);box-shadow:0 0 0 3px rgba(0,107,125,.15)}.score-entry-divider{display:flex;align-items:center;gap:12px;padding:0 4px}.score-entry-divider__line{flex:1;height:1px;background-color:var(--border-hairline)}.score-entry-divider__badge{font-size:11px;font-weight:800;color:var(--text-muted);letter-spacing:.08em}.score-entry-save-btn{margin-top:6px;height:46px;border-radius:var(--radius-sm)}