:root{--mtg-bg: #10141a;--mtg-panel: #1b222c;--mtg-panel2: #242d3a;--mtg-border: #334052;--mtg-text: #e6e9ee;--mtg-dim: #96a0ae;--mtg-accent: #4f9cf5;--mtg-good: #3fbf7f;--mtg-warn: #f2b134;--mtg-bad: #e5534b;--mtg-own: #3cc3c9;--mtg-opp: #e8845e;--card-w: 76px;--card-small-w: 52px}.mtg-btn{font:inherit;color:var(--mtg-text);background:var(--mtg-panel2);border:1px solid var(--mtg-border);border-radius:6px;padding:6px 12px;cursor:pointer;min-height:34px;touch-action:manipulation}.mtg-btn:hover:not(:disabled){border-color:var(--mtg-accent)}.mtg-btn:disabled{opacity:.45;cursor:default}.mtg-btn.primary{background:var(--mtg-accent);border-color:var(--mtg-accent);color:#fff;font-weight:600}.mtg-btn.pressed,.mtg-btn[aria-pressed=true]{background:#2d5a8e;border-color:var(--mtg-accent)}.mtg-btn.danger{border-color:var(--mtg-bad);color:#ffb3ae}.mtg-link{background:none;border:none;color:var(--mtg-accent);cursor:pointer;padding:2px 0;font:inherit;text-decoration:underline}.mtg-dim{color:var(--mtg-dim);font-size:.9em}.mtg-empty{color:var(--mtg-dim);font-size:.85em;padding:4px}.mtg-warning{color:var(--mtg-warn);margin:4px 0}.mtg-required{color:var(--mtg-warn)}.mtg-section-title{font-size:.75em;text-transform:uppercase;letter-spacing:.06em;color:var(--mtg-dim);margin-bottom:4px}.mtg-mana-cost{display:inline-flex;gap:1px;vertical-align:middle}.mtg-mana{display:inline-flex;align-items:center;justify-content:center;min-width:1.25em;height:1.25em;border-radius:50%;font-size:.75em;font-weight:700;color:#111;background:#cac5c0;padding:0 2px}.mtg-mana-w{background:#f8f6d8}.mtg-mana-u{background:#9cd0f0}.mtg-mana-b{background:#9b9190}.mtg-mana-r{background:#f39a7b}.mtg-mana-g{background:#9bd3ae}.mtg-mana-hybrid{background:linear-gradient(135deg,#e0d9a0,#a8c8e0)}.mtg-card-slot{position:relative;display:inline-flex;flex-direction:column;align-items:center;width:var(--card-w);transition:transform .15s;flex:none}.mtg-card-slot.small{width:var(--card-small-w)}.mtg-card-slot.tapped{transform:rotate(90deg) translate(-8%);margin:0 calc(var(--card-w) * .2)}.mtg-card{position:relative;display:block;width:100%;aspect-ratio:63 / 88;padding:0;border:2px solid transparent;border-radius:6px;background:#2a2f37;overflow:hidden;cursor:pointer;color:var(--mtg-text);font:inherit;text-align:left}.mtg-card img{width:100%;height:100%;object-fit:cover;display:block}.mtg-card-back{background:repeating-linear-gradient(45deg,#5a3b1f,#5a3b1f 6px,#6d4826 6px,#6d4826 12px);border:2px solid #2b1a0b;width:var(--card-small-w);aspect-ratio:63 / 88;border-radius:6px;display:inline-block;flex:none}.mtg-card-back:not(.small){width:var(--card-w)}.mtg-card.mark-candidate,.mtg-card.mark-action{border-color:var(--mtg-accent);box-shadow:0 0 8px var(--mtg-accent)}.mtg-card.mark-mana{border-color:#4f9cf559}.mtg-card.mark-selected{border-color:var(--mtg-good);box-shadow:0 0 10px var(--mtg-good)}.mtg-card.mark-attacking,.mtg-card.attacking{border-color:var(--mtg-bad);box-shadow:0 0 8px var(--mtg-bad)}.mtg-card.mark-blocking,.mtg-card.blocking{border-color:var(--mtg-warn);box-shadow:0 0 8px var(--mtg-warn)}.mtg-card.mark-required{border-color:var(--mtg-warn);border-style:dashed}.mtg-attachments{display:flex;flex-direction:column;width:100%}.mtg-attachments>.mtg-card-slot{margin-bottom:calc(var(--card-w) * -1.18)}.mtg-card-slot.small>.mtg-attachments>.mtg-card-slot{margin-bottom:calc(var(--card-small-w) * -1.18)}.mtg-attachments .mtg-card-slot.tapped{transform:none;margin:0 0 calc(var(--card-w) * -1.18)}.mtg-attachments .mtg-card{filter:brightness(.9)}.mtg-card-slot>.mtg-card{z-index:1}.mtg-counters{position:absolute;left:2px;bottom:2px;display:flex;flex-wrap:wrap;gap:2px}.mtg-counter{background:#000c;color:#fff;font-size:10px;border-radius:8px;padding:0 4px;line-height:15px}.mtg-counter.damage{background:#8a1f1a}.mtg-pt-badge{position:absolute;right:2px;bottom:2px;background:#000000d9;color:#fff;font-size:11px;font-weight:700;padding:0 4px;border-radius:4px}.mtg-pt-badge.changed{background:var(--mtg-warn);color:#111}.mtg-badge{position:absolute;top:2px;right:2px;background:#000000b3;color:#fff;font-size:10px;border-radius:4px;padding:0 3px}.token-badge{right:auto;left:2px}.mtg-frame{display:flex;flex-direction:column;height:100%;padding:3px;font-size:9px;line-height:1.15;background:#6b6f75;color:#111}.mtg-frame.large{font-size:15px;padding:10px;border-radius:10px;width:260px;height:auto;aspect-ratio:63 / 88}.mtg-frame-top{display:flex;justify-content:space-between;gap:2px;font-weight:700;background:#ffffffbf;border-radius:3px;padding:1px 2px}.mtg-frame-name{overflow:hidden;text-overflow:ellipsis}.mtg-frame-type{margin-top:3px;background:#fff9;border-radius:3px;padding:1px 2px}.mtg-frame-text{margin-top:4px;background:#ffffffd9;padding:3px;border-radius:3px;flex:1}.mtg-frame-pt{margin-top:auto;align-self:flex-end;background:#ffffffe6;border-radius:3px;padding:0 3px;font-weight:700}.frame-w{background:#e9e3c7}.frame-u{background:#6aa8d8}.frame-b{background:#6d6566}.frame-r{background:#d9785b}.frame-g{background:#6aae7c}.frame-gold{background:#d8b858}.frame-land{background:#a99377}.frame-c{background:#a9adb3}.frame-facedown{background:repeating-linear-gradient(45deg,#5a3b1f,#5a3b1f 6px,#6d4826 6px,#6d4826 12px)}.mtg-zoom-layer{position:fixed;right:12px;bottom:12px;z-index:50;pointer-events:none}.mtg-zoom-layer.pinned{top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;pointer-events:auto}.mtg-zoom{display:flex;flex-direction:column;align-items:center;gap:6px}.mtg-zoom img{width:min(300px,80vw);border-radius:12px;box-shadow:0 6px 30px #000}.mtg-zoom-info{background:var(--mtg-panel);padding:4px 8px;border-radius:6px;font-size:.85em}.mtg-zoom-info:empty{display:none}.mtg-table{display:grid;min-height:100dvh;background:var(--mtg-bg);color:var(--mtg-text);grid-template-columns:1fr 280px;grid-template-rows:auto auto 1fr auto;grid-template-areas:"top top" "opp side" "center side" "me side"}.mtg-topbar{grid-area:top;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;background:var(--mtg-panel);border-bottom:1px solid var(--mtg-border)}.mtg-topbar-buttons{margin-left:auto;display:flex;gap:6px}.mtg-opponents{grid-area:opp;display:flex;flex-direction:column;gap:6px;padding:6px}.mtg-center{grid-area:center;display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:6px}.mtg-seat{background:var(--mtg-panel);border:1px solid var(--mtg-border);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:6px;min-width:0}.mtg-seat.me{grid-area:me;margin:6px}.mtg-seat-head{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.mtg-side{grid-area:side;border-left:1px solid var(--mtg-border);background:var(--mtg-panel);display:flex;flex-direction:column;min-height:0;max-height:calc(100dvh - 50px);position:sticky;top:0}.mtg-battlefield{display:flex;flex-direction:column;gap:6px;min-height:calc(var(--card-w) * 1.4)}.mtg-row{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}.mtg-hand{display:flex;gap:4px;overflow-x:auto;padding-bottom:2px}.mtg-hand.own{gap:6px}.mtg-player{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--mtg-panel2);border:2px solid var(--mtg-border);border-radius:8px;padding:4px 10px;color:var(--mtg-text);font:inherit;cursor:default}.mtg-player.active{border-color:#7a6cf0}.mtg-player.priority .mtg-player-name:after{content:" ●";color:var(--mtg-good)}.mtg-player.lost{opacity:.5}.mtg-player.mark-candidate{border-color:var(--mtg-accent);box-shadow:0 0 8px var(--mtg-accent);cursor:pointer}.mtg-player.mark-selected{border-color:var(--mtg-good);box-shadow:0 0 10px var(--mtg-good);cursor:pointer}.mtg-player-name{font-weight:700}.mtg-player.own{border-left:5px solid var(--mtg-own)}.mtg-player.opp{border-left:5px solid var(--mtg-opp)}.mtg-player.hovered,.mtg-card.hovered{outline:3px solid #fff;outline-offset:1px}.mtg-pile.mark-candidate{border-color:var(--mtg-accent);box-shadow:0 0 6px var(--mtg-accent)}.mtg-pile.mark-selected{border-color:var(--mtg-good);box-shadow:0 0 6px var(--mtg-good)}.mtg-pile-picks{margin-left:4px;color:var(--mtg-accent);font-weight:700}.mtg-table.picking .mtg-seat .mtg-card:not([class*=mark-]),.mtg-table.picking .mtg-stack .mtg-card:not([class*=mark-]),.mtg-table.picking .mtg-seat .mtg-card-back{opacity:.45;filter:saturate(.6)}.mtg-table.picking .mtg-seat .mtg-card[class*=mark-]{z-index:1}.mtg-life{font-size:1.15em;font-weight:700;color:#ff8f8f}.mtg-pcounter,.mtg-designation,.mtg-handcount{font-size:.85em;background:#ffffff14;border-radius:4px;padding:0 5px}.pc-poison{color:#8fe08f}.mtg-piles{display:flex;flex-wrap:wrap;gap:4px}.mtg-command{display:flex;gap:4px;align-items:flex-start}.mtg-pile{font:inherit;font-size:.8em;color:var(--mtg-text);background:#ffffff0f;border:1px solid var(--mtg-border);border-radius:5px;padding:3px 7px;cursor:pointer}.mtg-pile:disabled{cursor:default;opacity:.7}.mtg-pile-count{font-weight:700}.mtg-turnbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mtg-turn-no{font-weight:600}.mtg-phases{display:flex;gap:2px;list-style:none;margin:0;padding:0}.mtg-phases li{font-size:10px;padding:2px 4px;border-radius:3px;background:#ffffff0f;color:var(--mtg-dim)}.mtg-phases li.current{background:var(--mtg-accent);color:#fff;font-weight:700}.mtg-timer{font-variant-numeric:tabular-nums;padding:2px 8px;border-radius:5px;background:#ffffff14}.mtg-timer.urgent{background:var(--mtg-bad);color:#fff}.mtg-status{color:var(--mtg-warn);font-size:.85em}.mtg-stack{background:var(--mtg-panel);border:1px solid var(--mtg-border);border-radius:8px;padding:6px;min-width:200px;max-width:360px}.mtg-stack-item{display:flex;gap:6px;align-items:center;padding:4px;border-radius:6px}.mtg-stack-item.top{background:#4f9cf526}.mtg-stack-ability{width:var(--card-small-w);text-align:center;font-size:22px}.mtg-stack-text{font-size:.85em}.mtg-prompt{background:var(--mtg-panel);border:2px solid var(--mtg-accent);border-radius:10px;padding:10px;min-width:260px;max-width:560px;flex:1;display:flex;flex-direction:column;gap:8px}.mtg-prompt-title{font-weight:700}.mtg-prompt-footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.mtg-prompt input,.mtg-prompt select,.mtg-prompt textarea,.mtg-chat input{font:inherit;color:var(--mtg-text);background:var(--mtg-bg);border:1px solid var(--mtg-border);border-radius:6px;padding:6px 8px;min-height:34px}.mtg-prompt textarea{min-height:70px}.mtg-raw{max-height:160px;overflow:auto;font-size:11px;background:var(--mtg-bg);padding:6px}.mtg-choice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:40vh;overflow-y:auto}.mtg-choice-list li{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mtg-pick-list{flex-direction:row;flex-wrap:wrap}.mtg-pick-list li{flex-direction:column;align-items:center}.mtg-pick-list li.selected .mtg-card{border-color:var(--mtg-good)}.mtg-pick-list li{border-radius:8px;padding:3px;border:2px solid transparent}.mtg-pick-list li.hovered{border-color:#fff}.mtg-pick-groups{display:flex;flex-direction:column;gap:8px;max-height:42vh;overflow-y:auto}.mtg-pick-groups .mtg-pick-list{max-height:none;overflow:visible}.mtg-pick-group{display:flex;flex-direction:column;gap:4px}.mtg-pick-heading{font-size:.8em;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mtg-dim);border-bottom:1px solid var(--mtg-border);padding-bottom:2px}.mtg-owner-tag{font-size:.72em;font-weight:700;border-radius:4px;padding:0 5px;color:#10141a;max-width:9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mtg-owner-tag.own{background:var(--mtg-own)}.mtg-owner-tag.opp{background:var(--mtg-opp)}.mtg-option-list,.mtg-action-list,.mtg-action-menu{display:flex;flex-wrap:wrap;gap:6px}.mtg-action-menu{padding:6px;border:1px dashed var(--mtg-accent);border-radius:8px}.mtg-stepper{display:inline-flex;align-items:center;gap:6px}.mtg-stepper input{width:80px}.mtg-step-value{min-width:2ch;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}.mtg-order-label{flex:1;min-width:100px}.mtg-suggestions{list-style:none;margin:0;padding:4px;background:var(--mtg-bg);border-radius:6px;max-height:180px;overflow-y:auto}.mtg-color-btn{min-width:70px;color:#111;font-weight:700}.color-w{background:#f8f6d8}.color-u{background:#9cd0f0}.color-b{background:#9b9190}.color-r{background:#f39a7b}.color-g{background:#9bd3ae}.color-c{background:#cac5c0}.mtg-piles-grid{display:flex;flex-wrap:wrap;gap:8px}.mtg-pile-box{flex:1;min-width:140px;background:var(--mtg-bg);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:4px}.mtg-pile-entry{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.mtg-waiting{color:var(--mtg-dim);padding:10px;font-style:italic}.mtg-result{font-size:1.6em;font-weight:800;padding:12px 20px;background:var(--mtg-panel2);border-radius:10px;border:2px solid var(--mtg-warn)}.mtg-log,.mtg-chat-lines{list-style:none;margin:0;padding:8px;overflow-y:auto;flex:1;font-size:.82em;display:flex;flex-direction:column;gap:3px}.mtg-log li{border-bottom:1px solid rgba(255,255,255,.04)}.mtg-log li.mtg-log-turn{margin-top:6px;padding:2px 4px;font-weight:600;color:var(--mtg-accent, #8ab4ff);border-bottom:1px solid rgba(255,255,255,.15)}.mtg-chat{display:flex;flex-direction:column;flex:1;min-height:0}.mtg-chat form{display:flex;gap:6px;padding:6px}.mtg-chat input{flex:1;min-width:0}.mtg-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:40;display:flex;align-items:center;justify-content:center;padding:12px}.mtg-modal{background:var(--mtg-panel);border:1px solid var(--mtg-border);border-radius:10px;max-width:900px;width:100%;max-height:90dvh;overflow:auto;padding:10px;color:var(--mtg-text)}.mtg-modal-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.mtg-modal-head button{margin-left:auto;background:none;border:none;color:var(--mtg-text);font-size:18px;cursor:pointer}.mtg-viewer-cards{display:flex;flex-wrap:wrap;gap:8px}.mtg-combat-badge{position:absolute;left:50%;top:38%;transform:translate(-50%);font-size:10px;font-weight:700;padding:1px 5px;border-radius:4px;white-space:nowrap;color:#fff;pointer-events:none}.mtg-combat-badge.attacking{background:var(--mtg-bad)}.mtg-combat-badge.blocking{background:#b27c12}.mtg-sick-badge{position:absolute;top:2px;right:2px;background:#000000bf;color:#b9c6ff;font-size:10px;font-style:italic;border-radius:4px;padding:0 4px;pointer-events:none}.mtg-pile-badge{position:absolute;top:2px;right:2px;background:#000c;color:#fff;font-size:11px;font-weight:700;border-radius:4px;padding:0 4px;pointer-events:none}.mtg-pile-group{display:inline-flex;flex:none}.mtg-pile-group>.mtg-card-slot+.mtg-card-slot{margin-left:calc(var(--card-w) * -.8)}.mtg-pile-group.tapped>.mtg-card-slot+.mtg-card-slot{margin-left:calc(var(--card-w) * -1.15)}.mtg-card.targeted{outline:3px dashed var(--mtg-warn);outline-offset:1px}.mtg-player.targeted{border-color:var(--mtg-warn);border-style:dashed}.mtg-card-slot.tapped .mtg-combat-badge{transform:translate(-50%) rotate(-90deg)}.mtg-card-slot.tapped .mtg-pile-badge{transform:rotate(-90deg)}.mtg-row-lands{min-height:0}.mtg-battlefield.mirrored .mtg-row-lands{opacity:.95}.mtg-count{font-weight:700;color:var(--mtg-warn)}.mtg-prompt-head{display:flex;gap:8px;align-items:flex-start}.mtg-prompt-source{flex:none}.mtg-action-menu{align-items:flex-start;gap:8px}.mtg-action-menu-list{display:flex;flex-wrap:wrap;gap:6px;flex:1}.mtg-actions{display:flex;flex-direction:column;gap:6px}.mtg-gameover-backdrop{z-index:45}.mtg-gameover{max-width:420px;text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center;padding:20px}.mtg-gameover .mtg-result{border:none;background:none;padding:0;font-size:2em}.mtg-gameover.won .mtg-result{color:var(--mtg-good)}.mtg-gameover.lost .mtg-result{color:var(--mtg-bad)}.mtg-gameover-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.mtg-result.small{font-size:1em;padding:6px 12px;display:flex;gap:8px;align-items:center}.mtg-zoom-info{max-width:min(300px,80vw);display:flex;flex-direction:column;gap:3px}.mtg-zoom-name{display:flex;justify-content:space-between;gap:6px;align-items:center}.mtg-oracle p{margin:3px 0;line-height:1.3}.mtg-seat-bar{display:flex;gap:10px;align-items:flex-start;min-width:0}.mtg-seat-bar .mtg-seat-head{flex-direction:column;align-items:flex-start;flex:none;max-width:260px}.mtg-seat-bar .mtg-hand{flex:1;min-width:0}.mtg-hand:not(.own) .mtg-card-back+.mtg-card-back{margin-left:calc(var(--card-small-w) * -.55)}.mtg-hand:not(.own){gap:0}.mtg-battlefield{min-height:calc(var(--card-w) * 1.1);flex-direction:row;flex-wrap:wrap;align-items:flex-start;column-gap:0}.mtg-battlefield>.mtg-row{flex:0 1 auto;padding:0 12px;min-width:0}.mtg-battlefield>.mtg-row+.mtg-row{border-left:1px dashed var(--mtg-border)}.mtg-battlefield>.mtg-row:first-child{padding-left:0}@media(min-width:1100px){:root{--card-w: 86px;--card-small-w: 56px}}@media(min-width:1380px)and (min-height:820px){:root{--card-w: 100px;--card-small-w: 60px}}@media(max-width:760px){:root{--card-w: 54px;--card-small-w: 40px}.mtg-table{grid-template-columns:1fr;grid-template-areas:"top" "opp" "center" "me";grid-template-rows:auto auto auto 1fr}.mtg-side{display:none}.mtg-table.side-open .mtg-side{display:flex;position:fixed;inset:46px 0 0 auto;width:min(320px,90vw);z-index:30;max-height:none}.mtg-center{padding:4px}.mtg-prompt{position:sticky;bottom:0;z-index:20;max-width:none;min-width:0;box-shadow:0 -4px 20px #0009}.mtg-stack{max-width:none;flex:1 1 100%}.mtg-phases li{padding:1px 2px;font-size:9px}.mtg-frame{font-size:7px}.mtg-seat.me{margin:4px}.mtg-seat-bar{flex-direction:column;gap:4px}.mtg-battlefield{row-gap:6px}.mtg-battlefield>.mtg-row{padding:0 8px 0 0}.mtg-battlefield>.mtg-row+.mtg-row{border-left:none}.mtg-seat-bar .mtg-seat-head{flex-direction:row;flex-wrap:wrap;align-items:center;max-width:none}.mtg-seat-bar .mtg-hand{align-self:stretch}.mtg-topbar{gap:4px;padding:4px 6px}.mtg-topbar-buttons{gap:4px;margin-left:0;flex-wrap:wrap}.mtg-topbar .mtg-btn{padding:3px 7px;min-height:30px;font-size:.85em}.mtg-combat-badge{font-size:8px;padding:0 3px}.mtg-zoom-layer:not(.pinned){display:none}.mtg-prompt{padding:8px;gap:6px}.mtg-prompt .mtg-pick-groups{max-height:30vh}.mtg-pick-hint{display:none}.mtg-prompt .mtg-action-list .mtg-btn{padding:4px 9px;min-height:32px;font-size:.92em}}.mtg-prompt-guide{margin:2px 0 6px;font-size:.9em;color:var(--mtg-dim)}.mtg-pile-group{position:relative}.mtg-pile-toggle{position:absolute;left:-4px;bottom:-4px;z-index:3;min-width:22px;height:22px;padding:0 4px;font:inherit;font-size:12px;line-height:20px;color:#fff;background:#000c;border:1px solid var(--mtg-border);border-radius:11px;cursor:pointer}.mtg-pile-group.open>.mtg-card-slot+.mtg-card-slot{margin-left:4px}.mtg-pile-group.open.tapped>.mtg-card-slot+.mtg-card-slot{margin-left:calc(var(--card-w) * .45)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--mtg-bg);color:var(--mtg-text);font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}a{color:var(--mtg-accent)}a.mtg-btn{text-decoration:none;display:inline-flex;align-items:center}h1{font-size:1.5em;margin:0 0 8px}h2{font-size:1.2em;margin:0 0 8px}h3{font-size:1em;margin:8px 0 4px}input,select,textarea{font:inherit;color:var(--mtg-text);background:var(--mtg-bg);border:1px solid var(--mtg-border);border-radius:6px;padding:6px 8px;min-height:36px;max-width:100%}.dim{color:var(--mtg-dim)}.error{color:#ff9b94;margin:6px 0}.deck-problem{display:block;color:var(--mtg-warn, #f2b134);font-size:.85em;margin-top:2px;max-width:32em}select[aria-invalid=true]{border-color:var(--mtg-warn, #f2b134)}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0}.row.end{justify-content:flex-end}.screen.center{min-height:100dvh;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px}.card-panel{background:var(--mtg-panel);border:1px solid var(--mtg-border);border-radius:10px;padding:14px;margin-bottom:12px}.mtg-btn.small{padding:2px 8px;min-height:28px;font-size:.85em}.topnav{display:flex;align-items:center;gap:14px;padding:8px 16px;background:var(--mtg-panel);border-bottom:1px solid var(--mtg-border);position:sticky;top:0;z-index:10}.topnav a{color:var(--mtg-text);text-decoration:none;font-weight:600;padding:4px 2px}.topnav a.active{border-bottom:2px solid var(--mtg-accent)}.topnav .spacer{flex:1}.topnav .conn{color:var(--mtg-warn);font-size:.85em}.page{max-width:1200px;margin:0 auto;padding:16px}.notices{position:fixed;left:50%;transform:translate(-50%);bottom:16px;display:flex;flex-direction:column;gap:6px;z-index:100;width:min(480px,calc(100vw - 32px))}.notice{background:#4a2523;border:1px solid var(--mtg-bad);color:#fff;padding:8px 12px;border-radius:8px;cursor:pointer}.auth{width:min(380px,100%);display:flex;flex-direction:column;gap:10px}.auth label{display:flex;flex-direction:column;gap:4px}.tabs{display:flex;gap:4px}.tabs button{flex:1;font:inherit;padding:8px;background:none;border:none;border-bottom:2px solid var(--mtg-border);color:var(--mtg-dim);cursor:pointer}.tabs button.active{color:var(--mtg-text);border-color:var(--mtg-accent)}.tiles{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.deck-tile{margin:0;display:flex;flex-direction:column;gap:6px}.play-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;align-items:start}.play-menu .card-panel{margin:0}.form-grid{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:10px}.form-grid label{display:flex;flex-direction:column;gap:4px}.join{margin-top:14px}.friends{list-style:none;padding:0;margin:0 0 8px}.friends li{display:flex;align-items:center;gap:8px;padding:4px 0}.friends li button{margin-left:auto}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#666;margin:0 4px}.dot.on{background:var(--mtg-good)}.lobby{display:grid;grid-template-columns:1fr 300px;gap:12px;align-items:start}.seats{list-style:none;padding:0;margin:10px 0;display:flex;flex-direction:column;gap:6px}.seat{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px;border-radius:8px;background:var(--mtg-panel2)}.seat.mine{outline:1px solid var(--mtg-accent)}.seat-no{font-weight:700;width:1.5em;text-align:center}.seat-name{min-width:120px;font-weight:600}.seat-deck{flex:1;min-width:140px}.invite{text-align:center}.invite-code{font-size:2em;letter-spacing:.15em;font-weight:800;font-family:ui-monospace,monospace}.qr{background:#fff;padding:6px;border-radius:8px;margin:8px auto;display:block;max-width:100%;height:auto}.invite input{flex:1;min-width:0}.builder-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.deck-name{font-size:1.15em;font-weight:700;flex:1;min-width:160px}.save-state{font-size:.85em;color:var(--mtg-dim)}.save-state.error{color:var(--mtg-bad)}.builder-body{display:grid;grid-template-columns:1fr 340px;gap:12px;align-items:start}.filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.filters input[type=search]{flex:1;min-width:180px}.filters .mv{width:70px}.color-filter{display:inline-flex;gap:3px}.color-toggle{width:30px;height:30px;font-size:13px;border:2px solid transparent;cursor:pointer;opacity:.5}.color-toggle.on{opacity:1;border-color:#fff}.pager{display:flex;gap:10px;align-items:center;justify-content:center;margin:8px 0}.search-results{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.search-card{display:flex;flex-direction:column;gap:4px}.search-card-img{padding:0;border:none;background:#222;border-radius:8px;overflow:hidden;aspect-ratio:63 / 88;cursor:zoom-in;color:inherit;text-align:left}.search-card-img img{width:100%;height:100%;object-fit:cover;display:block}.search-card-name{font-size:.85em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-card-buttons{display:flex;flex-wrap:wrap;gap:3px}.support{color:var(--mtg-warn)}.card-text{padding:8px;font-size:.8em;height:100%;overflow:hidden}.card-text p{white-space:pre-wrap;margin:6px 0 0}.deck-panel{position:sticky;top:60px;max-height:calc(100dvh - 80px);overflow-y:auto;margin:0}.deck-total{font-weight:700;font-size:1.1em}.validation{color:var(--mtg-warn);font-size:.85em;padding-left:18px;margin:6px 0}.valid{color:var(--mtg-good);font-size:.9em;margin:6px 0}.deck-entries{list-style:none;padding:0;margin:0}.deck-entries li{display:flex;align-items:center;gap:6px;padding:2px 0;border-bottom:1px solid rgba(255,255,255,.04);cursor:default}.deck-entries .count{width:2ch;text-align:right;font-weight:700}.deck-entries .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-buttons{display:inline-flex;gap:2px}.deck-preview{margin-top:10px}.deck-preview img{width:100%;border-radius:10px}.list-text{width:100%;font-family:ui-monospace,monospace;font-size:.9em;margin:8px 0}.game-main{padding:0}.game-screen{position:relative}.game-menu{text-decoration:none}@media(max-width:760px){.page{padding:10px}.topnav{gap:10px;padding:8px 10px}.topnav .me{display:none}.lobby,.builder-body{grid-template-columns:1fr}.deck-panel{position:static;max-height:none}.search-results{grid-template-columns:repeat(auto-fill,minmax(105px,1fr))}}.settings-menu{position:relative;display:inline-block}.settings-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:50;width:min(20em,calc(100vw - 32px));margin:0;box-shadow:0 6px 24px #00000073}.auth .settings-menu{align-self:flex-end}.auth .settings-popover{right:0}.language-fields{display:flex;flex-direction:column;gap:10px}.language-fields label{display:flex;flex-direction:column;gap:4px;font-size:.9em}.language-fields p{margin:0}@media(max-width:600px){.topnav{gap:8px;padding:8px 10px;flex-wrap:wrap}.topnav .me{display:none}}.mtg-topbar .settings-popover{right:auto;left:0;color:var(--mtg-text)}.quick-deck{max-width:720px}.quick-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px 14px;align-items:end}.quick-form label{display:flex;flex-direction:column;gap:3px;font-size:13px}.quick-form .wide,.quick-commander{grid-column:1 / -1}.quick-form textarea{width:100%;box-sizing:border-box}.quick-label{display:block;font-size:13px;margin-bottom:3px}.quick-hits{list-style:none;padding:0;margin:4px 0;display:flex;flex-wrap:wrap;gap:4px}.quick-result{border-top:1px solid var(--mtg-border);margin-top:8px;padding-top:6px}.quick-result h3{margin:4px 0}.quick-sections{padding-left:18px;margin:6px 0;font-size:14px}.quick-warnings{padding-left:18px;font-size:13px}.quick-cards{columns:2 220px;padding-left:0;list-style:none;font-size:13px}.quick-pip{display:inline-block;width:18px;height:18px;font-size:11px;text-align:center;margin-right:2px}.small{font-size:12px}.help-button{min-width:36px;justify-content:center;font-weight:700}.help-backdrop{z-index:60;align-items:flex-start;overflow-y:auto}.help-panel{max-width:640px;padding:14px 16px;line-height:1.45}.help-panel p{margin:6px 0}.help-intro{color:var(--mtg-dim)}.help-section{border-top:1px solid var(--mtg-border);padding:4px 0}.help-section summary{cursor:pointer;font-weight:700;padding:8px 0;min-height:36px}.help-section summary:focus-visible,.info-tip-button:focus-visible,.tip-card button:focus-visible{outline:2px solid var(--mtg-accent);outline-offset:2px}.help-phases,.help-glossary{margin:6px 0;display:grid;gap:4px}.help-phases div,.help-glossary div{display:grid;grid-template-columns:3.2em 1fr;gap:8px;align-items:baseline}.help-glossary div{grid-template-columns:minmax(7em,11em) 1fr}.help-phases dt{font-family:ui-monospace,monospace;font-weight:700;color:var(--mtg-accent)}.help-phases abbr{text-decoration:none}.help-glossary dt{font-weight:700}.help-phases dd,.help-glossary dd{margin:0}@media(max-width:520px){.help-glossary div{grid-template-columns:1fr;gap:0;margin-bottom:4px}}.info-tip{position:relative;display:inline-flex;vertical-align:middle}.info-tip-button{width:22px;height:22px;border-radius:50%;border:1px solid var(--mtg-border);background:var(--mtg-panel2);color:var(--mtg-text);font:italic 700 13px/1 Georgia,serif;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}.info-tip-pop{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:70;width:min(18em,calc(100vw - 32px));background:var(--mtg-panel2);color:var(--mtg-text);border:1px solid var(--mtg-border);border-radius:8px;padding:8px 10px;font-size:13px;font-weight:400;line-height:1.4;box-shadow:0 6px 24px #00000073;text-align:left;white-space:normal}.tip-card{background:#1d2f45;border:1px solid var(--mtg-accent);border-radius:10px;padding:10px 12px;margin:0 0 10px;color:var(--mtg-text);font-size:14px;box-shadow:0 4px 18px #00000059}.tip-card p{margin:0 0 8px}.tip-buttons{display:flex;flex-wrap:wrap;gap:6px}.tip-card.floating{position:fixed;left:12px;bottom:12px;z-index:45;width:min(360px,calc(100vw - 24px));margin:0}.auth-tools{align-self:flex-end;display:inline-flex;gap:6px}
