@import"https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=Outfit:wght@400;500;600;700&display=swap";:root{--void: #05070c;--night: #080b12;--panel: #0c121c;--panel-2: #101826;--cyan: #00b7c9;--pink: #ff1f69;--grad: linear-gradient(90deg, var(--cyan) 0%, var(--pink) 100%);--grad-tb: linear-gradient(180deg, var(--cyan) 0%, var(--pink) 100%);--ink: #f4f7fb;--mute: #8b97ab;--ok: #12c4b0;--bad: #ff1f69;--wait: #f0c14a;--radius: 16px;--font: "Outfit", system-ui, sans-serif;--display: "Oswald", "Arial Narrow", sans-serif;--glow-c: rgba(0, 183, 201, .4);--glow-p: rgba(255, 31, 105, .32);--game: #ff7a18;--glow-g: rgba(255, 122, 24, .4);--grad-game: linear-gradient(90deg, #ff7a18 0%, #ff1f69 100%)}*{box-sizing:border-box}html,body,#root{min-height:100%;width:100%;max-width:100%;overflow-x:clip}body{margin:0;font-family:var(--font);color:var(--ink);background-color:var(--void);background-image:radial-gradient(90% 50% at 0% -10%,rgba(0,183,201,.16),transparent 55%),radial-gradient(80% 45% at 110% 8%,rgba(255,31,105,.16),transparent 50%),repeating-linear-gradient(125deg,transparent 0 18px,rgba(0,183,201,.03) 18px 19px);background-attachment:fixed}button,input,select,textarea{font:inherit;color:inherit}.app{max-width:480px;width:100%;margin:0 auto;min-height:100dvh;padding:12px max(18px,env(safe-area-inset-left,0px)) calc(92px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-right,0px));position:relative;overflow-x:clip}.brand{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;position:relative}.brand-mark{display:flex;align-items:center;gap:10px;min-width:0}.brand-logo,.gate-logo{display:block;object-fit:contain;filter:drop-shadow(0 0 12px var(--glow-c)) drop-shadow(0 0 18px var(--glow-p))}.brand-logo{width:52px;height:52px;flex-shrink:0}.gate-logo{width:128px;height:128px;margin:0 auto 12px}.brand h1{margin:0;font-family:var(--display);font-weight:700;letter-spacing:.06em;font-size:clamp(22px,7vw,32px);text-transform:uppercase;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:.9;overflow-wrap:anywhere}.brand small{color:var(--mute);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.lane{position:relative;background:linear-gradient(var(--panel),var(--panel)) padding-box,var(--grad) border-box;border:2px solid transparent;border-radius:18px;padding:16px 12px 18px;overflow:hidden;box-shadow:0 0 28px #00b7c914}.lane:before{content:"";position:absolute;inset:auto -20% -40% 40%;height:120px;background:radial-gradient(circle,var(--glow-p),transparent 70%);pointer-events:none}.lane.game{background:linear-gradient(#120c0a,#120c0a) padding-box,var(--grad-game) border-box;box-shadow:0 0 32px #ff7a182e}.lane.game:before{background:radial-gradient(circle,var(--glow-g),transparent 70%)}.lane.game h2{color:#ffd2a8}.game-facts{display:grid;gap:8px;margin:10px 0 4px}.game-fact{padding:10px 12px;border-radius:10px;background:#ff7a181a;border:1px solid rgba(255,122,24,.3);border-left:3px solid var(--game);text-align:left;min-width:0}.game-fact .kicker{margin:0 0 3px;color:var(--game)}.game-fact p{margin:0;overflow-wrap:anywhere;word-break:break-word}.game-fact.vs p{font-family:var(--display);font-size:clamp(16px,4.8vw,20px);letter-spacing:.04em;text-transform:uppercase;color:#ffd2a8;line-height:1.15}.game-fact.hall p{font-size:15px;font-weight:600;color:var(--ink);line-height:1.35}.game-coach{margin:0;color:var(--mute);font-size:13px}.game-facts.compact{margin:8px 0 6px;gap:6px}.game-facts.compact .game-fact{padding:8px 10px}.game-facts.compact .game-fact.vs p{font-size:15px}.game-facts.compact .game-fact.hall p{font-size:13px}.game-stamp{display:inline-block;font-family:var(--display);font-weight:700;letter-spacing:.18em;font-size:12px;color:#140c0a;background:var(--grad-game);padding:4px 10px;border-radius:4px;transform:rotate(-2deg);margin:0 0 8px}.card.game{border-color:#ff7a186b;background:linear-gradient(90deg,#ff7a188c 0 5px,#120c0af5 5px);box-shadow:0 0 18px #ff7a181a}.card.game h3{color:#ffd2a8}.badge.game{background:#ff7a184d;color:#ffd2a8}.pay-box{margin:10px 0 0;padding:12px;border-radius:12px;background:#ff7a181f;border:1px solid rgba(255,122,24,.38);overflow-wrap:anywhere}.pay-box .kicker{color:var(--game);margin-bottom:4px}.pay-box p{margin:0;font-size:14px;white-space:pre-wrap}.pay-box .pay-sum{font-family:var(--display);font-size:22px;letter-spacing:.04em;color:#ffd2a8;margin:0 0 6px}.pay-box .btn{margin-top:10px;width:100%}.game-wrap .kicker{color:var(--game)}.game-wrap h2.sec{color:#ffd2a8}.kicker{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--cyan);margin:0 0 6px;overflow-wrap:anywhere;max-width:100%;padding-inline-start:2px}.lane h2{margin:0 0 4px;font-family:var(--display);font-size:clamp(18px,5.6vw,26px);letter-spacing:.04em;text-transform:uppercase;overflow-wrap:anywhere;word-break:break-word}.meta{color:var(--mute);font-size:14px;margin:0 0 12px;overflow-wrap:anywhere}.row{display:flex;gap:8px;flex-wrap:wrap}.row>*{flex:1 1 0;min-width:0}.row .field{margin:0}.pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0;max-width:100%}.pair .field{margin:0;min-width:0}.rsvp-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;margin:12px 0 0}.rsvp-row.two{grid-template-columns:1fr 1fr}.rsvp-row>*{flex:none;min-width:0;width:auto;max-width:100%}.group-actions{display:flex;flex-wrap:wrap;gap:8px}.group-actions .btn{flex:1 1 120px;width:auto;min-width:0}.btn{appearance:none;border:0;background:var(--panel-2);color:var(--ink);padding:12px;border-radius:12px;font-weight:600;cursor:pointer;max-width:100%}.rsvp-row .btn{padding:10px 4px;font-size:13px;white-space:nowrap}.rsvp-row .btn.on.ok,.rsvp-row .btn.ok.on{background:#12c4b073;box-shadow:0 0 0 2px var(--ok)}.rsvp-row .btn.on.bad,.rsvp-row .btn.bad.on{background:#ff1f6966;box-shadow:0 0 0 2px var(--bad)}.rsvp-row .btn.on.ghost,.rsvp-row .btn.ghost.on{background:#f0c14a47;box-shadow:0 0 0 2px var(--wait)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--grad);color:#061018;font-weight:700;box-shadow:0 0 20px var(--glow-c)}.btn.ok{background:#12c4b02e;color:#9ff5ea;border:1px solid rgba(18,196,176,.45)}.btn.bad{background:#ff1f6924;color:#ffb3d8;border:1px solid rgba(255,31,105,.4)}.btn.ghost{background:transparent;border:1px solid rgba(0,183,201,.28)}.card{background:#0c121ceb;border:1px solid rgba(0,183,201,.16);border-radius:var(--radius);padding:14px;margin:12px 0;position:relative;max-width:100%;min-width:0;overflow:visible}button.card{display:block;appearance:none;-webkit-appearance:none;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit}.card-split{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.card-split .badge-wrap{flex:0 0 auto;display:block;line-height:0}.card h3{margin:0 0 6px;font-size:16px;overflow-wrap:anywhere}.muted{color:var(--mute);font-size:13px;overflow-wrap:anywhere}.jersey{font-family:var(--display);font-size:clamp(28px,8vw,42px);line-height:1;color:var(--cyan);letter-spacing:.02em;text-shadow:0 0 12px var(--glow-c);flex-shrink:0}.badge{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;flex:0 0 auto;height:auto;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--panel-2);white-space:nowrap;line-height:1.25}.badge.ok{background:#12c4b040;color:#9ff5ea}.badge.bad{background:#ff3d6e38;color:#ffc1d2}.badge.wait{background:#f0c14a38;color:#ffe7a3}.badge.late{background:#2a2238;color:#e8c4ff}.list{display:flex;flex-direction:column;gap:8px}.person{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(0,183,201,.08);min-width:0}.person:last-child{border-bottom:0}.person.roster{flex-wrap:wrap;align-items:flex-start;gap:8px}.person-top{display:flex;align-items:center;gap:8px;min-width:0;width:100%}.person-top .person-hit{flex:1 1 auto}.person-name{min-width:0;flex:1;overflow-wrap:break-word;word-break:break-word}.person-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding-left:46px}.person-actions .btn{flex:0 0 auto;width:auto}.person.pay-row{flex-wrap:wrap;align-items:flex-start}.person.pay-row .btn.primary{width:100%;margin-top:4px}.person .btn{flex:0 0 auto;width:auto;padding:8px 10px;font-size:13px;white-space:nowrap}.person.pay-row .btn.primary{width:100%}.person-hit{appearance:none;background:none;border:0;padding:0;margin:0;text-align:left;cursor:pointer;color:inherit;font:inherit;display:flex;align-items:center;gap:10px;min-width:0}.tg-link{appearance:none;background:none;border:0;padding:0;margin:4px 0 0;color:var(--cyan);font:inherit;font-weight:600;cursor:pointer;text-shadow:0 0 10px var(--glow-c)}.avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--panel-2);display:grid;place-items:center;font-family:var(--display);font-size:14px;color:var(--cyan);flex-shrink:0;border:1px solid rgba(255,31,105,.35)}.grow{flex:1;min-width:0;overflow-wrap:anywhere}.num{font-family:var(--display);font-size:20px;width:36px;text-align:right;color:var(--cyan);flex-shrink:0}.field{display:flex;flex-direction:column;gap:6px;margin:10px 0;min-width:0;max-width:100%}.field span{font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.04em;line-height:1.3}input,select,textarea{background:#070a10;border:1px solid rgba(0,183,201,.22);border-radius:10px;padding:11px 12px;width:100%;max-width:100%;min-width:0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px #ff1f6926}textarea{min-height:90px;resize:vertical}label.check{display:flex;align-items:center;gap:8px;font-size:14px}.nav{position:fixed;left:0;right:0;bottom:0;margin:0 auto;width:100%;max-width:480px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#05070cf0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:2px solid var(--cyan);box-shadow:0 -10px 28px #ff1f691f;padding:8px 4px calc(10px + env(safe-area-inset-bottom,0px));z-index:20}.nav.staff{grid-template-columns:repeat(6,minmax(0,1fr))}.nav button{background:none;border:0;color:var(--mute);font-size:10px;letter-spacing:0;text-transform:uppercase;font-weight:600;padding:6px 1px;line-height:1.15;white-space:normal}.nav.staff button{font-size:9px}.nav button.on{color:var(--cyan);text-shadow:0 0 10px var(--glow-c)}.gate{min-height:70dvh;display:grid;place-items:center;text-align:center;padding:40px 16px}.gate h1{margin:0 0 8px;font-family:var(--display);letter-spacing:.14em;font-size:clamp(32px,10vw,42px);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-gate{place-items:stretch;text-align:left;max-width:360px;margin:0 auto}.auth-gate .gate-logo,.auth-gate .kicker,.auth-gate h1,.auth-gate>.muted{text-align:center}.auth-gate .gate-logo{margin:0 auto}.auth-tabs{display:flex;gap:8px;margin:8px 0 4px}.auth-tabs button{flex:1;border:0;background:var(--panel-2);color:var(--mute);border-radius:10px;padding:10px 8px;cursor:pointer}.auth-tabs button.on{color:var(--ink);box-shadow:inset 0 0 0 1px var(--cyan)}.auth-forgot,.auth-back{display:block;width:100%;margin-top:10px;padding:8px;border:0;background:transparent;color:var(--mute);cursor:pointer;font:inherit;text-align:center}.auth-forgot:hover,.auth-back:hover{color:var(--ink)}.tg-login{display:flex;justify-content:center;margin:12px 0 4px;min-height:40px}.err{color:#ff9ab8;font-size:13px;margin-top:8px;overflow-wrap:anywhere}.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0 0}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:var(--mute);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 4px;font-weight:600}.table td{padding:8px 4px;border-top:1px solid rgba(0,183,201,.1);overflow-wrap:anywhere}.table th.r,.table td.r{text-align:right;font-variant-numeric:tabular-nums}.table td .person-hit{display:inline;gap:0}.me-row{background:linear-gradient(90deg,#00b7c91f,#ff1f691a)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips button{background:var(--panel-2);border:1px solid rgba(0,183,201,.12);border-radius:999px;padding:6px 10px;font-size:12px;max-width:100%}.chips button.on{background:var(--grad);color:#061018;border-color:transparent;font-weight:700}.skip{margin-top:8px}.kicker.cal-day{margin:16px 0 4px}h2.sec{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;font-size:clamp(18px,5.5vw,22px);margin:20px 0 8px;overflow-wrap:anywhere;max-width:100%;padding-inline-start:2px}.back{background:none;border:0;color:var(--cyan);padding:0 0 10px;cursor:pointer}.hit-plain{appearance:none;background:none;border:0;padding:0;margin:0 0 8px;width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}.stack-btns{display:flex;flex-direction:column;gap:8px;margin-top:14px}.stack-btns .btn{width:100%}.rsvp-head{margin:14px 0 4px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--cyan);font-weight:600}.flash{margin:12px 0 0;padding:12px 14px;background:var(--grad);color:#061018;font-weight:700;border-radius:10px;overflow-wrap:anywhere}.toast{position:fixed;left:12px;right:12px;bottom:calc(88px + env(safe-area-inset-bottom,0px));margin:0 auto;max-width:420px;padding:10px 14px;border-radius:12px;background:#f4f7fb;color:#061018;font-weight:700;font-size:14px;box-shadow:0 10px 30px #00000059;opacity:0;pointer-events:none;z-index:80;transition:opacity .18s ease}.toast.on{opacity:1}.offline-bar{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#ff1f6929;border:1px solid rgba(255,31,105,.4);color:#ffd4e0;font-weight:600}.note{margin:8px 0 0;padding:10px 12px;border-radius:10px;background:#00b7c91a;border:1px solid rgba(0,183,201,.28);color:var(--ink);font-size:14px;overflow-wrap:anywhere}.sched-loc{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);font-size:clamp(18px,5.5vw,22px);margin:22px 0 4px}.sched-days{color:var(--pink);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:13px;margin:12px 0 4px}.sched-group{font-weight:700;font-size:15px;margin:10px 0 0}.sched-row{appearance:none;display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid rgba(0,183,201,.14);padding:10px 0;color:inherit;font:inherit;cursor:pointer}.invite-box{margin:12px 0 0;padding:12px;border-radius:12px;background:#00b7c914;border:1px solid rgba(0,183,201,.28)}.invite-url{margin:0 0 8px;font-size:13px;word-break:break-all;overflow-wrap:anywhere;color:var(--ink);user-select:all;-webkit-user-select:all}.entity-row{display:flex;gap:8px;align-items:center;margin:8px 0}.entity-row .pick,.entity-row .grow{flex:1;min-width:0}.entity-row .pick{appearance:none;text-align:left;background:var(--panel-2);border:1px solid rgba(0,183,201,.22);border-radius:12px;padding:10px 12px;overflow-wrap:anywhere}.entity-row .pick.on{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan)}.entity-row .btn{flex:0 0 auto;width:auto;padding:10px 12px}.sched-row .time{font-family:var(--display);color:var(--cyan);font-size:18px;letter-spacing:.02em;flex-shrink:0}@media(max-width:360px){.rsvp-row{gap:4px}.rsvp-row .btn{font-size:12px;padding:10px 2px}.nav button{font-size:9px}}.legal-page{max-width:480px;margin:0 auto;padding:16px 16px 40px}.legal-page h1{margin:0 0 8px;font-family:var(--display);letter-spacing:.08em;font-size:28px}.legal-page h2{margin:18px 0 8px;font-size:16px}.legal-page p,.legal-page li{font-size:14px;line-height:1.5}.legal-page a,.legal-nav a,.site-foot a{color:var(--cyan)}.legal-page .gate-logo{margin-bottom:8px}.legal-nav,.site-foot{display:flex;flex-wrap:wrap;gap:8px 12px;margin:16px 0}.site-foot{justify-content:center;margin-top:24px}.site-foot a,.legal-nav a{font-size:13px}@media(prefers-reduced-motion:reduce){.brand-logo,.gate-logo{filter:none}}
