:root{--bg: #0b0b10;--bg-2: #14141c;--bg-3: #1d1d28;--line: #2c2c3a;--text: #eeeef3;--muted: #9a9aae;--yellow: #ffcc00;--red: #e2231a;--pa: #a970ff;--pb: #3fa9f5;--sor4: #ffcc00;--sor1: #ff6b6b;--sor2: #5ec8ff;--sor3: #8be36b;font-family:Inter,system-ui,sans-serif;color:var(--text);background:var(--bg);color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:var(--yellow)}h1,h2,h3{font-family:Bebas Neue,Impact,sans-serif;letter-spacing:.04em;font-weight:400;margin:0}h3{font-size:1.4rem}.muted{color:var(--muted)}.grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spacer{flex:1}.pa-text{color:var(--pa)}.pb-text{color:var(--pb)}.hero{position:relative;background-size:cover;background-position:center 30%;border-bottom:3px solid var(--red)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0b0b10f2,#0b0b10b3 55%,#0b0b1059)}.hero>*{position:relative}.hero-inner{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 2rem .75rem;flex-wrap:wrap}.logo{height:84px;border-radius:6px;box-shadow:0 4px 18px #0009}.hero-title h1{font-size:2.8rem;line-height:1;color:var(--yellow);text-shadow:3px 3px 0 var(--red)}.sync-pill{display:inline-block;margin-top:.4rem;font-size:.8rem;padding:.2rem .6rem;border-radius:999px;background:#0000008c;border:1px solid var(--line)}.sync-pill.local{color:#7ee787}.tabs{display:flex;gap:.25rem;padding:0 2rem}.tabs a{font-family:Bebas Neue,Impact,sans-serif;font-size:1.35rem;letter-spacing:.05em;padding:.45rem 1.2rem .3rem;color:var(--text);text-decoration:none;background:#0000008c;border:1px solid var(--line);border-bottom:none;border-radius:8px 8px 0 0}.tabs a.active{background:var(--red);border-color:var(--red);color:#fff}main{padding:1.5rem 2rem 3rem;max-width:1900px;margin:0 auto}.view{display:flex;flex-direction:column;gap:1.25rem}.banner-error{background:#4a1416;color:#ffb4b0;padding:.6rem 2rem;display:flex;gap:1rem;align-items:center}.btn{font:inherit;font-weight:600;cursor:pointer;border-radius:8px;padding:.5rem 1rem;background:var(--bg-3);color:var(--text);border:1px solid var(--line)}.btn:hover:not(:disabled){border-color:var(--yellow)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--yellow);color:#111;border-color:var(--yellow)}.btn.primary:hover:not(:disabled){filter:brightness(1.1)}.btn.danger{background:transparent;color:#ff8a80;border-color:#6b2222}.btn.ghost{background:transparent}.btn.small{padding:.2rem .6rem;font-size:.85rem}.icon-btn{background:none;border:none;color:var(--muted);font-size:1.2rem;cursor:pointer}.dashboard{display:grid;grid-template-columns:minmax(320px,1fr) minmax(340px,1.3fr);gap:1.25rem}@media (max-width: 900px){.dashboard{grid-template-columns:1fr}}.scoreboard,.randomizer,.panel,.stat-card{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:1rem 1.25rem}.scoreboard{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:linear-gradient(90deg,color-mix(in srgb,var(--pa) 18%,transparent),var(--bg-2) 40%,var(--bg-2) 60%,color-mix(in srgb,var(--pb) 18%,transparent))}.score-side{display:flex;align-items:center;gap:.9rem}.score-name{font-family:Bebas Neue,Impact,sans-serif;font-size:1.8rem;letter-spacing:.05em}.score-num{font-family:Bebas Neue,Impact,sans-serif;font-size:4.2rem;line-height:1}.score-side.a{color:var(--pa)}.score-side.b{color:var(--pb)}.score-side.a.leading .score-num:after{content:"";display:inline-block;width:2.4rem;height:2rem;margin-left:.3rem;background:url(../img/chicken.png) center / contain no-repeat;vertical-align:middle}.score-side.b.leading .score-num:after{content:""}.score-side.b.leading .score-num:before{content:"";display:inline-block;width:2.4rem;height:2rem;margin-right:.3rem;background:url(../img/chicken.png) center / contain no-repeat;vertical-align:middle}.score-vs{display:flex;flex-direction:column;align-items:center;font-family:Bebas Neue,Impact,sans-serif;font-size:1.5rem;color:var(--muted)}.score-vs small{font-family:Inter,sans-serif;font-size:.75rem}.randomizer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.suggestion{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.suggestion-pair{display:flex;align-items:center;gap:1rem}.suggestion-pair small{display:block;font-weight:600;margin-bottom:.2rem}.plus{font-size:1.8rem;color:var(--yellow);font-weight:800}.combo-chips{display:flex;flex-direction:column;gap:.3rem}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-row.tight{gap:.75rem}.stat-stack{display:flex;flex-direction:column;gap:.75rem}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.stat-value{font-family:Bebas Neue,Impact,sans-serif;font-size:2rem;letter-spacing:.03em}.stat-sub{font-size:.8rem;color:var(--muted)}.progress{position:relative;height:30px;background:var(--bg-3);border-radius:6px;overflow:hidden;margin-top:.3rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--red),var(--yellow))}.progress-text{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:Inter,sans-serif;font-size:.85rem;font-weight:800;text-shadow:0 1px 2px #000}.portrait{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.portrait img{border-radius:6px;object-fit:cover;border:1px solid rgba(255,255,255,.15);flex:none;background:#222}.portrait-name{font-weight:600;white-space:nowrap}.game-tag{font-size:.65rem;font-weight:800;padding:.05rem .3rem;border-radius:4px;color:#111;vertical-align:middle}.game-sor4{background:var(--sor4)}.game-sor1{background:var(--sor1)}.game-sor2{background:var(--sor2)}.game-sor3{background:var(--sor3)}.chip{display:inline-block;font-size:.72rem;font-weight:700;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--line);white-space:nowrap}.chip.default{background:#22222e;color:var(--text)}.chip.alternate{background:#ffcc0026;color:var(--yellow);border-color:#fc06}.segmented{display:inline-flex;background:var(--bg-3);border:1px solid var(--line);border-radius:8px;overflow:hidden}.segmented button{font:inherit;font-size:.85rem;font-weight:600;background:none;border:none;color:var(--muted);padding:.4rem .8rem;cursor:pointer}.segmented button.active{background:var(--yellow);color:#111}.matrix-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.matrix-toolbar h3{flex:1}.matrix-scroll{overflow:auto;max-height:78vh;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}.matrix{border-collapse:separate;border-spacing:0}.matrix th,.matrix td{padding:0}.matrix thead th{position:sticky;top:0;z-index:2;background:var(--bg-2);border-bottom:1px solid var(--line)}.matrix .row-head{position:sticky;left:0;z-index:1;background:var(--bg-2);text-align:left;padding:3px 10px 3px 8px;border-right:1px solid var(--line);font-size:.82rem}.matrix .corner{position:sticky;left:0;top:0;z-index:3;background:var(--bg-2);font-family:Bebas Neue,Impact,sans-serif;font-size:1.3rem;padding:6px 10px;border-right:1px solid var(--line)}.matrix .col-head{padding:6px 2px;vertical-align:bottom}.coop .col-head{width:58px;min-width:58px}.col-head .portrait{display:flex;justify-content:center}.col-label{display:flex;flex-direction:column;align-items:center;font-size:.68rem;font-weight:600;margin-top:3px;gap:2px}.matrix th.hl{background:#2a2a1a}.matrix .boundary{border-left:2px solid #4a4a5e}.matrix tr.boundary>*{border-top:2px solid #4a4a5e}.cell button{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;border:none;font:inherit;color:#fff;cursor:pointer;background:transparent}.coop .cell{width:58px;height:46px;border-right:1px solid #1f1f2a;border-bottom:1px solid #1f1f2a}.cell.open button:hover{background:#ffcc001f}.cell.crosshair.open button{background:#ffffff09}.cell.played button{text-shadow:0 1px 2px rgba(0,0,0,.7)}.cell.played button:hover{filter:brightness(1.25);outline:2px solid #fff;outline-offset:-2px;z-index:1}.cell-main{font-family:Bebas Neue,Impact,sans-serif;font-size:1.25rem;letter-spacing:.02em}.coop[data-mode=time] .cell-main{font-size:1rem}.cell-plus{color:transparent;font-size:1.2rem;font-weight:800}.cell.open button:hover .cell-plus{color:var(--yellow)}.winner-dot{position:absolute;top:2px;right:3px;font-size:.58rem;font-weight:800;width:13px;height:13px;border-radius:50%;display:grid;place-items:center;text-shadow:none}.winner-dot.a{background:var(--pa)}.winner-dot.b{background:var(--pb)}.winner-dot.tie{background:#888}.cell.suggested button{outline:3px solid var(--yellow);outline-offset:-3px;animation:pulse 1.2s ease-in-out infinite}.cell.suggested .cell-plus{color:var(--yellow)}@keyframes pulse{50%{background:#ffcc0059}}.solo{width:100%}.solo .col-head.combo-head{padding:10px 8px}.combo-head{display:table-cell}.combo-head .chip{margin:2px}.solo .cell{height:62px;min-width:150px;border-right:1px solid #1f1f2a;border-bottom:1px solid #1f1f2a}.solo-cell{display:flex;flex-direction:column;align-items:center;line-height:1.25;font-size:.82rem}.solo-cell strong{font-family:Bebas Neue,Impact,sans-serif;font-size:1.35rem;font-weight:400}.cell.blocked{text-align:center;color:#55556a;font-size:.75rem;font-weight:700;background:repeating-linear-gradient(45deg,#15151d,#15151d 6px,#1b1b25 6px,#1b1b25 12px);cursor:not-allowed}.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1.25rem}.panel h3{margin-bottom:.6rem}.top-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;counter-reset:rank}.top-list li{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;border-radius:8px;background:var(--bg-3);cursor:pointer;counter-increment:rank;font-size:.88rem}.top-list li:before{content:counter(rank);width:1.4rem;color:var(--yellow);font-family:Bebas Neue,Impact,sans-serif;font-size:1.2rem}.top-list.compact li{cursor:default;padding:.25rem .5rem}.top-list li:hover{outline:1px solid var(--line)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:grid;place-items:center;z-index:300;padding:1rem}.modal{background:var(--bg-2);border:1px solid var(--line);border-top:4px solid var(--red);border-radius:12px;width:min(560px,100%);max-height:92vh;overflow:auto;padding:1.25rem 1.5rem}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-header h2{font-size:2rem;color:var(--yellow)}.run-form{display:grid;grid-template-columns:1fr 1fr;gap:.9rem 1rem}.run-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--muted)}.run-form .span-2,.run-form .form-actions,.run-form .form-error,.run-form .form-warning{grid-column:1 / -1}.run-form input,.run-form select{font:inherit;font-size:1rem;color:var(--text);background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem}.run-form input:focus,.run-form select:focus{outline:2px solid var(--yellow);outline-offset:-1px}.form-actions{display:flex;gap:.6rem;align-items:center;margin-top:.4rem}.form-error{color:#ff8a80;margin:0}.form-warning{color:var(--yellow);margin:0;font-size:.9rem}.settings{max-width:760px}.credits{font-size:.8rem}@media (max-width: 640px){main{padding:1rem}.hero-inner{padding:1rem}.tabs{padding:0 1rem}.logo{height:56px}.hero-title h1{font-size:2rem}.run-form{grid-template-columns:1fr}.score-num{font-size:3rem}}.suggestion{flex-direction:column;align-items:stretch}.scratch-row{display:flex;align-items:center;justify-content:center;gap:1.25rem;flex-wrap:wrap}.scratch-slot{display:flex;flex-direction:column;align-items:center;gap:.35rem}.scratch-title{font-family:Bebas Neue,Impact,sans-serif;font-size:1.5rem;letter-spacing:.06em}.scratch-vs{font-family:Bebas Neue,Impact,sans-serif;font-size:2.4rem;color:var(--yellow);text-shadow:2px 2px 0 var(--red)}.scratch-card{position:relative;width:150px;height:190px;border-radius:14px;overflow:hidden;border:3px solid var(--accent);background:radial-gradient(circle at 50% 35%,#2b2b3a,#101018 75%);user-select:none;-webkit-user-select:none}.scratch-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:.5rem;text-align:center}.scratch-portrait{width:104px;height:104px;border-radius:10px;object-fit:cover;border:2px solid var(--accent)}.scratch-name{font-family:Bebas Neue,Impact,sans-serif;font-size:1.6rem;line-height:1}.chip.big{font-size:.95rem;padding:.35rem .8rem}.scratch-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:grab;touch-action:none}.scratch-cover:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px}.scratch-card:not(.locked):not(.revealed){animation:wobble 2.4s ease-in-out infinite}.scratch-card.locked .scratch-cover{filter:brightness(.45) saturate(.4);cursor:not-allowed}.scratch-lock{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-size:.8rem;font-weight:700;color:#ddd;pointer-events:none}.scratch-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;pointer-events:none}.scratch-card.revealed{box-shadow:0 0 28px var(--accent),0 0 6px var(--accent);animation:slam .45s ease-out}.scratch-card.revealed .scratch-cover{animation:cover-out .45s ease-in forwards;pointer-events:none}.scratch-card.revealed .scratch-flash{animation:flash .6s ease-out}.scratch-card.revealed .scratch-content{animation:pop .7s cubic-bezier(.2,1.6,.4,1)}.scratch-hint{text-align:center;margin:.25rem 0 0}.suggestion>.btn{align-self:center}@keyframes wobble{0%,to{transform:rotate(0)}47%{transform:rotate(0)}50%{transform:rotate(-2deg)}53%{transform:rotate(2deg)}56%{transform:rotate(0)}}@keyframes cover-out{to{opacity:0;transform:scale(1.35) rotate(6deg);filter:blur(4px)}}@keyframes flash{0%{opacity:.95}to{opacity:0}}@keyframes pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}@keyframes slam{0%{transform:scale(1)}30%{transform:scale(1.08) rotate(-2deg)}60%{transform:scale(.97) rotate(1deg)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.scratch-card,.scratch-card *{animation-duration:.01s!important;animation-iteration-count:1!important}}.matrix-frame{display:flex;flex-direction:column;gap:1rem}.matrix-zoom{width:max-content;min-width:100%}body.no-scroll{overflow:hidden}.matrix-frame.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--bg);padding:.6rem;gap:.5rem;height:100vh;height:100dvh}.matrix-frame.fullscreen .matrix-toolbar{gap:.5rem}.matrix-frame.fullscreen .matrix-toolbar h3{font-size:1.1rem}.matrix-frame.fullscreen .matrix-scroll{flex:1;max-height:none;touch-action:pan-x pan-y;overscroll-behavior:contain}.matrix-frame.fullscreen .matrix-zoom{min-width:0}.zoom-controls{display:flex;align-items:center;gap:.35rem}.zoom-pct{min-width:3.2rem;text-align:center;font-variant-numeric:tabular-nums;font-size:.85rem;color:var(--muted)}.fs-hint{margin:0;text-align:center;font-size:.75rem}.btn svg{vertical-align:-2px;margin-right:.25rem}.stats-deck{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem 1rem;display:flex;flex-direction:column;gap:.8rem}.deck-tabs{display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.deck-tabs::-webkit-scrollbar{display:none}.deck-tabs button{flex:none;font:inherit;font-size:.85rem;font-weight:600;padding:.4rem .85rem;border-radius:999px;border:1px solid var(--line);background:var(--bg-3);color:var(--muted);cursor:pointer;white-space:nowrap}.deck-tabs button.active{background:var(--yellow);color:#111;border-color:var(--yellow)}.deck-body{display:grid;grid-template-columns:2.4rem 1fr 2.4rem;align-items:start;gap:.5rem;touch-action:pan-y;overflow:hidden}.deck-arrow{align-self:center;font-size:2rem;line-height:1;height:3rem;border-radius:10px;border:1px solid var(--line);background:var(--bg-3);color:var(--text);cursor:pointer}.deck-arrow:hover{border-color:var(--yellow);color:var(--yellow)}.deck-panel{min-width:0;min-height:220px}.deck-panel h3{margin-bottom:.6rem}.deck-panel h4{margin:.6rem 0 .35rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.slide-left{animation:slide-left .25s ease-out}.slide-right{animation:slide-right .25s ease-out}@keyframes slide-left{0%{opacity:0;transform:translate(40px)}}@keyframes slide-right{0%{opacity:0;transform:translate(-40px)}}.deck-dots{display:flex;justify-content:center;gap:.35rem}.deck-dots span{width:7px;height:7px;border-radius:50%;background:var(--line)}.deck-dots span.active{background:var(--yellow);width:18px;border-radius:4px}.deck-note{margin:.2rem 0 .5rem;font-size:.85rem;color:var(--muted)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.compare-table{width:100%;border-collapse:collapse;font-size:.95rem}.compare-table th,.compare-table td{padding:.45rem .6rem;border-bottom:1px solid var(--line);text-align:center}.compare-table tbody th{text-align:left;color:var(--muted);font-weight:600}.compare-table thead th{font-family:Bebas Neue,Impact,sans-serif;font-size:1.4rem;font-weight:400}.compare-table.wide thead th{font-family:Inter,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.compare-table td{font-weight:700;font-variant-numeric:tabular-nums}.winner-dot.inline{position:static;flex:none;color:#fff}.game-grid{border-collapse:separate;border-spacing:4px;margin:0 auto}.game-grid td{width:84px;height:56px;text-align:center;border-radius:8px;background:var(--bg-3);text-shadow:0 1px 2px rgba(0,0,0,.7)}.game-grid td strong{display:block;font-family:Bebas Neue,Impact,sans-serif;font-size:1.4rem;font-weight:400}.game-grid td small{font-size:.7rem}.record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem}.record-grid>div{background:var(--bg-3);border-radius:10px;padding:.7rem .8rem;display:flex;flex-direction:column;gap:.15rem}.record-grid strong{font-family:Bebas Neue,Impact,sans-serif;font-size:1.8rem;font-weight:400}.record-grid small{color:var(--muted);font-size:.75rem}.record-grid .clickable{cursor:pointer}.record-grid .clickable:hover{outline:1px solid var(--yellow)}@media (max-width: 640px){.deck-body{grid-template-columns:1fr}.deck-arrow{display:none}.two-col{grid-template-columns:1fr}.game-grid td{width:62px;height:48px}.matrix-frame.fullscreen .matrix-toolbar h3{display:none}.matrix-toolbar .btn{padding:.4rem .7rem}}@media (max-width: 640px){.deck-panel .top-list .grow{white-space:normal;overflow:visible;text-overflow:clip;font-size:.82rem;line-height:1.25}}.portrait-badge{position:relative;display:inline-flex;flex:none}.portrait-badge .winner-dot{top:-4px;right:-4px;width:15px;height:15px;font-size:.62rem}.compare-table td.pa-text,.compare-table td.pb-text{font-size:1.05em}.game-grid th .portrait{display:block}.pairing-bar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.pairing-label{font-family:Bebas Neue,Impact,sans-serif;font-size:1.3rem;letter-spacing:.05em;color:var(--muted)}.pairing-note{font-size:.8rem}.player-pick{font:inherit;font-weight:700;font-size:1rem;background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:.35rem .6rem;cursor:pointer}.player-pick:focus{outline:2px solid var(--yellow);outline-offset:-1px}.player-rows{display:flex;flex-direction:column;gap:.6rem;margin:.6rem 0}.player-row{display:flex;align-items:center;gap:.7rem;background:var(--bg-3);border-radius:8px;padding:.45rem .7rem}.player-dot{width:16px;height:16px;border-radius:50%;flex:none;border:1px solid rgba(255,255,255,.3)}.player-fields{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.player-fields>input[type=text],.player-fields>input:not([type]){font:inherit;font-size:1rem;color:var(--text);background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem;min-width:160px}.swatches{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.swatch.active{border-color:#fff;box-shadow:0 0 0 2px var(--yellow)}.swatch.custom{background:var(--bg-3);border-color:var(--line);width:30px;height:30px}input[type=color].swatch::-webkit-color-swatch-wrapper{padding:2px}input[type=color].swatch::-webkit-color-swatch{border:none;border-radius:50%}.portrait-fallback{display:inline-grid;place-items:center;flex:none;border-radius:6px;font-family:Bebas Neue,Impact,sans-serif;color:#111;border:1px solid rgba(255,255,255,.15)}.import-map{display:flex;gap:.8rem;align-items:end;flex-wrap:wrap;margin:.6rem 0}.import-map label{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--muted)}.import-map select{font:inherit;font-size:1rem;color:var(--text);background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem}.override-list{margin-top:.6rem;display:flex;flex-direction:column;gap:.4rem}
