:root{--navy-900:#06101f;--navy-800:#0b1a33;--navy-700:#12274a;--navy-600:#1b3a6b;--cyan-400:#2fd3ff;--cyan-300:#7de6ff;--amber:#ffb85c;--coral:#ff7a59;--text:#eaf6ff;--muted:#9db7d1;--glass:linear-gradient(160deg, #1b3a6b9e, #0b1a33d1);--edge:#7de6ff33;--edge-strong:#7de6ff6b;--glow:0 0 0 1px #2fd3ff40, 0 0 24px #2fd3ff38;--ease-out:cubic-bezier(.2, .8, .2, 1);color:var(--text);background:var(--navy-900);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}html,body{-webkit-tap-highlight-color:transparent;min-height:100%;margin:0}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(90% 60% at 15% -10%, #2fd3ff38, transparent 60%), radial-gradient(70% 50% at 95% 100%, #ffb85c1f, transparent 60%), radial-gradient(140% 120% at 50% 40%, var(--navy-700) 0%, var(--navy-800) 45%, var(--navy-900) 100%);position:fixed;inset:0}#app{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);place-items:center;display:grid}#app>section{animation:screen-in .32s var(--ease-out) both}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)scale(.995)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button{font:inherit;color:inherit;transition:border-color .16s var(--ease-out), background-color .16s var(--ease-out), box-shadow .16s var(--ease-out), transform .12s var(--ease-out)}button:not(:disabled):active{transform:scale(.97)}button:focus-visible{outline:2px solid var(--cyan-400);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.85rem}.start{text-align:center;box-sizing:border-box;width:100%;min-width:0;max-width:40rem;padding:2rem 1rem}.start h1{letter-spacing:.04em;color:var(--cyan-300);background:linear-gradient(180deg, #fff 0%, var(--cyan-300) 55%, var(--cyan-400) 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 6px 24px #2fd3ff59);-webkit-background-clip:text;background-clip:text;margin:0 0 .5rem;font-size:clamp(2rem,8vw,4rem)}.start>p{color:var(--muted);margin:0 0 1.5rem}.recovery{box-sizing:border-box;width:100%;max-width:28rem;padding:2rem 1rem}.recovery h1{color:var(--cyan-300);margin:0 0 .5rem}.recovery pre{white-space:pre-wrap;word-break:break-word;color:var(--muted);max-height:8rem;font-size:.8rem;overflow:auto}.card{background:var(--glass);border:1px solid var(--edge);text-align:left;border-radius:1rem;padding:1.25rem;position:relative;box-shadow:inset 0 1px #ffffff14,0 20px 60px #0006}.card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#0000,#7de6ff8c,#0000);height:1px;position:absolute;inset:0 0 auto}.card h2{margin:0 0 .25rem}.roles{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0;display:grid}.role{cursor:pointer;background:#06101f99;border:1px solid #7de6ff40;border-radius:.75rem;flex-direction:column;align-items:flex-start;gap:.15rem;min-height:3.5rem;padding:.7rem .8rem;display:flex}.role b{color:var(--cyan-300);font-size:1.2rem}.role span{color:var(--muted);font-size:.85rem}.role:hover,.role:focus-visible{border-color:var(--cyan-400);box-shadow:var(--glow);outline:none}.seed{color:var(--muted);align-items:center;gap:.5rem;display:inline-flex}.seed input{width:6rem;color:var(--text);font:inherit;background:#06101f99;border:1px solid #7de6ff40;border-radius:.5rem;padding:.35rem .5rem}.menu{gap:.6rem;display:grid}.big{text-align:left;border-radius:1rem;justify-items:start;padding:.9rem 1.2rem;font-size:1.1rem;display:grid}.big .sub{opacity:.8;font-size:.85rem;font-weight:400}.secondary{min-height:2.8rem;color:var(--text);cursor:pointer;background:#1b3a6b73;border:1px solid #7de6ff59;border-radius:999px;padding:.5rem 1.2rem;font-weight:600}.link{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.5rem .25rem;text-decoration:underline}.actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;margin-top:1rem;display:flex}.create h2+h2,.create .card h2{color:var(--cyan-300);margin-top:1.25rem;font-size:1.05rem}.create .card h2:first-child{margin-top:0}.segmented{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.seg,.preset{cursor:pointer;background:#06101f99;border:1px solid #7de6ff40;border-radius:.75rem;min-height:2.8rem;padding:.5rem .8rem}.seg[aria-pressed=true],.preset[aria-pressed=true],.role[aria-pressed=true]{border-color:var(--cyan-400);background:#2fd3ff2e;box-shadow:inset 0 0 0 2px #2fd3ff40}.field{color:var(--muted);gap:.3rem;margin:.75rem 0;font-size:.9rem;display:grid}.field input,.field select{font:inherit;color:var(--text);background:#06101f99;border:1px solid #7de6ff40;border-radius:.6rem;padding:.55rem .7rem;font-size:1rem}.row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.presets{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.preset{color:var(--muted);justify-items:center;gap:.3rem;font-size:.8rem;display:grid}.avatar{border:2px solid var(--navy-600);background:var(--navy-900);border-radius:50%;width:3.4rem;height:3.4rem;display:block;box-shadow:0 6px 16px #00000059}.preset[aria-pressed=true] .avatar{border-color:var(--cyan-400);box-shadow:0 0 0 3px #2fd3ff40,0 6px 16px #00000059}.error{color:var(--coral);margin:.75rem 0 0}#app.in-scene{align-items:stretch;padding:0}.scene{box-sizing:border-box;width:100%;max-width:44rem;min-height:100dvh;padding:calc(env(safe-area-inset-top) + .75rem) 1rem calc(env(safe-area-inset-bottom) + .75rem);isolation:isolate;grid-template-rows:auto 1fr auto;margin:0 auto;display:grid;position:relative}.scene .backdrop{z-index:-1;pointer-events:none;--sky-a:#143a6a;--sky-b:#0b1a33;--ground:#0a1628;--light:#7de6ff59;--horizon:42%;position:absolute;inset:0;overflow:hidden}.scene .backdrop .sky{height:var(--horizon);background:linear-gradient(180deg, var(--sky-a) 0%, var(--sky-b) 100%);position:absolute;inset:0 0 auto}.scene .backdrop .ground{inset:var(--horizon) 0 0;background:linear-gradient(180deg, var(--sky-b) 0%, var(--ground) 22%, var(--navy-900) 100%);position:absolute}.scene .backdrop .ground:before{content:"";background:linear-gradient(90deg, transparent, var(--light), transparent);opacity:.6;height:2px;position:absolute;inset:-1px 0 auto}.scene .backdrop .glow{width:70vmax;height:70vmax;left:65%;top:var(--horizon);background:radial-gradient(circle, var(--light) 0%, transparent 60%);border-radius:50%;animation:9s ease-in-out infinite alternate glow-breathe;position:absolute;transform:translate(-50%,-60%)}@keyframes glow-breathe{0%{opacity:.75;transform:translate(-50%,-60%)scale(.96)}to{opacity:1;transform:translate(-50%,-60%)scale(1.04)}}.scene .backdrop:after{content:"";background:linear-gradient(#06101f26 0%,#06101f8c 45%,#06101fe6 100%);position:absolute;inset:0}.scene.at-home .backdrop{--sky-a:#2a2340;--sky-b:#12172e;--ground:#1a1220;--light:#ffb85c6b;--horizon:48%}.scene.at-car .backdrop{--sky-a:#0f2d52;--sky-b:#0a1a33;--ground:#0c0f18;--light:#ffd28c52;--horizon:55%}.scene.at-school .backdrop,.scene.at-lunch_spot .backdrop{--sky-a:#3b7fc4;--sky-b:#163a66;--ground:#1c2a3a;--light:#ffffff59;--horizon:40%}.scene.at-training_field .backdrop,.scene.at-pitch .backdrop{--sky-a:#1f5a9e;--sky-b:#0d2647;--ground:#1f5a2e;--light:#7de6ff73;--horizon:44%}.scene.at-park .backdrop{--sky-a:#d98a4a;--sky-b:#3a2e58;--ground:#1e4a2a;--light:#ffb85c80;--horizon:46%}.scene.at-tournament_hotel .backdrop{--sky-a:#1a1f3d;--sky-b:#0b0f22;--ground:#1c1a2a;--light:#ffd28c59;--horizon:50%}.scene.tone-adversity .backdrop{--light:#ffb85c38}.scene-head .where{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;font-size:.85rem;display:flex}.scene-head h2{color:var(--cyan-300);text-shadow:0 2px 12px #00000080;margin:.25rem 0 .75rem;font-size:1.4rem}.tone-adversity .scene-head h2{color:var(--amber)}.dialogue{cursor:pointer;min-height:0;padding:.25rem 0 .75rem;overflow:auto}.line{margin:0 0 .6rem;line-height:1.45;animation:.22s ease-out fade-up}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.line.narration{color:var(--muted);font-style:italic}.line.said{background:linear-gradient(160deg,#1b3a6bb3,#0b1a33cc);border:1px solid #7de6ff2e;border-radius:.9rem .9rem .9rem .25rem;width:-moz-fit-content;width:fit-content;max-width:88%;padding:.6rem .85rem;box-shadow:0 8px 24px #0000004d,inset 0 1px #ffffff0f}.line.said.me{background:#2fd3ff24;border-color:#2fd3ff59;border-radius:.9rem .9rem .25rem;margin-left:auto}.line.said b{letter-spacing:.04em;text-transform:uppercase;color:var(--cyan-300);margin-bottom:.15rem;font-size:.75rem;display:block}.line.said.me b{color:var(--amber)}.scene-actions{border-top:1px solid #7de6ff1f;gap:.5rem;padding-top:.5rem;display:grid}.choices{gap:.5rem;display:grid}.choice{cursor:pointer;text-align:left;background:#1b3a6b73;border:1px solid #7de6ff4d;border-radius:.8rem;min-height:3rem;padding:.7rem .9rem;line-height:1.35}.choice:hover,.choice:focus-visible{border-color:var(--cyan-400);box-shadow:var(--glow);outline:none}.facts{color:var(--muted);margin:.5rem 0 0;padding-left:1.1rem;line-height:1.5}.facts b{color:var(--text)}.hub h3{color:var(--cyan-300);margin:1rem 0 0;font-size:.95rem}#app.in-match{padding:0;display:block}.match{box-sizing:border-box;background:#2a5230;width:100%;height:100dvh;position:relative;overflow:hidden}.stage{position:absolute;inset:0;overflow:hidden}.stage:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 70px #00081480}.stage canvas{touch-action:none;display:block;position:absolute;inset:0}.hud{z-index:2;padding:calc(.35rem + env(safe-area-inset-top)) calc(.8rem + env(safe-area-inset-right)) .35rem calc(.8rem + env(safe-area-inset-left));border-bottom:1px solid var(--edge);font-variant-numeric:tabular-nums;background:linear-gradient(#06101ff0,#0b1a33d1);grid-template-columns:1fr auto 1fr;align-items:center;gap:.6rem;font-size:.9rem;display:grid;position:absolute;top:0;left:0;right:0;box-shadow:0 6px 24px #00000059}.hud .score{align-items:baseline;gap:.5rem;min-width:0;display:flex}.hud .score .team{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.04em;min-width:0;font-weight:600;overflow:hidden}.hud .score .num{white-space:nowrap;color:var(--cyan-300);text-shadow:0 0 12px #2fd3ff73;flex:none;font-size:1.15rem;font-weight:700}.hud .team.away{color:var(--coral)}.hud .clock{justify-self:center;align-items:baseline;gap:.45rem;font-weight:600;display:flex}.hud .clock .half{color:var(--muted);font-size:.8rem;font-weight:500}.hud .speed{color:var(--muted);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-self:end;padding:.1rem .5rem;font-size:.8rem}.hud .speed.slow{color:var(--cyan-300);border-color:#7de6ff66;box-shadow:0 0 14px #2fd3ff4d}.hud .speed.fast{color:var(--amber);border-color:#ffb85c73}.hud .speed .real{color:var(--muted);opacity:.85;margin-left:.4rem}.window{left:.75rem;right:.75rem;top:calc(2.4rem + env(safe-area-inset-top));z-index:2;background:#06101f8c;border-radius:999px;height:.4rem;position:absolute;overflow:hidden}.window .bar{background:linear-gradient(90deg, var(--cyan-400), var(--cyan-300));transform-origin:0;height:100%;transition:transform 80ms linear}.window.urgent .bar{background:linear-gradient(90deg, var(--coral), var(--amber))}.window .left{color:var(--text);text-shadow:0 1px 2px #0009;font-size:.75rem;position:absolute;top:.55rem;right:.5rem}.perf{left:.4rem;top:calc(3rem + env(safe-area-inset-top));z-index:2;color:var(--muted);pointer-events:none;background:#06101fbf;border-radius:.3rem;padding:.15rem .4rem;font:.75rem/1.3 ui-monospace,monospace;position:absolute}.banner{z-index:2;border:1px solid var(--edge-strong);box-shadow:var(--glow), 0 10px 30px #0006;color:var(--cyan-300);letter-spacing:.02em;pointer-events:none;animation:rise .25s var(--ease-out);background:linear-gradient(#0b1a33eb,#06101feb);border-radius:999px;padding:.45rem 1.1rem;font-weight:600;position:absolute;top:18%;left:50%;transform:translate(-50%)}@keyframes rise{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.dock{z-index:2;border-top:1px solid var(--edge);max-height:55%;padding-bottom:env(safe-area-inset-bottom);background:linear-gradient(#0b1a33e0,#06101ff7);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #00000059}.panel{padding:.45rem calc(.8rem + env(safe-area-inset-right)) .2rem calc(.8rem + env(safe-area-inset-left));min-height:0;overflow-y:auto}.moment{animation:fade-up .2s var(--ease-out)}.moment .title{color:var(--cyan-300);margin-bottom:.15rem;font-weight:700}.moment .cues{color:var(--muted);flex-wrap:wrap;gap:.2rem .8rem;margin:0 0 .4rem;padding:0;font-size:.82rem;list-style:none;display:flex}.moment .cues li:before{content:"· ";color:var(--cyan-400)}.options{flex-wrap:wrap;gap:.4rem;display:flex}.option{cursor:pointer;text-align:left;background:#1b3a6b73;border:1px solid #7de6ff4d;border-radius:.7rem;flex:9rem;min-height:2.8rem;padding:.45rem .75rem;font-size:.92rem}.option .key{width:1.3rem;height:1.3rem;color:var(--cyan-300);vertical-align:middle;background:#06101fcc;border:1px solid #7de6ff66;border-radius:999px;place-items:center;margin-right:.5rem;font-size:.75rem;font-weight:700;display:inline-grid}.option.selected .key{color:#06101f;background:var(--cyan-400);border-color:#0000}.option:hover,.option:focus-visible{border-color:var(--edge-strong);outline:none}.option.selected{border-color:var(--cyan-400);background:#2fd3ff2e;box-shadow:inset 0 0 0 2px #2fd3ff40,0 0 18px #2fd3ff40}.hint{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.4rem;font-size:.85rem;display:flex}.hint button{color:var(--coral);cursor:pointer;background:0 0;border:1px solid #ff7a5980;border-radius:999px;padding:.3rem .7rem}.feedback{border-left:3px solid var(--cyan-400);margin-bottom:.3rem;padding:.25rem .7rem;font-size:.85rem}.feedback ul{color:var(--muted);margin:.2rem 0 0;padding-left:1rem}.ticker{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;padding:0;font-size:.78rem;line-height:1.35;list-style:none}.ticker li:first-child{color:var(--text)}.controls{padding:.3rem calc(.8rem + env(safe-area-inset-right)) .45rem calc(.8rem + env(safe-area-inset-left));align-items:center;gap:.4rem;display:flex}.toggle{cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #7de6ff4d;border-radius:999px;min-height:2.3rem;padding:.3rem .8rem;font-size:.85rem}.toggle[aria-pressed=true]{border-color:var(--cyan-400);color:var(--cyan-300);background:#2fd3ff33}.provisional{color:var(--amber);border:1px solid #ffb85c80;border-radius:999px;margin-left:auto;padding:.1rem .5rem;font-size:.75rem}.match.finished .hud,.match.finished .dock,.match.finished .window,.match.finished .banner{display:none}.summary{z-index:3;padding:calc(1.25rem + env(safe-area-inset-top)) calc(1rem + env(safe-area-inset-right)) calc(2rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left));animation:screen-in .36s var(--ease-out) both;background:radial-gradient(80% 50% at 50% -10%,#2fd3ff2e,#0000 60%),#06101ff5;position:absolute;inset:0;overflow:auto}.summary h2{color:var(--cyan-300);margin:0 0 .5rem}.table-wrap{border:1px solid #7de6ff26;border-radius:.75rem;margin:1rem 0;overflow:auto}.summary table{border-collapse:collapse;width:100%;font-size:.85rem}.summary th,.summary td{text-align:left;border-bottom:1px solid #7de6ff1a;padding:.4rem .6rem}.summary th{color:var(--muted);font-weight:600}.primary{background:linear-gradient(90deg, var(--cyan-400), var(--cyan-300));min-height:2.8rem;color:var(--navy-900);cursor:pointer;border:none;border-radius:999px;padding:.5rem 1.2rem;font-weight:700;box-shadow:0 8px 24px #2fd3ff47,inset 0 1px #ffffff73}.primary:hover,.primary:focus-visible{box-shadow:0 10px 30px #2fd3ff6b,inset 0 1px #ffffff80}@media (min-width:900px),(orientation:landscape) and (max-height:500px){.dock{flex-direction:row;align-items:stretch;max-height:36%}.panel{flex-direction:row;flex:auto;align-items:flex-start;gap:.3rem 1.2rem;min-width:0;padding-bottom:.45rem;display:flex}.moment,.feedback{flex:1 1 0;min-width:0;margin-bottom:0}.ticker{flex:0 22rem;min-width:0}.option{flex:10rem;max-width:16rem}.controls{border-left:1px solid var(--edge);flex-wrap:wrap;flex:none;place-content:center flex-end;max-width:17rem;padding-left:.8rem}.provisional{margin-left:0}}@media (orientation:landscape) and (max-height:500px){.hud{padding-top:calc(.2rem + env(safe-area-inset-top));padding-bottom:.2rem;font-size:.82rem}.hud .score .num{font-size:1rem}.dock{max-height:60%}.panel{padding-bottom:.3rem}.ticker{flex:0 14rem}.ticker li:not(:first-child){display:none}.panel:has(.moment:not([hidden])) .ticker{display:none}.moment .title{font-size:.95rem}.moment .cues{white-space:nowrap;flex-wrap:nowrap;font-size:.76rem;overflow:hidden}.option{flex:7rem;min-height:2.2rem;padding:.3rem .6rem;font-size:.85rem}.controls{max-width:11rem}.toggle{min-height:2rem;padding:.2rem .7rem;font-size:.8rem}}.hub .card.now h2{margin-bottom:.25rem}.hub .choice b{display:block}.hub .table-wrap{margin:.5rem 0 0}.hub table{border-collapse:collapse;width:100%;font-size:.8rem}.hub th,.hub td{text-align:left;white-space:nowrap;border-bottom:1px solid #7de6ff1a;padding:.3rem .45rem}.hub th{color:var(--muted);font-weight:600}.hub table.week td{border-left:1px solid #7de6ff14}.hub table.week tr.past td,.hub table.week td.past{color:var(--muted);opacity:.6}.hub table.week td.current{color:var(--cyan-300);opacity:1;background:#2fd3ff2e;font-weight:700}.hub table.week td.attended{color:var(--cyan-300)}.hub table.week td.missed{color:var(--amber);text-decoration:line-through}.hub table.week td.off{background:#06101f59}.hub tr.me td{color:var(--cyan-300);font-weight:700}.home .facts{color:var(--text)}.home a{color:var(--cyan-300)}.hub h4{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:.9rem 0 0;font-size:.85rem}.hub .facts.fixtures li,.hub .facts.tournaments li{margin:.15rem 0}.hub .tournaments li.t-closed,.hub .tournaments li.t-blocked,.hub .tournaments li.t-upcoming{opacity:.65}.hub .tournaments li.t-window b{color:var(--cyan-300)}.hub .tournaments li.t-entered b{color:var(--amber)}.hub .choice.skip-ahead{opacity:.85}.hub .progress .question{margin:.2rem 0 .6rem;font-style:italic}.hub .tracks{margin:0;padding:0;list-style:none}.hub .tracks li{grid-template-columns:8.5rem 1fr 2rem;align-items:center;gap:.5rem;margin:.2rem 0;font-size:.9rem;display:grid}.hub .tracks .bar{background:#ffffff14;border-radius:999px;height:.5rem;display:block;overflow:hidden}.hub .tracks .fill{background:linear-gradient(90deg, var(--cyan-400), var(--cyan-300));height:100%;transition:width .5s var(--ease-out);display:block;box-shadow:0 0 10px #2fd3ff73}.hub .tracks .track-value{text-align:right;font-variant-numeric:tabular-nums}.hub .unlocks li.locked{opacity:.7}.hub .unlocks li.unlocked b{color:var(--amber)}.hub .choice.repair{opacity:.9}
