:root{color-scheme:dark;font-family:"Microsoft YaHei",system-ui,sans-serif;color:#f9edce;background:#111820}*{box-sizing:border-box}body{margin:0;overflow:hidden}button{cursor:pointer;font:inherit;color:inherit;border:1px solid #c5a36b;border-radius:5px;background:linear-gradient(#514332,#221c18);padding:9px 16px}button:disabled{cursor:default;filter:grayscale(.8);opacity:.48}button:focus-visible,[tabindex]:focus-visible{outline:3px solid #ffda85;outline-offset:3px}button:hover:not(:disabled){filter:brightness(1.2)}img{user-select:none;pointer-events:none}#board{position:absolute;left:50%;top:50%;width:1672px;height:941px;transform-origin:center;background-size:100% 100%;overflow:hidden;isolation:isolate}#oracle-bar{position:absolute;top:8px;left:485px;width:660px;height:68px;display:flex;align-items:center;background:url('/media/ui--utility--oracle-banner.png') center/100% 100% no-repeat;padding:8px 24px;z-index:8}#oracle-open{width:45px;height:45px;flex:none;padding:0;background:none;border:0}#oracle-open img{width:100%;height:100%}#oracle{flex:1;text-align:center;font-size:21px;font-family:SimSun,serif;font-weight:700;color:#ffebae;text-shadow:1px 2px 3px #000}#oracle p{margin:0}#top-status{position:absolute;right:90px;top:22px;max-width:300px;text-align:right;font-size:22px;color:#ffe8b8;text-shadow:0 2px 4px #000}#status{display:block;font-size:14px;color:#e2d6bd;margin-top:4px}#settings-open{position:absolute;right:25px;top:20px;width:45px;height:45px;padding:0;background:none;border:0;z-index:10}#settings-open img{width:100%}#opponents{display:contents}.player{position:absolute;width:320px;height:300px;cursor:pointer;outline:none}.portrait{position:absolute;width:350px;height:350px;left:-15px;bottom:4px;object-fit:contain;filter:drop-shadow(0 7px 8px #0006)}.ghost .portrait{filter:grayscale(1) drop-shadow(0 0 10px #d9dbfa66)}#opponents>.player:nth-child(1){left:60px;top:335px}#opponents>.player:nth-child(2){left:235px;top:57px}#opponents>.player:nth-child(3){right:235px;top:57px}#opponents>.player:nth-child(4){right:60px;top:335px}#self{position:absolute;left:676px;bottom:25px;width:320px;height:290px}#self>.player{width:100%;height:100%}.player-info{position:absolute;bottom:0;left:12px;right:12px;z-index:2}.nameplate{position:relative;height:48px;display:flex;align-items:center;justify-content:center}.nameplate>img:first-child{position:absolute;width:100%;height:100%;z-index:-1}.nameplate strong{font-family:SimSun,serif;font-size:26px;text-shadow:0 2px 3px #000}.faction{position:absolute;right:2px;top:4px;width:40px;height:40px;padding:0;border:0;background:none}.faction img{position:absolute;inset:0;width:100%;height:100%}.light-symbol{position:absolute;left:5px;top:6px;width:32px;height:32px}.resource-row{display:flex;align-items:center;justify-content:center;gap:12px;min-height:30px;background:linear-gradient(90deg,transparent,#152232d9 20%,#152232d9 80%,transparent)}.meter{display:flex;gap:0}.gem{position:relative;width:23px;height:23px}.gem img{position:absolute;inset:0;width:100%;height:100%}.hand-count{position:absolute;right:-42px;bottom:0;display:flex;align-items:center;font-size:26px;text-shadow:1px 2px 3px #000}.hand-count img{width:30px;height:30px}.ghost-label{font-size:19px;color:#c8d9f2}.equipment-strip{position:absolute;left:-50px;top:87px;display:flex;flex-direction:column;gap:4px;z-index:4}.equipment-slot{position:relative;width:48px;height:48px;cursor:default}.equipment-slot img{position:absolute;inset:0;width:100%;height:100%}.equipment-slot[role=button]{cursor:pointer}.equipment-slot.selected{filter:drop-shadow(0 0 8px #ffe097)}#opponents>.player:nth-child(3) .equipment-strip,#opponents>.player:nth-child(4) .equipment-strip{left:auto;right:-50px}#self .equipment-strip{left:-603px;top:63px;width:65px}#self .equipment-slot{width:62px;height:62px}.state-icons{position:absolute;right:10px;bottom:88px;display:flex;gap:3px;flex-wrap:wrap;max-width:155px;z-index:3}.state{position:relative;width:35px;height:35px}.state img{width:100%;height:100%}.state b{position:absolute;right:-4px;bottom:-4px;background:#172335;border:1px solid #baac8b;border-radius:3px;font-size:16px;padding:0 3px}.warded:before{content:'';position:absolute;inset:26px 23px 51px;border:2px solid #a0ddfa88;border-radius:50%;box-shadow:inset 0 0 24px #80d8ff33;pointer-events:none}.targetable .portrait{filter:drop-shadow(0 0 11px #ffc557)}.ghost.targetable .portrait{filter:grayscale(1) drop-shadow(0 0 11px #ffc557)}.untargetable .portrait{filter:brightness(.4)}.ghost.untargetable .portrait{filter:grayscale(1) brightness(.4)}.target-selected:after{content:'';position:absolute;inset:25px 15px 40px;border:3px solid #ffe9a7;border-radius:48%;pointer-events:none;box-shadow:0 0 15px #ffe9a780}
#arena{position:absolute;inset:0;pointer-events:none}#sacred-flame{position:absolute;left:738px;top:128px;width:196px;height:223px;object-fit:contain;filter:drop-shadow(0 0 18px #ffa00f77)}#altar{position:absolute;left:731px;top:342px;width:230px;height:110px;pointer-events:auto}.altar-card{position:absolute;left:calc(var(--i)*42px);top:calc(var(--i)*-3px);width:68px;height:102px;transform:rotate(calc(-8deg + var(--i)*5deg));padding:0;background:none;border:0}#flame{position:absolute;left:714px;top:448px;width:250px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:27px;text-shadow:0 2px 3px #000}#flame-icon img,#altar-icon img{width:34px;height:34px}#altar-icon{margin-left:25px}#action-card{position:absolute;left:596px;top:492px;width:480px;height:168px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;color:#fff1bf;font-size:18px;text-shadow:0 2px 4px #000;pointer-events:none;z-index:4}#action-card>p{margin:2px 0;line-height:1.3;background:#142131bc;border-radius:4px;padding:2px 8px}#action-card .resolved-card{width:92px;height:138px;flex-shrink:0}#action-card>p:first-child:not(.action-caption){position:absolute;left:320px;top:25px;width:160px;text-align:center}#prompt{position:absolute;left:475px;top:639px;width:720px;text-align:center;font-size:19px;line-height:1.3;padding:7px 12px;border-radius:6px;background:#0b1429cc;text-shadow:1px 1px 2px #000;z-index:5;pointer-events:none}#prompt:empty{display:none}#hand{display:contents}.hand-side{position:absolute;bottom:25px;height:207px;width:443px;display:flex;align-items:flex-end;justify-content:center;gap:0;z-index:5;border:2px solid transparent}#cards-left{left:172px}#cards-right{left:1047px;width:365px}.card{position:relative;width:138px;height:207px;flex-shrink:0;padding:0;border:0;background:none;border-radius:8px;touch-action:none;cursor:pointer;transition:transform .12s,filter .12s;max-width:none}.card+.card{margin-left:calc(min(0px,(100% - var(--count)*138px)/(var(--count) - 1)))}.card-face{position:relative;width:100%;height:100%;aspect-ratio:2/3;overflow:hidden;border-radius:5px;pointer-events:none}.card-face>img{position:absolute}.card-art{left:8.6%;top:14%;width:82.8%;height:79.2%;object-fit:cover}.card-frame{inset:0;width:100%;height:100%}.card-title{position:absolute;left:25%;top:6.4%;width:66.4%;height:7%;font-family:SimSun,serif;font-weight:bold;white-space:nowrap;font-size:14px;display:flex;align-items:center;justify-content:center;color:#fff3dc;text-shadow:0 1px 2px #000}.card-cost{position:absolute;left:7.6%;top:4.4%;width:12.5%;height:10%;font-family:Georgia,serif;font-weight:700;font-size:22px;text-align:center;color:#fff;text-shadow:0 1px 2px #000}.card-domain{left:7.6%;top:86.8%;width:12.5%;height:8.3%}.card.selected{transform:translateY(-20px);filter:drop-shadow(0 0 8px #ffe498)}.card.playable:hover{transform:translateY(-14px);z-index:10}.card.unavailable{filter:brightness(.72)}.card.dragging{opacity:.65;transform:translateY(-25px)}.drop-ready{border-color:#e4bb60;background:#e4bb6020;border-radius:8px}#skills{position:absolute;right:34px;bottom:145px;width:190px;display:flex;justify-content:center;gap:9px;z-index:7}#skills button{position:relative;padding:0;width:65px;height:65px;border:0;background:none}#skills button img{position:absolute;inset:0;width:100%;height:100%}#skills button span{position:absolute;bottom:-13px;left:-8px;width:81px;text-align:center;font-size:14px;text-shadow:1px 2px 2px #000}#skills .skill-ready{filter:drop-shadow(0 0 5px #f7d989)}#skills button.selected{filter:drop-shadow(0 0 8px #fff)}#controls{position:absolute;right:19px;bottom:31px;width:218px;z-index:7}#options{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow:auto}#options button{min-height:47px;padding:7px;font-size:21px;font-family:SimSun,serif;font-weight:bold;background:#211a12db}#options button:first-child{border:0;background:url('/media/ui--utility--end-action-frame.png') center/100% 100% no-repeat;font-size:25px;min-height:64px}#options button.selected{box-shadow:inset 0 0 0 2px #ffe8ac}#options:empty{display:none}#history{position:absolute;left:18px;bottom:10px;color:#ead6a8;font-size:17px;z-index:12;background:#101b29b8;border-radius:4px;padding:5px 8px}#history summary{cursor:pointer}#history[open]{width:430px;max-height:480px;overflow:auto;background:#101b29f5;border:1px solid #a58b55;padding:14px}#events p{font-size:18px;line-height:1.5;border-bottom:1px solid #78715f40;padding-bottom:8px}#private-open{position:absolute;left:18px;top:20px;z-index:10;font-size:18px;background:#101b29ba}#arrows{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}#arrows path{stroke:#ffda82;stroke-width:4;fill:none;filter:drop-shadow(0 0 3px #bf8930)}.turn-ring{position:absolute;right:15px;bottom:83px;width:49px;height:49px;border-radius:50%;background:conic-gradient(#f2ce79 var(--progress),#ffffff15 0);mask:radial-gradient(transparent 62%,black 64%);pointer-events:none;animation:countdown var(--duration) linear both;z-index:6}@property --progress{syntax:'<angle>';inherits:false;initial-value:360deg}@keyframes countdown{from{--progress:360deg}to{--progress:0deg}}.turn-ring.waiting-ring{animation:waiting 2s linear infinite;background:conic-gradient(#ffe29a 240deg,transparent 0)}@keyframes waiting{to{transform:rotate(360deg)}}dialog{border:1px solid #b49a63;border-radius:12px;background:#14212af5;color:#f3e4c5;max-width:min(650px,94vw);max-height:88vh;padding:25px;box-shadow:0 15px 60px #0008;font-size:16px;line-height:1.6}dialog::backdrop{background:#030711aa}dialog h2{font-family:SimSun,serif;color:#eed09c}dialog .close{float:right;padding:0;width:36px;height:36px;font-size:24px}dialog input{width:90px;padding:8px;color:inherit;background:#111a23;border:1px solid #a48a5c;margin:8px}#dialog-content>.card-face{width:200px;height:300px;margin:auto}#dialog-content>.card-face .card-title{font-size:21px}#dialog-content>.card-face .card-cost{font-size:30px}.my-objective{color:#ffe394;font-weight:bold}#rotate-hint{display:none}#error{position:fixed;bottom:12px;left:15%;right:15%;background:#7b2934ee;padding:14px;border-radius:6px;z-index:100;display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:1000px) and (orientation:landscape){#oracle{font-size:26px}#prompt{font-size:25px;left:390px;width:892px;top:645px}#top-status{font-size:26px}#status{font-size:20px}.nameplate strong{font-size:30px}.gem{width:25px;height:25px}.resource-row{gap:5px}.card-title{font-size:17px}.equipment-slot{width:56px;height:56px}.turn-ring{width:58px;height:58px}#options button{min-height:64px;font-size:27px}#skills{bottom:168px}#skills button{width:76px;height:76px}#skills button span{font-size:19px;width:100px;left:-12px}#history{font-size:24px}#private-open{font-size:24px}#settings-open{width:60px;height:60px}}
@media(orientation:portrait) and (max-width:800px){#rotate-hint{display:block;position:fixed;left:8%;right:8%;bottom:15%;text-align:center;color:#e6d5a9;font-size:18px;line-height:1.6}#board{top:35%}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.turn-ring{animation:none!important}}
.card-info{position:absolute;bottom:18px;right:12px;font-size:12px;padding:4px 6px;opacity:0;z-index:4}.card:hover .card-info,.card.selected .card-info,.card:focus-within .card-info{opacity:1}@media(pointer:coarse){.card-info{opacity:1}}
/* 实机定位修正：提示避开本人面部，火焰透明边缘按实际画布对齐火盆。 */
#sacred-flame{left:611px;top:33px;width:450px;height:300px}#oracle{min-width:0;color:#322412;text-shadow:0 1px 0 #fff4c6;font-size:20px;line-height:1.3}#oracle-bar{padding-right:36px}#prompt{top:584px;left:530px;width:612px;font-size:18px;background:#111c29d9}#action-card .action-caption{position:absolute;left:322px;top:77px;width:170px;font-size:17px}#action-card>strong{padding:10px;background:#111b29c9;border:1px solid #a58a55;border-radius:5px}#action-card .card-title{font-size:10px}#action-card .card-cost{font-size:16px}.altar-card .card-title{font-size:7px}.altar-card .card-cost{font-size:12px}@media(max-width:1000px) and (orientation:landscape){#prompt{top:582px;font-size:22px}#oracle{font-size:23px}.card-title{font-size:14px}}
#prompt{left:575px;top:82px;width:525px;font-size:18px;background:#102030c7}#action-card .action-caption{background:#102030ec}@media(max-width:1000px) and (orientation:landscape){#prompt{left:575px;top:82px;width:525px;font-size:23px}#skills button{width:86px;height:86px}#options button{min-height:80px}#options button:first-child{min-height:84px}.card.selected .card-info{font-size:20px;padding:7px}#cards-right{left:1030px;width:410px}}
@media(max-width:1000px) and (orientation:landscape){#hand .card-title{font-size:18px}}

#hand .card-title{font-size:min(14px,calc(90px / var(--name-length,7)))}@media(max-width:1000px) and (orientation:landscape){#hand .card-title{font-size:min(18px,calc(90px / var(--name-length,7)))}}

/* 2026-09-28：新版祭坛与独立手机横屏排版。 */
#altar{left:756px;top:272px;width:170px;height:70px}.altar-card{width:52px;height:78px;left:calc(var(--i)*30px)}
#flame{left:721px;top:348px;width:230px;font-size:25px}
#self{left:706px;bottom:-3px;width:260px;height:245px}#self .portrait{width:300px;height:300px;left:-20px;bottom:-3px}
#self .equipment-strip{left:-613px;top:48px}
.player-info{bottom:0}.nameplate{height:44px}.nameplate strong{font-size:25px}
.resource-row{position:absolute;left:calc(100% - 12px);bottom:44px;display:flex;align-items:flex-end;gap:0;padding:3px;border-radius:6px;background:#102032c9;z-index:3}
.meter{flex-direction:column-reverse}.gem{width:30px;height:30px;flex:none}.hand-count{right:0;bottom:-35px;font-size:25px}.ghost-label{position:absolute;bottom:-27px;left:0;font-size:18px}
#opponents>.player:nth-child(3) .resource-row,#opponents>.player:nth-child(4) .resource-row{left:auto;right:calc(100% - 12px)}
#self .resource-row{left:-59px;bottom:47px}#self .state-icons{left:auto;right:-52px}
.state-icons{left:calc(100% + 54px);right:auto;bottom:48px;display:flex;flex-direction:column-reverse;flex-wrap:wrap;align-content:flex-start;max-height:240px;gap:5px;max-width:none}.state{width:44px;height:44px;flex:none}.state b{font-size:20px}
#opponents>.player:nth-child(3) .state-icons,#opponents>.player:nth-child(4) .state-icons{left:auto;right:calc(100% + 54px);align-content:flex-end}
#action-card{left:626px;top:403px;width:174px;height:255px;display:flex;justify-content:center;font-size:26px}#action-card .resolved-card{width:166px;height:249px}
#action-card .card-title{font-size:17px}#action-card .card-cost{font-size:27px}
#notice{position:absolute;left:838px;top:420px;width:350px;max-height:233px;overflow:auto;padding:14px 18px;color:#ffefc9;background:linear-gradient(110deg,#101c2af2,#152333c9);border-left:2px solid #c9a868;border-radius:3px;z-index:7;font-size:21px;line-height:1.55;text-shadow:0 1px 2px #000}
#notice:has(#prompt:empty):has(#thinking:empty):has(#action-caption:empty):has(#error:empty){display:none}
#prompt{position:static;width:auto;padding:0;background:none;text-align:left;font-size:inherit;pointer-events:auto;line-height:inherit}
#action-caption{color:#f6cf85;font-weight:600}#thinking{color:#dce5ef}#notice>div+div:not(:empty){margin-top:8px}
#error{position:static;padding:5px;background:#7b2934ee;font-size:inherit;margin:0}
.hand-side{height:264px;bottom:15px;width:530px}#cards-left{left:151px}#cards-right{left:1030px;width:415px}
.card{--card-width:176px;width:var(--card-width);height:264px}.card+.card{margin-left:calc(min(0px,(100% - var(--count)*var(--card-width))/(var(--count) - 1)))}
#hand .card-title{font-size:min(21px,calc(114px / var(--name-length,7)))}.card-cost{font-size:28px}.card-info{font-size:17px;bottom:20px;right:16px;padding:7px}
#controls{width:203px;right:15px;bottom:18px}#skills{right:18px;width:198px;bottom:210px}#options{max-height:170px}#options button{font-size:23px}
#top-status #status{display:none}#oracle{font-size:22px}#history{bottom:8px}
@media(max-width:1000px) and (orientation:landscape){
 #board{background-size:100% 100%}#oracle-bar{left:520px;width:632px;height:60px;top:0}#oracle{font-size:24px}#top-status{right:85px;top:8px;font-size:24px}#settings-open{top:8px;width:55px;height:55px}
 .player{width:240px;height:210px}.portrait{width:265px;height:265px;left:-12px;bottom:0}
 #opponents>.player:nth-child(1){left:65px;top:245px}#opponents>.player:nth-child(2){left:252px;top:27px}#opponents>.player:nth-child(3){right:252px;top:27px}#opponents>.player:nth-child(4){right:65px;top:245px}
 .nameplate strong{font-size:25px}.nameplate{height:40px}.player-info{left:0;right:0}.faction{width:36px;height:36px}.light-symbol{width:28px;height:28px}
 .gem{width:30px;height:30px}.resource-row{bottom:43px}.equipment-strip{left:-52px;top:37px;gap:2px}.equipment-slot{width:48px;height:48px}.state{width:48px;height:48px}.state-icons{max-height:200px;bottom:43px;gap:3px}
 #self{left:724px;width:224px;height:214px;bottom:-5px}#self .portrait{width:267px;height:267px;left:-22px}#self .equipment-strip{left:-650px;top:26px}#self .equipment-slot{width:65px;height:65px}
 #altar{left:773px;top:28%;height:68px}.altar-card{width:48px;height:72px;left:calc(var(--i)*27px)}#flame{top:39%;font-size:26px}
 #action-card{left:637px;top:43%;width:165px;height:226px}#action-card .resolved-card{width:150px;height:225px}
 #notice{left:844px;top:44%;width:367px;max-height:193px;font-size:25px;padding:12px 15px}#prompt{font-size:inherit;width:auto;left:auto;top:auto}#action-card .card-title{font-size:17px}
 .hand-side{height:300px;bottom:12px}#cards-left{left:145px;width:510px}#cards-right{left:1030px;width:420px}.card{--card-width:200px;height:300px}#hand .card-title{font-size:min(25px,calc(130px / var(--name-length,7)))}.card-cost{font-size:33px}.card.selected{transform:translateY(-18px);z-index:10}.card-info{font-size:23px;opacity:1;padding:8px;bottom:23px;right:17px}
 #controls{width:207px;bottom:12px;right:8px}#options{max-height:185px;gap:5px}#options button,#options button:first-child{min-height:74px;font-size:26px}#skills{bottom:220px;right:8px;width:207px}#skills button{width:75px;height:75px}#skills button span{font-size:20px}
 #history{font-size:23px;left:6px;bottom:4px}#private-open{top:4px;font-size:24px;padding:7px}.turn-ring{width:58px;height:58px;bottom:49px;right:10px}
}
@media(max-width:1000px) and (orientation:landscape){#opponents>.player:nth-child(2),#opponents>.player:nth-child(3){top:43px}.portrait{height:245px;width:245px;left:-2px}#notice{top:43%;max-height:150px;font-size:24px}#oracle{font-size:22px}#oracle-bar{padding-right:45px;padding-left:35px}}
.equipment-slot[aria-label^="选择装备"]{outline:2px solid #ffd47e;border-radius:5px;filter:drop-shadow(0 0 5px #ffc44b)}
@media(max-width:1000px) and (orientation:landscape){#notice{font-size:23px;padding:9px 13px}#action-caption{font-size:21px}#notice>div+div:not(:empty){margin-top:4px}}
.ghost-label{bottom:0;left:-23px;writing-mode:vertical-rl;font-size:18px;white-space:nowrap;color:#dce3ee}
#oracle-bar{background:linear-gradient(100deg,#142330ee,#25323cea,#101c2cf2);border:1px solid #c5a366;border-radius:7px;box-shadow:inset 0 0 0 3px #171a22,0 3px 10px #0005;padding:8px 18px;gap:10px}#oracle{color:#f5e6bc;text-shadow:0 1px 2px #000;font-family:"Microsoft YaHei",sans-serif;font-size:21px}#oracle-open{width:42px;height:42px}#oracle p{overflow-wrap:anywhere}
@media(max-width:1000px) and (orientation:landscape){#oracle-bar{padding:5px 12px;gap:6px}#oracle{font-size:23px}}
@media(max-width:1000px) and (orientation:landscape){#opponents>.player:nth-child(1),#opponents>.player:nth-child(4){top:calc(100% - 530px)}}
@media(max-width:1000px) and (orientation:landscape){
 #self .equipment-strip{top:0}#notice{font-size:26px}#action-caption{font-size:23px}
 #hand .card-title{left:5%;top:14%;width:90%;height:12%;font-family:"Microsoft YaHei",sans-serif;font-size:min(27px,calc(176px / var(--name-length,7)));background:#101926e8;border-bottom:1px solid #c4a66a80;text-shadow:0 1px 1px #000}
}
#action-card .card-title{font-size:min(17px,calc(100px / var(--name-length,7)))}#dialog-content>.card-face .card-title{font-size:min(21px,calc(128px / var(--name-length,7)))}.altar-card .card-title{font-size:min(7px,calc(29px / var(--name-length,7)))}
#flame{background:linear-gradient(90deg,transparent,#152231c9 18%,#152231c9 82%,transparent);border-radius:4px}#notice{scrollbar-width:thin;scrollbar-color:#b99a65 #132131}
/* 2026-09-29：人物压住姓名条，资源栏融入场景，单一提示出口。 */
.portrait,#self .portrait{bottom:-18px}
.resource-row{background:none;padding:0;gap:3px;border-radius:0;filter:drop-shadow(0 1px 2px #0009)}
.gem{width:24px;height:24px}.meter{gap:1px}.gem img:first-child{opacity:.38;filter:grayscale(.5)}.gem img+img{opacity:.92;filter:saturate(.85)}
#notice{border-left:0;background:linear-gradient(90deg,#101b29e6,#142331c9);padding:12px 16px;font-size:22px;font-weight:400;line-height:1.5}
#notice[hidden]{display:none}#notice:has(#prompt:empty):has(#error:empty){display:none}
.played-skill{width:100px;height:100px;object-fit:contain;filter:drop-shadow(0 0 8px #d6a74880)}
@media(max-width:1000px) and (orientation:landscape){.gem{width:26px;height:26px}#notice{font-size:25px;padding:10px 13px}.portrait,#self .portrait{bottom:-18px}}
/* overflow:hidden 会因聚焦底部按钮偷偷滚动战场，裁掉顶部神启；clip 禁止这类隐藏滚动。 */
#board{overflow:clip}html,body{height:100%;overflow:clip}
#self{bottom:2px}
/* 2026-09-30：牌面信息随手牌缩放，双侧资源与明确的空装备槽。 */
#hand .card-title{left:23%;top:4.4%;width:71%;height:10%;background:#171c25ed;border:1px solid #a78a52;border-radius:3px;font-family:"Microsoft YaHei",sans-serif;font-size:min(23px,calc(124px / var(--name-length,7)));text-shadow:0 1px 2px #000}
#hand .card-cost{left:3%;top:2%;width:20%;height:13.33%;font-size:32px;display:flex;align-items:center;justify-content:center;border:2px solid #b39458;border-radius:50%;background:#202630;line-height:1}
#hand [data-color=red] .card-cost{background:#6b1623}
#hand .card-domain{left:3%;top:82%;width:21%;height:14%;filter:drop-shadow(0 1px 2px #000)}
.player>.mana{position:absolute;left:-25px;bottom:48px;z-index:4;filter:drop-shadow(0 1px 2px #0009)}
#opponents>.player:nth-child(3)>.mana,#opponents>.player:nth-child(4)>.mana{left:auto;right:-25px}
.resource-row{gap:0}.equipment-slot.empty img{opacity:.55}
.light-badge{position:absolute;left:2px;top:4px;width:40px;height:40px}.light-badge>img{position:absolute;inset:0;width:100%;height:100%}.light-badge>.light-symbol{inset:4px;width:32px;height:32px;filter:drop-shadow(0 0 3px #ffa830)}
.nameplate strong{padding:0 43px}.hand-count{width:37px;height:38px;right:0;bottom:-37px;display:block}.hand-count img{width:100%;height:100%;opacity:.75}.hand-count b{position:absolute;inset:0;display:grid;place-items:center;font-size:23px;color:#fff8dc;text-shadow:0 1px 3px #000,0 0 4px #000}
.warded:before{display:none}
#self{left:676px;width:320px;height:300px;bottom:2px}#self .portrait{width:350px;height:350px;left:-15px;bottom:-18px}#self .resource-row{left:auto;right:5px;bottom:48px}#self>.player>.mana{left:5px;bottom:48px}
#cards-left{left:150px;width:460px}#cards-right{left:1040px;width:400px}.hand-side{display:block}.hand-side>.card{position:absolute;bottom:0;margin:0!important;z-index:var(--stack,0)}.hand-side>.card:hover,.hand-side>.card:focus-within,.hand-side>.card.selected{z-index:30}
#options button,#options button:first-child{border:1px solid #c5a36b;background:linear-gradient(#514332,#221c18);border-radius:5px;min-height:64px;font:700 23px "Microsoft YaHei",sans-serif}
#action-card{flex-direction:row;align-items:center}#action-card .resolved-card{position:absolute;left:calc(var(--fan,0)*24px);top:0}#oracle-bar{z-index:20;transform-origin:center}
.scout-cards{display:flex;gap:10px;flex-wrap:wrap}.scout-cards>.card-face{position:relative;width:160px;height:240px;flex:none}.scout-cards .card-title{font-size:14px}
@media(max-width:1000px) and (orientation:landscape){
 #hand .card-title{font-size:min(26px,calc(140px / var(--name-length,7)))}#hand .card-cost{font-size:36px}
 #self{left:716px;width:240px;height:230px}#self .portrait{width:265px;height:265px;left:-12px;bottom:-18px}
 #cards-left{left:145px;width:495px}#cards-right{left:1030px;width:420px}
 .light-badge{width:36px;height:36px}.light-badge>.light-symbol{width:28px;height:28px}.nameplate strong{padding:0 38px}
 #options button,#options button:first-child{min-height:74px;font-size:26px}
}
@media(prefers-reduced-motion:reduce){.card{transition:none}}
/* 蓝条位于装备内侧，两者不占同一列。 */
.player>.mana{left:3px}#opponents>.player:nth-child(3)>.mana,#opponents>.player:nth-child(4)>.mana{right:3px}
.card-cost{display:flex;align-items:center;justify-content:center;line-height:1}.scout-cards .card-cost{font-size:23px}

/* 手牌数锚定角色，不随幽魂移除生命条改变位置。 */
#autoplay-settings{margin:16px 0;padding:12px;border:1px solid #ad9064;border-radius:8px}#autoplay-settings label{display:block;margin:8px 0}#autoplay-settings input[type=checkbox]{width:auto}#autoplay-timeout{font:inherit;color:inherit;background:#17232b;border:1px solid #ad9064;padding:4px;border-radius:4px}#autoplay-status{font-size:14px;line-height:1.6;margin:8px 0 0}#autoplay-return,#decision-timer{position:absolute;left:25px;bottom:74px;z-index:25}#decision-timer{font-size:17px;color:#ffe8b8;background:#16212be6;border:1px solid #ad9064;border-radius:5px;padding:8px 12px}#autoplay-return[hidden],#decision-timer[hidden]{display:none}
#music-settings{margin:16px 0;padding:12px;border:1px solid #ad9064;border-radius:8px}#music-settings label{display:block;margin:8px 0}#music-settings input[type=checkbox]{width:auto}#music-settings input[type=range]{width:100%;padding:0;accent-color:#d7b579}#music-preview{margin-top:8px}
#sound-settings{margin:16px 0;padding:12px;border:1px solid #ad9064;border-radius:8px}#sound-settings label{display:block;margin:8px 0}#sound-settings input[type=checkbox]{width:auto}#sound-settings input[type=range]{width:100%;padding:0;accent-color:#d7b579}#sound-preview{margin-top:8px}
.player>.hand-count{left:calc(100% - 19px);right:auto;bottom:6px;z-index:4}
#opponents>.player:nth-child(3)>.hand-count,#opponents>.player:nth-child(4)>.hand-count{left:auto;right:calc(100% - 19px)}
