.roster-title{margin-bottom:22px}.roster-title h2{font-size:37px;margin-top:10px;letter-spacing:-1.3px}.roster-title p{font-size:12px;color:#9bafc6;margin:11px 0 0}.player-picks{display:grid;grid-template-columns:1fr 38px 1fr;align-items:center;gap:10px;margin-bottom:24px}.player-pick{display:flex;align-items:center;gap:13px;min-width:0;text-align:left;padding:14px 18px;border-radius:6px;border:1px solid #37485c;background:#111d2ee8;transition:border-color .15s,background .15s}.player-pick[aria-pressed=true]{border-color:var(--fighter);background:color-mix(in srgb,var(--fighter) 9%,#111d2e);box-shadow:inset 0 0 25px color-mix(in srgb,var(--fighter) 4%,transparent)}.pick-badge{font:12px 'Courier New',monospace;color:var(--fighter);padding:9px 8px;border:1px solid color-mix(in srgb,var(--fighter) 35%,transparent);border-radius:3px;background:color-mix(in srgb,var(--fighter) 7%,transparent)}.pick-info{display:flex;flex-direction:column;gap:6px;min-width:0}.pick-info strong{font-size:17px;color:var(--fighter);font-weight:650}.pick-info small{font-size:9px;color:#9bafc4;white-space:nowrap}.pick-status{margin-left:auto;font:8px 'Courier New',monospace;letter-spacing:1px;color:#849ab3;white-space:nowrap}.player-pick[aria-pressed=true] .pick-status{color:var(--fighter)}.pick-status>span{font:18px Arial,sans-serif;padding-left:8px}.pick-versus{text-align:center;font-size:18px;font-weight:900;font-style:italic;color:#5e7892}.roster-caption{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font:8px 'Courier New',monospace;letter-spacing:1.4px;color:#a4b6c9}.roster-caption>span:last-child{color:#7089a2}.roster-caption b{font-weight:400;color:#becfe1;margin-left:10px}.character-roster{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}.character-card{position:relative;height:166px;min-width:0;overflow:hidden;padding:0;text-align:left;border:1px solid color-mix(in srgb,var(--character) 40%,#1b293e);border-radius:5px;background:radial-gradient(ellipse at 50% 52%,color-mix(in srgb,var(--character) 11%,#122033),#111b2b 78%);box-shadow:inset 0 1px 0 #ffffff06;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s}.character-card:after{content:'';position:absolute;inset:auto 0 0;height:59px;background:linear-gradient(0deg,#0d1727ff 28%,#0d1727c4 62%,#0d172700);pointer-events:none}.character-card:hover{transform:translateY(-4px);border-color:var(--character);box-shadow:0 8px 28px #0003,inset 0 0 30px color-mix(in srgb,var(--character) 8%,transparent)}.character-card:focus-visible{outline:2px solid var(--character);outline-offset:4px}.character-card[data-selected=true]{border-color:var(--character);box-shadow:inset 0 0 24px color-mix(in srgb,var(--character) 8%,transparent)}.character-card[aria-pressed=true]{box-shadow:0 0 0 1px var(--character),inset 0 0 30px color-mix(in srgb,var(--character) 10%,transparent)}.character-card-top{position:absolute;left:13px;right:13px;top:10px;display:flex;justify-content:space-between;font:8px 'Courier New',monospace;letter-spacing:1.3px;color:var(--character);text-transform:uppercase;z-index:1}.character-card-top>span:first-child{opacity:.45}.character-portrait{position:absolute;top:5px;left:50%;width:180px;height:190px;transform:translateX(-50%);display:block;overflow:visible}.character-name{position:absolute;left:15px;bottom:12px;font-size:18px;font-weight:700;letter-spacing:-.4px;color:var(--character);z-index:2}.selection-tags{position:absolute;right:11px;bottom:14px;display:flex;gap:3px;z-index:2}.selection-tags>span{font:8px 'Courier New',monospace;border:1px solid color-mix(in srgb,var(--character) 70%,transparent);color:var(--character);background:#10192b;padding:3px;border-radius:2px}.roster-actions{margin-top:24px}.roster-actions .primary-button{min-width:200px}.nickname-options{margin-top:20px;border-top:1px solid #36496077;padding-top:13px;color:#9eb2c9}.nickname-options summary{cursor:pointer;font-size:10px;width:max-content;max-width:100%;padding:2px 0}.nickname-options summary span{color:#617e9b;margin-left:8px;font-size:9px}.nickname-options summary:focus-visible{outline:1px solid var(--lime);outline-offset:5px}.nickname-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:17px}.nickname-fields label{font-size:10px;color:#a3b9ce}.nickname-fields label:first-child{--fighter:var(--p1)}.nickname-fields label:last-child{--fighter:var(--p2)}.nickname-fields .name-input{font-size:13px}.nickname-options p{font-size:10px;color:#7894af;margin:12px 0 2px}
@media(min-width:1000px) and (max-height:900px){.roster-title{margin-bottom:17px}.roster-title h2{font-size:31px}.roster-title p{margin-top:8px;font-size:11px}.player-picks{margin-bottom:18px}.player-pick{padding:11px 15px}.character-card{height:150px}.character-name{font-size:19px}.roster-actions{margin-top:20px}.nickname-options{margin-top:15px;padding-top:11px}}
@media(max-width:1100px){.character-roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.character-name{left:11px;font-size:17px}.character-card-top{left:10px;right:10px;font-size:7px}.selection-tags{right:7px}.pick-status{font-size:7px}.pick-info small{font-size:8px}}
@media(max-width:999px){.character-roster{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.character-card{height:166px}.roster-title h2{font-size:32px}.player-pick{padding:12px;gap:10px}.pick-status{display:none}.pick-info small{font-size:8px}.character-name{font-size:21px;left:16px}.character-card-top{font-size:8px;left:15px;right:15px}.selection-tags{right:14px}.player-picks{grid-template-columns:1fr 24px 1fr;gap:7px}}
@media(max-width:600px){.roster-title h2{font-size:27px}.roster-title p{font-size:10px;max-width:190px;line-height:1.6}.roster-title .district-tag{display:none}.player-picks{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:20px}.pick-versus{display:none}.pick-badge{font-size:9px;padding:6px 5px}.player-pick{padding:10px 8px;gap:8px}.pick-info strong{font-size:15px}.pick-info small{font-size:6px;white-space:normal;line-height:1.6}.character-roster{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.character-card{height:154px}.character-name{font-size:19px;left:12px}.character-card-top{left:11px;right:11px;font-size:7px}.selection-tags{right:9px}.roster-caption{font-size:6px;letter-spacing:.8px}.roster-caption b{margin-left:4px}.roster-actions .primary-button{min-width:145px}.nickname-fields{grid-template-columns:1fr;gap:16px}}
@media(prefers-reduced-motion:reduce){.character-card,.player-pick{transition:none}.character-card:hover{transform:none}}

.character-card .dominic-hair-locks{transform-origin:0 -10px;animation:dominic-hair-wind 3.8s ease-in-out infinite alternate}
@keyframes dominic-hair-wind{0%{transform:skewX(-2deg) rotate(-1deg)}50%{transform:skewX(1deg) rotate(1deg)}100%{transform:skewX(-1deg) rotate(1.5deg)}}
@media(prefers-reduced-motion:reduce){.character-card .dominic-hair-locks{animation:none}}

.menu-back{position:relative;z-index:1;display:flex;align-items:center;gap:12px;min-height:52px;margin:0 0 24px;padding:13px 22px;border:2px solid #b8d696;border-radius:7px;background:#172637;color:#edfbd9;font:700 16px system-ui;cursor:pointer}.menu-back span{font-size:24px;line-height:1}.menu-back:hover{background:#243b42}.menu-back:focus-visible{outline:3px solid #fff;outline-offset:4px}@media(max-width:700px){.menu-back{width:100%;justify-content:center;margin-bottom:18px}}
