/* Flat-card adaptation of recovered Fortune UV ornament and stat badges. */
.battle{max-width:1840px;padding:16px 24px}.battle-grid{grid-template-columns:minmax(0,1fr) 230px;gap:20px}.table{padding:12px 18px}.board{grid-template-columns:repeat(6,minmax(0,186px));gap:12px;justify-content:center;padding:7px 5px 10px;overflow-x:auto}.card,.board .card.unit,.hand .card{position:relative;display:flex;flex-direction:column;width:100%;height:266px;min-height:266px;padding:7px 8px 5px;border:2px solid #d0b16e;border-radius:13px 13px 10px 10px;background:#4c361e url('assets/fortune-ui/CardLayout_Frame_Wood.png') center/145% 100%;box-shadow:inset 0 0 0 2px #251b10,0 3px 0 #392d1e,0 5px 0 #121711,0 10px 16px #0008;color:#fff2cf;text-shadow:0 1px 2px #000;overflow:hidden;text-align:center;transition:box-shadow .15s,border-color .15s}.card .art,.board .unit .art,.hand .art{width:100%;height:102px;flex:0 0 102px;border:1px solid #d7b976;border-radius:8px 8px 2px 2px;margin:0;background:#17281f;overflow:hidden}.card .art img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:none}.card strong,.board .unit strong{font:bold 15px/1.1 Georgia;display:grid;place-items:center;min-height:35px;padding:3px 2px;letter-spacing:0;color:#fff3ce;background:#302518dd;border-bottom:1px solid #c29c58;width:100%}.card .card-text,.board .unit .card-text,.hand .card-text{display:block;font:12px/1.32 system-ui;color:#fff4d9;text-shadow:0 1px #181006;padding:6px 5px;min-height:63px;flex:1;background:linear-gradient(#342719e8,#2a241bdc);width:100%;overflow:visible}.card .unit-status{display:block;color:#d1e8d4;font:10px/1.2 system-ui;margin-top:4px}.card .stats,.board .unit .stats{height:38px;min-height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 3px;margin-top:auto;background:#29231bea;border-radius:0 0 6px 6px;width:100%;font-size:20px}.stats .attack-badge,.stats .health-badge{display:grid;place-items:center;width:38px;height:38px;font:bold 21px Georgia;color:#fff;text-shadow:0 1px 3px black,1px 0 black;background-color:#171a1a;border:1px solid #c6ae75;border-radius:45% 45% 40% 40%;box-shadow:0 2px 2px #0007}.stats .attack-badge{background-image:url('assets/fortune-ui/CardLayout_Attack.png');background-size:256px;background-position:-38px -59px}.stats .health-badge{background-image:url('assets/fortune-ui/CardLayout_Health.png');background-size:256px;background-position:-37px -98px}.stats .health-badge.wounded{color:#ffe095;outline:2px solid #df7053}.card .cost,.board .unit .cost{position:absolute;left:-1px;top:0;width:36px;height:36px;z-index:2;display:grid;place-items:center;border:1px solid #efd292;border-radius:50%;font:bold 22px Georgia;background:#705026 url('assets/fortune-ui/CardLayout_Frame_Cost_256x256.png') center/cover;box-shadow:1px 2px 5px #000a;color:#fff}.board .empty-slot{height:290px;min-height:290px;opacity:.45}.card.ready,.board .card.ready{border-color:#c5efca;box-shadow:inset 0 0 0 1px #75885e,0 4px 0 #293928,0 8px 18px #0009,0 0 12px #9edccc75}.card.guard,.board .card.guard{border-bottom:4px solid #ddc786}.card[aria-pressed=true],.board .card[aria-pressed=true]{outline:3px solid #ffdf91;outline-offset:2px;box-shadow:0 0 20px #e9c159a0}.card.legal-target{outline:3px solid #d8f3b4;outline-offset:2px}.card:disabled{opacity:1}.card:disabled .art{filter:none}.hand .card:disabled .cost{filter:brightness(.65)}.inspect-card{font:11px system-ui;padding:5px;margin-top:5px}.hand .card-wrap{flex:0 0 182px}.hand{gap:13px;padding:10px 8px 20px;align-items:flex-start}.hand .card:hover:not(:disabled){transform:translateY(-3px)}.library-card .card{height:278px;min-height:278px}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(185px,1fr))}.unit-status{letter-spacing:.3px}
/* A real top card and up to five independently offset edges; no hidden card identities. */
.deck-stack{position:relative;flex:0 0 96px;width:96px;filter:drop-shadow(4px 7px 4px #0009);padding:0 8px 0 0}.deck-cards{position:relative;width:72px;height:96px;margin:auto;isolation:isolate}.deck-stack .sleeve,.empty-deck{position:relative;z-index:6;width:72px;height:96px;margin:0;border:2px solid #d2b878;border-radius:6px;box-shadow:inset 0 0 0 1px #25271b,0 2px 4px #0008;transform:rotate(-3deg)}.deck-edge{position:absolute;inset:0;transform:translate(calc(var(--layer)*2px),calc(var(--layer)*2px)) rotate(-3deg);z-index:calc(6 - var(--layer));border:1px solid #d0bf92;border-radius:6px;background:repeating-linear-gradient(0deg,#51452f 0px,#51452f 2px,#c6b58e 2px,#c6b58e 3px);box-shadow:1px 1px 1px #111}.deck-stack b{top:69px;right:0;z-index:8;padding:4px 8px;background:#14281fee;border:2px solid #dab975;font:bold 19px Georgia}.deck-stack>small{font:9px system-ui;letter-spacing:.7px;margin-top:15px;color:#f4deb0}.empty-deck{display:grid;place-content:center;background:#14251a60;border-style:dashed;color:#b2a991;box-shadow:none;transform:none;font:24px Georgia}.empty-deck small{font:10px system-ui;letter-spacing:1px}.deck-stack.exhausted b{background:#29281e}.enemy-staging{gap:16px;margin-bottom:8px}.player-row{gap:16px;margin-top:8px}.hero .portrait{width:58px;height:58px;flex-basis:58px}.hero{min-height:78px}.enemy-hand{width:160px}.enemy-hand .sleeve{height:73px;width:54px}.battle-journal{max-height:820px}.battle-journal ol{font-size:13px}.turn-line{padding:8px 0}.opponent-intro{display:flex;gap:20px;align-items:center;text-align:left;margin:24px 0}.opponent-intro img{width:120px;height:140px;object-fit:cover;border:2px solid #c4a260;border-radius:12px;box-shadow:0 8px 20px #0008}.opponent-intro h2{margin:0}.opponent-intro small{font:11px system-ui;color:#cfbc97}#opponent-select,#music-select{background:#241e15;color:#f5e5bf;border:1px solid #b49760;border-radius:5px;padding:9px;font:13px system-ui}#music-select{max-width:205px}#track-label{position:absolute;width:1px!important;min-width:0!important;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:1450px){.battle-grid{grid-template-columns:minmax(0,1fr)}.battle{padding:12px 20px}.table{padding:10px 14px}.board{grid-template-columns:repeat(6,minmax(0,180px));gap:10px}.battle-journal{max-height:145px;margin-top:4px}.battle-journal ol{font-size:12px}.battle-journal h4{margin-bottom:6px}.hero .portrait{width:48px;height:48px;flex-basis:48px}.hero strong{font-size:15px}.hero{min-height:70px}.enemy-staging,.player-row{gap:12px}.deck-stack{flex-basis:86px}.deck-cards,.deck-stack .sleeve,.empty-deck{width:65px;height:88px}.deck-stack b{top:62px}}
@media(max-width:900px){.board{grid-template-columns:repeat(6,180px);justify-content:start}.audio{flex-wrap:wrap;justify-content:flex-end}#music-select{max-width:160px}.battle{padding:12px}.hero small{font-size:10px}.hero b{font-size:22px}.battle-heading{align-items:flex-start}}
@media(max-width:700px){.table{padding:10px 6px}.board{gap:12px;padding:8px 5px 13px}.board .card.unit{height:266px;min-height:266px}.board .unit .art{height:102px;flex-basis:102px}.enemy-hand{display:none}.deck-stack{flex:0 0 76px;width:76px;padding-right:5px}.deck-cards,.deck-stack .sleeve,.empty-deck{width:58px;height:79px}.deck-stack b{font-size:17px;top:54px;padding:3px 6px}.deck-stack>small{font-size:8px;margin-top:13px}.hero{padding:6px;gap:6px;min-width:0}.hero .portrait{width:35px;height:35px;flex-basis:35px}.hero strong{font-size:12px}.hero small{font-size:9px}.hero b{font-size:17px;padding:7px}.enemy-staging{gap:8px}.player-row{gap:8px}.player-row>.hero{flex:1 1 calc(100% - 92px)}.player-row>.gold{margin-left:83px}.hand .card-wrap{flex-basis:182px}.battle-actions button{padding:7px;font-size:11px}.battle-journal{max-height:180px}.hand-label{font-size:10px;gap:12px}.opponent-intro{gap:12px}.opponent-intro img{width:85px;height:105px}.opponent-intro h2{font-size:22px}.opponent-intro p{font-size:13px}.skirmish-panel{padding:18px}#music-select{max-width:145px;padding:7px}.audio{gap:7px}.audio input{width:65px}.turn-message{font-size:11px;letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){.card{transition:none}.hand .card:hover:not(:disabled){transform:none}}
.card .art img{width:143%;max-width:none;margin-left:-21.5%;object-fit:cover;object-position:center 35%}.card .stats>b:only-child{font-size:14px;letter-spacing:1px;margin:auto}.opponent-intro img{object-position:center}.board .card-text{white-space:normal}
