:root{--paper:#f7f5ee;--ink:#203b34;--muted:#67746b;--accent:#b74c2b;--line:#d8ded3;--card:#fffef8;--soft:#eaf0e5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'Segoe UI',Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--accent);color:white;border:1px solid transparent;border-radius:5px;padding:13px 22px;font-weight:650;text-decoration:none;cursor:pointer;line-height:1.4}button:hover,.button:hover{filter:brightness(.93)}button:disabled{cursor:default;filter:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b74c2b;outline-offset:4px}.small{padding:10px 15px;font-size:14px}.topbar{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:28px 5%;gap:25px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:750;font-size:19px;letter-spacing:-.4px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:var(--muted);font-weight:650}.mark{background:var(--ink);color:var(--paper);width:42px;height:46px;display:grid;place-items:center;border-radius:5px;font-family:Georgia,serif;font-size:20px}nav{display:flex;align-items:center;gap:26px;font-size:14px}nav a{text-decoration:none}nav form{margin:0}.link{color:var(--ink);background:none;border:0;padding:0;font-weight:500}.link:hover{color:var(--accent)}main{max-width:1320px;margin:auto;padding:0 4%}section{scroll-margin-top:25px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;padding:76px 0 84px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;margin:0 0 18px}.dot{display:inline-block;background:var(--accent);width:7px;height:7px;border-radius:50%;margin-right:6px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(46px,5.6vw,78px);font-weight:400;line-height:1.04;letter-spacing:-3px;margin-bottom:24px}h2{font-family:Georgia,serif;font-size:34px;font-weight:400;line-height:1.2;letter-spacing:-1px;margin-bottom:20px}h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin-bottom:12px}.lede{font-size:19px;color:var(--muted);max-width:580px}.micro{font-size:12px;color:var(--muted);margin:20px 0 0}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.text-link{font-weight:650;text-decoration:none}.muted{color:var(--muted);font-size:14px}.hero-art{background:#203b34;border-radius:8px;color:#eef1df;min-height:350px;position:relative;overflow:hidden;box-shadow:0 12px 30px #203b3412}.hero-art:before{content:'';position:absolute;width:310px;height:310px;border:1px solid #ffffff16;border-radius:50%;right:-90px;bottom:-100px}.art-top,.art-bottom{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;padding:23px 25px;color:#bdcbbd}.art-court{display:flex;align-items:center;gap:18px;padding:12px 25px 25px}.art-col{display:grid;gap:14px;flex:1}.art-col i{display:flex;gap:8px;font-style:normal;font-size:9px;padding:12px 9px;border:1px solid #779280;border-radius:3px;background:#29473e}.art-col b{font-size:8px;white-space:nowrap}.art-col.second{gap:60px;flex:.8}.art-col.second i{font-size:8px;border-color:#8fa28c;background:transparent;position:relative}.art-col.second i:before{content:'';position:absolute;left:-19px;top:50%;width:18px;border-top:1px solid #779280}.art-final{border:1px solid #bdb990;background:#d7dbab;color:var(--ink);padding:18px 10px;text-align:center;font-size:32px;line-height:1.1;transform:rotate(-5deg);box-shadow:5px 5px #152c26}.art-final small{display:block;font-size:9px;letter-spacing:1px;margin-top:10px}.art-bottom{border-top:1px solid #ffffff20;margin:0 25px;padding:18px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading p:last-child{margin-bottom:0}.pool-grid,.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pool-card{background:var(--card);border:1px solid var(--line);border-radius:7px;padding:28px 32px}.card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-top .eyebrow{margin:0;font-size:9px}.pill{font-size:10px;padding:4px 10px;border-radius:30px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.big-number{font-family:Georgia,serif;font-size:77px;line-height:1;margin:32px 0 17px;letter-spacing:-4px}.big-number span{font:10px 'Segoe UI',sans-serif;letter-spacing:2px;margin-left:12px}.pool-card p{color:var(--muted);font-size:14px;max-width:430px}.card-footer{border-top:1px solid var(--line);padding-top:22px;margin-top:26px;display:flex;justify-content:space-between;font-size:14px}.card-footer>a:last-child{color:var(--muted)}.story{margin-top:65px;padding:50px 0 60px;border-top:1px solid var(--line);max-width:850px}.story .prose{color:var(--muted);font-size:17px;max-width:720px}.prose{white-space:pre-wrap}.account-panel{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:32px;background:var(--soft);border-radius:7px;margin:35px 0}.account-panel h2{margin:0 0 10px}.account-panel p{font-size:14px}.account-panel form{align-self:center}footer{max-width:1320px;margin:36px auto 0;padding:25px 4%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;font-size:12px;align-items:center}footer form{display:flex;gap:10px;align-items:center}footer select{padding:5px}.notice{background:#e3ebd9;border:1px solid #b3c5a7;border-radius:4px;padding:16px 22px;margin-top:22px}.page-head{padding:65px 0 45px}.page-head.compact{padding:48px 0 28px}.page-title{font-size:48px}.narrow{max-width:510px;margin:65px auto 100px}.narrow .actions{font-size:13px;margin-top:25px;gap:20px}.stack{display:grid;gap:18px}.stack button{justify-self:start}.stack small{margin-top:-12px;color:var(--muted)}label{display:block;font-size:13px;font-weight:650}input,textarea,select{display:block;width:100%;background:var(--card);border:1px solid #bac6b7;border-radius:4px;padding:11px 12px;color:var(--ink);margin-top:6px;min-width:0}textarea{resize:vertical}input[type=color]{height:45px;max-width:130px}.checkbox{display:flex;gap:9px;align-items:center;font-weight:400}.checkbox input{width:auto;margin:0}.mini-card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:28px;margin-bottom:25px}.mini-card p{font-size:14px;color:var(--muted)}.detail-grid{align-items:start}fieldset{border:1px solid var(--line);padding:18px;display:grid;gap:15px}legend{font-size:11px;font-weight:750;letter-spacing:1px}dl{margin-top:0}dl div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}dd{margin:0;font-weight:650}.admin-form>button{margin-bottom:35px}.table-wrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:6px}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th,td{padding:17px 18px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;background:var(--soft)}.empty{padding:50px;text-align:center;color:var(--muted)}.entry-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:25px}.entry-fields textarea{height:50px}.bracket-toolbar{display:flex;justify-content:space-between;gap:15px;font-size:12px;border-bottom:1px solid var(--line);padding-bottom:10px}.bracket-toolbar p{margin:0;font-weight:700}.bracket{display:flex;overflow:auto;gap:25px;padding:25px 4px 35px;align-items:stretch;max-width:100%;scrollbar-color:#9bab97 var(--paper)}.round{min-width:205px;flex:1;display:flex;flex-direction:column}.round>h2{font-family:inherit;font-size:13px;letter-spacing:0;font-weight:750;margin-bottom:5px}.round-points{font-size:10px;color:var(--muted);margin-bottom:20px}.matches{display:flex;flex-direction:column;justify-content:space-around;flex:1;gap:20px}.match{position:relative}.team{display:flex;justify-content:flex-start;gap:7px;width:100%;padding:9px 8px;font-size:11px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:3px;margin:3px 0;min-height:38px;text-align:left;font-weight:500}.team.selected{border-color:var(--ink);background:var(--ink);color:var(--paper)}.team:disabled:not(.selected){color:#758170;background:#f0f1e9}.team b{margin-left:auto}.seed{font-size:9px;opacity:.65;width:16px;flex-shrink:0}.region-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin:0 0 7px;color:var(--muted)}.submit-bar{background:var(--soft);padding:25px;display:flex;gap:25px;align-items:center;flex-wrap:wrap;border-radius:5px}.submit-bar p{width:100%;margin:0;font-size:12px}#print-button{margin-bottom:15px}@media(max-width:900px){.topbar{align-items:flex-start;flex-direction:column;gap:18px;padding:22px 5%}nav{width:100%;gap:18px;flex-wrap:wrap}.hero{gap:30px;padding-top:45px;grid-template-columns:1fr}.hero>div:first-child{max-width:650px}.hero-art{max-width:620px;min-height:320px}.art-court{gap:25px}.hero h1{font-size:65px}.pool-card{padding:22px}.section-heading{align-items:start;gap:20px}.section-heading>p{font-size:12px}.account-panel{grid-template-columns:1fr}footer{flex-wrap:wrap}.detail-grid{gap:18px}.page-head h1{font-size:55px}}@media(max-width:580px){main{padding:0 5%}h1{letter-spacing:-2px}.hero h1{font-size:55px}.hero{padding-bottom:50px}.pool-grid,.detail-grid,.entry-fields{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-top:15px}.art-court{gap:10px;padding:10px 16px 20px}.art-top{padding:20px 16px}.art-col i{font-size:8px;padding:12px 5px}.art-col b{font-size:7px}.art-col.second i{font-size:7px}.art-final{padding:15px 8px}.hero-art{min-height:310px}.page-head h1,.page-title{font-size:43px}.actions{gap:18px}.bracket-toolbar{flex-direction:column}.account-panel{padding:22px}.account-panel .actions{flex-direction:column;align-items:stretch}.narrow{margin:45px auto 70px}nav{font-size:13px;gap:16px}.brand{font-size:18px}.submit-bar{align-items:flex-start;flex-direction:column}.story{margin-top:40px}footer .muted{font-size:11px}.round{min-width:200px}.card-top{gap:6px}.card-top .eyebrow{letter-spacing:1px}.mini-card{padding:22px}}
@media print{@page{size:landscape;margin:8mm}body{font-size:9px;background:white}.topbar,footer,.no-print,.submit-bar,.entry-fields{display:none!important}main{max-width:none;padding:0}.page-head{padding:0!important}.page-head h1{font-size:22px;margin-bottom:8px}.page-head p{font-size:9px;margin-bottom:8px}.bracket{overflow:visible;gap:8px;padding:8px 0}.round{min-width:0}.round>h2{font-size:9px}.round-points{font-size:7px;margin-bottom:7px}.matches{gap:5px}.team{font-size:7px;padding:2px;min-height:16px;margin:1px 0;break-inside:avoid}.team.selected{background:#e4e9e1!important;color:black!important;print-color-adjust:exact}.region-label{font-size:7px;margin-bottom:2px}.seed{font-size:6px;width:9px}.bracket-toolbar{font-size:8px}.notice{display:none}}
/* Both layouts share the same game IDs and picks. The mirrored canvas stays inside an overflow container. */
.layout-picker{min-width:190px}.layout-picker select{margin-top:3px;padding:7px 10px}.bracket-toolbar{align-items:center}.bracket-help{margin:12px 0 0}.bracket.traditional{display:block;padding:24px 8px 40px}.classic-board{display:grid;grid-template-columns:minmax(620px,1fr) 460px minmax(620px,1fr);gap:18px;min-width:1740px;align-items:stretch}.classic-wing{display:flex;flex-direction:column;gap:65px}.classic-region{display:flex;flex-direction:column;flex:1;min-height:660px}.classic-region-title{font:700 14px 'Segoe UI',sans-serif;letter-spacing:1px;text-transform:uppercase;margin:0 0 18px;padding:10px 0;border-bottom:2px solid var(--ink)}.regional-rounds{display:flex;gap:16px;flex:1}.classic-board .round{min-width:0;width:140px;flex:1}.classic-board .round h2{font-size:10px;min-height:25px}.classic-board .round-points{font-size:9px;min-height:28px;margin-bottom:12px}.classic-board .matches{gap:15px}.classic-board .team{font-size:10px;min-height:32px;padding:7px 5px;line-height:1.3;gap:4px}.classic-board .seed{width:12px;font-size:8px}.classic-board .match:after{content:'';position:absolute;right:-17px;top:50%;width:16px;border-top:1px solid #9bab97}.right-wing .regional-rounds{flex-direction:row-reverse}.right-wing .match:after{left:-17px;right:auto}.classic-finals{display:flex;gap:14px;align-items:center}.classic-finals>.round{flex:1}.classic-finals .matches{flex:0}.classic-finals .match:after{display:none}.classic-finals .championship{padding:16px 8px;background:var(--soft);border:1px solid var(--line);border-radius:6px}.classic-finals .championship h2{font-weight:800}.sweet-board{grid-template-columns:310px 460px 310px;min-width:1130px}.sweet-board .classic-region{min-height:215px}.classic-board .round-points{color:var(--muted)}.profile-header{display:flex;justify-content:space-between;gap:28px}.profile-header h2{margin-bottom:10px}.submission-summary{width:100%}.submission-summary p{margin:6px 0 0!important}.form-error{width:100%;padding:16px 18px;background:#fff0e9;border:1px solid #b74c2b;border-radius:5px;color:#80341f;font-weight:600;line-height:1.6}.form-error[hidden],button[hidden]{display:none!important}.secondary{background:var(--card);color:var(--ink);border-color:var(--ink)}[aria-invalid=true]{border-color:#b74c2b}.team-name{overflow-wrap:anywhere}.submit-bar{align-items:center}.bracket.rounds-view .team{min-height:40px}
@media(max-width:580px){.profile-header{flex-direction:column}.layout-picker{width:100%}.bracket-toolbar{align-items:stretch}.classic-board{gap:14px}}
@media print{.bracket-help,.layout-picker,.bracket-toolbar{display:none!important}.bracket.traditional{overflow:visible;padding:0}.classic-board{min-width:0;grid-template-columns:1fr 29% 1fr;gap:8px}.classic-wing{gap:20px}.classic-region{min-height:360px}.classic-region-title{font-size:8px;padding:4px 0;margin-bottom:7px}.regional-rounds{gap:5px}.classic-board .round{width:auto}.classic-board .round h2{font-size:6px;min-height:14px}.classic-board .round-points{font-size:5px;min-height:12px;margin-bottom:3px}.classic-board .matches{gap:3px}.classic-board .team{font-size:5px;min-height:13px;padding:2px;gap:1px}.classic-board .seed{font-size:5px;width:6px}.classic-board .match:after{width:5px;right:-5px}.right-wing .match:after{left:-5px}.classic-finals{gap:4px}.classic-finals .championship{padding:6px 3px}.sweet-board{min-width:0;grid-template-columns:1fr 40% 1fr}.sweet-board .classic-region{min-height:180px}}
.status-badge{display:inline-block;font-size:11px;font-weight:750;padding:7px 12px;border:1px solid;border-radius:5px;white-space:nowrap}.status-open{background:#e2f4e8;border-color:#7db18b;color:#1d6437}.status-closed{background:#fbe5e4;border-color:#cf8d87;color:#922e26}.status-draft{background:#fff1d3;border-color:#d6b16c;color:#75510f}.local-time{display:block;font-size:11px;font-weight:400;color:var(--muted)}.locked-hint{font-size:12px;max-width:240px;color:var(--muted)}.hero-message{padding:35px}.hero-message strong{font:46px/1.2 Georgia,serif}.hero-message p{color:#cdd9cb;font-size:15px}.my-season{margin-top:35px}.date-time-row,.scoring-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.view-controls{display:flex;gap:15px;align-items:end;flex-wrap:wrap;padding:14px 0}.view-controls label{min-width:140px}.view-controls select{padding:8px}.view-controls button{padding:10px 15px}.bracket.rounds-view .round{padding:0;border:0;background:transparent}.bracket{max-height:78vh}.rounds-view .round>h2{position:sticky;top:0;z-index:2;background:inherit;padding:6px 0}.bracket-toolbar{position:sticky;top:0;z-index:5;background:var(--paper);padding:12px 0;border-top:1px solid var(--line)}#bracket-stage:fullscreen{background:var(--paper);padding:20px;overflow:auto}#bracket-stage:fullscreen .bracket{max-height:80vh}.zoom-75{zoom:.75}.zoom-50{zoom:.5}.zoom-25{zoom:.25}.actual-winner .team-name,.actual-winner .game-score{font-weight:800}.game-score{margin-left:auto;font-variant-numeric:tabular-nums}.team-logo{width:22px;height:22px;display:grid;place-items:center;flex-shrink:0}.team-logo img{max-width:22px;max-height:22px;object-fit:contain}.logo-initials{font-size:9px;font-weight:750;background:var(--soft);color:var(--ink);border-radius:50%;padding:4px}.match-meta{font-size:9px;line-height:1.4;color:var(--muted);margin:5px 0 0}.score-editor{display:flex;gap:5px;align-items:center;font-size:9px;margin:3px 0}.score-input{width:60px;font-size:12px;padding:4px;margin:0}.classic-board .score-editor{font-size:8px}.classic-board .score-input{width:50px}.classic-region:has(.score-editor){min-height:1000px}#draft-status{width:100%;font-size:12px}.submit-bar{position:relative}.team{gap:6px}.classic-board .team{min-height:36px}.classic-board .round{min-width:140px}.classic-board .regional-rounds .match:after{border-color:#869d84}.classic-wing{position:relative}.classic-wing:after{content:'';position:absolute;right:-12px;top:25%;height:50%;width:10px;border-right:1px solid #9bab97;border-top:1px solid #9bab97;border-bottom:1px solid #9bab97}.right-wing:after{right:auto;left:-12px;border-right:0;border-left:1px solid #9bab97}
@media(max-width:580px){.date-time-row,.scoring-grid{grid-template-columns:1fr}.view-controls{gap:10px}.view-controls label{min-width:125px;flex:1}.card-top{flex-wrap:wrap}.bracket-toolbar{position:relative}.pool-card .card-footer{flex-wrap:wrap;gap:12px}.hero-message strong{font-size:40px}}
@media print{.bracket{max-height:none!important;overflow:visible!important}.view-controls,.local-time,.score-editor{display:none!important}.zoom-25,.zoom-50,.zoom-75{zoom:1}.classic-board .round{min-width:0}.team-logo,.team-logo img{width:10px;height:10px}.classic-wing:after{display:none}}

.zoom-25{zoom:0.25}.zoom-30{zoom:0.3}.zoom-35{zoom:0.35}.zoom-40{zoom:0.4}.zoom-45{zoom:0.45}.zoom-50{zoom:0.5}.zoom-55{zoom:0.55}.zoom-60{zoom:0.6}.zoom-65{zoom:0.65}.zoom-70{zoom:0.7}.zoom-75{zoom:0.75}.zoom-80{zoom:0.8}.zoom-85{zoom:0.85}.zoom-90{zoom:0.9}.zoom-95{zoom:0.95}.zoom-100{zoom:1.0}
@media print{.zoom-25,.zoom-30,.zoom-35,.zoom-40,.zoom-45,.zoom-50,.zoom-55,.zoom-60,.zoom-65,.zoom-70,.zoom-75,.zoom-80,.zoom-85,.zoom-90,.zoom-95,.zoom-100{zoom:1}}

.team-label{flex:1;min-width:0}.team-meta{display:block;font-size:9px;font-weight:400;opacity:.8;margin-top:2px}.classic-board .team-meta{font-size:8px}.team-logo [hidden]{display:none!important}

/* Zoom works in either layout; smaller fit sizes accommodate narrow screens. */
.rounds-board{display:flex;gap:25px;min-width:1510px;align-items:stretch}.zoom-10{zoom:.1}.zoom-15{zoom:.15}.zoom-20{zoom:.2}
.classic-board .round>h2{position:sticky;top:0;z-index:2;background:var(--paper)}
@media print{.zoom-10,.zoom-15,.zoom-20{zoom:1}.rounds-board{min-width:0;gap:8px}}

/* Accessibility and readable compact navigation. */
.skip-link{position:absolute;left:12px;top:-100px;z-index:100;padding:12px 20px;background:#fff;color:#173d24}.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #165da2;outline-offset:3px}.team:focus-visible{outline:3px solid #165da2;outline-offset:3px}
.wrap-cell{white-space:normal;min-width:200px;max-width:600px}.compact-controls{display:flex;gap:20px;align-items:center;margin:16px 0}.compact-controls label{max-width:300px}
.bracket.compact-matchups{display:block;max-height:none;overflow:visible}.compact-matchups .round{width:100%;max-width:680px;min-width:0}.compact-matchups .team{min-height:48px;font-size:15px;padding:10px}.compact-matchups .matches{gap:24px}.compact-matchups .round>h2{font-size:19px}.compact-matchups .seed{font-size:12px}.compact-matchups .team-logo,.compact-matchups .team-logo img{width:28px;height:28px;max-width:28px;max-height:28px}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.compact-controls,#keyboard-help{display:none!important}.bracket.compact-matchups .team{color:#24392b}.compact-matchups .match{break-inside:avoid}}

/* Round columns share the page color; progression is shown only by thin connectors. */
.rounds-board{position:relative;isolation:isolate}.round-connectors{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:-1}.round-connectors path{fill:none;stroke:#9bab97;stroke-width:1;vector-effect:non-scaling-stroke}

/* Later-round predictions retain contradictions until explicitly resolved. */
.match.pick-conflict{outline:2px solid #a92525;outline-offset:5px;border-radius:3px;background:#fff1ee}.conflict-label{color:#8a1515;font-size:11px;font-weight:700;margin:0 0 7px}.pick-conflict-row{padding:16px;margin:14px 0;border:2px solid #a92525;border-radius:5px;background:#fff1ee}.pick-conflict-row button{margin:5px 12px 5px 0}.later-pick-label{font-size:10px;margin-top:9px}.later-pick-select{font-size:11px;padding:6px;width:100%}.direct-pick-note{font-size:10px;font-weight:650;margin:5px 0}.champion-first-label{max-width:520px;margin:18px 0}.late-pick-help #pick-conflicts[hidden]{display:none}.classic-region:has(.later-pick-select){min-height:1100px}.compact-matchups .later-pick-select{font-size:15px;padding:10px}
@media print{.later-pick-label,.direct-pick-note,.late-pick-help{display:none!important}}
/* BracketHost identity and theme tokens. Original approved artwork stays intact. */
.brand-logo{width:205px;max-width:46vw;height:auto;display:block}.brand{gap:14px}.organizer-brand{font-size:13px}.theme-control{display:flex;align-items:center;gap:6px;font-size:11px}.theme-control select{width:90px;padding:6px;margin:0}.topbar nav{flex-wrap:wrap}.game-quick{font-size:10px;padding:4px;margin:6px 0;width:100%}.quick-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:12px 0}.quick-toolbar label{min-width:130px}.quick-toolbar select{padding:8px}.drop-ready{outline:2px dashed var(--accent);outline-offset:3px}.team[draggable=true]{cursor:grab}.pick-correct{border-left:3px solid #27854d}.pick-incorrect{border-left:3px solid #bd4538}.pick-eliminated{opacity:.75}.prediction-state,.pick-share,.upset-badge{font-size:10px;line-height:1.4;margin:5px 0}.upset-badge{background:#fff0d9;color:#7a3b00;padding:4px 6px;border-radius:4px;font-weight:700}.live-display{font-size:12px;max-width:700px}.drag-help{font-size:12px;color:var(--muted)}
:root[data-theme=dark]{color-scheme:dark;--paper:#101722;--card:#1b2532;--ink:#e8edf4;--muted:#adb9c9;--line:#425064;--soft:#273448}
[data-theme=dark] body{background:var(--paper);color:var(--ink)}[data-theme=dark] .topbar,[data-theme=dark] footer,[data-theme=dark] .match,[data-theme=dark] .pool-card,[data-theme=dark] .mini-card,[data-theme=dark] .auth-card,[data-theme=dark] .classic-finals .championship{background:var(--card);color:var(--ink)}[data-theme=dark] .brand-logo{background:#fff;border-radius:5px;padding:5px}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:#131e2c;color:var(--ink);border-color:var(--line)}[data-theme=dark] .team{background:var(--card);color:var(--ink);border-color:var(--line)}[data-theme=dark] .team.selected{background:#374331;color:#f6f8ef}[data-theme=dark] .notice,[data-theme=dark] .form-error,[data-theme=dark] .late-pick-help{background:#302b26;color:var(--ink)}[data-theme=dark] .pick-conflict{background:#3a222a;border-color:#ed8d82}[data-theme=dark] .pick-conflict-row{background:#2f2028;color:var(--ink)}[data-theme=dark] .status-open{background:#173c2a;color:#a6e4bb}[data-theme=dark] .status-closed{background:#45232a;color:#ffb5ae}[data-theme=dark] .status-draft{background:#3f341c;color:#f8db94}[data-theme=dark] th,[data-theme=dark] td{background:var(--card);color:var(--ink)}[data-theme=dark] a{color:#fca76b}[data-theme=dark] .rounds-board,[data-theme=dark] .rounds-view .round{background:var(--paper)}[data-theme=dark] .classic-region-title{color:var(--ink)}
@media(max-width:700px){.topbar{align-items:flex-start}.topbar nav{gap:10px}.brand-logo{width:170px}.theme-control{width:100%}.organizer-brand{display:none}.quick-toolbar label{flex:1}.quick-toolbar button{min-height:44px}}
@media print{:root[data-theme=dark]{color-scheme:light;--paper:#fff;--card:#fff;--ink:#142239;--muted:#555;--line:#aaa;--soft:#eee}.theme-control,.game-quick,.quick-toolbar,.live-display,.drag-help{display:none!important}body,.team,.match{background:#fff!important;color:#142239!important}.brand-logo{width:170px}}
.drag-handle{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:28px;touch-action:none;color:var(--muted);font-size:20px;cursor:grab}.team[draggable=true]:active{cursor:grabbing}@media print{.drag-handle{display:none}}
/* Disabled results remain readable in dark mode. */
[data-theme=dark] .team:disabled:not(.selected){background:#1b2532;color:#c5d0dd;border-color:#425064}[data-theme=dark] .team.selected:disabled{background:#374331;color:#f6f8ef}[data-theme=dark] .conflict-label{color:#ffb5ae}[data-theme=dark] .upset-badge{background:#49351e;color:#ffd29a}
