:root{--cream:#fff6e5;--paper:#fffdf8;--ink:#1f2a22;--muted:#5d6a60;--line:#e6dac2;--grass:#2f7a3a;--grass-soft:#e2f2dc;--frisbee:#ff5a36;--frisbee-dark:#d9431f;--sun:#ffcf3f;--sun-soft:#fff1c4;--danger:#c2341b;--radius:16px;--shadow:4px 4px 0 var(--ink);--display:"Lilita One", "Arial Rounded MT Bold", system-ui, sans-serif;--body:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}h1,h2,h3,h4{font-family:var(--display);letter-spacing:.01em;margin:0 0 .5rem;font-weight:400;line-height:1.05}h2{font-size:clamp(1.6rem,3.5vw,2.1rem)}h3{font-size:1.3rem}p{margin:0 0 .75rem}a{color:inherit}button,input{font:inherit;color:inherit}.nowrap{white-space:nowrap}.muted{color:var(--muted)}.fine-print{color:var(--muted);margin-top:.75rem;font-size:.82rem}.empty{color:var(--muted);font-style:italic}.app{flex-direction:column;min-height:100vh;display:flex}.container{flex:1;width:100%;max-width:1160px;margin:0 auto;padding:0 20px 64px}.site-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2px solid var(--ink);background:#fff6e5eb;justify-content:space-between;align-items:center;gap:16px;padding:10px 20px;display:flex;position:sticky;top:0}.brand{font-family:var(--display);align-items:center;gap:8px;font-size:1.3rem;text-decoration:none;display:flex}.site-header nav{gap:4px;display:flex;overflow-x:auto}.site-header nav a{white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:.92rem;font-weight:700;text-decoration:none}.site-header nav a:hover{background:var(--sun-soft)}.site-header nav a.active{background:var(--ink);color:var(--cream)}.site-footer{border-top:2px solid var(--ink);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:20px;font-size:.9rem;display:flex}.footer-links{gap:16px;display:flex}section{margin-top:40px}.card{background:var(--paper);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.section-head{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-bottom:12px;display:flex}.section-head h2{margin:0}.push-right{margin-left:auto}.page-loading{text-align:center;color:var(--muted);padding:80px 0}.page-head{padding-top:32px}.page-head h1{font-size:clamp(2.4rem,6vw,3.4rem)}.stack-sm{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.text-link{text-underline-offset:3px;font-weight:700}.btn{border:2px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);white-space:nowrap;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:.6em 1.15em;font-weight:700;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background .15s;display:inline-flex}.btn:hover:not(:disabled){box-shadow:4px 4px 0 var(--ink);transform:translate(-1px,-1px)}.btn:active:not(:disabled){box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{box-shadow:2px 2px 0 var(--ink);padding:.35em .8em;font-size:.85rem}.btn-lg{padding:.75em 1.4em;font-size:1.08rem}.btn-primary{background:var(--frisbee);color:#fff}.btn-primary:hover:not(:disabled){background:var(--frisbee-dark)}.btn-ghost{box-shadow:none;text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.btn-ghost:hover:not(:disabled){box-shadow:none;background:var(--sun-soft)}.btn-danger{color:var(--danger);box-shadow:none;border-color:currentColor}.btn-danger:hover:not(:disabled){box-shadow:none;background:#ffe6df}.link-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:.82rem;text-decoration:underline}.link-btn.danger{color:var(--danger)}.icon-btn{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:8px;width:32px;height:32px;font-weight:700}.icon-btn:disabled{opacity:.3;cursor:default}.hero{text-align:center;gap:10px;margin-top:0;padding-top:16px;display:grid}.hero h1{margin:0;font-size:clamp(2.3rem,5.2vw,3.3rem);line-height:1}.badge-num{border:3px solid var(--ink);background:var(--frisbee);color:#fff;box-shadow:3px 3px 0 var(--ink);border-radius:.2em;margin-left:.1em;padding:.02em .22em .08em;font-size:.85em;display:inline-block;transform:rotate(-6deg)translateY(-.04em)}.hero-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 0;margin:0;font-weight:700;display:flex}.hero-meta>*+:before{content:"·";color:var(--muted);margin:0 12px;text-decoration:none;display:inline-block}.hero-scene{border:3px solid var(--ink);width:100%;box-shadow:6px 6px 0 var(--ink);background:#c9e9f5;border-radius:24px;margin:4px 0 0;line-height:0;overflow:hidden}.toss-scene{width:100%;height:clamp(160px,19vw,220px);display:block}@media (width<=640px){.toss-scene{height:auto}}.cloud{animation:38s linear infinite alternate drift}.cloud-b{animation-duration:52s;animation-direction:alternate-reverse}.cloud-c{animation-duration:46s}@keyframes drift{0%{transform:translate(-40px)}to{transform:translate(70px)}}.burst-text{font-family:var(--display);fill:#fff;stroke:var(--ink);stroke-width:7px;stroke-linejoin:round;paint-order:stroke;letter-spacing:1px;font-size:36px}.facts{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.fact{background:var(--paper);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 22px 18px;position:relative}.fact p{color:var(--muted);margin:0}.fact-big{font-family:var(--display);color:var(--grass);margin-bottom:8px;font-size:3.6rem;line-height:1}.fact-hot{background:var(--sun-soft)}.fact-hot .fact-big{color:var(--frisbee)}.fact-hot:before{content:"New this year";border:2px solid var(--ink);background:var(--frisbee);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 12px;font-size:.78rem;font-weight:700;position:absolute;top:-14px;right:16px;transform:rotate(3deg)}.rules{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:center;gap:28px;display:grid}.video{aspect-ratio:16/9;border:2px solid var(--ink);background:var(--ink);border-radius:12px;overflow:hidden}.video iframe{border:0;width:100%;height:100%;display:block}.signup{grid-template:"intro form""details form"1fr/minmax(0,.8fr) minmax(0,1.2fr);gap:0 32px;margin-top:18px;padding:20px 24px;scroll-margin-top:80px;display:grid}.signup h2{margin-bottom:6px}.signup-intro{grid-area:intro}.signup-details{grid-area:details}.signup .signup-form,.signup .signup-success{grid-area:form}.checklist{gap:8px;margin:0;padding:0;list-style:none;display:grid}.checklist li{padding-left:30px;position:relative}.checklist li:before{content:"✓";background:var(--grass);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:1px;left:0}.signup-form{align-content:start;gap:12px;display:grid}.segmented{border:2px solid var(--ink);background:#fff;border-radius:999px;padding:4px;display:flex}.segmented button{cursor:pointer;background:0 0;border:0;border-radius:999px;flex:1;padding:8px 12px;font-weight:700}.segmented button.active{background:var(--ink);color:var(--cream)}.btn-submit{padding:.65em 1.4em;font-size:1.05rem}.form-hint{background:var(--grass-soft);border-radius:10px;margin:0;padding:10px 14px;font-size:.92rem}.field{gap:4px;display:grid}.field>span{font-size:.88rem;font-weight:700}.field em{color:var(--muted);font-weight:400}input[type=text],input[type=tel],input[type=password],input:not([type]){border:2px solid var(--ink);background:#fff;border-radius:10px;width:100%;min-width:0;padding:.65em .8em;font-size:1rem}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--frisbee);outline-offset:2px}.name-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.player-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-error{border:2px solid var(--danger);color:var(--danger);background:#ffe9e3;border-radius:10px;margin:0;padding:10px 14px;font-weight:600}.form-success{background:var(--grass-soft);color:var(--grass);border-radius:10px;margin:0;padding:10px 14px;font-weight:600}.signup-success{text-align:center;align-self:center;padding:24px 0}.big-check{border:3px solid var(--ink);background:var(--grass);color:#fff;width:72px;height:72px;box-shadow:var(--shadow);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:2.2rem;font-weight:700;animation:.4s cubic-bezier(.3,1.6,.6,1) pop;display:grid}@keyframes pop{0%{transform:scale(.3)}}.team-chips{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.team-chips li{border:2px solid var(--ink);background:var(--paper);border-radius:12px;padding:12px 16px;display:grid}.team-chips li span{color:var(--muted);font-size:.9rem}.live-dot{background:#2fbf5a;border-radius:50%;width:10px;height:10px;margin-left:8px;animation:1.6s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.3}}.empty-state{text-align:center;margin-top:24px;padding:40px 24px}.live-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:32px;display:grid}.live-grid>section,.live-grid>div>section:first-child,.live-grid>div>.round-block:first-child{margin-top:40px}.round-block+.round-block{margin-top:32px}.prelim-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.prelim-match{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:12px;padding:10px 14px 12px}.prelim-match.is-bye{box-shadow:none;background:0 0;border-style:dashed}.prelim-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;margin-bottom:4px;font-size:.75rem;font-weight:700;display:flex}.to{letter-spacing:0;text-transform:none;font-weight:600}.prelim-team{justify-content:space-between;align-items:center;gap:10px;padding:4px 0;display:flex}.prelim-team+.prelim-team{border-top:1px dashed var(--line)}.prelim-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.prelim-score{font-family:var(--display);text-align:right;min-width:1.5em;font-size:1.4rem}.prelim-team.won .prelim-name:after{content:" ✓";color:var(--grass)}.prelim-team.won .prelim-score{color:var(--grass)}.prelim-team.lost{opacity:.55}.prelim-note{color:var(--muted);margin:4px 0 0;font-size:.85rem}.prelim-actions{gap:6px;margin-top:8px;display:flex}.table-wrap{overflow-x:auto}.standings{border-collapse:collapse;border:2px solid var(--ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:12px;width:100%;overflow:hidden}.standings th,.standings td{text-align:center;padding:8px 10px}.standings th{text-transform:uppercase;letter-spacing:.06em;background:var(--ink);color:var(--cream);font-size:.72rem}.standings tbody tr:nth-child(2n){background:#faf5ea}.standings .left{text-align:left}.standings .rank{font-family:var(--display);color:var(--muted)}.standings .pos{color:var(--grass);font-weight:700}.standings .neg{color:var(--danger)}.tag{background:var(--sun);text-transform:uppercase;letter-spacing:.04em;vertical-align:2px;border-radius:999px;margin-left:6px;padding:0 7px;font-size:.7rem;font-weight:700;display:inline-block}.score-editor{gap:8px;display:grid}.score-editor label{justify-content:space-between;align-items:center;gap:8px;display:flex}.score-editor label span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.score-editor input{text-align:center;flex:none;width:3.4em;padding:.35em;font-size:1.15rem;font-weight:700}.score-editor-actions{gap:6px;display:flex}.bracket-scroll{margin:0 -6px;padding:6px 6px 20px;overflow-x:auto}.bracket{--gap:34px;gap:var(--gap);min-width:max-content;display:flex}.bracket-round{flex-direction:column;width:196px;display:flex}.bracket-round-title{justify-content:center;align-items:baseline;gap:8px;height:2.2rem;margin:0;font-size:1.15rem;display:flex}.bracket-round-title span{font-family:var(--body);color:var(--muted);font-size:.75rem}.bracket-round-body{flex-direction:column;flex:1;display:flex}.bracket-pair{flex-direction:column;flex:1;display:flex;position:relative}.bracket-slot{flex:1;align-items:center;padding:8px 0;display:flex}.bracket-slot>*{width:100%}.bracket-pair:before,.bracket-pair.is-pair:after{content:"";pointer-events:none;border:0 solid #1f2a2259;position:absolute}.bracket-pair.is-pair:after{top:25%;bottom:25%;right:calc(var(--gap) / -2);width:calc(var(--gap) / 2);border-width:2px 2px 2px 0;border-radius:0 10px 10px 0}.bracket-pair:before{top:50%;right:calc(var(--gap) * -1);width:calc(var(--gap) / 2);border-top-width:2px}.bracket-pair.is-single:before{width:var(--gap)}.bm{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:10px;overflow:hidden}.bm.is-bye{box-shadow:none;opacity:.55;background:0 0;border-style:dashed}.bm.is-bye .bm-team.won{background:0 0}.bm.is-bye .bm-team.won .bm-name:after{content:none}.bm.is-editing{padding:10px}.bm-team{text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;min-height:38px;padding:6px 10px;display:flex}.bm-team+.bm-team{border-top:1px solid var(--line)}.bm-seed{width:1.3em;color:var(--muted);text-align:right;flex:none;font-size:.72rem;font-weight:700}.bm-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.bm-score{font-family:var(--display);font-size:1.05rem}.bm-team.won{background:var(--grass-soft)}.bm-team.won .bm-name{font-weight:700}.bm-team.won .bm-name:after{content:" ✓";color:var(--grass)}.bm-team.lost{color:var(--muted)}.bm-team.lost .bm-name{-webkit-text-decoration:line-through #5d6a6080;text-decoration:line-through #5d6a6080}.bm-team.tbd .bm-name{color:var(--muted);font-style:italic;font-weight:400}.bm-team.is-pickable{cursor:pointer}.bm-team.is-pickable:hover:not(:disabled){background:var(--sun-soft)}.bm-team.is-pickable.won:hover:not(:disabled){background:#d3ebcb}.bm-edit{border:0;border-top:1px dashed var(--line);width:100%;color:var(--muted);cursor:pointer;background:#fbf8f1;padding:4px;font-size:.75rem;font-weight:700;display:block}.bm-edit:hover:not(:disabled){color:var(--frisbee-dark)}.champion-round{width:170px}.champion{text-align:center;border:2px dashed #1f2a2266;border-radius:14px;padding:16px 12px}.champion.is-crowned{border:3px solid var(--ink);background:var(--sun);box-shadow:var(--shadow);animation:.5s cubic-bezier(.3,1.6,.6,1) pop}.trophy{width:56px;height:56px}.champion:not(.is-crowned) .trophy{opacity:.35;filter:grayscale()}.champion-name{font-family:var(--display);font-size:1.3rem;line-height:1.1}.champion-players{margin-top:4px;font-size:.85rem}.admin{padding-top:28px}.admin-head{justify-content:space-between;align-items:center;display:flex}.admin-head h1{margin:0;font-size:2.4rem}.tabs{border:2px solid var(--ink);background:#fff;border-radius:999px;gap:6px;width:fit-content;max-width:100%;margin:16px 0 4px;padding:4px;display:flex;overflow-x:auto}.tabs button{cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:8px 16px;font-weight:700}.tabs button.active{background:var(--ink);color:var(--cream)}.tab-short{display:none}.login{max-width:420px;margin:64px auto 0}.login form{gap:14px;margin-top:16px;display:grid}.stat-row{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.stat{border:2px solid var(--ink);background:#fff;border-radius:999px;padding:8px 16px}.stat strong{font-family:var(--display);margin-right:4px;font-size:1.25rem;font-weight:400}.admin-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;margin-top:24px;display:grid}.admin-columns>section{margin-top:0}.agent-list,.team-list,.team-players{margin:0;padding:0;list-style:none}.agent-list{gap:4px;margin:12px 0;display:grid}.agent-list li{border-radius:10px;align-items:center;gap:10px;padding:6px 10px;display:flex}.agent-list li.is-picked{background:var(--sun-soft)}.agent-pick input{width:20px;height:20px;accent-color:var(--frisbee)}.agent-list .player-line{flex:1}.pair-form{gap:8px;margin-bottom:12px;display:flex}.team-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-top:12px;display:grid}.team-row{border:2px solid var(--ink);background:#fff;border-radius:12px;padding:12px 14px}.team-row-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-bottom:6px;display:flex}.team-row-head h3{margin:0;font-size:1.2rem}.seed-pill{background:var(--ink);color:var(--cream);vertical-align:2px;border-radius:999px;margin-right:6px;padding:0 8px;font-size:.85rem;display:inline-block}.row-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.player-line{flex-wrap:wrap;align-items:center;gap:2px 10px;padding:3px 0;display:flex}.player-name{font-weight:600}.player-phone{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem;text-decoration:none}.inline-form{flex-wrap:wrap;flex:1;align-items:center;gap:6px;display:flex}.inline-form input{flex:140px;width:auto;padding:.4em .6em}.next-round{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin-top:24px;display:flex}.next-round>div{flex:380px}.next-round p:last-child{margin-bottom:0}.callout{border-left:5px solid var(--sun);background:var(--sun-soft);border-radius:6px;padding:10px 14px;font-weight:600}.admin-bracket>section:first-child,.admin-seeding>section:first-child,.admin-bracket .bracket-scroll{margin-top:24px}.seeding-summary{border:2px solid var(--ink);background:var(--grass-soft);border-radius:12px;margin:16px 0;padding:12px 16px}.seed-list{gap:6px;max-width:720px;margin:0 0 20px;padding:0;list-style:none;display:grid}.seed-list li{border:2px solid var(--ink);background:#fff;border-radius:10px;grid-template-columns:2.4em minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:6px 10px;display:grid}.seed-list li.has-bye{background:var(--grass-soft)}.seed-list li.is-out{opacity:.45}.seed-list li.is-out .seed-team{text-decoration:line-through}.seed-num{font-family:var(--display);text-align:center;font-size:1.3rem}.seed-team{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.seed-record{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.88rem}.seed-controls{align-items:center;gap:6px;display:flex}.include-toggle input{width:22px;height:22px;accent-color:var(--grass);vertical-align:middle}.button-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toast{z-index:50;border:2px solid var(--ink);background:var(--grass);color:#fff;max-width:calc(100vw - 32px);box-shadow:var(--shadow);cursor:pointer;border-radius:12px;padding:12px 20px;font-weight:700;animation:.2s ease-out rise;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast-error{background:var(--danger)}@keyframes rise{0%{opacity:0;transform:translate(-50%,12px)}}@media (width<=960px){.live-grid{grid-template-columns:minmax(0,1fr);gap:0}}@media (width<=860px){.facts,.rules,.signup,.admin-columns{grid-template-columns:minmax(0,1fr)}.signup{grid-template-rows:none;grid-template-areas:"intro""form""details";gap:14px}.hero-meta{gap:6px;font-size:.88rem}.hero-meta>*{border:1.5px solid var(--line);background:var(--paper);border-radius:999px;padding:2px 10px}.hero-meta>*+:before{content:none}.facts{gap:24px}}@media (width<=560px){.container{padding:0 14px 48px}.site-header{padding:8px 14px}.brand span{display:none}.card{padding:18px}.player-row{grid-template-columns:minmax(0,1fr)}.dice-label{display:none}.hero-scene{border-radius:16px}.seed-list li{grid-template-columns:2em minmax(0,1fr) auto}.seed-record{display:none}.team-list{grid-template-columns:minmax(0,1fr)}.tabs{width:100%}.tabs button{flex:1;padding:8px 10px}.tab-long{display:none}.tab-short{display:inline}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
