@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#091217;--panel:#101c22;--gold:#c9af79;--muted:#899a9e;--ink:#f1eee5;--teal:#65d8cc;--wine:#d477a4;font-family:'Noto Sans JP',sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 44% 0,#25404b70,transparent 58%),repeating-linear-gradient(125deg,transparent 0 100px,#b19a6110 101px,transparent 102px 200px),linear-gradient(110deg,#080f13,#101e26 50%,#180f1b);font-size:13px}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:linear-gradient(transparent 75%,#05090d);z-index:-1}.moon{position:absolute;top:80px;left:calc(50% - 140px);width:280px;height:280px;border:1px solid #c0c6bd18;border-radius:50%;box-shadow:0 0 100px #a2ced310,inset 0 0 70px #a8c8ca08;pointer-events:none}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--teal)}button{color:var(--ink);background:#142129;border:1px solid #9f8c614f;padding:10px 16px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}button:hover:not(:disabled){border-color:var(--gold);background:#213039}button:disabled{opacity:.38;cursor:default}a{color:inherit}header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid #baaa752e;background:#060e13a6;position:relative;z-index:1}.brand{text-decoration:none;font-family:Georgia,serif;font-size:32px;letter-spacing:5px;line-height:1}.brand span{display:block;font-size:9px;letter-spacing:5.5px;text-align:center;margin-top:7px;color:var(--gold)}.edition{font-family:'Noto Serif JP',serif;letter-spacing:3px;color:#d2ccb9}.edition span{display:block;text-align:center;font-family:Georgia,serif;font-size:8px;margin-top:6px;color:var(--muted)}nav{display:flex;gap:12px}nav button{background:transparent;font-size:12px;padding:9px 13px}nav button span{color:var(--gold);margin-left:12px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2.6px;color:var(--gold)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Noto Serif JP',serif;font-weight:500}.lobby{max-width:1100px;margin:auto;padding:36px 24px 20px;text-align:center;position:relative}.lobby h1{font-size:34px;letter-spacing:5px;margin:10px 0}.intro{font-size:12px;color:var(--muted);letter-spacing:1px}.leader-choices{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0 24px}.leader-choice{height:440px;position:relative;overflow:hidden;text-align:left;padding:0;background:radial-gradient(ellipse at 70% 20%,#265b6260,transparent 70%),#0d1b20;border-color:#527b7650}.leader-choice.faction-1{background:radial-gradient(ellipse at 70% 20%,#78345270,transparent 70%),#1a1320;border-color:#87496760}.leader-choice img{position:absolute;right:-3%;top:0;width:78%;height:100%;object-fit:contain;object-position:center top;filter:drop-shadow(0 0 30px #0008);transition:transform .5s}.leader-choice:hover img{transform:scale(1.025)}.leader-choice:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b171b99,transparent 70%),linear-gradient(0deg,#081217 0%,#081217e0 18%,transparent 67%);pointer-events:none}.leader-choice.chosen{border:1px solid var(--teal);box-shadow:0 0 24px #63d8cc12,inset 0 0 0 4px #64d7c91a}.leader-choice.faction-1.chosen{border-color:var(--wine)}.leader-copy{position:absolute;bottom:57px;left:26px;right:26px;z-index:1}.leader-copy h2{font-size:42px;letter-spacing:6px;margin:10px 0}.leader-copy p{font-size:12px;max-width:340px;line-height:1.9;color:#c3cbca}.power-copy{border-top:1px solid #bbaf7838;margin-top:17px;padding-top:13px;display:flex;gap:14px;align-items:baseline}.power-copy b{color:var(--gold);white-space:nowrap;font-size:12px}.power-copy span{color:#aebdbb;font-size:11px;line-height:1.7}.choice-mark{position:absolute;bottom:0;left:0;right:0;z-index:1;text-align:center;padding:11px;background:#6ed8c90b;color:var(--teal);font-size:11px;letter-spacing:2px;border-top:1px solid #b0bd9d25}.faction-1 .choice-mark{color:#e4abc8}.lobby-bottom{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:0 8px}.lobby-bottom b{font-weight:500;font-size:13px}.lobby-bottom div>span{display:block;color:var(--muted);font-size:11px;margin-top:7px}.primary{background:linear-gradient(100deg,#ae9055,#dcc490);color:#141b1d;border-color:#dfc999;font-weight:700;padding:14px 24px}.primary:hover:not(:disabled){background:#dec994;color:#101717}.start{width:320px;display:flex;justify-content:space-between;letter-spacing:2px}.lobby-foot{margin-top:27px;font-size:10px;letter-spacing:3px;color:#788a8b}.arena{max-width:1600px;margin:auto;display:grid;grid-template-columns:210px minmax(480px,1fr) 210px;gap:24px;padding:24px 30px;position:relative}.left-rail{padding-top:14px}.portrait{position:relative;overflow:hidden;width:100%;height:238px;padding:0;text-align:left;background:radial-gradient(ellipse at 50% 10%,#33595e,#0d1a1d);border-color:#53948870}.portrait.faction-1{background:radial-gradient(ellipse at 50% 10%,#6e345d,#1b1520);border-color:#ab648c70}.portrait>img{width:100%;height:100%;object-fit:cover;object-position:50% 10%}.portrait-shade{position:absolute;inset:0;background:linear-gradient(transparent 25%,#09151dbb 55%,#09151d 100%)}.portrait-info{position:absolute;bottom:13px;left:16px;right:16px}.portrait-info .eyebrow{font-size:8px}.portrait-info h2{font-size:24px;margin:4px 0;letter-spacing:3px}.hp{font-family:Georgia,serif;font-size:35px;color:#b9efe0;line-height:1}.hp small{font-family:inherit;font-size:12px;letter-spacing:1px}.hp>span{color:#99aaa3;font-size:12px}.hp-track{height:3px;background:#ffffff20;margin:8px 0}.hp-track i{display:block;height:100%;background:#70d7bc}.faction-1 .hp{color:#edb2d0}.faction-1 .hp-track i{background:#d378a6}.mana{color:#79c8da;font-size:12px}.mana b{font-size:18px}.mana small{margin-left:5px;font-size:9px}.deck-info{display:flex;justify-content:space-between;color:#8b9b9d;font-size:10px;padding:10px 3px}.deck-info b{color:#d6d8d0;margin-left:6px;font-weight:500}.versus{display:flex;align-items:center;justify-content:space-around;height:59px;color:#ae9569}.versus span{font-family:Georgia,serif;font-size:11px;letter-spacing:3px}.table{min-width:0}.table-top{height:35px;display:flex;justify-content:space-between;align-items:center}.enemy-hand{display:flex;height:31px;justify-content:center;margin-right:10px}.enemy-hand i{font:13px Georgia,serif;color:var(--gold);display:grid;place-items:center;width:24px;border:1px solid #b79b675c;background:linear-gradient(135deg,#1a2634,#2d1f32);transform:rotate(8deg);margin-left:-4px}.formation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,109px);gap:8px;padding:11px 14px;border:1px solid #5d9f982b;background:linear-gradient(100deg,#63b7a707,#63b7a701);position:relative}.formation.faction-1{border-color:#bb6b942b;background:linear-gradient(100deg,#bc669507,#bc669501)}.slot{position:relative;min-width:0;padding:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #70b8ad26;background:linear-gradient(135deg,#49796c07,#030b1170);color:#678c86}.faction-1 .slot{border-color:#ba84a125;color:#8c6b82}.slot.empty:after{position:absolute;inset:5px;content:'';border:1px solid #bca7740e;pointer-events:none}.slot.empty>span:last-child{font-size:9px;letter-spacing:2px;opacity:.65}.slot-ornament{font-size:23px;font-family:Georgia,serif;margin-bottom:6px;opacity:.5}.slot.occupied{background:radial-gradient(ellipse at center,#334b48,#101921)}.card-art{display:block;object-fit:contain;width:100%;height:78%;object-position:center 35%;filter:drop-shadow(0 3px 5px #0006)}.slot .card-art{position:absolute;inset:-8px 0 0;height:110%;object-fit:contain}.card-bottom{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#071015 19%);padding:15px 5px 19px;text-align:center}.card-bottom>b{display:block;font-size:11px;font-weight:500;color:#f2e6cf}.slot .card-bottom{padding:20px 24px 7px}.slot .card-bottom>b{font-size:10px;text-shadow:0 1px 3px #000}.slot .card-text{display:none}.card-text{display:block;font-size:9px;line-height:1.55;color:#c1ccc9;margin-top:5px}.cost{position:absolute;top:5px;left:5px;z-index:2;width:24px;height:28px;display:grid;place-items:center;background:#163b4b;border:1px solid #90d2d3;color:#e1fcf7;font:bold 19px Georgia,serif;clip-path:polygon(50% 0,100% 20%,100% 80%,50% 100%,0 80%,0 20%)}.slot .cost{width:19px;height:22px;font-size:14px;opacity:.85}.stat{position:absolute;bottom:4px;z-index:2;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font:bold 18px Georgia,serif;border:1px solid #beae89}.atk{left:4px;background:#6a2832;color:#ffe4d1}.health{right:4px;background:#175446;color:#d8ffe4}.unit-tags{position:absolute;top:4px;right:5px;font-size:8px;color:#ebdca9;text-shadow:0 1px 2px #000;background:#09111980;padding:1px 3px}.ready{box-shadow:inset 0 -2px var(--teal)}.targetable{border-color:#f4d99c!important;box-shadow:0 0 15px #e1bd694f,inset 0 0 15px #dfc66a1a!important;cursor:crosshair;animation:glow 1.8s infinite}.selected{border-color:var(--teal)!important;box-shadow:0 0 13px #57e4d447!important}.midline{display:flex;align-items:center;gap:14px;height:30px}.midline span{height:1px;flex:1;background:linear-gradient(90deg,transparent,#ad966b70,transparent)}.midline b{font:9px Georgia,serif;letter-spacing:3px;color:var(--gold)}.hand-heading{display:flex;justify-content:space-between;padding:14px 2px 9px}.hand-heading>span:last-child{font-size:10px;color:#7db9c4}.hand{display:flex;gap:6px;overflow-x:auto;padding:4px 3px 12px;min-height:185px;align-items:flex-start;scrollbar-width:thin}.card{position:relative;overflow:hidden;height:175px;width:118px;flex:0 0 118px;background:radial-gradient(ellipse at 50% 20%,#354a4a,#0a141b 70%);border:1px solid #a78d535d;border-radius:5px;padding:0;text-align:left}.card:before{content:'';position:absolute;inset:3px;border:1px solid #b69c5b27;border-radius:3px;pointer-events:none;z-index:2}.hand-card{transition:transform .2s,box-shadow .2s}.hand-card:hover:not(:disabled){transform:translateY(-4px)}.hand-card .card-art{height:65%}.hand-card .card-bottom{min-height:81px}.hand-card.playable{border-color:#63c4b4a0}.hand-card.exchange{border-color:var(--gold)}.exchange-label{position:absolute;inset:0;display:grid;place-items:center;background:#0008;color:#f5d898;font-size:18px;letter-spacing:5px}.right-rail{padding-top:35px}.turn-status{border-top:1px solid #c5aa7659;padding-top:20px;min-height:145px}.turn-status h3{font-size:19px;letter-spacing:1px;margin:9px 0}.turn-status p{font-size:11px;line-height:1.9;color:#a5b6b8}.cancel{margin-top:9px;padding:4px 8px;font-size:10px;color:var(--teal);border-color:#46897e50}.turn-end{width:100%;padding:19px 15px;display:flex;justify-content:space-between;align-items:center;border-color:#bca56b;background:linear-gradient(120deg,#305555,#1b3036);font-size:16px;letter-spacing:2px}.power{width:100%;margin-top:17px;padding:17px 14px;text-align:left;background:#07121980}.power .eyebrow{font-size:7px;letter-spacing:1.4px}.power>b{display:inline-block;font-family:'Noto Serif JP',serif;font-size:23px;margin:12px 0}.charge{float:right;margin-top:14px;letter-spacing:3px}.charge i{font-style:normal;color:#3e4946}.charge i.filled{color:#e1c180;text-shadow:0 0 9px #cbb06860}.power small{display:block;font-size:10px;line-height:1.9;color:#aab6b4}.inspector{margin-top:22px;border-top:1px solid #b29a6633;padding-top:15px}.inspector>span{font:9px Georgia,serif;letter-spacing:2px;color:var(--gold)}.inspector>b{color:var(--gold);font-size:12px}.inspector p{font-size:10px;line-height:1.9;color:#819694;margin-top:8px}.history{margin-top:18px;font-size:11px;color:#a7b6b3}.history summary{cursor:pointer;padding:8px 0}.history ol{padding-left:16px;max-height:120px;overflow:auto;font-size:10px;line-height:1.8}.subtle{border:0;background:transparent;font-size:10px;color:#9c9b92;padding:10px 0}.result-overlay{position:fixed;inset:0;background:#02080dcc;backdrop-filter:blur(7px);z-index:10;display:grid;place-items:center}.result{width:min(480px,90vw);text-align:center;border:1px solid #c4ac6d70;padding:55px 35px;background:radial-gradient(ellipse at 50% 0,#314847,#0e171d 80%);box-shadow:0 0 100px #000}.result h1{font-family:Georgia,serif;font-size:52px;letter-spacing:7px;color:#e5c78e;margin:24px 0 12px}.result p{color:#b5c6c3;font-size:12px;margin-bottom:30px}.result button{display:block;margin:12px auto;width:100%}#notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:90vw;z-index:50;background:#1a2c31;border:1px solid #b5a47790;padding:13px 23px;box-shadow:0 6px 30px #0008;font-size:12px;pointer-events:none}#notice:empty{display:none}dialog{color:var(--ink);background:#101c22;border:1px solid #a891605f;width:min(1050px,95vw);max-height:90vh;padding:0;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#02080bd9;backdrop-filter:blur(5px)}.modal-heading{display:flex;justify-content:space-between;align-items:center;padding:23px 28px;border-bottom:1px solid #c0a46b35}.modal-heading h2{font-size:23px;margin-top:7px}.modal-heading h2 small{font-size:15px;color:var(--gold);margin-left:14px}.modal-heading>button{border:0;background:transparent;font-size:27px;padding:0 8px}.editor-toolbar{display:flex;gap:18px;padding:18px 28px;align-items:end;border-bottom:1px solid #b6a87820}.editor-toolbar label{display:flex;flex-direction:column;gap:5px;color:#b8c3bf;font-size:10px}.editor-toolbar input,.editor-toolbar select{background:#071219;border:1px solid #6b7b735e;color:var(--ink);padding:9px 12px;border-radius:0}.editor-toolbar input{width:260px}.editor-toolbar strong{margin-left:auto;padding-bottom:8px;font-size:20px;font-family:Georgia,serif}.valid{color:var(--teal)}.invalid{color:#e1b38a}.editor-body{display:grid;grid-template-columns:minmax(0,1fr) 260px;max-height:57vh;overflow:auto}.collection{padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:18px 12px;align-content:start}.collection .card{width:100%;height:190px}.collection .card-art{height:64%}.collection .card-bottom{min-height:84px}.collection .card-text{font-size:10px}.adjust{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.adjust button{padding:4px 12px}.adjust b{font-size:10px;color:#b6c2bc;font-weight:400}.deck-list{border-left:1px solid #bda57424;padding:20px 17px;background:#080f1560}.deck-list h3{font-size:14px}.curve{display:flex;height:100px;gap:9px;align-items:end;margin:18px 0}.curve>div{flex:1;display:flex;align-items:center;flex-direction:column;justify-content:end;max-height:100%;font-size:8px;color:#bfc7bf}.curve i{display:block;max-height:65px;width:100%;background:#6baaa18a;margin:4px 0}.deck-row{display:flex;align-items:center;width:100%;font-size:10px;padding:8px 0;gap:8px;border:0;border-bottom:1px solid #c4b07815;background:none;text-align:left}.deck-row>span{color:#87d0d3;width:17px}.deck-row>b{margin-left:auto;color:var(--gold)}.validation{font-size:10px;line-height:1.9;color:#d3bd8b;margin-top:18px}.modal-footer{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-top:1px solid #c0a46b35;gap:12px}.modal-footer>span{font-size:10px;color:var(--muted)}.rules{padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.rules b{font-family:'Noto Serif JP',serif;color:var(--gold);font-size:16px}.rules p{font-size:12px;line-height:2;color:#b4c1be;margin-top:10px}.confirm{text-align:center;padding:40px}.confirm p{margin:20px 0}.confirm button{margin:10px}@keyframes glow{50%{box-shadow:0 0 20px #e1bd6980,inset 0 0 15px #dfc66a30}}@media(min-width:1500px){.formation{grid-template-rows:repeat(2,122px)}.portrait{height:263px}.card{width:130px;flex-basis:130px;height:187px}}@media(max-width:1150px){header{padding:0 24px;height:74px}.arena{grid-template-columns:160px minmax(390px,1fr) 165px;gap:14px;padding:16px}.portrait{height:216px}.portrait-info{left:12px;right:12px}.formation{padding:8px;grid-template-rows:repeat(2,100px);gap:6px}.right-rail{padding-top:35px}.turn-status h3{font-size:16px}.power{padding:13px 10px}.hand .card{width:108px;flex-basis:108px;height:168px}.edition{font-size:11px}.leader-choice{height:400px}}@media(max-width:850px){.edition{display:none}.arena{grid-template-columns:126px minmax(330px,1fr);gap:12px;padding:12px}.right-rail{grid-column:1/-1;display:grid;grid-template-columns:1fr 150px 180px;gap:12px;padding:0}.turn-status{min-height:0;padding-top:10px}.turn-status h3{font-size:15px;margin:6px 0}.turn-status p{font-size:10px}.turn-end{align-self:start;font-size:13px;margin-top:10px}.power{margin:0;padding:10px}.power b{font-size:18px;margin:5px 0}.power small{font-size:9px}.power .charge{margin-top:7px}.inspector{display:none}.history{margin:0}.subtle{justify-self:start}.portrait{height:205px}.portrait-info h2{font-size:21px}.portrait-info .eyebrow{font-size:6px;letter-spacing:1px}.formation{grid-template-rows:repeat(2,95px);padding:7px;gap:5px}.slot .card-bottom>b{font-size:8px}.hand .card{width:105px;flex-basis:105px;height:165px}.leader-choices{gap:14px}.leader-copy{left:17px;right:17px}.leader-choice{height:390px}.power-copy{display:block}.power-copy span{display:block;margin-top:5px}.editor-body{grid-template-columns:1fr 210px}.collection{grid-template-columns:repeat(auto-fill,minmax(115px,1fr));padding:14px}}@media(max-width:560px){header{height:67px;padding:0 14px}.brand{font-size:25px;letter-spacing:3px}.brand span{font-size:7px;letter-spacing:4px}nav{gap:6px}nav button{font-size:10px;padding:7px 9px}nav button span{display:none}.lobby{padding:26px 14px}.lobby h1{font-size:23px;letter-spacing:2px}.intro{font-size:10px}.leader-choices{gap:10px;margin:24px 0}.leader-choice{height:340px}.leader-choice img{width:120%;right:-22%;height:83%}.leader-copy{left:12px;right:12px;bottom:45px}.leader-copy .eyebrow{font-size:7px;letter-spacing:1px}.leader-copy h2{font-size:28px;margin:6px 0}.leader-copy p{font-size:9px;line-height:1.65}.power-copy{margin-top:10px;padding-top:8px}.power-copy b{font-size:10px}.power-copy span{font-size:9px}.choice-mark{font-size:9px;padding:10px 0;letter-spacing:1px}.lobby-bottom{display:block}.lobby-bottom>div{text-align:center;margin-bottom:18px}.start{width:100%}.lobby-foot{font-size:9px;letter-spacing:1px}.arena{grid-template-columns:80px minmax(0,1fr);gap:8px;padding:8px;min-width:350px}.left-rail{padding-top:35px}.portrait{height:187px}.portrait img{object-position:50% 0}.portrait-info{left:6px;right:6px;bottom:8px}.portrait-info h2{font-size:17px;letter-spacing:1px}.portrait-info .eyebrow{font-size:6px;letter-spacing:0}.hp{font-size:29px}.hp small{font-size:8px}.hp>span{font-size:8px}.mana{font-size:9px}.mana b{font-size:15px}.mana small{display:none}.deck-info{font-size:8px;display:block;padding:5px 0}.deck-info span{display:block}.versus{height:30px;font-size:9px}.versus span{font-size:8px;letter-spacing:0}.table-top .eyebrow{font-size:7px;letter-spacing:1px}.enemy-hand i{width:16px;font-size:10px}.formation{grid-template-rows:repeat(2,90px);padding:5px;gap:4px}.slot .card-bottom{padding:20px 1px 26px}.slot .stat{width:21px;height:21px;font-size:15px}.slot .cost{width:17px;height:20px;font-size:12px;left:2px;top:2px}.unit-tags{font-size:6px;right:1px;top:24px}.slot .card-bottom>b{font-size:8px;line-height:1.2}.slot-ornament{font-size:17px}.slot.empty>span:last-child{font-size:7px;letter-spacing:0}.midline b{font-size:7px;letter-spacing:2px}.midline{height:25px}.hand-heading .eyebrow{font-size:7px;letter-spacing:1px}.hand-heading>span:last-child{font-size:8px}.hand .card{width:105px;flex-basis:105px;height:165px}.right-rail{grid-template-columns:1fr 130px;gap:8px}.right-rail .power{grid-column:1/-1;display:grid;grid-template-columns:1fr 70px 1.5fr;align-items:center;gap:8px}.power .eyebrow{grid-column:1/-1}.power .charge{float:none;margin:0}.power small{font-size:9px}.power>b{margin:0}.turn-status{padding-top:8px}.turn-status .eyebrow{font-size:7px}.turn-end{font-size:12px;padding:16px 10px}.modal-heading{padding:16px}.modal-heading h2{font-size:19px}.editor-toolbar{padding:12px;gap:8px;flex-wrap:wrap}.editor-toolbar input{width:160px}.editor-toolbar select{width:93px}.editor-toolbar strong{font-size:16px;padding-bottom:5px}.editor-body{grid-template-columns:1fr;max-height:56vh}.collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.collection .card{height:207px}.collection .card-bottom{min-height:88px}.deck-list{border-left:0;border-top:1px solid #bda57424}.modal-footer{padding:12px;flex-wrap:wrap}.modal-footer>span{order:3;width:100%;text-align:center}.modal-footer button{font-size:11px;padding:10px}.rules{grid-template-columns:1fr;padding:20px;gap:22px}.result h1{font-size:40px;letter-spacing:4px}.confirm{padding:28px 16px}.confirm h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
body{background-image:linear-gradient(90deg,#061015e8,#0a1622bd 50%,#160e1be8),url('./assets/backgrounds/night-city.webp');background-size:cover;background-attachment:fixed;background-position:center}
.lobby{max-width:1260px;padding-top:25px}.leader-choices{grid-template-columns:repeat(3,1fr);gap:16px;margin:23px 0 20px}.leader-choice{height:276px}.leader-choice img{height:112%;width:78%;right:-5%;top:-3%}.leader-copy{left:20px;right:20px;bottom:43px}.leader-copy h2{font-size:31px;margin:6px 0}.leader-copy p{font-size:10px;max-width:240px}.leader-copy .eyebrow{font-size:8px}.power-copy{margin-top:10px;padding-top:8px;gap:9px;display:block}.power-copy b{font-size:10px}.power-copy span{font-size:9px;display:block;margin-top:3px;max-width:290px}.choice-mark{padding:9px;font-size:9px}.lobby h1{font-size:29px}.lobby-foot{margin-top:18px}
@media(max-width:850px){.leader-choices{grid-template-columns:repeat(2,1fr)}.leader-choice{height:275px}.leader-copy{left:14px;right:14px}.leader-copy h2{font-size:28px}}
@media(max-width:560px){.leader-choice{height:285px}.leader-choice img{height:90%;width:120%;right:-20%;top:0}.leader-copy{left:10px;right:10px;bottom:39px}.leader-copy h2{font-size:25px}.leader-copy p{font-size:9px}.power-copy span{font-size:8px}.leader-copy .eyebrow{font-size:7px}.lobby h1{font-size:22px}.leader-choices{gap:10px}}

.weapon-stats{font-size:12px;color:#e3bd89;margin:4px 0}.weapon-stats small{font-size:9px;margin-left:5px}.weapon-action{width:100%;margin-top:10px;font-size:12px;color:#e5c18d;border-color:#b59666}.weapon-action span{display:block;font-size:9px;margin-top:4px}.choice-overlay{position:fixed;inset:0;z-index:15;background:#030b10e8;backdrop-filter:blur(8px);display:grid;place-items:center}.choice-overlay>section{max-width:95vw;border:1px solid #b79b6680;background:radial-gradient(ellipse at 50% 0,#304642,#0d171e 80%);padding:35px;text-align:center}.choice-overlay h2{font-size:29px;margin:15px 0}.choice-overlay p{font-size:12px;color:#b4c7c3;line-height:1.8}.choice-cards{display:flex;justify-content:center;gap:18px;margin-top:25px;overflow:auto}.choice-cards .card{width:160px;flex-basis:160px;height:240px}.choice-cards .card-text{font-size:11px}.choice-cards .card-bottom{min-height:100px}.choice-cards .card-art{height:65%}.choice-cards .card:hover{border-color:var(--gold);transform:translateY(-4px)}@media(max-width:560px){.choice-overlay>section{padding:24px 12px}.choice-cards{gap:8px}.choice-cards .card{width:100px;flex-basis:100px;height:190px}.choice-cards .card-text{font-size:9px}.weapon-action{grid-column:1/-1}.choice-overlay p{font-size:10px}}
/* Readable play surfaces: retain card size and scroll the hand. */
.card{background:radial-gradient(ellipse at 50% 20%,#496267,#172930 75%);border-color:#b79a657d}.card-bottom{background:linear-gradient(transparent,#102127 15%)}.card-text{color:#e0e7e2;font-size:12px;line-height:1.5}.card-bottom>b{font-size:12px}.hand .card{width:140px;flex-basis:140px;height:221px}.hand .card-art{height:60%}.hand .card-bottom{min-height:110px;padding-bottom:25px}.hand{min-height:235px}.turn-status p,.inspector p,.power small{font-size:12px;color:#c2d1cd}.inspector>span,.hand-heading .eyebrow{font-size:10px}.turn-status{min-height:160px}.power .eyebrow{display:block;font-size:9px}.power>b{margin:9px 0}.power small{line-height:1.7}.subtle{font-size:12px}.history{font-size:12px}.history ol{font-size:12px}.formation .occupied{background:radial-gradient(ellipse at 50% 25%,#466060,#122129)}.slot .card-bottom>b{font-size:12px}.slot .card-bottom{padding-bottom:8px}.slot .stat{width:27px;height:27px;font-size:19px}.unit-tags{font-size:10px}.slot.empty>span:last-child{font-size:10px;color:#9cbab2}.formation{grid-template-rows:repeat(2,102px)}
dialog[open]{display:flex;flex-direction:column}.modal-heading,.editor-toolbar,.modal-footer{flex-shrink:0}.editor-body{flex:1;min-height:0;max-height:calc(90vh - 240px)}.rules{overflow:auto;min-height:0}.collection{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.collection .card{height:228px}.collection .card-art{height:58%}.collection .card-bottom{min-height:116px}.collection .card-text{font-size:12px}.adjust b,.deck-row,.validation,.modal-footer>span{font-size:12px}.choice-cards .card{height:260px}.choice-cards .card-bottom{min-height:120px}.choice-cards .card-text{font-size:12px}
@media(max-width:850px){.hand .card{width:140px;flex-basis:140px;height:221px}.right-rail{grid-template-columns:1fr 150px}.right-rail .power{grid-column:1/-1}.turn-status{min-height:125px}.slot .card-bottom>b{font-size:10px}.formation{grid-template-rows:repeat(2,95px)}.collection{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
@media(max-width:560px){.hand .card{width:140px;flex-basis:140px;height:221px}.slot .card-bottom{padding:20px 2px 28px}.slot .card-bottom>b{font-size:9px}.slot .stat{width:22px;height:22px;font-size:16px}.unit-tags{font-size:8px}.turn-status p,.power small{font-size:12px}.right-rail .power{display:block}.power .charge{float:right}.collection{grid-template-columns:repeat(2,minmax(0,1fr))}.collection .card{height:245px}.collection .card-bottom{min-height:130px}.modal-footer{padding:10px}.modal-footer>span{font-size:10px}.editor-body{max-height:calc(90vh - 250px)}.choice-cards{justify-content:flex-start;max-width:85vw}.choice-cards .card{width:140px;flex-basis:140px;height:240px}}
.power:disabled{opacity:.76}.weapon-action:disabled{opacity:.65}.arena{padding-top:16px;padding-bottom:16px}.formation{grid-template-rows:repeat(2,94px)}@media(max-width:1150px){.formation{grid-template-rows:repeat(2,90px)}}@media(max-width:560px){.formation{grid-template-rows:repeat(2,95px)}.arena{padding:8px}}
@media(max-width:560px){.hp{white-space:nowrap;font-size:27px}.hp small{font-size:7px}.hp>span{font-size:7px}}
.sound-settings{padding:28px;max-width:620px;width:100%;align-self:center;display:flex;flex-direction:column;gap:20px;font-size:14px;overflow:auto}.sound-toggle{display:flex;align-items:center;gap:12px}.sound-toggle input{width:20px;height:20px;accent-color:var(--teal)}.sound-settings output{float:right;color:var(--gold)}.sound-settings input[type=range]{width:100%;accent-color:var(--teal);height:28px}.sound-settings>button{align-self:start}.sound-settings>p{font-size:12px;color:#b5c9c2;line-height:1.8}.sound-credit{border-top:1px solid #b8a77950;padding-top:22px;line-height:2;color:#d2dacd}.sound-credit a{color:#dec18b;text-underline-offset:3px}.sound-credit small{display:block;color:#92a9a3;font-size:11px}@media(max-width:560px){nav{gap:4px}nav button{padding:7px;font-size:9px}.brand{font-size:22px}.sound-settings{padding:22px;font-size:13px}}
/* One fixed frame: art, two-line name, rules, and stats never move with text. */
.hand-entry,.choice-entry{position:relative;flex:0 0 148px;width:148px;min-width:148px}
.card,.hand .card,.collection .card,.choice-cards .card{display:block;position:relative;width:148px;height:252px;min-height:252px;max-height:252px;flex:0 0 148px;border:1px solid #c5a971;border-radius:9px 9px 6px 6px;background:linear-gradient(135deg,#344b51,#14272f 60%,#203139);isolation:isolate;overflow:hidden}
.collection .card{width:100%}.collection{grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}
.card .card-picture{position:absolute;top:4px;left:4px;right:4px;height:106px;display:block;overflow:hidden;border:1px solid #b8aa7240;border-radius:6px 6px 28px 28px;background:radial-gradient(ellipse at 50% 70%,#68909450,transparent 70%)}
.card .card-picture .card-art{position:static;width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 4px 5px #02090c88)}
.card .card-bottom{position:absolute;top:110px;left:5px;right:5px;bottom:auto;height:108px;min-height:0;padding:0;background:#12242d;display:grid;grid-template-rows:40px 68px}
.card .card-bottom>b{height:40px;max-height:40px;margin:0;padding:3px 4px;color:#f1e6cd;font-family:'Noto Serif JP',serif;font-size:12px;font-weight:600;line-height:17px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-align:center;background:linear-gradient(90deg,#34434a,#1e3037,#34434a);border-top:1px solid #c0a16c80;border-bottom:1px solid #a8906450}
.card .card-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:68px;max-height:68px;margin:0;padding:6px 7px 8px;font-family:'Noto Sans JP',sans-serif;font-size:12px;line-height:18px;text-align:left;color:#dce7e3;background:linear-gradient(#142830,#10222a)}
.card .card-kind{position:absolute;bottom:9px;left:34px;right:34px;text-align:center;font:8px Georgia,serif;letter-spacing:2px;color:#b9a677;line-height:17px}
.card .stat{bottom:5px;width:27px;height:27px;font-size:19px}.card .atk{left:6px}.card .health{right:6px}.card .cost{top:5px;left:6px;width:27px;height:32px;font-size:22px}
.card-info{display:block;width:100%;padding:5px 6px;min-height:28px;margin-top:4px;font-size:10px;line-height:16px;color:#c9b583;background:#0a171e;border:1px solid #a9976430;letter-spacing:1px}
.hand{align-items:flex-start;min-height:296px;gap:9px}.hand-card:hover:not(:disabled){transform:translateY(-2px)}.collection-item{min-width:0}.choice-entry{flex-basis:160px;width:160px;min-width:160px}.choice-entry .card{width:160px}.choice-cards{align-items:flex-start}
.board-cell{position:relative;min-width:0;min-height:0}.board-cell .slot{width:100%;height:100%;min-height:0}.board-cell .card-info{position:absolute;right:3px;top:3px;z-index:4;width:30px;min-height:22px;line-height:14px;margin:0;padding:3px 0;font-size:8px;letter-spacing:0;background:#0a171ed9;border-color:#ab956044}
.slot .card-picture{position:absolute;top:0;left:20px;right:20px;height:calc(100% - 27px);overflow:hidden;display:block}.slot .card-picture .card-art{position:static;width:100%;height:100%;object-fit:contain;object-position:center}
.slot .card-bottom{position:absolute;top:auto;bottom:4px;left:32px;right:32px;min-height:0;height:30px;padding:0;background:none;display:block}.slot .card-bottom>b{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;height:30px;max-height:30px;font-size:11px;line-height:15px;padding:0;margin:0;text-shadow:0 1px 4px #000;background:#09151c99}.slot .card-text,.slot .card-kind{display:none}.slot .stat{bottom:4px}.slot .unit-tags{top:4px;left:29px;right:37px;font-size:9px;text-align:center;white-space:nowrap;overflow:hidden}
#card-detail{width:min(680px,94vw);max-height:88vh}#card-detail::backdrop{background:#02090edb}.full-card-detail{display:grid;grid-template-columns:220px minmax(0,1fr);gap:25px;padding:28px;overflow:auto}.detail-art{height:280px;display:grid;place-items:center;background:radial-gradient(ellipse,#426064,#101c24);border:1px solid #b79b6555}.detail-art img{width:100%;height:100%;object-fit:contain}.full-card-detail h2{font-size:24px;line-height:1.6;margin:13px 0}.full-card-detail p{font-size:14px;line-height:2;color:#e1e9e4;overflow-wrap:anywhere}.full-card-detail dl{display:flex;gap:30px;margin:20px 0}.full-card-detail dt{font-size:10px;color:var(--muted)}.full-card-detail dd{font-family:Georgia,serif;font-size:26px;margin:4px 0;color:var(--gold)}.full-card-detail small{display:block;font-size:11px;color:#a9b8af;line-height:1.8}
@media(max-width:850px){.slot .card-bottom>b{font-size:10px;line-height:14px}.slot .card-bottom{height:28px;left:27px;right:27px}.slot .unit-tags{font-size:8px}}
@media(max-width:560px){.collection{grid-template-columns:repeat(2,minmax(0,1fr))}.collection .card{width:100%;height:252px;min-height:252px}.card .card-bottom>b{font-size:12px}.card .card-text{font-size:12px}.slot .card-bottom{bottom:27px;left:2px;right:2px;height:28px}.slot .card-bottom>b{font-size:9px;line-height:14px}.slot .card-picture{left:0;right:0;height:calc(100% - 30px)}.slot .unit-tags{top:27px;left:2px;right:2px;font-size:7px}.board-cell .card-info{width:27px;min-height:23px}.full-card-detail{grid-template-columns:1fr;padding:20px;gap:20px}.detail-art{height:190px}.full-card-detail h2{font-size:21px}.full-card-detail p{font-size:14px}.choice-entry{flex:0 0 148px;min-width:148px;width:148px}.choice-entry .card{width:148px}}
.bgm-settings{display:flex;flex-direction:column;gap:17px;border-top:1px solid #b8a77935;padding-top:22px}.bgm-settings p{font-size:12px;color:#a8bab3;line-height:1.8}.bgm-credit{padding-top:15px;margin-top:15px;border-top:1px solid #b8a77925;font-size:12px;color:#c0cdbf}
.card .card-text{display:block;-webkit-line-clamp:unset}.card-rules{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;max-height:54px;overflow:hidden}
