/* Duelo independiente: madera, pergamino y cristales de cobalto. */
.hs-wallet{display:flex;align-items:center;gap:7px;border:1px solid #cba45d66;border-radius:20px;background:#372c1e;padding:7px 12px;color:#efcf8a;white-space:nowrap}.hs-wallet small{font-size:10px}.hs-wallet:hover{border-color:#efcf8a}.hs-win-gold{color:#efcf8a;font-size:12px}.hs-shop{max-width:1280px;margin:auto;padding:40px 35px}.hs-shop-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:28px}.hs-pack-offer{display:flex;align-items:center;gap:40px;padding:35px;border:1px solid #cba45d55;border-radius:8px;background:radial-gradient(ellipse at 20% 40%,#71532344,transparent 65%),#19272d}.hs-pack-offer h2{font-size:32px;color:#eedaa8}.hs-pack-offer p,.hs-shop-wallet p,.hs-shop-note{font-size:13px;color:#aebfba}.hs-pack-offer .hs-primary{margin:15px 0}.hs-pack-offer small{display:block;color:#c9bfa7;font-size:11px}.hs-pack-art{display:flex;flex-direction:column;justify-content:space-between;align-items:center;flex-shrink:0;width:170px;height:240px;padding:28px 12px;border:3px solid #bea06a;border-radius:12px;background:linear-gradient(140deg,#483b2b,#1c282e 60%,#695338);box-shadow:0 15px 25px #0005,inset 0 0 0 6px #cba45d30;transform:rotate(-7deg);color:#e8ce98}.hs-pack-art>span{font:22px Georgia,serif;letter-spacing:4px}.hs-pack-art>b{font-size:68px;font-weight:400}.hs-pack-art>small{font-size:8px;letter-spacing:1px}.hs-shop-wallet{padding:28px;border:1px solid #78938944;border-radius:8px;background:#1b2b30}.hs-shop-wallet>strong{display:block;font:54px Georgia,serif;color:#efcf8a;margin-top:20px}.hs-shop-wallet>strong small{display:block;font:12px Arial,sans-serif;color:#bdc9bd;margin-top:5px}.hs-pack-count{padding:15px 0;border-top:1px solid #78938944;color:#e4d8bd;font-size:13px}.hs-pack-count b{font-size:25px;margin-right:6px}.hs-shop-wallet .hs-secondary{width:100%}.hs-shop button:disabled{opacity:.45;cursor:default}.hs-shop-notice{min-height:25px;color:#efcf8a;font-size:13px}.hs-pack-results>h2{font-size:28px}.hs-pack-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;padding:15px 0 25px}.hs-pack-cards article{min-width:0;text-align:center}.hs-pack-cards .hs-card{width:100%;max-width:210px;opacity:1;cursor:default}.hs-pack-cards p{font-size:11px;color:#b9c9bd}.hs-shop-note{border-top:1px solid #78938944;padding-top:20px}.hs-card-locked .hs-card-art{filter:grayscale(1);opacity:.45}.hs-card-locked .hs-card-badge{background:#3b4145;color:#bcc3c6}
@media(max-width:950px){.hs-pack-offer{gap:25px;padding:25px}.hs-pack-art{width:130px;height:200px}.hs-pack-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.hs-shop{padding:24px 16px}.hs-shop-layout{grid-template-columns:1fr}.hs-pack-offer{gap:20px;padding:22px 16px}.hs-pack-art{width:100px;height:165px;padding:20px 10px}.hs-pack-art>b{font-size:42px}.hs-pack-art>span{font-size:15px}.hs-pack-offer h2{font-size:24px}.hs-pack-offer p{font-size:11px}.hs-pack-offer .hs-primary{font-size:11px;padding:12px}.hs-pack-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.hs-wallet{font-size:12px;padding:6px 9px}.hs-wallet small{display:none}.hs-section-nav{gap:15px}}
#app.duel-view{display:block;min-height:100vh;background:#141b20;color:#ede6d7;font-family:Arial,sans-serif;--hs-gold:#dcc18b;--hs-blue:#52acdf;--hs-green:#89d2a1}
.duel-view *{box-sizing:border-box}.duel-view button,.duel-view input,.duel-view select{font:inherit}.duel-view button{cursor:pointer}.duel-view button:disabled{cursor:default}.duel-view button:focus-visible,.duel-view input:focus-visible,.duel-view select:focus-visible{outline:3px solid #91d1ff;outline-offset:4px}.duel-view h1,.duel-view h2,.hs-wordmark{font-family:Georgia,serif}.duel-view h1{margin:12px 0 18px;font-size:clamp(34px,4vw,58px);font-weight:400;line-height:1.08}.duel-view h1 em{color:var(--hs-gold);font-style:normal}.duel-view p{line-height:1.65}.duel-view h2{font-weight:400}.hs-eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#acb8b9}.hs-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 35px;border-bottom:1px solid #839a9130;background:#111a1ee8}.hs-wordmark{letter-spacing:3px;font-size:19px;color:#e0c48d}.hs-wordmark i{font-size:10px;font-style:normal;letter-spacing:1px}.hs-back,.hs-help,.hs-link{border:0;background:none;color:#b5c3c3;padding:8px 0;font-size:12px}.hs-back:hover,.hs-help:hover,.hs-link:hover{color:#f1d196}.hs-help{font-size:18px}.hs-help span{font-size:12px;margin-left:8px}.hs-storage{margin:0;padding:12px 24px;background:#6c4d21;color:#fff0cd;font-size:13px}
.hs-primary,.hs-secondary{display:inline-flex;justify-content:center;align-items:center;border:1px solid #e0bd7a;border-radius:5px;background:linear-gradient(#ead3a0,#c89a52);box-shadow:0 4px 0 #74592e,0 8px 20px #0003;color:#292117;font-weight:700;padding:15px 24px;gap:12px;transition:filter .15s,transform .15s}.hs-primary:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.hs-primary:disabled{opacity:.4;box-shadow:none}.hs-secondary{background:#233036;border-color:#586966;box-shadow:none;color:#e0d7c4;padding:10px 18px}.hs-seal{display:grid;place-items:center;color:var(--house,#d3b882);border:1px solid var(--house,#d3b882);height:48px;width:48px;flex-shrink:0;border-radius:50% 50% 8px 8px;font:24px Georgia,serif;background:#121d2380;box-shadow:inset 0 0 18px #0005}
.hs-lobby{position:relative;padding:45px max(25px,calc((100vw - 1320px)/2)) 0;isolation:isolate;min-height:calc(100vh - 72px)}.hs-lobby:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#141b20,#141b20d9 45%,#141b2055),linear-gradient(0deg,#141b20 4%,#141b2055 80%),url('assets/escenarios/exterior-ruinas.png') 65% 35%/cover;opacity:.72}.hs-lobby-title{margin-bottom:30px}.hs-lobby-title p{color:#b9c4c0;font-size:15px}.hs-lobby-layout{display:grid;grid-template-columns:230px minmax(360px,1fr) 230px;gap:28px;align-items:start}.hs-houses{display:grid;gap:10px;margin-top:20px}.hs-house{display:flex;align-items:center;gap:15px;text-align:left;padding:12px;background:#17242be8;color:#d5ddda;border:1px solid #54656155;border-radius:6px}.hs-house .hs-seal{height:40px;width:40px;font-size:21px}.hs-house span b{display:block;font:18px Georgia,serif}.hs-house span small{display:block;font-size:10px;color:#9bacae;margin-top:6px}.hs-house:hover,.hs-house.chosen{border-color:var(--house);background:#27363be8}.hs-house.chosen{box-shadow:inset 3px 0 var(--house)}.hs-house-detail{display:grid;grid-template-columns:40% 1fr;border:1px solid #788c7955;border-radius:8px;overflow:hidden;background:linear-gradient(150deg,#25353df2,#14222a);min-height:342px;margin-top:32px}.hs-champion-art{position:relative;min-height:342px;overflow:hidden;border-right:1px solid #65757055}.hs-champion-art>img{height:100%;width:100%;object-fit:cover;object-position:50% 20%;opacity:.85;position:absolute}.hs-champion-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101b28f0,transparent 65%)}.hs-champion-art>.hs-seal{position:absolute;left:18px;top:18px;z-index:1;background:#14232de0}.hs-champion-art>span:last-child{position:absolute;bottom:18px;left:22px;z-index:1;font:48px Georgia,serif;color:#f1c6b9}.hs-champion-art small{display:block;font:9px Arial,sans-serif;color:#c1bba9;letter-spacing:2px}.hs-champion-copy{padding:25px 22px}.hs-champion-copy h2{font-size:30px;margin:12px 0;color:var(--house)}.hs-champion-copy>p{font-size:13px;color:#bac9c6;margin-bottom:22px}.hs-power-description{display:flex;gap:14px;align-items:center;padding:16px 0;border-top:1px solid #71817833;border-bottom:1px solid #71817833}.hs-power-description .hs-cost{position:static;flex-shrink:0;height:34px;width:34px;font-size:20px}.hs-power-description b{font-size:13px}.hs-power-description small{display:block;color:#b6c4c3;font-size:11px;line-height:1.5;margin-top:6px}.hs-deck-caption{display:block;margin-top:20px;font-size:11px;color:#93a9af}.hs-champion-copy>.hs-link{font-size:11px;text-align:left;line-height:1.5}.hs-match-setup label{display:block;color:#c9d2ca;font-size:12px;margin:24px 0 12px}.duel-view select,.duel-view input{color:#e5e9df;background:#17272d;border:1px solid #657a73;border-radius:4px;padding:12px;max-width:100%}.hs-match-setup select{width:100%}.hs-match-setup>p{font-size:12px;color:#a2b6b9}.hs-match-facts{display:grid;gap:10px;margin:23px 0;color:#afc0bf;font-size:12px}.hs-match-facts b{display:inline-block;width:28px;color:#e0c48e;font:21px Georgia,serif}.hs-match-setup>.hs-primary{width:100%;font-size:13px;padding:15px 12px}.hs-match-setup>.hs-link{display:block;margin:auto;margin-top:8px}.hs-record{margin-top:22px;font-size:10px;color:#9db0b2}.hs-record b{color:#d5c393}.hs-record i{margin:0 10px}.hs-lobby-footer{display:flex;align-items:center;justify-content:space-between;margin-top:35px;padding:20px 0;border-top:1px solid #acb08a33}.hs-lobby-footer span{font-size:9px;letter-spacing:1.5px;color:#9dbaa9}.hs-lobby-footer p{font-size:11px;color:#a1b2b4}.hs-home-entry{padding:30px 44px;border-top:1px solid #a99d6740;background:radial-gradient(ellipse at 80% 50%,#4283ae33,transparent 65%),#1a2a31;display:flex;justify-content:space-between;align-items:center;gap:30px}.hs-home-entry h2{font:32px Georgia,serif;color:#e3c78e;margin:8px 0}.hs-home-entry p{font-size:13px;color:#b1c3c1;line-height:1.6}.hs-home-entry .hs-primary{flex-shrink:0}
.hs-card{position:relative;display:flex;flex-direction:column;align-items:center;width:166px;min-height:260px;flex-shrink:0;padding:10px 10px 30px;border:3px solid #ad986c;border-radius:20px 20px 11px 11px;background:linear-gradient(130deg,#c4b38a,#e5d5ae 45%,#bfa67a);box-shadow:inset 0 0 0 2px #eee0b766,0 5px 9px #0005;color:#30291f;transition:transform .16s,box-shadow .16s;text-align:center}.hs-card:hover:not(:disabled){transform:translateY(-7px);z-index:2;box-shadow:0 0 0 2px #e6d5a0,0 12px 22px #0007}.hs-card:disabled{filter:saturate(.65);opacity:.76}.hs-card.hs-selected{outline:3px solid #69d7c6;outline-offset:2px;transform:translateY(-8px);box-shadow:0 0 22px #61d6b35c}.hs-card-art{border-radius:45% 45% 8% 8%;height:105px;width:100%;overflow:hidden;border:2px solid #8e7a50;background:#233638}.hs-card-art img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.hs-card-name{font:700 15px/1.1 Georgia,serif;display:block;min-height:32px;padding:7px 3px 0}.hs-card-type{font-size:8px;text-transform:uppercase;letter-spacing:.3px;margin:6px 0;color:#66583a}.hs-card-text{font-size:11px;line-height:1.4;display:block;flex:1;padding:4px 2px 8px}.hs-cost{display:grid;place-items:center;position:absolute;top:-9px;left:-10px;z-index:2;background:radial-gradient(circle at 35% 30%,#76d1fb,#267bb5 60%,#234c7c);border:2px solid #b9dff0;border-radius:40% 50% 40% 50%;height:38px;width:38px;color:white;font:700 26px Georgia,serif;text-shadow:0 2px #143252;box-shadow:0 2px 4px #0006;transform:rotate(-5deg)}.hs-atk,.hs-hp{display:grid;place-items:center;position:absolute;bottom:-6px;z-index:2;border:2px solid #eee2b8;height:34px;min-width:34px;font:bold 22px Georgia,serif;color:white;text-shadow:1px 2px #000a;box-shadow:0 2px 4px #0006}.hs-atk{left:-7px;background:radial-gradient(circle at 35% 30%,#f4cd58,#a67829);border-radius:45%}.hs-hp{right:-7px;background:radial-gradient(circle at 35% 30%,#ef8168,#9a3637);border-radius:50% 50% 45% 45%}.hs-hp.damaged{color:#ffe2b1}.hs-durability{background:#6d7d80;border-radius:25%}.hs-spell-mark{position:absolute;bottom:7px;color:#977646;font-size:21px}.hs-card-badge{position:absolute;bottom:6px;font-size:9px;font-weight:700;letter-spacing:.7px;background:#fff6dc99;padding:3px 7px;border-radius:3px}.hs-legendary{border-color:#dda13d}.hs-legendary:after{content:'★';position:absolute;right:3px;top:1px;color:#ffe5a5;text-shadow:0 1px 3px #583e12}.hs-weapon{border-color:#7c8581}.hs-spell{border-color:#9a8da7}.hs-compact{width:143px;min-height:222px;padding:8px 8px 26px;border-width:2px;border-radius:16px 16px 8px 8px}.hs-compact .hs-card-art{height:78px}.hs-compact .hs-card-name{font-size:13px;min-height:31px}.hs-compact .hs-card-text{font-size:10px}.hs-compact .hs-card-type{font-size:7px}.hs-compact .hs-cost{width:32px;height:32px;font-size:23px}.hs-compact .hs-atk,.hs-compact .hs-hp{height:30px;min-width:30px;font-size:20px}
.hs-builder{max-width:1440px;padding:38px 38px 60px;margin:auto}.hs-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.hs-page-heading h1{font-size:38px}.hs-page-heading p{color:#adbfbb;font-size:13px}.hs-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:35px}.hs-library-tools{display:flex;gap:12px;margin-bottom:26px}.hs-library-tools input{width:100%}.hs-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(166px,1fr));justify-items:center;gap:24px 14px;padding:10px 5px}.hs-deck-panel{background:#202f35;border:1px solid #66766866;border-radius:7px;padding:18px;align-self:start;position:sticky;top:20px}.hs-deck-title{display:flex;gap:14px;align-items:center}.hs-deck-title h2{font-size:24px;margin:0}.hs-deck-title h2 b{display:block;font:12px Arial,sans-serif;color:#b3c9c4;margin-top:5px}.hs-curve{display:flex;height:72px;align-items:flex-end;gap:8px;margin:20px 0}.hs-curve>span{display:flex;flex-direction:column;width:100%;align-items:center;justify-content:flex-end;height:100%;gap:5px}.hs-curve i{width:100%;max-height:55px;background:linear-gradient(#a1c9d9,#3b7596);border-radius:2px}.hs-curve small{font-size:9px;color:#a3bab8}.hs-deck-list{display:grid;gap:4px;max-height:390px;overflow-y:auto;margin:14px 0 20px}.hs-deck-list button{display:flex;gap:9px;align-items:center;min-height:30px;border:1px solid #ffffff0d;border-radius:3px;background:#151f24;color:#d7dbcb;font-size:11px;text-align:left;padding:4px 7px}.hs-deck-list button:hover{background:#31434c;border-color:#e3ba7555}.hs-deck-list button>span:nth-child(2){flex:1}.hs-deck-list button>i{font-size:18px;font-style:normal;color:#bf8f6f}.hs-mini-cost{background:#215880;color:#d4e7ee;font-weight:700;padding:2px 5px;border-radius:3px}.hs-deck-panel>.hs-primary{width:100%}.hs-deck-actions{display:flex;justify-content:space-between;margin:12px 0}.hs-deck-panel>small{font-size:10px;color:#a7b9b4;line-height:1.5;display:block}
.hs-mulligan{padding:48px 24px;text-align:center;background:radial-gradient(ellipse at 50% 0,#376a7755,transparent 70%)}.hs-mulligan h1{font-size:46px}.hs-mulligan>p{font-size:13px;color:#b6c9c5}.hs-opening-hand{display:flex;justify-content:center;gap:28px;padding:32px 10px 48px;flex-wrap:wrap}.hs-mulligan>.hs-link{display:block;margin:20px auto}
.hs-battle{max-width:1400px;margin:auto;padding:0 24px 18px}.hs-battle-top{display:flex;justify-content:space-between;align-items:center;padding:13px 0}.hs-table{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;padding:7px 150px 16px;min-height:545px;border:12px solid #514132;border-top-color:#7d6144;border-bottom-color:#312d29;border-radius:58px 58px 38px 38px;background:radial-gradient(ellipse at 50% 45%,#dfd1ae,#c0b08b 58%,#9e8e72);box-shadow:inset 0 0 0 3px #b6a17b,inset 0 0 48px #6d563c66,0 15px 30px #0005}.hs-table:before{content:'';position:absolute;inset:14px;border:1px solid #8e795944;border-radius:30px;pointer-events:none;z-index:-1}.hs-enemy-hand{display:flex;justify-content:center;gap:4px;height:42px;max-width:100%;align-items:center;position:relative;margin-bottom:8px}.hs-card-back{display:grid;place-items:center;width:30px;height:40px;background:radial-gradient(#65878c,#234151);border:2px solid #bfa171;border-radius:5px;color:#d2b57a;font-size:21px;box-shadow:0 3px 3px #0004;transform:rotate(-5deg)}.hs-enemy-hand>small{position:absolute;right:-66px;color:#5b503c;font-size:10px;white-space:nowrap}.hs-hero-area{display:flex;align-items:center;justify-content:center;gap:20px;width:100%}.hs-hero{position:relative;display:block;width:100px;height:110px;border:5px solid #978357;border-top-color:#d0b979;border-radius:50% 50% 15% 15%;padding:0;background:#283744;box-shadow:0 4px 9px #0006;flex-shrink:0;transition:transform .15s}.hs-hero img{width:100%;height:100%;object-fit:cover;object-position:center 20%;border-radius:inherit}.hs-hero-house{position:absolute;bottom:4px;left:0;right:0;background:#1f1b15bd;color:#f4e7c6;text-align:center;font:11px Georgia,serif;padding:4px 0}.hs-hero .hs-hp{height:37px;min-width:37px;font-size:25px;right:-16px;bottom:-8px}.hs-hero .hs-atk{bottom:-8px;left:-13px}.hs-armor{position:absolute;right:-25px;top:15px;background:#5b7584;border:2px solid #c7d5da;padding:4px;border-radius:6px;color:#fff;font-weight:700;font-size:13px;box-shadow:0 2px 4px #0004}.hs-hero-frozen{position:absolute;inset:0;display:grid;place-items:center;color:#bfeafa;font-size:40px}.hs-equipment{width:115px;display:flex;align-items:center;flex-direction:column;gap:5px;color:#5e533e;text-align:center;font-size:9px}.hs-equipment img{height:39px;width:39px;object-fit:cover;border:3px solid #8d7652;border-radius:50%;box-shadow:0 2px 4px #0004}.hs-equipment b{font-size:10px}.hs-equipment i{margin:0 3px}.hs-equipment-empty{font:italic 11px Georgia,serif;color:#7e7057}.hs-power{display:flex;flex-direction:column;align-items:center;position:relative;border:none;background:none;width:130px;padding:0 2px;color:#423b29;text-align:center}.hs-power-symbol{height:49px;width:49px;display:grid;place-items:center;border-radius:50%;border:4px solid #a89261;box-shadow:0 3px 7px #0004;background:radial-gradient(circle at 35% 30%,#657f81,#283d42);color:var(--house);font:28px Georgia,serif}.hs-power .hs-cost{top:0;left:22px;height:23px;width:23px;font-size:15px;border-width:1px}.hs-power b{font-size:11px;margin-top:8px}.hs-power small{font-size:9px;line-height:1.25;margin-top:4px;max-width:125px}.hs-power:disabled{opacity:.6}.hs-player-hero .hs-power:not(:disabled) .hs-power-symbol{box-shadow:0 0 9px #62bf7188;border-color:#76a86c}
.hs-arena{width:100%;padding:12px 0;margin:10px 0}.hs-board-row{position:relative;min-height:100px;display:flex;justify-content:center;align-items:center}.hs-row-label{position:absolute;left:-125px;font-size:9px;letter-spacing:1px;color:#6d634b;display:flex;flex-direction:column;gap:6px}.hs-row-label b{font-size:12px;color:#514430}.hs-units{display:flex;justify-content:center;align-items:center;gap:17px;min-height:102px;width:100%;flex-wrap:nowrap}.hs-empty-board{font:italic 14px Georgia,serif;color:#8b7d61;margin:0}.hs-midline{display:flex;align-items:center;gap:18px;color:#a39169;height:20px}.hs-midline i{height:1px;background:linear-gradient(90deg,transparent,#95815d44,transparent);flex:1}.hs-unit{position:relative;width:86px;height:94px;flex-shrink:0;padding:0;border:4px solid #89754f;border-radius:48%;background:#39463d;box-shadow:0 4px 6px #0005;transition:transform .15s}.hs-unit>img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.hs-unit-name{position:absolute;bottom:6px;left:3px;right:3px;display:block;color:#fff4d1;background:#1a2119d4;font:9px/1.15 Georgia,serif;padding:3px 0;border-radius:3px}.hs-unit .hs-atk,.hs-unit .hs-hp{height:28px;min-width:28px;font-size:19px;bottom:-8px}.hs-unit-status{position:absolute;right:-5px;top:-8px;color:#e2eff3;font-size:16px;font-weight:700;text-shadow:1px 1px #28393d}.hs-unit-keywords{position:absolute;top:-12px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#253c42;color:#d1e1d6;font-size:8px;padding:2px 4px;border-radius:3px;max-width:110px;overflow:hidden}.hs-unit-keywords:empty{display:none}.hs-taunt{border-radius:40% 40% 19% 19%;border:5px solid #6d7980;box-shadow:0 0 0 2px #c5c5b0,0 5px 8px #0005}.hs-divine:after{content:'';position:absolute;inset:-10px;border:2px solid #f4da80aa;border-radius:50%;background:radial-gradient(ellipse,transparent 50%,#ffe5a540);pointer-events:none;box-shadow:0 0 15px #ffe0a140}.hs-frozen{box-shadow:0 0 0 3px #8cd3ec,0 0 18px #58bdea88}.hs-ready{border-color:#68aa73;box-shadow:0 0 0 2px #b8d59088,0 0 13px #65b47244}.hs-unit.hs-selected,.hs-hero.hs-selected{outline:3px solid #27a4b9;outline-offset:3px;transform:translateY(-3px)}.hs-target{outline:3px solid #b3692c;outline-offset:3px;box-shadow:0 0 15px #ed9d3f99}.hs-target:hover{transform:scale(1.05)}.hs-power.hs-selected .hs-power-symbol{outline:3px solid #27a4b9}.hs-insert{width:24px;min-width:18px;height:45px;padding:0;border:1px dashed #649679;border-radius:6px;color:#355c44;background:#78c2a32a;font-size:20px}.hs-insert:hover{background:#6ab98577}.hs-friendly-row:has(.hs-insert) .hs-units{gap:7px}.hs-friendly-row:has(.hs-insert) .hs-unit{width:70px;height:85px}
.hs-table-rail{position:absolute;right:22px;top:83px;bottom:35px;width:114px;display:flex;align-items:center;flex-direction:column;justify-content:space-between}.hs-rival-resources{text-align:center;color:#625d45}.hs-rival-resources>span{font-size:8px;letter-spacing:1px;display:block}.hs-rival-resources>b{display:block;color:#305b78;font:23px Georgia,serif;margin:7px 0}.hs-rival-resources small{font-size:9px;line-height:1.4;display:block}.hs-end-turn{border:3px solid #a37c3f;border-radius:14px 4px 14px 4px;background:linear-gradient(#efd487,#c6a055);color:#4c351b;font-size:13px;font-weight:700;padding:15px 8px;box-shadow:0 4px 0 #716043,0 6px 12px #0004;min-height:70px;max-width:114px}.hs-end-turn>span{display:block;margin-top:4px;font-size:22px}.hs-end-turn:disabled{background:linear-gradient(#a69f87,#8c826d);border-color:#81775d;color:#d8d1b8;box-shadow:0 3px 0 #736a54}.hs-deck-stack{display:flex;flex-direction:column;align-items:center;color:#655842;position:relative;font-size:9px;text-align:center}.hs-deck-stack>span{display:grid;place-items:center;width:49px;height:66px;background:radial-gradient(#60898e,#2a414f);border:3px solid #b19460;border-radius:5px;color:#d5b778;font-size:28px;box-shadow:3px 3px #9a865e,5px 5px #514732;margin-bottom:6px}.hs-deck-stack b{position:absolute;top:42px;right:15px;background:#eee0bd;border:1px solid #7d6b47;border-radius:50%;font-size:13px;padding:3px 6px}.hs-deck-stack small{font-size:9px;line-height:1.4;max-width:95px}.hs-table-ornament{position:absolute;left:32px;top:65px;font:21px Georgia,serif;text-align:center;color:#978262;letter-spacing:4px}.hs-table-ornament small{font-size:8px;letter-spacing:3px}
.hs-status{min-height:43px;display:flex;justify-content:center;align-items:center;gap:18px;margin-top:8px;text-align:center;color:#cdd4c4;font-size:12px}.hs-status>span{flex:1}.hs-hand-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 4px 14px;color:#9cafad;font-size:10px;letter-spacing:1px}.hs-hand-bar>span b{color:#d6c8a0;margin-left:9px}.hs-mana{display:flex;align-items:center;gap:12px}.hs-mana>b{font:24px Georgia,serif;color:#77c5f1}.hs-mana>b small{font-size:14px;color:#9faeb5}.hs-mana>span{display:flex;gap:6px}.hs-mana i{height:17px;width:13px;transform:rotate(20deg);border:1px solid #425261;border-radius:30% 30% 25% 25%;background:#1e2b35}.hs-mana i.filled{background:linear-gradient(120deg,#a5e3ff,#408bcc);border-color:#8dcae9;box-shadow:0 0 7px #4d9ce344}.hs-mana i.spent{background:#30516a;border-color:#4a7490}.hs-hand{display:flex;justify-content:center;gap:12px;padding:14px 12px 18px;overflow-x:auto;min-height:257px;background:radial-gradient(ellipse at 50% 110%,#405253,transparent 70%)}.hs-hand>.hs-card{flex-shrink:1;min-width:100px}.hs-hand>.hs-card:hover{flex-shrink:0}.hs-empty-hand{color:#9fb3b0;font-size:13px;padding:25px 10px}.hs-history{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid #586c6040;font-size:11px;color:#a5b6b2}.hs-history>span{flex:1;text-align:right}.hs-history>ol{width:100%;display:grid;gap:6px;padding:10px 20px;background:#1d282c;border-radius:6px;max-height:250px;overflow:auto}
.hs-overlay,.hs-result{position:fixed;inset:0;z-index:100;background:#071015d9;backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:25px;overflow-y:auto}.hs-overlay>section,.hs-result>div{position:relative;max-width:680px;max-height:calc(100dvh - 50px);overflow:auto;background:linear-gradient(150deg,#27363b,#14232c);border:1px solid #a2a08066;border-radius:10px;padding:34px 40px;box-shadow:0 20px 80px #0008}.hs-close{position:absolute;top:8px;right:16px;border:0;background:none;font-size:30px;color:#c1c8bd}.hs-rules h2,.hs-confirm h2{font-size:32px;margin:10px 0 20px}.hs-rules p,.hs-rules dd,.hs-confirm p{font-size:13px;color:#c1cfcb;line-height:1.6}.hs-rules dt{font-size:13px;font-weight:700;color:#dfc78e;margin:17px 0 6px}.hs-rules dd{margin:0}.hs-rules-note{padding-top:12px;border-top:1px solid #85907355}.hs-confirm{width:460px}.hs-confirm>.hs-link{display:block;margin:16px auto 0}.hs-result>div{width:480px;text-align:center;padding:40px}.hs-result .hs-seal{margin:0 auto 25px;width:65px;height:65px;font-size:32px}.hs-result h1{color:#e5c994;font-size:62px}.hs-result p{font-size:13px;color:#b8c7c3}.hs-result>div>.hs-link{display:block;margin:20px auto 0}
@media(max-width:1150px){.hs-lobby-layout{grid-template-columns:200px minmax(310px,1fr) 200px;gap:18px}.hs-lobby{padding:35px 24px 0}.hs-champion-copy{padding:22px 16px}.hs-champion-copy h2{font-size:26px}.hs-house-detail{grid-template-columns:35% 1fr}.hs-table{padding-left:110px;padding-right:115px}.hs-table-rail{right:12px;width:92px}.hs-end-turn{font-size:11px;padding:10px 4px}.hs-row-label{left:-91px}.hs-units{gap:10px}.hs-unit{width:74px;height:86px}.hs-table-ornament{left:22px}.hs-builder-layout{grid-template-columns:minmax(0,1fr) 290px;gap:20px}.hs-library{gap:22px 10px}.hs-battle{padding-left:15px;padding-right:15px}.hs-card.hs-compact{width:132px}.hs-hand{gap:10px}.hs-friendly-row:has(.hs-insert) .hs-unit{width:60px;height:77px}.hs-friendly-row:has(.hs-insert) .hs-units{gap:4px}.hs-insert{min-width:15px;width:20px}}
@media(max-width:950px){.hs-lobby-layout{grid-template-columns:220px minmax(0,1fr)}.hs-match-setup{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;background:#142128b8;border:1px solid #6b7c6755;padding:20px;border-radius:7px}.hs-match-setup>label{margin:0}.hs-match-setup>.hs-eyebrow{grid-column:1/-1;margin-bottom:8px}.hs-match-setup>.hs-primary{grid-column:2;grid-row:3}.hs-match-facts{grid-column:1;grid-row:4;display:flex;margin:8px 0;gap:16px}.hs-match-facts span{font-size:9px}.hs-match-setup>.hs-link{grid-column:2;margin:0}.hs-record{grid-column:2;margin:0}.hs-match-setup>p{margin:0;grid-column:1;grid-row:3}.hs-lobby-footer{margin-top:25px}.hs-table{padding:8px 85px 12px 62px;border-width:9px}.hs-unit{width:65px;height:80px}.hs-units{gap:8px}.hs-row-label{left:-49px;font-size:7px}.hs-row-label b{font-size:9px}.hs-table-rail{width:70px;right:6px;top:65px;bottom:20px}.hs-table-ornament{display:none}.hs-enemy-hand{height:32px}.hs-card-back{height:30px;width:23px;font-size:16px}.hs-hero{width:82px;height:96px}.hs-table{min-height:503px}.hs-hero-area{gap:18px}.hs-hero .hs-hp{height:33px;min-width:33px;font-size:23px}.hs-end-turn{font-size:10px;min-height:65px}.hs-deck-stack b{right:0}.hs-rival-resources>span{font-size:7px}.hs-rival-resources small{font-size:8px}.hs-rival-resources>b{font-size:18px}.hs-equipment{width:98px}.hs-power{width:112px}.hs-power b{font-size:10px}.hs-power small{font-size:8px}.hs-power .hs-cost{left:16px}.hs-friendly-row:has(.hs-insert) .hs-units{gap:3px}.hs-friendly-row:has(.hs-insert) .hs-unit{width:51px;height:69px}.hs-insert{min-width:13px;width:16px}.hs-hand{justify-content:flex-start}.hs-hand>.hs-card{flex-shrink:0;width:139px}.hs-home-entry{padding:25px 28px}.hs-builder-layout{grid-template-columns:minmax(0,1fr) 265px}.hs-builder{padding:28px 22px}.hs-page-heading h1{font-size:30px}}
@media(max-width:680px){.hs-header{height:60px;padding:0 15px}.hs-wordmark{font-size:14px;letter-spacing:1.5px}.hs-wordmark i{font-size:8px}.hs-back span,.hs-help span{display:none}.hs-lobby{padding:30px 18px 0}.hs-lobby-title h1{font-size:42px}.hs-lobby-title p{font-size:13px}.hs-lobby-layout{grid-template-columns:1fr;gap:18px}.hs-house-picker>.hs-eyebrow{display:block;margin-bottom:10px}.hs-houses{display:flex;overflow-x:auto;margin:0;gap:8px;padding:2px 2px 8px}.hs-house{flex-direction:column;min-width:116px;padding:12px 8px;text-align:center;gap:9px}.hs-house span b{font-size:15px}.hs-house span small{font-size:8px}.hs-house.chosen{box-shadow:inset 0 -3px var(--house)}.hs-house-detail{margin:0;grid-template-columns:35% 1fr;min-height:285px}.hs-champion-art{min-height:285px}.hs-champion-copy{padding:22px 18px}.hs-champion-copy h2{font-size:28px}.hs-champion-copy>.hs-eyebrow{font-size:8px}.hs-champion-copy>p{font-size:12px;margin-bottom:16px}.hs-power-description{padding:12px 0}.hs-match-setup{padding:18px;gap:12px}.hs-match-facts{gap:9px;flex-wrap:wrap}.hs-match-facts b{font-size:18px;width:21px}.hs-match-setup>.hs-primary{padding:13px 9px;font-size:11px}.hs-match-setup>p{font-size:11px}.hs-record{font-size:9px}.hs-lobby-footer{display:block;padding:20px 0 10px}.hs-lobby-footer span{font-size:8px}.hs-home-entry{display:block;padding:22px}.hs-home-entry .hs-primary{margin-top:10px}.hs-builder{padding:22px 15px}.hs-page-heading{display:block;margin-bottom:20px}.hs-page-heading h1{font-size:31px}.hs-page-heading p{font-size:12px}.hs-builder-layout{display:flex;flex-direction:column-reverse;gap:25px}.hs-deck-panel{position:static;width:100%;padding:15px}.hs-deck-title .hs-seal{height:38px;width:38px}.hs-deck-title h2{font-size:22px}.hs-deck-title h2 b{display:inline;margin-left:8px}.hs-curve{height:45px;margin:12px 0}.hs-curve i{max-height:28px}.hs-deck-list{max-height:150px}.hs-deck-panel>.hs-primary{padding:10px}.hs-deck-actions{margin:8px 0}.hs-library{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:24px 15px}.hs-library>.hs-card{width:148px;min-height:254px}.hs-library-tools{gap:8px}.hs-library-tools input{min-width:0;font-size:12px}.hs-library-tools select{font-size:11px;width:135px}.hs-mulligan{padding:32px 18px}.hs-mulligan h1{font-size:36px}.hs-mulligan>p{font-size:12px}.hs-opening-hand{gap:24px 20px;padding:27px 0 35px}.hs-opening-hand>.hs-card{width:148px;min-height:258px}.hs-battle{padding:0 8px 16px}.hs-battle-top{padding:10px 4px}.hs-battle-top .hs-eyebrow{font-size:8px;letter-spacing:.5px}.hs-battle-top .hs-link{font-size:10px}.hs-table{padding:7px 9px 13px;min-height:450px;border-width:6px;border-radius:30px 30px 22px 22px}.hs-table:before{inset:8px}.hs-hero{width:72px;height:83px;border-width:4px}.hs-hero-house{font-size:9px}.hs-hero .hs-hp{min-width:30px;height:30px;font-size:21px;right:-12px}.hs-hero .hs-atk{min-width:26px;height:26px;font-size:18px}.hs-hero-area{gap:22px}.hs-equipment{width:88px;font-size:8px}.hs-equipment b{font-size:8px}.hs-equipment img{height:30px;width:30px}.hs-equipment-empty{font-size:10px}.hs-power{width:99px}.hs-power-symbol{height:39px;width:39px;font-size:22px;border-width:3px}.hs-power b{font-size:9px;margin-top:5px}.hs-power small{font-size:8px;max-width:95px}.hs-power .hs-cost{height:21px;width:21px;font-size:14px;left:14px}.hs-enemy-hand{height:25px;margin-bottom:8px}.hs-card-back{height:23px;width:18px;border-width:1px;font-size:13px}.hs-enemy-hand>small{font-size:8px;right:-51px}.hs-arena{margin:6px 0;padding:6px 0;width:100%;overflow-x:auto}.hs-board-row{min-height:89px}.hs-row-label{display:none}.hs-units{gap:7px;min-height:89px;justify-content:center;min-width:max-content}.hs-unit{width:42px;height:59px;border-width:3px}.hs-unit .hs-atk,.hs-unit .hs-hp{height:22px;min-width:22px;font-size:15px;border-width:1px;bottom:-7px}.hs-unit .hs-atk{left:-5px}.hs-unit .hs-hp{right:-5px}.hs-unit-name{font-size:7px;line-height:1.05;bottom:4px;left:0;right:0;padding:2px 0}.hs-unit-keywords{font-size:6px;max-width:65px;top:-10px;padding:2px}.hs-unit-status{font-size:12px;right:-5px;top:-6px}.hs-taunt{border-width:3px}.hs-divine:after{inset:-6px;border-width:1px}.hs-empty-board{font-size:13px}.hs-midline{height:12px}.hs-friendly-row:has(.hs-insert) .hs-unit{width:42px;height:59px}.hs-friendly-row:has(.hs-insert) .hs-units{justify-content:flex-start;gap:5px;padding:0 8px;min-width:max-content}.hs-insert{width:18px;min-width:18px;height:35px}.hs-table-rail{position:static;flex-direction:row;width:100%;margin-top:16px;padding:10px 8px 0;border-top:1px solid #92784955;gap:10px}.hs-end-turn{min-height:39px;max-width:none;padding:8px 16px;display:flex;align-items:center;gap:10px;border-width:2px;border-radius:9px;font-size:12px}.hs-end-turn>span{margin:0;font-size:18px}.hs-rival-resources{width:86px}.hs-rival-resources>b{margin:3px 0;font-size:17px}.hs-rival-resources small{font-size:7px}.hs-deck-stack{width:72px}.hs-deck-stack>span{height:32px;width:25px;border-width:2px;font-size:17px;margin:0}.hs-deck-stack b{font-size:10px;right:8px;top:19px;padding:2px 4px}.hs-deck-stack small{font-size:7px;margin-top:6px}.hs-status{min-height:47px;font-size:11px;padding:5px;gap:8px;margin-top:8px}.hs-status .hs-link{font-size:9px;white-space:nowrap}.hs-hand-bar{padding:0 8px 8px;font-size:9px}.hs-mana{gap:8px}.hs-mana>b{font-size:22px}.hs-mana>b small{font-size:12px}.hs-mana>span{gap:4px}.hs-mana i{height:14px;width:10px}.hs-hand{padding:12px 10px 16px;gap:13px;min-height:225px}.hs-hand>.hs-card{width:127px;min-height:207px;flex-shrink:0}.hs-compact .hs-card-art{height:65px}.hs-compact .hs-card-name{font-size:12px}.hs-compact .hs-card-text{font-size:9px;line-height:1.4}.hs-compact .hs-card-type{font-size:6px}.hs-compact .hs-cost{height:28px;width:28px;font-size:21px}.hs-history{padding:0 8px;gap:10px}.hs-history>.hs-link{font-size:10px}.hs-history>span{font-size:9px;text-align:left}.hs-overlay,.hs-result{padding:14px}.hs-overlay>section,.hs-result>div{padding:28px 22px;max-height:calc(100dvh - 28px)}.hs-rules h2{font-size:28px}.hs-rules dd,.hs-rules p{font-size:12px}.hs-result h1{font-size:52px}}
@media(min-width:681px) and (max-height:850px){
  .hs-header{height:58px}.hs-battle-top{padding:7px 0}.hs-battle-top .hs-link{padding:5px 0}
  .hs-table{min-height:0;padding-top:5px;padding-bottom:12px;border-width:8px;border-radius:40px 40px 26px 26px}
  .hs-enemy-hand{height:23px;margin-bottom:5px}.hs-card-back{height:22px;width:18px;font-size:12px;border-width:1px}
  .hs-hero{width:68px;height:74px;border-width:3px}.hs-hero .hs-hp{height:29px;min-width:29px;font-size:21px;right:-13px}.hs-hero-house{font-size:8px}
  .hs-power-symbol{width:35px;height:35px;font-size:21px;border-width:3px}.hs-power b{font-size:9px;margin-top:4px}.hs-power small{font-size:8px;max-width:135px}.hs-power .hs-cost{width:21px;height:21px;font-size:14px;left:30px}
  .hs-equipment img{width:28px;height:28px}.hs-equipment b{font-size:9px}.hs-hero-area{gap:23px}
  .hs-arena{padding:4px 0;margin:8px 0}.hs-board-row,.hs-units{min-height:64px}.hs-midline{height:12px}.hs-unit{width:57px;height:61px;border-width:3px}.hs-unit-name{font-size:7px;bottom:6px;padding:2px 0}.hs-unit .hs-atk,.hs-unit .hs-hp{height:23px;min-width:23px;font-size:16px}.hs-unit-keywords{font-size:7px;top:-9px}.hs-unit-status{font-size:12px}
  .hs-friendly-row:has(.hs-insert) .hs-unit{width:54px;height:61px}.hs-insert{height:31px}
  .hs-table-rail{top:40px;bottom:22px}.hs-table-ornament{font-size:16px;top:42px}.hs-end-turn{min-height:50px;padding:9px 5px;font-size:11px}.hs-end-turn>span{font-size:16px}.hs-deck-stack>span{width:37px;height:48px;font-size:22px}.hs-deck-stack b{top:30px;right:9px;font-size:11px}.hs-rival-resources>b{font-size:20px;margin:5px 0}
  .hs-status{min-height:30px;margin-top:5px;font-size:11px}.hs-status .hs-link{font-size:10px;padding:5px 0}.hs-hand-bar{padding-bottom:4px}.hs-mana>b{font-size:21px}.hs-mana i{height:14px;width:11px}
  .hs-hand{min-height:195px;padding-top:12px;padding-bottom:12px}.hs-hand>.hs-card{min-height:175px;width:128px;padding-bottom:21px}.hs-compact .hs-card-art{height:51px}.hs-compact .hs-card-name{font-size:12px;min-height:25px;padding-top:5px}.hs-compact .hs-card-type{font-size:6px;margin:4px 0}.hs-compact .hs-card-text{font-size:9px;padding:2px 0 4px;line-height:1.3}.hs-compact .hs-atk,.hs-compact .hs-hp{height:26px;min-width:26px;font-size:18px}.hs-compact .hs-cost{height:28px;width:28px;font-size:20px}
  .hs-history .hs-link{font-size:10px;padding:6px 0}.hs-history>span{font-size:10px}
}
/* Direct manipulation: keep the original hand slot and preview the destination. */
.hs-hand [data-hs="card"]:not(:disabled),.hs-ready[data-hs="character"]{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.hs-hand [data-hs="card"]:not(:disabled){box-shadow:inset 0 0 0 2px #eee0b766,0 0 0 1px #82ba9380,0 5px 12px #0006}
.hs-hand [data-hs="card"]:not(:disabled):hover{box-shadow:0 0 0 2px #98d8ac,0 10px 22px #0008}
.hs-dragging{cursor:grabbing;user-select:none}.hs-dragging *{cursor:grabbing!important}
.hs-drag-source{opacity:.25!important;transform:none!important;filter:saturate(.5)}
.hs-drag-card,.hs-motion-ghost{pointer-events:none!important;z-index:150;transition:none!important;box-sizing:border-box;will-change:transform,opacity;max-width:none!important;min-width:0!important}
.hs-drag-card{position:fixed;transform:rotate(-4deg) scale(1.04);opacity:.96;box-shadow:0 20px 35px #0009,0 0 0 2px #d5c8a3;filter:none!important}
.hs-drag-card.hs-drag-valid{box-shadow:0 20px 35px #0009,0 0 0 3px #84e2b0,0 0 28px #83d6aa88}
.hs-drop-zone{outline:2px dashed #528568;outline-offset:5px;border-radius:12px;background-color:#6ba28220}
.hs-table.hs-drop-zone{outline-offset:-20px}.hs-table.hs-drop-active{box-shadow:inset 0 0 45px #74ad7380,0 15px 30px #0005}
.hs-drop-slot{width:68px;height:82px;flex-shrink:0;display:grid;place-items:center;position:relative;border:2px dashed #3f825d;border-radius:45% 45% 18% 18%;background:#519a6a35;box-shadow:0 0 22px #75b88755;pointer-events:none}
.hs-drop-slot img{width:100%;height:100%;object-fit:cover;border-radius:inherit;opacity:.4;filter:sepia(.2)}
.hs-drop-slot>span{position:absolute;bottom:8px;font-size:8px;font-weight:700;letter-spacing:1px;color:#214830;background:#e4e7bbd9;padding:4px;border-radius:3px}
.hs-pending-unit{border-color:#ba9b46;background:#d4b85933;box-shadow:0 0 20px #d4b85944}.hs-pending-unit>span{color:#694a1d}
.hs-drag-empty{display:none}.hs-drop-hover{outline:4px solid #f0c569!important;outline-offset:5px!important;filter:brightness(1.15);box-shadow:0 0 25px #f1ce7280!important}
.hs-aim-line{position:fixed;height:5px;transform-origin:0 50%;background:linear-gradient(90deg,#dab77466,#e5bd66);z-index:151;border-radius:4px;pointer-events:none;box-shadow:0 1px 4px #0007}
.hs-aim-line:after{content:'';position:absolute;right:-3px;top:-8px;border-left:17px solid #e5bd66;border-top:10px solid transparent;border-bottom:10px solid transparent}
.hs-aim-line.hs-aim-valid{background:linear-gradient(90deg,#77d39866,#9df0b0);box-shadow:0 0 10px #81da99}.hs-aim-valid:after{border-left-color:#9df0b0}
.hs-combat-number{position:fixed;pointer-events:none;z-index:152;font:bold 34px Georgia,serif;color:#ffe9be;text-shadow:0 2px 3px #441613,2px 0 1px #8c291d,-2px 0 1px #8c291d;white-space:nowrap}
.hs-combat-number.hs-heal{color:#bbf5b2;text-shadow:0 2px 4px #193f26}.hs-combat-number.hs-shield,.hs-combat-number.hs-buff{color:#b8e9ff;font:bold 15px Arial,sans-serif;text-shadow:0 2px 4px #20354c}
.hs-play-preview{position:fixed;left:18px;top:23%;z-index:145;pointer-events:none;text-align:center;filter:drop-shadow(0 8px 15px #0007)}
.hs-play-preview>.hs-card{width:120px;min-height:185px;pointer-events:none}.hs-play-preview .hs-card-art{height:60px}.hs-play-preview .hs-card-name{font-size:12px}.hs-play-preview .hs-card-text{font-size:9px}
.hs-play-preview>span{display:block;margin-top:13px;background:#15282ae8;border:1px solid #9a9f7880;border-radius:4px;padding:7px 5px;color:#e7d7a5;font-size:8px;letter-spacing:1px}
.hs-turn-banner{position:fixed;top:27%;left:50%;z-index:145;pointer-events:none;padding:15px 45px;border:1px solid #ccb68a99;background:linear-gradient(90deg,#192a30e8,#354750f5,#192a30e8);box-shadow:0 8px 25px #0006;color:#e2d2ad;font:bold 22px Georgia,serif;letter-spacing:3px;white-space:nowrap}
.hs-turn-banner.hs-your-turn{border-color:#bada9999;color:#e1efbb;background:linear-gradient(90deg,#213a2be8,#365c43f5,#213a2be8)}
@media(max-width:950px){.hs-drop-slot{width:51px;height:69px}.hs-play-preview{left:8px}.hs-play-preview>.hs-card{width:105px;min-height:177px}}
@media(max-width:680px){.hs-drop-slot{width:42px;height:59px}.hs-drop-slot>span{font-size:6px;letter-spacing:0;padding:3px 2px}.hs-play-preview{top:13%;left:7px}.hs-play-preview>.hs-card{width:96px;min-height:172px;padding:6px 5px 24px}.hs-play-preview .hs-card-art{height:42px}.hs-play-preview .hs-card-name{font-size:10px}.hs-play-preview .hs-card-text{font-size:8px}.hs-play-preview .hs-cost{width:23px;height:23px;font-size:16px;left:-4px}.hs-play-preview .hs-atk,.hs-play-preview .hs-hp{width:23px;min-width:23px;height:23px;font-size:16px}.hs-turn-banner{font-size:17px;padding:12px 28px}.hs-combat-number{font-size:28px}}
.hs-card-rarity{display:flex;align-items:center;justify-content:center;gap:4px;font-size:9px;font-weight:700;color:#473d2d;margin:0 0 5px;line-height:1.3}
.hs-card-rarity>span{color:var(--rarity);-webkit-text-stroke:.5px #403126;filter:drop-shadow(0 1px 1px #0005)}
.hs-rarity-rare{border-color:#739bc4}.hs-rarity-epic{border-color:#a585bf}.hs-rarity-legendary{border-color:#dda13d}
.hs-compact .hs-card-rarity{font-size:7px;margin-bottom:3px}.hs-compact .hs-card-type{margin-bottom:3px}
.hs-dust-wallet{background:#2b2d2c;border-color:#aaa8986b;color:#dfdfcf}.hs-dust-wallet:hover{border-color:#e5b38a}
.hs-shop-dust{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;margin:16px 0;padding:12px 0;border-top:1px solid #99998b55;color:#dfdfcf;font-size:14px}.hs-shop-dust .hs-link{font-size:11px}
.hs-forge{max-width:1300px;margin:auto;padding:36px 32px 50px}
.hs-forge .hs-page-heading{align-items:center}.hs-forge .hs-page-heading h1{font-size:40px;margin:10px 0}.hs-forge .hs-page-heading p{max-width:660px;font-size:13px}
.hs-dust-balance{display:grid;grid-template-columns:auto auto;align-items:center;gap:5px 12px;flex-shrink:0;padding:16px 24px;border:1px solid #aaa89866;border-radius:8px;background:radial-gradient(ellipse,#a7764930,#242d2e);color:#dfdfcf}
.hs-dust-balance>.currency-ashes-icon{font-size:38px;grid-row:1/3}.hs-dust-balance>strong{font:32px Georgia,serif}.hs-dust-balance>small{font-size:8px;letter-spacing:1px;color:#bdbeb1}
.hs-rarity-costs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.hs-rarity-costs>div{display:grid;gap:7px;padding:15px 18px;border:1px solid color-mix(in srgb,var(--rarity) 40%,transparent);border-radius:6px;background:color-mix(in srgb,var(--rarity) 7%,#17272d)}
.hs-rarity-costs b{color:var(--rarity);font-size:13px}.hs-rarity-costs>div>span{font-size:12px;color:#dce2d2}.hs-rarity-costs small{font-size:10px;color:#aebcb7}
.hs-forge-notice{min-height:22px;margin:10px 0 20px;color:#d7c3e8;font-size:12px;line-height:1.6}
.hs-forge-tools{max-width:720px}.hs-forge-tools input{min-width:0;flex:1}.hs-forge-tools select{max-width:185px}
.hs-forge-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:28px 20px;justify-items:center;padding:15px 4px}
.hs-forge-entry{width:180px;max-width:100%;min-width:0;text-align:center}.hs-forge-entry .hs-card{width:100%;min-height:288px;opacity:1;filter:none;border-color:var(--rarity)}
.hs-forge-entry .hs-card-art{height:112px}.hs-forge-entry .hs-card-text{font-size:10px}.hs-forge-entry .hs-card-name{min-height:40px}.hs-forge-entry .hs-card-badge{font-size:8px;white-space:nowrap}
.hs-craft-button{display:block;margin:15px 0 8px;padding:10px 8px;width:100%;border:1px solid #b594c588;border-radius:4px;background:linear-gradient(#594365,#352d42);color:#f0e4f7;font-size:11px;box-shadow:0 3px 0 #1d1e2a;transition:background .15s}
.hs-craft-button:hover:not(:disabled){background:linear-gradient(#755286,#4c385e)}.hs-craft-button:disabled{opacity:.55;cursor:default;background:#233039;border-color:#6e7c7d55;box-shadow:none;color:#acb7b5}
.hs-forge-entry>small{display:block;min-height:24px;color:#afbfba;font-size:9px;line-height:1.4}
@media(max-width:760px){.hs-forge{padding:25px 20px 40px}.hs-forge .hs-page-heading{gap:15px;align-items:stretch}.hs-forge .hs-page-heading h1{font-size:32px}.hs-dust-balance{align-self:flex-start;padding:12px 18px}.hs-rarity-costs{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hs-rarity-costs>div{padding:12px}.hs-forge-library{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:26px 14px}.hs-forge-entry{width:166px}.hs-forge-entry .hs-card-art{height:94px}.hs-forge-entry .hs-card-name{font-size:14px}.hs-forge-tools{gap:8px}.hs-forge-tools select{width:150px;font-size:11px}.hs-forge-tools input{font-size:11px}.hs-section-nav{flex-wrap:wrap;gap:0 15px}}
@media(max-width:430px){.hs-header{gap:7px;padding:0 10px}.hs-wordmark{font-size:11px;letter-spacing:1px}.hs-header-tools{gap:6px}.hs-wallet{gap:4px;padding:5px 6px;font-size:11px}.duel-view .hs-section-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0 12px}.duel-view .hs-section-nav button{padding:12px 4px;font-size:11px}.hs-forge{padding:22px 15px}.hs-forge-library{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.hs-forge-entry{width:100%}.hs-forge-entry .hs-card{min-height:280px;padding:8px 6px 30px}.hs-forge-entry .hs-card-art{height:86px}.hs-forge-entry .hs-card-text{font-size:9px}}
@media(prefers-reduced-motion:reduce){.duel-view *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.hs-power-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.hs-power-options .hs-primary{display:flex;flex-direction:column;gap:8px;white-space:normal}.hs-power-options small{font-weight:normal}.hs-reduced-cost{color:#b5ffce!important;box-shadow:0 0 14px #4dce8199!important}.hs-power-choice{width:min(520px,90vw)}

/* Arena de las Casas: bastiones laterales, piedra tallada y una mano al borde. */
#app.duel-view:has(.hs-court){
  --court-bronze:#b69765;--court-ink:#192321;--court-paper:#ecdfc3;
  height:100dvh;min-height:0;display:grid;grid-template-rows:56px minmax(0,1fr);overflow:clip;
  background:radial-gradient(ellipse at 50% 35%,#3c4841,#16201e 75%);
}
body:has(.hs-court){overflow:hidden}
#app:has(.hs-court) .hs-header{height:56px;padding:0 24px;background:#121b19;border-color:#b6976538}
#app:has(.hs-court) .hs-header .hs-wallet{padding:5px 10px;background:#242b22;border-radius:3px}
.hs-court.hs-battle{position:relative;width:100%;max-width:none;min-height:0;margin:0;padding:0 20px;display:grid;grid-template-rows:34px minmax(0,1fr) 48px 176px;gap:8px}
.hs-court .hs-battle-top{padding:0 5px;min-height:0}
.hs-court .hs-battle-top .hs-link{font-size:11px;padding:5px 0}
.hs-turn-indicator{font-size:10px;letter-spacing:1.5px;color:#c7b99e;display:flex;align-items:center;gap:9px}
.hs-turn-indicator:before{content:'';height:6px;width:6px;background:#99897c;transform:rotate(45deg)}
.hs-turn-indicator.hs-turn-player:before{background:#d8bc79;box-shadow:0 0 9px #d8bc7955}
.hs-court .hs-court-table{
  display:grid;grid-template-columns:170px minmax(0,1fr) 170px;grid-template-rows:minmax(0,1fr);gap:16px;align-items:stretch;
  min-height:0;width:100%;padding:12px;border:1px solid #b697657a;border-radius:4px;
  background:linear-gradient(135deg,#65706328,transparent 40%),#29342e;
  box-shadow:inset 0 0 0 4px #17231f,inset 0 0 0 5px #b6976533,0 12px 32px #0004;
}
.hs-court .hs-court-table:before{inset:8px;border-radius:0;border-color:#b6976526;z-index:-1}
.hs-bastion{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;min-height:0;padding:10px;border:1px solid #b6976544;background:linear-gradient(160deg,#46504688,#182720a6);box-shadow:inset 0 3px color-mix(in srgb,var(--house) 55%,#8c7950)}
.hs-bastion>header{width:100%;text-align:center;margin-bottom:10px}
.hs-bastion>header .hs-eyebrow{font-size:8px;letter-spacing:1.6px;color:#c3b495}
.hs-bastion>header h2{font-size:21px;line-height:1.1;margin:6px 0 0;color:#ead8b4}
.hs-court .hs-hero-area{width:100%;display:grid;grid-template-columns:1fr;justify-items:center;gap:7px;min-height:0}
.hs-court .hs-hero{grid-row:1;width:82px;height:98px;border:2px solid #b69765;border-radius:3px;background:#192522;box-shadow:0 4px 12px #0005,inset 0 0 0 2px #15231c}
.hs-court .hs-hero img{border-radius:1px;object-position:center 22%}
.hs-court .hs-hero-house{display:none}
.hs-court .hs-hero .hs-hp{height:31px;min-width:37px;font-size:23px;right:-12px;bottom:-9px;border-radius:2px;border:1px solid #e9bd9c;background:#803d34}
.hs-court .hs-hero .hs-atk{height:29px;min-width:29px;font-size:21px;left:-10px;bottom:-9px;border-radius:2px;border-width:1px;background:#9a773a}
.hs-court .hs-armor{top:5px;right:-12px;border-radius:2px;padding:3px;border-width:1px;background:#556762;font-size:12px}
.hs-court .hs-equipment{grid-row:2;min-height:18px;max-width:100%;width:auto;display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:3px 6px;color:#c5c6ad}
.hs-court .hs-equipment img{width:24px;height:24px;border:1px solid #b69765;border-radius:2px}
.hs-court .hs-equipment b{font-size:10px}.hs-court .hs-equipment>span:not(.hs-equipment-empty){font-size:9px;width:100%}
.hs-court .hs-equipment:has(img){display:grid;grid-template-columns:24px minmax(0,1fr);gap:2px 6px;width:100%;text-align:left;line-height:1.2}
.hs-court .hs-equipment:has(img)>img{grid-row:1/3}
.hs-court .hs-equipment:has(img)>b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs-court .hs-equipment:has(img)>span{width:auto;white-space:nowrap;font-size:8px}
.hs-court .hs-equipment-empty{font:11px Georgia,serif;color:#b2b7a3}
.hs-court .hs-power{grid-row:3;width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);gap:3px 8px;padding:8px 7px;text-align:left;border:1px solid #b6976550;border-radius:2px;background:#15231a7a;color:#e5d9bd;min-height:57px}
.hs-court .hs-power-symbol{grid-row:1/3;width:31px;height:35px;font-size:22px;border:1px solid #b6976580;border-radius:2px;background:#344638;box-shadow:none}
.hs-court .hs-power b{font-size:11px;line-height:1.2;margin:0;align-self:end}
.hs-court .hs-power small{font-size:9px;line-height:1.3;max-width:none;margin:0;color:#c2c8b8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hs-court .hs-power .hs-cost{height:20px;width:20px;top:auto;left:24px;bottom:3px;font-size:13px;border:1px solid #ddc38c;border-radius:2px;background:#695734;transform:none;text-shadow:none;box-shadow:none}
.hs-court .hs-player-hero .hs-power:not(:disabled) .hs-power-symbol{border-color:#c4b26c;box-shadow:none}
.hs-court .hs-power:not(:disabled):hover{border-color:#e0c48a;background:#3c4b30}
.hs-court .hs-power:disabled{opacity:.7}
.hs-bastion-supply,.hs-court .hs-rival-resources{width:100%;margin-top:auto;padding-top:8px;text-align:center;border-top:1px solid #b697652b;color:#c0c5b3}
.hs-bastion-supply>.hs-eyebrow,.hs-court .hs-rival-resources>span{display:block;font-size:8px;line-height:1.3;letter-spacing:1px;color:#bfc4b2}
.hs-bastion-supply>small,.hs-court .hs-rival-resources>small{display:block;font-size:10px;line-height:1.3;margin-top:7px;color:#bfc4b2}
.hs-court .hs-mana{flex-direction:column;gap:7px;margin-top:4px}
.hs-court .hs-mana>b,.hs-court .hs-rival-resources>b{font:30px/1 Georgia,serif;color:#f0d99e;margin:0}
.hs-court .hs-mana>b small,.hs-court .hs-rival-resources>b small{font:15px Georgia,serif;color:#b7bca7}
.hs-court .hs-mana>span{gap:4px}
.hs-court .hs-mana i{width:9px;height:5px;border:0;border-radius:0;transform:none;background:#111e16;box-shadow:inset 0 0 0 1px #b3a17626}
.hs-court .hs-mana i.filled{background:#dab979;box-shadow:0 0 5px #dab97930}.hs-court .hs-mana i.spent{background:#776749}
.hs-court-field{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;padding:0 15px 12px;border:1px solid #b697653f;background:linear-gradient(0deg,#26352bed,#3d4c41eb),url('assets/escenarios/exterior-ruinas.png') center 45%/cover;box-shadow:inset 0 0 40px #0d1f1966}
.hs-court-field:before{content:'';position:absolute;inset:48px 15px 12px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 7 - 1px),#d4c29b08 calc(100% / 7 - 1px),#d4c29b08 calc(100% / 7));pointer-events:none}
.hs-court-heading{display:flex;justify-content:space-between;align-items:center;min-height:46px;gap:12px;border-bottom:1px solid #b6976526}
.hs-court-heading>.hs-eyebrow{font-size:8px;letter-spacing:1.7px;color:#c4b895}
.hs-court .hs-enemy-hand{height:32px;margin:0;padding-right:47px;flex-shrink:0;gap:3px}
.hs-court .hs-card-back{height:27px;width:19px;font-size:12px;transform:none;border:1px solid #b69765;border-radius:1px;background:linear-gradient(150deg,#5d6142,#25392f);box-shadow:1px 2px #0d1d1488;color:#cfb983}
.hs-court .hs-enemy-hand>small{right:0;font-size:9px;color:#c9c6af}
.hs-court .hs-arena{flex:1;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 46px minmax(0,1fr);width:100%;margin:0;padding:6px 0 0}
.hs-court .hs-board-row{min-height:0;padding:13px 0 7px;position:relative}
.hs-court .hs-row-label{left:0;top:6px;font-size:8px;letter-spacing:1.5px;color:#aeba9e;display:flex;flex-direction:row;gap:8px}
.hs-court .hs-row-label b{font-size:9px;color:#c4c5a8}
.hs-court .hs-units{position:relative;min-height:0;gap:clamp(7px,1vw,18px);height:100%}
.hs-court .hs-empty-board{font:14px Georgia,serif;color:#a4b39a}
.hs-court .hs-midline{height:auto;gap:20px;color:#bda679;min-height:0}
.hs-court .hs-midline i{background:linear-gradient(90deg,transparent,#b6976570,transparent)}
.hs-court-seal{font:29px Georgia,serif;text-align:center;color:#c4af8066;position:relative;line-height:1}
.hs-court-seal:before{content:'';position:absolute;inset:-6px -13px 8px;border:1px solid #b6976536;transform:rotate(45deg)}
.hs-court-seal small{display:block;font:6px Arial,sans-serif;letter-spacing:2px;color:#bead855f;margin-top:7px;position:relative;white-space:nowrap}
.hs-court .hs-unit{width:clamp(66px,6.4vw,116px);height:clamp(85px,8.3vw,150px);max-height:100%;border:2px solid #b69765;border-radius:3px;background:#25362d;box-shadow:0 5px 10px #10201899;transition:transform .15s,box-shadow .15s}
.hs-court .hs-unit>img{border-radius:1px;object-position:center 23%}
.hs-court .hs-unit-name{font:10px/1.15 Georgia,serif;bottom:12px;left:2px;right:2px;padding:4px 2px;border-radius:0;background:#13231ce8;color:#f0e6c8;overflow:hidden;max-height:31px}
.hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:24px;min-width:26px;font:700 18px Georgia,serif;border:1px solid #dacaa2;border-radius:2px;bottom:-8px;text-shadow:0 1px 1px #0008}
.hs-court .hs-unit .hs-atk{background:#8b7341;left:-6px}.hs-court .hs-unit .hs-hp{background:#824239;right:-6px}
.hs-court .hs-unit-status{font-size:11px;top:3px;right:3px}
.hs-court .hs-unit-keywords{font-size:7px;top:-10px;padding:2px 4px;border-radius:1px;background:#4d604c;color:#e0e5c6}
.hs-court .hs-ready{border-color:#c8cf8e;box-shadow:0 5px 10px #10201899,0 -3px #b1c785,inset 0 0 0 1px #d7ddb54d}
.hs-court .hs-taunt{border-width:3px;border-color:#a7b7ad;border-radius:3px;box-shadow:0 0 0 2px #647769,0 5px 10px #10201899}
.hs-court .hs-divine:after{inset:-6px;border-radius:5px;border-color:#dfc66a;background:linear-gradient(135deg,#ffe78e22,transparent 55%);box-shadow:0 0 15px #d5bc7840}
.hs-court .hs-frozen{box-shadow:0 0 0 2px #8cd3ec,0 0 14px #58bdea66}
.hs-court .hs-target{outline-color:#e4bf74;box-shadow:0 0 18px #edc38366}
.hs-court .hs-selected{outline-color:#d5dcb0}
.hs-court .hs-insert{width:20px;min-width:14px;height:45px;border-radius:2px;background:#d0d59a16;border-color:#c7ce9270;color:#d8dfb3}
.hs-court .hs-friendly-row:has(.hs-insert) .hs-units{gap:6px}
.hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:clamp(56px,5.5vw,108px);height:clamp(80px,7.8vw,140px)}
.hs-court .hs-drop-slot{width:clamp(56px,5.5vw,108px);height:clamp(80px,7.8vw,140px);border-radius:3px;background:#bdcb8033;border-color:#bdcb80}
.hs-court .hs-drop-slot>span{color:#e0ebbe;background:#263c25e8}
.hs-court-controls{display:flex;align-items:center;gap:20px;min-width:0;padding:0 4px}
.hs-court .hs-status{flex:1;min-height:0;margin:0;text-align:left;font-size:12px;gap:12px;color:#d6d9bf}
.hs-court .hs-status>span{line-height:1.4}.hs-court .hs-status .hs-link{font-size:11px;white-space:nowrap;color:#e6cd98}
.hs-court .hs-end-turn{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:40px;max-width:none;min-width:172px;padding:10px 16px;border:1px solid #ddc18a;border-radius:2px;background:linear-gradient(120deg,#dec28d,#aa8954);color:#263120;font-size:12px;box-shadow:0 3px 0 #554e31}
.hs-court .hs-end-turn>span{font-size:18px;margin:0}.hs-court .hs-end-turn:hover:not(:disabled){filter:brightness(1.1)}
.hs-court .hs-end-turn:disabled{background:#354137;border-color:#70816477;color:#acb79e;box-shadow:none}
.hs-court .hs-history{position:absolute;left:145px;bottom:146px;z-index:32;min-width:0;gap:16px;border:0;color:#a6b29d;font-size:10px}
.hs-court .hs-history .hs-link{font-size:10px;padding:4px 0}
.hs-court .hs-history>span{display:none}
.hs-court .hs-history>ol{position:absolute;left:0;bottom:100%;z-index:40;width:min(620px,calc(100vw - 175px));max-height:300px;margin:0;border:1px solid #b6976566;padding:18px 28px;background:#16271bf5;box-shadow:0 12px 30px #0007;font-size:12px}
.hs-court .hs-hand-dock{position:relative;min-width:0;--hand-card-width:clamp(156px,13.8vw,210px);--hand-card-height:280px;--hand-visible:148px;--hand-rise:calc(var(--hand-card-height) - var(--hand-visible) + 22px);z-index:30}
.hs-court .hs-hand-dock:before{content:'';position:absolute;inset:15px -20px -50px;background:radial-gradient(ellipse at 50% 100%,#67744444,transparent 70%),linear-gradient(0deg,#122017,transparent);pointer-events:none}
.hs-court .hs-hand-bar{height:28px;padding:0 6px;gap:15px;font-size:9px;letter-spacing:1.3px;color:#adb99f}
.hs-court .hs-hand-bar small{font-size:10px;letter-spacing:0;color:#aeba9e}
.hs-touch-hint{display:none}
.hs-court .hs-hand-bar b{font-size:11px;color:#e1cca1;margin-left:6px}
.hs-court .hs-hand{height:var(--hand-visible);min-height:0;padding:9px 30px 0;gap:0;justify-content:center;overflow:visible;background:none;align-items:flex-start}
.hs-hand-slot{position:relative;min-width:0;height:100%;flex:0 1 calc(var(--hand-card-width) * .82)}
.hs-hand-slot:last-child{margin-right:calc(var(--hand-card-width) * .18)}
.hs-hand-lift{position:absolute;top:0;left:0;width:var(--hand-card-width);height:var(--hand-card-height);transform:translateY(var(--hand-offset)) rotate(var(--hand-tilt));transform-origin:50% 95%;transition:transform .22s cubic-bezier(.16,1,.3,1);will-change:transform}
.hs-hand-slot:hover,.hs-hand-slot:focus-within{z-index:20}
.hs-hand-slot:hover .hs-hand-lift,.hs-hand-slot:focus-within .hs-hand-lift,.hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:translateY(calc(-1 * var(--hand-rise))) rotate(0deg)}
#app .hs-court .hs-hand .hs-card{width:100%;min-width:0;min-height:0;height:100%;padding:8px 8px 29px;transform:none;overflow:visible;cursor:grab}
#app .hs-court .hs-hand .hs-card:disabled{opacity:.88;filter:saturate(.65);cursor:default}
#app .hs-court .hs-hand .hs-card:hover{transform:none}
#app .hs-court .hs-hand .hs-card-art{height:94px;flex-shrink:0}
#app .hs-court .hs-hand .hs-card-name{font-size:14px;line-height:1.15;min-height:38px;padding:5px 3px;margin-top:5px}
#app .hs-court .hs-hand .hs-card-type{font-size:7px;line-height:1.25;margin:6px 0 3px}
#app .hs-court .hs-hand .hs-card-text{font-size:11px;line-height:1.35;padding:6px 2px 3px;min-height:0}
#app .hs-court .hs-hand .hs-cost{height:32px;width:32px;font-size:23px}
#app .hs-court .hs-hand .hs-atk,#app .hs-court .hs-hand .hs-hp{height:30px;min-width:30px;font-size:20px}
.hs-hand-inspect{position:absolute;right:7px;bottom:15px;z-index:8;width:26px;height:26px;padding:0;border:1px solid #dfceac;border-radius:3px;background:#1c2b22;color:#f2e0b9;font:22px Georgia,serif;box-shadow:0 2px 4px #0005;opacity:0;pointer-events:none}
.hs-hand-slot:hover .hs-hand-inspect,.hs-hand-slot:focus-within .hs-hand-inspect{opacity:1;pointer-events:auto}
.hs-hand-inspect:hover{background:#586441}
.hs-court .hs-empty-hand{padding:15px 10px;margin:0;font-size:12px}
@media(min-width:1600px){
  .hs-court .hs-court-table{grid-template-columns:220px minmax(0,1fr) 220px;gap:24px;padding:18px}
  .hs-court .hs-bastion{padding:22px 16px 18px}.hs-bastion>header h2{font-size:27px;margin-top:8px}
  .hs-court .hs-hero{width:120px;height:164px}.hs-court .hs-hero-area{gap:20px}.hs-court .hs-power{padding:12px;min-height:70px}
  .hs-court .hs-power b{font-size:13px}.hs-court .hs-power small{font-size:11px}.hs-court .hs-power .hs-cost{left:28px;bottom:6px}
  .hs-court .hs-unit-name{font-size:13px;max-height:39px}.hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:30px;min-width:33px;font-size:23px}
  .hs-court .hs-court-field{padding:0 24px 18px}.hs-court-heading{min-height:58px}.hs-court-heading>.hs-eyebrow{font-size:10px}
  .hs-court .hs-hand-dock{--hand-card-height:320px;--hand-visible:148px}#app .hs-court .hs-hand .hs-card-art{height:116px}
}
@media(max-width:1050px) and (min-width:701px){
  .hs-court.hs-battle{padding:0 12px}.hs-court .hs-court-table{grid-template-columns:132px minmax(0,1fr) 132px;gap:9px;padding:9px}
  .hs-bastion{padding:10px 6px 8px}.hs-bastion>header h2{font-size:18px}.hs-court .hs-hero{width:72px;height:94px}
  .hs-court .hs-court-field{padding:0 8px 10px}.hs-court .hs-court-heading>.hs-eyebrow{font-size:7px;letter-spacing:.5px}
  .hs-court .hs-unit{width:clamp(42px,5.8vw,62px);height:clamp(64px,8vw,90px)}.hs-court .hs-units{gap:7px}.hs-court .hs-unit-name{font-size:8px;padding:3px 1px}
  .hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:21px;min-width:22px;font-size:15px}
  .hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:clamp(33px,4.5vw,49px);height:72px}.hs-court .hs-friendly-row:has(.hs-insert) .hs-units{gap:3px}.hs-court .hs-insert{min-width:10px;width:13px;height:34px}
  .hs-court .hs-power{grid-template-columns:27px minmax(0,1fr);gap:3px 5px;padding:7px 4px}.hs-court .hs-power-symbol{width:25px;height:30px}.hs-court .hs-power .hs-cost{left:20px;bottom:3px}
  .hs-court .hs-hand-dock{--hand-card-width:158px}.hs-court .hs-status{font-size:11px}
}
@media(max-width:700px),(max-height:679px){
  body:has(.hs-court){overflow:auto}
  #app.duel-view:has(.hs-court){height:auto;min-height:100dvh;display:block;overflow:visible}
  #app:has(.hs-court) .hs-header{height:54px;padding:0 12px}.hs-court.hs-battle{display:flex;flex-direction:column;padding:0 9px 142px;gap:8px}
  .hs-court .hs-battle-top{min-height:34px}.hs-turn-indicator{font-size:8px;letter-spacing:.6px}
  .hs-court .hs-court-table{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:10px;padding:9px}
  .hs-court .hs-bastion{grid-row:1;padding:9px;align-items:stretch;display:grid;grid-template-columns:1fr;gap:8px}
  .hs-bastion>header{margin:0;text-align:left}.hs-bastion>header h2{font-size:19px}.hs-bastion>header .hs-eyebrow{font-size:7px}
  .hs-court .hs-hero-area{grid-template-columns:55px minmax(0,1fr);align-items:center;gap:4px 10px}
  .hs-court .hs-hero{grid-column:1;grid-row:1/3;width:48px;height:65px}.hs-court .hs-hero .hs-hp{height:23px;min-width:26px;font-size:17px;right:-8px;bottom:-5px}
  .hs-court .hs-hero .hs-atk{height:20px;min-width:20px;font-size:15px;left:-5px;bottom:-5px}.hs-court .hs-armor{font-size:10px;right:-8px;top:3px}
  .hs-court .hs-equipment{grid-row:2;grid-column:2;justify-content:flex-start;min-height:12px}.hs-court .hs-equipment-empty{font-size:9px}
  .hs-court .hs-power{grid-row:1;grid-column:2;display:block;min-height:0;padding:5px 3px;border:0;background:none}.hs-court .hs-power-symbol{display:none}.hs-court .hs-power b{font-size:10px;display:block}.hs-court .hs-power small{font-size:8px;margin-top:3px}.hs-court .hs-power .hs-cost{position:static;width:auto;height:auto;display:inline;font-size:10px;background:none;border:0;margin-right:3px;color:#dcc491}
  .hs-bastion-supply,.hs-court .hs-rival-resources{display:flex;align-items:center;justify-content:space-between;gap:5px;padding-top:7px;margin:0}.hs-bastion-supply>.hs-eyebrow,.hs-court .hs-rival-resources>span{display:none}
  .hs-court .hs-mana{margin:0;gap:4px;align-items:flex-start}.hs-court .hs-mana>b,.hs-court .hs-rival-resources>b{font-size:23px}.hs-court .hs-mana i{width:6px;height:3px}.hs-court .hs-mana>span{gap:2px}
  .hs-bastion-supply>small,.hs-court .hs-rival-resources>small{font-size:8px;max-width:65px;margin:0;text-align:right}
  .hs-court .hs-court-field{grid-column:1/-1;grid-row:2;min-height:330px;padding:0 7px 10px}.hs-court-heading{min-height:35px;gap:7px}.hs-court-heading>.hs-eyebrow{font-size:6px;letter-spacing:.6px}
  .hs-court .hs-enemy-hand{height:27px;padding-right:34px;gap:2px}.hs-court .hs-card-back{width:13px;height:20px;font-size:9px}.hs-court .hs-enemy-hand>small{font-size:7px}
  .hs-court .hs-arena{grid-template-rows:minmax(125px,1fr) 32px minmax(125px,1fr)}
  .hs-court .hs-units{gap:5px}.hs-court .hs-unit{width:clamp(31px,9vw,56px);height:clamp(55px,15vw,83px)}.hs-court .hs-unit-name{font-size:7px;max-height:25px;bottom:9px;padding:2px 0}.hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:18px;min-width:18px;font-size:12px;bottom:-6px}.hs-court .hs-unit .hs-atk{left:-3px}.hs-court .hs-unit .hs-hp{right:-3px}.hs-court .hs-unit-keywords{font-size:6px;max-width:55px;top:-9px}.hs-court .hs-unit-status{font-size:9px}
  .hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:clamp(21px,6vw,44px);height:55px}.hs-court .hs-friendly-row:has(.hs-insert) .hs-units{gap:2px}.hs-court .hs-insert{width:10px;min-width:7px;height:28px;font-size:14px}
  .hs-court .hs-drop-slot{width:38px;height:60px}.hs-court-seal{font-size:22px}.hs-court-seal small{font-size:5px}
  .hs-court-controls{position:sticky;bottom:129px;z-index:35;background:#19271ef5;padding:7px 6px;border:1px solid #b6976544;gap:8px}.hs-court .hs-status{font-size:10px}.hs-court .hs-status .hs-link{font-size:9px}.hs-court .hs-end-turn{min-width:117px;padding:10px 8px;font-size:10px;gap:8px;min-height:37px}
  .hs-court .hs-history{position:fixed;left:110px;bottom:103px;min-height:25px;margin:0;z-index:32}.hs-court .hs-history>ol{left:-95px;width:min(620px,calc(100vw - 35px))}
  .hs-court .hs-hand-dock{position:fixed;left:0;right:0;bottom:0;height:130px;--hand-card-width:156px;--hand-card-height:290px;--hand-visible:98px;padding:0 9px;background:linear-gradient(0deg,#19291e 78%,#19291ed9);border-top:1px solid #b6976544}
  .hs-court .hs-hand-bar{height:32px;font-size:8px}.hs-court .hs-hand-bar small{font-size:8px}.hs-court .hs-hand{padding:7px 15px 0;justify-content:flex-start;overflow-x:auto;overflow-y:clip;height:calc(100% - 32px);scrollbar-width:none}
  .hs-hover-hint{display:none}.hs-touch-hint{display:inline}
  .hs-court .hs-hand-slot{flex:0 0 92px}.hs-court .hs-hand-lift{transform:translateY(var(--hand-offset));}
  .hs-court .hs-hand-slot:hover .hs-hand-lift,.hs-court .hs-hand-slot:focus-within .hs-hand-lift,.hs-court .hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:translateY(var(--hand-offset))}
  .hs-court .hs-hand-inspect{opacity:1;pointer-events:auto;top:69px;bottom:auto;left:8px;right:auto}
}

/* House artwork shares one medallion treatment across faction icons. */
.hs-faction-emblem{display:inline-block;width:18px;height:18px;flex-shrink:0;vertical-align:middle;overflow:hidden;border-radius:50%;background:#29251e;box-shadow:0 0 0 1px #b99b6070}
.hs-faction-emblem>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transform:scale(1.14)}
.duel-view .hs-seal.hs-seal-image{border:0;border-radius:50%;background:none;box-shadow:none;padding:0}
.hs-seal-image>.hs-faction-emblem{display:block;width:100%;height:100%;box-shadow:0 2px 6px #0008,0 0 0 1px #bd9c61aa}
.duel-view .hs-library-scopes button>i:has(.hs-faction-emblem){width:20px;height:20px;display:grid;place-items:center}
.hs-library-scopes .hs-faction-emblem{width:20px;height:20px}
.hs-entry-label>.hs-faction-emblem{width:16px;height:16px;margin-right:2px}
.hs-power-symbol>.hs-faction-emblem{width:100%;height:100%}
.hs-unseal-back-houses>.hs-faction-emblem{width:13px;height:13px}
/* Provisional generals share one vector model and inherit their house color. */
.hs-general-portrait{display:block;width:100%;height:100%;background:#161d25;pointer-events:none}
.hs-general-photo{position:relative;overflow:hidden}
.hs-general-photo>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 20%}
.hs-deck-general-detail{display:flex;align-items:center;gap:12px;margin-top:10px}
.hs-deck-general-detail>.hs-general-photo{width:64px;height:86px;flex-shrink:0;border-radius:8px}
.hs-hero .hs-general-photo>img{position:absolute;top:-12%;left:-40%;width:180%;height:180%;max-width:none;object-fit:cover;object-position:center 20%;border-radius:0}
.hs-general-art>.hs-general-portrait{position:absolute;inset:0}
.hs-general-picker{margin:14px 0 8px}
.hs-general-picker button{width:100%;padding:10px 12px;border:1px solid var(--house);background:color-mix(in srgb,var(--house) 12%,#171c22);color:#ede1c6;text-align:left;font-size:12px;border-radius:4px}
.hs-general-picker button span{color:var(--house);margin-right:6px}
.hs-general-picker button:focus-visible{outline:2px solid var(--house);outline-offset:3px}
.hs-champion-copy .hs-general-provisional{font-size:11px;color:#a9a292;margin:8px 0 14px}
.hs-champion-copy:has(.hs-general-picker) h2{font-size:32px;line-height:1.15}
.hs-general-name{position:absolute;left:0;right:0;bottom:3px;padding:3px 1px;background:#13191fdf;color:#f0e5d2;font-size:8px;line-height:1.15;text-align:center}
.hs-match-setup .hs-rival-general{color:#d2c2a2;margin:0;font-size:12px}
@media(max-width:680px){.hs-champion-copy:has(.hs-general-picker) h2{font-size:24px}.hs-general-picker button{font-size:10px;padding:8px}.hs-general-name{font-size:7px}.hs-champion-copy .hs-general-provisional{font-size:10px}}

/* Combat: carved ash stone, distinct sides, readable cards and one action bar. */
#app.duel-view:has(.hs-court){
  --court-bronze:#bb9a60;--court-paper:#f4e8cd;--court-allied:#81bac9;--court-rival:#ca897a;
  grid-template-rows:52px minmax(0,1fr);
  background:radial-gradient(ellipse at 50% 34%,#393c39 0,#1b2529 58%,#11191e 100%);
}
#app:has(.hs-court) .hs-header{height:52px;background:#101a1eea;border-bottom:1px solid #b89b5c36;padding:0 24px}
#app:has(.hs-court) .hs-wordmark{font-size:18px;letter-spacing:2.8px}
#app:has(.hs-court) .hs-header .hs-wallet{border-color:#b6976540;background:#1c282c;border-radius:6px}
.hs-court.hs-battle{padding:0 22px 14px;grid-template-rows:38px minmax(0,1fr) 52px 246px;gap:8px;max-width:1740px;margin:0 auto}
.hs-court .hs-battle-top{padding:0 5px}
.hs-court .hs-battle-top .hs-link{font-size:11px;color:#aebdbe}
.hs-turn-indicator{padding:6px 16px;border:1px solid #bb9a603b;border-radius:30px;background:#131e25;color:#c1bdb5;gap:12px;letter-spacing:1.4px;min-height:30px}
.hs-turn-indicator small{font-size:9px;color:#ada999;font-weight:400;letter-spacing:1.1px;padding-right:12px;border-right:1px solid #bb9a6040}
.hs-turn-indicator strong{font-size:10px;color:#dfb8a3}
.hs-turn-indicator:before{height:5px;width:5px;border-radius:50%;transform:none;background:#c48979;box-shadow:0 0 10px #b7756740}
.hs-turn-indicator.hs-turn-player{border-color:#8cb5b066;background:#233431}
.hs-turn-indicator.hs-turn-player strong{color:#b6e3cf}
.hs-turn-indicator.hs-turn-player:before{background:#b4e5c8;box-shadow:0 0 10px #94d2b3}
.hs-court .hs-court-table{grid-template-columns:178px minmax(0,1fr) 178px;gap:12px;padding:10px;border:1px solid #b69b697a;border-radius:16px;background:linear-gradient(145deg,#77634666,transparent 45%),#252d2f;box-shadow:0 12px 35px #0006,inset 0 0 0 3px #111c20,inset 0 0 0 4px #be9c5d40}
.hs-court .hs-court-table:before{inset:6px;border-radius:11px;border-color:#bb9a6033}
.hs-court .hs-bastion{padding:11px 9px 10px;border-radius:9px;border:1px solid #9a986a50;background:radial-gradient(ellipse at 50% 10%,color-mix(in srgb,var(--house) 16%,transparent),transparent 75%),linear-gradient(160deg,#293c435e,#152329);box-shadow:inset 0 2px color-mix(in srgb,var(--house) 65%,#bb9a60),0 4px 12px #0002}
.hs-court .hs-bastion-enemy{background:radial-gradient(ellipse at 50% 10%,#9d544f28,transparent 75%),linear-gradient(160deg,#3d34385e,#221f26)}
.hs-court .hs-bastion>header{margin-bottom:8px}
.hs-court .hs-bastion>header .hs-eyebrow{font-size:8px;letter-spacing:1.7px;color:#9ebfc5}
.hs-court .hs-bastion-enemy>header .hs-eyebrow{color:#d3a495}
.hs-court .hs-bastion>header h2{font-size:21px;color:#f2e1bd;margin:5px 0 0}
.hs-court .hs-hero-area{gap:7px}
.hs-court .hs-hero{width:92px;height:101px;border:3px solid #b6a078;border-radius:28px 28px 10px 10px;background:#18262d;box-shadow:0 6px 13px #0008,0 0 0 2px #111c24,inset 0 0 0 1px #e5cc9833}
.hs-court .hs-hero .hs-general-portrait{border-radius:24px 24px 6px 6px;background:radial-gradient(ellipse,var(--house),#182632)}
.hs-court .hs-general-name{font:9px/1.3 Georgia,serif;padding:5px 2px;bottom:2px;background:linear-gradient(0deg,#131e25f2,#131e25bc);border-radius:0 0 5px 5px}
.hs-court .hs-hero .hs-hp{width:37px;height:37px;right:-14px;bottom:-8px;border:2px solid #edc5aa;border-radius:10px 10px 15px 15px;background:linear-gradient(145deg,#d17665,#773a38 65%);font-size:26px;box-shadow:0 3px 6px #0007,inset 0 1px #ffd9c14a}
.hs-court .hs-hero .hs-atk{width:31px;height:31px;left:-13px;bottom:-8px;border:2px solid #efd796;border-radius:9px;background:linear-gradient(145deg,#c5a35c,#7f6335);font-size:22px}
.hs-court .hs-armor{border:1px solid #b6d3d8;border-radius:7px;padding:4px;background:linear-gradient(135deg,#527a87,#294552);top:2px;right:-15px}
.hs-court .hs-equipment{min-height:15px;margin-top:4px;color:#c1c4bc}
.hs-court .hs-equipment-empty{font:10px Segoe UI,Arial,sans-serif;color:#8f9fa5}
.hs-court .hs-equipment img{width:27px;height:27px;border-radius:6px}
.hs-court .hs-equipment:has(img){grid-template-columns:27px minmax(0,1fr)}
.hs-court .hs-power{grid-template-columns:27px minmax(0,1fr);gap:4px 8px;padding:9px 7px;min-height:70px;border:1px solid #ae996459;border-radius:8px;background:linear-gradient(145deg,#35475277,#13212a);text-align:left}
.hs-court .hs-bastion-enemy .hs-power{background:linear-gradient(145deg,#4e3d4577,#251f29)}
.hs-court .hs-power-symbol{height:31px;width:27px;border:0;border-radius:50%;background:none;align-self:start;box-shadow:none}
.hs-court .hs-power .hs-cost{left:18px;top:32px;bottom:auto;width:22px;height:22px;border:1px solid #93b9cb;border-radius:6px;background:#285368;color:#e6f2f6;font-size:14px}
.hs-court .hs-power b{font-size:12px;align-self:start;line-height:1.25;color:#efe0bb}
.hs-court .hs-power small{font-size:10px;line-height:1.4;-webkit-line-clamp:3;color:#c0cbd0}
.hs-court .hs-power:not(:disabled){border-color:#c3bd8b;box-shadow:0 0 15px #c4b27420}
.hs-court .hs-power:not(:disabled):hover{background:#3b5053;border-color:#e6d49f;transform:translateY(-1px)}
.hs-court .hs-power:disabled{opacity:.74}
.hs-court .hs-bastion-supply,.hs-court .hs-rival-resources{padding-top:8px;border-color:#b69c6530}
.hs-court .hs-bastion-supply>.hs-eyebrow,.hs-court .hs-rival-resources>span{font-size:7px;letter-spacing:1.4px;color:#a8b5b6}
.hs-court .hs-mana{flex-direction:row;justify-content:center;gap:9px;margin-top:6px}
.hs-court .hs-mana>b,.hs-court .hs-rival-resources>b{font-size:27px;color:#afdcee}
.hs-court .hs-mana>b small,.hs-court .hs-rival-resources>b small{font-size:13px;color:#8098a3}
.hs-court .hs-mana>span{display:grid;grid-template-columns:repeat(5,7px);gap:4px}
.hs-court .hs-mana i{width:7px;height:7px;transform:rotate(45deg);border-radius:1px;background:#14202a;box-shadow:inset 0 0 0 1px #557a8d66}
.hs-court .hs-mana i.filled{background:linear-gradient(135deg,#c6f0ff,#63aecd);box-shadow:0 0 7px #79bfce44}
.hs-court .hs-mana i.spent{background:#2e4956;box-shadow:inset 0 0 0 1px #7296a466}
.hs-court .hs-bastion-supply>small,.hs-court .hs-rival-resources>small{font-size:9px;color:#98a7ac;margin-top:7px}
.hs-court .hs-rival-resources>b{display:block;margin:5px 0 0;color:#dcbcb0}
.hs-court .hs-court-field{padding:0 14px 9px;border:1px solid #bba17650;border-radius:8px;background:radial-gradient(ellipse at 50% 50%,#72614920,transparent 65%),linear-gradient(0deg,#162936df,#433f3be3),url('assets/escenarios/exterior-ruinas.png') center 42%/cover;box-shadow:inset 0 0 40px #0c1d2666,0 1px 0 #d1b78922}
.hs-court-field:before{display:none}
.hs-court .hs-court-heading{min-height:33px;border-color:#ba9c5b30}
.hs-court .hs-court-heading>.hs-eyebrow{font-size:8px;letter-spacing:1.6px;color:#cdb990}
.hs-court .hs-enemy-hand{gap:3px;height:27px;padding-right:48px}
.hs-court .hs-card-back{width:15px;height:22px;border-radius:4px;background:linear-gradient(140deg,#885c44,#343044 60%,#b0844b);border-color:#bda06d;color:#e8c888;box-shadow:0 2px 4px #0005}
.hs-court .hs-enemy-hand>small{font-size:9px;color:#cbbfac}
.hs-court .hs-arena{grid-template-rows:minmax(0,1fr) 26px minmax(0,1fr);padding-top:2px}
.hs-court .hs-board-row{padding:19px 5px 10px;isolation:isolate;min-width:0}
.hs-court .hs-board-row:before{content:'';position:absolute;inset:20px 0 8px;border:1px solid #a9c6d017;border-radius:12px;background:linear-gradient(0deg,#6191b50c,transparent),repeating-linear-gradient(90deg,transparent 0 calc(100% / 7 - 1px),#d2bd980b calc(100% / 7 - 1px) calc(100% / 7));pointer-events:none;z-index:-1}
.hs-court .hs-enemy-row:before{border-color:#e4ac981c;background:linear-gradient(180deg,#b7867310,transparent),repeating-linear-gradient(90deg,transparent 0 calc(100% / 7 - 1px),#d2bd980b calc(100% / 7 - 1px) calc(100% / 7))}
.hs-court .hs-row-label{top:5px;left:4px;font-size:8px;font-weight:600;letter-spacing:1.8px;color:#a6c9d2;align-items:center}
.hs-court .hs-enemy-row .hs-row-label{color:#d7a899}
.hs-court .hs-row-label b{font-size:8px;color:#c4c7bd;background:#19232a7a;border-radius:4px;padding:2px 5px;letter-spacing:0}
.hs-court .hs-empty-board{color:#aeb7b1;font:italic 13px Georgia,serif;opacity:.72}
.hs-court .hs-units{gap:clamp(6px,.85vw,14px);min-width:0}
.hs-court .hs-midline{gap:15px}.hs-court .hs-midline i{background:linear-gradient(90deg,transparent,#b6976550,transparent)}
.hs-court-seal{font-size:20px;color:#cfb78670}.hs-court-seal:before{inset:-2px -9px 4px;border-color:#bda3723b}.hs-court-seal small{display:none}
.hs-court .hs-unit{width:clamp(57px,6.6vw,110px);height:clamp(78px,8.4vw,136px);max-height:100%;border:2px solid #b6a37e;border-radius:22px 22px 9px 9px;box-shadow:0 5px 10px #0007,0 0 0 1px #161c28,inset 0 1px #f1dab233;background:#222f36;transition:transform .16s,box-shadow .16s,border-color .16s}
.hs-court .hs-unit>img{border-radius:19px 19px 6px 6px;object-position:center 26%}
.hs-court .hs-unit-name{font-size:10px;line-height:1.2;bottom:8px;left:0;right:0;padding:5px 2px;max-height:34px;background:linear-gradient(0deg,#13232af2,#13232ae6);color:#f5e7c9;border-radius:0 0 6px 6px}
.hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:25px;min-width:27px;font-size:19px;bottom:-8px;border:1px solid #e5d7b3;border-radius:7px;box-shadow:0 3px 5px #0007}
.hs-court .hs-unit .hs-atk{background:linear-gradient(135deg,#bd9a53,#74592f);left:-5px}
.hs-court .hs-unit .hs-hp{background:linear-gradient(135deg,#c16b60,#783b3b);right:-5px;border-radius:7px 7px 10px 10px}
.hs-court .hs-unit .hs-hp.damaged{color:#ffd894;border-color:#f7ab75}
.hs-court .hs-unit-status{top:3px;right:4px;font-size:11px;color:#cae8ef;background:#182735bd;border-radius:4px;padding:1px 3px;pointer-events:none}
.hs-court .hs-unit-status:empty{display:none}
.hs-court .hs-unit-keywords{font-size:7px;top:-7px;max-width:95%;padding:2px 4px;line-height:1.2;background:#3e555e;border:1px solid #99b4b744;border-radius:4px;color:#e2eff1;pointer-events:none}
.hs-court .hs-ready{border-color:#a2d0ad;box-shadow:0 0 0 1px #86bf9c,0 0 15px #86bf9c38,0 5px 10px #0007}
.hs-court .hs-ready .hs-unit-status{color:#cdf7da;background:#284a38}
.hs-court .hs-unit:hover{transform:translateY(-3px);filter:brightness(1.08)}
.hs-court .hs-taunt{border-width:3px;border-color:#c1ccd0;border-radius:16px 16px 7px 7px;box-shadow:0 0 0 2px #657b85,0 5px 10px #0007}
.hs-court .hs-ready.hs-taunt{border-color:#b4dec4;box-shadow:0 0 0 2px #76a389,0 0 15px #a0d7ba33,0 5px 10px #0007}
.hs-court .hs-divine:after{inset:-5px;border-radius:25px 25px 13px 13px;border:1px solid #ffe292;background:linear-gradient(135deg,#ffe79933,transparent 60%);box-shadow:0 0 16px #ffe59a50}
.hs-court .hs-frozen{border-color:#a7e5ef;box-shadow:0 0 0 2px #6cadc9,0 0 18px #6ec4e866;filter:saturate(.7)}
.hs-court .hs-target{outline:2px solid #ffe0a1;outline-offset:4px;box-shadow:0 0 20px #f2bd6666}
.hs-court .hs-selected{outline:2px solid #b6e5ef;outline-offset:3px}
.hs-court .hs-insert{height:45px;width:17px;min-width:10px;border:1px dashed #9dc8d3;border-radius:5px;color:#c4e8ed;background:#87c7dd17}
.hs-court .hs-friendly-row:has(.hs-insert) .hs-units{gap:4px}
.hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:clamp(45px,5.1vw,88px);height:clamp(73px,7.3vw,120px)}
.hs-court .hs-drop-slot{width:clamp(45px,5.1vw,88px);height:clamp(73px,7.3vw,120px);border-radius:18px 18px 7px 7px;border-color:#acd8de;background:#7fc7d82b}
.hs-court .hs-drop-slot>span{color:#e7f5f6;background:#1c3a45ed}
.hs-court-controls{padding:0 6px;gap:18px;min-height:0}
.hs-court .hs-status{font-size:12px;line-height:1.5;color:#d0d8d8;text-align:left}
.hs-court .hs-status .hs-link{color:#f0d8a1;font-size:11px}
.hs-court .hs-end-turn{min-width:180px;min-height:43px;padding:11px 18px;border-radius:9px;border:1px solid #efdaa4;background:linear-gradient(145deg,#f0db9e,#c09b59);color:#302d23;box-shadow:0 3px 0 #725a33,0 6px 18px #0004;font-size:12px;letter-spacing:.3px}
.hs-court[data-turn=player] .hs-end-turn:not(:disabled){box-shadow:0 3px 0 #725a33,0 0 24px #e7c27c24}
.hs-court .hs-end-turn:disabled{background:#28353b;border-color:#566b7777;color:#a6b4b9}
.hs-court .hs-history{position:relative;left:auto;bottom:auto;display:flex;align-items:center;gap:0;padding:0 15px;border-left:1px solid #bba47333;z-index:40;align-self:center;flex-shrink:0}
.hs-court .hs-history .hs-link{font-size:11px;padding:6px 0;color:#b9b9aa}
.hs-court .hs-history>ol{right:0;left:auto;bottom:calc(100% + 12px);width:min(520px,calc(100vw - 40px));max-height:280px;border-radius:10px;background:#17242bf5;border-color:#b59a6366;padding:20px 20px 20px 38px;box-shadow:0 12px 35px #0008;line-height:1.7}
.hs-court .hs-hand-dock{--hand-card-width:clamp(145px,13.1vw,182px);--hand-card-height:208px;--hand-visible:208px;--hand-rise:40px;padding:0 8px}
.hs-court .hs-hand-dock:before{inset:0 -30px -20px;background:radial-gradient(ellipse at 50% 100%,#bf956514,transparent 72%),linear-gradient(0deg,#101a20,transparent);border-top:1px solid #b597632b}
.hs-court .hs-hand-bar{height:25px;padding:0 5px;color:#b5bebc;font-size:9px;letter-spacing:1.4px}
.hs-court .hs-hand-bar>span{display:flex;gap:8px;align-items:center}
.hs-court .hs-hand-bar b{color:#e9dbb7;margin:0;font-size:10px}
.hs-court .hs-hand-bar small{font-size:10px;color:#97adb4}
.hs-hand-availability{font-size:10px;letter-spacing:0;padding-left:10px;border-left:1px solid #bd9c6033;color:#8fa3ab}
.hs-hand-availability.hs-available{color:#b5dbc3}
.hs-court .hs-hand{height:208px;padding:9px 26px 0;overflow:visible;align-items:flex-start}
.hs-court .hs-hand-slot{flex:0 1 calc(var(--hand-card-width) * .86);min-width:0}
.hs-court .hs-hand-slot:last-child{margin-right:calc(var(--hand-card-width) * .14)}
.hs-court .hs-hand-lift{transform-origin:50% 95%;transition:transform .19s cubic-bezier(.2,.7,.25,1)}
.hs-court .hs-hand-slot:hover .hs-hand-lift,.hs-court .hs-hand-slot:focus-within .hs-hand-lift,.hs-court .hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:translateY(-40px) rotate(0deg) scale(1.1)}
#app .hs-court .hs-hand .hs-card{padding:7px 7px 21px;height:var(--hand-card-height);border-width:3px}
#app .hs-court .hs-hand .hs-card-art{height:61px;border-width:2px;border-radius:14px 14px 5px 5px}
#app .hs-court .hs-hand .hs-card-name{font-size:12px;line-height:1.15;min-height:29px;padding:4px;margin:5px -5px 0;width:calc(100% + 10px)}
#app .hs-court .hs-hand .hs-card-type{font-size:7px;line-height:1.2;margin:5px 0 3px}
#app .hs-court .hs-hand .hs-card-text{font-size:10px;line-height:1.35;padding:6px 1px 0;border-color:#86704e33;overflow:hidden}
#app .hs-court .hs-hand .hs-cost{width:29px;height:29px;font-size:21px;top:-7px;left:-8px}
#app .hs-court .hs-hand .hs-atk,#app .hs-court .hs-hand .hs-hp{height:27px;min-width:27px;font-size:19px;bottom:-7px}
#app .hs-court .hs-hand .hs-card:disabled{opacity:.8;filter:saturate(.65) brightness(.9)}
#app .hs-court .hs-playable .hs-card{box-shadow:0 3px 0 var(--frame-dark),0 8px 14px #0006,0 0 0 1px #acd4b5,0 0 20px #77c79525,inset 0 0 0 2px var(--frame-light),inset 0 0 0 4px var(--frame-dark)}
.hs-court .hs-hand-inspect{top:45px;right:8px;left:auto;bottom:auto;opacity:1;pointer-events:auto;width:22px;height:22px;font-size:17px;border-radius:5px;background:#15232ddd;border-color:#ded1ab9c}
.hs-court .hs-hand-inspect:hover{background:#587582}
@media(min-height:820px) and (min-width:1051px){
  .hs-court.hs-battle{grid-template-rows:42px minmax(0,1fr) 54px 276px;gap:10px;padding-bottom:17px}
  .hs-court .hs-hand-dock{--hand-card-height:232px;--hand-visible:232px}.hs-court .hs-hand{height:232px}
  #app .hs-court .hs-hand .hs-card-art{height:76px}#app .hs-court .hs-hand .hs-card-name{font-size:13px;min-height:33px}
  #app .hs-court .hs-hand .hs-card-text{font-size:11px;line-height:1.4}.hs-court .hs-hand-inspect{top:58px}
  .hs-court .hs-hero{width:113px;height:129px}.hs-court .hs-hero-area{gap:13px}.hs-court .hs-general-name{font-size:11px}
  .hs-court .hs-bastion{padding:17px 12px}.hs-court .hs-bastion>header{margin-bottom:17px}.hs-court .hs-bastion>header h2{font-size:24px}
  .hs-court .hs-power{padding:12px 9px}.hs-court .hs-power small{font-size:11px}.hs-court .hs-power .hs-cost{top:36px;left:21px}
  .hs-court .hs-court-table{grid-template-columns:195px minmax(0,1fr) 195px;padding:13px;gap:15px}
  .hs-court .hs-court-heading{min-height:41px}.hs-court .hs-unit-name{font-size:12px}
  .hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:29px;min-width:30px;font-size:22px}
}
@media(min-width:1600px){.hs-court .hs-court-table{grid-template-columns:215px minmax(0,1fr) 215px}.hs-court .hs-hand-dock{--hand-card-width:190px}.hs-court .hs-power small{font-size:11px}.hs-court .hs-power b{font-size:13px}}
@media(max-width:1050px) and (min-width:701px){
  .hs-court.hs-battle{padding-left:12px;padding-right:12px;grid-template-rows:36px minmax(0,1fr) 48px 233px}
  .hs-court .hs-court-table{grid-template-columns:138px minmax(0,1fr) 138px;gap:8px;padding:9px}
  .hs-court .hs-bastion{padding:10px 7px}.hs-court .hs-bastion>header h2{font-size:18px}.hs-court .hs-hero{width:78px;height:88px}
  .hs-court .hs-power{grid-template-columns:21px minmax(0,1fr);gap:3px 6px;padding:8px 5px}.hs-court .hs-power b{font-size:11px}.hs-court .hs-power small{font-size:9px}.hs-court .hs-power-symbol{width:22px;height:24px}.hs-court .hs-power .hs-cost{left:13px;top:28px;width:19px;height:19px;font-size:12px}
  .hs-court .hs-court-field{padding-left:8px;padding-right:8px}.hs-court .hs-court-heading>.hs-eyebrow{font-size:7px;letter-spacing:.6px}
  .hs-court .hs-unit{width:clamp(42px,5.7vw,58px);height:clamp(61px,8vw,86px)}.hs-court .hs-unit-name{font-size:8px}.hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{min-width:22px;height:22px;font-size:16px}
  .hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:clamp(29px,4vw,44px);height:65px}.hs-court .hs-insert{width:11px;min-width:8px;height:33px}
  .hs-court .hs-hand-dock{--hand-card-width:148px;--hand-card-height:199px;--hand-visible:199px}.hs-court .hs-hand{height:199px}
  #app .hs-court .hs-hand .hs-card-art{height:56px}#app .hs-court .hs-hand .hs-card-name{font-size:11px}#app .hs-court .hs-hand .hs-card-text{font-size:9px}
  .hs-court .hs-status{font-size:11px}.hs-court .hs-end-turn{min-width:148px;padding:10px 12px;font-size:11px}.hs-court .hs-history{padding:0 9px}
}
@media(max-width:700px),(max-height:600px){
  body:has(.hs-court){overflow:auto}
  #app.duel-view:has(.hs-court){height:auto;min-height:100dvh;display:block;overflow:visible}
  #app:has(.hs-court) .hs-header{height:52px;padding:0 12px}.hs-court.hs-battle{display:flex;flex-direction:column;padding:0 10px 249px;gap:10px}
  .hs-court .hs-battle-top{min-height:40px}.hs-turn-indicator{padding:6px 9px;gap:7px;letter-spacing:.6px}.hs-turn-indicator small{font-size:7px;padding-right:7px}.hs-turn-indicator strong{font-size:8px}
  .hs-court .hs-court-table{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;border-radius:12px;gap:8px;padding:8px}
  .hs-court .hs-bastion{grid-row:1;padding:9px;display:grid;grid-template-columns:1fr;gap:7px;align-items:stretch}
  .hs-court .hs-bastion>header{margin:0;text-align:left}.hs-court .hs-bastion>header h2{font-size:17px}.hs-court .hs-bastion>header .hs-eyebrow{font-size:7px}
  .hs-court .hs-hero-area{grid-template-columns:53px minmax(0,1fr);align-items:center;gap:3px 8px}
  .hs-court .hs-hero{grid-row:1/3;width:45px;height:62px;border-width:2px;border-radius:15px 15px 5px 5px}.hs-court .hs-general-name{display:none}.hs-court .hs-hero .hs-general-portrait{border-radius:12px 12px 3px 3px}
  .hs-court .hs-hero .hs-hp{width:26px;min-width:26px;height:25px;font-size:18px;border-width:1px;right:-8px;bottom:-5px;border-radius:6px}.hs-court .hs-hero .hs-atk{width:22px;min-width:22px;height:22px;font-size:16px;border-width:1px;left:-6px;bottom:-5px}.hs-court .hs-armor{font-size:9px;padding:3px;right:-8px}
  .hs-court .hs-equipment{grid-column:2;grid-row:2;margin:0;min-height:10px;justify-content:flex-start}.hs-court .hs-equipment-empty{font-size:8px}
  .hs-court .hs-power{grid-row:1;grid-column:2;min-height:0;display:block;padding:0;border:0;background:none!important;box-shadow:none!important}.hs-court .hs-power-symbol{display:none}.hs-court .hs-power .hs-cost{position:static;display:inline;background:none;border:0;font-size:10px;color:#bcd9e4}.hs-court .hs-power b{font-size:10px;display:inline;margin-left:3px}.hs-court .hs-power small{font-size:8px;margin-top:4px;-webkit-line-clamp:3}
  .hs-court .hs-bastion-supply,.hs-court .hs-rival-resources{display:flex;align-items:center;justify-content:space-between;margin:0;gap:5px;padding-top:6px}.hs-court .hs-bastion-supply>.hs-eyebrow,.hs-court .hs-rival-resources>span{display:none}.hs-court .hs-mana{gap:5px;margin:0}.hs-court .hs-mana>b,.hs-court .hs-rival-resources>b{font-size:21px;margin:0}.hs-court .hs-mana>span{grid-template-columns:repeat(5,5px);gap:3px}.hs-court .hs-mana i{width:5px;height:5px}.hs-court .hs-bastion-supply>small,.hs-court .hs-rival-resources>small{font-size:7px;max-width:57px;text-align:right;margin:0}
  .hs-court .hs-court-field{grid-column:1/-1;grid-row:2;min-height:318px;padding:0 7px 10px}.hs-court .hs-court-heading{min-height:32px;gap:4px}.hs-court .hs-court-heading>.hs-eyebrow{font-size:6px;letter-spacing:.6px}.hs-court .hs-enemy-hand{padding-right:32px;gap:2px}.hs-court .hs-card-back{width:11px;height:17px;font-size:8px}.hs-court .hs-enemy-hand>small{font-size:7px}
  .hs-court .hs-arena{grid-template-rows:minmax(120px,1fr) 25px minmax(120px,1fr);overflow:visible}.hs-court .hs-row-label{display:flex;font-size:7px;letter-spacing:1px}.hs-court .hs-row-label b{font-size:7px}.hs-court .hs-units{gap:5px;min-width:0}.hs-court .hs-unit{width:clamp(30px,9vw,54px);height:clamp(53px,15vw,81px);border-radius:14px 14px 5px 5px}.hs-court .hs-unit>img{border-radius:11px 11px 3px 3px}.hs-court .hs-unit-name{font-size:7px;padding:3px 1px;max-height:24px;bottom:6px}.hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:19px;min-width:19px;font-size:13px;border-radius:5px;bottom:-6px}.hs-court .hs-unit .hs-atk{left:-3px}.hs-court .hs-unit .hs-hp{right:-3px}.hs-court .hs-unit-status{font-size:8px;padding:0 2px;right:1px}.hs-court .hs-unit-keywords{font-size:6px;max-width:66px}
  .hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:clamp(21px,5.8vw,41px);height:57px}.hs-court .hs-friendly-row:has(.hs-insert) .hs-units{gap:2px}.hs-court .hs-insert{width:8px;min-width:6px;height:28px}.hs-court .hs-drop-slot{width:35px;height:58px;border-radius:12px 12px 5px 5px}
  .hs-court-controls{position:sticky;bottom:213px;z-index:35;background:#17262cf5;padding:8px;border:1px solid #bba16855;border-radius:8px;gap:10px}.hs-court .hs-status{font-size:10px}.hs-court .hs-end-turn{min-width:112px;min-height:37px;padding:9px 10px;font-size:10px;gap:8px}.hs-court .hs-history{padding:0;border:0}.hs-court .hs-history .hs-link{font-size:9px}.hs-court .hs-history>ol{right:-100px;width:min(520px,calc(100vw - 30px))}
  .hs-court .hs-hand-dock{position:fixed;left:0;right:0;bottom:0;height:214px;padding:0 9px;--hand-card-width:135px;--hand-card-height:176px;--hand-visible:176px;background:linear-gradient(0deg,#12212b 80%,#192b32ed);border-top:1px solid #b49a6355}
  .hs-court .hs-hand-bar{height:28px;font-size:8px;letter-spacing:.7px}.hs-court .hs-hand-bar small{font-size:8px}.hs-hand-availability{font-size:8px;padding-left:7px}.hs-court .hs-hand-bar>span{gap:5px}
  .hs-court .hs-hand{height:183px;padding:9px 8px 8px;overflow-x:auto;overflow-y:clip;justify-content:flex-start;scrollbar-width:thin;scrollbar-color:#758990 transparent}.hs-court .hs-hand-slot{flex:0 0 118px}.hs-court .hs-hand-slot:last-child{margin-right:17px}.hs-court .hs-hand-lift{transform:translateY(0)}
  .hs-court .hs-hand-slot:hover .hs-hand-lift,.hs-court .hs-hand-slot:focus-within .hs-hand-lift,.hs-court .hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:translateY(0)}
  #app .hs-court .hs-hand .hs-card-art{height:43px}#app .hs-court .hs-hand .hs-card-name{font-size:10px;min-height:26px}#app .hs-court .hs-hand .hs-card-type{font-size:6px;margin:4px 0 2px}#app .hs-court .hs-hand .hs-card-text{font-size:9px;line-height:1.35;padding-top:4px}
  #app .hs-court .hs-hand .hs-atk,#app .hs-court .hs-hand .hs-hp{height:23px;min-width:23px;font-size:16px}.hs-court .hs-hand-inspect{top:29px;right:7px;width:21px;height:21px;font-size:16px}
}
@media(min-width:701px) and (min-height:601px) and (max-height:679px){
  body:has(.hs-court){overflow:hidden}#app.duel-view:has(.hs-court){height:100dvh;min-height:0;display:grid;overflow:clip}
  .hs-court.hs-battle{display:grid;grid-template-rows:32px minmax(0,1fr) 43px 202px;padding-bottom:9px;gap:6px}
  .hs-court .hs-court-table{grid-template-columns:145px minmax(0,1fr) 145px;grid-template-rows:minmax(0,1fr)}.hs-court .hs-bastion{grid-row:auto;display:flex;align-items:center;padding:8px 7px}
  .hs-court .hs-court-field{grid-column:auto;grid-row:auto;min-height:0}.hs-court .hs-hero-area{grid-template-columns:1fr;gap:5px}.hs-court .hs-hero{grid-row:1;grid-column:1;width:65px;height:71px}.hs-court .hs-power{grid-row:3;grid-column:1;min-height:58px}.hs-court .hs-equipment{grid-row:2;grid-column:1;min-height:10px}
  .hs-court .hs-bastion>header h2{font-size:17px}.hs-court .hs-bastion>header{margin-bottom:6px}.hs-court .hs-power small{font-size:9px;-webkit-line-clamp:2}.hs-court .hs-bastion-supply>small,.hs-court .hs-rival-resources>small{font-size:8px}
  .hs-court-controls{position:static;border:0;background:none}.hs-court .hs-history{position:relative;left:auto;bottom:auto}
  .hs-court .hs-hand-dock{position:relative;left:auto;right:auto;bottom:auto;height:auto;padding:0 8px;--hand-card-height:170px;--hand-visible:170px;background:none;border:0}.hs-court .hs-hand{height:170px;overflow:visible}
  #app .hs-court .hs-hand .hs-card-art{height:43px}#app .hs-court .hs-hand .hs-card-name{font-size:11px;min-height:25px}#app .hs-court .hs-hand .hs-card-text{font-size:9px}.hs-court .hs-hand-inspect{top:29px}
  .hs-court .hs-arena{grid-template-rows:minmax(0,1fr) 22px minmax(0,1fr)}.hs-court .hs-unit{height:72px}.hs-court .hs-court-heading{min-height:28px}
}
@media(prefers-reduced-motion:reduce){.hs-court .hs-hand-lift,.hs-court .hs-unit,.hs-court .hs-hero,.hs-court .hs-power{transition:none}}

.hs-court .hs-general-name{display:none}
.hs-bastion>header .hs-bastion-general{display:block;margin-top:6px;font-size:11px;color:#d5d6c4;line-height:1.2}

/* Resources stay beside their hands; the commander panels never compress their contents. */
.hs-court .hs-bastion>header{line-height:1.2;flex-shrink:0;margin-bottom:10px}
.hs-court .hs-bastion>header .hs-eyebrow{display:block;line-height:1.3}
.hs-court .hs-bastion>header .hs-bastion-general{font-size:10px;margin-top:4px}
.hs-court .hs-hero-area{flex:0 0 auto;min-height:auto;gap:7px}
.hs-court .hs-hero{height:88px;width:86px}
.hs-court .hs-equipment:not(:has(img)){display:none}
.hs-court .hs-power{min-height:62px;padding:7px 6px}
.hs-court .hs-power small{line-height:1.3;font-size:10px}
.hs-court .hs-power .hs-cost{top:31px}
.hs-court .hs-bastion-supply,.hs-court .hs-rival-resources{padding-top:6px;margin-top:auto;line-height:1.3;flex:0 0 auto}
.hs-court .hs-bastion-supply>.hs-eyebrow,.hs-court .hs-bastion-supply>.hs-mana,.hs-court .hs-rival-resources>span,.hs-court .hs-rival-resources>b{display:none}
.hs-court .hs-bastion-supply>small,.hs-court .hs-rival-resources>small{font-size:9px;margin-top:0;max-width:none;white-space:nowrap}
.hs-court .hs-hand-bar{gap:18px;height:28px;justify-content:flex-start}
.hs-court .hs-hand-bar>small{margin-left:auto}
.hs-hand-mana{display:flex;align-items:center;gap:9px;margin-left:auto;letter-spacing:1px;color:#a9cddb}
.hs-hand-mana>small{font-size:8px}
.hs-court .hs-hand-mana .hs-mana{margin:0;gap:10px;flex-direction:row;align-items:center}
.hs-court .hs-hand-mana .hs-mana>b{font-size:23px}.hs-court .hs-hand-mana .hs-mana>b small{font-size:12px}
.hs-court .hs-hand-mana .hs-mana>span{display:flex;gap:4px}
.hs-court .hs-hand-mana .hs-mana i{height:7px;width:7px}
.hs-court .hs-hand-inspect{left:9px;right:auto}
.hs-court .hs-court-heading{justify-content:flex-start;gap:15px}
.hs-court .hs-enemy-hand{margin-left:auto}
.hs-field-rival-mana{font-size:15px;font-weight:600;color:#bed7df;white-space:nowrap;display:flex;gap:3px;align-items:center}
.hs-field-rival-mana>i{font-style:normal;color:#97c5d9;margin-right:3px;font-size:14px}.hs-field-rival-mana>small{font-size:10px;font-weight:400;color:#a5b3b6}
@media(min-height:820px) and (min-width:1051px){
  .hs-court .hs-hero{width:113px;height:129px}.hs-court .hs-bastion>header{margin-bottom:20px}.hs-court .hs-bastion>header .hs-bastion-general{font-size:12px;margin-top:7px}
  .hs-court .hs-power{padding:12px 9px;min-height:75px}.hs-court .hs-power small{font-size:11px;line-height:1.4}.hs-court .hs-power .hs-cost{top:36px}
  .hs-court .hs-hand-mana .hs-mana>b{font-size:25px}
}
@media(max-width:1050px) and (min-width:701px){.hs-court .hs-hand-bar>small{display:none}.hs-court .hs-hero{width:78px;height:83px}.hs-court .hs-power small{font-size:9px}.hs-court .hs-court-heading{gap:8px}}
@media(max-width:700px),(max-height:600px){
  .hs-court .hs-bastion>header{margin:0}.hs-court .hs-bastion>header .hs-bastion-general{font-size:9px}.hs-court .hs-hero-area{gap:3px 8px;flex:none}
  .hs-court .hs-hero{width:45px;height:62px}.hs-court .hs-power{padding:0;min-height:0}.hs-court .hs-power small{font-size:8px;line-height:1.3}
  .hs-court .hs-bastion-supply,.hs-court .hs-rival-resources{margin-top:0;padding-top:4px;display:block;text-align:left}.hs-court .hs-bastion-supply>small,.hs-court .hs-rival-resources>small{font-size:8px;max-width:none;text-align:left}
  .hs-court .hs-hand-bar{gap:9px;height:28px}.hs-court .hs-hand-bar>small{display:none}.hs-hand-mana{gap:5px}.hs-hand-mana>small{display:none}
  .hs-court .hs-hand-mana .hs-mana>b{font-size:18px}.hs-court .hs-hand-mana .hs-mana>b small{font-size:9px}.hs-court .hs-hand-mana .hs-mana{gap:7px}.hs-court .hs-hand-mana .hs-mana>span{display:grid;grid-template-columns:repeat(5,4px);gap:3px}.hs-court .hs-hand-mana .hs-mana i{width:4px;height:4px}
  .hs-field-rival-mana{font-size:12px;gap:1px}.hs-field-rival-mana>small{font-size:8px}.hs-field-rival-mana>i{font-size:11px;margin-right:1px}.hs-court .hs-court-heading{gap:7px}
}
@media(min-width:701px) and (min-height:601px) and (max-height:679px){.hs-court .hs-hero{width:65px;height:65px}.hs-court .hs-power{min-height:50px;padding:6px}.hs-court .hs-bastion>header{margin-bottom:6px}.hs-court .hs-power small{font-size:9px}.hs-court .hs-hand-bar>small{display:none}}

/* A weapon occupies the space beside its portrait instead of pushing the power down. */
.hs-court .hs-hero-area{position:relative}
.hs-court .hs-equipment:has(img){position:absolute;top:22px;left:0;width:36px;margin:0;display:flex;flex-direction:column;gap:4px;text-align:center}
.hs-court .hs-equipment:has(img)>b{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hs-court .hs-equipment:has(img)>span{font-size:9px;color:#e1d4a7}
.hs-court .hs-equipment i{margin:0 1px}
@media(max-width:700px),(max-height:600px){
  .hs-court .hs-hero-area{grid-template-rows:auto}
  .hs-court .hs-hero{grid-row:1;grid-column:1}
  .hs-court .hs-hero-area:has(.hs-equipment img){padding-bottom:35px}
  .hs-court .hs-equipment:has(img){top:69px;left:3px;flex-direction:row;width:100%;gap:6px;text-align:left}
  .hs-court .hs-equipment:has(img)>img{height:22px;width:22px}
  .hs-court .hs-court-field{min-height:280px}
  .hs-court .hs-arena{grid-template-rows:minmax(100px,1fr) 25px minmax(100px,1fr)}
}

/* Portrait cards give the illustration nearly half the card, at every breakpoint. */
.hs-court.hs-battle{grid-template-rows:38px minmax(0,1fr) 52px 284px}
.hs-court .hs-hand-dock{--hand-card-width:132px;--hand-card-height:224px;--hand-visible:224px;--hand-art-height:96px}
.hs-court .hs-hand{height:var(--hand-card-height)}
#app .hs-court .hs-hand .hs-card-art{height:var(--hand-art-height);border-radius:19px 19px 5px 5px}
#app .hs-court .hs-hand .hs-card-art img{object-position:center 35%}
#app .hs-court .hs-hand .hs-card-name{flex-shrink:0;font-size:11px;min-height:29px}
#app .hs-court .hs-hand .hs-card-type{flex-shrink:0;margin:4px 0 2px}
#app .hs-court .hs-hand .hs-card-text{font-size:9px;padding-top:4px}
.hs-court .hs-hand-inspect{top:calc(var(--hand-art-height) - 13px)}
.hs-court .hs-units{container-type:size}
.hs-court .hs-board-row{padding:15px 5px 3px}
.hs-court .hs-unit{width:min(clamp(42px,6vw,96px),66cqh);height:auto;aspect-ratio:2/3;max-height:none;flex-shrink:0}
.hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:min(clamp(30px,4.6vw,76px),66cqh);height:auto}
.hs-court .hs-unit-name{font-size:9px;max-height:28px;padding:3px 1px;bottom:9px}
@container(max-height:90px){
  .hs-court .hs-unit-name{font-size:7px;max-height:19px;padding:2px 1px;bottom:10px}
  .hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:clamp(15px,27cqh,22px);min-width:clamp(15px,27cqh,22px);font-size:clamp(11px,20cqh,16px);bottom:-5px}
}
.hs-court .hs-hand-bar{height:44px;gap:12px}
.hs-court .hs-hand-bar>small{display:none}
.hs-hand-resources{display:flex;gap:12px;margin:0 auto;align-items:center}
.hs-court .hs-hand-mana{display:grid;grid-template-columns:auto auto;gap:6px 10px;margin:0;padding:4px 12px;border:1px solid #82b8cd77;border-radius:7px;background:#203d4b;color:#d2efff;letter-spacing:.7px}
.hs-court .hs-hand-mana>small{display:block;font-size:10px;font-weight:700;color:inherit;white-space:nowrap}
.hs-court .hs-hand-mana .hs-mana{gap:8px}
.hs-court .hs-hand-mana .hs-mana>b{font-size:29px;line-height:1.05;color:#e2f5ff}
.hs-court .hs-hand-mana .hs-mana>b small{font-size:18px;color:#accad9}
.hs-court .hs-hand-mana .hs-mana>span{display:grid;grid-template-columns:repeat(5,6px);gap:4px}
.hs-court .hs-hand-mana .hs-mana i{width:6px;height:6px}
.hs-court .hs-mana-rival{border-color:#d49b8177;background:#48322f;color:#f3d3bb}
.hs-court .hs-mana-rival .hs-mana>b{color:#ffe3cd}
.hs-court .hs-mana-rival .hs-mana>b small{color:#d9b19c}
.hs-court .hs-mana-rival .hs-mana i.filled{background:linear-gradient(135deg,#ffe0b5,#c98f70);box-shadow:0 0 6px #dba67844}
@media(min-width:701px) and (max-height:819px){
  .hs-court .hs-hero{width:62px;height:68px}
  .hs-court .hs-power{padding:5px;min-height:57px}
  .hs-court .hs-power small{font-size:9px}
  .hs-court .hs-bastion>header{margin-bottom:7px}
  .hs-court .hs-bastion>header h2{font-size:19px}
}
@media(min-height:820px) and (min-width:701px){
  .hs-court.hs-battle{grid-template-rows:42px minmax(0,1fr) 54px 352px}
  .hs-court .hs-hand-dock{--hand-card-width:164px;--hand-card-height:292px;--hand-visible:292px;--hand-art-height:140px}
  #app .hs-court .hs-hand .hs-card-name{font-size:13px;min-height:33px}
  #app .hs-court .hs-hand .hs-card-text{font-size:11px}
}
@media(min-width:701px) and (max-height:679px) and (min-height:601px){
  .hs-court.hs-battle{grid-template-rows:32px minmax(0,1fr) 43px 264px}
  .hs-court .hs-hand-dock{--hand-card-width:116px;--hand-card-height:204px;--hand-visible:204px;--hand-art-height:84px}
  .hs-court .hs-hero{width:48px;height:48px}
  .hs-court .hs-power small{-webkit-line-clamp:2}
  .hs-court .hs-unit-name{font-size:7px;max-height:20px;bottom:6px}
  .hs-court .hs-unit .hs-atk,.hs-court .hs-unit .hs-hp{height:19px;min-width:19px;font-size:13px;bottom:-5px}
}
@media(max-width:700px),(max-height:600px){
  .hs-court.hs-battle{padding-bottom:336px}
  .hs-court .hs-hand-dock{height:302px;--hand-card-width:128px;--hand-card-height:230px;--hand-visible:230px;--hand-art-height:100px}
  .hs-court .hs-hand-bar{height:64px;display:flex;flex-wrap:wrap;justify-content:center;gap:0;padding:3px 4px}
  .hs-court .hs-hand-bar>span{width:100%;justify-content:center;font-size:8px}
  .hs-hand-resources{gap:8px;margin:0;width:100%;justify-content:center}
  .hs-court .hs-hand-mana{padding:4px 7px;gap:5px;grid-template-columns:auto auto;flex:1}
  .hs-court .hs-hand-mana>small{font-size:9px}
  .hs-court .hs-hand-mana .hs-mana>b{font-size:26px}
  .hs-court .hs-hand-mana .hs-mana>b small{font-size:15px}
  .hs-court .hs-hand-mana .hs-mana{justify-content:flex-end;gap:6px}
  .hs-court .hs-hand-mana .hs-mana>span{grid-template-columns:repeat(5,4px);gap:3px}
  .hs-court .hs-hand-mana .hs-mana i{width:4px;height:4px}
  .hs-court .hs-hand{height:238px;padding-top:9px}
  .hs-court .hs-hand-slot{flex-basis:112px}
  #app .hs-court .hs-hand .hs-card-name{font-size:10px}
  .hs-court-controls{bottom:301px}
  .hs-court .hs-bastion{padding:7px;gap:5px}
  .hs-court .hs-bastion>header .hs-eyebrow{display:none}
  .hs-court .hs-court-field{min-height:238px}
  .hs-court .hs-arena{grid-template-rows:minmax(79px,1fr) 25px minmax(79px,1fr)}
  .hs-court .hs-unit{width:min(9vw,66cqh);height:auto}
  .hs-court .hs-friendly-row:has(.hs-insert) .hs-unit{width:min(5.8vw,66cqh);height:auto}
  .hs-court .hs-unit-name{font-size:7px;max-height:20px;bottom:6px}
}

.hs-supply-icon{width:22px;height:22px;fill:#bf925255;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;flex-shrink:0}
.hs-court .hs-hand-mana{grid-template-columns:22px auto auto;background:#34392d;border-color:#b9a779;color:#eee1b9}
.hs-court .hs-mana-rival{background:#48322f;border-color:#d49b81;color:#f3d3bb}
.hs-court .hs-hand-mana .hs-mana i{width:8px;height:10px;transform:none;display:grid;place-items:center;background:#131e20;border-radius:1px;box-shadow:none;color:#607276}
.hs-court .hs-hand-mana .hs-mana i .hs-supply-icon{width:8px;height:10px;stroke-width:2.2;fill:none}
.hs-court .hs-hand-mana .hs-mana i.filled{background:#b7a060;color:#fff0bf;box-shadow:0 0 5px #d0b27c44}
.hs-court .hs-hand-mana .hs-mana i.spent{background:#5e5c45;color:#b6af8a}
.hs-court .hs-hand-mana .hs-mana>span{grid-template-columns:repeat(5,8px);gap:3px}
.hs-court .hs-mana-rival .hs-mana i.filled{background:#ad7557;color:#ffe2c0}
#app.duel-view .hs-cost{display:flex;justify-content:center;align-items:center;gap:3px;border-radius:6px;background:linear-gradient(135deg,#96794c,#494337);border-color:#dcca9e;transform:none;color:#fff1ce;box-shadow:0 2px 5px #0007,inset 0 0 0 1px #d6c18855;text-shadow:0 1px 2px #27241c}
.duel-view .hs-card .hs-cost .hs-supply-icon{width:13px;height:16px}
#app .hs-court .hs-hand .hs-cost{width:44px;height:30px;font-size:20px}
#app.duel-view .hs-power .hs-cost{width:31px;gap:2px;font-size:13px}
#app.duel-view .hs-power .hs-cost .hs-supply-icon{width:10px;height:13px}
@media(max-width:700px),(max-height:600px){
  .hs-court .hs-hand-mana{grid-template-columns:18px auto auto;padding:4px;gap:4px}
  .hs-court .hs-hand-mana>.hs-supply-icon{width:18px;height:20px}
  .hs-court .hs-hand-mana>small{font-size:7px;white-space:normal;max-width:65px;line-height:1.3}
  .hs-court .hs-hand-mana .hs-mana>span{display:none}
  #app.duel-view .hs-power .hs-cost{display:inline-flex;width:auto;height:14px;padding:1px 3px;font-size:10px;vertical-align:middle}
  .hs-court .hs-court-field{min-height:230px}
  .hs-court .hs-arena{grid-template-rows:minmax(75px,1fr) 25px minmax(75px,1fr)}
}
.hs-facing.hs-battle{grid-template-rows:32px minmax(0,1fr) 42px 318px;gap:7px;padding-bottom:12px;max-width:1400px}
.hs-facing .hs-court-table{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:76px minmax(190px,1fr) 76px;gap:7px;padding:10px}
.hs-facing .hs-bastion{display:grid;grid-template-columns:minmax(0,1fr) 142px 76px 142px minmax(0,1fr);grid-template-rows:minmax(0,1fr);grid-row:auto;width:min(100%,940px);justify-self:center;align-items:center;gap:0;padding:6px 14px;min-height:0;position:relative}
.hs-facing .hs-bastion-enemy{grid-row:1;border-radius:10px 10px 5px 5px}
.hs-facing .hs-bastion-player{grid-row:3;border-radius:5px 5px 10px 10px}
.hs-facing .hs-bastion>header{grid-column:1;grid-row:1;margin:0;text-align:left;line-height:1.15;min-width:0}
.hs-facing .hs-bastion>header .hs-eyebrow{display:block;font-size:7px;letter-spacing:1.4px}
.hs-facing .hs-bastion>header h2{font-size:19px;margin:4px 0 0}
.hs-facing .hs-bastion>header .hs-bastion-general{font-size:9px;margin-top:3px}
.hs-facing .hs-hero-area{grid-column:3/-1;grid-row:1;display:grid;grid-template-columns:76px 34px minmax(0,1fr);grid-template-rows:1fr;gap:0;width:100%;height:100%;min-height:0;align-items:center;justify-items:center;padding:0}
.hs-facing .hs-hero{grid-column:1;grid-row:1;width:53px;height:56px;border-radius:16px 16px 6px 6px;border-width:2px;margin:0}
.hs-facing .hs-hero .hs-general-portrait{border-radius:13px 13px 4px 4px}
.hs-facing .hs-hero .hs-hp{height:27px;width:27px;min-width:27px;font-size:21px;border-radius:6px 6px 10px 10px;right:-7px;bottom:-5px}
.hs-facing .hs-hero .hs-atk{height:24px;width:24px;min-width:24px;font-size:17px;left:-7px;bottom:-5px}
.hs-facing .hs-armor{font-size:10px;padding:2px;right:-10px;top:-2px}
.hs-facing .hs-equipment:has(img){position:static;grid-column:2;grid-row:1;width:30px;display:flex;flex-direction:column;gap:2px;min-height:0;margin:0;text-align:center}
.hs-facing .hs-equipment:has(img)>img{width:24px;height:24px}
.hs-facing .hs-equipment:has(img)>span{font-size:8px}
.hs-facing .hs-power{grid-column:3;grid-row:1;width:min(100%,240px);justify-self:end;display:grid;grid-template-columns:24px minmax(0,1fr);gap:2px 8px;padding:5px 7px;min-height:56px;margin:0;text-align:left;border:1px solid #b59e6359;background:#14222a66!important;box-shadow:none}
.hs-facing .hs-power-symbol{width:24px;height:24px;align-self:start;display:grid}
.hs-facing .hs-power b{font-size:11px;line-height:1.15;display:block;margin:0}
.hs-facing .hs-power small{font-size:9px;line-height:1.25;margin:0;-webkit-line-clamp:2}
#app.duel-view .hs-facing .hs-power .hs-cost{position:absolute;left:4px;top:auto;bottom:4px;height:18px;width:29px;font-size:11px;display:flex;padding:0}
.hs-facing .hs-command-supply{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;min-width:0}
.hs-facing .hs-command-supply>small{font-size:8px;color:#a8b9bc;white-space:nowrap}
.hs-facing .hs-hand-mana{position:relative;display:grid;grid-template-columns:18px auto;grid-template-rows:12px 30px;padding:2px 7px;gap:1px 5px;border-radius:5px;width:128px;justify-items:center;background:#24332c;border-color:#b3a07955}
.hs-facing .hs-mana-rival{background:#422e2c;border-color:#d49b8166}
.hs-facing .hs-hand-mana>.hs-supply-icon{grid-column:1;grid-row:2;width:18px;height:20px;align-self:center}
.hs-facing .hs-hand-mana>small{grid-column:1/-1;grid-row:1;font-size:7px;letter-spacing:1px;white-space:nowrap;max-width:none}
.hs-facing .hs-hand-mana .hs-mana{grid-column:2;grid-row:2;gap:5px;margin:0}
.hs-facing .hs-hand-mana .hs-mana>b{font-size:28px}
.hs-facing .hs-hand-mana .hs-mana>b small{font-size:16px}
.hs-facing .hs-hand-mana .hs-mana>span{display:grid;grid-template-columns:repeat(5,5px);gap:3px}
.hs-facing .hs-hand-mana .hs-mana i,.hs-facing .hs-hand-mana .hs-mana i .hs-supply-icon{width:5px;height:7px}
.hs-facing .hs-court-field{grid-column:1;grid-row:2;width:100%;min-height:0;padding:0 18px 9px}
.hs-facing .hs-court-heading{min-height:27px}
.hs-facing .hs-arena{grid-template-rows:minmax(0,1fr) 20px minmax(0,1fr);overflow:visible}
.hs-facing .hs-board-row{padding:15px 5px 5px}
.hs-facing .hs-hand-dock{position:relative;left:auto;right:auto;bottom:auto;height:auto;--hand-card-width:154px;--hand-card-height:276px;--hand-visible:276px;--hand-art-height:130px;border:0;padding:0 8px;background:none}
.hs-facing .hs-hand-dock:before{inset:0}
.hs-facing .hs-hand-bar{height:27px;padding:0 8px;justify-content:center;flex-wrap:nowrap;gap:15px}
.hs-facing .hs-hand-bar>span{width:auto;justify-content:center;font-size:9px}
.hs-facing .hs-hand-bar>small{display:block;margin:0;font-size:9px}
.hs-facing .hs-hand{height:var(--hand-card-height);padding-top:9px}
.hs-facing .hs-court-controls{position:static;bottom:auto;min-height:0;background:none;border:0;padding:0 5px}
.hs-facing .hs-status{font-size:10px}
.hs-facing .hs-end-turn{min-height:37px;min-width:150px;padding:8px 12px;font-size:11px}
@media(min-width:701px) and (max-height:819px){
  body:has(.hs-facing){overflow:auto}
  #app.duel-view:has(.hs-facing){height:auto;min-height:100dvh;display:grid;overflow:visible;grid-template-rows:52px auto}
  .hs-facing.hs-battle{grid-template-rows:32px 364px 42px 264px;min-height:0}
  .hs-facing .hs-court-table{grid-template-rows:70px minmax(190px,1fr) 70px;padding:8px;gap:5px}
  .hs-facing .hs-bastion{padding:4px 10px}
  .hs-facing .hs-hand-dock{--hand-card-width:130px;--hand-card-height:224px;--hand-visible:224px;--hand-art-height:96px}
}
@media(max-width:1050px) and (min-width:701px){
  .hs-facing .hs-bastion{grid-template-columns:minmax(0,1fr) 126px 64px 126px minmax(0,1fr);padding-left:8px;padding-right:8px}
  .hs-facing .hs-bastion>header h2{font-size:16px}
  .hs-facing .hs-hero-area{grid-template-columns:64px 28px minmax(0,1fr)}
  .hs-facing .hs-power{width:100%;padding:4px;gap:2px 5px}
  .hs-facing .hs-hand-mana{width:116px;padding:2px 5px}
}
@media(max-width:700px){
  body:has(.hs-facing){overflow:auto}
  #app.duel-view:has(.hs-facing){height:auto;min-height:100dvh;display:grid;grid-template-rows:52px auto;overflow:visible}
  .hs-facing.hs-battle{display:grid;grid-template-rows:32px 422px 48px 264px;padding:0 8px 10px;gap:6px}
  .hs-facing .hs-court-table{grid-template-columns:minmax(0,1fr);grid-template-rows:82px minmax(220px,1fr) 82px;padding:6px;gap:5px}
  .hs-facing .hs-bastion{width:100%;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr);grid-template-rows:44px 25px;gap:3px 5px;padding:4px 7px}
  .hs-facing .hs-bastion>header{grid-column:1;grid-row:1}
  .hs-facing .hs-bastion>header .hs-eyebrow{font-size:6px;letter-spacing:.5px}
  .hs-facing .hs-bastion>header h2{font-size:13px;margin-top:2px}
  .hs-facing .hs-bastion>header .hs-bastion-general{font-size:8px;margin-top:2px}
  .hs-facing .hs-hero-area{display:contents}
  .hs-facing .hs-hero{grid-column:2;grid-row:1;width:36px;height:40px;justify-self:center;border-radius:11px 11px 4px 4px}
  .hs-facing .hs-hero .hs-hp{width:22px;min-width:22px;height:22px;font-size:16px;right:-5px;bottom:-4px}
  .hs-facing .hs-hero .hs-atk{width:19px;min-width:19px;height:19px;font-size:13px;left:-6px;bottom:-4px}
  .hs-facing .hs-power{grid-column:3;grid-row:1;min-height:36px;display:block;width:100%;padding:3px 4px 3px 27px}
  .hs-facing .hs-power-symbol{display:none}
  .hs-facing .hs-power b{font-size:9px}
  .hs-facing .hs-power small{display:none}
  #app.duel-view .hs-facing .hs-power .hs-cost{left:3px;top:50%;bottom:auto;transform:translateY(-50%);width:23px;height:18px;font-size:10px;gap:1px}
  .hs-facing .hs-command-supply{grid-column:1/-1;grid-row:2;flex-direction:row;justify-content:center;gap:8px}
  .hs-facing .hs-command-supply>small{font-size:7px}
  .hs-facing .hs-hand-mana{width:auto;grid-template-columns:16px auto auto;grid-template-rows:auto;gap:5px;padding:1px 6px}
  .hs-facing .hs-hand-mana>.hs-supply-icon{grid-column:1;grid-row:1;width:14px;height:16px}
  .hs-facing .hs-hand-mana>small{grid-column:2;grid-row:1;font-size:7px}
  .hs-facing .hs-hand-mana .hs-mana{grid-column:3;grid-row:1}
  .hs-facing .hs-hand-mana .hs-mana>b{font-size:21px}
  .hs-facing .hs-hand-mana .hs-mana>b small{font-size:12px}
  .hs-facing .hs-hand-mana .hs-mana>span{display:none}
  .hs-facing .hs-equipment:has(img){position:absolute;left:50%;top:40px;transform:translateX(-50%);width:auto;flex-direction:row;gap:3px;z-index:2}
  .hs-facing .hs-equipment:has(img)>img{height:14px;width:14px}
  .hs-facing .hs-equipment:has(img)>span{font-size:7px}
  .hs-facing .hs-bastion:has(.hs-equipment img) .hs-command-supply{justify-content:flex-start;gap:4px}
  .hs-facing .hs-bastion:has(.hs-equipment img) .hs-command-supply>small{display:none}
  .hs-facing .hs-court-field{grid-column:1;grid-row:2;min-height:0;padding:0 5px 7px}
  .hs-facing .hs-court-heading{min-height:26px}
  .hs-facing .hs-court-heading>.hs-eyebrow{font-size:5px;letter-spacing:.4px}
  .hs-facing .hs-arena{grid-template-rows:minmax(0,1fr) 20px minmax(0,1fr)}
  .hs-facing .hs-board-row{padding:14px 2px 5px}
  .hs-facing .hs-court-controls{position:static;padding:0;gap:6px}
  .hs-facing .hs-status{font-size:8px;line-height:1.35}
  .hs-facing .hs-end-turn{min-width:104px;min-height:36px;padding:7px;font-size:9px}
  .hs-facing .hs-history .hs-link{font-size:8px}
  .hs-facing .hs-history>ol{right:-80px;width:calc(100vw - 30px)}
  .hs-facing .hs-hand-dock{position:relative;height:auto;--hand-card-width:128px;--hand-card-height:224px;--hand-visible:224px;--hand-art-height:96px;padding:0 2px;background:none;border:0}
  .hs-facing .hs-hand-bar{height:26px;gap:5px;padding:0}
  .hs-facing .hs-hand-bar>small{display:none}
  .hs-facing .hs-hand-bar>span{font-size:8px}
  .hs-facing .hs-hand{height:232px;padding-left:5px;overflow-x:auto;overflow-y:clip;justify-content:flex-start}
}
/* Diagonal hands leave the full playmat available to the opposing commanders. */
#app.duel-view:has(.hs-diagonal){height:100dvh;min-height:1040px;grid-template-rows:52px minmax(0,1fr);overflow:visible}
body:has(.hs-diagonal){overflow:auto}
.hs-diagonal.hs-battle{--rival-card-width:144px;--rival-card-height:244px;display:grid;height:100%;min-height:0;min-width:0;max-width:1800px;padding:0 16px 12px;grid-template-columns:minmax(0,1fr);grid-template-rows:32px minmax(0,1fr) 48px;gap:7px}
.hs-diagonal .hs-court-table{position:relative;grid-template-columns:minmax(0,1fr);grid-template-rows:278px minmax(270px,1fr) 268px;padding:10px;gap:8px;background:linear-gradient(0deg,#142732e8,#403d37d9),url('assets/escenarios/exterior-ruinas.png') center/cover;box-shadow:0 12px 35px #0006,inset 0 0 0 3px #111c20,inset 0 0 0 4px #be9c5d40}
.hs-diagonal .hs-court-field{grid-column:1;grid-row:2;padding:0 12px 7px;border:0;background:none;box-shadow:none}
.hs-diagonal .hs-court-heading{min-height:24px;justify-content:center;border-color:#b9a17033}
.hs-diagonal .hs-court-heading>.hs-eyebrow{font-size:9px;letter-spacing:2px}
.hs-diagonal .hs-arena{grid-template-rows:minmax(0,1fr) 24px minmax(0,1fr)}
.hs-diagonal .hs-board-row{padding:18px 7px 8px}
.hs-diagonal .hs-row-label{font-size:10px;letter-spacing:2px}
.hs-diagonal .hs-row-label b{font-size:9px}
.hs-diagonal .hs-unit{width:min(clamp(62px,7vw,116px),66cqh);height:auto}
.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{width:min(clamp(45px,5.5vw,96px),66cqh);height:auto}
.hs-diagonal .hs-bastion{width:min(470px,calc(50% + 58px));height:138px;display:grid;grid-template-columns:142px minmax(0,1fr) 116px;grid-template-rows:32px minmax(0,1fr);padding:8px 0;gap:5px 10px;border:0;background:none;box-shadow:none;justify-self:start;align-self:center;position:relative;border-radius:0}
.hs-diagonal .hs-bastion-player{grid-row:3;left:calc(50% - min(470px,50% + 58px) + 58px);align-self:start;margin-top:34px}
.hs-diagonal .hs-bastion-enemy{grid-row:1;left:calc(50% - 58px);grid-template-columns:116px minmax(0,1fr) 142px}
.hs-diagonal .hs-bastion>header{grid-column:1/3;grid-row:1;text-align:center;align-self:center}
.hs-diagonal .hs-bastion-enemy>header{grid-column:2/4}
.hs-diagonal .hs-bastion>header .hs-eyebrow{display:none}
.hs-diagonal .hs-bastion>header h2{font-size:22px;margin:0;color:#f3e4c4}
.hs-diagonal .hs-bastion>header .hs-bastion-general{font-size:10px;margin-top:3px}
.hs-diagonal .hs-hero-area{display:contents}
.hs-diagonal .hs-hero{grid-column:3;grid-row:1/-1;width:100px;height:116px;border-width:3px;border-radius:24px 24px 9px 9px;justify-self:center;align-self:center;box-shadow:0 6px 16px #0009,0 0 0 2px #baa47155}
.hs-diagonal .hs-bastion-enemy .hs-hero{grid-column:1}
.hs-diagonal .hs-hero .hs-general-portrait{border-radius:20px 20px 6px 6px}
.hs-diagonal .hs-hero .hs-hp{height:39px;width:39px;min-width:39px;font-size:29px;right:-9px;bottom:-6px;border-width:2px}
.hs-diagonal .hs-hero .hs-atk{height:33px;width:33px;min-width:33px;font-size:24px;left:-10px;bottom:-6px;border-width:2px}
.hs-diagonal .hs-armor{font-size:14px;padding:4px;right:-15px;top:0}
.hs-diagonal .hs-power{grid-column:2;grid-row:2;justify-self:center;width:100%;min-height:77px;grid-template-columns:28px minmax(0,1fr);padding:9px 7px;gap:4px 7px;background:#17282dde!important;border-color:#bca56c66}
.hs-diagonal .hs-power-symbol{width:28px;height:30px}
.hs-diagonal .hs-power b{font-size:13px}
.hs-diagonal .hs-power small{font-size:10px;line-height:1.35;-webkit-line-clamp:3}
#app.duel-view .hs-diagonal .hs-power .hs-cost{left:5px;bottom:8px;width:30px;height:23px;font-size:13px}
.hs-diagonal .hs-command-supply{grid-column:1;grid-row:2;gap:5px;align-self:center}
.hs-diagonal .hs-bastion-enemy .hs-command-supply{grid-column:3}
.hs-diagonal .hs-command-supply>small{font-size:10px}
.hs-diagonal .hs-hand-mana{width:142px;grid-template-columns:23px auto;grid-template-rows:15px 47px;gap:2px 5px;padding:5px 7px;border-color:#c8b37a77;background:#273c30e6}
.hs-diagonal .hs-mana-rival{background:#49312de6}
.hs-diagonal .hs-hand-mana>small{font-size:9px;letter-spacing:1px}
.hs-diagonal .hs-hand-mana>.hs-supply-icon{height:27px;width:23px}
.hs-diagonal .hs-hand-mana .hs-mana{gap:6px}
.hs-diagonal .hs-hand-mana .hs-mana>b{font-size:40px}
.hs-diagonal .hs-hand-mana .hs-mana>b small{font-size:21px}
.hs-diagonal .hs-hand-mana .hs-mana>span{grid-template-columns:repeat(5,6px);gap:3px}
.hs-diagonal .hs-hand-mana .hs-mana i,.hs-diagonal .hs-hand-mana .hs-mana i .hs-supply-icon{width:6px;height:9px}
.hs-diagonal .hs-equipment:has(img){position:absolute;grid-column:auto;grid-row:auto;left:auto;right:98px;top:93px;width:33px;z-index:2;background:#1a2a31e6;border:1px solid #c7ad7b55;border-radius:5px;padding:3px}
.hs-diagonal .hs-bastion-enemy .hs-equipment:has(img){right:auto;left:98px}
.hs-diagonal .hs-equipment:has(img)>img{width:26px;height:26px}
.hs-diagonal .hs-enemy-hand{position:absolute;left:18px;top:10px;width:calc(50% - 100px);max-width:720px;height:280px;display:block;margin:0;padding:0;z-index:2;pointer-events:none}
.hs-diagonal .hs-enemy-hand>small{position:static;display:block;font-size:10px;letter-spacing:1.4px;color:#ddbea7;margin-bottom:9px}
.hs-enemy-fan{display:flex;align-items:flex-start;justify-content:flex-start;gap:0;height:calc(var(--rival-card-height) + 20px);padding:10px calc(var(--rival-card-width) * .3);margin:0;max-width:none}
.hs-enemy-slot{position:relative;flex:0 1 calc(var(--rival-card-width) * .86);min-width:0}
.hs-diagonal .hs-card-back{--frame:#969c95;--frame-light:#e4e5d8;--frame-dark:#424b49;position:relative;left:50%;display:grid;place-items:center;isolation:isolate;box-sizing:border-box;width:var(--rival-card-width);height:var(--rival-card-height);min-width:0;border:4px solid var(--frame);border-radius:19px 19px 12px 12px;margin:0;background:radial-gradient(ellipse at 50% 45%,#7a3f35bb,transparent 68%),repeating-linear-gradient(45deg,#d4b3710b 0 1px,transparent 1px 9px),repeating-linear-gradient(-45deg,#d4b3710b 0 1px,transparent 1px 9px),linear-gradient(135deg,#343937,#4d292e 55%,#1c272c);box-shadow:0 4px 0 var(--frame-dark),0 9px 17px #0006,inset 0 0 0 2px var(--frame-light),inset 0 0 0 5px var(--frame-dark),inset 0 0 20px #0008;transform:translateX(-50%) translateY(var(--back-rise)) rotate(var(--back-tilt));transition:transform .35s}
.hs-diagonal .hs-card-back:before{content:'';position:absolute;inset:9px;border:1px solid #c7a66f99;border-radius:10px 10px 5px 5px;pointer-events:none}
.hs-diagonal .hs-card-back:after{content:'';position:absolute;inset:20px;border:1px solid #c7a66f33;border-radius:50% 50% 9px 9px;pointer-events:none;z-index:-1;background:radial-gradient(ellipse,#d5b87822,transparent 65%)}
.hs-diagonal .hs-card-back .hs-faction-emblem{width:calc(var(--rival-card-width) * .58);height:calc(var(--rival-card-height) * .43);filter:drop-shadow(0 4px 6px #0009)}
.hs-diagonal .hs-hand-dock{position:absolute;right:12px;bottom:8px;left:auto;top:auto;width:calc(50% - 100px);max-width:720px;height:280px;--hand-card-width:144px;--hand-card-height:244px;--hand-visible:244px;--hand-art-height:122px;padding:0;grid-row:auto;z-index:20}
.hs-diagonal .hs-hand-dock:before{background:radial-gradient(ellipse at 50% 100%,#ad946224,transparent 70%);border:0;inset:0;pointer-events:none}
.hs-diagonal .hs-hand-bar{height:26px;padding:0 4px;justify-content:flex-end;gap:7px}
.hs-diagonal .hs-hand-bar>small{display:none}
.hs-diagonal .hs-hand-bar>span{justify-content:flex-end;font-size:9px}
.hs-diagonal .hs-hand{height:254px;padding:9px 13px 0;justify-content:flex-end;overflow:visible}
.hs-diagonal .hs-hand-slot{flex:0 1 calc(var(--hand-card-width) * .86)}
.hs-diagonal .hs-hand-slot:hover .hs-hand-lift,.hs-diagonal .hs-hand-slot:focus-within .hs-hand-lift,.hs-diagonal .hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:translateY(-17px) rotate(0deg) scale(1.04)}
#app .hs-diagonal .hs-hand .hs-card-name{font-size:11px;min-height:29px}
#app .hs-diagonal .hs-hand .hs-card-text{font-size:9px;line-height:1.3}
.hs-diagonal .hs-status{font-size:12px}
.hs-diagonal .hs-end-turn{min-width:170px;min-height:42px;font-size:12px}
@media(min-width:1400px) and (min-height:900px){
  #app.duel-view:has(.hs-diagonal){min-height:1140px}
  .hs-diagonal.hs-battle{--rival-card-width:160px;--rival-card-height:252px}
  .hs-diagonal .hs-court-table{grid-template-rows:288px minmax(270px,1fr) 298px}
  .hs-diagonal .hs-enemy-hand{height:288px}
  .hs-diagonal .hs-bastion{height:152px;width:520px;grid-template-columns:154px minmax(0,1fr) 132px}
  .hs-diagonal .hs-bastion-player{left:calc(50% - 520px + 66px)}
  .hs-diagonal .hs-bastion-enemy{left:calc(50% - 66px);grid-template-columns:132px minmax(0,1fr) 154px}
  .hs-diagonal .hs-hero{width:115px;height:134px}
  .hs-diagonal .hs-hand-mana{width:154px}
  .hs-diagonal .hs-hand-dock{height:288px;--hand-card-width:160px;--hand-card-height:252px;--hand-visible:252px;--hand-art-height:122px}
  .hs-diagonal .hs-hand{height:262px}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:13px}
  #app .hs-diagonal .hs-hand .hs-card-text{font-size:10px}
}
@media(max-width:1050px) and (min-width:701px){
  .hs-diagonal.hs-battle{--rival-card-width:128px}
  .hs-diagonal .hs-enemy-fan{padding-inline:calc(var(--rival-card-width) * .5)}
  .hs-diagonal .hs-bastion{width:calc(50% + 46px);grid-template-columns:110px minmax(0,1fr) 92px;gap:5px 6px}
  .hs-diagonal .hs-bastion-player{left:0}
  .hs-diagonal .hs-bastion-enemy{left:calc(50% - 46px);grid-template-columns:92px minmax(0,1fr) 110px}
  .hs-diagonal .hs-hero{width:78px;height:96px}
  .hs-diagonal .hs-hand-mana{width:110px;padding:4px;grid-template-columns:19px auto}
  .hs-diagonal .hs-hand-mana .hs-mana>span{display:none}
  .hs-diagonal .hs-hand-mana .hs-mana>b{font-size:37px}
  .hs-diagonal .hs-hand-mana>small{font-size:8px}
  .hs-diagonal .hs-power{padding:6px 5px;grid-template-columns:20px minmax(0,1fr);gap:3px 4px}
  .hs-diagonal .hs-power-symbol{width:20px;height:24px}
  .hs-diagonal .hs-power b{font-size:11px}
  .hs-diagonal .hs-power small{font-size:9px}
  .hs-diagonal .hs-bastion>header h2{font-size:19px}
  .hs-diagonal .hs-hand-dock{width:calc(50% - 75px);--hand-card-width:128px}
  .hs-diagonal .hs-enemy-hand{width:calc(50% - 75px)}
}
@media(max-width:700px){
  #app.duel-view:has(.hs-diagonal){height:auto;min-height:100dvh;grid-template-rows:52px auto}
  .hs-diagonal.hs-battle{height:auto;display:grid;grid-template-rows:32px auto 48px;padding:0 8px 10px;gap:6px}
  .hs-diagonal .hs-court-table{grid-template-rows:146px 270px 116px 248px;gap:7px;padding:6px}
  .hs-diagonal .hs-bastion{width:100%;left:0;height:110px;grid-template-columns:minmax(0,1fr) 66px minmax(0,1fr);grid-template-rows:52px 43px;gap:4px 5px;padding:4px;align-self:end;margin:0}
  .hs-diagonal .hs-bastion-enemy{grid-template-columns:minmax(0,1fr) 66px minmax(0,1fr);grid-row:1}
  .hs-diagonal .hs-bastion-player{grid-row:3}
  .hs-diagonal .hs-bastion>header,.hs-diagonal .hs-bastion-enemy>header{grid-column:1;grid-row:1;text-align:left}
  .hs-diagonal .hs-bastion>header h2{font-size:14px}
  .hs-diagonal .hs-bastion>header .hs-bastion-general{font-size:8px}
  .hs-diagonal .hs-hero,.hs-diagonal .hs-bastion-enemy .hs-hero{grid-column:2;grid-row:1/-1;width:55px;height:70px;border-radius:15px 15px 6px 6px}
  .hs-diagonal .hs-hero .hs-hp{width:28px;min-width:28px;height:28px;font-size:21px;right:-6px;bottom:-4px}
  .hs-diagonal .hs-hero .hs-atk{width:22px;min-width:22px;height:22px;font-size:15px}
  .hs-diagonal .hs-command-supply,.hs-diagonal .hs-bastion-enemy .hs-command-supply{grid-column:3;grid-row:1/-1;gap:3px}
  .hs-diagonal .hs-command-supply>small{font-size:7px}
  .hs-diagonal .hs-hand-mana{width:100%;grid-template-columns:16px auto;grid-template-rows:12px 34px;padding:3px;gap:1px 3px}
  .hs-diagonal .hs-hand-mana>small{font-size:7px;grid-column:1/-1;grid-row:1}
  .hs-diagonal .hs-hand-mana>.hs-supply-icon{width:16px;height:20px;grid-column:1;grid-row:2}
  .hs-diagonal .hs-hand-mana .hs-mana{grid-column:2;grid-row:2}
  .hs-diagonal .hs-hand-mana .hs-mana>b{font-size:29px}
  .hs-diagonal .hs-hand-mana .hs-mana>b small{font-size:16px}
  .hs-diagonal .hs-hand-mana .hs-mana>span{display:none}
  .hs-diagonal .hs-power{grid-column:1;grid-row:2;padding:4px 4px 4px 29px;display:block;min-height:32px;width:100%}
  .hs-diagonal .hs-power b{font-size:9px}
  .hs-diagonal .hs-power small,.hs-diagonal .hs-power-symbol{display:none}
  #app.duel-view .hs-diagonal .hs-power .hs-cost{left:3px;top:50%;bottom:auto;transform:translateY(-50%);height:19px;width:24px;font-size:10px}
  .hs-diagonal.hs-battle{--rival-card-width:128px;--rival-card-height:212px}
  .hs-diagonal .hs-enemy-fan{padding-inline:calc(var(--rival-card-width) * .5)}
  .hs-diagonal .hs-enemy-hand{top:7px;left:9px;width:calc(100% - 18px);height:248px}
  .hs-diagonal .hs-enemy-hand>small{font-size:9px;margin:0 0 7px;display:block}
  .hs-diagonal .hs-court-field{grid-row:2;padding:0 4px 7px}
  .hs-diagonal .hs-court-heading>.hs-eyebrow{font-size:6px;letter-spacing:1px}
  .hs-diagonal .hs-row-label{font-size:8px}
  .hs-diagonal .hs-unit{width:min(10vw,66cqh)}
  .hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{width:min(6vw,66cqh)}
  .hs-diagonal .hs-hand-dock{grid-column:1;grid-row:4;position:relative;right:auto;bottom:auto;width:100%;max-width:none;height:248px;--hand-card-width:128px;--hand-card-height:212px;--hand-visible:212px;--hand-art-height:92px;padding:0}
  .hs-diagonal .hs-hand-bar{justify-content:flex-end}
  .hs-diagonal .hs-hand{height:222px;padding:9px 7px 0;overflow-x:auto;overflow-y:clip;justify-content:flex-start}
.hs-diagonal .hs-hand-slot:hover .hs-hand-lift,.hs-diagonal .hs-hand-slot:focus-within .hs-hand-lift{transform:none}
  .hs-diagonal .hs-status{font-size:8px}
  .hs-diagonal .hs-end-turn{min-width:105px;font-size:9px}
  .hs-diagonal .hs-equipment:has(img),.hs-diagonal .hs-bastion-enemy .hs-equipment:has(img){left:50%;right:auto;top:81px;transform:translateX(-50%);flex-direction:row;width:53px;padding:1px;gap:2px}
  .hs-diagonal .hs-equipment:has(img)>img{width:16px;height:16px}
}

@media(max-width:700px){
  .hs-diagonal.hs-battle{grid-template-rows:32px 370px 270px 116px 48px 248px}
  .hs-diagonal .hs-court-table{display:contents}
  .hs-diagonal .hs-enemy-hand{position:relative;grid-column:1;grid-row:2;left:0;top:0;width:100%;align-self:start}
  .hs-diagonal .hs-bastion-enemy{grid-column:1;grid-row:2}
  .hs-diagonal .hs-court-field{grid-column:1;grid-row:3;background:linear-gradient(0deg,#142732e8,#403d37d9),url('assets/escenarios/exterior-ruinas.png') center/cover;border:1px solid #bba17650;border-radius:8px}
  .hs-diagonal .hs-bastion-player{grid-column:1;grid-row:4}
  .hs-diagonal .hs-court-controls{grid-column:1;grid-row:5}
  .hs-diagonal .hs-hand-dock{grid-column:1;grid-row:6}
}

/* Readable battle effects: a visible contact, held numbers and a clear return zone. */
.hs-impact{position:fixed;z-index:151;pointer-events:none!important;border-radius:50%;box-sizing:border-box;border:3px solid #ffe1a0;background:radial-gradient(ellipse,#fff5ca99 0%,#ffaf4555 32%,transparent 67%);box-shadow:0 0 18px #ffb95faa,inset 0 0 18px #fff0c777;will-change:transform,opacity}
.hs-impact-heal{border-color:#b8eea7;background:radial-gradient(ellipse,#d6ffd899,#73d28a44 40%,transparent 68%);box-shadow:0 0 20px #8bea9b88}
.hs-impact-summon{border-color:#f5d899;background:radial-gradient(ellipse,#fff4cb99,#ddba6d44 42%,transparent 70%);box-shadow:0 0 25px #efd59199,inset 0 0 20px #efd59166}
.hs-attack-ghost{filter:drop-shadow(0 0 12px #f8ce81bb)}
.hs-combat-number{font-size:44px;text-shadow:0 3px 5px #170907,2px 0 2px #852019,-2px 0 2px #852019;filter:drop-shadow(0 0 7px #24100e)}
.hs-shield,.hs-buff{font-size:19px}
.hs-play-preview>.hs-card{width:164px;min-height:252px}
.hs-play-preview .hs-card-art{height:100px}
.hs-play-preview .hs-card-name{font-size:15px}
.hs-play-preview .hs-card-text{font-size:12px;line-height:1.35}
.hs-play-preview>span{font-size:11px;padding:8px}
.hs-hand.hs-cancel-zone{outline:1px dashed #dac39188;outline-offset:-3px;border-radius:10px;background:#1c20173d}
.hs-hand.hs-cancel-active{outline:2px solid #dfd49d;background:#71613e55;box-shadow:inset 0 0 28px #d8c58d33}
@media(max-width:680px){.hs-combat-number{font-size:34px}.hs-shield,.hs-buff{font-size:15px}.hs-play-preview>.hs-card{width:116px;min-height:202px}.hs-play-preview .hs-card-art{height:65px}.hs-play-preview .hs-card-name{font-size:12px}.hs-play-preview .hs-card-text{font-size:10px}.hs-play-preview>span{font-size:9px;padding:5px}}

/* Inspect deployed units with the same full-art frame as the centered view. */
.hs-unit-peek{--detail-art-height:clamp(80px,calc(100dvh - 430px),350px);position:fixed;z-index:140;width:310px;max-width:calc(100vw - 24px);pointer-events:none!important;padding:18px 14px 14px;border:1px solid #cab47999;border-radius:12px;background:linear-gradient(135deg,#273634f5,#14232bf9);box-shadow:0 12px 32px #0009,0 0 0 3px #16232777;color:#e9dec4;text-align:center}
.hs-unit-peek>small{display:block;font:9px/1.4 Arial,sans-serif;letter-spacing:1px;margin-bottom:22px;color:#d2c298}
.duel-view .hs-unit-peek>.hs-card{margin:0 auto;transform:none!important}
.hs-unit-peek-state{margin-top:15px;font:11px/1.4 Arial,sans-serif;text-align:left}
.hs-unit-peek-state>b{color:#f5dfa4;font-size:12px}
.hs-unit-peek-state p{margin:6px 0 0;color:#cbd8ce}
@media(max-height:650px){.hs-unit-peek-state{font-size:10px;margin-top:15px}}

/* Fit both hands, armies and controls into the current window. */
#app.duel-view:has(.hs-diagonal){height:100dvh;min-height:0;grid-template-columns:minmax(0,1fr);overflow:hidden}
body:has(.hs-diagonal){overflow:hidden}
.hs-diagonal.hs-battle{--rival-card-width:clamp(96px,12dvh,128px);--rival-card-height:clamp(154px,20dvh,210px);--battle-hand-width:clamp(112px,15dvh,160px);--battle-hand-height:clamp(180px,24dvh,244px)}
.hs-diagonal .hs-court-table{grid-template-rows:calc(var(--rival-card-height) + 40px) minmax(0,1fr) calc(var(--battle-hand-height) + 42px);min-height:0}
.hs-diagonal .hs-enemy-hand{height:calc(var(--rival-card-height) + 36px)}
.hs-diagonal .hs-hand-dock{--hand-card-width:var(--battle-hand-width);--hand-card-height:var(--battle-hand-height);--hand-visible:var(--battle-hand-height);--hand-art-height:clamp(70px,11dvh,116px);height:calc(var(--battle-hand-height) + 36px)}
.hs-diagonal .hs-hand{height:calc(var(--battle-hand-height) + 10px)}
@media(min-width:701px) and (max-height:780px){
  .hs-diagonal.hs-battle{--rival-card-width:84px;--rival-card-height:132px;--battle-hand-width:112px;--battle-hand-height:166px}
  .hs-diagonal .hs-bastion{height:112px;grid-template-rows:26px minmax(0,1fr)}
  .hs-diagonal .hs-hero{width:78px;height:92px}
  .hs-diagonal .hs-bastion-player{margin-top:20px}
  .hs-diagonal .hs-bastion>header h2{font-size:18px}
  .hs-diagonal .hs-power{min-height:60px;padding:6px;gap:3px 6px}
  .hs-diagonal .hs-power small{font-size:9px;-webkit-line-clamp:2}
  .hs-diagonal .hs-hand-mana .hs-mana>b{font-size:34px}
  .hs-diagonal .hs-board-row{padding:9px 7px 7px}
  .hs-diagonal .hs-court-heading{min-height:19px}
  .hs-diagonal .hs-arena{grid-template-rows:minmax(0,1fr) 12px minmax(0,1fr)}
  .hs-diagonal .hs-hand-dock{--hand-art-height:58px}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:10px;min-height:25px;margin-top:4px}
  #app .hs-diagonal .hs-hand .hs-card-text{font-size:8px;padding-top:3px}
}
@media(max-width:700px){
  #app.duel-view:has(.hs-diagonal){grid-template-rows:48px minmax(0,1fr)}
  .hs-diagonal.hs-battle{--rival-card-width:78px;--rival-card-height:128px;--battle-hand-width:100px;--battle-hand-height:154px;height:100%;grid-template-rows:28px 238px minmax(0,1fr) 84px 38px 182px;gap:4px;padding:0 8px 6px}
  .hs-diagonal .hs-enemy-hand{height:160px;width:100%;top:0}
  .hs-diagonal .hs-enemy-hand>small{font-size:8px;margin-bottom:4px}
  .hs-diagonal .hs-enemy-fan{padding-block:6px}
  .hs-diagonal .hs-card-back{border-width:3px;border-radius:12px 12px 7px 7px}
  .hs-diagonal .hs-bastion{height:78px;grid-template-rows:34px 34px;padding:1px 4px;gap:3px 5px;margin:0}
  .hs-diagonal .hs-hero,.hs-diagonal .hs-bastion-enemy .hs-hero{width:48px;height:60px}
  .hs-diagonal .hs-hero .hs-hp{height:24px;min-width:24px;width:24px;font-size:17px}
  .hs-diagonal .hs-bastion>header h2{font-size:12px}
  .hs-diagonal .hs-hand-mana{grid-template-rows:11px 28px}
  .hs-diagonal .hs-hand-mana .hs-mana>b{font-size:25px}
  .hs-diagonal .hs-court-field{min-height:0;padding:0 4px 4px}
  .hs-diagonal .hs-court-heading{min-height:15px;padding:3px}
  .hs-diagonal .hs-arena{grid-template-rows:minmax(0,1fr) 10px minmax(0,1fr)}
  .hs-diagonal .hs-board-row{padding:7px 4px 6px}
  .hs-diagonal .hs-row-label{font-size:7px;top:2px}
  .hs-diagonal .hs-hand-dock{height:182px;--hand-art-height:58px}
  .hs-diagonal .hs-hand-bar{height:20px}
  .hs-diagonal .hs-hand{height:162px;padding-top:4px}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:9px;min-height:23px;margin-top:4px}
  #app .hs-diagonal .hs-hand .hs-card-text{font-size:8px;padding-top:3px}
  .hs-diagonal .hs-hand-inspect{top:45px}
  .hs-diagonal .hs-court-controls{min-height:0;gap:5px}
  .hs-diagonal .hs-end-turn{min-height:32px;padding:6px 8px}
}

/* A readable reveal at the side of the battlefield, separate from the hand. */
.hs-play-preview.hs-rival-reveal{left:24px;top:clamp(80px,25dvh,260px);padding:14px 16px 20px;background:linear-gradient(145deg,#243735f5,#101c24f5);border:1px solid #c2a77499;border-radius:16px;box-shadow:0 16px 40px #0008,0 0 35px #c9b47722;transform-origin:50% 50%;filter:none;max-width:calc(100vw - 32px)}
.hs-rival-reveal>.hs-reveal-heading{margin:0 0 17px;padding:0;border:0;background:none;color:#f3dab0;font-size:11px;letter-spacing:1.7px}
.hs-reveal-heading small{display:block;color:#c0cbc6;font-size:10px;letter-spacing:.4px;margin-top:6px}
.hs-rival-reveal>.hs-card{width:200px;min-height:310px;pointer-events:none}
.hs-rival-reveal .hs-card-art{height:118px}
.hs-rival-reveal .hs-card-name{font-size:17px;line-height:1.15}
.hs-rival-reveal .hs-card-text{font-size:13px;line-height:1.5;max-height:none;overflow:visible;-webkit-line-clamp:unset}
@media(max-width:700px){
  .hs-play-preview.hs-rival-reveal{left:10px;top:clamp(58px,20dvh,170px);padding:10px 12px 16px;border-radius:12px}
  .hs-rival-reveal>.hs-reveal-heading{font-size:9px;margin-bottom:13px;letter-spacing:1px}
  .hs-reveal-heading small{font-size:9px}
  .hs-rival-reveal>.hs-card{width:144px;min-height:248px}
  .hs-rival-reveal .hs-card-art{height:78px}
  .hs-rival-reveal .hs-card-name{font-size:13px}
  .hs-rival-reveal .hs-card-text{font-size:11px;line-height:1.4}
}
@media(max-height:650px) and (min-width:701px){
  .hs-play-preview.hs-rival-reveal{top:64px}
  .hs-rival-reveal>.hs-card{width:174px;min-height:268px}
  .hs-rival-reveal .hs-card-art{height:86px}
}

/* The armies own the centre; duel actions share their existing dividing line. */
.hs-diagonal.hs-battle{grid-template-rows:minmax(0,1fr) 48px}
.hs-diagonal .hs-court-table{grid-template-rows:calc(var(--rival-card-height) + 30px) minmax(0,1fr) calc(var(--battle-hand-height) + 26px)}
.hs-diagonal .hs-court-field{padding:0 12px 0}
.hs-diagonal .hs-arena{padding:0;grid-template-rows:minmax(0,1fr) 32px minmax(0,1fr)}
.hs-diagonal .hs-board-row{padding:8px 7px 8px}
.hs-diagonal .hs-units{--unit-gap:12px;gap:var(--unit-gap)}
.hs-diagonal .hs-unit{width:min(clamp(78px,8.5vw,140px),66cqh,calc((100cqw - (var(--unit-count) - 1) * var(--unit-gap)) / var(--unit-count)));height:auto}
.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-units{--unit-gap:4px}
.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{width:min(clamp(70px,8vw,132px),66cqh,calc((100cqw - (var(--unit-count) - 1) * 4px - (var(--unit-count) + 1) * 25px) / var(--unit-count)))}
.hs-diagonal .hs-unit-name{font-size:11px;max-height:32px;padding:4px 2px;bottom:24px}
.hs-diagonal .hs-field-toolbar{position:relative;gap:12px;padding:0 90px}
.hs-diagonal .hs-field-toolbar .hs-turn-indicator{flex-shrink:0;min-height:28px;padding:4px 13px}
.hs-diagonal .hs-concede{position:absolute;right:4px;top:50%;transform:translateY(-50%);padding:7px 10px;border:1px solid #bca56c44;border-radius:5px;background:#14232ad9;font-size:10px}
.hs-diagonal .hs-concede:hover{background:#49312de6;border-color:#d7a89999}
@media(min-width:701px) and (max-height:780px){
  .hs-diagonal.hs-battle{--rival-card-width:70px;--rival-card-height:110px;--battle-hand-width:100px;--battle-hand-height:150px}
  .hs-diagonal .hs-hand-dock{--hand-art-height:48px}
  .hs-diagonal .hs-unit-name{font-size:9px;max-height:24px;bottom:18px}
}
@media(max-width:700px){
  .hs-duel-menu{white-space:nowrap}
  .hs-duel-menu span{display:inline;font-size:9px}
  #app:has(.hs-diagonal) .hs-header{gap:8px;padding-inline:8px}
  #app:has(.hs-diagonal) .hs-header .hs-wordmark{font-size:10px;letter-spacing:1px;white-space:nowrap}
  #app:has(.hs-diagonal) .hs-header .hs-wordmark i{font-size:6px}
  .hs-diagonal.hs-battle{grid-template-rows:238px minmax(0,1fr) 84px 38px 182px}
  .hs-diagonal .hs-enemy-hand,.hs-diagonal .hs-bastion-enemy{grid-row:1}
  .hs-diagonal .hs-court-field{grid-row:2;padding:0 4px 0}
  .hs-diagonal .hs-bastion-player{grid-row:3}
  .hs-diagonal .hs-court-controls{grid-row:4}
  .hs-diagonal .hs-hand-dock{grid-row:5}
  .hs-diagonal .hs-arena{grid-template-rows:minmax(0,1fr) 28px minmax(0,1fr)}
  .hs-diagonal .hs-board-row{padding:7px 4px 7px}
  .hs-diagonal .hs-units{--unit-gap:5px}
  .hs-diagonal .hs-unit{width:min(16vw,66cqh,calc((100cqw - (var(--unit-count) - 1) * 5px) / var(--unit-count)))}
  .hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{width:min(16vw,66cqh,calc((100cqw - (var(--unit-count) - 1) * 4px - (var(--unit-count) + 1) * 12px) / var(--unit-count)))}
  .hs-diagonal .hs-unit-name{font-size:8px;max-height:23px;padding:2px 1px;bottom:15px}
  .hs-diagonal .hs-field-toolbar{gap:4px;padding:0 60px 0 4px}
  .hs-diagonal .hs-field-toolbar .hs-turn-indicator{gap:5px;padding:3px 7px;min-height:24px}
  .hs-diagonal .hs-concede{font-size:8px;padding:6px 5px;right:2px}
}
/* Share the card footprint; reclaim spacing before reducing the hand's width. */
#app.duel-view:has(.hs-diagonal){grid-template-rows:48px minmax(0,1fr)}
#app:has(.hs-diagonal) .hs-header{height:48px}
.hs-diagonal.hs-battle{--duel-card-width:clamp(112px,15dvh,160px);--duel-card-height:clamp(116px,calc((100dvh - 220px) / 4),244px);--battle-hand-width:var(--duel-card-width);--battle-hand-height:var(--duel-card-height);--rival-card-width:var(--duel-card-width);--rival-card-height:var(--duel-card-height);grid-template-rows:minmax(0,1fr) 40px;padding:0 12px 6px;gap:4px}
.hs-diagonal .hs-court-table{padding:6px;gap:4px;grid-template-rows:calc(var(--duel-card-height) + 18px) minmax(0,1fr) calc(var(--duel-card-height) + 10px)}
.hs-diagonal .hs-court-field{padding:0 4px}
.hs-diagonal .hs-arena{grid-template-rows:minmax(0,1fr) 28px minmax(0,1fr)}
.hs-diagonal .hs-board-row{padding:14px 4px 6px}
.hs-diagonal .hs-row-label{top:1px}
.hs-diagonal .hs-enemy-row .hs-row-label{left:auto;right:4px}
.hs-diagonal .hs-units{--unit-gap:8px}
.hs-diagonal .hs-units{--unit-card-width:min(var(--duel-card-width),calc((100cqw - (var(--unit-count) - 1) * var(--unit-gap)) / var(--unit-count)))}
.hs-diagonal .hs-unit,.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{width:var(--unit-card-width);height:calc(var(--unit-card-width) * (var(--duel-card-height) / var(--duel-card-width)));aspect-ratio:auto;max-height:none}
.hs-diagonal .hs-unit-name{font-size:clamp(7px,calc(var(--unit-card-width) * .08),12px)}
.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-units{--unit-gap:8px;gap:var(--unit-gap)}
.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-insert{position:absolute;left:calc(50% + (var(--insert-index) - var(--unit-count) / 2) * (var(--unit-card-width) + var(--unit-gap)));top:50%;transform:translate(-50%,-50%);width:16px;min-width:16px;height:34px;z-index:3}
.hs-diagonal .hs-drop-slot{width:var(--duel-card-width);height:var(--duel-card-height)}
.hs-diagonal .hs-enemy-hand{top:6px;height:calc(var(--duel-card-height) + 26px)}
.hs-diagonal .hs-enemy-hand>small{font-size:9px;line-height:13px;margin-bottom:4px}
.hs-diagonal .hs-enemy-fan{padding-block:4px}
.hs-diagonal .hs-bastion-player{margin-top:8px}
.hs-diagonal .hs-hand-dock{height:calc(var(--duel-card-height) + 30px);bottom:4px;--hand-art-height:clamp(48px,calc(var(--duel-card-height) * .4),98px)}
.hs-diagonal .hs-hand-bar{height:18px}
.hs-diagonal .hs-hand{height:calc(var(--duel-card-height) + 12px);padding-top:6px}
#app .hs-diagonal .hs-hand .hs-card{height:var(--duel-card-height);min-height:var(--duel-card-height);padding:7px 7px 18px}
#app .hs-diagonal .hs-hand .hs-card-name{font-size:11px;min-height:25px;margin-top:3px}
#app .hs-diagonal .hs-hand .hs-card-type{font-size:7px;margin-block:3px}
#app .hs-diagonal .hs-hand .hs-card-text{font-size:9px;line-height:1.25;padding:2px 1px 0;min-height:0}
.hs-diagonal .hs-court-controls{min-height:0}
.hs-diagonal .hs-end-turn{min-height:36px;padding:8px 12px}
@media(min-width:701px) and (max-height:780px){
  .hs-diagonal.hs-battle{--duel-card-width:100px}
  .hs-diagonal .hs-bastion{height:100px;grid-template-rows:20px minmax(0,1fr);padding-block:3px}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:9px;min-height:22px}
  #app .hs-diagonal .hs-hand .hs-card-type{display:none}
  .hs-diagonal .hs-hand-dock{--hand-art-height:clamp(35px,calc(var(--duel-card-height) * .28),48px)}
  #app .hs-diagonal .hs-hand .hs-card-text{font-size:8px}
}
@media(max-width:700px){
  .hs-diagonal.hs-battle{--duel-card-width:100px;--duel-card-height:clamp(48px,calc((100dvh - 382px) / 4),154px);grid-template-rows:calc(var(--duel-card-height) + 116px) minmax(0,1fr) 78px 38px calc(var(--duel-card-height) + 26px);padding:0 8px 6px}
  .hs-diagonal .hs-enemy-hand{top:0;height:calc(var(--duel-card-height) + 26px)}
  .hs-diagonal .hs-court-field{padding:0 4px}
  .hs-diagonal .hs-board-row{padding:6px 4px}
  .hs-diagonal .hs-enemy-row .hs-row-label{left:4px;right:auto}
  .hs-diagonal .hs-hand-dock{height:calc(var(--duel-card-height) + 26px);bottom:auto;--hand-art-height:clamp(24px,calc(var(--duel-card-height) * .25),39px)}
  .hs-diagonal .hs-hand{height:calc(var(--duel-card-height) + 8px);padding-top:4px}
  .hs-diagonal .hs-hand-slot{flex:0 0 calc(var(--duel-card-width) * .86)}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:9px;min-height:22px;margin-top:2px}
  #app .hs-diagonal .hs-hand .hs-card-type{display:none}
  #app .hs-diagonal .hs-hand .hs-card-text{font-size:8px}
  .hs-diagonal .hs-end-turn{padding:6px 8px;min-height:32px}
}
@media(max-width:700px) and (max-height:740px){
  .hs-diagonal.hs-battle{--duel-card-width:min(100px,calc(var(--duel-card-height) * .8))}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:8px;min-height:19px}
}

/* Keep hand cards readable, including cards that cannot currently be played. */
#app .hs-diagonal .hs-hand .hs-card{padding:5px 5px 16px;opacity:1;filter:none;background-color:#eadcc0}
#app .hs-diagonal .hs-hand .hs-card:disabled{opacity:1;filter:none;cursor:not-allowed}
#app .hs-diagonal .hs-hand .hs-card:disabled .hs-cost{background:linear-gradient(135deg,#72544b,#47372f);border-color:#d2b597}
.hs-diagonal .hs-hand-dock{--hand-art-height:clamp(32px,calc(var(--duel-card-height) * .34),82px)}
#app .hs-diagonal .hs-hand .hs-card-name{font-size:12px;line-height:1.15;min-height:30px;padding:3px 2px;margin-top:2px}
#app .hs-diagonal .hs-hand .hs-card-type{display:none}
#app .hs-diagonal .hs-hand .hs-card-text{font-size:11px;line-height:1.3;color:#211b16;background:#f4e7cb;padding:3px 2px 0;border:0;overflow:hidden}
@media(min-width:701px) and (max-height:780px){
  .hs-diagonal.hs-battle{--duel-card-width:112px}
  .hs-diagonal .hs-hand-dock{--hand-art-height:30px}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:11px;min-height:26px}
  #app .hs-diagonal .hs-hand .hs-card-text{line-height:1.2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
}
@media(max-width:700px){
  .hs-diagonal .hs-hand-dock{--hand-art-height:24px}
  #app .hs-diagonal .hs-hand .hs-card-name{font-size:11px;min-height:26px}
  #app .hs-diagonal .hs-hand .hs-card-text{line-height:1.2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
}

/* Keep portrait proportions; duel controls now occupy the header. */
.hs-diagonal.hs-battle{--duel-card-height:clamp(64px,calc((100dvh - 200px) / 4),240px);--duel-card-width:calc(var(--duel-card-height) * 2 / 3)}
.hs-diagonal .hs-court-table{grid-template-rows:calc(var(--duel-card-height) + 8px) minmax(0,1fr) calc(var(--duel-card-height) + 8px)}
.hs-diagonal .hs-arena{grid-template-rows:minmax(0,1fr) 4px minmax(0,1fr)}
.hs-diagonal .hs-field-divider{height:4px;margin:0;padding:0;gap:0}
.hs-diagonal .hs-enemy-row{padding:14px 4px 2px}
.hs-diagonal .hs-friendly-row{padding:2px 4px 24px}
.hs-diagonal .hs-friendly-row .hs-row-label{top:auto;bottom:1px}
.hs-diagonal .hs-unit,.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{height:calc(var(--unit-card-width) * 1.5);aspect-ratio:2/3}
.hs-diagonal .hs-hand-dock{--hand-art-height:clamp(30px,calc(var(--duel-card-height) * .34),82px)}
#app:has(.hs-diagonal) .hs-header{gap:14px;padding-inline:18px}
.hs-header-duel-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.hs-header-duel-controls .hs-turn-indicator{padding:5px 9px;gap:7px;letter-spacing:.7px;min-height:28px;white-space:nowrap}
.hs-header-duel-controls .hs-turn-indicator small{padding-right:7px;font-size:8px;letter-spacing:.7px}
.hs-header-duel-controls .hs-turn-indicator strong{font-size:9px}
.hs-header-duel-controls .hs-concede{position:static;transform:none;padding:6px 8px;border:1px solid #bca56c44;border-radius:5px;background:#14232ad9;font-size:10px}
.hs-header-duel-controls .hs-concede:hover:not(:disabled){background:#49312de6;border-color:#d7a89999}
@media(min-width:701px) and (max-width:1100px){
  #app:has(.hs-diagonal) .hs-header .hs-wordmark{font-size:14px;letter-spacing:1px}
  #app:has(.hs-diagonal) .hs-header-tools{gap:8px}
  #app:has(.hs-diagonal) .hs-header .hs-help span{display:none}
}
@media(min-width:701px) and (max-width:850px){
  #app:has(.hs-diagonal) .hs-header .hs-wordmark{display:none}
}
@media(max-width:700px){
  #app.duel-view:has(.hs-diagonal){grid-template-rows:76px minmax(0,1fr)}
  #app:has(.hs-diagonal) .hs-header{height:76px;display:grid;grid-template-columns:1fr auto;grid-template-rows:28px 40px;gap:0 8px;padding:4px 8px}
  #app:has(.hs-diagonal) .hs-header-tools{grid-column:1/-1;justify-content:flex-end;gap:6px;min-width:0}
  #app:has(.hs-diagonal) .hs-header .hs-wallet{padding:4px 6px;font-size:10px}
  #app:has(.hs-diagonal) .hs-header .hs-help{padding:4px 0}
  #app:has(.hs-diagonal) .hs-header .hs-help span{display:none}
  .hs-header-duel-controls{margin-right:auto;gap:5px}
  .hs-header-duel-controls .hs-turn-indicator{padding:4px 6px;gap:5px;min-height:26px}
  .hs-header-duel-controls .hs-turn-indicator small{font-size:7px;padding-right:5px}
  .hs-header-duel-controls .hs-turn-indicator strong{font-size:8px}
  .hs-header-duel-controls .hs-concede{font-size:9px;padding:5px 6px}
  .hs-diagonal.hs-battle{--duel-card-height:clamp(60px,calc((100dvh - 356px) / 4),150px);--duel-card-width:calc(var(--duel-card-height) * 2 / 3);grid-template-rows:calc(var(--duel-card-height) + 116px) minmax(0,1fr) 78px 38px calc(var(--duel-card-height) + 26px)}
  .hs-diagonal .hs-unit,.hs-diagonal .hs-friendly-row:has(.hs-insert) .hs-unit{--unit-card-width:min(var(--duel-card-width),calc((100cqh - 22px) * 2 / 3),calc((100cqw - (var(--unit-count) - 1) * var(--unit-gap)) / var(--unit-count)))}
  .hs-diagonal .hs-hand-dock{--hand-art-height:40px}
}
@media(max-width:700px) and (max-height:740px){
  .hs-diagonal .hs-hand-dock{--hand-art-height:16px}
  #app .hs-diagonal .hs-hand .hs-card{padding:4px 4px 12px}
  #app .hs-diagonal .hs-hand .hs-card-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:10px;line-height:1.1;min-height:28px;max-height:28px}
  #app .hs-diagonal .hs-hand .hs-card-text{display:none}
}

/* Reserve room for the supply icon and number inside general-power badges. */
#app.duel-view :is(.hs-power,.hs-power-description) .hs-cost{box-sizing:border-box;flex-shrink:0;line-height:1;white-space:nowrap}
#app.duel-view .hs-power-description .hs-cost{width:48px;height:34px;gap:4px;font-size:18px;padding:3px 5px}
#app.duel-view .hs-power-description .hs-cost .hs-supply-icon{width:16px;height:18px}
.hs-diagonal .hs-power{grid-template-columns:34px minmax(0,1fr);column-gap:7px}
.hs-diagonal .hs-power-symbol{width:26px;height:26px;justify-self:center}
#app.duel-view .hs-diagonal .hs-power .hs-cost{left:7px;bottom:7px;width:30px;height:20px;gap:2px;padding:1px 3px;font-size:12px}
#app.duel-view .hs-diagonal .hs-power .hs-cost .hs-supply-icon{width:10px;height:12px}
@media(min-width:701px) and (max-height:780px){
  .hs-diagonal .hs-power-symbol{width:22px;height:22px}
}
@media(max-width:700px){
  .hs-diagonal .hs-power{padding:4px 6px 4px 36px}
  #app.duel-view .hs-diagonal .hs-power .hs-cost{left:4px;top:50%;bottom:auto;transform:translateY(-50%);width:28px;height:20px;font-size:11px}
}

.hs-lobby{padding-top:28px;padding-bottom:32px;min-height:calc(100dvh - 123px)}
.hs-lobby-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}
.hs-lobby .hs-lobby-title{margin:0}
.hs-lobby .hs-lobby-title h1{font-size:clamp(36px,4vw,52px);margin:8px 0 10px;line-height:1.1}
.hs-lobby .hs-lobby-title p{margin:0}
.hs-victory-count{display:grid;grid-template-columns:26px auto;align-items:center;column-gap:14px;padding:12px 24px;border-left:1px solid #c5a96b55;color:#e7cc8e}
.hs-victory-count>span{grid-row:1/3;font-size:26px;color:#ba9958}
.hs-victory-count strong{font-family:Georgia,serif;font-size:38px;line-height:1}
.hs-victory-count small{font-size:9px;letter-spacing:2px;margin-top:7px}
.hs-lobby .hs-lobby-layout{grid-template-columns:220px minmax(0,1fr);gap:26px}
.hs-lobby-main{display:grid;gap:18px;min-width:0}
.hs-lobby .hs-houses{margin-top:14px}
.hs-lobby .hs-house-detail{grid-template-columns:35% minmax(0,1fr);margin:0;min-height:300px}
.hs-lobby .hs-champion-art{min-height:300px}
.hs-lobby .hs-champion-copy{padding:24px 28px;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.hs-lobby .hs-champion-copy h2{font-size:34px;line-height:1.15;margin:10px 0 18px}
.hs-lobby .hs-power-description{width:100%;padding:15px 0;align-items:center}
.hs-lobby .hs-power-description b{font-size:18px}
.hs-lobby-deck{margin-top:auto;padding-top:17px;width:100%}
.hs-lobby .hs-deck-caption{margin:0 0 7px;display:block}
.hs-lobby .hs-lobby-deck .hs-link{margin:0;padding:5px 0}
.hs-lobby .hs-match-setup{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.85fr);grid-column:auto;gap:24px;align-items:center;margin:0;padding:18px 24px;border:1px solid #bca56c33;border-radius:8px;background:#10191de0}
.hs-lobby .hs-rival-choice{min-width:0}
.hs-lobby .hs-rival-choice label{display:block;margin:0 0 10px;font-size:10px}
.hs-lobby .hs-rival-choice select{padding:10px 12px;font-size:14px}
.hs-lobby .hs-rival-general{margin:7px 0 0;font-size:11px}
.hs-match-actions{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0}
.hs-match-actions>.hs-primary{width:100%;padding:14px 16px;font-size:14px}
.hs-match-actions>.hs-link{padding:2px 0;font-size:11px}
.hs-lobby .hs-win-gold{margin:0;text-align:center;font-size:10px}
.hs-lobby-record{display:flex;align-items:center;flex-shrink:0}
.hs-lobby-record-block{flex-shrink:0}
.hs-lobby-record .hs-victory-count{padding:10px 20px;grid-template-columns:24px auto;column-gap:12px}
.hs-lobby-record .hs-victory-count strong{font-size:34px;font-variant-numeric:tabular-nums}
.hs-lobby-record .hs-victory-count small{font-size:9px;letter-spacing:1.2px;color:#b7bdac;white-space:nowrap}
.hs-lobby-record .hs-house-victories{color:var(--house)}
.hs-house-victories>span .hs-faction-emblem{display:block;width:25px;height:25px}
.hs-house-victories>span img{width:100%;height:100%;object-fit:contain}
.hs-lobby .hs-match-setup{position:relative;grid-template-columns:minmax(0,1fr) minmax(220px,.85fr);gap:28px;padding:24px 28px;border-color:#bca56c4d;border-radius:12px;background:radial-gradient(ellipse at 0 100%,color-mix(in srgb,var(--rival) 12%,transparent),transparent 65%),linear-gradient(125deg,#1b2a2a,#121d23);box-shadow:0 10px 25px #0002,inset 0 1px #d8c18a12}
.hs-lobby .hs-rival-choice{display:grid;grid-template-columns:82px minmax(0,1fr);gap:20px;align-items:center}
.hs-rival-portrait{position:relative;width:82px;height:112px;border:1px solid color-mix(in srgb,var(--rival) 55%,#bfa677);border-radius:40px 40px 7px 7px;box-shadow:0 4px 14px #0005;isolation:isolate}
.hs-rival-portrait>.hs-general-portrait{overflow:hidden;border-radius:inherit}
.hs-rival-portrait>.hs-seal{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:27px;height:27px;z-index:1;font-size:16px}
.hs-rival-random{display:grid;place-items:center;background:radial-gradient(ellipse at center,#bfa67726,#101a20 75%);color:#e8cc8c}
.hs-rival-random>span{font:64px Georgia,serif;text-shadow:0 2px 8px #0008}

/* Ability medallions: presentation only; availability and targets come from the engine. */
#app.duel-view .hs-power{position:relative;isolation:isolate;overflow:visible;grid-template-columns:52px minmax(0,1fr);gap:4px 10px;padding:12px 32px 12px 10px;min-height:88px;border:1px solid #b99c6680;border-radius:12px;background:linear-gradient(135deg,#394952,#13242d 65%,#0d1c22)!important;box-shadow:inset 0 1px #ffe9b930,0 4px 12px #0004;color:#eee0bb;text-align:left;touch-action:none}
#app.duel-view .hs-power-symbol{display:grid;grid-row:1/3;align-self:center;justify-self:center;box-sizing:border-box;width:49px;height:49px;border:2px solid #d7b56e;border-radius:50%;background:radial-gradient(circle at 35% 25%,color-mix(in srgb,var(--house) 28%,#29323b),#111d24 75%);box-shadow:inset 0 0 0 3px #111b20,0 2px 7px #0008;color:#ecd496}
.hs-ability-icon{width:83%;height:83%;filter:drop-shadow(0 1px 2px #0008)}
#app.duel-view .hs-power b{font:600 13px/1.2 Georgia,serif;align-self:end;margin:0;display:block}
#app.duel-view .hs-power small{display:block;margin:0;font:10px/1.3 Arial,sans-serif;color:#bdc9c6;align-self:start}
#app.duel-view .hs-court .hs-power .hs-cost{left:16px;top:auto;bottom:3px;transform:none;width:37px;height:20px;border-radius:6px;box-shadow:0 2px 4px #0007;background:linear-gradient(#856d41,#403622);border:1px solid #d8bc80;color:#fff0c7}
.hs-power-trigger{position:absolute;inset:0;z-index:1;border:0;border-radius:inherit;background:transparent;color:inherit;touch-action:none;cursor:grab}
.hs-power-trigger:active{cursor:grabbing}
.hs-power-trigger:disabled{cursor:default}
.hs-power-info{position:absolute;z-index:2;right:0;top:0;width:32px;height:44px;border:0;background:none;color:#d9c493;font:bold italic 17px Georgia,serif;cursor:pointer;touch-action:manipulation}
.hs-power-info:hover{color:#fff4d5}
.hs-power-trigger:focus-visible,.hs-power-info:focus-visible{outline:2px solid #f1d08c;outline-offset:3px}
#app.duel-view .hs-power-available{border-color:#e8c785;box-shadow:inset 0 1px #fff0ca55,0 0 13px color-mix(in srgb,var(--house) 32%,transparent),0 4px 12px #0005}
#app.duel-view .hs-power-available:hover,#app.duel-view .hs-power-available:focus-within{background:linear-gradient(135deg,#526570,#243944 65%,#142831)!important;border-color:#ffe1a0}
#app.duel-view .hs-power.hs-selected{border-color:#90e0e7;box-shadow:0 0 0 2px #59b8c180}
#app.duel-view .hs-power-unavailable .hs-power-symbol{filter:saturate(.45);border-color:#92846a}
#app.duel-view .hs-power-unavailable b{color:#c4beaf}
.hs-power-peek{box-sizing:border-box;width:min(300px,calc(100vw - 24px));padding:22px;border:1px solid #c3a166;border-radius:14px;background:linear-gradient(145deg,#253942,#111d25);color:#eee3c8;box-shadow:0 12px 35px #0009;pointer-events:none}
.hs-power-peek h2,.hs-power-dialog h2{font:26px/1.15 Georgia,serif;color:#eed297;margin:12px 0}
.hs-power-peek p,.hs-power-dialog p{font-size:13px;line-height:1.65}
.hs-power-detail-icon{display:grid;place-items:center;float:right;width:58px;height:58px;border:2px solid #c4a364;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--house) 25%,#253640),#111d25);color:#f0d69b;margin:0 0 10px 12px}
.hs-power-detail-cost{color:#e0c28b;border-top:1px solid #d6b57533;padding-top:12px}
.hs-power-detail-hint{color:#acc6ce}
.hs-power-detail-state{color:#edc889}
#app.duel-view .hs-card-inspection>section.hs-power-dialog{display:block;position:relative;box-sizing:border-box;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:30px;border:1px solid #bd9f68;border-radius:16px;background:linear-gradient(145deg,#283d46,#121f27);color:#eee3c8}
.hs-power-dialog>.hs-secondary{width:100%;min-height:44px;margin-top:15px}
@media(max-width:1000px){#app.duel-view .hs-power{grid-template-columns:40px minmax(0,1fr);gap:3px 7px;padding:8px 27px 10px 6px;min-height:75px}#app.duel-view .hs-power-symbol{width:39px;height:39px}#app.duel-view .hs-power b{font-size:12px}#app.duel-view .hs-court .hs-power .hs-cost{left:8px;bottom:2px;width:34px;height:18px}}
@media(max-width:700px){#app.duel-view .hs-power{display:grid;grid-template-columns:34px minmax(0,1fr);gap:2px 6px;min-height:62px;padding:6px 31px 9px 5px}#app.duel-view .hs-power-symbol{width:33px;height:33px}#app.duel-view .hs-power b{font-size:11px}#app.duel-view .hs-power small{font-size:9px}#app.duel-view .hs-court .hs-power .hs-cost{left:5px;top:auto;bottom:1px;transform:none;width:32px;height:17px;font-size:10px}.hs-power-info{width:32px;height:44px}.hs-power-detail-icon{width:45px;height:45px}#app.duel-view .hs-card-inspection>section.hs-power-dialog{padding:24px}}
@media(prefers-reduced-motion:reduce){.hs-power,.hs-power-symbol{transition:none!important}}
.hs-rival-selection{min-width:0}
.hs-rival-heading{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.hs-lobby .hs-rival-choice .hs-rival-heading label{margin:0;color:#cfc3a5;letter-spacing:1.8px}
.hs-ai-badge{padding:3px 7px;border:1px solid #94a9a63d;border-radius:4px;font-size:9px;line-height:1;color:#b2c5c2;letter-spacing:1px}
.hs-lobby .hs-rival-choice select{width:100%;min-height:44px;padding:10px 12px;font:17px Georgia,serif;color:#f0e4c8;background:#0d181b9e;border:1px solid #bbab7955;border-radius:6px}
.hs-lobby .hs-rival-choice select:focus-visible{outline:2px solid #e8cc8c;outline-offset:3px}
.hs-lobby .hs-rival-general{margin:12px 0 4px;font:15px/1.4 Georgia,serif;color:#ded3b7}
.hs-rival-style{margin:0;font-size:11px;line-height:1.5;color:#93aaa5}
.hs-lobby .hs-match-actions{gap:12px;padding-left:28px;border-left:1px solid #bba57430;align-self:stretch;justify-content:center}
.hs-lobby .hs-match-actions>.hs-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:15px 20px;border-radius:7px;font-size:15px;box-shadow:0 5px 16px #0003}
.hs-match-actions>.hs-primary>span{font-size:23px;line-height:1;font-weight:normal}
.hs-new-duel{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:40px;padding:9px 15px;border:1px solid #bda16a5c;border-radius:6px;background:#1b2b2c;color:#dfd0b0;font-size:12px;cursor:pointer}
.hs-new-duel:hover{background:#2a3c3b;border-color:#d0b77b}
.hs-new-duel:focus-visible{outline:2px solid #e8cc8c;outline-offset:3px}
.hs-pending-duel{width:100%;padding:12px 14px;text-align:left;border:1px solid #b9a27130;border-left:2px solid var(--pending-house,#b9a271);border-radius:6px;background:#0b171b55}
.hs-pending-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px 10px}
.hs-pending-heading>.hs-eyebrow{font-size:9px;letter-spacing:1.2px;color:#cab48b}
.hs-pending-heading>small{font-size:10px;color:#99aea8}
.hs-pending-duel>p{margin:8px 0 0;color:#d2d9ce;font-size:12px;line-height:1.5}
.hs-pending-duel>p>span{color:#82938c}
.hs-match-reward{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px;margin:2px 0 0;color:#aab5a5;font-size:11px;line-height:1.5}
.hs-match-reward>strong{color:#e7cc8e;font-weight:600}
.hs-match-reward>span:first-child{margin-right:2px;color:#c1a368;font-size:15px}
@media(max-width:950px){
  .hs-lobby-heading{flex-wrap:wrap}
  .hs-lobby .hs-lobby-layout{grid-template-columns:180px minmax(0,1fr);gap:18px}
  .hs-lobby .hs-champion-copy{padding:22px 20px}
  .hs-lobby .hs-champion-copy h2{font-size:28px}
  .hs-lobby .hs-match-setup{grid-template-columns:minmax(0,1fr);gap:22px;padding:22px}
  .hs-lobby .hs-match-actions{padding:20px 0 0;border-left:0;border-top:1px solid #bba57430}
  .hs-lobby .hs-rival-choice{grid-template-columns:76px minmax(0,1fr);gap:18px}
  .hs-rival-portrait{width:76px;height:104px}
}
@media(max-width:680px){
  .hs-lobby{padding:24px 18px 30px}
  .hs-lobby-heading{gap:12px;margin-bottom:24px;align-items:flex-start}
  .hs-lobby .hs-lobby-title h1{font-size:34px;max-width:220px}
  .hs-lobby .hs-lobby-title p{font-size:12px;line-height:1.6}
  .hs-victory-count{grid-template-columns:auto;padding:6px 0 6px 14px;gap:0;min-width:68px;text-align:center}
  .hs-victory-count>span{display:none}
  .hs-victory-count strong{font-size:30px}
  .hs-victory-count small{font-size:8px;letter-spacing:1px}
  .hs-lobby-record{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:14px 0 0;border-top:1px solid #c5a96b33}
  .hs-lobby-record-block{width:100%}
  .hs-lobby-record .hs-victory-count{grid-template-columns:22px auto;column-gap:10px;padding:4px 16px;text-align:left;min-width:0}
  .hs-lobby-record .hs-victory-count:first-child{padding-left:0;border-left:0}
  .hs-lobby-record .hs-victory-count>span{display:block;grid-row:1/3;font-size:22px}
  .hs-lobby-record .hs-victory-count strong{font-size:29px}
  .hs-lobby-record .hs-victory-count small{font-size:8px;letter-spacing:.6px;white-space:normal;line-height:1.4;margin-top:6px}
  .hs-house-victories>span .hs-faction-emblem{width:22px;height:22px}
  .hs-lobby .hs-lobby-layout{grid-template-columns:minmax(0,1fr);gap:18px}
  .hs-lobby .hs-house-detail{grid-template-columns:34% minmax(0,1fr);min-height:290px}
  .hs-lobby .hs-champion-art{min-height:290px}
  .hs-lobby .hs-champion-copy{padding:18px 15px}
  .hs-lobby .hs-champion-copy h2{font-size:26px;margin-bottom:14px}
  .hs-lobby .hs-power-description{gap:9px;padding:12px 0}
  .hs-lobby .hs-power-description b{font-size:16px}
  .hs-lobby .hs-power-description small{font-size:10px}
  .hs-lobby .hs-match-setup{grid-template-columns:minmax(0,1fr);gap:18px;padding:20px 18px}
  .hs-lobby .hs-match-actions>.hs-primary{padding:15px 18px}
}
.hs-builder.hs-card-collection .hs-library-tools.hs-collection-tools{display:grid;grid-template-columns:minmax(205px,1.1fr) minmax(210px,1.3fr) repeat(3,minmax(130px,.8fr));gap:10px}
.hs-builder.hs-card-collection .hs-collection-tools input,.hs-builder.hs-card-collection .hs-collection-tools select{width:100%;min-width:0}
.hs-card-collection .hs-card-collection-name{font-size:10px;line-height:1.5;margin:14px 0 0;color:#dfc991}
.hs-card-collection .hs-card-availability{margin-top:4px}
@media(max-width:980px){.hs-builder.hs-card-collection .hs-library-tools.hs-collection-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.hs-builder.hs-card-collection .hs-library-tools.hs-collection-tools{grid-template-columns:minmax(0,1fr)}}
.hs-order-choice{width:min(920px,94vw);max-height:90dvh;overflow:auto;padding:28px;border:1px solid #71899a;border-radius:18px;background:#17242d;color:#eef2f2;box-shadow:0 20px 80px #0009}
.hs-order-choice h2{margin:8px 0 12px}.hs-order-choice p{line-height:1.5;color:#c9d5dc}.hs-order-options{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.hs-order-option{flex:1 1 150px;max-width:240px;min-height:180px;display:flex;flex-direction:column;gap:8px;padding:12px;background:#253640;border:2px solid #526775;border-radius:12px;color:#eef2f2;text-align:left;cursor:pointer}.hs-order-option img{width:100%;height:100px;object-fit:cover;border-radius:6px}.hs-order-option span,.hs-order-option small{font-size:13px;color:#c9d5dc}.hs-order-option[aria-pressed=true]{border-color:#88c4e4;background:#304d60}.hs-order-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.hs-order-option:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* Armas equipadas: relicario metálico y usos visibles junto al general. */
.duel-view .hs-equipment.hs-weapon{width:66px;min-height:0;display:flex;flex-direction:column;gap:0;padding:5px 5px 4px;margin:0;border:2px solid #af9163;border-radius:19px 19px 9px 9px;background:linear-gradient(135deg,#687277,#252e32 20%,#121e23 75%,#7b6342);color:#f2e3bc;box-shadow:0 4px 10px #0009,inset 0 0 0 1px #f1d7a455;cursor:pointer;isolation:isolate;transition:box-shadow .2s,border-color .2s}
.duel-view .hs-equipment.hs-weapon>img{width:52px;height:45px;object-fit:cover;object-position:center;border:1px solid #bea47880;border-radius:13px 13px 4px 4px;filter:saturate(.8);display:block}
.duel-view .hs-equipment.hs-weapon>.hs-weapon-name{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.duel-view .hs-equipment.hs-weapon>.hs-weapon-stats{display:flex;justify-content:space-between;align-items:center;width:100%;gap:3px;font:12px/1.4 Georgia,serif;padding-top:3px;color:#ead6ab}
.hs-weapon-stats>span{display:flex;align-items:center;gap:2px}.hs-weapon-stats strong{font-size:17px;font-weight:700;color:#fff0c7}.hs-weapon-durability{color:#8fd9da}.hs-weapon-attack{color:#f5ca79}
.duel-view .hs-equipment.hs-weapon>.hs-weapon-uses{display:flex;gap:3px;width:100%;padding-top:3px}.hs-weapon-uses i{height:3px;flex:1;margin:0!important;background:#0b1318;border:1px solid #b3955b55;border-radius:2px}.hs-weapon-uses i.filled{background:#e4bd72;box-shadow:0 0 4px #e4bd7266}
.duel-view .hs-equipment.hs-weapon-ready{border-color:#e7c887;box-shadow:0 0 0 1px #f2d99035,0 0 16px #e2b26045,0 4px 10px #0009}
.duel-view .hs-equipment.hs-weapon-worn{border-color:#b27649}.hs-weapon-worn .hs-weapon-durability,.hs-weapon-worn .hs-weapon-durability strong{color:#ffb080}.hs-weapon-worn .hs-weapon-uses i.filled{background:#ef9c59}
.duel-view .hs-equipment.hs-weapon:hover,.duel-view .hs-equipment.hs-weapon:focus-visible{border-color:#ffe3a5;box-shadow:0 0 18px #e2b26077,0 4px 10px #0009;outline:2px solid #e4d5b277;outline-offset:3px}
.hs-diagonal .hs-equipment.hs-weapon{position:absolute;right:-65px;left:auto;top:42px;transform:none;z-index:4}.hs-diagonal .hs-bastion-enemy .hs-equipment.hs-weapon{left:-65px;right:auto}
.hs-weapon-swing{z-index:153!important;pointer-events:none!important;filter:drop-shadow(0 0 9px #ffd68c)}.hs-weapon-fragment,.hs-weapon-retired{z-index:154!important;pointer-events:none!important}
.hs-weapon-slash{position:fixed;z-index:155;pointer-events:none;width:120px;height:64px;border-top:6px solid #fff3c6;border-radius:50%;box-shadow:0 -6px 12px #ffcf6a88;filter:drop-shadow(0 0 6px #ffbd57);will-change:transform,opacity}
.hs-weapon-spark{position:fixed;z-index:156;pointer-events:none;width:5px;height:9px;border-radius:2px;background:#fff0bd;box-shadow:0 0 8px #f5b967;will-change:transform,opacity}
.hs-impact-weapon{border-color:#efd7a4;background:radial-gradient(ellipse,#fff6d899,#dca24f44 40%,transparent 68%);box-shadow:0 0 20px #dda55466}
.hs-combat-number.hs-weapon{font:700 17px/1.2 Georgia,serif;letter-spacing:.06em;color:#ffcf8f;text-shadow:0 2px 4px #100c08;white-space:nowrap}
.hs-inspection-weapon-stats{color:#ebcc96;text-align:center;font-size:14px;margin:8px 0}
.hs-surplus-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 24px;align-items:center;padding:24px;margin:0 0 24px;border:1px solid #bfa97955;border-radius:10px;background:radial-gradient(ellipse at 0 0,#8e693021,transparent 70%),#19282d}
.hs-surplus-panel h2{font:25px Georgia,serif;color:#ead6a7;margin:9px 0}
.hs-surplus-panel p{font-size:13px;color:#cfcec0;line-height:1.6;margin:0 0 8px}
.hs-surplus-panel small{font-size:11px;color:#9fb1ab;line-height:1.5}
.hs-surplus-panel>.hs-secondary{min-height:46px;font-size:12px;padding:13px 18px}
.hs-surplus-panel button:disabled{opacity:.45;cursor:default}
.hs-surplus-panel details{grid-column:1/-1;border-top:1px solid #bfa97926;padding-top:14px;color:#d8c89f;font-size:12px}
.hs-surplus-panel summary{cursor:pointer;padding:3px 0}
.hs-surplus-panel ul{padding:0;margin:12px 0 0;list-style:none;max-height:250px;overflow:auto}
.hs-surplus-panel li{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid #bfa97918;color:#c7d0c7}
.hs-surplus-panel li strong{display:flex;align-items:center;gap:5px;white-space:nowrap;color:#e9d6ae}
.hs-surplus-panel .currency-ashes-icon{width:18px;height:18px}
.hs-overlay>.hs-surplus-confirm{width:min(100%,550px);padding:36px;border-radius:14px;border-color:#bea37066;background:radial-gradient(ellipse at 90% 0,#b98b4222,transparent 60%),linear-gradient(150deg,#233238,#132027);box-shadow:0 24px 90px #000a,inset 0 1px #f4dfb21a}
.hs-surplus-confirm>.hs-eyebrow{color:#cbb88e;font-size:9px;letter-spacing:2px}
.hs-surplus-confirm h2{font-size:34px;line-height:1.15;color:#f0e3c4;margin:12px 0 12px}
.hs-surplus-confirm .hs-surplus-intro{margin:0;color:#aebfba;max-width:390px}
.hs-surplus-confirm>.hs-close{width:44px;height:44px;top:5px;right:7px;font-size:24px}
.hs-surplus-exchange{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:10px;margin:26px 0 18px}
.hs-surplus-amount{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:155px;padding:20px 10px;border:1px solid #81958b33;border-radius:9px;background:#111e2355;text-align:center}
.hs-surplus-amount>svg{width:30px;height:30px;flex:none;color:#9fb5af}
.hs-surplus-amount>strong{font:42px/1 Georgia,serif;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:#e4ece1;overflow-wrap:anywhere;max-width:100%}
.hs-surplus-amount>span{font-size:11px;color:#b1c1bb;line-height:1.4}
.hs-surplus-reward{border-color:#d0b07166;background:radial-gradient(ellipse at 50% 0,#bd914b26,transparent 90%),#1d282955}
.hs-surplus-reward>strong{color:#f0d49a}
.hs-surplus-reward>span{color:#d7c7a8}
.hs-surplus-arrow{font:24px Georgia,serif;color:#b8a274;text-align:center}
.hs-surplus-review{border-top:1px solid #8c9d9130;border-bottom:1px solid #8c9d9130;font-size:12px;color:#bfc9be}
.hs-surplus-review>summary{cursor:pointer;padding:14px 0;line-height:1.5}
.hs-surplus-review>summary>span{float:right;font-size:10px;color:#899c95;padding-top:2px}
.hs-surplus-review ul{list-style:none;margin:0 0 14px;padding:0;max-height:160px;overflow:auto}
.hs-surplus-review li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;border-top:1px solid #8c9d9118;font-size:11px}
.hs-surplus-review li>span{line-height:1.5;min-width:0}
.hs-surplus-review i{color:var(--rarity);font-style:normal;font-size:9px;margin-right:7px}
.hs-surplus-review small{color:#8fa59d;white-space:nowrap;margin-left:4px}
.hs-surplus-review li>strong{display:flex;align-items:center;gap:5px;color:#e4c99b;font-size:12px;white-space:nowrap}
.hs-surplus-review .currency-ashes-icon{width:18px;height:18px}
.hs-surplus-protection{display:flex;align-items:flex-start;gap:12px;margin:20px 0 24px}
.hs-surplus-protection>svg{width:24px;height:24px;flex:none;color:#9cba9d;margin-top:1px}
.hs-surplus-protection>p{margin:0;font-size:11px;line-height:1.6;color:#a8bbb0}
.hs-surplus-protection strong{display:block;color:#ccdec8;font-size:12px;font-weight:600;margin-bottom:4px}
.hs-surplus-protection span{display:block}
.hs-surplus-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:12px}
.hs-surplus-actions>button{width:100%;min-height:50px;font-size:13px;padding:14px 12px}
.hs-surplus-actions>.hs-primary{box-shadow:0 3px 0 #74592e,0 6px 18px #0003}
.hs-surplus-panel button:focus-visible{outline:2px solid #edcf8e;outline-offset:4px}
@media(max-width:680px){.hs-surplus-panel{grid-template-columns:minmax(0,1fr);padding:20px;gap:18px}.hs-surplus-panel>.hs-secondary{width:100%}.hs-surplus-panel h2{font-size:23px}}
@media(max-width:480px){.hs-surplus-overlay{padding:14px}.hs-overlay>.hs-surplus-confirm{padding:30px 22px 24px;max-height:calc(100dvh - 28px)}.hs-surplus-confirm h2{font-size:29px}.hs-surplus-confirm .hs-surplus-intro{font-size:12px}.hs-surplus-exchange{gap:6px;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);margin-top:22px}.hs-surplus-amount{min-height:140px;padding:16px 7px}.hs-surplus-amount>strong{font-size:36px}.hs-surplus-amount>span{font-size:10px}.hs-surplus-review>summary>span{display:none}.hs-surplus-actions{grid-template-columns:1fr 1.25fr;gap:10px}.hs-surplus-actions>button{font-size:12px}}
/* Concesión: confirmar la retirada o volver al combate. */
.hs-concede-overlay{background:#050b10d9;backdrop-filter:blur(9px)}
.hs-overlay>.hs-concede-dialog{width:min(100%,500px);padding:38px 36px 30px;text-align:center;border:1px solid #b3986766;border-radius:14px;background:radial-gradient(ellipse at 50% 0,#b98b4220,transparent 65%),linear-gradient(155deg,#202c32,#111c23);box-shadow:0 24px 90px #000a,inset 0 1px #f4dfb21a}
.hs-concede-dialog .hs-close{top:10px;right:12px;width:44px;height:44px;padding:0;line-height:1;color:#aab4b7;border-radius:7px}
.hs-concede-dialog .hs-close:hover{color:#f4e0b9;background:#ffffff0a}
.hs-concede-emblem{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 20px;border:1px solid #bc986655;border-radius:50%;color:#d4b889;background:linear-gradient(145deg,#cfab6020,#111b2400);box-shadow:inset 0 0 0 5px #07101544}
.hs-concede-emblem svg{width:42px;height:42px}
.hs-concede-dialog .hs-eyebrow{color:#c1a77d;font-size:10px;letter-spacing:2px}
.hs-concede-dialog h2{margin:12px 0 14px;font-size:clamp(26px,4vw,34px);line-height:1.15;color:#f0dfba}
.hs-concede-dialog p{max-width:340px;margin:0 auto;color:#b8c4c8;font-size:14px;line-height:1.65;text-wrap:pretty}
.hs-concede-dialog p strong{color:#e7b3a4;font-weight:600}
.hs-concede-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px;padding-top:24px;border-top:1px solid #b2986829}
.hs-concede-actions>button{min-height:48px;padding:12px 16px;border-radius:7px;font-size:13px;font-weight:700;line-height:1.3}
.hs-concede-danger{border:1px solid #ae6b5d80;background:#6b33262b;color:#e6b3a6;cursor:pointer}
.hs-concede-danger:hover{border-color:#d18b77;background:#8b423b44;color:#ffdbcf}
.hs-concede-actions>button:focus-visible,.hs-concede-dialog .hs-close:focus-visible{outline:2px solid #f3d392;outline-offset:4px}
@media(max-width:480px){.hs-overlay>.hs-concede-dialog{padding:32px 22px 24px}.hs-concede-emblem{width:58px;height:58px;margin-bottom:17px}.hs-concede-actions{grid-template-columns:1fr;margin-top:24px;padding-top:20px;gap:10px}.hs-concede-actions>button{min-height:48px}}
/* Resultado del duelo: desenlace, casas, estadísticas y siguiente acción. */
.hs-result{background:#060c10df;backdrop-filter:blur(10px);padding:24px}
.hs-result[data-outcome="win"]{--result-accent:#e4c27c;--result-glow:#c49e4c22}
.hs-result[data-outcome="loss"]{--result-accent:#d7a79a;--result-glow:#a7534220}
.hs-result[data-outcome="draw"]{--result-accent:#b4c9d0;--result-glow:#79a1b522}
.hs-result>.hs-result-panel{width:620px;max-width:100%;max-height:calc(100dvh - 48px);padding:34px;border:1px solid #c3ac735c;border-radius:16px;background:radial-gradient(ellipse at 50% 0,var(--result-glow),transparent 60%),linear-gradient(155deg,#253239,#131f26 75%);box-shadow:0 28px 90px #000b,inset 0 1px #edd3a31a;text-align:center}
.hs-result-heading{padding-bottom:26px}
.hs-result-heading .hs-eyebrow{font-size:10px;letter-spacing:3px;color:#c4b58f}
.hs-result .hs-result-heading h1{font:56px/1.1 Georgia,serif;color:var(--result-accent);margin:14px 0 12px;text-shadow:0 3px 20px #0005}
.hs-result .hs-result-heading p{margin:0;font-size:14px;line-height:1.6;color:#c6d0cb}
.hs-result-houses{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:12px;padding:20px 0;border-top:1px solid #c3ac7333;border-bottom:1px solid #c3ac7333}
.hs-result-house{display:flex;align-items:center;gap:12px;min-width:0;text-align:left}
.hs-result-house-icon{flex-shrink:0}
.hs-result .hs-result-house .hs-seal{width:46px;height:46px;font-size:25px;margin:0;border-color:var(--house);box-shadow:0 4px 14px #0005}
.hs-result .hs-result-house .hs-seal .hs-faction-emblem{width:32px;height:32px}
.hs-result-house>div:last-child{min-width:0}
.hs-result-house small{display:block;font-size:8px;letter-spacing:1.4px;color:#92a6a4;margin-bottom:6px}
.hs-result-house strong{display:block;font:18px/1.2 Georgia,serif;color:#e8dfc7}
.hs-result-house>div:last-child>span{display:block;font-size:10px;line-height:1.5;color:#9aadaa;margin-top:5px}
.hs-result-winner strong{color:#efcf8a}
.hs-result-versus{font:10px Georgia,serif;letter-spacing:1px;color:#9a947f}
.hs-result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0;gap:0}
.hs-result-stats>div{display:flex;flex-direction:column-reverse;justify-content:flex-end;padding:0 10px;border-left:1px solid #a6b4a329}
.hs-result-stats>div:first-child{border-left:0}
.hs-result-stats dt{font-size:10px;line-height:1.5;color:#a9bab5;margin-top:7px}
.hs-result-stats dt span{display:block;color:#d7d0ba}
.hs-result-stats dd{margin:0;font:32px/1.2 Georgia,serif;color:#ecddbc}
.hs-result-reward{display:flex;align-items:center;justify-content:center;gap:12px;padding:13px 16px;margin:0 0 24px;border:1px solid #c9a85b40;border-radius:8px;background:#c9a85b0d;color:#efd38d;text-align:left}
.hs-result-reward>span{font-size:25px}
.hs-result-reward strong{display:block;font-size:13px}
.hs-result-reward small{display:block;margin-top:5px;font-size:10px;color:#b7b69c}
.hs-result-actions{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;padding-top:4px}
.hs-result-actions>button{min-height:48px;min-width:0;padding:14px;font-size:12px;letter-spacing:.4px}
.hs-result-actions>.hs-primary{display:flex;justify-content:center;align-items:center;gap:14px;box-shadow:0 4px 18px #0003}
.hs-result-actions>button:focus-visible{outline:2px solid #f0d7a0;outline-offset:4px}
@media(max-width:680px){
  .hs-result{padding:16px}
  .hs-result>.hs-result-panel{padding:28px 20px;max-height:calc(100dvh - 32px);border-radius:12px}
  .hs-result .hs-result-heading h1{font-size:46px}
  .hs-result .hs-result-heading p{font-size:12px}
  .hs-result-heading{padding-bottom:20px}
  .hs-result-houses{gap:8px;padding:18px 0}
  .hs-result-house{flex-direction:column;text-align:center;gap:10px}
  .hs-result-house strong{font-size:16px}
  .hs-result-house small{font-size:8px;letter-spacing:1px}
  .hs-result-house>div:last-child>span{font-size:9px}
  .hs-result-stats{margin:22px 0}
  .hs-result-stats>div{padding:0 6px}
  .hs-result-stats dd{font-size:29px}
  .hs-result-stats dt{font-size:9px}
  .hs-result-actions{grid-template-columns:minmax(0,1fr);gap:10px}
}
@media(max-width:1000px) and (min-width:701px){.hs-diagonal .hs-equipment.hs-weapon{right:-51px;width:54px;top:48px;padding:4px}.hs-diagonal .hs-bastion-enemy .hs-equipment.hs-weapon{left:-51px;right:auto}.duel-view .hs-equipment.hs-weapon>img{width:42px;height:36px}.hs-weapon-stats strong{font-size:15px}.duel-view .hs-equipment.hs-weapon>.hs-weapon-stats{font-size:10px}}
@media(max-width:700px){.hs-diagonal .hs-equipment.hs-weapon,.hs-diagonal .hs-bastion-enemy .hs-equipment.hs-weapon{left:calc(50% + 35px);right:auto;top:4px;width:46px;padding:3px;border-radius:12px 12px 6px 6px;transform:none}.duel-view .hs-equipment.hs-weapon>img{width:36px;height:29px;border-radius:8px 8px 3px 3px}.duel-view .hs-equipment.hs-weapon>.hs-weapon-stats{font-size:9px;padding-top:1px;gap:1px}.hs-weapon-stats strong{font-size:14px}.duel-view .hs-equipment.hs-weapon>.hs-weapon-uses{padding-top:2px;gap:2px}.hs-weapon-uses i{height:2px}.hs-weapon-slash{width:86px;height:45px;border-top-width:4px}.hs-combat-number.hs-weapon{font-size:14px}}

@media(max-width:700px){.hs-diagonal .hs-bastion:has(.hs-weapon) .hs-command-supply{padding-left:54px}.hs-diagonal .hs-bastion:has(.hs-weapon) .hs-hand-mana{grid-template-columns:auto}.hs-diagonal .hs-bastion:has(.hs-weapon) .hs-supply-icon{display:none}.hs-diagonal .hs-bastion:has(.hs-weapon) .hs-hand-mana .hs-mana{grid-column:1}.hs-diagonal .hs-bastion:has(.hs-weapon) .hs-hand-mana .hs-mana>b{font-size:25px}}

@media(min-width:701px){.hs-diagonal:has(.hs-bastion-player .hs-weapon) .hs-hand-dock,.hs-diagonal:has(.hs-bastion-enemy .hs-weapon) .hs-enemy-hand{width:calc(50% - 150px)}}
.hs-session-loading{min-height:70vh;min-height:70dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center}
.hs-session-loading h1{margin:0;font-family:var(--serif);font-size:clamp(24px,4vw,36px);font-weight:400;color:var(--gold)}

#app.duel-view .hs-power-dialog>.hs-close{position:absolute;top:10px;right:10px;width:36px;height:36px;font-size:24px}

/* The player's hand keeps its own portrait dimensions instead of inheriting the board's height. */
.hs-diagonal .hs-hand-dock{--hand-card-width:128px;--hand-card-height:212px;--hand-visible:var(--hand-card-height);--hand-art-height:88px;height:calc(var(--hand-card-height) + 46px);container:duel-hand / inline-size}
.hs-diagonal .hs-court-table{grid-template-rows:calc(var(--duel-card-height) + 8px) minmax(0,1fr) calc(var(--hand-card-height,212px) + 20px)}
.hs-diagonal .hs-hand{height:calc(var(--hand-card-height) + 28px);padding:10px 8px 0;justify-content:flex-start;overflow-x:auto;overflow-y:clip;scrollbar-width:thin;scrollbar-color:#8d947f transparent}
.hs-diagonal .hs-hand-slot{flex:1 1 0;max-width:calc(var(--hand-card-width) - 12px)}
.hs-diagonal .hs-hand-slot:last-child{flex:0 0 var(--hand-card-width);max-width:none;margin-right:0}
.hs-diagonal .hs-hand-lift{width:var(--hand-card-width);height:var(--hand-card-height);transform:none;will-change:auto;transition:transform .15s ease-out}
.hs-diagonal .hs-hand-slot:has(.hs-selected){z-index:20}
.hs-diagonal .hs-hand-slot:hover .hs-hand-lift,.hs-diagonal .hs-hand-slot:focus-within .hs-hand-lift,.hs-diagonal .hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:translateY(-6px)}
#app .hs-diagonal .hs-hand .hs-card{box-sizing:border-box;width:var(--hand-card-width);height:var(--hand-card-height);min-height:var(--hand-card-height);padding:6px 6px 25px;transform:none;filter:none;opacity:1}
#app .hs-diagonal .hs-hand .hs-card-art{height:var(--hand-art-height);flex:0 0 var(--hand-art-height);width:100%}
#app .hs-diagonal .hs-hand .hs-card-art img{display:block;width:100%;height:100%;object-fit:cover;filter:none;opacity:1}
#app .hs-diagonal .hs-hand .hs-card-name{font-size:12px;line-height:1.2;min-height:30px;flex-shrink:0;padding:3px 2px;margin-top:4px}
#app .hs-diagonal .hs-hand .hs-card-text{font-size:10px;line-height:1.3;display:block;-webkit-line-clamp:unset;overflow:hidden;padding:4px 2px 0}
.hs-diagonal .hs-hand-inspect{top:48px;bottom:auto;left:6px;right:auto}
.hs-hand-navigation{display:flex;gap:6px;flex:0 0 auto}
.hs-hand-navigation[hidden]{display:none}
.hs-hand-navigation button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #baa06b66;border-radius:6px;background:#15252de6;color:#e7d4aa;font-size:20px;line-height:1;touch-action:manipulation}
.hs-hand-navigation button:hover:not(:disabled){background:#31434a;border-color:#e4c17e}
.hs-hand-navigation button:disabled{opacity:.35}
.hs-diagonal .hs-hand-bar>span{min-width:0;flex:1;flex-wrap:wrap;gap:2px 8px}
.hs-diagonal .hs-hand-dock:has(.hs-hand-navigation:not([hidden])){height:calc(var(--hand-card-height) + 72px)}
.hs-diagonal .hs-hand-bar:has(.hs-hand-navigation:not([hidden])){height:44px;gap:10px}
.hs-diagonal .hs-court-table:has(.hs-hand-navigation:not([hidden])){grid-template-rows:calc(var(--duel-card-height) + 8px) minmax(0,1fr) calc(var(--hand-card-height) + 46px)}
/* A narrow hand remains a readable rail, with swipe, keyboard and tap navigation. */
@container duel-hand (max-width:520px){.hs-hand .hs-hand-slot{flex:0 0 var(--hand-card-width);max-width:none}.hs-hand-dock .hs-hand{gap:8px}.hs-hand .hs-hand-inspect{left:auto;right:6px}}
@media(min-width:701px) and (max-height:780px){.hs-diagonal .hs-hand-dock{--hand-card-width:112px;--hand-card-height:184px;--hand-art-height:66px}.hs-diagonal .hs-court-table{grid-template-rows:calc(var(--duel-card-height) + 8px) minmax(0,1fr) 204px}#app .hs-diagonal .hs-hand .hs-card-name{font-size:11px;min-height:28px}}
@media(max-width:700px){.hs-diagonal.hs-battle{grid-template-rows:calc(var(--duel-card-height) + 116px) minmax(160px,1fr) 78px 38px 250px;overflow-y:auto}.hs-diagonal .hs-hand-dock{--hand-card-width:120px;--hand-card-height:204px;--hand-art-height:80px;height:250px}.hs-diagonal .hs-hand{height:232px}.hs-diagonal .hs-hand-slot:hover .hs-hand-lift,.hs-diagonal .hs-hand-slot:focus-within .hs-hand-lift,.hs-diagonal .hs-hand-slot:has(.hs-selected) .hs-hand-lift{transform:none}.hs-diagonal .hs-hand-inspect{opacity:1;pointer-events:auto;top:46px}#app .hs-diagonal .hs-hand .hs-card-name{font-size:12px;min-height:30px}#app .hs-diagonal .hs-hand .hs-card-text{font-size:10px}}
@media(max-width:700px){.hs-diagonal.hs-battle:has(.hs-hand-navigation:not([hidden])){grid-template-rows:calc(var(--duel-card-height) + 116px) minmax(160px,1fr) 78px 38px 284px}.hs-diagonal .hs-hand-dock:has(.hs-hand-navigation:not([hidden])){height:284px}}

/* Quiet return link shared by the duel lobby, collection and shop. */
.duel-view .hs-modes-return{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:4px 3px;color:#d3c4a5;flex-shrink:0;text-align:left;transition:color .18s ease}
.hs-modes-arrow{width:30px;height:30px;flex-shrink:0;padding:6px;border:1px solid #bca16d66;border-radius:50%;background:linear-gradient(145deg,#ddbc7620,#ddbc7605);color:#d8b97e;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.hs-modes-arrow path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.hs-modes-label{font-size:10px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .18s ease}
.duel-view .hs-modes-return:hover,.duel-view .hs-modes-return:focus-visible{color:#f2d397}
.hs-modes-return:hover .hs-modes-arrow,.hs-modes-return:focus-visible .hs-modes-arrow{border-color:#e1bd7db3;background:#ddbc761c;box-shadow:0 0 14px #ddbc7610}
.hs-modes-return:hover .hs-modes-arrow path{transform:translateX(-1px)}
.hs-modes-return:hover .hs-modes-label,.hs-modes-return:focus-visible .hs-modes-label{border-color:#d8b97e66}
@media(max-width:700px){.duel-view .hs-modes-return{min-width:44px;justify-content:center;padding:4px;gap:0}.hs-modes-return .hs-modes-label{display:none}.hs-modes-arrow{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.duel-view .hs-modes-return,.hs-modes-arrow,.hs-modes-arrow path,.hs-modes-label{transition:none}.hs-modes-return:hover .hs-modes-arrow path{transform:none}}

/* Replacing a pending duel: the saved matchup and both choices stay clear. */
.hs-overlay>.hs-new-duel-dialog{width:min(100%,520px);padding:32px 32px 28px;text-align:center;border:1px solid #bba16b66;border-radius:14px;background:radial-gradient(ellipse at 50% 0,#b98b4220,transparent 65%),linear-gradient(155deg,#233238,#111e25);box-shadow:0 24px 90px #000a,inset 0 1px #f4dfb21a}
.hs-new-duel-dialog .hs-close{top:10px;right:12px;width:44px;height:44px;padding:0;line-height:1;border-radius:7px;color:#aab9b8}
.hs-new-duel-dialog .hs-close:hover{background:#ffffff0a;color:#f4e0b9}
.hs-new-duel-emblem{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 17px;border:1px solid #c3a46b55;border-radius:50%;color:#dfc390;background:linear-gradient(145deg,#cfab6020,#111b2400);box-shadow:inset 0 0 0 5px #07101544}
.hs-new-duel-emblem svg{width:34px;height:34px}
.hs-new-duel-dialog>.hs-eyebrow{color:#bea77c;font-size:9px;letter-spacing:2px}
.hs-new-duel-dialog h2{margin:11px 0 23px;font-size:clamp(26px,4vw,32px);line-height:1.2;color:#f0dfba;text-wrap:balance}
.hs-new-duel-pending{padding:15px 18px 18px;border:1px solid #9aac9e30;border-radius:8px;background:#08151b55}
.hs-new-duel-pending-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid #9aac9e22;color:#a2b7b0;text-align:left}
.hs-new-duel-pending-heading>span{font-size:9px;font-weight:600;letter-spacing:1.3px}
.hs-new-duel-pending-heading>small{font-size:10px;color:#c8b994}
.hs-new-duel-houses{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;margin-top:17px}
.hs-new-duel-house{display:flex;flex-direction:column;align-items:center;gap:11px;min-width:0}
.hs-new-duel-house .hs-seal{width:40px;height:40px;font-size:22px}
.hs-new-duel-house small{display:block;margin-bottom:5px;font-size:8px;letter-spacing:1.3px;color:#91aaa3}
.hs-new-duel-house strong{display:block;font:17px/1.3 Georgia,serif;color:#e1d9bf}
.hs-new-duel-versus{font:italic 12px Georgia,serif;color:#9eab9d}
.hs-new-duel-dialog #hs-new-duel-description{max-width:350px;margin:20px auto 0;font-size:14px;line-height:1.6;color:#c9d3ce;text-wrap:pretty}
.hs-new-duel-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;margin-top:25px;padding-top:22px;border-top:1px solid #bba16b29}
.hs-new-duel-actions>button{min-width:0;min-height:48px;padding:12px 14px;border-radius:7px;font-size:13px;font-weight:600;line-height:1.3}
.hs-new-duel-actions>.hs-secondary{border-color:#80948b55;background:#263637;color:#d1d9cd}
.hs-new-duel-actions>.hs-secondary:hover{border-color:#adc4b399;background:#304443}
.hs-new-duel-actions>.hs-primary{box-shadow:0 3px 0 #74592e,0 8px 18px #0003}
.hs-new-duel-actions>.hs-primary>span{font-size:18px;font-weight:400}
.hs-new-duel-actions>button:focus-visible,.hs-new-duel-dialog .hs-close:focus-visible{outline:2px solid #f3d392;outline-offset:4px}
@media(max-width:480px){.hs-overlay>.hs-new-duel-dialog{padding:30px 20px 23px}.hs-new-duel-pending{padding:14px 12px 16px}.hs-new-duel-houses{gap:10px}.hs-new-duel-house strong{font-size:16px}.hs-new-duel-actions{grid-template-columns:minmax(0,1fr);gap:11px;margin-top:22px;padding-top:20px}}
@media(prefers-reduced-motion:reduce){.hs-new-duel-actions>button{transition:none}.hs-new-duel-actions>.hs-primary:hover{transform:none}}
/* Opening order is resolved by the engine before this presentation begins. */
.hs-coin-toss{max-width:760px;margin:auto;padding:38px 24px 44px;text-align:center}
.hs-coin-toss h1{font:clamp(28px,4vw,48px) var(--font-heading,Georgia,serif);color:#f2e5c9;margin:12px 0}
.hs-coin-toss>p{color:#a9a69b;margin:0}
.hs-coin-stage{height:270px;display:grid;place-items:center;position:relative;perspective:1000px;margin:16px auto 0}
.hs-toss-coin{width:158px;height:158px;position:relative;transform-style:preserve-3d;transform:rotateY(var(--coin-face));z-index:1}
.hs-toss-coin>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;border:7px double #f0cf7d;border-radius:50%;background:radial-gradient(circle at 32% 25%,#f3d38a,#b48634 62%,#72501e);color:#513712;box-shadow:inset 0 0 0 5px #906321,inset 0 0 18px #fff1b88c,0 2px 2px #0008;backface-visibility:hidden}
.hs-coin-back{transform:rotateY(180deg)}
.hs-toss-coin svg{width:76px;height:76px;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round}
.hs-toss-coin b{font-size:12px;letter-spacing:3px;margin-top:4px}
.hs-coin-shadow{position:absolute;width:135px;height:17px;bottom:23px;border-radius:50%;background:#0008;filter:blur(5px)}
.hs-coin-spinning .hs-toss-coin{animation:hs-opening-coin calc(2.2s * var(--coin-speed)) cubic-bezier(.2,.5,.4,1) both}
.hs-coin-spinning .hs-coin-shadow{animation:hs-opening-shadow calc(2.2s * var(--coin-speed)) ease-in-out both}
.hs-coin-sides{display:flex;justify-content:center;align-items:center;gap:24px;color:#98988e;font-size:11px;letter-spacing:2px}
.hs-coin-sides span{display:flex;gap:10px;align-items:center}.hs-coin-sides b{color:#dabc7b;font-size:12px}.hs-coin-sides i{font-style:normal}
.hs-coin-outcome{min-height:110px;margin:24px 0 12px}
.hs-coin-outcome h2{font:clamp(22px,3vw,30px) Georgia,serif;color:#edcf91;margin:0 0 12px}
.hs-coin-outcome p{line-height:1.6;color:#b9b6a9;max-width:440px;margin:auto}
.hs-coin-toss>.hs-primary{min-width:240px}.hs-coin-toss>.hs-link{display:block;margin:18px auto 0}
@keyframes hs-opening-coin{0%{transform:translateY(65px) rotateY(0) scale(.8)}35%{transform:translateY(-65px) rotateY(720deg) scale(1.05)}80%{transform:translateY(25px) rotateY(var(--coin-landing)) scale(1)}92%{transform:translateY(-8px) rotateY(var(--coin-landing))}100%{transform:translateY(0) rotateY(var(--coin-landing))}}
@keyframes hs-opening-shadow{0%,100%{transform:scale(1);opacity:.8}35%{transform:scale(.5);opacity:.3}80%{transform:scale(1.1);opacity:.9}}
@media(max-width:600px){.hs-coin-toss{padding:28px 18px 32px}.hs-coin-stage{height:235px}.hs-toss-coin{width:132px;height:132px}.hs-toss-coin svg{width:62px;height:62px}.hs-coin-outcome{min-height:115px}.hs-coin-toss>.hs-primary{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.hs-coin-spinning .hs-toss-coin,.hs-coin-spinning .hs-coin-shadow{animation:none}}
