:root{--bg:#100d18;--panel:#1c1728;--panel2:#251f34;--text:#f7f1ff;--muted:#b9accf;--accent:#d6a84f;--bad:#ff7777;--ok:#70d58b;--line:#3a314e;--parchment:#efe2c5;--ink:#21160b;--gold:#d6a84f;--blueblack:#06111d}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#241a37,#100d18 45%);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.25rem;background:rgba(16,13,24,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.brand a{font-weight:800;color:var(--accent);font-size:1.15rem;text-decoration:none}nav{display:flex;gap:.75rem;flex-wrap:wrap}a{color:#f2d18a}nav a{color:var(--text);text-decoration:none}.container{max-width:1440px;margin:0 auto;padding:1.5rem}.footer{text-align:center;color:var(--muted);padding:2rem}.hero{padding:4rem 1rem;text-align:center}.hero h1{font-size:clamp(2.5rem,6vw,5rem);margin:.2rem}.hero p{font-size:1.25rem;color:var(--muted);max-width:820px;margin:1rem auto}.actions,.inline-form{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:0 12px 40px rgba(0,0,0,.28)}.wide{margin-bottom:1rem}.auth{max-width:480px;margin:2rem auto}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid.three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid.four{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat b{display:block;font-size:2rem;color:var(--accent)}.stat span,.muted,.meta,small{color:var(--muted)}.btn,button{display:inline-block;background:#342a49;border:1px solid var(--line);color:var(--text);padding:.65rem .9rem;border-radius:12px;text-decoration:none;cursor:pointer}.btn.primary,button.primary{background:linear-gradient(180deg,#e2bb67,#9b6b22);color:#160f05;border-color:#f0c775;font-weight:800}.btn.danger{background:#6f2d3b}.btn.small{font-size:.85rem;padding:.35rem .55rem}.flash{padding:.75rem 1rem;border-radius:12px;margin:0 0 1rem}.flash.success{background:#143722;border:1px solid #227846}.flash.error{background:#4a1723;border:1px solid #96364a}.flash.warning{background:#423817;border:1px solid #8a7426}.ok{color:var(--ok)}.bad{color:var(--bad)}form label{display:block;margin:.6rem 0}input,select,textarea{width:100%;padding:.62rem;border-radius:10px;border:1px solid var(--line);background:#130f1d;color:var(--text)}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:.75rem;margin-bottom:1rem}.table{width:100%;border-collapse:collapse;background:rgba(0,0,0,.15);border-radius:14px;overflow:hidden}.table th,.table td{border-bottom:1px solid var(--line);padding:.65rem;text-align:left;vertical-align:top}.table th{color:var(--accent);background:#181222}.qty,.small-input{max-width:90px}.selected-row{background:rgba(214,168,79,.08)}.sticky-save{position:sticky;bottom:1rem;margin:1rem 0}.card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.card-list.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.game-board{display:grid;gap:1rem}.player-area.active{outline:2px solid var(--accent)}.zones{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0}.zones span,.pill{display:inline-block;padding:.35rem .55rem;background:#332947;border:1px solid var(--line);border-radius:999px}.pill.spent{text-decoration:line-through;opacity:.6}.battlefield,.hand,.mini-zone{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-start}.combat-form{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.log{white-space:pre-wrap;max-height:300px;overflow:auto;background:#0b0810;padding:1rem;border-radius:12px}.match-status{position:sticky;top:75px;z-index:20}.discard-choice-grid label{cursor:pointer}.discard-choice-grid input[type=checkbox]{width:auto;margin-right:.35rem}

/* Mythological Force card frame */
.mf-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1.15rem;align-items:start}.mf-card-grid.compact{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:.85rem}.mf-card-grid.board{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:.8rem}.mf-card-hover-wrap{position:relative;display:inline-block;max-width:100%;vertical-align:top}.mf-card-hover-wrap.has-hover:hover{z-index:80}.mf-card-face{position:relative;width:100%;aspect-ratio:2/3;min-width:0;overflow:hidden;border-radius:16px;background:linear-gradient(180deg,#f5ecd5,#e4d0a7 55%,#0b1522 56%,#07101b);color:var(--ink);border:4px solid #1a1410;box-shadow:0 0 0 2px var(--gold),0 8px 22px rgba(0,0,0,.35);font-family:Georgia,'Times New Roman',serif;padding:.42rem;display:flex;flex-direction:column;gap:.25rem}.mf-card-face::before{content:"";position:absolute;inset:.28rem;border:1px solid rgba(214,168,79,.75);border-radius:12px;pointer-events:none}.mf-card-face.common{box-shadow:0 0 0 2px #8a8174,0 8px 22px rgba(0,0,0,.35)}.mf-card-face.uncommon{box-shadow:0 0 0 2px #68aa76,0 8px 22px rgba(0,0,0,.35)}.mf-card-face.rare{box-shadow:0 0 0 2px #3e81b4,0 8px 22px rgba(0,0,0,.35)}.mf-card-face.epic{box-shadow:0 0 0 2px #8b55c2,0 8px 22px rgba(0,0,0,.35)}.mf-card-face.mythic{box-shadow:0 0 0 2px #cf9d2e,0 8px 22px rgba(0,0,0,.35)}.mf-card-topline{display:grid;grid-template-columns:30px 1fr;gap:.35rem;align-items:center;z-index:1}.mf-card-cost{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#07111e;color:#f2d18a;border:1px solid #d9b85a;font-weight:800;font-family:system-ui,sans-serif;font-size:.86rem}.mf-card-title{text-transform:uppercase;letter-spacing:.04em;font-weight:800;font-size:.98rem;line-height:1.05;color:#1d160d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mf-card-subline{display:flex;justify-content:space-between;gap:.25rem;font-size:.61rem;text-transform:uppercase;letter-spacing:.06em;color:#543f20;z-index:1}.mf-card-art{height:32%;min-height:55px;border:2px solid #7d5a21;background:linear-gradient(135deg,#ebe3d2,#d7c8a8 45%,#b7a073);display:grid;place-items:center;text-transform:uppercase;letter-spacing:.14em;color:#7c641e;font-weight:800;font-size:.75rem;position:relative;z-index:1}.mf-card-art::after{content:"Artwork Pending";position:absolute;bottom:.3rem;right:.35rem;font-family:system-ui,sans-serif;font-size:.5rem;color:rgba(31,21,7,.55);letter-spacing:.08em}.mf-card-type{background:#0b1522;color:#f7e8b7;border-top:1px solid #d6a84f;border-bottom:1px solid #d6a84f;margin:0 -.12rem;padding:.22rem .35rem;font-size:.68rem;line-height:1.05;text-align:center;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1}.mf-card-domains{display:flex;gap:.18rem;flex-wrap:wrap;justify-content:center;min-height:18px;z-index:1}.mf-card-domains span{font-family:system-ui,sans-serif;font-size:.53rem;border:1px solid #7d5a21;border-radius:999px;padding:.06rem .28rem;background:rgba(255,255,255,.45);color:#3c2e15}.mf-card-rules{flex:1;background:rgba(255,251,237,.8);border:1px solid rgba(125,90,33,.45);padding:.32rem;font-size:.63rem;line-height:1.12;overflow:hidden;z-index:1}.mf-card-flavor{font-size:.55rem;font-style:italic;color:#f1d486;background:#07101b;margin:0 -.12rem -.05rem;padding:.22rem .35rem;min-height:1.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;z-index:1}.mf-card-footer{display:flex;justify-content:space-between;align-items:center;gap:.35rem;background:#07101b;color:#f1d486;margin:0 -.12rem -.12rem;padding:.26rem .4rem;font-family:system-ui,sans-serif;font-size:.61rem;z-index:1}.mf-card-footer b{font-size:.78rem}.mf-card-badges{position:absolute;left:.55rem;right:.55rem;bottom:1.85rem;display:flex;gap:.25rem;flex-wrap:wrap;z-index:2}.mf-card-badges span{background:rgba(6,17,29,.86);color:#f2d18a;border:1px solid #d6a84f;border-radius:999px;padding:.08rem .32rem;font-family:system-ui,sans-serif;font-size:.52rem}.mf-card-face.exhausted{transform:rotate(4deg);opacity:.72}.mf-card-face.spent{opacity:.65;filter:saturate(.6)}.mf-card-face.size-large{max-width:320px}.mf-card-face.size-normal{max-width:260px}.mf-card-face.size-collection{max-width:230px}.mf-card-face.size-builder{max-width:220px}.mf-card-face.size-hand{width:190px}.mf-card-face.size-board{width:155px}.mf-card-face.size-mini{width:110px;border-radius:11px;padding:.25rem;border-width:3px}.mf-card-face.size-mini .mf-card-title{font-size:.66rem}.mf-card-face.size-mini .mf-card-cost{width:21px;height:21px;font-size:.65rem}.mf-card-face.size-mini .mf-card-art{min-height:32px}.mf-card-face.size-mini .mf-card-type,.mf-card-face.size-mini .mf-card-rules,.mf-card-face.size-mini .mf-card-domains,.mf-card-face.size-mini .mf-card-flavor{display:none}.mf-card-actions{margin-top:.55rem;background:rgba(0,0,0,.25);border:1px solid var(--line);border-radius:14px;padding:.55rem}.mf-card-actions .qty{width:88px;max-width:100%}.mf-card-actions label{margin:0;color:var(--muted);font-size:.9rem}.mf-card-actions .btn,.mf-card-actions button{margin-top:.45rem}.mf-card-tooltip{display:none;position:absolute;left:50%;top:calc(100% + .6rem);transform:translateX(-50%);width:min(360px,90vw);background:#f7ecd0;color:#1d160d;border:3px solid #d6a84f;border-radius:14px;padding:.9rem;box-shadow:0 18px 55px rgba(0,0,0,.65);font-family:system-ui,sans-serif;text-align:left;z-index:200}.mf-card-hover-wrap.has-hover:hover .mf-card-tooltip{display:block}.mf-card-tooltip::before{content:"";position:absolute;top:-9px;left:50%;width:16px;height:16px;transform:translateX(-50%) rotate(45deg);background:#f7ecd0;border-left:3px solid #d6a84f;border-top:3px solid #d6a84f}.mf-card-details{font-size:.9rem;line-height:1.35}.mf-card-details hr{border:none;border-top:1px solid rgba(45,32,18,.3);margin:.55rem 0}.rules-full{white-space:normal}.flavor-full{font-family:Georgia,'Times New Roman',serif;font-style:italic;color:#714d12}.deck-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:1rem;align-items:start}.deck-counter{position:sticky;top:92px;background:linear-gradient(180deg,#241a37,#171021);border:1px solid var(--accent);border-radius:18px;padding:1rem;box-shadow:0 18px 50px rgba(0,0,0,.4);z-index:10}.deck-counter .total{font-size:3rem;color:var(--accent);font-weight:900;line-height:1}.deck-counter .legal-note{margin:.5rem 0;color:var(--muted)}.deck-builder-card.selected .mf-card-face{outline:3px solid var(--accent)}.builder-tools{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.builder-tools input{max-width:110px}.hand-limit-warning{border:1px solid var(--bad);background:rgba(255,119,119,.12);border-radius:14px;padding:1rem;margin:.75rem 0}.mulligan-panel{border:1px solid var(--accent);background:rgba(214,168,79,.1);border-radius:16px;padding:1rem;margin:1rem 0}.zone-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.hidden-card-back{width:110px;aspect-ratio:2/3;border-radius:12px;border:3px solid #d6a84f;background:radial-gradient(circle,#1c2c44,#06111d);display:grid;place-items:center;color:#d6a84f;font-family:Georgia,serif;font-weight:800;text-align:center;padding:.5rem;box-shadow:0 8px 22px rgba(0,0,0,.35)}

@media(max-width:900px){.topbar{align-items:flex-start;flex-direction:column}.filters{grid-template-columns:1fr}.container{padding:1rem}.table{font-size:.85rem}.deck-builder-layout{grid-template-columns:1fr}.deck-counter{position:sticky;top:76px}.mf-card-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr))}.mf-card-face.size-hand,.mf-card-face.size-board{width:145px}.mf-card-tooltip{position:fixed;left:50%;top:5rem;transform:translateX(-50%)}.match-status{top:120px}}
.mf-card-art.has-artwork{background-size:cover;background-position:center;background-repeat:no-repeat;color:transparent}
.mf-card-art.has-artwork::after{content:""}
.ajax-status{position:fixed;right:1rem;bottom:1rem;z-index:500;background:#07101b;color:#f2d18a;border:1px solid #d6a84f;border-radius:999px;padding:.65rem 1rem;box-shadow:0 10px 30px rgba(0,0,0,.45);display:none}.ajax-status.show{display:block}.pending-choice{border:2px solid var(--accent);background:linear-gradient(180deg,rgba(214,168,79,.16),rgba(28,23,40,.95));}.pending-choice .choice-card-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem}.pending-choice label.choice-card{display:block;cursor:pointer}.pending-choice input[type=checkbox]{width:auto;margin-right:.4rem}.admin-card-editor{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:1rem}.admin-card-editor textarea{min-height:110px}.art-preview{width:100%;aspect-ratio:2/3;border-radius:16px;border:2px solid var(--accent);background:#0b0810 center/cover no-repeat;display:grid;place-items:center;color:var(--muted);overflow:hidden}.card-edit-list{max-height:70vh;overflow:auto}.card-edit-list a{display:block;padding:.45rem .55rem;border-bottom:1px solid var(--line);text-decoration:none}.card-edit-list a.active{background:rgba(214,168,79,.16);color:#fff}
@media(max-width:900px){.admin-card-editor{grid-template-columns:1fr}}
.grid-form .wide-form{grid-column:1/-1}.grid-form label input[type=checkbox]{width:auto}

/* v0.3 searchable card editor and live match sync */
.improved-card-editor{grid-template-columns:360px minmax(0,1fr)}
.card-picker-panel{position:sticky;top:90px;align-self:start;max-height:calc(100vh - 120px);overflow:auto}
.card-picker-panel input[type=search]{width:100%;margin:.35rem 0 .65rem 0}
.picker-filters{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.65rem}
.card-picker-panel select[data-card-picker-select]{width:100%;min-height:460px;background:#130d1d;color:var(--text);border:1px solid var(--line);border-radius:14px;padding:.45rem;font-family:inherit}
.card-picker-panel select[data-card-picker-select] option{padding:.45rem .5rem;border-bottom:1px solid rgba(255,255,255,.06)}
.card-picker-panel select[data-card-picker-select] option:checked{background:linear-gradient(90deg,rgba(214,168,79,.45),rgba(214,168,79,.16));color:#fff}
.picker-actions{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.7rem}.editor-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem}.checkbox-label input{width:auto}.live-sync{position:fixed;right:1rem;top:5rem;z-index:460;background:rgba(7,16,27,.95);color:#9ee8a8;border:1px solid rgba(158,232,168,.7);border-radius:999px;padding:.45rem .8rem;font-size:.82rem;box-shadow:0 10px 30px rgba(0,0,0,.35)}.live-sync.warn{color:#f2d18a;border-color:#d6a84f}.live-sync.error{color:#ff9d9d;border-color:#ff7777}@media(max-width:900px){.improved-card-editor{grid-template-columns:1fr}.card-picker-panel{position:relative;top:auto;max-height:none}.card-picker-panel select[data-card-picker-select]{min-height:280px}.live-sync{top:auto;bottom:4.2rem;right:1rem}}

/* v0.4 gameplay UI refinements */
.match-status{position:relative!important;top:auto!important;z-index:auto!important}
.live-sync{display:none!important}

/* v0.5 result modal */
.match-result-overlay{position:fixed;inset:0;z-index:900;display:grid;place-items:center;background:rgba(5,3,10,.72);backdrop-filter:blur(4px);padding:1rem}
.match-result-modal{width:min(520px,92vw);border-radius:22px;border:2px solid var(--accent);background:linear-gradient(180deg,#2a203b,#15101f);box-shadow:0 30px 90px rgba(0,0,0,.75);padding:2rem;text-align:center;animation:mfPop .22s ease-out}.match-result-modal h2{font-size:clamp(2rem,5vw,3.5rem);margin:.25rem 0;color:var(--accent)}.match-result-modal.winner{border-color:#70d58b;box-shadow:0 0 0 2px rgba(112,213,139,.25),0 30px 90px rgba(0,0,0,.75)}.match-result-modal.winner h2{color:#70d58b}.match-result-modal.loser{border-color:#ff7777}.match-result-modal.loser h2{color:#ff8f8f}.match-result-modal .actions{justify-content:center;margin-top:1rem}@keyframes mfPop{from{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}

/* v0.6: Hover previews are now full, enlarged card faces instead of text boxes. */
.mf-card-tooltip{width:auto;max-width:min(390px,92vw);background:transparent;border:0;border-radius:0;padding:0;box-shadow:0 22px 70px rgba(0,0,0,.72);}
.mf-card-tooltip::before{display:none;}
.mf-card-tooltip .mf-card-hover-wrap{display:block;width:100%;}
.mf-card-face.size-popout{width:370px;max-width:min(370px,90vw);aspect-ratio:auto;min-height:555px;border-radius:20px;padding:.58rem;gap:.32rem;}
.mf-card-face.size-popout .mf-card-title{font-size:1.08rem;white-space:normal;}
.mf-card-face.size-popout .mf-card-cost{width:34px;height:34px;font-size:1rem;}
.mf-card-face.size-popout .mf-card-art{height:30%;min-height:120px;}
.mf-card-face.size-popout .mf-card-type{font-size:.75rem;white-space:normal;}
.mf-card-face.size-popout .mf-card-domains span{font-size:.6rem;}
.mf-card-face.size-popout .mf-card-rules{overflow:visible;font-size:.75rem;line-height:1.2;min-height:120px;}
.mf-card-face.size-popout .mf-card-flavor{white-space:normal;font-size:.63rem;}
.mf-card-face.size-popout .mf-card-footer{font-size:.7rem;}
.mf-card-face.size-popout .mf-card-footer b{font-size:.9rem;}
.combat-form select[multiple]{min-height:6.5rem;}

/* v0.6.2 card-library and collection pagination */
.filters.filters-wide{grid-template-columns:minmax(240px,2fr) repeat(4,minmax(135px,1fr)) auto auto;align-items:end}
.list-summary{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap;color:var(--muted)}
.list-summary b{color:var(--accent);font-size:1.2rem}.pagination{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin:1rem 0}.pagination .disabled{opacity:.45;cursor:not-allowed}.page-number{display:inline-flex;min-width:2.2rem;height:2.2rem;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:10px;background:#211a30;color:var(--text);text-decoration:none}.page-number.current{background:linear-gradient(180deg,#e2bb67,#9b6b22);color:#160f05;border-color:#f0c775;font-weight:800}.page-gap{color:var(--muted);padding:0 .25rem}@media(max-width:980px){.filters.filters-wide{grid-template-columns:1fr 1fr}.filters.filters-wide input{grid-column:1/-1}}@media(max-width:560px){.filters.filters-wide{grid-template-columns:1fr}}

/* v0.6.3 deck deletion UI */
.deck-actions {
    display: flex;
    align-items: center;
    gap: .5rem;
    flex-wrap: wrap;
    margin-top: .75rem;
}

.btn.danger {
    background: #8f2525;
    color: #fff;
    border-color: #6d1717;
}

.btn.danger:hover,
.btn.danger:focus {
    background: #741b1b;
}

.page-heading-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.delete-deck-form {
    margin: 0;
}

/* v0.6.4 test deck coverage tools */
.form-row{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.form-row label{min-width:220px}.coverage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.5rem;max-height:520px;overflow:auto;padding:.25rem}.coverage-chip{border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:12px;padding:.5rem .65rem;font-size:.88rem}.coverage-chip b{color:var(--accent)}.coverage-chip span{display:block;color:var(--muted);font-size:.76rem;margin-top:.12rem}

/* v0.7 smoother gameplay controls */
.zone-actions{margin:.45rem 0 .2rem;display:flex;gap:.5rem;flex-wrap:wrap}.mf-modal{position:fixed;inset:0;z-index:850;background:rgba(5,3,10,.72);backdrop-filter:blur(3px);padding:1.25rem;overflow:auto}.mf-modal-panel{max-width:1180px;margin:2rem auto;background:linear-gradient(180deg,#241a37,#171021);border:1px solid var(--accent);border-radius:22px;padding:1rem;box-shadow:0 30px 90px rgba(0,0,0,.75)}.modal-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem}.modal-heading h2{margin:0}.selectable-attacker .mf-card-face{cursor:pointer;transition:transform .12s ease, outline-color .12s ease}.selectable-attacker .mf-card-face:hover{outline:2px solid rgba(214,168,79,.75);transform:translateY(-2px)}.attack-selected .mf-card-face{outline:4px solid #70d58b!important;box-shadow:0 0 0 5px rgba(112,213,139,.16),0 12px 28px rgba(0,0,0,.45)}.ineligible-attacker .mf-card-face{cursor:not-allowed;filter:saturate(.7);opacity:.75}.declared-attacker .mf-card-face{outline:3px solid #f2d18a}.draggable-blocker .mf-card-face{cursor:grab}.dragging-blocker .mf-card-face{opacity:.55}.dropzone-attacker .mf-card-face{transition:box-shadow .12s ease, transform .12s ease}.block-drop-hover .mf-card-face{box-shadow:0 0 0 6px rgba(112,213,139,.28),0 18px 42px rgba(0,0,0,.5);transform:scale(1.03)}.activatable-card .mf-card-face{box-shadow:0 0 0 2px rgba(242,209,138,.15),0 8px 22px rgba(0,0,0,.35);cursor:pointer}.activatable-card .mf-card-face::after{content:'Click to activate';position:absolute;left:.45rem;right:.45rem;bottom:2.15rem;background:rgba(6,17,29,.86);border:1px solid rgba(214,168,79,.55);border-radius:999px;color:#f2d18a;font-size:.62rem;text-align:center;padding:.16rem .25rem;pointer-events:none;opacity:0;transition:opacity .12s ease}.activatable-card:hover .mf-card-face::after{opacity:1}.targeting-mode .target-candidate .mf-card-face{outline:3px dashed #70d58b;cursor:crosshair}.targeting-mode .mf-card-hover-wrap:not(.target-candidate){opacity:.72}.ajax-status.error{border-color:#ff7777;color:#ff9d9d}.quick-combat-panel{border:1px solid rgba(214,168,79,.55);background:rgba(214,168,79,.08)}.quick-combat-panel [data-selected-attackers]{display:none}.play-card-form{display:grid;gap:.35rem}.play-card-form select{max-width:100%;font-size:.75rem;padding:.35rem}.mf-card-hover-wrap{position:relative}.mf-card-face{position:relative}@media(max-width:700px){.mf-modal{padding:.5rem}.mf-modal-panel{margin:.5rem auto}.modal-heading{align-items:flex-start;flex-direction:column}.play-card-form{font-size:.8rem}}

/* v0.7.1 MTGO-inspired board, attached gear stacks, and click action menu */
.container:has(.mtgo-board){max-width:1680px;padding-left:1rem;padding-right:1rem}.match-status{background:linear-gradient(180deg,#201a2d,#15101f);border-color:rgba(214,168,79,.42)}.match-status h2{margin:.1rem 0 .35rem}.mtgo-board{display:grid;gap:.75rem;padding:.75rem;border:1px solid rgba(214,168,79,.28);border-radius:22px;background:linear-gradient(180deg,rgba(8,14,22,.78),rgba(16,13,24,.88)),radial-gradient(circle at 50% 50%,rgba(214,168,79,.10),transparent 58%);box-shadow:inset 0 0 60px rgba(0,0,0,.25),0 18px 60px rgba(0,0,0,.25)}.mtgo-board .player-area{display:grid;grid-template-columns:minmax(220px,285px) minmax(0,1fr);gap:.55rem .85rem;padding:.75rem;border-radius:18px;background:linear-gradient(180deg,rgba(31,26,43,.92),rgba(21,17,31,.95));border-color:rgba(255,255,255,.08)}.mtgo-board .player-area.opponent-lane{background:linear-gradient(180deg,rgba(24,25,39,.94),rgba(16,17,27,.97))}.mtgo-board .player-area.my-lane{background:linear-gradient(180deg,rgba(33,27,44,.96),rgba(20,16,31,.98));border-color:rgba(214,168,79,.24)}.mtgo-board .player-area.active{outline:2px solid rgba(214,168,79,.8);box-shadow:0 0 0 5px rgba(214,168,79,.08)}.mtgo-board .player-area>h2{grid-column:1/-1;margin:.05rem 0;font-size:1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.mtgo-board .player-area>h2:after{content:'Battlefield Lane';font-size:.7rem;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.mtgo-board .player-area>.grid.two{grid-column:1;grid-row:2 / span 8;grid-template-columns:1fr!important;gap:.65rem;align-self:start}.mtgo-board .player-area>.zone-title,.mtgo-board .player-area>.mini-zone,.mtgo-board .player-area>.battlefield,.mtgo-board .player-area>.hand,.mtgo-board .player-area>h3,.mtgo-board .player-area>.combat-form,.mtgo-board .player-area>form{grid-column:2}.mtgo-board .zone-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.05rem 0 -.15rem;padding:.2rem .5rem;border-radius:10px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.06)}.mtgo-board .zone-title h3,.mtgo-board .player-area>h3{margin:.05rem 0;font-size:.92rem;color:#f2d18a}.mtgo-board .battlefield{min-height:225px;align-content:start;padding:.7rem;border-radius:18px;background:linear-gradient(180deg,rgba(7,16,27,.55),rgba(10,8,16,.45));border:1px solid rgba(214,168,79,.16);box-shadow:inset 0 0 24px rgba(0,0,0,.28)}.mtgo-board .mini-zone{min-height:74px;padding:.45rem;border-radius:14px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.06)}.mtgo-board .hand{padding:.55rem;border-radius:16px;background:rgba(0,0,0,.24);border:1px solid rgba(214,168,79,.16);align-items:flex-end}.mtgo-board .opponent-lane .hand{min-height:84px}.mtgo-board .zones span{font-size:.82rem}.mtgo-board .mf-card-face.size-normal{width:220px;max-width:100%}.mtgo-board .mf-card-face.size-hand{width:156px}.mtgo-board .mf-card-face.size-board{width:145px}.mtgo-board .mf-card-face.size-mini{width:92px}.mtgo-board .mf-card-grid.board{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.65rem}.mtgo-board .mf-card-grid.compact{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:.58rem}.battle-stack{position:relative;width:155px;min-height:258px;padding-top:30px;display:inline-block}.battle-stack .stacked-main-card{position:relative;z-index:5}.battle-stack .attached-gear-card{position:absolute;top:0;left:18px;z-index:2;filter:drop-shadow(0 8px 12px rgba(0,0,0,.42));transform:rotate(-4deg);transition:transform .12s ease, z-index .12s ease}.battle-stack .attached-gear-card.gear-offset-1{left:42px;top:4px;transform:rotate(5deg)}.battle-stack .attached-gear-card.gear-offset-2{left:66px;top:8px;transform:rotate(10deg)}.battle-stack .attached-gear-card:hover{z-index:90;transform:translateY(-8px) rotate(0deg)}.battle-stack .attached-gear-card .mf-card-face{box-shadow:0 0 0 2px #b99143,0 8px 18px rgba(0,0,0,.42)}.battle-stack .attached-gear-card .mf-card-badges{bottom:.35rem}.multi-action-card .mf-card-face{cursor:pointer}.multi-action-card .mf-card-face::after{content:'Choose action';position:absolute;left:.45rem;right:.45rem;bottom:2.15rem;background:rgba(6,17,29,.88);border:1px solid rgba(112,213,139,.7);border-radius:999px;color:#d8ffe0;font-size:.62rem;text-align:center;padding:.16rem .25rem;pointer-events:none;opacity:0;transition:opacity .12s ease}.multi-action-card:hover .mf-card-face::after{opacity:1}.card-action-menu{position:fixed;z-index:1200;display:grid;gap:.4rem;min-width:215px;padding:.65rem;border-radius:16px;background:linear-gradient(180deg,#261d36,#110d19);border:1px solid var(--accent);box-shadow:0 20px 70px rgba(0,0,0,.68)}.card-action-menu .card-action-title{font-weight:800;color:#f2d18a;border-bottom:1px solid rgba(214,168,79,.25);padding:0 0 .35rem;margin-bottom:.1rem}.card-action-menu .btn{width:100%;text-align:left}.card-action-menu .btn:hover{border-color:#f2d18a;background:#423459}@media(max-width:1050px){.mtgo-board .player-area{grid-template-columns:1fr}.mtgo-board .player-area>.grid.two,.mtgo-board .player-area>.zone-title,.mtgo-board .player-area>.mini-zone,.mtgo-board .player-area>.battlefield,.mtgo-board .player-area>.hand,.mtgo-board .player-area>h3,.mtgo-board .player-area>.combat-form,.mtgo-board .player-area>form{grid-column:1;grid-row:auto}.mtgo-board .player-area>.grid.two{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}.battle-stack{width:145px}.mtgo-board .mf-card-face.size-board{width:138px}}

/* v0.7.2 condensed MTGO-style board refinements */
.compact-phase-panel{position:static;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.75rem 1rem}.compact-phase-panel h2{margin:.15rem .5rem .15rem 0;font-size:1.1rem}.compact-phase-panel p{margin:.15rem .5rem .15rem 0}.condensed-board{gap:.65rem}.condensed-player-row{padding:.75rem;border-radius:14px}.player-lane-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.player-lane-header h2{font-size:1.05rem;margin:0}.lane-meta{color:var(--muted);font-size:.88rem}.condensed-lane-grid{display:grid;grid-template-columns:minmax(145px,170px) 1fr;gap:.8rem;align-items:start}.god-zone-compact{display:grid;gap:.45rem}.god-zone-compact .mf-card-face.size-board{width:140px}.battle-zone-compact{min-width:0}.compact-title{margin:.1rem 0 .35rem}.compact-title h3{font-size:.95rem;margin:0}.compact-battlefield{display:flex;flex-wrap:wrap;gap:.5rem;min-height:135px;padding:.35rem;background:rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.06);border-radius:12px}.compact-battlefield .mf-card-face.size-board{width:132px}.compact-hand .mf-card-face.size-hand{width:150px}.hand-drawer{margin-top:.5rem}.hand-drawer summary{cursor:pointer;color:var(--accent);font-weight:700}.mf-card-subline{align-items:center}.mf-card-favor{background:#0b1522;color:#f1d486;border:1px solid #d6a84f;border-radius:999px;padding:.02rem .32rem;font-family:system-ui,sans-serif;font-size:.52rem;white-space:nowrap}.zone-piles-row{display:flex;gap:.55rem;align-items:start;justify-content:flex-start}.zone-pile{position:relative;min-width:66px}.pile-label{font-size:.72rem;color:var(--muted);margin-bottom:.18rem}.compact-back,.empty-pile-card{width:58px;height:82px;border-radius:8px;font-size:.48rem;display:grid;place-items:center}.empty-pile-card{border:2px dashed var(--line);color:var(--muted);background:rgba(0,0,0,.18)}.discard-pile{z-index:8}.discard-fan{display:none;position:absolute;left:0;top:100%;width:340px;min-height:150px;background:rgba(10,8,16,.95);border:1px solid var(--line);border-radius:14px;padding:.7rem;box-shadow:0 18px 50px rgba(0,0,0,.6);z-index:220}.discard-pile:hover .discard-fan{display:block}.discard-fan-card{position:absolute;left:calc(.7rem + var(--i) * 18px);top:calc(.7rem + var(--i) * 6px);transition:transform .12s ease}.discard-fan-card:hover{z-index:240;transform:translateY(-12px)}.discard-fan .mf-card-tooltip{left:250px;top:0;transform:none}.essence-stack-grid{display:flex;flex-wrap:wrap;gap:.8rem;min-height:90px}.essence-stack-wrap{min-width:90px}.essence-stack-label{font-size:.72rem;color:var(--muted);margin-bottom:.2rem}.essence-stack{position:relative;width:92px;height:110px}.essence-stack-card{position:absolute;left:calc(var(--i) * 7px);top:calc(var(--i) * 5px);transition:transform .12s ease}.essence-stack-card:hover{z-index:120;transform:translateY(-10px)}.essence-stack-card .mf-card-face.size-mini{width:72px}.essence-pay-picker{border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.22);padding:.4rem;margin:.35rem 0;max-height:115px;overflow:auto}.essence-pay-picker b{display:block;color:var(--accent);font-size:.8rem;margin-bottom:.25rem}.essence-pay-picker label{display:block;margin:.15rem 0;font-size:.75rem;color:var(--muted)}.essence-pay-picker input{width:auto;margin-right:.25rem}.editor-fieldset{border:1px solid var(--line);border-radius:14px;padding:.8rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.35rem}.editor-fieldset legend{color:var(--accent);font-weight:800}.checkbox-label input[type="checkbox"]{width:auto;margin-right:.35rem}.battle-stack{position:relative}.battle-stack .attached-gear-card{top:-22px}.battle-stack .stacked-main-card{position:relative;z-index:3}@media (max-width:900px){.condensed-lane-grid{grid-template-columns:1fr}.god-zone-compact{display:flex;align-items:flex-start;gap:.8rem}.compact-battlefield .mf-card-face.size-board{width:120px}.compact-hand .mf-card-face.size-hand{width:135px}}

/* v0.7.3 match board layout refinements */
.condensed-board.v073-board-marker{}
.condensed-player-row{padding:.55rem .65rem;}
.player-lane-header{margin-bottom:.35rem;}
.condensed-lane-grid{grid-template-columns:128px minmax(0,1fr);gap:.65rem;align-items:start;}
.god-zone-compact{display:flex;flex-direction:column;gap:.38rem;align-items:flex-start;}
.god-zone-compact .mf-card-face.size-board{width:116px;}
.zone-piles-row{flex-direction:column;gap:.34rem;align-items:flex-start;}
.zone-pile{min-width:76px;}
.pile-label{font-size:.68rem;line-height:1;margin-bottom:.16rem;color:#d8c7a2;}
.compact-back,.empty-pile-card{width:62px;height:93px;border-radius:9px;font-size:.46rem;}
.discard-pile .mf-card-face.size-mini{width:62px;}
.discard-fan{left:74px;top:-6px;width:360px;min-height:170px;}
.discard-fan-card{left:calc(.7rem + var(--i) * 20px);top:calc(.7rem + var(--i) * 7px);}
.v073-battle-zone{display:flex;flex-direction:column;gap:.38rem;min-width:0;}
.opponent-lane .v073-battle-zone .essence-zone-compact{order:1;}
.opponent-lane .v073-battle-zone .battlefield-zone-compact{order:2;}
.my-lane .v073-battle-zone .battlefield-zone-compact{order:1;}
.my-lane .v073-battle-zone .essence-zone-compact{order:2;}
.battlefield-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(126px,20%);gap:.45rem;align-items:stretch;}
.battlefield-column{background:rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:.32rem;min-height:122px;}
.battlefield-side-permanents{background:rgba(12,18,28,.4);}
.battle-column-label{font-size:.66rem;color:#d8c7a2;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .25rem .1rem;}
.compact-battlefield,.side-permanent-row{display:flex;flex-wrap:wrap;gap:.38rem;align-items:flex-start;min-height:96px;padding:0;background:transparent;border:0;border-radius:0;}
.compact-battlefield .mf-card-face.size-board,.side-permanent-row .mf-card-face.size-board,.essence-stack-card .mf-card-face.size-board{width:112px;}
.battle-stack{width:112px;}
.battle-stack .attached-gear-card{top:-18px;left:10px;}
.battle-stack .attached-gear-card .mf-card-face.size-mini{width:94px;}
.essence-zone-compact{background:rgba(0,0,0,.10);border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:.32rem;}
.essence-stack-grid{display:flex;flex-wrap:wrap;gap:1.15rem;min-height:120px;align-items:flex-start;}
.essence-stack-wrap{min-width:140px;}
.essence-stack-label{font-size:.68rem;margin-bottom:.18rem;color:#d8c7a2;}
.essence-stack{position:relative;width:150px;height:146px;}
.essence-stack-card{position:absolute;left:calc(var(--i) * 12px);top:calc(var(--i) * 9px);}
.essence-stack-card:hover{z-index:160;transform:translateY(-8px) scale(1.02);}
.hand-drawer{margin-top:.35rem;}
.hand-drawer[open] .compact-hand{display:flex;flex-direction:row;flex-wrap:wrap;gap:.45rem;align-items:flex-start;}
.compact-hand .mf-card-face.size-hand{width:126px;}
.quick-combat-panel,.combat-form{margin-top:.4rem;padding:.45rem;border-radius:12px;}
.quick-combat-panel h3,.combat-form h3{font-size:.95rem;margin:.1rem 0;}
.quick-combat-panel p,.combat-form p{margin:.15rem 0 .35rem;}
@media (max-width:1050px){.battlefield-split{grid-template-columns:1fr}.battlefield-side-permanents{min-height:95px}.condensed-lane-grid{grid-template-columns:118px minmax(0,1fr)}.compact-battlefield .mf-card-face.size-board,.side-permanent-row .mf-card-face.size-board,.essence-stack-card .mf-card-face.size-board{width:104px}.battle-stack{width:104px}.essence-stack{width:142px;height:138px}.essence-stack-wrap{min-width:132px}}
@media (max-width:760px){.condensed-lane-grid{grid-template-columns:1fr}.god-zone-compact{flex-direction:row;gap:.55rem;align-items:flex-start}.zone-piles-row{flex-direction:row}.compact-hand .mf-card-face.size-hand{width:118px}.discard-fan{left:0;top:100%;width:min(330px,86vw)}}

/* v0.7.4 match layout polish */
.v074-lane-grid{grid-template-columns:minmax(205px,235px) minmax(0,1fr);align-items:start;}
.v074-sidebar{display:flex!important;flex-direction:column;align-items:flex-start;gap:.48rem;}
.v074-player-name{margin:0 0 .12rem!important;font-size:1.05rem!important;line-height:1.15;color:#f7f1ff;text-align:left;}
.v074-sidebar .mf-card-face.size-normal{width:205px;max-width:100%;}
.v074-sidebar .zone-piles-row{flex-direction:column;gap:.46rem;width:100%;}
.v074-sidebar .zone-pile{min-width:104px;}
.v074-sidebar .pile-label{font-size:.78rem;color:#f2d18a;font-weight:700;margin-bottom:.22rem;}
.v074-sidebar .compact-back,.v074-sidebar .empty-pile-card{width:96px;height:144px;border-radius:12px;font-size:.62rem;}
.v074-sidebar .discard-pile .mf-card-face.size-mini{width:96px;}
.v074-sidebar .discard-fan{left:106px;top:0;width:390px;min-height:180px;}
.v074-sidebar .discard-fan-card .mf-card-face.size-mini{width:92px;}
.hand-zone-horizontal{grid-column:1 / -1;margin-top:.55rem;border-top:1px solid rgba(255,255,255,.07);padding-top:.5rem;}
.hand-row-title{font-size:.86rem;font-weight:800;color:#f2d18a;margin-bottom:.35rem;}
.compact-hand{display:flex!important;flex-direction:row;flex-wrap:nowrap!important;gap:.58rem;align-items:flex-end;overflow-x:auto;overflow-y:visible;padding:.5rem;border-radius:14px;background:rgba(0,0,0,.20);border:1px solid rgba(214,168,79,.14);scrollbar-width:thin;}
.compact-hand .mf-card-face.size-hand{width:145px;flex:0 0 auto;}
.condensed-player-row{padding:.68rem;}
.v073-battle-zone .zone-title{margin-top:0;}
@media (max-width:1050px){.v074-lane-grid{grid-template-columns:1fr}.v074-sidebar{display:grid!important;grid-template-columns:auto 1fr;align-items:start}.v074-player-name{grid-column:1/-1}.v074-sidebar .zone-piles-row{flex-direction:row}.v074-sidebar .mf-card-face.size-normal{width:185px}.v074-sidebar .compact-back,.v074-sidebar .empty-pile-card{width:82px;height:123px}.v074-sidebar .discard-pile .mf-card-face.size-mini{width:82px}.compact-hand .mf-card-face.size-hand{width:132px}}

/* v0.7.5 board space and pile sizing polish */
.container:has(.mtgo-board){max-width:1900px;padding-left:.75rem;padding-right:.75rem;}
.v074-lane-grid{
    grid-template-columns:minmax(225px,245px) minmax(0,1fr);
    gap:1rem;
    align-items:start;
    width:100%;
}
.v074-sidebar{width:100%;}
.v074-sidebar .mf-card-face.size-normal{width:205px;max-width:205px;}
.v074-sidebar .zone-piles-row{width:205px;gap:.62rem;}
.v074-sidebar .zone-pile{min-width:205px;width:205px;}
.v074-sidebar .compact-back,
.v074-sidebar .empty-pile-card{
    width:205px;
    height:307px;
    border-radius:16px;
    font-size:.9rem;
    letter-spacing:.08em;
    text-align:center;
}
.v074-sidebar .discard-pile .mf-card-face.size-mini{width:205px;border-radius:16px;}
.v074-sidebar .discard-fan{left:215px;top:0;width:520px;min-height:245px;}
.v074-sidebar .discard-fan-card .mf-card-face.size-mini{width:126px;}
.v073-battle-zone{width:100%;min-width:0;display:flex;flex-direction:column;gap:.7rem;}
.v073-battle-zone .zone-title{padding:.35rem .65rem;}
.battlefield-zone-compact,.essence-zone-compact{width:100%;min-width:0;}
.battlefield-split{
    width:100%;
    grid-template-columns:minmax(0,1fr) minmax(220px,24%);
    gap:.8rem;
}
.battlefield-column{
    min-height:220px;
    padding:.62rem;
}
.compact-battlefield,.side-permanent-row{
    min-height:178px;
    gap:.72rem;
}
.compact-battlefield .mf-card-face.size-board,
.side-permanent-row .mf-card-face.size-board,
.essence-stack-card .mf-card-face.size-board{width:142px;}
.battle-stack{width:142px;min-height:244px;padding-top:34px;}
.battle-stack .attached-gear-card{top:-12px;left:16px;}
.battle-stack .attached-gear-card .mf-card-face.size-mini{width:112px;}
.essence-zone-compact{
    padding:.55rem;
    min-height:178px;
}
.essence-stack-grid{
    gap:1.85rem;
    min-height:168px;
    align-items:flex-start;
}
.essence-stack-wrap{min-width:175px;}
.essence-stack{width:185px;height:174px;}
.essence-stack-card{left:calc(var(--i) * 15px);top:calc(var(--i) * 11px);}
.hand-zone-horizontal{width:100%;}
.compact-hand{
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    width:100%;
    max-width:100%;
    overflow-x:auto;
}
.compact-hand .mf-card-face.size-hand{width:150px;}
.condensed-player-row{padding:.75rem .85rem;}
@media (max-width:1200px){
    .v074-lane-grid{grid-template-columns:minmax(190px,210px) minmax(0,1fr);}
    .v074-sidebar .mf-card-face.size-normal{width:185px;max-width:185px;}
    .v074-sidebar .zone-piles-row,.v074-sidebar .zone-pile{width:185px;min-width:185px;}
    .v074-sidebar .compact-back,.v074-sidebar .empty-pile-card{width:185px;height:278px;}
    .v074-sidebar .discard-pile .mf-card-face.size-mini{width:185px;}
    .compact-battlefield .mf-card-face.size-board,.side-permanent-row .mf-card-face.size-board,.essence-stack-card .mf-card-face.size-board{width:128px;}
    .battle-stack{width:128px;}
    .essence-stack-wrap{min-width:160px;}.essence-stack{width:168px;height:160px;}
}
@media (max-width:850px){
    .v074-lane-grid{grid-template-columns:1fr;}
    .v074-sidebar{display:grid!important;grid-template-columns:auto 1fr;gap:.65rem;}
    .v074-player-name{grid-column:1/-1;}
    .v074-sidebar .zone-piles-row{flex-direction:row;width:auto;}
    .v074-sidebar .zone-pile{width:128px;min-width:128px;}
    .v074-sidebar .mf-card-face.size-normal{width:170px;max-width:170px;}
    .v074-sidebar .compact-back,.v074-sidebar .empty-pile-card{width:128px;height:192px;font-size:.65rem;}
    .v074-sidebar .discard-pile .mf-card-face.size-mini{width:128px;}
    .v074-sidebar .discard-fan{left:0;top:100%;width:min(520px,88vw);}
    .battlefield-split{grid-template-columns:1fr;}
}

/* v0.7.6 board cleanup and layout repair */
.mf-card-topline.no-cost{
    grid-template-columns:1fr;
}
.mf-card-face.no-cost-card .mf-card-title{
    padding-left:.05rem;
}
/* Hide status badges that were used for Ready/Exhausted/Top/Spent labels while keeping owned/quantity badges elsewhere. */
.mf-card-badges:empty{display:none;}
/* Keep card state visual, but remove the harsh rotation that made exhausted cards feel like a separate badge/status treatment. */
.mf-card-face.exhausted{transform:none;opacity:.78;}
.mf-card-face.spent{opacity:.55;filter:saturate(.55) brightness(.8);}

/* Remove old helper-text spacing and let the field fill the right side cleanly. */
.mtgo-board .zone-title,
.v073-battle-zone .zone-title,
.compact-title{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:.5rem;
    margin:0 0 .4rem;
    padding:.25rem .45rem;
    background:rgba(0,0,0,.16);
    border:1px solid rgba(214,168,79,.11);
    border-radius:10px;
}
.compact-title h3{margin:0;color:#f2d18a;font-size:.9rem;line-height:1.1;}

.container:has(.mtgo-board){max-width:none;width:100%;padding-left:.5rem;padding-right:.5rem;}
.mtgo-board{width:100%;box-sizing:border-box;}
.mtgo-board .player-area.condensed-player-row{
    display:block;
    width:100%;
    min-width:0;
    overflow:visible;
}
.condensed-player-row .v074-lane-grid{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:1rem;
    align-items:start;
    width:100%;
    min-width:0;
}
.v074-sidebar{width:220px;min-width:220px;max-width:220px;}
.v074-sidebar .mf-card-face.size-normal{width:205px;max-width:205px;}
.v074-sidebar .zone-piles-row,
.v074-sidebar .zone-pile{width:205px;min-width:205px;max-width:205px;}
.v074-sidebar .compact-back,
.v074-sidebar .empty-pile-card,
.v074-sidebar .discard-pile .mf-card-face.size-mini{width:205px;}
.v073-battle-zone{
    width:100%;
    min-width:0;
    max-width:none;
    display:grid;
    grid-template-rows:auto auto;
    gap:.75rem;
    align-self:stretch;
}
.battlefield-zone-compact,
.essence-zone-compact{
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
}
.battlefield-split{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(240px,24%);
    gap:.85rem;
    width:100%;
    min-width:0;
    align-items:stretch;
}
.battlefield-column{
    min-width:0;
    min-height:235px;
    padding:.65rem;
}
.compact-battlefield,
.side-permanent-row{
    width:100%;
    min-width:0;
    min-height:190px;
    display:flex;
    flex-wrap:wrap;
    align-content:flex-start;
    justify-content:flex-start;
    gap:.75rem;
}
.battle-column-label{
    color:#f2d18a;
    opacity:.85;
    font-size:.7rem;
    line-height:1;
    margin:0 0 .45rem;
    white-space:nowrap;
}
.essence-zone-compact{min-height:185px;}
.essence-stack-grid{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:flex-start;
    gap:2rem;
    width:100%;
    min-width:0;
}
.essence-stack-wrap{min-width:190px;}
.essence-stack{width:200px;height:185px;}
.essence-stack-card{left:calc(var(--i) * 17px);top:calc(var(--i) * 12px);}
.compact-battlefield .mf-card-face.size-board,
.side-permanent-row .mf-card-face.size-board,
.essence-stack-card .mf-card-face.size-board{width:142px;}
.hand-zone-horizontal{width:100%;min-width:0;}
.compact-hand{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:flex-end;
    gap:.6rem;
    overflow-x:auto;
    overflow-y:visible;
    width:100%;
    max-width:100%;
}
.compact-hand .mf-card-hover-wrap{flex:0 0 auto;}

@media (max-width:1200px){
    .condensed-player-row .v074-lane-grid{grid-template-columns:200px minmax(0,1fr);}
    .v074-sidebar{width:200px;min-width:200px;max-width:200px;}
    .v074-sidebar .mf-card-face.size-normal{width:185px;max-width:185px;}
    .v074-sidebar .zone-piles-row,.v074-sidebar .zone-pile{width:185px;min-width:185px;max-width:185px;}
    .v074-sidebar .compact-back,.v074-sidebar .empty-pile-card,.v074-sidebar .discard-pile .mf-card-face.size-mini{width:185px;}
    .battlefield-split{grid-template-columns:minmax(0,1fr) minmax(200px,26%);}
    .compact-battlefield .mf-card-face.size-board,.side-permanent-row .mf-card-face.size-board,.essence-stack-card .mf-card-face.size-board{width:128px;}
}
@media (max-width:850px){
    .condensed-player-row .v074-lane-grid{grid-template-columns:1fr;}
    .v074-sidebar{width:100%;min-width:0;max-width:none;display:grid!important;grid-template-columns:auto 1fr;gap:.65rem;}
    .v074-player-name{grid-column:1/-1;}
    .v074-sidebar .zone-piles-row{flex-direction:row;width:auto;}
    .v074-sidebar .zone-pile{width:128px;min-width:128px;max-width:128px;}
    .v074-sidebar .compact-back,.v074-sidebar .empty-pile-card,.v074-sidebar .discard-pile .mf-card-face.size-mini{width:128px;}
    .battlefield-split{grid-template-columns:1fr;}
}

/* v0.7.7 card back customization */
.hidden-card-back.custom-card-back{
    background-color:#06111d;
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;
    color:transparent;
    text-indent:-9999px;
}
.admin-card-back-row{display:grid;grid-template-columns:minmax(180px,260px) minmax(260px,1fr);gap:1.25rem;align-items:start;}
.admin-card-back-preview{width:190px!important;height:auto!important;aspect-ratio:2/3;font-size:.8rem;}
.stacked-form{display:grid;gap:.75rem;max-width:420px;}
.stacked-form input[type="file"]{margin-top:.35rem;}
@media(max-width:760px){.admin-card-back-row{grid-template-columns:1fr}.admin-card-back-preview{width:150px!important}}


/* v0.7.9 essence and booster reveal cleanup */
.essence-stack-card .mf-card-face.spent{
    opacity:1 !important;
    filter:none !important;
}
.essence-stack-card .mf-card-face.exhausted{
    opacity:1 !important;
    filter:none !important;
}
.booster-open-section{overflow:visible;}
.booster-reveal-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(170px,1fr));
    gap:1rem;
    align-items:start;
    margin:1rem 0;
}
.booster-reveal-card{
    all:unset;
    display:block;
    position:relative;
    width:100%;
    max-width:220px;
    aspect-ratio:2/3;
    cursor:pointer;
    perspective:1000px;
    border-radius:16px;
}
.booster-reveal-card:focus-visible{
    outline:3px solid var(--accent);
    outline-offset:5px;
}
.booster-reveal-face{
    position:absolute;
    inset:0;
    display:block;
    backface-visibility:hidden;
    transform-style:preserve-3d;
    transition:transform .35s ease;
}
.booster-reveal-front{
    transform:rotateY(180deg);
}
.booster-reveal-card.revealed .booster-reveal-back{
    transform:rotateY(180deg);
}
.booster-reveal-card.revealed .booster-reveal-front{
    transform:rotateY(0deg);
}
.booster-reveal-back .hidden-card-back,
.hidden-card-back.booster-card-back{
    width:100%;
    height:100%;
    border:4px solid #1a1410;
    box-shadow:0 0 0 2px var(--gold),0 8px 22px rgba(0,0,0,.35);
    border-radius:16px;
}
.booster-reveal-front .mf-card-hover-wrap,
.booster-reveal-front .mf-card-face{
    width:100%;
    max-width:none;
}
.booster-reveal-card:not(.revealed) .booster-reveal-front{
    pointer-events:none;
}
@media (max-width:700px){
    .booster-reveal-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));}
}

/* v0.8 click-to-play hand cards and booster hover cleanup */
.clickable-hand-card{cursor:pointer;transition:transform .12s ease, filter .12s ease;}
.clickable-hand-card:hover{transform:translateY(-8px);filter:brightness(1.05);}
body.targeting-mode [data-target-uid].target-candidate .mf-card-face,
body.targeting-mode [data-target-uid].target-candidate.mf-card-hover-wrap .mf-card-face{
    outline:3px solid #7fd1ff;
    outline-offset:3px;
    box-shadow:0 0 0 2px #7fd1ff,0 0 22px rgba(127,209,255,.55),0 8px 22px rgba(0,0,0,.35);
    cursor:crosshair;
}
body.passive-targeting-mode [data-target-uid].target-candidate .mf-card-face{
    outline-color:#ffd36d;
    box-shadow:0 0 0 2px #ffd36d,0 0 22px rgba(255,211,109,.55),0 8px 22px rgba(0,0,0,.35);
}
body.essence-select-mode [data-essence-uid].essence-candidate .mf-card-face{
    outline:3px solid #70d58b;
    outline-offset:3px;
    cursor:pointer;
}
body.essence-select-mode [data-essence-uid].essence-pay-selected .mf-card-face{
    outline:4px solid #f2d18a;
    outline-offset:5px;
    box-shadow:0 0 0 2px #f2d18a,0 0 22px rgba(242,209,138,.65),0 8px 22px rgba(0,0,0,.35);
}
.booster-reveal-card .mf-card-tooltip{display:none!important;}
.booster-reveal-card .mf-card-hover-wrap.has-hover:hover{z-index:auto;}

/* v0.8.1: cleaner Essence stacks and simpler booster reveal */
.essence-stack-grid{
    gap:2.6rem !important;
}
.essence-stack-wrap{
    min-width:165px !important;
}
.essence-stack{
    width:165px !important;
    height:222px !important;
    overflow:visible;
}
.essence-stack-card{
    left:calc(var(--i) * 4px) !important;
    top:calc(var(--i) * 3px) !important;
    opacity:1 !important;
    filter:none !important;
}
.essence-stack-card .mf-card-face,
.essence-stack-card .mf-card-face.spent,
.essence-stack-card .mf-card-face.exhausted{
    opacity:1 !important;
    filter:none !important;
}
.essence-stack-card .mf-card-face.size-board{
    width:142px !important;
}
.essence-stack-card:hover{
    z-index:240 !important;
    transform:translateY(-10px) scale(1.03) !important;
}

.booster-reveal-card{
    perspective:none !important;
    transform:none !important;
    overflow:visible;
}
.booster-reveal-face{
    transition:none !important;
    transform:none !important;
    backface-visibility:visible !important;
}
.booster-reveal-front{
    display:none !important;
    transform:none !important;
}
.booster-reveal-back{
    display:block !important;
    transform:none !important;
}
.booster-reveal-card.revealed .booster-reveal-back{
    display:none !important;
    transform:none !important;
}
.booster-reveal-card.revealed .booster-reveal-front{
    display:block !important;
    transform:none !important;
}
.booster-reveal-card.revealed{
    cursor:default;
}

/* v0.8.2: cleaner card hover and Essence stacks */
.hand-zone-horizontal,
.compact-hand,
.hand,
.player-area,
.condensed-player-row,
.v073-battle-zone,
.battle-zone-compact {
  overflow: visible !important;
}

.mf-card-tooltip {
  position: fixed !important;
  left: 12px;
  top: 12px;
  transform: none !important;
  width: min(370px, calc(100vw - 24px));
  max-height: calc(100vh - 24px);
  overflow: auto;
  z-index: 10000 !important;
  pointer-events: none;
}
.mf-card-tooltip::before { display: none !important; }
.mf-card-tooltip .mf-card-face.size-popout { max-width: 340px; }

.essence-stack-grid {
  gap: 1.25rem !important;
  align-items: flex-start !important;
  min-height: 218px !important;
}
.essence-stack-wrap {
  min-width: 168px !important;
}
.essence-stack-label {
  font-size: .72rem !important;
  color: #f2d18a !important;
  margin-bottom: .32rem !important;
  white-space: nowrap;
}
.essence-stack {
  position: relative !important;
  width: 168px !important;
  height: 198px !important;
  cursor: pointer;
  overflow: visible !important;
}
.essence-stack::before,
.essence-stack::after {
  content: "";
  position: absolute;
  width: 142px;
  aspect-ratio: 2 / 3;
  border-radius: 14px;
  background: linear-gradient(180deg,#0b1522,#07101b);
  border: 3px solid #1a1410;
  box-shadow: 0 0 0 2px rgba(214,168,79,.62),0 7px 18px rgba(0,0,0,.32);
  pointer-events: none;
}
.essence-stack::before { left: 9px; top: 8px; z-index: 0; }
.essence-stack::after { left: 18px; top: 16px; z-index: 1; }
.essence-stack[data-essence-stack-count="1"]::before,
.essence-stack[data-essence-stack-count="1"]::after { display: none; }
.essence-stack[data-essence-stack-count="2"]::after { display: none; }
.essence-stack .essence-stack-card {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  z-index: 3 !important;
  transform: none !important;
}
.essence-stack .essence-stack-card:hover {
  transform: translateY(-4px) !important;
}
.essence-stack-card .mf-card-face.size-board {
  width: 142px !important;
}
.essence-stack-card .mf-card-face.spent {
  opacity: 1 !important;
  filter: none !important;
}
.essence-stack.essence-candidate,
.essence-stack .essence-candidate {
  outline: 2px solid #70d58b;
  outline-offset: 4px;
  border-radius: 16px;
}
.essence-stack.essence-pay-selected::before,
.essence-stack.essence-pay-selected::after,
.essence-stack .essence-pay-selected .mf-card-face,
.essence-stack.essence-pay-selected .mf-card-face {
  box-shadow: 0 0 0 3px #70d58b,0 10px 26px rgba(0,0,0,.4) !important;
}
.essence-stack-selected-badge {
  position: absolute;
  right: 4px;
  bottom: 4px;
  z-index: 20;
  background: #70d58b;
  color: #07101b;
  border: 1px solid #c3ffd2;
  border-radius: 999px;
  padding: .18rem .42rem;
  font-size: .68rem;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(0,0,0,.35);
}

/* v0.8.3: location visibility, sleeves, and tighter hover positioning */
.global-location-card .mf-card-face{
  outline:2px solid #d6a84f;
  outline-offset:3px;
}
.sleeve-preview.hidden-card-back{
  background-size:cover!important;
  background-position:center!important;
}
.sleeve-admin-card .admin-card-back-row{
  grid-template-columns:minmax(130px,210px) minmax(220px,1fr);
}
.sleeve-shop-card .sleeve-preview{
  margin:.5rem 0 .75rem;
}
.checkbox-line{display:flex!important;gap:.5rem;align-items:center;flex-direction:row!important;}
.checkbox-line input{width:auto!important;}

/* v0.8.5: Major God click actions, cleaner owned Location display, and improved Essence stack direction. */
.major-god-clickable{cursor:pointer;}
.major-god-clickable .mf-card-face{box-shadow:0 0 0 2px rgba(214,168,79,.5),0 10px 26px rgba(0,0,0,.35);}
.major-god-clickable:hover .mf-card-face{filter:brightness(1.08);}
body.major-invoke-targeting-mode [data-target-uid].target-candidate .mf-card-face{
  outline:3px solid #f2d18a;
  outline-offset:3px;
  box-shadow:0 0 0 2px #f2d18a,0 0 24px rgba(242,209,138,.65),0 10px 26px rgba(0,0,0,.38);
}

.essence-stack-grid{
  gap:2.15rem !important;
  min-height:235px !important;
}
.essence-stack-wrap{
  min-width:235px !important;
}
.essence-stack{
  width:235px !important;
  height:232px !important;
  overflow:visible !important;
  position:relative !important;
}
.essence-stack::before,
.essence-stack::after{display:none!important;}
.essence-stack .essence-stack-card{
  position:absolute!important;
  left:calc(66px - ((var(--count) - var(--i) - 1) * 7px))!important;
  top:calc(44px - ((var(--count) - var(--i) - 1) * 5px))!important;
  z-index:calc(10 + var(--i))!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}
.essence-stack .essence-stack-card:hover{
  z-index:400!important;
  transform:translateY(-8px) scale(1.025)!important;
}
.essence-stack-card .mf-card-face,
.essence-stack-card .mf-card-face.spent,
.essence-stack-card .mf-card-face.exhausted{
  opacity:1!important;
  filter:none!important;
}
.essence-stack-card .mf-card-face.size-board{width:142px!important;}
.essence-stack.essence-pay-selected .essence-stack-card.essence-layer-ready .mf-card-face{box-shadow:0 0 0 2px rgba(112,213,139,.75),0 8px 22px rgba(0,0,0,.35)!important;}
.essence-stack-selected-badge{right:14px!important;bottom:10px!important;}
@media(max-width:1050px){
  .essence-stack-wrap{min-width:205px!important;}
  .essence-stack{width:205px!important;height:215px!important;}
  .essence-stack .essence-stack-card{left:calc(52px - ((var(--count) - var(--i) - 1) * 6px))!important;top:calc(40px - ((var(--count) - var(--i) - 1) * 4px))!important;}
  .essence-stack-card .mf-card-face.size-board{width:128px!important;}
}

/* v0.8.6: reaction windows, sleeves display fixes, and ordered attackers */
.reaction-window-panel{
  border-color: rgba(255,215,115,.45);
  box-shadow: 0 0 0 1px rgba(255,215,115,.08), 0 8px 26px rgba(0,0,0,.25);
}
.reaction-status{
  padding:.45rem .65rem;
  border:1px solid rgba(255,215,115,.35);
  border-radius:10px;
  background:rgba(255,215,115,.08);
}
.reaction-playable-card .mf-card-face{
  box-shadow:0 0 0 2px rgba(255,215,115,.7), 0 8px 18px rgba(0,0,0,.25);
  cursor:pointer;
}
.attack-selected{position:relative;}
.attack-selected::after{
  content:attr(data-attack-order);
  position:absolute;
  top:4px;
  right:4px;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f5c85a;
  color:#1b1306;
  font-weight:800;
  z-index:4;
}
[data-skip-combat-form][hidden]{display:none!important;}

/* v0.8.8: blocker popup and discard fan usability */
.blocking-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:500;
  background:rgba(5,4,10,.72);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1rem;
}
.blocking-modal{
  width:min(1180px,96vw);
  max-height:92vh;
  overflow:auto;
  border-color:rgba(214,168,79,.55);
  box-shadow:0 24px 80px rgba(0,0,0,.7);
}
.blocking-modal h2{margin-top:0;}
.blocking-modal-grid{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:1rem;
  align-items:start;
}
.blocking-attackers-row,
.blocking-defenders-row{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  align-items:flex-start;
}
.modal-attacker-slot{
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  padding:.5rem;
  background:rgba(0,0,0,.18);
  min-width:180px;
  transition:border-color .12s ease, box-shadow .12s ease;
}
.modal-attacker-slot.block-drop-hover{
  border-color:#f2d18a;
  box-shadow:0 0 0 2px rgba(242,209,138,.28);
}
.assigned-blockers{
  min-height:42px;
  margin-top:.45rem;
  display:flex;
  flex-direction:column;
  gap:.35rem;
}
.assigned-blocker-chip{
  padding:.35rem .5rem;
  border-radius:999px;
  background:#2d4736;
  border:1px solid #70d58b;
  color:#fff;
  font-size:.8rem;
  text-align:left;
}
.modal-blocker-card{cursor:grab;}
.modal-blocker-card.dragging-blocker{opacity:.65;}
.blocking-modal-message{
  min-height:1.5rem;
  margin:.8rem 0 .25rem;
  font-weight:700;
}
.blocking-modal-message.bad{color:var(--bad);}
.blocking-modal-message.ok{color:var(--ok);}
@media(max-width:900px){
  .blocking-modal-grid{grid-template-columns:1fr;}
}

/* Keep discard fan reachable: place it touching/overlapping the discard pile. */
.v074-sidebar .discard-fan,
.discard-fan{
  left:calc(100% - 12px)!important;
  top:-4px!important;
  z-index:900!important;
}
.discard-pile::after{
  content:"";
  position:absolute;
  right:-18px;
  top:0;
  width:22px;
  height:100%;
}
@media(max-width:900px){
  .v074-sidebar .discard-fan,
  .discard-fan{left:0!important;top:calc(100% - 8px)!important;}
}

/* v0.8.9 admin/user support */
.admin-tool-row { display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; }
.admin-users-table td { vertical-align:top; }
.stacked-mini { display:flex; flex-wrap:wrap; gap:.25rem; align-items:center; margin:.25rem 0; }
.stacked-mini input { max-width: 180px; }
.muted-row { opacity:.68; }
.impersonation-banner { display:flex; gap:.5rem; align-items:center; justify-content:space-between; flex-wrap:wrap; }


/* v0.8.12: sleeve pages wrap cleanly when more sleeve designs are added. */
.sleeve-shop-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch;
}
.sleeve-shop-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.sleeve-shop-card .sleeve-preview{
  width:clamp(120px,44%,170px)!important;
  margin:.35rem auto .75rem!important;
}
.sleeve-admin-grid{
  grid-template-columns:repeat(3,minmax(300px,1fr))!important;
  align-items:start;
}
.sleeve-admin-card .admin-card-back-row{
  grid-template-columns:1fr!important;
  gap:.9rem!important;
}
.sleeve-admin-card .admin-card-back-row > div:first-child{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.sleeve-admin-card .admin-card-back-preview{
  width:clamp(130px,52%,180px)!important;
  margin:.25rem auto .5rem!important;
}
.sleeve-admin-card .sleeve-admin-forms,
.sleeve-admin-card .stacked-form{
  width:100%;
  max-width:none;
}
@media(max-width:1180px){
  .sleeve-shop-grid,
  .sleeve-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:720px){
  .sleeve-shop-grid,
  .sleeve-admin-grid{grid-template-columns:1fr!important;}
}

/* v0.8.13: enlarged previews for card backs and sleeves on deck/opponent hand. */
.card-back-hover-wrap{
  position:relative;
  display:inline-block;
  vertical-align:top;
  overflow:visible;
}
.card-back-hover-wrap.has-card-back-hover:hover{z-index:1000;}
.card-back-tooltip{
  display:none;
  position:fixed;
  left:16px;
  top:16px;
  z-index:1200;
  pointer-events:none;
  padding:.45rem;
  border:3px solid var(--accent);
  border-radius:18px;
  background:rgba(8,6,13,.94);
  box-shadow:0 22px 70px rgba(0,0,0,.75);
}
.card-back-hover-wrap.has-card-back-hover:hover > .card-back-tooltip{display:block;}
.card-back-enlarged{
  width:min(260px,34vw)!important;
  min-width:190px;
  aspect-ratio:2/3;
  font-size:1rem!important;
  border-radius:18px!important;
}
.compact-hand .card-back-hover-wrap{flex:0 0 auto;}
.zone-pile .card-back-hover-wrap{display:block;}
@media(max-width:720px){.card-back-enlarged{width:min(220px,70vw)!important;min-width:150px;}}

/* v0.8.15 reusable card trigger editor */
.trigger-editor-fieldset { overflow-x: auto; }
.trigger-editor-grid { display: grid; grid-template-columns: minmax(120px,1.1fr) minmax(160px,1.4fr) minmax(140px,1fr) minmax(110px,.8fr) minmax(140px,1fr) minmax(140px,1fr) minmax(150px,1.1fr) minmax(150px,1.1fr) minmax(150px,1fr) minmax(90px,.7fr); gap: .45rem; align-items: start; min-width: 1260px; }
.trigger-editor-head { padding: .35rem .2rem; color: var(--muted); font-size: .8rem; }
.trigger-editor-row { border-top: 1px solid rgba(255,255,255,.09); padding: .45rem .2rem; }
.trigger-editor-row input, .trigger-editor-row select { width: 100%; font-size: .82rem; padding: .35rem .4rem; }
.stacked-mini-fields { display: grid; gap: .25rem; }
.stacked-mini-fields.check-stack { font-size: .8rem; color: var(--muted); }
.trigger-help { margin-top: .75rem; }

/* v0.8.16 reusable trigger builder */
.trigger-builder-fieldset { overflow: visible; }
.trigger-builder-toolbar { display:flex; align-items:center; gap:.75rem; margin:.5rem 0 1rem; flex-wrap:wrap; }
.trigger-builder-list { display:flex; flex-direction:column; gap:1rem; }
.trigger-card { border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(255,255,255,.035); padding:1rem; box-shadow:0 8px 22px rgba(0,0,0,.14); }
.trigger-card-header { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; border-bottom:1px solid rgba(255,255,255,.08); padding-bottom:.75rem; margin-bottom:.75rem; }
.trigger-title-fields { display:grid; grid-template-columns:minmax(180px, 240px) minmax(220px, 1fr); gap:.75rem; flex:1; }
.trigger-card-toggles { display:flex; align-items:center; gap:.65rem; flex-wrap:wrap; justify-content:flex-end; }
.trigger-card-body { display:grid; grid-template-columns:repeat(3, minmax(220px, 1fr)); gap:.85rem; align-items:start; }
.trigger-mini-panel { border:1px solid rgba(255,255,255,.08); border-radius:12px; padding:.8rem; background:rgba(0,0,0,.12); }
.trigger-mini-panel h4 { margin:.1rem 0 .65rem; font-size:.9rem; color:var(--accent); }
.trigger-mini-panel label, .trigger-card-header label { display:block; font-size:.78rem; color:var(--muted); }
.trigger-mini-panel input, .trigger-mini-panel select, .trigger-card-header input, .trigger-card-header select { width:100%; margin-top:.2rem; }
.two-col-fields, .trigger-value-grid { display:grid; grid-template-columns:1fr 1fr; gap:.5rem; }
.trigger-value-grid { grid-template-columns:repeat(3, 1fr); }
.btn.danger { border-color:rgba(248,113,113,.35); color:#fecaca; }
@media (max-width: 1100px) {
  .trigger-card-body { grid-template-columns:1fr; }
  .trigger-title-fields { grid-template-columns:1fr; }
  .trigger-card-header { flex-direction:column; }
  .trigger-card-toggles { justify-content:flex-start; }
}

/* v0.8.18 polished trigger automation editor */
.trigger-editor-fieldset{overflow:visible!important;}
.trigger-builder-fieldset{overflow:visible!important;}
.trigger-builder-intro{
  display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;
  padding:.9rem 1rem;border:1px solid rgba(255,255,255,.09);border-radius:16px;
  background:linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  margin:.35rem 0 1rem;
}
.trigger-builder-intro strong{font-size:1.02rem;}
.trigger-builder-intro p{margin:.25rem 0 0;max-width:850px;}
.trigger-count-chip{
  flex:0 0 auto;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.18);
  color:var(--text);border-radius:999px;padding:.35rem .7rem;font-size:.85rem;white-space:nowrap;
}
.trigger-builder-toolbar{display:flex;align-items:center;gap:.55rem;margin:.75rem 0 1rem;flex-wrap:wrap;}
.trigger-builder-list{display:grid!important;gap:.65rem!important;}
.trigger-card.trigger-accordion{
  border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.035);
  padding:0!important;box-shadow:0 6px 18px rgba(0,0,0,.13);overflow:hidden;
}
.trigger-card.trigger-accordion[open]{border-color:rgba(251,191,36,.35);background:rgba(255,255,255,.05);}
.trigger-summary{
  list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;
  padding:.85rem 1rem;user-select:none;
}
.trigger-summary::-webkit-details-marker{display:none;}
.trigger-summary:before{content:'▸';color:var(--accent);font-size:1rem;transition:transform .15s ease;}
.trigger-card[open]>.trigger-summary:before{transform:rotate(90deg);}
.trigger-summary-main{display:grid;gap:.18rem;min-width:0;flex:1;}
.trigger-summary-title{font-weight:800;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.trigger-summary-flow{color:var(--muted);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.trigger-summary-badges{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end;align-items:center;}
.trigger-badge{border-radius:999px;padding:.22rem .5rem;font-size:.74rem;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.18);color:var(--muted);white-space:nowrap;}
.trigger-badge.role{color:#fde68a;border-color:rgba(251,191,36,.22);}
.trigger-badge.active{color:#bbf7d0;border-color:rgba(34,197,94,.28);}
.trigger-badge.inactive{color:#fecaca;border-color:rgba(248,113,113,.22);}
.trigger-badge.optional{color:#bfdbfe;border-color:rgba(96,165,250,.28);}
.trigger-accordion-body{padding:0 1rem 1rem;border-top:1px solid rgba(255,255,255,.08);}
.trigger-topline{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:end;gap:.65rem;margin:.9rem 0;}
.trigger-topline label{font-size:.78rem;color:var(--muted);}
.trigger-label-field input{width:100%;}
.trigger-switch{align-self:center;margin-bottom:.35rem;white-space:nowrap;}
.trigger-step-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:.75rem;align-items:start;}
.trigger-step-panel{
  border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:.85rem;background:rgba(0,0,0,.13);
  display:grid;gap:.55rem;
}
.trigger-step-panel label{display:block;font-size:.78rem;color:var(--muted);}
.trigger-step-panel input,.trigger-step-panel select{width:100%;margin-top:.2rem;}
.trigger-step-heading{display:flex;align-items:center;gap:.45rem;color:var(--text);margin-bottom:.15rem;}
.trigger-step-heading span{
  display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:50%;
  background:rgba(251,191,36,.14);border:1px solid rgba(251,191,36,.3);color:#fde68a;font-weight:800;font-size:.8rem;
}
.helper-line{font-size:.78rem;color:var(--muted);line-height:1.3;margin:-.1rem 0 .15rem;}
.two-col-fields,.trigger-value-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;}
.trigger-value-grid{grid-template-columns:repeat(3,1fr);}
@media(max-width:1100px){
  .trigger-step-grid{grid-template-columns:1fr;}
  .trigger-topline{grid-template-columns:1fr 1fr;align-items:start;}
  .trigger-summary{align-items:flex-start;}
  .trigger-summary-badges{justify-content:flex-start;}
}
@media(max-width:720px){
  .trigger-builder-intro{flex-direction:column;}
  .trigger-topline{grid-template-columns:1fr;}
  .trigger-summary{display:grid;grid-template-columns:auto 1fr;}
  .trigger-summary-badges{grid-column:2;}
  .trigger-summary-flow{white-space:normal;}
  .two-col-fields,.trigger-value-grid{grid-template-columns:1fr;}
}

/* v0.8.19 cleaner trigger automation layout */
.trigger-builder-fieldset{
  display:block!important;
}
.trigger-builder-fieldset .trigger-builder-intro,
.trigger-builder-fieldset .trigger-help{
  display:none!important;
}
.trigger-builder-toolbar-top{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.45rem!important;
  margin:.35rem 0 .85rem!important;
  padding:.45rem!important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(0,0,0,.10);
  width:100%;
}
.trigger-builder-toolbar-top .btn.compact{
  padding:.42rem .65rem!important;
  min-height:0!important;
  line-height:1.1!important;
  font-size:.82rem!important;
  border-radius:10px!important;
  white-space:nowrap;
}
.trigger-builder-toolbar-top .trigger-count-chip{
  order:99;
  margin-left:auto;
  padding:.28rem .6rem!important;
  font-size:.78rem!important;
}
.trigger-builder-list{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:.75rem!important;
}
.trigger-card.trigger-accordion{
  width:100%!important;
  max-width:none!important;
}
.trigger-summary{
  padding:.72rem .9rem!important;
}
.trigger-accordion-body{
  padding:0 .9rem .9rem!important;
}
.trigger-step-grid{
  grid-template-columns:minmax(210px,.85fr) minmax(260px,1.2fr) minmax(260px,1.05fr)!important;
}
@media(max-width:900px){
  .trigger-builder-toolbar-top{align-items:flex-start!important;}
  .trigger-builder-toolbar-top .trigger-count-chip{order:0;margin-left:0;}
  .trigger-step-grid{grid-template-columns:1fr!important;}
}

/* v0.8.21: selected-target restrictions for trigger results */
.trigger-target-restrictions{
  margin:.35rem 0 .6rem;
  padding:.5rem;
  border:1px dashed rgba(214,168,79,.35);
  border-radius:12px;
  background:rgba(214,168,79,.06);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.25rem .5rem;
}
.trigger-target-restrictions .helper-line{grid-column:1/-1;margin-bottom:.15rem;}
.trigger-target-restrictions[hidden]{display:none!important;}
@media(max-width:700px){.trigger-target-restrictions{grid-template-columns:1fr;}}

.pending-choice .target-choice-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.65rem;margin:1rem 0}.pending-choice label.target-choice{display:block;border:1px solid var(--line);border-radius:12px;padding:.65rem;background:rgba(255,255,255,.04);cursor:pointer}.pending-choice label.target-choice:hover{border-color:var(--accent)}

/* v0.8.21 beta launch polish, invites, and card selling */
.hero-exciting {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: 2rem;
    align-items: center;
    padding: 3rem;
    border: 1px solid rgba(255, 215, 128, .25);
    background:
        radial-gradient(circle at 75% 20%, rgba(255, 215, 128, .26), transparent 28%),
        radial-gradient(circle at 15% 10%, rgba(108, 92, 231, .30), transparent 26%),
        linear-gradient(135deg, #190d2d 0%, #23123f 45%, #3a1b10 100%);
    color: #fff8e8;
    box-shadow: 0 24px 70px rgba(28, 15, 40, .35);
}
.hero-exciting::after {
    content: "";
    position: absolute;
    inset: auto -10% -40% 20%;
    height: 260px;
    background: radial-gradient(circle, rgba(255,255,255,.16), transparent 60%);
    transform: rotate(-8deg);
}
.hero-copy { position: relative; z-index: 1; }
.eyebrow {
    display: inline-flex;
    padding: .35rem .7rem;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #ffd980;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-size: .78rem;
}
.hero-exciting h1 {
    max-width: 760px;
    margin: .7rem 0;
    font-size: clamp(2.4rem, 6vw, 5.4rem);
    line-height: .95;
    letter-spacing: -.055em;
}
.hero-lede {
    max-width: 720px;
    font-size: 1.2rem;
    color: rgba(255,248,232,.88);
}
.hero-actions .btn { font-size: 1.04rem; padding: .9rem 1.2rem; }
.hero-stats {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.5rem;
}
.hero-stats span {
    padding: .7rem .9rem;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 1rem;
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(8px);
}
.hero-stats b { color: #ffd980; }
.hero-showcase {
    position: relative;
    min-height: 360px;
    z-index: 1;
}
.showcase-card {
    position: absolute;
    width: 190px;
    height: 285px;
    border-radius: 20px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: #fff;
    border: 1px solid rgba(255,255,255,.28);
    box-shadow: 0 28px 60px rgba(0,0,0,.35);
    transform-origin: bottom center;
}
.showcase-card span { opacity: .8; font-weight: 700; }
.showcase-card b { font-size: 1.35rem; line-height: 1.05; }
.god-card { right: 90px; top: 0; background: linear-gradient(160deg, #3122a8, #d99b22); transform: rotate(7deg); }
.creature-card { right: 10px; top: 62px; background: linear-gradient(160deg, #133b2f, #6fbb5f); transform: rotate(18deg); }
.spell-card { right: 175px; top: 82px; background: linear-gradient(160deg, #5b193e, #d84f73); transform: rotate(-10deg); }
.home-feature-grid .feature-card { border-top: 4px solid rgba(165, 118, 35, .65); }
.home-cta-card {
    text-align: center;
    background: linear-gradient(135deg, rgba(255, 245, 214, .9), rgba(255, 255, 255, .98));
}
.beta-register-card { max-width: 760px; }
.collection-tabs { display: flex; gap: .5rem; flex-wrap: wrap; }
.sell-info-card { background: linear-gradient(135deg, rgba(255,248,226,.95), rgba(255,255,255,.98)); }
.sell-rates { display: flex; flex-wrap: wrap; gap: .5rem; }
.sell-rates span {
    padding: .45rem .7rem;
    border-radius: 999px;
    background: rgba(75, 49, 20, .08);
    border: 1px solid rgba(75, 49, 20, .12);
}
.collection-sell-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 1rem;
    align-items: start;
}
.sell-sidebar {
    position: sticky;
    top: 1rem;
}
.sell-list {
    max-height: 320px;
    overflow: auto;
    padding-left: 1.1rem;
}
.sell-total {
    margin: 1rem 0;
    padding: .8rem;
    border-radius: .8rem;
    background: rgba(0,0,0,.05);
}
.sell-card-tools { display: grid; gap: .45rem; }
.sell-value { margin: 0; }
.sell-qty-controls {
    display: flex;
    align-items: center;
    gap: .4rem;
    justify-content: center;
}
.sell-qty-controls input { max-width: 70px; text-align: center; }
.sell-selected .mf-card-face { box-shadow: 0 0 0 3px rgba(22, 163, 74, .5), 0 12px 28px rgba(0,0,0,.18); }
.small-note { font-size: .86rem; }
.invite-created-code {
    display: inline-block;
    padding: .8rem 1rem;
    border-radius: .8rem;
    margin: .5rem 0 1rem;
    background: #101827;
    color: #fef3c7;
    letter-spacing: .06em;
}
.invite-table code { font-weight: 800; }
@media (max-width: 880px) {
    .hero-exciting { grid-template-columns: 1fr; padding: 2rem; }
    .hero-showcase { min-height: 250px; }
    .showcase-card { width: 145px; height: 218px; }
    .god-card { left: 25%; right: auto; }
    .creature-card { right: 8%; }
    .spell-card { left: 6%; right: auto; }
    .collection-sell-layout { grid-template-columns: 1fr; }
    .sell-sidebar { position: static; }
}


/* v0.8.22 sell side panel, friends, and admin testing */
.sell-qty-label { display: inline-flex; align-items: center; gap: .3rem; margin: 0; }
.sell-qty-controls .btn.small { min-width: 2.25rem; font-size: 1.05rem; font-weight: 800; }
.sell-qty-controls input::-webkit-outer-spin-button,
.sell-qty-controls input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.sell-qty-controls input[type=number] { -moz-appearance: textfield; }
.sell-list-row { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .45rem; }
.sell-sidebar .btn.primary { width: 100%; }
.admin-test-panel { border: 2px solid rgba(180, 83, 9, .35); background: linear-gradient(135deg, rgba(255, 251, 235, .98), rgba(255, 255, 255, .98)); }
.friend-row { display: flex; justify-content: space-between; align-items: center; gap: .75rem; padding: .55rem 0; border-bottom: 1px solid rgba(0,0,0,.08); }
.gifted-packs-section { background: linear-gradient(135deg, rgba(239, 246, 255, .95), rgba(255,255,255,.98)); }
.check-row { display: flex; align-items: center; gap: .5rem; }


/* v0.8.23 hard overrides: sell UI, spectator banner, friend chat */
.flash.info {
    background: rgba(59, 130, 246, .15);
    border-color: rgba(59, 130, 246, .35);
    color: #dbeafe;
}
.collection-sell-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 360px) !important;
    gap: 1.25rem !important;
    align-items: start !important;
}
.collection-sell-layout > .mf-card-grid {
    min-width: 0;
}
.sell-sidebar {
    position: sticky !important;
    top: 5.25rem !important;
    align-self: start !important;
    max-height: calc(100vh - 6rem);
    overflow: auto;
    z-index: 3;
    border: 2px solid rgba(214,168,79,.35);
    box-shadow: 0 18px 40px rgba(0,0,0,.22);
}
.sell-card-tools {
    display: grid !important;
    gap: .45rem !important;
    justify-items: center !important;
}
.sell-qty-caption {
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    font-weight: 800;
}
.sell-qty-controls {
    display: grid !important;
    grid-template-columns: 2.35rem 4.3rem 2.35rem !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .35rem !important;
    width: max-content !important;
    max-width: 100%;
    margin: 0 auto !important;
}
.sell-qty-controls .btn.small,
.mf-card-actions .sell-qty-controls .btn.small {
    width: 2.35rem !important;
    min-width: 2.35rem !important;
    height: 2.35rem !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.2rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
}
.sell-qty-controls input,
.mf-card-actions .sell-qty-controls input {
    width: 4.3rem !important;
    max-width: 4.3rem !important;
    min-height: 2.35rem !important;
    text-align: center !important;
    margin: 0 !important;
    padding: .35rem .25rem !important;
}
.sell-qty-label { display: contents !important; }
.sell-list-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .5rem;
}
.sell-list-row span {
    min-width: 0;
    overflow-wrap: anywhere;
}
.spectator-banner {
    border: 2px solid rgba(96,165,250,.45);
    background: linear-gradient(135deg, rgba(30,41,59,.95), rgba(37,99,235,.25));
}
.chat-layout {
    display: grid;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}
.chat-friend-list {
    display: grid;
    gap: .5rem;
}
.chat-friend-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .5rem;
    padding: .65rem .75rem;
    border-radius: .8rem;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,.1);
    background: rgba(255,255,255,.04);
}
.chat-friend-link.active {
    border-color: rgba(214,168,79,.55);
    background: rgba(214,168,79,.16);
}
.chat-unread {
    min-width: 1.65rem;
    padding: .1rem .35rem;
    border-radius: 999px;
    background: var(--accent);
    color: #1b1207;
    font-weight: 900;
    text-align: center;
}
.chat-window {
    display: grid;
    gap: .75rem;
}
.chat-messages {
    max-height: 520px;
    overflow: auto;
    display: grid;
    gap: .65rem;
    padding: .5rem;
    border-radius: 1rem;
    background: rgba(0,0,0,.12);
}
.chat-bubble {
    max-width: min(720px, 88%);
    padding: .7rem .85rem;
    border-radius: 1rem;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.09);
}
.chat-bubble.mine {
    justify-self: end;
    background: rgba(214,168,79,.18);
    border-color: rgba(214,168,79,.32);
}
.chat-meta {
    display: block;
    margin-bottom: .25rem;
    font-size: .76rem;
    color: var(--muted);
}
.chat-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .65rem;
}
.chat-form textarea {
    min-height: 54px;
    resize: vertical;
}
.friend-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    justify-content: flex-end;
}
@media (max-width: 760px) {
    .collection-sell-layout {
        grid-template-columns: 1fr !important;
    }
    .sell-sidebar {
        position: static !important;
        max-height: none;
    }
    .chat-layout {
        grid-template-columns: 1fr;
    }
    .chat-form {
        grid-template-columns: 1fr;
    }
}

/* v0.8.24: global floating friend chat, matchmaking, tournaments */
.floating-chat {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 5000;
    font-family: inherit;
}
.floating-chat-button {
    border: 0;
    border-radius: 999px;
    padding: .85rem 1.05rem;
    background: linear-gradient(135deg, var(--accent), #f7d887);
    color: #1b1207;
    font-weight: 900;
    box-shadow: 0 16px 34px rgba(0,0,0,.35);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}
.floating-chat-button.has-unread { outline: 3px solid rgba(255,255,255,.24); }
.floating-chat-button.pulse { animation: mfChatPulse 1.2s ease-in-out 2; }
@keyframes mfChatPulse { 0%,100%{ transform:scale(1);} 50%{ transform:scale(1.08);} }
.floating-chat-badge {
    min-width: 1.4rem;
    padding: .1rem .35rem;
    border-radius: 999px;
    background: #7f1d1d;
    color: #fff;
    text-align: center;
}
.floating-chat-panel {
    position: absolute;
    right: 0;
    bottom: 3.7rem;
    width: min(720px, calc(100vw - 2rem));
    height: min(560px, calc(100vh - 7rem));
    border: 1px solid rgba(214,168,79,.42);
    border-radius: 1.2rem;
    overflow: hidden;
    background: #19130e;
    box-shadow: 0 24px 70px rgba(0,0,0,.55);
}
.floating-chat-panel > header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:.75rem;
    padding:.7rem .85rem;
    background: rgba(214,168,79,.16);
    border-bottom: 1px solid rgba(214,168,79,.25);
}
.floating-chat-body {
    height: calc(100% - 54px);
    display:grid;
    grid-template-columns: 230px minmax(0,1fr);
}
.floating-chat-friends {
    border-right: 1px solid rgba(255,255,255,.08);
    overflow:auto;
    padding:.5rem;
    display:grid;
    align-content:start;
    gap:.4rem;
}
.floating-chat-friend {
    width:100%;
    border:1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
    color: inherit;
    border-radius:.8rem;
    padding:.55rem;
    text-align:left;
    display:flex;
    justify-content:space-between;
    gap:.5rem;
    cursor:pointer;
}
.floating-chat-friend.active { border-color: rgba(214,168,79,.55); background: rgba(214,168,79,.13); }
.floating-chat-friend small { display:block; color:var(--muted); margin-top:.15rem; overflow:hidden; text-overflow:ellipsis; max-width:160px; white-space:nowrap; }
.floating-chat-friend em { min-width:1.35rem; height:1.35rem; border-radius:999px; background:var(--accent); color:#1b1207; display:inline-flex; align-items:center; justify-content:center; font-style:normal; font-weight:900; }
.floating-chat-conversation { min-width:0; display:grid; grid-template-rows:minmax(0,1fr) auto; }
.floating-chat-thread { overflow:auto; padding:.75rem; display:grid; align-content:start; gap:.5rem; }
.floating-chat-message { max-width:88%; padding:.55rem .7rem; border-radius:.9rem; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.07); }
.floating-chat-message.mine { justify-self:end; background:rgba(214,168,79,.18); border-color:rgba(214,168,79,.3); }
.floating-chat-message span { display:block; color:var(--muted); font-size:.74rem; margin-bottom:.2rem; }
.floating-chat-message p { margin:0; }
.floating-chat-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.5rem; padding:.65rem; border-top:1px solid rgba(255,255,255,.08); }
.floating-chat-form textarea { resize:none; min-height:44px; }
.format-pill { display:inline-block; padding:.2rem .5rem; border-radius:999px; background:rgba(214,168,79,.16); border:1px solid rgba(214,168,79,.28); font-weight:800; }
.tournament-standings .rank-1 { background:rgba(214,168,79,.12); }
@media (max-width: 680px) {
    .floating-chat { right:.5rem; bottom:.5rem; }
    .floating-chat-panel { width:calc(100vw - 1rem); height:calc(100vh - 5.5rem); bottom:3.4rem; }
    .floating-chat-body { grid-template-columns: 1fr; grid-template-rows: 170px minmax(0,1fr); }
    .floating-chat-friends { border-right:0; border-bottom:1px solid rgba(255,255,255,.08); }
}

/* v0.8.26: contrast, pack inventory, and reveal UI */
.home-cta-card,
.sell-info-card,
.admin-test-panel,
.gifted-packs-section,
.card.light-card {
  color: #21160b !important;
}
.home-cta-card .muted,
.home-cta-card small,
.sell-info-card .muted,
.sell-info-card small,
.admin-test-panel .muted,
.admin-test-panel small,
.gifted-packs-section .muted,
.gifted-packs-section small,
.card.light-card .muted,
.card.light-card small {
  color: #5b4630 !important;
}
.home-cta-card a:not(.btn),
.sell-info-card a:not(.btn),
.admin-test-panel a:not(.btn),
.gifted-packs-section a:not(.btn),
.card.light-card a:not(.btn) {
  color: #68410d !important;
}
.gifted-packs-section .card {
  background: rgba(255,255,255,.78) !important;
  color: #21160b !important;
  border-color: rgba(75,49,20,.16) !important;
}
.gifted-packs-section .card .muted,
.gifted-packs-section .card small { color: #5b4630 !important; }
.booster-grouped-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
  gap: 1rem;
  align-items: start;
  margin: 1rem 0;
}
.booster-grouped-card {
  position: relative;
  display: inline-block;
  justify-self: center;
}
.booster-grouped-qty {
  position: absolute;
  right: .45rem;
  bottom: .45rem;
  z-index: 5;
  padding: .22rem .55rem;
  border-radius: 999px;
  background: #f2d18a;
  color: #160f05;
  border: 1px solid #fff1be;
  font-weight: 900;
  box-shadow: 0 8px 22px rgba(0,0,0,.35);
}
.revealed-cards-panel {
  border-color: rgba(242,209,138,.45);
  background: linear-gradient(135deg, rgba(42,32,57,.98), rgba(24,18,34,.98));
}
.revealed-cards-grid {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  align-items: flex-start;
}
.revealed-card-note {
  max-width: 155px;
  color: var(--muted);
  font-size: .8rem;
  margin-top: .25rem;
}
.deck-pile.revealed-top-pile {
  border-color: rgba(242,209,138,.55);
  box-shadow: 0 0 0 1px rgba(242,209,138,.18), 0 10px 28px rgba(0,0,0,.28);
}
.deck-top-revealed-note {
  margin-top: .35rem;
  font-size: .76rem;
  color: #f2d18a;
  text-align: center;
}

/* v0.8.27: separated shop sections, starter deck previews, marketplace, and grouped pack layout */
.shop-section { margin-top: 1rem; }
.shop-product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1rem;
  align-items: start;
}
.shop-product-card {
  display: grid;
  gap: .65rem;
  align-content: start;
}
.shop-product-image {
  min-height: 150px;
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid rgba(214,168,79,.25);
  background: radial-gradient(circle at top left, rgba(214,168,79,.25), rgba(255,255,255,.04));
  display: grid;
  place-items: center;
}
.shop-product-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}
.shop-product-image.placeholder span,
.starter-precon-image.placeholder span {
  padding: 1rem;
  text-align: center;
  color: #f8e7b0;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.shop-major-god {
  margin: 0;
  padding: .55rem .7rem;
  border: 1px solid rgba(214,168,79,.32);
  border-radius: .75rem;
  background: rgba(214,168,79,.10);
  color: #f8e7b0;
}
.shop-major-god b { color: #ffd985; }

.shop-precon-details {
  border: 1px solid rgba(255,255,255,.09);
  border-radius: .9rem;
  padding: .7rem;
  background: rgba(0,0,0,.12);
}
.shop-precon-details summary {
  cursor: pointer;
  font-weight: 800;
  color: var(--accent);
}
.compact-deck-list {
  max-height: 280px;
  overflow: auto;
  padding-left: 1.2rem;
  margin-bottom: 0;
}
.compact-deck-list li { margin: .18rem 0; }
.booster-grouped-grid.consistent {
  grid-template-columns: repeat(auto-fill, minmax(190px, 210px));
  justify-content: start;
  align-items: start;
}
.booster-grouped-grid.consistent .booster-grouped-card {
  width: 100%;
  display: grid;
  gap: .45rem;
  justify-items: center;
}
.booster-grouped-card-inner { width: 100%; }
.booster-grouped-card-inner > .mf-card-hover-wrap { width: 100%; }
.booster-grouped-grid.consistent .booster-grouped-qty {
  position: static;
  display: inline-flex;
  justify-content: center;
  min-width: 4rem;
  margin: 0 auto;
}
.starter-precon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.starter-precon-card {
  display: grid;
  gap: .55rem;
  padding: 1rem;
  border: 2px solid rgba(255,255,255,.1);
  border-radius: 1.1rem;
  background: rgba(255,255,255,.045);
  cursor: pointer;
}
.starter-precon-card.selected,
.starter-precon-card:has(input:checked) {
  border-color: rgba(214,168,79,.85);
  box-shadow: 0 0 0 3px rgba(214,168,79,.18);
}
.starter-precon-card input[type="radio"] { width: auto; }
.starter-precon-image {
  min-height: 150px;
  height: auto;
  border-radius: .9rem;
  overflow: hidden;
  border: 1px solid rgba(214,168,79,.25);
  background: radial-gradient(circle at top, rgba(214,168,79,.22), rgba(0,0,0,.25));
  display: grid;
  place-items: center;
}
.starter-precon-image img { width: 100%; height: auto; object-fit: contain; display: block; }
.marketplace-grid .mf-card-actions { display: grid; gap: .55rem; }
.market-card-actions { display: grid; gap: .45rem; }
.market-list-form label { margin: .2rem 0; }
.market-list-form input { max-width: 140px; }
.marketplace-info-card { color: #21160b !important; background: linear-gradient(135deg, rgba(255,248,226,.95), rgba(255,255,255,.98)); }
.marketplace-info-card .muted { color: #5b4630 !important; }
@media (max-width: 780px) {
  .shop-product-grid, .starter-precon-grid { grid-template-columns: 1fr; }
  .booster-grouped-grid.consistent { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
}

/* v0.8.28 admin shop/product manager */
.admin-product-list {
  display: grid;
  gap: 1rem;
}
.admin-product-edit-card summary {
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
}
.admin-product-options {
  border: 1px solid var(--line);
  background: rgba(255,255,255,.04);
  border-radius: 16px;
  padding: 1rem;
  margin: .75rem 0;
}
.admin-shop-thumb {
  max-width: 220px;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(0,0,0,.25);
}
.admin-shop-thumb img {
  width: 100%;
  display: block;
}
.admin-precon-form textarea[name="decklist"] {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  min-height: 240px;
}


/* v0.8.29: allow mixed aspect-ratio shop/starter images to keep fixed width with automatic height */
.shop-product-image img,
.starter-precon-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.starter-precon-image {
  min-height: 150px;
  height: auto;
}

/* v0.8.29: admin match tools toggle + editor picker persistence */
.admin-test-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
.admin-test-panel-header h2 { margin-top: 0; }
.admin-test-panel-header .muted { margin-bottom: 0; }
.admin-test-panel.is-collapsed {
  padding: .75rem 1rem;
  position: relative;
  z-index: 30;
}
.admin-test-panel.is-collapsed .admin-test-panel-body {
  display: none !important;
}
.admin-test-panel.is-collapsed .admin-test-panel-header {
  align-items: center;
}
.admin-test-panel.is-collapsed .admin-test-panel-header h2 {
  margin: 0;
  font-size: 1rem;
}
.admin-test-panel.is-collapsed .admin-test-panel-header .muted {
  display: none;
}
.card-picker-panel:target {
  outline: 2px solid rgba(214,168,79,.65);
  outline-offset: 3px;
}
@media (max-width: 700px) {
  .admin-test-panel-header { flex-direction: column; align-items: stretch; }
  .admin-test-panel-header .btn { width: 100%; }
}

/* v0.8.29: stable global hover preview overlay. The original inline tooltip is hidden;
   JavaScript copies its content into this viewport-clamped body-level overlay. */
.mf-card-hover-wrap.has-hover:hover > .mf-card-tooltip,
.card-back-hover-wrap.has-card-back-hover:hover > .card-back-tooltip {
  display: none !important;
}

.mf-global-hover-tooltip {
  position: fixed !important;
  left: 12px;
  top: 12px;
  z-index: 50000 !important;
  pointer-events: none;
  display: none;
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  overflow: auto;
}

.mf-global-hover-tooltip.is-card-preview {
  width: min(370px, calc(100vw - 24px));
  background: #f7ecd0;
  color: #1d160d;
  border: 3px solid #d6a84f;
  border-radius: 14px;
  padding: .9rem;
  box-shadow: 0 18px 55px rgba(0,0,0,.65);
  font-family: system-ui, sans-serif;
  text-align: left;
}

.mf-global-hover-tooltip.is-card-preview .mf-card-hover-wrap {
  width: 100%;
}

.mf-global-hover-tooltip.is-card-preview .mf-card-face.size-popout {
  width: 100%;
  max-width: 340px;
  margin: 0 auto;
}

.mf-global-hover-tooltip.is-card-back-preview {
  padding: .45rem;
  border: 3px solid var(--accent);
  border-radius: 18px;
  background: rgba(8,6,13,.94);
  box-shadow: 0 22px 70px rgba(0,0,0,.75);
}

@media(max-width:760px){
  .mf-global-hover-tooltip.is-card-preview {
    width: min(340px, calc(100vw - 24px));
    padding: .65rem;
  }
}


/* v0.8.28: compact large Essence stacks, discard fan layering, and known top deck display */
.v074-sidebar,
.zone-piles-row,
.zone-pile,
.discard-pile{
  position:relative;
}
.v074-sidebar{z-index:30; overflow:visible!important;}
.v073-battle-zone{position:relative; z-index:10;}
.discard-pile{z-index:2000!important;}
.v074-sidebar .discard-fan,
.discard-fan{
  z-index:30000!important;
  pointer-events:auto;
}

.essence-zone-compact{
  overflow:visible;
  isolation:isolate;
}
.essence-stack-grid{
  gap:1rem 1.35rem!important;
  min-height:176px!important;
  align-items:flex-start!important;
}
.essence-stack-wrap{
  min-width:168px!important;
  max-width:178px!important;
  position:relative;
  z-index:1;
}
.essence-stack-label{
  position:relative;
  z-index:50;
  display:inline-block;
  padding:.16rem .38rem;
  border-radius:999px;
  background:rgba(10,8,16,.88);
  border:1px solid rgba(242,209,138,.35);
  box-shadow:0 4px 12px rgba(0,0,0,.25);
}
.essence-stack{
  width:168px!important;
  height:154px!important;
  margin-top:.25rem;
  overflow:visible!important;
}
.essence-stack::before,
.essence-stack::after{display:none!important;}
.essence-stack .essence-stack-card{
  left:min(calc(var(--i) * 3px), 18px)!important;
  top:min(calc(var(--i) * 2px), 12px)!important;
  z-index:calc(10 + min(var(--i), 12))!important;
}
.essence-stack-card .mf-card-face.size-board{
  width:112px!important;
}
.essence-stack .essence-stack-card:not(:last-of-type) .mf-card-face{
  box-shadow:0 0 0 2px rgba(214,168,79,.55),0 5px 14px rgba(0,0,0,.28)!important;
}
.essence-stack[data-essence-stack-count="0"]{height:40px!important;}
.essence-stack-selected-badge{
  right:0!important;
  bottom:0!important;
  z-index:80!important;
}
.deck-pile.revealed-top-pile .deck-top-revealed-note{
  background:rgba(10,8,16,.86);
  border:1px solid rgba(242,209,138,.4);
  border-radius:999px;
  padding:.18rem .4rem;
  width:max-content;
  max-width:100%;
}
@media(max-width:1050px){
  .essence-stack-wrap{min-width:150px!important;max-width:160px!important;}
  .essence-stack{width:150px!important;height:148px!important;}
  .essence-stack-card .mf-card-face.size-board{width:104px!important;}
}

/* v25 trigger editor additions */
.trigger-reaction-box,
.trigger-condition-panel,
.trigger-else-details {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  padding: 10px;
  margin-top: 10px;
  background: rgba(0,0,0,.16);
}
.trigger-else-details summary {
  cursor: pointer;
  font-weight: 700;
  margin-bottom: 8px;
}
.trigger-condition-panel select,
.trigger-condition-panel input,
.trigger-reaction-box select,
.trigger-reaction-box input {
  max-width: 100%;
}

/* v0.8.35: deck reveal sizing and combat pending-choice sequencing polish */
.deck-pile.revealed-top-pile .deck-top-card .mf-card-face.size-normal,
.deck-pile.revealed-top-pile .mf-card-face.size-normal {
  width: 205px;
  max-width: 100%;
}
.v074-sidebar .deck-pile.revealed-top-pile .mf-card-hover-wrap,
.v074-sidebar .deck-pile.revealed-top-pile .deck-top-card,
.v074-sidebar .deck-pile.revealed-top-pile .mf-card-face.size-normal {
  width: 205px;
  max-width: 205px;
}
@media (max-width:1200px){
  .v074-sidebar .deck-pile.revealed-top-pile .mf-card-hover-wrap,
  .v074-sidebar .deck-pile.revealed-top-pile .deck-top-card,
  .v074-sidebar .deck-pile.revealed-top-pile .mf-card-face.size-normal {
    width:185px;
    max-width:185px;
  }
}
@media (max-width:850px){
  .v074-sidebar .deck-pile.revealed-top-pile .mf-card-hover-wrap,
  .v074-sidebar .deck-pile.revealed-top-pile .deck-top-card,
  .v074-sidebar .deck-pile.revealed-top-pile .mf-card-face.size-normal {
    width:128px;
    max-width:128px;
  }
}

/* v38 public reveal acknowledgement popup */
.public-reveal-modal{z-index:930;display:grid;place-items:center}
.public-reveal-panel{max-width:560px;text-align:center}
.public-reveal-card-wrap{display:flex;justify-content:center;margin:1rem 0}
.public-reveal-card-wrap .mf-card-hover-wrap{margin:auto}

/* v40: Reveals are now handled by the reveal popup and/or the deck-top display.
   Keep this hidden in case older cached markup is present. */
.revealed-cards-panel {
    display: none !important;
}
