:root{--ocean:#1d2c63;--ocean-deep:#16224f;--sea:#4662ad;--surf:#8fc3e6;--sand:#f7ebd0;--sand-light:#fcf6e8;--sand-deep:#e9d3a4;--coral:#de3c3c;--ca-blue:#4662ae;--coral-dark:#b52c2c;--sun:#f4e06d;--pink:#f29bc4;--ink:#1a1633;--ink-soft:#5f5646;--ok:#2f7d4f;--f-display:"Barlow Condensed","Futura PT","Futura Condensed",Impact,sans-serif;--f-hand:"Caveat Brush","Comic Sans MS",cursive;--f-body:"Jost","Futura PT",Futura,system-ui,sans-serif;--radius:14px;color-scheme:light}*{box-sizing:border-box}body,html{margin:0}body{background:var(--sand-light);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.5;-webkit-tap-highlight-color:transparent}a{color:var(--sea)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--sea);outline-offset:2px}.display-font{font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:.95}.hand{font-family:var(--f-hand);color:var(--coral)}.muted{color:var(--ink-soft)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.topbar{background:var(--ocean);color:var(--sand);padding:calc(12px + env(safe-area-inset-top, 0px)) 16px 12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.topbar .brand{font-family:var(--f-display);font-weight:900;font-size:24px;text-transform:uppercase;letter-spacing:.02em;color:var(--sand);text-decoration:none}.topbar .brand b{color:var(--coral)}.topbar .sub{font-family:var(--f-hand);color:var(--sun);font-size:22px}.topbar .spacer{flex:1 1}.topbar a,.topbar button.link{color:var(--surf);font-size:14px;background:none;border:0;cursor:pointer;text-decoration:underline}.wrap{max-width:1320px;margin:0 auto;padding:20px 16px 64px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;border:2px solid var(--ink);background:var(--sand-light);color:var(--ink);font-weight:600;cursor:pointer;text-decoration:none}.btn:hover{background:var(--sand)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--ocean);border-color:var(--ocean);color:var(--sand-light)}.btn.primary:hover{background:var(--sea);border-color:var(--sea)}.btn.coral{background:var(--coral);border-color:var(--coral);color:#fff}.btn.small{min-height:34px;padding:0 12px;font-size:14px}.btn[disabled]{opacity:.5;cursor:not-allowed}.card{background:#fff;border:2px solid var(--sand-deep);border-radius:var(--radius);padding:16px}.card h2,.card h3{margin:0 0 12px}h1,h2,h3{font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:1;text-wrap:balance}h1{font-size:40px;margin:0 0 8px}h2{font-size:28px}h3{font-size:20px}label.field{display:grid;grid-gap:4px;gap:4px;font-size:14px;font-weight:500}input[type=date],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{min-height:42px;padding:8px 12px;border:2px solid var(--sand-deep);border-radius:10px;background:#fff;width:100%}textarea{min-height:120px;font-family:ui-monospace,monospace;font-size:13px}input:focus,select:focus,textarea:focus{border-color:var(--sea);outline:none}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.stack{display:grid;grid-gap:12px;gap:12px}.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;background:var(--sand);color:var(--ink)}.pill.live{background:var(--coral);color:#fff}.pill.final{background:var(--ink);color:var(--sand)}.pill.ok{background:#d9efe1;color:var(--ok)}.pill.warn{background:#fdf0c8;color:#7a5b00}.msg{padding:10px 14px;border-radius:10px;font-size:14px}.msg.error{background:#fde4e4;color:var(--coral-dark)}.msg.info{background:#e3ecfa;color:var(--ocean)}.msg.good{background:#d9efe1;color:var(--ok)}table.list{width:100%;border-collapse:collapse;font-size:14px}table.list th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);padding:8px;border-bottom:2px solid var(--sand-deep)}table.list td{padding:8px;border-bottom:1px dashed var(--sand-deep);vertical-align:middle}.scroll-x{overflow-x:auto}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}.tabs button{border:2px solid var(--ocean);background:transparent;color:var(--ocean);border-radius:999px;padding:6px 16px;font-weight:600;cursor:pointer}.tabs button[aria-selected=true]{background:var(--ocean);color:var(--sand-light)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}.brandmark{display:inline-flex;align-items:center;gap:calc(var(--bm) * .35);line-height:0}.brandmark .bm-heart{height:var(--bm);width:auto}.brandmark .bm-word{height:calc(var(--bm) * .8);width:auto}.topbar .brand{display:inline-flex;align-items:center}.screens{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:rgba(247,235,208,.12)}.screens a{color:var(--sand);text-decoration:none;font-weight:600;font-size:14px;padding:6px 14px;border-radius:999px;white-space:nowrap}.screens a:hover{background:rgba(247,235,208,.18)}.screens a[aria-current=page]{background:var(--sand);color:var(--ocean)}.topbar .screens a{text-decoration:none;color:var(--sand)}.topbar .screens a[aria-current=page]{color:var(--ocean)}.screens-row{background:var(--ocean);padding:0 16px 10px;display:flex;justify-content:center}.adminbar{gap:14px}.adminbar .edition-pick{width:auto;max-width:360px;min-height:38px;padding:4px 34px 4px 14px;border-radius:999px;border:2px solid rgba(247,235,208,.35);background-color:var(--ocean-deep);color:var(--sand);font-weight:600;font-size:15px;cursor:pointer}.adminbar .edition-pick option{color:var(--ink);background:#fff}.adminbar .admin-links{display:flex;align-items:center;gap:4px}.adminbar .admin-links a,.adminbar .admin-links button.link{color:var(--sand);text-decoration:none;font-weight:600;font-size:14px;padding:6px 12px;border-radius:999px}.adminbar .admin-links a:hover,.adminbar .admin-links button.link:hover{background:rgba(247,235,208,.14)}.adminbar .admin-links a[aria-current=page]{background:var(--sand);color:var(--ocean)}@media (max-width:720px){.adminbar .spacer{display:none}.adminbar .edition-pick{max-width:100%;flex:1 1}}.info{position:relative;display:inline-flex;vertical-align:1px;margin-left:4px}.info-btn{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--sea);background:#fff;color:var(--sea);font:italic 700 11px/1 Georgia,Times New Roman,serif;display:inline-grid;place-items:center;padding:0;cursor:pointer;text-transform:none;letter-spacing:0}.info-btn:hover,.info-btn[aria-expanded=true]{background:var(--sea);color:#fff}.info-pop{position:absolute;top:calc(100% + 6px);left:-8px;z-index:30;width:min(280px,80vw);padding:10px 12px;border-radius:10px;background:var(--ocean);color:var(--sand-light);font:400 14px/1.45 var(--f-body);text-transform:none;letter-spacing:0;text-align:left;white-space:normal;box-shadow:0 6px 20px rgba(26,22,51,.25)}.info-pop.right{left:auto;right:-8px}h1 .info-btn,h2 .info-btn,h3 .info-btn{vertical-align:3px}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);grid-gap:14px;gap:14px;overflow-x:auto;padding-bottom:8px;align-items:start}.board-col{background:#fff;border:2px solid var(--sand-deep);border-radius:var(--radius);padding:12px;display:grid;grid-gap:10px;gap:10px;align-content:start;min-width:0}.board-col.over{border-color:var(--sea);background:#f6f9ff}.board-col.add{border-style:dashed;background:var(--sand-light)}.board-head{display:grid;grid-gap:8px;gap:8px;padding-bottom:8px;border-bottom:1px dashed var(--sand-deep)}.board-title{font-family:var(--f-display);font-weight:900;font-size:22px;text-transform:uppercase;border:2px solid transparent;background:transparent;padding:2px 6px;min-height:36px;flex:1 1;min-width:0}.board-title:hover{border-color:var(--sand-deep)}.board-title:focus{border-color:var(--sea);background:#fff}.board-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px;min-height:48px}.board-empty{border:2px dashed var(--sand-deep);border-radius:10px;padding:12px;text-align:center;color:var(--ink-soft);font-size:14px}.team-card{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;background:var(--sand-light);border:1px solid var(--sand-deep);border-radius:10px;padding:6px 8px}.team-card.dragging{box-shadow:0 8px 24px rgba(26,22,51,.2);background:#fff;cursor:-webkit-grabbing;cursor:grabbing}.team-card .grip{border:0;background:none;cursor:-webkit-grab;cursor:grab;font-size:18px;color:var(--ink-soft);padding:4px 2px;touch-action:none;line-height:1}.team-card .seed{font-family:var(--f-display);font-weight:900;font-size:18px;color:var(--sea);min-width:22px;text-align:center}.team-card .team-name{border:0;background:none;text-align:left;padding:2px 0;cursor:pointer;font-weight:600;min-width:0;overflow-wrap:anywhere;display:grid}.team-card .team-name small{font-weight:400;font-size:12px;color:var(--ink-soft)}.team-card .team-name small.bad{color:var(--coral-dark);font-weight:600}.chips{display:flex;gap:4px}.chip{border:1.5px solid var(--sand-deep);background:#fff;color:var(--ink-soft);border-radius:999px;font-size:12px;font-weight:600;padding:2px 8px;cursor:pointer}.chip.on{background:#d9efe1;border-color:#9fd3b1;color:var(--ok)}.team-editor{background:#fff;border:1px solid var(--sand-deep);border-top:0;border-radius:0 0 10px 10px;padding:10px;margin-top:-4px}.flow{flex-wrap:wrap;align-items:stretch}.flow,.flow-item{display:flex;gap:6px}.flow-item{align-items:center}.flow-arrow{color:var(--ink-soft);font-weight:700}.flow-step{display:grid;grid-gap:2px;gap:2px;background:var(--sand);border-radius:10px;padding:8px 12px;max-width:220px;font-size:13px}.flow-step strong{font-family:var(--f-display);font-weight:800;font-size:16px;text-transform:uppercase}.flow-step span{color:var(--ink-soft)}.flow-step.teams{background:var(--ocean);color:var(--sand-light)}.flow-step.teams span{color:var(--surf)}.flow-step.pools{background:#e3ecfa}.flow-step.ranking{background:var(--sand-light);border:1px dashed var(--sand-deep)}.flow-step.final{background:var(--coral);color:#fff}.flow-step.final span{color:#ffe3e3}.flow.compact{gap:4px;font-size:12px;font-weight:600;color:var(--ink-soft)}.flow.compact .flow-step{display:inline;background:none;padding:0;font-size:12px;max-width:none}.flow.compact .flow-step.final{color:var(--coral-dark);background:none}.flow.compact .flow-step.teams{color:var(--ocean);background:none}.flow.compact .flow-arrow{margin:0 3px}.flow-problem{color:var(--coral-dark);font-weight:600}.board-title{width:100%}.board-meta{gap:6px;font-size:13px;min-width:0}.board-meta,.board-meta label{display:flex;align-items:center}.board-meta label{gap:4px}.board-meta input{width:84px;min-height:30px;padding:2px 8px}.board-meta .spacer{flex:1 1}.board-meta .btn.small{min-height:30px;padding:0 10px}.tabs.sub{margin:0}.tabs.sub button{border-width:1.5px;font-size:15px}.choices{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.choice{border:2px solid var(--sand-deep);border-radius:var(--radius);background:var(--sand-light);display:grid}.choice.selected{border-color:var(--sea);background:#eef3fc}.choice.disabled:not(.selected){opacity:.55}.choice-pick{display:grid;grid-template-columns:auto 1fr;grid-gap:12px;gap:12px;align-items:start;text-align:left;border:0;background:none;padding:14px 16px;cursor:pointer}.choice.selected .choice-pick{cursor:default}.choice-pick strong{display:block;font-size:17px;margin-bottom:2px}.choice-pick .muted{font-size:14px;line-height:1.4}.choice .radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--ink-soft);margin-top:2px}.choice.selected .radio{border-color:var(--sea);box-shadow:inset 0 0 0 4px #fff;background:var(--sea)}.choice-extra{padding:0 16px 14px 48px}.stepper{display:inline-flex;align-items:center;gap:8px}.stepper .num{font-family:var(--f-display);font-weight:900;font-size:26px;min-width:32px;text-align:center}.stepper .btn.small{min-width:38px;font-size:18px}details.more>summary{cursor:pointer;font-weight:600}.card.make{border-color:var(--sea)}.today-strip{display:flex;flex-wrap:wrap;gap:18px 28px;align-items:flex-start}.today-strip>div{display:grid;grid-gap:4px;gap:4px}.today-strip .grow{flex:1 1;min-width:280px}.today-strip .label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-weight:600}.today-strip strong{font-size:20px}.today-strip select{width:auto;min-height:36px}.ov-two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}@media (max-width:800px){.ov-two{grid-template-columns:1fr}}.ov-game{display:grid;grid-template-columns:52px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;background:var(--sand-light);border:1px solid var(--sand-deep);border-radius:10px;padding:6px 10px;font-size:14px;text-align:left;width:100%}.ov-game.sel{border-color:var(--sea);box-shadow:0 0 0 2px #cfdcf5}.ov-game .teams{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}.ov-game .score{border:0;background:none;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer;color:var(--sea);font-size:14px}.ov-game.compact,.team-btn{cursor:pointer}.team-btn{border:1.5px dashed transparent;background:none;border-radius:8px;padding:2px 6px;font-weight:600}.team-btn:hover{border-color:var(--sea)}.team-btn.active{background:var(--sun);border-color:var(--ink)}.ov-pools{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.ov-pool{background:var(--sand-light);border:1px solid var(--sand-deep);border-radius:12px;padding:10px 12px;display:grid;grid-gap:8px;gap:8px;align-content:start}.ov-pool.over{border-color:var(--sea);background:#eef3fc}.ov-pool .grip{cursor:-webkit-grab;cursor:grab;color:var(--ink-soft);touch-action:none}.ov-bracket{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);grid-gap:14px;gap:14px;overflow-x:auto;padding-bottom:6px}.ov-round{display:grid;grid-template-rows:auto 1fr;grid-gap:8px;gap:8px;min-width:0}.ov-round>strong{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--sea)}.ov-matches{display:flex;flex-direction:column;justify-content:space-around;gap:8px}.ov-match{display:grid;grid-gap:2px;gap:2px;text-align:left;background:#fff;border:1.5px solid var(--sand-deep);border-radius:10px;padding:6px 10px;cursor:pointer;width:100%;font-size:14px}.ov-match:disabled{cursor:default}.ov-match.sel{border-color:var(--sea);box-shadow:0 0 0 2px #cfdcf5}.ov-match.live{border-color:var(--sea);box-shadow:0 0 0 2px var(--sea)}.ov-match.bye{background:var(--sand-light);color:var(--ink-soft);font-size:13px;cursor:default}.ov-match .meta{font-size:11px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}.ov-match .line{display:flex;justify-content:space-between;gap:8px;font-weight:600}.ov-match .line.tbd{color:var(--ink-soft);font-weight:500}.ov-match .line.win{color:var(--coral-dark)}.ov-champ{font-family:var(--f-display);font-weight:900;font-size:20px;text-transform:uppercase;color:var(--coral);text-align:center}.ov-panel{border-color:var(--sea);position:-webkit-sticky;position:sticky;bottom:12px;box-shadow:0 8px 28px rgba(26,22,51,.18)}.ov-champ{font-size:16px;overflow-wrap:anywhere;line-height:1.1}.fmt-table{display:grid;grid-gap:8px;gap:8px}.fmt-row{display:grid;grid-template-columns:minmax(140px,200px) 1fr;grid-gap:10px;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--sand,#f6ecd6)}.fmt-row.head{background:none;padding-top:0;padding-bottom:0;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft,#6b5f48)}details .fmt-row{grid-template-columns:minmax(120px,180px) repeat(3,minmax(0,1fr))}.fmt-row input,.fmt-row select{width:100%}@media (max-width:640px){.fmt-row,details .fmt-row{grid-template-columns:1fr}.fmt-row.head{display:none}}.day-track{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px;align-items:flex-start}.day-col{flex:0 0 210px;background:var(--sand-light);border:1px solid var(--sand-deep);border-radius:14px;overflow:hidden}.day-col header{display:grid;grid-gap:4px;gap:4px;padding:10px 12px;background:var(--sand);border-bottom:1px solid var(--sand-deep)}.day-col header .t{font-family:var(--f-display,inherit);font-weight:900;font-size:26px;line-height:1}.day-col header .dur{font-size:13px;color:#6b5f48}.day-col.live{border-color:var(--sea);box-shadow:0 0 0 2px var(--sea)}.day-col.done{opacity:.75}.day-col.prog{flex-basis:160px;background:#e8eefb;border-color:#c9daf8}.day-col.prog header{background:#c9daf8;border-color:#b4c8ee}.day-col.prog p{margin:0;padding:10px 12px;font-size:14px}.day-games{list-style:none;margin:0;padding:8px;display:grid;grid-gap:6px;gap:6px}.day-game{display:grid;grid-gap:1px;gap:1px;padding:7px 9px;border-radius:10px;background:#fff;border-left:4px solid var(--dv,#ccc);font-size:14px;line-height:1.25}.day-game .meta{font-size:12px;color:#6b5f48}.day-game .won{font-weight:800;color:var(--coral,#de3c3c)}.day-game .tbd{color:#9c8e70;font-style:italic}.day-game .score{font-weight:700;font-size:13px}.day-game.live{background:#eef2fb}.day-game .now{color:var(--sea)}.day-chip{display:inline-block;justify-self:start;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700;background:var(--dv-bg,#eee);color:#3a3226}.day-legend{display:inline-flex;gap:6px;flex-wrap:wrap}.day-chip.prog{background:#c9daf8}.dv-0{--dv:#e69138;--dv-bg:#f9cb9c}.dv-1{--dv:#6aa84f;--dv-bg:#d9ead3}.dv-2{--dv:#c27ba0;--dv-bg:#f4cccc}.dv-3{--dv:#8e7cc3;--dv-bg:#d9d2e9}@media print{@page{size:A4 landscape;margin:10mm}body{background:#fff!important}.adminbar,.day-toolbar button,.msg,nav.tabs{display:none!important}.day-track{flex-wrap:wrap;overflow:visible}.day-col{page-break-inside:avoid;break-inside:avoid;flex-basis:175px}.day-col.done,.day-col.live{opacity:1;box-shadow:none}}nav.tabs[role=tablist]{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:var(--sand-light);padding:10px 0;margin-top:-10px;box-shadow:0 6px 8px -8px rgba(0,0,0,.25)}.day-track{min-width:0;max-width:100%}.ov-warn{display:block;flex-basis:100%;font-size:12px;color:#9a5b00}.tt-scroll{overflow-x:auto}.tt{display:grid;grid-gap:6px;gap:6px;align-items:stretch;min-width:0}.tt-h{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--sea);padding:0 4px}.tt-t{font-weight:900;font-size:18px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;align-self:center}.tt-t.now{color:var(--sea)}.tt-t.done{opacity:.5}.tt-c{display:grid;grid-gap:1px;gap:1px;align-content:start;padding:7px 9px;border-radius:10px;background:#fff;border-left:4px solid var(--dv,#ccc);font-size:14px;line-height:1.25;min-width:0}.tt-c.empty{background:transparent;border:1px dashed var(--sand-deep)}.tt-c .meta{font-size:11.5px;color:#6b5f48}.tt-c .won{font-weight:800;color:var(--coral)}.tt-c .tbd{color:#9c8e70;font-style:italic}.tt-c .score{font-weight:700;font-size:13px}.tt-c.live{box-shadow:0 0 0 2px var(--sea)}.tt-c .now{color:var(--sea)}.tt-c.done{opacity:.7}.tt.picking .tt-c:not(.mine):not(.empty){opacity:.35}.tt-c.mine{box-shadow:0 0 0 3px var(--sun,#f5c542);opacity:1}.tt-c .me{text-decoration:underline;text-underline-offset:3px}.tt-band{grid-column:1/-1;display:grid;grid-template-columns:64px 1fr;grid-gap:6px;gap:6px;align-items:center;padding:6px 0;border-radius:10px;background:#e8eefb;font-size:14px}.tt-band .t{font-weight:900;font-size:16px;padding-left:4px}.tt-band.break{background:#c9daf8}@media print{.msg,.tt-tools{display:none!important}.tt-scroll{overflow:visible}.tt-c,.tt-c.done{opacity:1}.tt-band,.tt-c,.tt-c.done{page-break-inside:avoid;break-inside:avoid}}.tt-public summary{cursor:pointer;list-style:revert}.tt-t{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:var(--sand-light);padding-right:4px}.vs{font-weight:700}.ov-game .won,.vs{color:var(--coral)}.ov-game .won{font-weight:800}.rules-public summary{cursor:pointer;list-style:revert}.rules-text{display:grid;grid-gap:8px;gap:8px;line-height:1.5;font-size:15px}.rules-text h3{margin:12px 0 0;font-size:17px}.rules-text p,.rules-text ul{margin:0}.rules-text ul{padding-left:20px;display:grid;grid-gap:4px;gap:4px}