@import"https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Sora:wght@600;700;800&display=swap";:root{--bg-base: #03112b;--bg-deep: #020b1f;--panel: rgba(7, 24, 53, .78);--panel-border: rgba(90, 224, 252, .22);--text-primary: #e9fcff;--text-muted: rgba(166, 232, 245, .86);--accent: #37e8ff;--accent-strong: #17cdea;--chip-bg: rgba(46, 104, 163, .28);--chip-border: rgba(116, 211, 240, .24);font-family:Manrope,SF Pro Display,system-ui,sans-serif;color:var(--text-primary);background:var(--bg-base)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-height:100dvh;background:radial-gradient(1100px 520px at 12% -8%,rgba(27,124,255,.23),transparent 58%),radial-gradient(900px 460px at 95% 2%,rgba(16,220,255,.16),transparent 56%),linear-gradient(180deg,#041533 0%,#03122e 42%,var(--bg-deep) 100%)}.app-shell{margin:0 auto;width:min(100%,820px);min-height:100dvh;padding:12px 12px 16px;padding-top:max(12px,constant(safe-area-inset-top));padding-right:max(12px,constant(safe-area-inset-right));padding-bottom:max(16px,constant(safe-area-inset-bottom));padding-left:max(12px,constant(safe-area-inset-left));padding-top:max(12px,env(safe-area-inset-top));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(16px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left))}.screen{border:1px solid var(--panel-border);border-radius:18px;background:linear-gradient(152deg,#0920438f,#041025ad);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:clamp(13px,3vw,22px);box-shadow:0 28px 56px #020a1873,inset 0 1px #8af5ff14}.hero-title{margin:0 0 8px;font-family:Sora,Manrope,system-ui,sans-serif;font-size:clamp(32px,8vw,54px);line-height:.98;letter-spacing:-.03em;color:#7df5ff;text-wrap:balance}.hero-subtitle{margin:0 0 14px;color:var(--text-muted);font-size:clamp(16px,4vw,22px);line-height:1.4}.field-label{display:block;margin-bottom:6px;font-size:14px;color:#97e6f4e0}input{width:100%;margin-bottom:12px;border:1px solid rgba(90,220,249,.32);border-radius:12px;padding:12px;min-height:46px;font-size:16px;color:var(--text-primary);background:linear-gradient(180deg,#081d3cbd,#05142ce0)}input::placeholder{color:#a2e5f359}input:focus{outline:none;border-color:#6eeeffcc;box-shadow:0 0 0 3px #4cd1ff2e}.primary-btn{width:100%;border:none;border-radius:12px;margin:14px 0 8px;padding:13px 14px;min-height:48px;font-size:clamp(16px,4vw,19px);font-weight:800;color:#022035;background:linear-gradient(120deg,#38ebff,#11cdea);box-shadow:0 10px 24px #13ceeb59;transition:transform .16s ease,filter .16s ease}.primary-btn:hover{transform:translateY(-1px);filter:brightness(1.03)}.primary-btn:active{transform:translateY(0)}.summary-pill{display:inline-flex;align-items:center;border:1px solid rgba(81,213,255,.38);border-radius:999px;padding:8px 12px;margin:2px 0 12px;background:#1b77a138;font-size:clamp(14px,3.5vw,16px);color:#c8f6fff0}.cards{display:grid;gap:12px}.card{border-radius:14px;padding:clamp(10px,2.8vw,14px);overflow-wrap:anywhere}.card.dark{border:1px solid var(--panel-border);background:linear-gradient(180deg,#071735f2,#06132dc7);box-shadow:0 16px 30px #0107146b,inset 0 1px #9ff1ff14}.tournament-gradient-header{position:relative;margin:-2px -2px 10px;border-radius:11px;padding:12px;overflow:hidden}.tournament-gradient-header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#000c1e4d,#000a1824 58%,#00081414);pointer-events:none}.tournament-title,.tournament-location,.tournament-date{position:relative;z-index:1}.tournament-title{margin:0 0 4px;font-family:Sora,Manrope,system-ui,sans-serif;font-size:clamp(23px,5.4vw,31px);line-height:1.08;font-weight:700;letter-spacing:-.018em;color:#fff;text-shadow:0 2px 10px rgba(0,13,30,.74),0 0 1px rgba(0,8,20,.95)}.tournament-location{margin:0 0 6px;font-size:clamp(15px,3.9vw,19px);color:#ecfcfff5;font-weight:700;text-shadow:0 1px 8px rgba(0,14,32,.55)}.tournament-date{margin:0;font-size:clamp(13px,3.2vw,16px);color:#d8f8ffeb;text-shadow:0 1px 6px rgba(0,14,32,.52)}.tournament-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.meta-chip{display:inline-flex;align-items:center;height:30px;padding:0 11px;border-radius:999px;font-size:clamp(13px,3.2vw,15px);color:#dcf9ffeb;background:var(--chip-bg);border:1px solid var(--chip-border)}.meta-chip.accent{color:#b7f7ff;border-color:#52ecff73;background:#1695af47}.draw-board-block{margin-top:10px;border-radius:12px;padding:16px;box-shadow:inset 0 1px #8eeeff12}.draw-board-block p{margin:0;font-size:clamp(20px,5vw,28px);line-height:1.1;color:#e7fdff;font-weight:500}.draw-board-block p+p{margin-top:6px}.draw-board-main{background:linear-gradient(90deg,#092c5df5,#17698cdb,#092c5df5)}.draw-board-jr-main{background:linear-gradient(90deg,#352471f5,#6c49badb,#352471f5)}.draw-board-qual{background:linear-gradient(90deg,#54380df5,#b77e1cdb,#54380df5)}.draw-board-alt{background:linear-gradient(90deg,#2a3563f5,#4f66b0db,#2a3563f5)}.loading-screen{display:flex;flex-direction:column;align-items:flex-start}.spinner-glow{width:clamp(88px,26vw,130px);height:clamp(88px,26vw,130px);border-radius:999px;display:grid;place-items:center;margin-bottom:14px;background:radial-gradient(circle,#1de2ff59,#1de2ff1f)}.spinner{width:clamp(34px,12vw,48px);height:clamp(34px,12vw,48px);border:5px solid rgba(29,226,255,.3);border-top-color:#1de2ff;border-radius:50%;animation:spin 1s linear infinite}.status-list{margin:0 0 12px;padding-left:0;list-style:none;color:#c5f6ffdb;font-size:clamp(14px,3.5vw,16px)}.status-list li{position:relative;padding-left:18px;margin-bottom:8px}.status-list li:before{content:"";position:absolute;left:0;top:.56em;width:8px;height:8px;border-radius:50%;background:#35ecff;box-shadow:0 0 12px #35ecffb8}.elapsed-pill{display:inline-flex;border:1px solid rgba(29,226,255,.4);border-radius:999px;padding:8px 12px;margin:6px 0 10px;background:#1de2ff1a;font-size:clamp(14px,3.5vw,16px)}.empty-state{border:1px dashed rgba(129,223,243,.34);border-radius:12px;padding:14px;color:var(--text-muted);font-size:15px;margin-bottom:10px}.error-state{border:1px solid rgba(255,101,118,.5);border-radius:12px;padding:14px;color:#ffd8de;background:#be2c442e;font-size:15px;margin-bottom:10px}.card-clickable{cursor:pointer}.boot-fallback-shell{min-height:100dvh;display:grid;place-items:center;padding:20px;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom))}.boot-fallback-card{width:min(100%,540px);border:1px solid var(--panel-border);border-radius:16px;padding:18px;background:linear-gradient(160deg,#0b2447d9,#051228f0);box-shadow:0 20px 42px #01081673,inset 0 1px #91f2ff14}.boot-fallback-title{margin:0 0 8px;font-family:Sora,Manrope,system-ui,sans-serif;font-size:clamp(26px,7vw,38px);color:#84f8ff}.boot-fallback-message{margin:0;color:#c8f6ffeb;font-size:clamp(15px,3.9vw,18px)}.boot-fallback-btn{margin-top:14px;border:none;border-radius:12px;min-height:44px;padding:0 14px;font-size:16px;font-weight:800;color:#021e33;background:linear-gradient(120deg,#38ebff,#11cdea)}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.app-shell{width:100%}}@media (max-width: 390px){.screen{border-radius:12px;padding:11px}.hero-title{font-size:28px}.hero-subtitle{font-size:15px}.primary-btn{min-height:44px;font-size:16px}}
