@font-face{font-family:"Court Display";src:url("assets/fonts/display.woff2") format("woff2");font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:"Court Display";src:url("assets/fonts/display-italic.woff2") format("woff2");font-style:italic;font-weight:800;font-display:swap}
@font-face{font-family:"Court Sans";src:url("assets/fonts/body.woff2") format("woff2");font-style:normal;font-weight:400 750;font-display:swap}
@font-face{font-family:"Court Mono";src:url("assets/fonts/mono.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
:root{color-scheme:light;--paper:#f6f6ef;--white:#fffefa;--ink:#142326;--muted:#53615e;--teal:#84e3d5;--pink:#ff799f;--line:#cbd0c7;--display:"Court Display","Arial Narrow",sans-serif;--sans:"Court Sans",Arial,sans-serif;--mono:"Court Mono",ui-monospace,monospace}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 var(--sans);-webkit-font-smoothing:antialiased}
button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}
img{max-width:100%}svg{flex-shrink:0}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #007a79;outline-offset:4px}button:disabled:hover{transform:none}
button{background:none;border:0}p{margin:0}h1,h2,h3{margin:0;font-family:var(--display);font-weight:800;line-height:.98;letter-spacing:-.02em}h1 em{font-style:italic}
[hidden]{display:none!important}
.shell{width:min(1232px,calc(100% - clamp(40px,9.4vw,144px)));margin:0 auto}
.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip:focus{position:fixed;z-index:20;left:12px;top:12px;background:var(--white);padding:10px}
#main{outline:none;min-height:64vh}
.mast{border-bottom:1px solid var(--line);background:var(--paper)}
.nav-inner{display:flex;align-items:center;min-height:75px;gap:54px}
.brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
.brand img{width:36px;height:36px}
.brand span,.footer-brand{font:italic 800 30px/.92 var(--display);letter-spacing:-.025em;white-space:nowrap}
nav{display:flex;align-self:stretch;gap:30px}
nav a{font-size:14px;display:flex;align-items:center;position:relative;color:var(--muted);font-weight:600}
nav a[aria-current=page],nav a:hover{color:var(--ink)}
nav a[aria-current=page]:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background:#193d3c}
.help{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:9px 0 9px 10px;font-weight:600;font-size:13px}
.help-symbol{border:1.5px solid currentColor;border-radius:50%;font:700 12px/17px var(--sans);height:19px;width:19px;text-align:center}
.help:hover,.back-link:hover,.text-btn:hover{color:#007d73}
.initial{padding:70px 0}
.eyebrow,.micro,.tile-city,.trading small,.art-caption,.choice-meta,.small-count{font:500 10.5px/1.3 var(--mono);letter-spacing:.095em;text-transform:uppercase}
.eyebrow{display:flex;align-items:center;gap:9px}
.eyebrow i{width:19px;height:3px;display:inline-block;background:var(--pink);transform:skewX(-22deg)}
.hero{position:relative;isolation:isolate;overflow:hidden;margin-top:28px;min-height:395px;display:flex;align-items:center;border-radius:15px;background:linear-gradient(112deg,#10272b 1%,#122e32 60%,#22464a 100%);color:var(--white)}
.hero-copy{z-index:3;padding:40px 0 40px clamp(27px,4vw,61px);width:52%;position:relative}
.hero-kicker{color:#c7eeee}
.hero h1{margin:15px 0 14px;font-size:clamp(80px,7.8vw,118px);line-height:.82;letter-spacing:-.015em;color:#f7f5e9}
.hero h1 em{color:var(--teal);display:inline-block;transform:translateX(-2px)}
.hero-copy>p{max-width:375px;color:#d4dfda;font-size:15.5px;line-height:1.45}
.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:23px}
.btn{border-radius:7px;font-weight:700;font-size:14px;line-height:1.2;min-height:44px;padding:12px 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;transition:background .16s,transform .16s}
.btn:hover{transform:translateY(-1px)}
.btn.mint{background:var(--teal);color:#102b2b}
.btn.mint:hover{background:#aaf1e7}
.btn.primary{background:#173c3c;color:#fffefa}
.btn.primary:hover{background:#225451}
.btn.outline{background:var(--white);border-color:#c1c9bf}
.btn.outline:hover{background:#efefe8;border-color:#8d9f94}
.hero-link{display:inline-flex;align-items:center;gap:7px;color:#ecf2ea;font-weight:600;font-size:13px;min-height:44px}
.hero-link:hover{text-decoration:underline;text-underline-offset:4px}
.hero-art{position:absolute;inset:0 0 0 auto;width:50%;isolation:isolate;pointer-events:none}
.court-drawing{position:absolute;z-index:-2;inset:0;width:100%;height:100%;color:rgba(145,220,202,.16);mask-image:linear-gradient(90deg,transparent 0,#000 16%)}
.art-grain{position:absolute;inset:0;z-index:-1;opacity:.25;background-image:radial-gradient(#a4c9bd .65px,transparent .85px);background-size:5px 5px;mask-image:linear-gradient(110deg,transparent 26%,#000 100%)}
.art-cards{position:absolute;left:50%;top:47.8%;width:424px;height:300px;transform:translate(-51%,-50%)}
.trading{position:absolute;width:199px;height:273px;padding:5px;border-radius:10px;background:#edece1;box-shadow:0 16px 19px #08171965,1px 2px 0 #10212560}
.trading.front{z-index:2;left:22px;top:1px;transform:rotate(-10deg)}
.trading.back{z-index:1;left:206px;top:21px;transform:rotate(11deg);width:185px;height:257px}
.trading-paper{position:relative;inset:0;overflow:hidden;height:100%;border:1px solid #172e2c70;border-radius:6px;isolation:isolate;background:repeating-linear-gradient(113deg,transparent,transparent 10px,#2158581c 10.5px,#2158581c 11.5px),linear-gradient(160deg,#b1ebe0,#65c9c1)}
.trading.back .trading-paper{background:repeating-linear-gradient(113deg,transparent,transparent 10px,#64354420 10.5px,#64354420 11.5px),linear-gradient(160deg,#f8bec3,#fc8fa5)}
.trade-top{position:absolute;z-index:2;inset:9px 9px auto 9px;display:flex;justify-content:space-between;align-items:flex-start;color:var(--ink)}
.trade-top>span{font:500 9px var(--mono);letter-spacing:.12em;padding:2px 4px;border:1px solid #23414288}
.trade-top img{width:22px;height:23px}
.trade-number{position:absolute;left:4px;top:15px;color:transparent;-webkit-text-stroke:1px #23414268;font:italic 800 112px/.95 var(--display);letter-spacing:-.06em}
.trading .portrait{position:absolute;z-index:1;bottom:47px;left:50%;transform:translateX(-50%);max-width:none;width:103%;height:73%;object-fit:contain;object-position:center bottom}
.trade-label{position:absolute;z-index:3;left:0;right:0;bottom:0;min-height:55px;display:flex;flex-direction:column;justify-content:center;padding:6px 11px 8px;background:#192d30;color:#f9f5e9;border-top:3px solid #80e3d6}
.trading.back .trade-label{border-color:#fd83a5;align-items:flex-end;text-align:right}
.trade-label small{font:500 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#bfddd4}
.trade-label strong{font:italic 800 30px/.98 var(--display);text-transform:uppercase;letter-spacing:-.01em}
.trading.back .trade-label small{color:#f2c8d0}
.art-caption{position:absolute;bottom:19px;right:29px;color:#c7dcd5;letter-spacing:.14em;font-size:9px;display:flex;align-items:center;gap:10px}
.art-caption span{display:block;width:24px;height:2px;background:linear-gradient(90deg,var(--teal) 65%,var(--pink) 65%)}
.art-caption b{font-weight:500;color:#77a49c}
.uniform-placeholder{display:none}
.no-portrait .uniform-placeholder{display:flex;position:absolute;inset:19% 17% 19%;clip-path:polygon(14% 0,33% 0,38% 8%,62% 8%,67% 0,86% 0,90% 24%,100% 30%,94% 100%,6% 100%,0 30%,10% 24%);background:#213e41;color:white;align-items:center;justify-content:center;flex-direction:column;font:800 54px/.98 var(--display)}
.uniform-placeholder span{font:500 10px var(--mono)}
.directory{margin:37px 0 62px}
.directory-head,.filter-row,.page-lead,.duel-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}
.directory-head h2,.page-lead h1{font-size:clamp(45px,4.1vw,63px)}
.directory-head h2 span,.page-lead h1 span,.result-copy h1 span{color:#229d91}
.directory-head p,.page-lead p{margin-top:7px;color:var(--muted);font-size:14px}
.search{display:flex;align-items:center;gap:10px;background:var(--white);border:1px solid #bdc6bc;border-radius:7px;padding:0 12px;width:254px;height:43px;color:#667570}
.search:focus-within{outline:2px solid #338d83;outline-offset:2px}
.search input{min-width:0;width:100%;background:transparent;border:0;outline:0!important;color:var(--ink);font-size:14px}
.search input::placeholder{color:#68756e}
.filter-row{margin:21px 0 15px}
.tabs{display:inline-flex;padding:3px;border-radius:7px;background:#e8ebe2;border:1px solid #cfd5c9;gap:2px}
.tabs button{font-weight:600;font-size:12px;line-height:1.1;min-height:32px;padding:7px 15px;border-radius:4px;transition:background .15s}
.tabs button[aria-pressed=true]{background:#193c3b;color:var(--white)}
.tabs button[aria-pressed=false]:hover{background:#dce2d5}
.micro{color:var(--muted);font-size:10px}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.team-tile{display:flex;align-items:center;gap:14px;min-width:0;padding:15px 12px;background:var(--white);border:1px solid #cdd3c8;border-radius:9px;transition:transform .16s,border-color .16s,box-shadow .16s}
.team-tile:hover{transform:translateY(-2px);border-color:var(--team-color);box-shadow:0 4px 11px #183d3710}
.tile-logo,.saved-logo{width:57px;height:59px;flex-shrink:0;display:grid;place-items:center;border-radius:6px;background:var(--tint);position:relative;overflow:hidden}
.tile-logo:after,.saved-logo:after{content:"";position:absolute;bottom:0;height:3px;left:0;right:0;background:var(--team-color);opacity:.8}
.team-logo{object-fit:contain}
.tile-logo img{width:40px;height:40px}
.tile-info{min-width:0;display:flex;flex-direction:column}
.tile-city{font-size:8.6px;line-height:1.2;color:#52605a;letter-spacing:.08em}
.tile-info strong{font:800 clamp(23px,1.85vw,29px)/1.02 var(--display);letter-spacing:-.012em}
.tile-info small{font-size:11px;color:#5d6a64;margin-top:4px}
.tile-arrow{margin-left:auto;color:#718078;display:flex;align-items:center}
.empty{grid-column:1/-1;padding:32px;border:1px dashed var(--line);border-radius:9px;text-align:center}
.empty strong{font:800 30px var(--display)}
.empty p{color:var(--muted);margin:5px 0 16px}
.footer{display:flex;gap:18px;align-items:center;border-top:1px solid var(--line);padding:22px 0 30px;color:var(--muted);font-size:11px}
.footer-brand{font-size:21px;text-transform:uppercase;color:var(--ink);margin-right:auto}
.footer>a:hover{text-decoration:underline}
.dialog{padding:27px 29px 28px;border:1px solid #a2afa5;border-radius:13px;color:var(--ink);background:var(--paper);width:min(390px,calc(100% - 32px));box-shadow:0 24px 90px #12262345}
.dialog::backdrop{background:#0d2229a6}
.dialog h2{font-size:39px;margin-top:10px}
.dialog-close{position:absolute;right:11px;top:8px;width:40px;height:40px;font-size:26px}
.instructions{padding:0;list-style:none;counter-reset:step;display:grid;gap:16px;margin:23px 0}
.instructions li{display:grid;grid-template-columns:27px 1fr;column-gap:11px;counter-increment:step}
.instructions li:before{content:counter(step);grid-row:span 2;align-self:start;display:grid;place-items:center;height:27px;border-radius:50%;background:#d6eee6;font:800 18px var(--display)}
.instructions strong{font-weight:700}
.instructions span{color:var(--muted);font-size:14px}
.dialog form .btn{width:100%}
.toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%,12px);opacity:0;pointer-events:none;z-index:12;transition:.18s;background:#183d3c;color:white;border-radius:7px;padding:10px 16px;font-size:13px;width:max-content;max-width:90vw;box-shadow:0 4px 18px #172c3436}
.toast.show{opacity:1;transform:translate(-50%,0)}
.subpage{padding:27px 0 66px}
.subpage>h1{font-size:52px;margin:20px 0 12px}
.subpage>p{margin-bottom:18px}
.back-link{display:inline-flex;min-height:30px;align-items:center;gap:7px;font-size:13px;color:var(--muted);font-weight:600}
.setup-head{display:flex;gap:21px;align-items:center;margin:17px 0 27px}
.setup-logo,.saved-logo{display:grid;place-items:center;background:var(--tint);border:1px solid #cbd1c6;border-radius:9px}
.setup-logo{width:85px;height:85px;flex-shrink:0}
.setup-logo img{width:58px;height:62px}
.setup-head .eyebrow,.duel-heading .eyebrow,.page-lead .eyebrow,.result-copy .eyebrow{color:#52716b}
.setup-head h1{font-size:clamp(52px,5.3vw,77px);margin:5px 0}
.setup-head p,.selection-head p,.start-panel p,.result-meta{font-size:14px;color:var(--muted)}
.setup-head p i,.saved-info i,.result-meta i{font-style:normal;padding:0 4px}
.setup-layout{display:grid;grid-template-columns:minmax(0,1fr) 293px;gap:20px;align-items:start}
.panel{background:var(--white);border:1px solid var(--line);border-radius:11px}
.selection{padding:24px}
.selection-head{display:flex;gap:10px;align-items:center;justify-content:space-between}
.selection h2,.start-panel h2,.saved-section h2{font-size:34px}
.selection-head p{margin-top:5px}
.small-count{flex-shrink:0;border:1px solid #cdd5c8;padding:5px 7px;background:#edf1e8;border-radius:4px;letter-spacing:.035em;font-size:10px}
.position-filters{display:flex;flex-wrap:wrap;gap:7px;margin:19px 0}
.filter-chip{min-height:34px;padding:6px 12px;border:1px solid #c8d0c5;border-radius:5px;background:#fbfaf6;font-weight:600;font-size:12px}
.filter-chip[aria-pressed=true]{border-color:#82bdb0;background:#d4ece4;color:#21453a}
.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
.player-check{position:relative;display:flex;gap:10px;align-items:center;padding:10px 4px;border-top:1px solid #e1e4dc;cursor:pointer;min-width:0}
.player-check input{position:absolute;opacity:0;width:18px;height:18px}
.check-box{display:grid;place-items:center;border-radius:4px;width:17px;height:17px;flex-shrink:0;border:1px solid #899b8d;color:transparent}
.player-check input:checked+.check-box{background:#254b47;border-color:#254b47;color:white}
.player-check input:focus-visible+.check-box{outline:3px solid #008579;outline-offset:3px}
.player-check b,.player-check small{display:block}
.player-check b{font-size:14px;line-height:1.3}
.player-check small{font-size:11px;color:var(--muted);margin-top:2px}
.start-panel{background:#162f32;color:var(--paper);padding:25px 24px;border-radius:11px;position:sticky;top:14px}
.start-panel .eyebrow{color:#cae1d7}
.start-panel h2{margin:12px 0 21px;font-size:40px}
.setup-stats{display:grid;grid-template-columns:1fr 1fr;margin:4px 0 18px;padding:15px 0 17px;border-top:1px solid #44605c;border-bottom:1px solid #44605c}
.setup-stats>div{display:flex;flex-direction:column}
.setup-stats b{font:800 44px/1 var(--display);color:var(--teal)}
.setup-stats span{font-size:12px;color:#d6dfd8}
.start-panel p{color:#d1dcd4;margin:0 0 20px}
.start-panel .btn{width:100%;justify-content:space-between}
.resume-banner{padding:11px 15px;display:flex;gap:9px;background:#d9eee6;border-radius:6px;border:1px solid #bfd7cb;font-size:13px;margin-bottom:16px;align-items:center}
.resume-banner a{margin-left:auto;display:flex;align-items:center;gap:5px;font-weight:700}
.duel{max-width:838px;margin:auto}
.duel-meta{display:flex;align-items:center;gap:9px;font:500 12px var(--sans);color:var(--muted);margin:15px 0 21px}
.duel-meta .team-logo{width:28px;height:28px}
.duel-meta span{font-weight:700;color:var(--ink)}
.duel-meta i{height:3px;width:3px;border-radius:50%;background:#5f7064}
.duel-heading{align-items:flex-end}
.duel-heading h1,.result-copy h1{font-size:clamp(49px,5.2vw,75px);margin-top:7px}
.undo{font-size:12px;min-height:39px}
.progress-label{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#52625a;margin-top:20px}
.progress-label b{font-weight:600}
.progress{height:5px;border-radius:4px;background:#d8e0d4;margin:7px 0 21px;overflow:hidden}
.progress>div{background:#389c8b;height:100%;border-radius:inherit;transition:width .2s}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;position:relative;gap:24px}
.choice-card{--duel-accent:var(--card-accent);text-align:left;min-width:0;border:1px solid #a9b8ab;padding:5px;border-radius:12px;background:#fffdf6;display:flex;flex-direction:column;transition:transform .17s,box-shadow .17s,border-color .17s}
.choice-card:hover{transform:translateY(-3px);border-color:#658e7e;box-shadow:0 8px 18px #183d3619}
.choice-card:active{transform:translateY(1px)}
.choice-right{--duel-accent:#f2a4b7}
.choice-art{position:relative;display:block;width:100%;height:clamp(215px,28vw,305px);isolation:isolate;overflow:hidden;border-radius:7px 7px 0 0;background:repeating-linear-gradient(113deg,transparent,transparent 15px,#1e39331a 15.5px,#1e39331a 16.5px),var(--duel-accent)}
.choice-meta{position:absolute;z-index:2;top:13px;left:13px;border:1px solid #2b463f66;background:#f7f6ec65;padding:3px 5px;color:#213b33}
.choice-art .team-logo{position:absolute;right:11px;top:12px;width:35px;height:35px;z-index:2}
.ghost-number{position:absolute;top:5px;left:12px;font:italic 800 clamp(130px,13vw,202px)/1 var(--display);color:transparent;-webkit-text-stroke:1.2px #243c3557;letter-spacing:-.07em}
.choice-art .portrait{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:94%;width:106%;max-width:none;object-fit:contain;object-position:bottom}
.choice-footer{background:#192e30;color:var(--paper);border-top:4px solid var(--duel-accent);border-radius:0 0 7px 7px;min-height:108px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 17px;flex-grow:1;width:100%}
.choice-footer>span:first-child{min-width:0}
.choice-footer small,.choice-footer strong,.choice-details{display:block}
.choice-footer small{text-transform:uppercase;letter-spacing:.08em;font:500 12px var(--mono);color:#c2d8cf}
.choice-footer strong{font:italic 800 clamp(22px,3.1vw,45px)/1 var(--display);text-transform:uppercase;overflow-wrap:anywhere;letter-spacing:-.015em}
.choice-details{font-size:12px;margin-top:5px;color:#cddcd3}
.pick-arrow{flex-shrink:0;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:var(--duel-accent);color:var(--ink)}
.versus{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%) rotate(-7deg);z-index:2;background:#f7f6ed;color:var(--ink);border:1px solid #8c9d90;border-radius:50%;width:39px;height:39px;display:grid;place-items:center;font:italic 800 23px var(--display);pointer-events:none}
.duel-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-size:12px;color:var(--muted)}
.keys{display:flex;align-items:center;gap:5px}
kbd{padding:1px 4px;border:1px solid #bbc7b9;border-radius:3px;font:500 13px var(--mono);background:#fcfaf2}
.duel-bottom a,.result-links a,.saved-action{display:inline-flex;align-items:center;gap:6px;font-weight:600}
.duel-bottom a:hover,.result-links a:hover{text-decoration:underline;text-underline-offset:3px}
.library-page{max-width:942px;margin:auto;padding-top:48px}
.page-lead{align-items:flex-end;margin-bottom:31px}
.page-lead h1{margin-top:8px}
.saved-section{margin:25px 0}
.saved-section h2{margin-bottom:12px;font-size:29px}
.saved-row{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:9px;background:var(--white);padding:12px 15px;margin:8px 0}
.saved-row:hover{border-color:var(--team-color)}
.saved-logo{width:58px;height:61px;border:0}
.saved-logo img{width:38px;height:40px}
.saved-info{display:flex;flex-direction:column}
.saved-info small{font:500 9px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.saved-info strong{font:800 29px/1.05 var(--display)}
.saved-info>span,.saved-action{font-size:12px}
.saved-info>span{color:var(--muted);margin-top:3px}
.saved-action{margin-left:auto;white-space:nowrap}
.result-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,6vw,88px);align-items:start;max-width:980px;margin:20px auto 0}
.result-copy{padding-top:38px}
.result-meta{margin-top:9px}
.result-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 25px}
.order-details{margin:20px 0;border-block:1px solid var(--line)}
.order-details summary{cursor:pointer;min-height:45px;padding:13px 0;font-weight:700;font-size:14px}
.order-details summary span{margin-left:4px;font:500 10px var(--mono);background:#e0e8dc;padding:2px 6px;border-radius:10px}
.order-details ol{padding:0;margin:0 0 12px;list-style:none;counter-reset:rank}
.order-details li{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:6px;border-top:1px solid #dbe0d6;min-height:34px;counter-increment:rank;font-size:12px}
.order-details li:before{content:counter(rank,decimal-leading-zero);font:500 10px var(--mono);color:var(--muted)}
.order-details li>span{font-size:11px;color:var(--muted)}
.result-links{display:grid;justify-items:start;gap:9px;font-size:13px}
.result-links a:nth-child(2){font-weight:500;color:var(--muted)}
.poster-frame{position:relative;min-width:0;background:#e9ece2;padding:12px;border-radius:12px;border:1px solid var(--line)}
.poster-frame img{display:block;width:100%;height:auto;box-shadow:0 2px 9px #15252120}
.poster-frame img:not([src]){display:none}
#poster-status{padding:18px;text-align:center;font-size:13px;color:var(--muted)}
.text-btn{padding:0;color:#167b72;text-decoration:underline}
@media(min-width:1600px){.hero{min-height:430px}}
@media(max-width:1120px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.art-cards{transform:translate(-49%,-50%) scale(.9)}.hero-copy{width:54%}.hero{min-height:370px}.hero h1{font-size:89px}.team-tile{padding:14px}.selection{padding:20px}.setup-layout{grid-template-columns:minmax(0,1fr) 251px;gap:16px}}
@media(max-width:850px){.shell{width:calc(100% - 44px)}.nav-inner{gap:34px;min-height:66px}.hero-copy{padding-left:29px}.hero{min-height:350px}.hero h1{font-size:77px}.hero-copy>p{max-width:320px;font-size:14px}.hero-actions{gap:11px}.hero-art{width:45%}.art-cards{transform:translate(-52%,-50%) scale(.73)}.art-caption{right:17px;bottom:17px;font-size:8px}.team-tile{gap:9px;padding:12px}.tile-logo{width:46px;height:50px}.tile-logo img{width:34px;height:34px}.tile-arrow{display:none}.tile-info strong{font-size:24px}.setup-layout{grid-template-columns:minmax(0,1fr) 219px}.start-panel{padding:19px}.checkbox-grid{grid-template-columns:1fr}.setup-head h1{font-size:55px}.result-layout{gap:23px}.choice-footer{padding:12px}}
@media(max-width:620px){
  .shell{width:calc(100% - 32px)}.nav-inner{min-height:59px;gap:0}.brand{gap:7px}.brand img{width:29px;height:29px}.brand span{font-size:25px}nav{margin-left:auto;gap:17px}nav a{font-size:12px}nav a[aria-current=page]:after{height:2px}.help{margin-left:12px;width:29px;justify-content:flex-end;padding:7px 0}.help-label{display:none}
  .hero{display:block;margin-top:15px;min-height:0;border-radius:11px;background:linear-gradient(115deg,#10272b,#163438 70%,#22464a)}.hero-copy{padding:24px 22px 0;width:auto}.hero h1{font-size:clamp(53px,16.9vw,80px);line-height:.84;margin:12px 0 11px}.hero-copy>p{max-width:330px;font-size:14px}.eyebrow{font-size:9px}.hero-actions{gap:17px;flex-wrap:nowrap;margin-top:17px}.hero-link{font-size:12px;gap:5px}.hero-actions .btn{font-size:13px;min-height:40px;padding:10px 12px}.hero-art{position:relative;width:100%;height:174px;margin-top:5px}.court-drawing{inset:-22% 0 -6% auto;height:130%;width:90%}.art-grain{inset:-10px 0 0 0}.art-cards{position:absolute;top:50%;left:auto;right:2%;width:250px;height:165px;transform:none;margin-top:-80px}.trading.front{width:110px;height:151px;left:12px;top:4px}.trading.back{left:115px;top:12px;width:103px;height:145px}.trading{padding:3px;border-radius:6px;box-shadow:0 6px 10px #08171960}.trading-paper{border-radius:3px}.trade-top{inset:4px 4px auto}.trade-top>span{font-size:6px;padding:1px 2px}.trade-top img{width:13px;height:14px}.trade-number{font-size:62px;top:7px}.trading .portrait{bottom:24px}.trade-label{min-height:29px;padding:3px 5px 4px;border-top-width:2px}.trade-label strong{font-size:16px}.trade-label small{font-size:6px}.art-caption{bottom:17px;right:auto;left:22px;display:block;max-width:74px;line-height:1.55;font-size:7px;letter-spacing:.09em}.art-caption b{display:none}.art-caption span{margin:0 0 5px;width:17px}.directory{margin:26px 0 43px}.directory-head{align-items:flex-start;gap:12px;flex-wrap:wrap}.directory-head h2{font-size:45px}.directory-head p{font-size:13px;margin-top:4px}.search{width:100%;height:39px}.filter-row{margin:12px 0}.tabs button{min-height:31px;padding:6px 13px;font-size:11px}.micro{font-size:9px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.team-tile{padding:10px 8px;gap:8px;border-radius:7px}.tile-logo{width:38px;height:43px;border-radius:4px}.tile-logo img{width:29px;height:30px}.tile-city{font-size:7.3px;letter-spacing:.03em}.tile-info strong{font-size:22px;line-height:1.04}.tile-info small{font-size:9px;margin-top:2px}.footer{flex-wrap:wrap;gap:6px 12px;padding:15px 0 24px}.footer-brand{flex-basis:100%;font-size:19px}.footer>span:not(.footer-brand),.footer a{font-size:10px}
  .subpage{padding:15px 0 37px}.setup-head{gap:12px;margin:12px 0 20px}.setup-logo{width:61px;height:66px}.setup-logo img{width:43px;height:46px}.setup-head h1{font-size:44px}.setup-head p{font-size:12px}.setup-layout{display:flex;flex-direction:column;gap:12px}.selection{width:100%;padding:15px}.selection h2{font-size:30px}.selection-head p{font-size:12px}.position-filters{margin:13px 0;gap:5px}.filter-chip{padding:6px 9px;font-size:11px;min-height:34px}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:6px}.player-check{padding:9px 1px;gap:6px}.player-check b{font-size:12px}.player-check small{font-size:10px}.check-box{width:15px;height:15px}
  .start-panel{position:sticky;top:auto;bottom:0;z-index:4;width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:11px;padding:12px 14px;border-radius:9px;box-shadow:0 -2px 12px #15252116}.start-panel h2,.start-panel>.eyebrow{display:none}.start-panel .setup-stats{grid-row:1;grid-column:1;margin:0;padding:0;border:0;display:flex;gap:14px}.setup-stats b{font-size:22px}.setup-stats span{font-size:10px}.start-panel .btn{grid-column:2;grid-row:1;height:42px;min-height:42px;padding:10px 12px}.start-panel p{grid-column:1/-1;font-size:11px;margin:6px 0 0}.resume-banner{font-size:11px;padding:8px;gap:6px}.back-link{font-size:12px}
  .duel-meta{margin:9px 0 16px}.duel-heading{align-items:center;gap:8px}.duel-heading h1{font-size:clamp(38px,9vw,52px);margin-top:4px}.undo{font-size:10px;min-height:33px;padding:7px 8px;gap:4px}.undo svg{width:14px}.progress-label{font-size:10px;margin-top:14px}.progress{margin:6px 0 14px}.choice-grid{gap:9px}.choice-card{padding:3px;border-radius:8px}.choice-art{height:clamp(151px,43vw,225px);border-radius:5px 5px 0 0}.choice-meta{top:7px;left:6px;font-size:7px;letter-spacing:.03em;padding:1px 3px}.choice-art .team-logo{width:21px;height:21px;right:6px;top:7px}.ghost-number{font-size:89px;left:4px}.choice-art .portrait{width:112%;height:91%}.choice-footer{min-height:83px;padding:7px 6px 8px;gap:2px;border-top-width:3px;border-radius:0 0 4px 4px}.choice-footer small{font-size:9px}.choice-footer strong{font-size:clamp(19px,5.9vw,30px)}.choice-footer strong.long-name{font-size:clamp(16px,4.8vw,24px)}.choice-details{font-size:10px;margin-top:4px}.pick-arrow{display:none}.versus{width:27px;height:27px;font-size:16px;top:43%}.duel-bottom{justify-content:flex-end}.keys{display:none}
  .page-lead{margin:12px 0 21px;align-items:start;flex-direction:column;gap:12px}.page-lead h1{font-size:46px}.saved-section{margin:20px 0}.saved-row{gap:10px;padding:9px}.saved-logo{width:42px;height:48px}.saved-logo img{width:29px;height:32px}.saved-info strong{font-size:24px}.saved-info>span,.saved-action{font-size:10px}.saved-info small{font-size:8px}.saved-action{gap:3px}
  .result-layout{display:flex;flex-direction:column;margin-top:10px;gap:15px}.result-copy{width:100%;padding-top:6px;display:contents}.result-copy>.eyebrow{order:0}.result-copy h1{order:1;font-size:48px;margin-top:-10px}.result-meta{order:2;font-size:12px;margin-top:-9px}.result-buttons{order:3;gap:8px;margin:0}.result-buttons .btn{min-height:40px;font-size:12px}.poster-frame{order:4;width:100%;padding:6px;border-radius:7px}.order-details{order:5;width:100%;margin:0}.result-links{order:6}
}
@media(max-width:365px){.nav-inner .brand span{font-size:22px}nav{gap:10px}.hero-copy{padding-left:16px;padding-right:14px}.hero h1{font-size:clamp(51px,16.6vw,60px)}.hero-actions{gap:10px}.art-cards{right:-3%}.art-caption{left:16px}.tile-logo{width:31px;height:37px}.tile-logo img{width:25px;height:25px}.tile-info strong{font-size:19px}.tile-city{font-size:6.8px}.team-tile{gap:5px}.saved-action{font-size:0}.checkbox-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important;animation:none!important}}
.team-launch{position:relative;display:inline-flex;align-items:center;color:#122a2b;background:var(--teal);border-radius:7px}.team-launch select{appearance:none;background:transparent;color:inherit;border:0;border-radius:7px;cursor:pointer;font:700 14px var(--sans);width:162px;min-height:44px;padding:10px 33px 10px 14px}.team-launch svg{position:absolute;right:12px;pointer-events:none;transform:rotate(90deg)}.team-launch select:focus-visible{outline:3px solid white}.league-search{margin:15px 0;width:100%}.league-grid{max-height:460px;overflow:auto;overscroll-behavior:contain}.league-grid [hidden]{display:none}#selected-players{display:flex;gap:5px;flex-wrap:wrap}#selected-players button{background:#d4ece4;font-size:12px;border-radius:4px;padding:5px 8px}#player-count{display:block;color:var(--muted);margin:5px 0}
@media(max-width:620px){.brand span{font-size:21px}.hero-actions{gap:10px;flex-wrap:wrap}.team-launch select{font-size:13px;width:142px}.league-grid{max-height:40vh}.trading.front .trade-label strong{font-size:14px}}
.opening h1{font-size:clamp(55px,6vw,91px)}.opening .hero-art{pointer-events:auto}.opening .trading{cursor:pointer;text-align:left;color:var(--ink);border:0}.opening .trading:hover,.opening .trading:focus-visible{z-index:4;outline:3px solid var(--teal);outline-offset:3px}.opening .trading-paper{display:block}.question-label{display:grid;gap:5px;font-size:12px;margin-bottom:14px}.question-label select{font:600 13px var(--sans);background:var(--white);color:var(--ink);border-radius:5px;padding:8px;width:100%}.result-question{font-weight:700;margin:10px 0}.invite{max-width:800px;margin:auto}.invite h1{font-size:clamp(42px,5vw,72px)}.invite-players{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.invite-players div{background:#e0eee6;flex:1 1 105px;border-radius:8px;padding:8px;display:grid;text-align:center;font-size:13px}.invite-players img{height:90px;width:100%;object-fit:contain}.comparison{margin:16px 0}.comparison h2{font-size:30px}.comparison p{font-size:13px}.comparison table{width:100%;border-collapse:collapse;font-size:13px;margin:10px 0}.comparison th,.comparison td{text-align:left;padding:7px 4px;border-bottom:1px solid var(--line)}.comparison .match{background:#d7eee3}#challenge-url{width:100%;padding:9px}.result-question,.comparison{order:2}
@media(max-width:620px){.opening h1{font-size:clamp(44px,11vw,65px)}.opening .hero-art{height:193px}.opening .art-cards{left:50%;right:auto;transform:translateX(-50%)}.opening .trading.front{left:0}.opening .trading.back{left:136px}.start-panel .question-label{grid-row:1;grid-column:1/-1;margin-bottom:6px}.start-panel .setup-stats,.start-panel .btn{grid-row:2}}
.mode-banners{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0}.mode-banners section{position:relative;overflow:hidden;border-radius:14px;padding:clamp(21px,3vw,38px);display:flex;align-items:flex-start;flex-direction:column}.mode-star{background:#142f32;color:#f9f6ec}.mode-roster{background:#e6efe1;color:#193d36;border:1px solid #bfd0bc}.mode-banners h1,.mode-banners h2{font:800 clamp(43px,4.8vw,74px)/.91 var(--display);letter-spacing:-.025em;margin:13px 0 10px;text-transform:uppercase}.mode-star em{color:#84e3d5}.mode-roster em{color:#406c55}.mode-banners p{font-size:14px;margin-bottom:12px}.mode-stars{display:flex;gap:14px;margin:7px 0 14px}.mode-stars .trading{position:relative;inset:auto;transform:none;width:119px;height:145px;padding:3px;border:0;text-align:left;color:var(--ink)}.mode-stars .trading:hover{transform:translateY(-3px);outline:2px solid var(--teal)}.mode-stars .trade-label{min-height:32px;padding:3px 5px}.mode-stars .trade-label strong{font-size:17px}.mode-stars .trade-label small{font-size:7px}.mode-stars .portrait{bottom:29px}.mode-stars .trade-top{inset:4px 5px auto}.mode-stars .trade-top img{width:14px;height:16px}.mode-stars .trade-number{font-size:67px}.mode-custom{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:13px;margin-top:auto}.mode-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%;margin:auto 0 22px}.mode-logos img{align-self:center;justify-self:center;width:100%;max-width:52px;height:54px;object-fit:contain}.mode-roster .team-launch{background:#193f38;color:white}.mode-roster option{color:#172e27;background:white}
#share-view{width:min(475px,calc(100vw - 22px));max-height:94dvh;overflow:auto;overscroll-behavior:contain;background:var(--paper);border:1px solid var(--line);border-radius:12px;color:var(--ink);padding:14px}#share-view::backdrop{background:#071916bf}.share-tools{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.share-tools h2{font-size:30px}.share-tools a{font-size:12px;text-decoration:underline}.share-close{font-size:25px;width:34px;height:34px}#share-preview{display:block;width:auto;max-width:100%;max-height:63dvh;margin:0 auto}.share-controls{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:12px}.share-controls button{font-size:13px;padding:9px 11px}#copy-status{font-size:12px;text-align:center}
@media(max-width:650px){.mode-banners{grid-template-columns:1fr;gap:10px;margin:14px 0}.mode-banners section{padding:19px}.mode-banners h1,.mode-banners h2{font-size:clamp(36px,9vw,55px)}.mode-stars{position:absolute;right:13px;top:35px;flex-direction:column;gap:4px;margin:0}.mode-stars .trading{width:65px;height:78px}.mode-stars .trade-label{min-height:16px;padding:1px 2px}.mode-stars .trade-label strong{font-size:10px}.mode-stars .trade-label small,.mode-stars .trade-top{display:none}.mode-stars .portrait{bottom:15px}.mode-star h1,.mode-star p{max-width:calc(100% - 75px)}.mode-banners p{font-size:13px}.mode-star{min-height:218px}.mode-roster{min-height:190px}.mode-roster h2,.mode-roster p{max-width:65%}.mode-logos{position:absolute;right:16px;top:35px;width:28%;grid-template-columns:1fr 1fr;gap:6px}.mode-logos img{height:34px}.mode-roster .team-launch{margin-top:3px}}
.stats-page{max-width:850px;margin:auto}.stats-page h1{font-size:clamp(50px,6vw,76px);margin:8px 0}.stats-bar{display:flex;align-items:center;justify-content:space-between;margin:20px 0}.stats-bar select{font:inherit;border:1px solid var(--line);background:var(--white);padding:7px;border-radius:5px}.stats-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stats-metrics div{padding:13px;background:#d8ece3;border-radius:8px}.stats-metrics small,.stats-metrics strong{display:block}.stats-metrics strong{font:800 40px var(--display)}.stats-group{margin:21px 0}.stats-group h2{font-size:31px}.stats-group table{width:100%;border-collapse:collapse;margin-top:8px;font-size:14px}.stats-group th,.stats-group td{padding:7px;text-align:right;border-bottom:1px solid var(--line)}.stats-group th:first-child,.stats-group td:first-child{text-align:left}
.group-picker{display:flex;align-items:center;gap:8px;margin:4px 0 9px;font-size:12px;color:#e0ede8}.group-picker select{font:600 14px var(--sans);color:#193a36;background:#e4f3e9;border:1px solid #a8d3c5;border-radius:6px;padding:6px 8px;max-width:100%}@media(max-width:650px){.group-picker{width:calc(100% - 78px);flex-wrap:wrap;gap:4px}.group-picker select{font-size:13px}}
