:root{color-scheme:dark;--bg:#090a13;--panel:#111725;--line:#2b3a50;--cyan:#23c9ed;--pink:#f33797;--amber:#f7c65e;--mint:#36dfc0;--white:#e5edf7;--muted:#9baac1;--yellow:var(--amber);font-family:"Songti SC","STSong","SimSun",serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font-size:15px;line-height:1.5}button,input,select{font:inherit}button,a{touch-action:manipulation}button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--white);border:1px solid #435068;background:#172133;padding:10px 16px;min-height:42px;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}button:hover{background:#202e44;border-color:var(--cyan)}button:active{transform:translateY(1px)}button:disabled{opacity:.4;cursor:not-allowed;filter:saturate(.35)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--amber);outline-offset:4px}button.primary{background:var(--cyan);color:#07121c;border-color:#85edff;font-weight:800;box-shadow:4px 4px 0 #092c3d;clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}button.primary:hover{background:#7ce7fa}button.danger{border-color:var(--pink);color:#ffc1da}.quiet{background:transparent;border-color:transparent;color:var(--muted)}.button-icon{width:21px;height:21px;object-fit:contain;flex:none}.eyebrow,.rail-label,.mono,small,.tag{font-family:ui-monospace,"Courier New",monospace;font-size:11px;letter-spacing:1.7px;color:var(--muted)}h1,h2,h3,p{overflow-wrap:anywhere}header{height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#0b0f1bed;gap:18px}.brand{display:flex;gap:12px;align-items:center;color:var(--white);text-decoration:none;font-weight:900;font-size:24px;letter-spacing:3px;white-space:nowrap}.brand small{display:block;letter-spacing:3px;font-size:10px;margin-top:1px;color:var(--cyan)}.brandmark{display:grid;place-items:center;width:40px;height:42px;color:var(--pink);font-size:35px}.brandmark img{width:100%;height:100%}nav{display:flex;gap:8px;align-items:center}nav button{font-size:13px;min-height:36px;padding:6px 12px;background:transparent}.live{font:11px ui-monospace,monospace;color:var(--mint);margin-right:12px;white-space:nowrap}.shell{max-width:1800px;margin:0 auto;display:grid;grid-template-columns:135px minmax(0,1fr) 292px;min-height:calc(100vh - 118px)}.rail{padding:28px 12px;border-right:1px solid var(--line);background:#0c101b;display:flex;flex-direction:column}.rail-label{font-size:9px;line-height:1.8;margin-bottom:24px}.station{position:relative;display:flex;gap:9px;min-height:94px;opacity:.58}.station:before{content:'';position:absolute;width:1px;left:15px;top:36px;bottom:0;background:#43506b}.station:last-child:before{display:none}.station .num{width:31px;height:33px;display:grid;place-items:center;flex:none;border:1px solid #43516d;background:#101a29}.station img{width:25px;height:25px;image-rendering:auto}.station strong{display:block;font-size:13px;font-weight:600;line-height:1.5;margin:4px 0 6px}.station small{font-size:8px;letter-spacing:.7px;line-height:1.8;display:block}.station.active{opacity:1;color:var(--cyan)}.station.active .num{border-color:var(--cyan);box-shadow:0 0 12px #23c9ed35}.station.done{opacity:.9;color:var(--mint)}.rail-bottom{margin-top:auto;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:2}.rail-bottom strong{display:block;color:var(--white);font-size:19px;letter-spacing:2px}.rail-bottom span{font-size:10px}main{min-width:0;padding:24px 26px 30px;background:radial-gradient(ellipse at 15% 0,#182c423b,transparent 55%)}.sidebar{min-width:0;padding:16px 18px;border-left:1px solid var(--line);background:#0d1320}.panel{border-bottom:1px solid var(--line);padding:12px 0 19px}.panel h3{display:flex;justify-content:space-between;align-items:center;font-size:16px;margin:8px 0 12px}.panel h3 span{font:11px ui-monospace,monospace;color:var(--muted)}.health-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 0}.health-row>span{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.health-row strong{font:28px ui-monospace,monospace;color:#fff}.health-row strong span{font-size:12px;color:var(--muted)}.stat-icon{width:19px;height:19px;vertical-align:middle;margin-right:4px}.bar{height:8px;background:#23273c;border:1px solid #393d53;overflow:hidden}.bar i{height:100%;display:block;background:linear-gradient(90deg,#ad174d,#ed467e);transition:width .3s}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:14px}.stat{color:var(--muted);font-size:12px}.stat b{display:block;color:var(--amber);font:26px ui-monospace,monospace;margin-top:6px}.stat:last-child b{color:var(--cyan)}.bot{display:flex;gap:12px;width:100%;align-items:center;text-align:left;border:1px solid var(--line);background:#151e2f;padding:10px;margin:8px 0}.bot.active{border-color:#39677e;background:linear-gradient(100deg,#142f3d,#111a2a)}.bot-icon{width:49px;height:55px;object-fit:contain;image-rendering:auto;background:#090a13;flex:none;border:1px solid #293850}.bot strong{font-size:15px;letter-spacing:.4px}.bot p{font-size:12px;line-height:1.7;color:#b4c3d4;margin:3px 0 0}.bot-warning{padding:9px 11px;border-left:2px solid var(--amber);background:#3026196b;color:#f6d38b;font-size:12px;line-height:1.8;margin:12px 0 2px}.gear-row{display:flex;gap:10px;align-items:center;border-bottom:1px dashed #29364a;padding:8px 0}.gear-icon{width:35px;height:35px;object-fit:contain;flex:none;image-rendering:auto}.gear-row>span{font-size:11px;color:var(--muted);display:flex;flex:1;justify-content:space-between;align-items:center;gap:8px}.gear-row b{font-size:13px;color:#d7e1ee;font-weight:500}.terminal{border-bottom:0}.terminal h3 span{color:var(--mint)}#logs{font:12px/1.85 ui-monospace,"Songti SC",serif;max-height:240px;overflow:auto;scrollbar-width:thin;color:var(--muted)}#logs p{margin:8px 0}#logs b{font-weight:600;margin-right:5px}#logs .log-player{color:#b1dedc}#logs .log-boss{color:#ff9fc3}#logs .log-event{color:#f2d398}#logs .log-system{color:#9ba8be}footer{min-height:48px;border-top:1px solid var(--line);background:#090e18;display:flex;align-items:center;justify-content:space-between;padding:8px 28px;gap:12px;font:10px ui-monospace,monospace;letter-spacing:1px;color:var(--muted)}footer b{color:var(--cyan)}footer button{min-height:30px;padding:4px 8px;font-size:11px;background:transparent;border:0}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.page-heading h1{font-size:26px;letter-spacing:2px;line-height:1.45;margin:7px 0 0}.badge{padding:6px 9px;font:11px ui-monospace,monospace;white-space:nowrap;border:1px solid #36647d;background:#112a3c;color:#a1e8ff}.boss-area{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;position:relative;overflow:hidden;border:1px solid #3b566b;padding:16px 20px;background:#0c1522;min-height:190px}.carriage-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.17;image-rendering:auto}.boss-area:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#0b1420c9 35%,#0b1420eb);pointer-events:none}.boss-portrait,.boss-info{position:relative;z-index:1;min-width:0}.boss-portrait{align-self:center;text-align:center;background:#090a13;border:1px solid #30485e;box-shadow:5px 5px 0 #0005}.boss-portrait img{display:block;height:142px;max-width:100%;margin:0 auto;object-fit:contain;image-rendering:auto}.boss-portrait>span{display:block;border-top:1px solid #273b52;padding:4px 2px;color:#95bcd6;font-size:10px}.boss-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.boss-head h2{font-size:26px;letter-spacing:3px;margin:6px 0 8px}.boss-health{font:26px ui-monospace,monospace;color:#ffc8dc;white-space:nowrap}.boss-health small{font-size:11px;color:#b5a5b4;letter-spacing:0}.boss-area .bar{margin:5px 0 10px;height:7px}.boss-area p{font-size:13px;line-height:1.7;color:#bdcddd;margin:5px 0}.boss-area .mechanic{color:#e2e8f3}.boss-area p.mutation{border-left:2px solid var(--pink);padding-left:9px;color:#ffacd0}.boss-area.mutated{border-color:#963d74}.boss-area.mutated .boss-portrait{border-color:var(--pink)}.boss-area p.previous-hand{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #324658;padding-top:7px;margin-top:8px;color:#9faec3;font-size:12px}.previous-hand strong{color:var(--cyan);font-size:14px}.boss-tip{font-size:12px;color:var(--muted)}.boss-tip summary{cursor:pointer;display:list-item;width:max-content}.boss-tip p{color:var(--muted)}.phase-strip{display:flex;gap:0;border-bottom:1px solid var(--line);padding:12px 0;margin:10px 0 16px;overflow:auto}.phase-strip span{flex:1;white-space:nowrap;font-size:11px;color:#7f91aa}.phase-strip b{font:10px ui-monospace,monospace;margin-right:4px}.phase-strip span.active{color:var(--cyan)}.hand-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 12px}.hand-heading h3{font-size:17px;letter-spacing:1px;margin:0}.hand-heading h3 span{font-size:12px;color:var(--muted);font-weight:400}.hand-heading>span{font:11px ui-monospace,monospace;color:var(--muted)}.cards{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:15px 3px 13px;min-height:174px}.card{position:relative;display:block;flex:0 0 92px;width:92px;height:138px;padding:0;border:1px solid #77859f;border-radius:3px;overflow:visible;background:#121a29;box-shadow:3px 5px 0 #0007;line-height:1}.card .card-face{display:block;width:100%;height:100%;object-fit:contain;border-radius:2px;image-rendering:auto;pointer-events:none}.card:hover{transform:translateY(-5px);border-color:var(--cyan);background:#121a29}.card.selected{transform:translateY(-10px);outline:2px solid var(--amber);outline-offset:2px;border-color:var(--amber);box-shadow:0 0 16px #f7c65e33}.card:disabled{opacity:1;filter:none;cursor:default}.card:disabled:hover{transform:none;border-color:#77859f}.card-check{position:absolute;right:-6px;top:-7px;width:20px;height:20px;background:var(--amber);border:1px solid #ffe6aa;color:#0d1a24;font:800 13px/18px ui-monospace,monospace;text-align:center}.card.modified .rank{position:absolute;left:10px;top:11px;color:#e8f4ff;font:700 24px Georgia,serif}.card.modified .suit{position:absolute;left:0;right:0;top:40px;text-align:center;font-size:42px;color:#b6e9ff}.card.modified .corner{position:absolute;right:9px;bottom:11px;color:#b6e9ff;font-size:17px;transform:rotate(180deg)}.card.modified.red .rank,.card.modified.red .suit,.card.modified.red .corner{color:#ff7cac}.card.modified.joker .rank{font:11px ui-monospace,monospace;left:7px}.card.modified.joker .suit{color:var(--amber)}.card .chip{position:absolute;left:3px;right:3px;bottom:25px;display:flex;align-items:center;justify-content:center;gap:3px;padding:4px 1px;background:#1a2d4aed;border:1px solid #4c8aa4;color:#ffd984;font-size:10px;white-space:nowrap}.card .chip img{width:14px;height:14px;object-fit:contain}.selection-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 2px;margin:9px 0 13px}.selection-summary h3{font-size:23px;margin:0 0 4px;color:#e4f6ff}.selection-summary p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.damage{font:36px ui-monospace,monospace;color:var(--amber);white-space:nowrap}.damage small{font-size:11px;letter-spacing:1px}.actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin:16px 0}.hint{font-size:13px;line-height:1.8;color:var(--muted)}.callout{border-left:2px solid var(--amber);background:#302b1b7a;color:#ecd598;font-size:14px;line-height:1.8;padding:13px 16px;margin:18px 0}.zones{display:flex;gap:10px;border-top:1px solid var(--line);padding-top:16px;margin-top:22px}.zone{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #2f4057;background:#101a2b;font-size:12px;color:#a6b6c9;padding:11px 13px}.zone b{font:22px ui-monospace,monospace;color:#e6ecf4}.items{display:flex;gap:8px;flex-wrap:wrap;padding:4px 0;margin:14px 0}.items .hint{display:block;flex-basis:100%;margin:0;padding:5px;color:var(--amber)}.items button{font-size:12px}.small-btn{font-size:12px;padding:7px 10px;min-height:34px;margin-top:6px}.intro-copy{padding:16px 0 8px}.intro-copy h2{font-size:30px;letter-spacing:2px;line-height:1.6}.intro-copy p{color:var(--muted);line-height:1.9}.build-banner{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;border:1px solid var(--line);background:#111c2a;margin:20px 0;padding:12px}.build-banner img{width:100%;height:110px;object-fit:cover}.build-banner b{font-size:24px;letter-spacing:2px;color:#d6eaf3}.build-banner p{font-size:14px;line-height:1.9;color:var(--muted);margin:7px 0}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.option{display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:20px;min-height:160px;text-align:left;border:1px solid #3a4d67;background:linear-gradient(135deg,#17243a,#111925);box-shadow:3px 3px 0 #02050b}.option:hover{border-color:var(--cyan);background:linear-gradient(135deg,#1b3249,#152035)}.option-art{width:80px;height:86px;object-fit:contain;flex:none;image-rendering:auto}.option-content{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.option strong{font-size:19px;line-height:1.4;letter-spacing:1px}.option p{font-size:13px;color:#b4c2d4;line-height:1.8;margin:0}.option .price{font:17px ui-monospace,monospace;color:var(--amber);padding-top:6px}.option .tag{color:#8fcee2;font-size:10px;line-height:1.5}.option-arrow{align-self:flex-start;color:var(--cyan);font:20px ui-monospace,monospace}.event-scene{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center;margin:20px 0;padding:14px;border:1px solid #3f486c;background:#111829}.event-scene>img{width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid #36455c}.event-scene h2{font-size:24px;line-height:1.6;letter-spacing:1px}.event-scene p{font-size:15px;line-height:1.9;color:#b8c6d9}.result{border:1px solid #846b3b;background:linear-gradient(120deg,#2c271a,#141c29);padding:23px;margin:20px 0}.result h2{font-size:30px;letter-spacing:3px;margin:8px 0}.result p{font-size:14px;line-height:1.9;color:#c6ced7}.result .damage{font-size:48px}.scroll-cards{max-height:400px;overflow:auto;scrollbar-width:thin}.suit-group{border-top:1px solid var(--line);margin-top:18px}.suit-group h3{font-size:20px}.suit-group h3 span{font-size:12px;color:var(--muted);margin-left:12px}.suit-group .cards{min-height:0;justify-content:flex-start;max-height:none}.equipment-effect{border-bottom:1px solid var(--line);padding:12px 0}.equipment-effect h3{display:flex;align-items:center;gap:14px;font-size:18px}.equipment-effect p{color:#b9c8db;font-size:14px;line-height:1.9}.equipment-thumb{width:64px;height:64px;object-fit:contain;image-rendering:auto}.dice-face{font-size:100px;line-height:1.2;text-align:center;color:var(--amber);padding:20px}.dice-result{font-size:25px;color:var(--amber)}.dice-receipt{color:#f4da9b;font-size:14px;line-height:1.8;border:1px solid #695735;padding:12px}
/* Landing and narrative screens are presentation-only: no new game phases. */
body[data-screen=menu] header,body[data-screen=opening] header{display:none}body[data-screen=menu] .shell,body[data-screen=opening] .shell,body[data-screen=ending] .shell{display:block;max-width:1800px}body[data-screen=menu] .shell{max-width:none}body[data-screen=menu] .rail,body[data-screen=opening] .rail,body[data-screen=ending] .rail,body[data-screen=menu] .sidebar,body[data-screen=opening] .sidebar,body[data-screen=ending] .sidebar{display:none}body[data-screen=menu] main{position:relative;isolation:isolate;min-height:calc(100svh - 45px);padding:46px 24px 38px;display:grid;place-items:center;overflow:hidden}body[data-screen=menu] main:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 32%,#080e1beb 0%,#080e1ba8 34%,#090a1320 70%),linear-gradient(0deg,#080b17e6,transparent 42%);z-index:-1}.menu-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center 67%}.main-menu{max-width:640px;width:100%;text-align:center;position:relative;z-index:1}.menu-kicker{display:flex;gap:16px;align-items:center;justify-content:center;color:#a4dbea;font:10px ui-monospace,monospace;letter-spacing:3px}.menu-kicker span{width:40px;height:1px;background:#4b8ea4}.main-menu h1{font-family:"Songti SC","STSong","SimSun",serif;font-weight:900;font-size:80px;line-height:1.2;letter-spacing:12px;color:#ed234d;text-shadow:3px 5px 0 #040815,0 0 32px #e9214b20;margin:20px 0 14px}.main-menu h1 small{display:block;color:#d5f6fa;font:700 31px Georgia,"Times New Roman",serif;letter-spacing:10px;margin-top:11px;text-shadow:2px 3px 0 #071322}.menu-tagline{font-size:15px;line-height:1.9;letter-spacing:3px;color:#b8c6d6;margin:18px 0 27px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:574px;margin:0 auto}.menu-option{border:1px solid #41738c;background:#0c1c2ce8;min-height:83px;text-align:left;justify-content:flex-start;gap:17px;padding:16px 20px;box-shadow:4px 5px 0 #04080f9c}.menu-option-codex{grid-column:1/-1;width:calc((100% - 12px)/2);justify-self:center}.menu-option:hover{border-color:#79e9ff;background:#12344ae8}.menu-option>span{align-self:flex-start;color:var(--cyan);font:10px ui-monospace,monospace;margin-top:5px}.menu-option strong{font-size:23px;letter-spacing:3px;font-weight:600}.menu-option small{display:block;font-size:8px;color:#89a7bd;letter-spacing:1.5px;margin-top:7px}.menu-option>b{font:21px ui-monospace,monospace;color:var(--cyan);margin-left:auto;align-self:flex-start}.menu-footnote{font-size:11px;color:#8da5ba;letter-spacing:2px;margin-top:26px}body[data-screen=menu] footer{justify-content:center;background:#080d18;position:relative;z-index:2;border-top-color:#23394d}body[data-screen=menu] footer #save-status,body[data-screen=menu] footer button{display:none}body[data-screen=opening] main,body[data-screen=ending] main{padding:28px;min-height:calc(100vh - 48px);display:grid;place-items:center}body[data-screen=ending] main{min-height:calc(100vh - 118px)}.story-screen{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:36px;max-width:1550px;width:100%;align-items:center}.comic-image{width:100%;height:auto;max-height:80vh;object-fit:contain;border:1px solid #36516b;background:#050810;box-shadow:7px 8px 0 #03060c}.story-copy{padding:18px 0}.story-copy h1{font-size:38px;line-height:1.5;letter-spacing:3px;margin:16px 0 22px}.story-copy>p{font-size:15px;line-height:2;color:#b8c7db}.story-copy .actions{justify-content:flex-start;margin-top:28px}.story-copy .actions .primary{width:100%}.story-ticket{margin:24px 0;padding:16px 0;border-top:1px dashed #45617e;border-bottom:1px dashed #45617e;display:flex;flex-direction:column;gap:8px}.story-ticket b{color:var(--amber);font:11px ui-monospace,monospace;letter-spacing:2px}.story-ticket span{font-size:13px;color:var(--muted)}.ending-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid #35485f;border-bottom:1px solid #35485f;padding:18px 0;margin:24px 0}.ending-stats span{display:block;font-size:11px;color:var(--muted)}.ending-stats b{display:block;font:26px ui-monospace,monospace;color:var(--amber);margin-top:8px}.ending-stats small{font-size:11px;letter-spacing:0}.archive-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px;border:1px solid var(--line);margin:12px 0;background:#121e2e}.archive-row strong{color:var(--amber);font-size:17px}.archive-row small{display:block;max-width:350px;overflow-wrap:anywhere;margin-top:8px;font-size:10px}.archive-row p{color:#aebed2;font-size:13px;line-height:1.9;margin:0}.empty-state{text-align:center;padding:24px;color:var(--muted)}.empty-state img{width:85px;height:85px}.empty-state h3{color:var(--white);font-size:20px}.empty-state p{font-size:14px}.archive-list{max-height:420px;overflow:auto}dialog{background:#101a2b;color:var(--white);border:1px solid #52728e;box-shadow:9px 11px 0 #01050bbf;max-width:970px;width:calc(100% - 40px);max-height:88vh;padding:28px 32px;overflow:auto;scrollbar-width:thin}dialog::backdrop{background:#02050de3;backdrop-filter:blur(4px)}dialog h2{font-size:29px;letter-spacing:2px;line-height:1.5;margin:10px 0 18px}dialog>p,dialog #modal-content>p{line-height:1.9;color:#becbdd}dialog .close{position:sticky;float:right;top:0;z-index:4;min-height:32px;width:32px;padding:0;font:24px ui-monospace,monospace;background:#132239;border-color:#586c86}.rules-copy{font-size:15px;line-height:1.9;color:#c3d0df}.rules-copy h3{color:var(--cyan);font-size:20px;letter-spacing:1px;margin-top:26px}.rules-copy table{border-collapse:collapse;width:100%;font-size:14px}.rules-copy td,.rules-copy th{text-align:left;border-bottom:1px solid #334760;padding:9px}.rules-copy th{color:var(--amber)}dialog .cards{justify-content:flex-start;max-height:430px;overflow:auto;gap:13px;padding:20px 5px}dialog .card{flex-basis:83px;width:83px;height:125px}input,select{padding:11px;background:#0b1422;border:1px solid #50657f;color:#f0f5fc;margin:10px 6px 10px 0;max-width:100%;min-height:42px}.seed-input{width:260px;font:14px ui-monospace,monospace}#toast{position:fixed;bottom:62px;left:50%;transform:translateX(-50%);z-index:20;pointer-events:none;opacity:0;background:#1b2f41;border:1px solid var(--amber);padding:13px 22px;max-width:calc(100% - 30px);font-size:14px;box-shadow:3px 4px 0 #0008;transition:opacity .12s}#toast.show{opacity:1}
@media(min-width:1500px){main{padding:28px 38px}.cards{gap:16px}.card{width:106px;height:159px;flex-basis:106px}.boss-area{grid-template-columns:128px 1fr}.boss-portrait img{height:155px}.boss-area p{font-size:14px}.shell{grid-template-columns:155px minmax(0,1fr) 310px}.sidebar{padding-left:22px;padding-right:22px}}
@media(max-width:1150px){header{padding:0 20px}.live{display:none}.shell{grid-template-columns:105px minmax(0,1fr) 250px}.rail{padding:25px 8px}.station{gap:6px}.station strong{font-size:11px}.station small{font-size:7px}.station .num{width:25px;height:29px}.station img{width:23px;height:23px}.station:before{left:12px}.sidebar{padding:14px}main{padding:22px 18px}.card{flex-basis:78px;width:78px;height:117px}.cards{gap:9px;min-height:150px}.boss-area{grid-template-columns:92px 1fr;gap:13px;padding:14px}.boss-portrait img{height:128px}.boss-head h2{font-size:22px}.boss-health{font-size:22px}.boss-area p{font-size:12px}.option{padding:16px;gap:10px}.option-art{width:57px;height:67px}.option strong{font-size:17px}.build-banner{grid-template-columns:140px 1fr}.build-banner b{font-size:21px}.event-scene{grid-template-columns:1fr}.event-scene>img{aspect-ratio:16/7;object-position:center}.event-scene h2{font-size:23px;margin:10px 0}.story-screen{gap:26px;grid-template-columns:1.5fr 1fr}.story-copy h1{font-size:30px}.story-copy>p{font-size:14px}}
@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr) 240px}.rail{display:none}header{padding:0 16px;height:64px}.brand{font-size:20px;gap:7px}nav{gap:5px}nav button{padding:6px 8px;font-size:12px}#restart{display:none}.boss-area{grid-template-columns:85px 1fr;padding:12px}.boss-portrait img{height:116px}.boss-head{flex-wrap:wrap;gap:0}.boss-head h2{margin-bottom:2px}.boss-health{font-size:19px}.page-heading h1{font-size:23px}.option-grid{grid-template-columns:1fr}.option{min-height:130px}.card{flex-basis:75px;width:75px;height:113px}.cards{gap:8px}.story-screen{grid-template-columns:1fr;max-width:850px;gap:16px}.comic-image{max-height:none}.story-copy{max-width:650px;margin:auto;text-align:left;width:100%}.story-copy h1{font-size:32px}.story-copy .actions .primary{width:auto}.main-menu h1{font-size:72px}.event-scene{padding:12px}}
@media(max-width:640px){body{font-size:15px}header{height:auto;min-height:64px;align-items:center;padding:10px 12px;gap:6px;flex-wrap:wrap}.brand{font-size:21px}.brand small{font-size:9px}.brandmark{width:28px;height:35px;font-size:29px}nav{margin-left:auto;gap:3px}nav button{min-height:32px;font-size:12px;padding:5px 7px}#sound{font-size:11px}.shell{display:flex;flex-direction:column}main{padding:20px 14px}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-left:0;border-top:1px solid var(--line);padding:12px 14px}.sidebar .panel{padding:10px 0}.sidebar .terminal{grid-column:1/-1}.sidebar .eyebrow{font-size:9px;letter-spacing:1px}.sidebar .bot{display:block;padding:8px}.sidebar .bot-icon{float:left;margin-right:8px;width:38px;height:43px}.sidebar .bot p{font-size:12px;clear:both;padding-top:5px}.sidebar .bot strong{font-size:14px}.sidebar .small-btn{font-size:11px;padding:6px 7px}.gear-row{gap:5px}.gear-icon{width:27px;height:30px}.gear-row>span{display:block;font-size:10px}.gear-row b{display:block;font-size:12px}.health-row{flex-wrap:wrap}.health-row strong{font-size:27px}.stats-grid{gap:8px}.stat{font-size:11px}.stat b{font-size:23px}.stat-icon{width:16px;height:16px}.bot-warning{font-size:12px}.page-heading{gap:7px}.page-heading h1{font-size:23px;letter-spacing:1px}.badge{font-size:9px;padding:6px}.eyebrow{font-size:9px;letter-spacing:1.4px}.boss-area{grid-template-columns:78px 1fr;gap:12px;padding:12px}.boss-portrait img{height:104px}.boss-portrait>span{font-size:9px}.boss-head h2{font-size:23px}.boss-health{font-size:21px;line-height:1.5}.boss-area p{font-size:12px}.boss-area p.previous-hand{font-size:11px;gap:5px}.previous-hand strong{font-size:12px}.boss-area .bar{margin:5px 0 8px}.boss-tip{font-size:11px}.phase-strip{padding:10px 0;margin:9px 0 14px}.phase-strip span{font-size:10px}.phase-strip b{display:none}.hand-heading{gap:8px;margin:17px 0 12px}.hand-heading h3{font-size:17px}.hand-heading h3 span{display:block;font-size:11px;margin-top:4px}.hand-heading>span{font-size:10px;white-space:nowrap}.cards{gap:9px;min-height:140px;justify-content:center;padding:16px 2px 12px}.card{flex-basis:calc((100% - 45px)/6);width:calc((100% - 45px)/6);min-width:45px;max-width:82px;height:auto;aspect-ratio:2/3}.card.modified .rank{font-size:18px;left:6px;top:8px}.card.modified .suit{font-size:30px;top:27px}.card.modified .corner{font-size:11px;right:4px;bottom:7px}.card .chip{font-size:8px;bottom:17px;padding:3px 0;gap:0}.card .chip img{display:none}.card.modified.joker .rank{font-size:7px;left:4px}.card-check{width:16px;height:16px;font-size:10px;line-height:14px}.selection-summary{gap:10px;padding:12px 0}.selection-summary h3{font-size:22px}.selection-summary p{font-size:11px;line-height:1.8}.damage{font-size:30px}.damage small{font-size:9px}.actions{gap:8px;margin:15px 0}.actions button{flex:1;font-size:14px;padding:10px 9px;min-width:120px}.actions .button-icon{width:18px;height:18px}.hint{font-size:13px}.callout{font-size:13px;padding:12px}.items{gap:7px}.items button{font-size:12px;min-height:38px;padding:7px 9px;margin:0}.items .button-icon{width:17px;height:17px}.zones{gap:7px;padding-top:14px}.zone{font-size:10px;gap:5px;padding:10px 8px}.zone b{font-size:19px}.option-grid{grid-template-columns:1fr;gap:12px}.option{padding:16px;min-height:130px;gap:14px}.option-art{width:66px;height:75px}.option strong{font-size:19px}.option p{font-size:13px}.option .tag{font-size:10px}.build-banner{grid-template-columns:1fr;padding:0;gap:0;overflow:hidden}.build-banner img{height:118px}.build-banner>div{padding:14px 17px}.build-banner b{font-size:24px}.build-banner p{font-size:13px;line-height:1.8}.event-scene{grid-template-columns:1fr;gap:10px;padding:12px}.event-scene>img{aspect-ratio:16/10}.event-scene h2{font-size:22px;line-height:1.5}.event-scene p{font-size:14px}.result{padding:18px}.result h2{font-size:27px}.result p{font-size:13px}.result .damage{font-size:42px}footer{padding:12px 14px;flex-wrap:wrap;font-size:9px;gap:7px}#save-status{font-size:9px}footer button{font-size:10px}.intro-copy h2{font-size:27px;letter-spacing:1px}.scroll-cards{max-height:390px}.scroll-cards .card{width:64px;flex-basis:64px;max-width:none}.suit-group .card{width:63px;flex-basis:63px;max-width:none}dialog{padding:20px;width:calc(100% - 24px);max-height:91vh}dialog h2{font-size:25px}dialog .cards{gap:11px;max-height:410px;padding:18px 2px}dialog .card{width:65px;height:98px;max-width:none;flex-basis:65px}.rules-copy{font-size:14px}.rules-copy h3{font-size:19px}.rules-copy table{font-size:13px}.main-menu{max-width:360px}.menu-kicker{font-size:8px;letter-spacing:1.6px;gap:10px}.menu-kicker span{width:20px}.main-menu h1{font-size:48px;letter-spacing:7px;margin:18px 0 14px}.main-menu h1 small{font-size:24px;letter-spacing:5px;margin-top:12px}.menu-tagline{font-size:13px;letter-spacing:2px;line-height:1.9;margin:18px 0 24px}.menu-grid{grid-template-columns:1fr;gap:10px;max-width:300px}.menu-option{min-height:68px;padding:12px 17px}.menu-option strong{font-size:22px;letter-spacing:4px}.menu-option small{font-size:8px;letter-spacing:1.6px;margin-top:4px}.menu-option>span{font-size:9px}.menu-footnote{font-size:10px;line-height:1.8;letter-spacing:1px;margin-top:23px}.menu-background{object-position:58% center}body[data-screen=menu] main{padding:36px 18px 25px;min-height:calc(100svh - 43px)}body[data-screen=opening] main,body[data-screen=ending] main{padding:18px 14px}.story-screen{gap:8px;display:block}.comic-image{width:100%;max-height:none;height:auto;object-fit:contain;box-shadow:4px 5px 0 #03060c}.story-copy{padding:24px 4px 8px}.story-copy h1{font-size:29px;line-height:1.6;letter-spacing:2px;margin:14px 0}.story-copy>p{font-size:14px;line-height:2}.story-copy .actions{margin-top:22px}.story-copy .actions .primary{width:100%;flex-basis:100%}.ending-stats{padding:16px 0}.ending-stats b{font-size:25px}.archive-row{padding:12px;gap:10px}.archive-row strong{font-size:15px}.archive-row small{font-size:9px;max-width:145px}.archive-row p{font-size:11px;white-space:nowrap}.empty-state{padding:18px 4px}.empty-state h3{font-size:19px}.equipment-thumb{width:48px;height:48px}.equipment-effect h3{font-size:17px;gap:10px}.equipment-effect p{font-size:14px}.dice-face{font-size:95px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}@media(max-width:360px){.brand{font-size:19px}nav button{font-size:11px;padding:5px}.card{min-width:44px}.cards{gap:7px}.main-menu h1{font-size:44px}.menu-option{min-height:64px}}

/* High-resolution original art: preserve detail, retain the full portrait canvas. */
main{position:relative;isolation:isolate}.combat-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.42;z-index:-2}.combat-scrim{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#07101a36,#07101a9c 65%,#080e19c9)}main:has(.combat-background)>.cards{background:#0a172abf;border:1px solid #44627955;box-shadow:inset 0 0 70px #02071360}main:has(.combat-background)>.selection-summary{background:#0b1628b8;padding-left:13px;padding-right:13px}main:has(.combat-background)>.page-heading{padding:8px 12px;background:#0c1524a6}.boss-area{background:#0b1522d9}.carriage-scene{opacity:.29}.boss-art-button{display:block;border:0;background:#090a13;padding:0;width:100%;min-height:0;overflow:hidden}.boss-art-button:hover{background:#0b1220}.boss-art-button img{transition:transform .18s}.boss-art-button:hover img{transform:scale(1.025)}.boss-art-button i{position:absolute;left:0;right:0;bottom:0;display:block;background:#06101bd9;color:#a2e9fb;font:9px ui-monospace,monospace;opacity:0;padding:4px}.boss-art-button:hover i,.boss-art-button:focus-visible i{opacity:1}.bot-art-button{display:block;flex:none;width:62px;height:74px;min-height:0;border:1px solid #3f5f79;background:#090a13;padding:0}.bot-art-button .bot-icon{width:100%;height:100%;border:0;margin:0;float:none}.bot-art-button:hover{border-color:var(--cyan);background:#090a13}.portrait-viewer{display:grid;place-items:center;background:#080910;border:1px solid #293b52;max-height:70vh;overflow:auto}.portrait-large{display:block;width:auto;height:auto;max-width:100%;max-height:69vh;object-fit:contain;image-rendering:auto}.bot:has(.bot-art-button){align-items:center}.boss-portrait img{height:162px}.boss-area{grid-template-columns:126px minmax(0,1fr)}@media(max-width:1150px){.boss-area{grid-template-columns:104px minmax(0,1fr)}.boss-portrait img{height:146px}.bot-art-button{width:54px;height:67px}}@media(max-width:640px){.boss-area{grid-template-columns:86px minmax(0,1fr)}.boss-portrait img{height:120px}.sidebar .bot-art-button{float:left;margin-right:9px;width:46px;height:58px}.sidebar .bot-art-button .bot-icon{width:100%;height:100%;float:none;margin:0}.portrait-large{max-height:67vh}.portrait-viewer{max-height:68vh}.boss-art-button i{display:none}main:has(.combat-background)>.page-heading{padding:7px 9px}.combat-background{opacity:.33}.combat-scrim{background:linear-gradient(#0913216b,#07101ac9)}}
/* v2.1.13: physical cards retain full matched face artwork. */
.card{position:relative;isolation:isolate;overflow:visible}.card-surface{position:absolute;inset:2px;display:block;overflow:hidden;border-radius:3px;z-index:1}.card-surface .card-face,.twin-ghost .card-face{width:100%;height:100%;object-fit:fill;display:block}.card.modified{padding:0}.card .chip{z-index:4;bottom:6px;left:3px;right:3px;background:#081524ed;max-width:100%;overflow:hidden;text-overflow:ellipsis}.card-check{z-index:5}.card.selected{outline:2px solid #b9f7ff;outline-offset:3px}.card.frame-black,.card.frame-red,.card.frame-suit,.card.frame-income,.card.frame-rank{border:4px solid transparent;box-shadow:inset 0 0 0 1px #e2f5ff88,0 2px 7px #0009}.card.frame-black{border-image:linear-gradient(135deg,#033c85,#c9f6ff 20%,#03a9ff 40%,#024187 58%,#72ecff 78%,#055ab4) 1}.card.frame-red{border-image:linear-gradient(135deg,#75081e,#ffced5 20%,#ff355d 40%,#7e0b25 58%,#ff8696 78%,#b51135) 1}.card.frame-suit{border-image:linear-gradient(135deg,#ff384f,#ffbf30,#4be991,#30c9ff,#825dff,#ff5eea,#ff384f) 1}.card.frame-income{border-image:linear-gradient(135deg,#795411,#fff4b6 20%,#f3bd2b 40%,#80600b 58%,#ffe386 78%,#be7d14) 1}.card.frame-rank{border-image:linear-gradient(135deg,#0d5738,#ceffe5 20%,#3ff7a6 40%,#10633f 58%,#a2ffd0 78%,#149b60) 1}.card.twin-card .card-surface{inset:10% 14% 10% 6%;transform:translate(-2%,-2%);box-shadow:3px 3px 8px #000b}.twin-ghost{position:absolute;inset:10% 6% 10% 14%;transform:translate(3%,3%) rotate(4deg);opacity:.48;z-index:0;filter:brightness(.7) saturate(.6);border:1px solid #7fdbfa;overflow:hidden;border-radius:3px}.card.wild-card{border-color:#a12cec;box-shadow:0 0 12px #b32bfa65}.card.wild-card .card-face{object-fit:cover}.button-icon,.stat-icon,.gear-icon,.station img{image-rendering:auto}.primary .button-icon{filter:none}
.inventory-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;flex-basis:100%;padding:8px 0}.inventory-label{font:11px system-ui,sans-serif;color:#a0b9cc;margin-right:4px;white-space:nowrap}.item-stack{display:flex;align-items:center;gap:4px}.stack-count{font:700 12px ui-monospace,monospace;color:#f9d787;min-width:22px}.items .equipment-active{border:3px double #74e3f6;background:#0e3044;box-shadow:inset 0 0 0 1px #123d51}.items .consumable{border:1px solid #867147;background:#211e25}.equipment-skills{border-top:1px dashed #49677a}.studio-logo{display:block;width:min(100%,520px);height:auto;margin:26px auto 8px}.credits-copy p{line-height:1.95;color:#c2d1df}
.model-stage{height:min(54vh,510px);min-height:290px;width:100%;position:relative;overflow:hidden;border:1px solid #45687e;background:radial-gradient(ellipse at 50% 60%,#203e50,#0a121d 72%);touch-action:none}.model-stage canvas{display:block;width:100%;height:100%;cursor:grab}.model-stage canvas:active{cursor:grabbing}.model-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.model-controls button{min-height:40px}.model-controls output{margin-left:auto;color:var(--cyan);font:18px ui-monospace,monospace}
.comic-sequence{position:relative;overflow:hidden;border:1px solid #36516b;background:#050810;box-shadow:7px 8px 0 #03060c}.comic-size{display:block;width:100%;height:auto;visibility:hidden;max-height:80vh;object-fit:contain}.comic-panel{position:absolute;inset:0}.comic-panel .comic-image{width:100%;height:100%;max-height:none;border:0;box-shadow:none;object-fit:fill}.comic-opening .panel-1{clip-path:polygon(0 0,22% 0,17% 100%,0 100%)}.comic-opening .panel-2{clip-path:polygon(22% 0,46% 0,35% 100%,17% 100%)}.comic-opening .panel-3{clip-path:polygon(46% 0,77% 0,68% 100%,35% 100%)}.comic-opening .panel-4{clip-path:polygon(77% 0,100% 0,100% 100%,68% 100%)}.comic-defeat .panel-1{clip-path:polygon(0 0,26% 0,15% 100%,0 100%)}.comic-defeat .panel-2{clip-path:polygon(26% 0,48% 0,36% 100%,15% 100%)}.comic-defeat .panel-3{clip-path:polygon(48% 0,81% 0,74% 100%,36% 100%)}.comic-defeat .panel-4{clip-path:polygon(81% 0,100% 0,100% 100%,74% 100%)}.comic-victory .panel-1{clip-path:polygon(0 0,50% 0,42% 46%,0 40%)}.comic-victory .panel-2{clip-path:polygon(50% 0,100% 0,100% 55%,42% 46%)}.comic-victory .panel-3{clip-path:polygon(0 40%,42% 46%,72% 52%,64% 100%,0 100%)}.comic-victory .panel-4{clip-path:polygon(72% 52%,100% 55%,100% 100%,64% 100%)}.comic-sequence.is-playing .comic-panel.panel-2{animation:comic-fly 2.2s calc(1.5s - var(--comic-elapsed,0s)) both}.comic-sequence.is-playing .comic-panel.panel-3{animation:comic-fly 2.2s calc(4s - var(--comic-elapsed,0s)) both}.comic-sequence.is-playing .comic-panel.panel-4{animation:comic-fly 2.2s calc(6.5s - var(--comic-elapsed,0s)) both}@keyframes comic-fly{from{opacity:0;transform:translate(18%,-10%) scale(1.06)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.comic-panel{animation:none!important;opacity:1!important;transform:none!important}}@media(max-width:900px){.comic-size{max-height:none}}@media(max-width:640px){.card .chip{bottom:3px;font-size:7px}.card.frame-black,.card.frame-red,.card.frame-suit,.card.frame-income,.card.frame-rank{border-width:3px}.model-stage{height:47vh;min-height:260px}.model-controls{gap:6px}.model-controls button{padding:8px;font-size:12px}.inventory-row{gap:6px}.comic-sequence{box-shadow:4px 5px 0 #03060c}}

/* v2.2.16 — player-controlled presentation and clear records. */
.card.frame-twin{border:4px solid transparent;border-image:linear-gradient(135deg,#813b08,#fff0b7 18%,#ff9b25 38%,#8d3b08 58%,#ffd091 78%,#db6b10) 1;box-shadow:inset 0 0 0 1px #ffe0a588,0 0 9px #e67a2540}.card.frame-twin:disabled:hover{border-color:transparent}.card-surface .card-face{object-fit:contain;image-rendering:auto}.card{width:104px;height:156px;flex-basis:104px}.gear-icon,.bot-icon,.option-art,.equipment-thumb{image-rendering:auto}.bot-icon,.gear-icon{object-position:center}.bot{justify-content:flex-start;text-align:left}.bot>div{min-width:0;flex:1;text-align:left}.bot p{text-align:left}.special-declaration{font-family:"Heiti SC","PingFang SC",system-ui,sans-serif;font-weight:900}.studio-logo{width:116px;max-width:36%;height:auto;margin:22px 0 5px}.credits-version{text-align:left;margin-top:6px}.rule-highlight{color:var(--amber);background:none;font-weight:800}.comic-wrap{position:relative;align-self:center}.comic-panel:not(.panel-1){opacity:0;transform:translate(18%,-10%) scale(1.06)}.comic-sequence.is-playing .comic-panel,.comic-sequence.is-complete .comic-panel{opacity:1;transform:none}.mechanism-records{font:12px/1.8 system-ui,sans-serif;border-top:1px dashed #507183;margin-top:12px;padding-top:6px}.mechanism-records p{margin:8px 0}.record-shield{color:#77e0ff}.record-glm{color:#ffd16b}.record-burn{color:#ffb58a}.record-burn summary{cursor:pointer}.record-burn p{font-size:11px}.items .reset-scroll .consumable{border:3px solid transparent;border-image:repeating-linear-gradient(135deg,#70cfff 0 7px,#f1faff 7px 14px) 1;background:#102a45;box-shadow:0 0 8px #77d6ff4d}.wild-selector{padding:14px 16px;border:1px solid #a878c5;background:#1e1529;margin:14px 0}.wild-selector h3{color:#e5c2ff;margin:0 0 6px}.wild-selector p{font-size:13px;color:#bfafd0}.wild-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;border-top:1px solid #513d60}.wild-row strong{min-width:70px}.wild-row label{font-size:12px}.wild-row select{padding:7px;color:#f7e6ff;background:#171024;border:1px solid #8b6ba5}.wild-row>span{font-size:12px;color:#ddc0f0}.difficulty-picker{display:grid;gap:12px;margin:20px 0;border:1px solid #345e73;padding:18px}.difficulty-picker label{display:flex;align-items:center;gap:10px;text-align:left}.difficulty-picker input{accent-color:#35cced;width:18px;height:18px}.difficulty-locked{color:#7e8793;opacity:.65}.encyclopedia{display:grid;grid-template-columns:150px 1fr;gap:20px;margin-top:20px;min-height:350px}.codex-nav{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px}.codex-nav button{justify-content:flex-start;text-align:left;min-height:46px}.codex-nav .active{border-color:var(--cyan);color:var(--cyan);background:#122d40}.codex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px;align-content:start;min-width:0}.codex-entry{border-bottom:1px solid #354b60;padding:10px 6px 15px;min-width:0}.codex-entry h3{font-size:16px;line-height:1.5}.codex-entry p{font-size:12px;line-height:1.8;color:#b6c7db}.codex-art{height:180px;width:100%;display:grid;place-items:center;background:#07111d;border:1px solid #2b4356;padding:4px}.codex-art img{height:100%;max-height:170px;width:100%;object-fit:contain;image-rendering:auto}.codex-empty{grid-column:1/-1;color:#8798ae;padding:25px 5px}.shadow-bot{filter:grayscale(1) brightness(.18) contrast(1.7);image-rendering:pixelated}.shadow-portrait{display:grid;place-items:center;min-height:320px;background:radial-gradient(ellipse,#254b62,#08131e 75%)}.shadow-portrait img{height:52vh;max-width:100%;object-fit:contain}
@media(max-width:640px){.menu-option-codex{grid-column:auto;width:100%}.card{width:calc((100vw - 98px)/5);height:auto;aspect-ratio:2/3;flex-basis:calc((100vw - 98px)/5)}.card.frame-twin{border-width:3px}.encyclopedia{grid-template-columns:1fr;gap:14px}.codex-nav{display:flex;flex-direction:row;overflow:auto}.codex-nav button{flex:none;font-size:12px;padding:8px 10px}.codex-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.codex-art{height:145px}.codex-art img{max-height:135px}.wild-row{gap:8px}.wild-row strong{flex-basis:100%;font-size:13px}.wild-row select{max-width:100px}.studio-logo{width:98px}}

.model-stage.silhouette-stage{background:radial-gradient(ellipse at 50% 55%,#669bb0,#193a4c 75%)}

/* The shadow thumbnail uses a CSS silhouette of the existing character canvas. */
.shadow-bot{filter:brightness(0);clip-path:polygon(49% 2%,53% 2%,48% 8%,60% 8%,74% 20%,76% 32%,83% 34%,75% 40%,69% 43%,72% 49%,91% 44%,95% 45%,93% 51%,98% 62%,89% 66%,84% 75%,78% 73%,78% 65%,74% 62%,72% 69%,66% 69%,65% 98%,36% 98%,35% 69%,28% 68%,28% 62%,24% 66%,20% 73%,14% 72%,13% 65%,3% 65%,2% 61%,5% 54%,7% 50%,5% 45%,10% 45%,17% 51%,27% 48%,30% 43%,23% 42%,20% 38%,16% 36%,19% 31%,25% 20%,28% 15%,40% 9%,42% 4%)}.bot-art-button:has(.shadow-bot),.codex-art:has(.shadow-bot){background:radial-gradient(ellipse,#6298ad,#234457)}.bot:has(>.shadow-bot){background:linear-gradient(90deg,#446c80 0 76px,#162937 96px)}

.studio-logo{margin-left:-6px}

/* Smooth vector UI symbols retain their native curves at every display density. */
[hidden]{display:none!important}
.ui-vector{image-rendering:auto;filter:none}
.button-icon.ui-vector{width:24px;height:24px;min-width:24px;object-fit:contain;filter:none}
.primary .button-icon.ui-vector{width:28px;height:28px;padding:2px;border-radius:5px;background:#0b2636;filter:none}
.stat-icon.ui-vector{width:24px;height:24px;vertical-align:middle}
.gear-icon.ui-vector{width:32px;height:32px;min-width:32px;border:0;background:none}
.station img.ui-vector{width:24px;height:24px;filter:none}
.station .num{border-radius:6px;box-shadow:none}
.station.active .num{box-shadow:none;border-color:#68b9d4;background:#142c3b}
.option-art.ui-vector{width:68px;height:68px;min-width:68px;object-fit:contain;border:1px solid #35536b;border-radius:10px;padding:5px;background:linear-gradient(135deg,#162c3d,#0a1724);box-shadow:none;filter:none}
.card .chip .ui-vector{width:18px;height:18px;image-rendering:auto;filter:none}
.items .button-icon.ui-vector{width:24px;height:24px;min-width:24px}
.button-icon.ui-vector,.stat-icon.ui-vector,.gear-icon.ui-vector,.option-art.ui-vector{transform:none}
@media(max-width:640px){.actions .button-icon.ui-vector,.items .button-icon.ui-vector{width:24px;height:24px;min-width:24px}.option-art.ui-vector{width:64px;height:64px;min-width:64px}.stat-icon.ui-vector{width:24px;height:24px}.gear-icon.ui-vector{width:32px;height:32px;min-width:32px}}

.undo-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #344e64;margin:0 0 18px;padding:0 0 14px;position:relative;z-index:2}.undo-toolbar .undo-button{border:1px solid #69a2bc;border-radius:5px;background:#112b3d;min-height:42px;font-size:13px;text-align:left;justify-content:flex-start}.undo-toolbar .undo-button:disabled{opacity:.55;border-color:#465464;background:#151f2b;filter:none}.undo-description{font:11px/1.7 system-ui,sans-serif;color:#a2b4c8;max-width:420px}.undo-button .ui-vector{width:24px;height:24px}.undo-toolbar .undo-button:not(:disabled):hover{background:#193f55;border-color:#a8d5e8}@media(max-width:640px){.undo-toolbar{gap:6px;margin-bottom:14px;padding-bottom:12px}.undo-toolbar .undo-button{font-size:12px;padding:8px 11px}.undo-description{font-size:11px;flex-basis:100%}}

/* v2.3.4: visible BOT decisions and deliberately non-proportional Echo health. */
.bot-skills{border:1px solid #8198e5;background:linear-gradient(130deg,#17223b,#201b33);border-radius:8px;padding:12px}.bot-active{border-color:#9ba9f2!important;background:#252c50!important;color:#edf0ff!important}.bot-active:hover:not(:disabled){border-color:#d2d8ff!important;background:#343f68!important}.bot-ward{width:100%;margin:8px 0;color:#c5dcff;font-size:13px}.security-prompt{padding:24px;margin:20px 0;border:1px solid #94a7cb;background:#101e30;border-radius:8px}.security-prompt h2{font-size:22px;margin:8px 0}.security-prompt p{line-height:1.8}.bar.obscured-health{background:repeating-linear-gradient(120deg,#3c2849 0,#3c2849 8px,#291d35 8px,#291d35 16px);border:1px dashed #aa82c0}.bar.obscured-health i{width:100%;background:transparent!important;box-shadow:none!important}.health-obscured{letter-spacing:.08em;color:#e3c7ff}.health-obscured small{letter-spacing:0}.record-gpt{margin:12px 0;color:#c5d5ed}.record-gpt p{font-size:12px;line-height:1.6}.gemini-pending{border-color:#a59ae4}.bot-skills .inventory-label{color:#c7cfff}@media(max-width:640px){.bot-skills{padding:10px}.security-prompt{padding:16px}.security-prompt h2{font-size:19px}.bot-skills .bot-active{width:100%;justify-content:flex-start}}

.current-difficulty{margin:0 0 12px;color:var(--cyan);font-size:12px;letter-spacing:1px}

/* v2.4.12 — actionable controls and battle-only card motion. */
.undo-toolbar .undo-button:not(:disabled),button[data-action="build"],button[data-action="bots"].attention-action,.bot-management-highlight{border:2px solid #ffe297;background:linear-gradient(135deg,#5c4116,#2d2b22);color:#fff4d1;font-weight:800;box-shadow:0 0 0 2px #f7c65e17,0 3px 16px #f7c65e24;clip-path:none}
.undo-toolbar .undo-button:not(:disabled):hover,button[data-action="build"]:hover,button[data-action="bots"].attention-action:hover,.bot-management-highlight:hover{background:linear-gradient(135deg,#76551e,#38422d);border-color:#fff0bb;box-shadow:0 0 0 3px #f7c65e22,0 3px 22px #f7c65e32}
button[data-action="build"].primary .button-icon,.attention-action .button-icon{background:#302314;border-radius:4px;padding:2px;filter:none}
.undo-toolbar .undo-button:disabled{border-style:dashed;opacity:.66;box-shadow:none}
.combat-hand{display:block!important;position:relative;min-width:0;max-width:100%;width:100%;min-height:0!important;height:var(--fan-height,260px);padding:0!important;margin:2px 0 14px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#56859a #0917226b;isolation:isolate;touch-action:pan-x pan-y}
.combat-hand .fan-track{position:relative;margin:0 auto;min-width:100%;max-width:none;contain:layout style}
.combat-hand .fan-card{position:absolute!important;left:calc(50% - var(--fan-w,104px)/2);top:var(--fan-top,58px);display:block!important;flex:none!important;width:var(--fan-w,104px)!important;min-width:0!important;max-width:none!important;height:var(--fan-h,156px)!important;aspect-ratio:2/3;padding:0;z-index:var(--fan-z,1);transform-origin:50% 100%;--fan-lift:0px;transform:translate(var(--fan-x,0px),calc(var(--fan-y,0px) + var(--fan-lift))) rotate(var(--fan-angle,0deg));transition:transform .18s cubic-bezier(.2,.7,.2,1),border-color .15s,box-shadow .15s;touch-action:manipulation}
.combat-hand .fan-card:hover,.combat-hand .fan-card:focus-visible{--fan-lift:-27px;z-index:110;box-shadow:0 9px 22px #000a,0 0 12px #23c9ed40}
.combat-hand .fan-card.selected{--fan-lift:-30px;z-index:120;outline:2px solid #fff0a4;outline-offset:3px;box-shadow:0 10px 24px #000b,0 0 18px #f7c65e60}
.combat-hand .fan-card.selected:hover,.combat-hand .fan-card.selected:focus-visible{--fan-lift:-35px;z-index:130}
.combat-hand .fan-card:disabled{--fan-lift:0px;transform:translate(var(--fan-x,0px),var(--fan-y,0px)) rotate(var(--fan-angle,0deg))}
.combat-hand .fan-enter{animation:fan-deal .36s var(--fan-delay,0ms) cubic-bezier(.2,.7,.2,1) backwards}
@keyframes fan-deal{from{opacity:0;transform:translate(calc(var(--fan-x,0px) + 35px),calc(var(--fan-y,0px) + 42px)) rotate(calc(var(--fan-angle,0deg) + 7deg)) scale(.92)}to{opacity:1;transform:translate(var(--fan-x,0px),var(--fan-y,0px)) rotate(var(--fan-angle,0deg)) scale(1)}}
.fan-scroll-hint{position:absolute;bottom:0;left:12px;z-index:150;pointer-events:none;color:#b6d5e5;font:11px/1.5 system-ui,sans-serif;text-shadow:0 1px 4px #000;background:#08121ad9;padding:3px 8px;border-radius:3px}
.card-flight-layer{position:fixed;inset:0;z-index:10000;pointer-events:none;overflow:hidden;contain:strict}
.card-flight{position:absolute;pointer-events:none;will-change:transform,opacity;transform-origin:center}
.card-flight>.card{position:relative!important;left:auto!important;top:auto!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;transform:none!important;animation:none!important;transition:none!important;outline:none!important;opacity:1!important;filter:none!important}
.card-flight .card-check{display:none}

/* Keep the carriage visible through foreground panels; cards and controls stay opaque. */
body[data-screen="menu"] main:before{background:radial-gradient(ellipse at 50% 32%,#080e1b9c 0%,#080e1b55 38%,#090a1310 73%),linear-gradient(0deg,#080b17a8,transparent 46%)}
.menu-option{background:#0c1c2cbd;backdrop-filter:blur(3px)}
.menu-option:hover{background:#12344ad9}
.main-menu h1,.menu-tagline,.menu-kicker{filter:drop-shadow(0 2px 5px #02050c)}
.combat-background{opacity:.62}
.combat-scrim{background:linear-gradient(180deg,#07101a25,#07101a6e 65%,#080e1988)}
main:has(.combat-background)>.cards{background:#0a172a70;box-shadow:inset 0 0 70px #02071336}
main:has(.combat-background)>.selection-summary{background:#0b16289c}
main:has(.combat-background)>.page-heading{background:#0c152487}
.boss-area{background:#0b1522b5}.boss-area:after{background:linear-gradient(90deg,transparent,#0b1420a1 35%,#0b1420cc)}
.carriage-scene{opacity:.4}.boss-info{text-shadow:0 1px 4px #030913}
body[data-phase="build"] .shell{background:linear-gradient(#08132255,#07111c88),url("assets/generated/background-table.webp") center/cover}
body[data-phase="build"] main{background:linear-gradient(#0b152326,#0a152443)}
body[data-phase="build"] .rail{background:#0c101bc2}
body[data-phase="build"] .sidebar{background:#0d1320c2}
body[data-phase="build"] .build-banner{display:block;background:#10203080;border-color:#52718b99;padding:17px 20px;backdrop-filter:blur(3px)}
body[data-phase="build"] .build-banner>div{padding:0}
.predeparture-background{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;pointer-events:none;opacity:.8}
.predeparture-scrim{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#08122155,#08122188)}
body[data-screen="opening"] main,body[data-screen="ending"] main{background:linear-gradient(#08122388,#0812238f),url("assets/generated/background-train.webp") center/cover}
.story-copy{padding:20px;background:#09142358;border:1px solid #9bbbd51a;backdrop-filter:blur(2px);text-shadow:0 1px 3px #020812}

/* The loadout footer is three distinct, readable record regions. */
#gear>.small-btn,#gear>.gear-effects-button{width:100%;justify-content:flex-start;margin-block:11px 4px}
.special-records{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px;border-top:1px solid #466479;padding-top:11px;font:12px/1.75 system-ui,sans-serif}
.special-records>.record-shield,.special-records>.record-hands,.special-records>.record-active{min-width:0;border:1px solid #3b5064;background:#0b16249c;padding:10px 11px;border-left-width:3px}
.special-records>.record-shield{border-left-color:#77e0ff}.special-records>.record-hands{border-left-color:#f7ce73}.special-records>.record-active{border-left-color:#ffa477}
.special-records h4,.special-records h3,.special-records>.record-shield>b,.special-records>.record-hands>b,.special-records>.record-active>b{display:block;font-size:12px;line-height:1.6;letter-spacing:.5px;font-weight:700;margin:0 0 6px}
.special-records>.record-shield h4,.special-records>.record-shield>b{color:#a0eaff}.special-records>.record-hands h4,.special-records>.record-hands>b{color:#ffe0a1}.special-records>.record-active h4,.special-records>.record-active>b{color:#ffc29d}
.special-records p{margin:5px 0;overflow-wrap:anywhere}.special-records small{font-size:10px;line-height:1.7;letter-spacing:0}.special-records details{margin-top:6px}.special-records summary{cursor:pointer;min-height:28px;padding-block:2px;color:#d5e2f1}.special-records .record-gpt,.special-records .record-glm,.special-records .record-burn{font-size:11px;line-height:1.8;margin:5px 0;color:#c9d7e8}
.special-records .record-shield{color:#b3d5e6}.special-records .record-hands{color:#e8d4ab}.special-records .record-active{color:#ddc0b2}
.bot-slot.sealed,.bot.sealed{position:relative;border-style:dashed;border-color:#a26796;background:#171526}
.bot-slot.sealed .bot-icon,.bot.sealed .bot-icon,.bot-slot.sealed .bot-art-button,.bot.sealed .bot-art-button{filter:grayscale(.9) brightness(.32) saturate(.3);opacity:.7}
.bot-slot.sealed strong,.bot.sealed strong{color:#b6a7c2}
.sealed-overlay{position:absolute;right:7px;top:7px;border:1px solid #bf84b1;background:#23142bed;color:#eccbe3;padding:2px 5px;font:10px/1.5 system-ui,sans-serif;pointer-events:none;z-index:3}

/* Descriptions remain available to keyboard and touch users as well as hover. */
.has-tooltip{position:relative}.has-tooltip>[role="tooltip"]{position:absolute;z-index:50;bottom:calc(100% + 8px);left:0;width:max-content;max-width:min(300px,calc(100vw - 38px));padding:11px 13px;border:1px solid #6c9cb3;border-radius:4px;background:#071725f5;box-shadow:0 6px 22px #0008;color:#e0ebf4;font:12px/1.8 system-ui,sans-serif;opacity:0;visibility:hidden;transform:translateY(4px);pointer-events:none;overflow-wrap:anywhere;transition:opacity .14s,transform .14s,visibility .14s}
.has-tooltip:hover>[role="tooltip"],.has-tooltip:focus-within>[role="tooltip"],.has-tooltip.tooltip-open>[role="tooltip"]{opacity:1;visibility:visible;transform:none}
.item-info-button{display:inline-flex;align-items:center;justify-content:center;width:28px;min-width:28px;height:32px;min-height:32px;padding:0;border:1px solid #7b98b1;border-radius:4px;background:#0b2437;color:#ccefff;font:700 13px system-ui,sans-serif}
.item-info-button:hover,.item-info-button:focus-visible{background:#19425b;border-color:#a2e6ff}.item-stack:has(.item-info-button){position:relative}.item-description{font-size:12px;line-height:1.8;color:#d4e1ee}
@media(max-width:1100px){.special-records{gap:7px}.special-records>.record-shield,.special-records>.record-hands,.special-records>.record-active{padding:9px}}
@media(max-width:640px){.combat-hand{margin-block:0 10px}.combat-hand .fan-card:hover{--fan-lift:0px;z-index:var(--fan-z,1)}.combat-hand .fan-card.selected,.combat-hand .fan-card.selected:hover,.combat-hand .fan-card:focus-visible{--fan-lift:-24px;z-index:120}.fan-scroll-hint{font-size:10px;left:7px;padding:2px 6px}.combat-background{opacity:.52}.combat-scrim{background:linear-gradient(#0813213b,#07101a99)}.story-copy{padding:16px 13px}.special-records{font-size:12px}.special-records h4,.special-records h3{font-size:12px}.item-info-button{width:32px;min-width:32px;height:36px;min-height:36px}.has-tooltip>[role="tooltip"]{position:fixed;left:16px;right:16px;bottom:20px;width:auto;max-width:none;padding:13px 15px}.menu-option{backdrop-filter:none}body[data-phase="build"] .build-banner{padding:15px 16px}}
@media(prefers-reduced-motion:reduce){.combat-hand .fan-card{transition:none!important;animation:none!important}.card-flight-layer{display:none!important}.has-tooltip>[role="tooltip"]{transition:none!important}}
.menu-grid .menu-option-codex{grid-column:auto;width:auto;justify-self:stretch}
.menu-tools{position:absolute;top:15px;right:20px;display:flex;align-items:center;gap:8px;z-index:5}
.reset-progress-button{border-color:#a56a89;background:#1c1723d9;color:#f6bed6;font-size:12px;min-height:36px;padding:7px 11px;box-shadow:0 2px 10px #0005}
.reset-progress-button:hover{border-color:#ffd1e5;background:#3a2031}.reset-progress-button:focus-visible{outline-color:#ffc1de}
.basic-guide{max-width:100%;font-size:14px;line-height:1.85}.guide-flow,.rules-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
.guide-step,.tutorial-step{min-width:0;border:1px solid #3d6079;border-top:3px solid var(--cyan);background:#102238;padding:15px 17px}
.guide-step h3,.tutorial-step h3{font-size:18px;margin:5px 0 8px}.guide-step p,.tutorial-step p{margin:6px 0;color:#c3d3e5;font-size:14px;line-height:1.85}
.guide-step .step-number,.tutorial-step .step-number{display:inline-grid;place-items:center;background:#194358;border:1px solid #77c7e3;color:#e4faff;width:30px;height:30px;font:700 13px ui-monospace,monospace}
.guide-example{padding:15px;border-left:3px solid var(--amber);background:#2e291c80;margin:16px 0}.guide-example h4{font-size:16px;color:#ffe3a0;margin:0 0 7px}.guide-example p{font-size:14px;color:#d9d9d3;margin:5px 0}.guide-example .cards{min-height:0;padding:12px 0;gap:10px}
@media(max-width:640px){header nav{flex-basis:100%;width:100%;min-width:0;flex-wrap:wrap;justify-content:flex-start;margin-left:0;gap:5px}header nav button{font-size:12px;min-height:34px;flex:0 1 auto}header .live{margin-right:2px}.menu-tools{right:12px;top:11px}.menu-tools .reset-progress-button{font-size:11px;padding:6px 9px;min-height:32px}.guide-flow,.rules-steps{grid-template-columns:1fr;gap:10px}.guide-step,.tutorial-step{padding:13px 14px}.guide-step h3,.tutorial-step h3{font-size:17px}}
/* A sealed portrait is dimmed once, without multiplying parent and child filters. */
.bot-slot.sealed .bot-art-button,.bot.sealed .bot-art-button{filter:none;opacity:1;background:#10101b}
.bot-slot.sealed .bot-icon,.bot.sealed .bot-icon{filter:grayscale(.85) brightness(.42) saturate(.35);opacity:.82}


/* v2.6.12 — readable cards in every deck view and an unobstructed shallow fan. */
body.agi-ui .cards:not(.combat-hand){gap:18px 16px;padding:24px 10px 22px;align-items:flex-start;justify-content:center;min-height:0}
body.agi-ui .cards:not(.combat-hand) .card{flex:0 0 128px;width:128px;min-width:128px;max-width:none;height:192px;aspect-ratio:2/3;box-shadow:0 5px 10px #0009}
body.agi-ui .cards:not(.combat-hand) .card:hover{transform:translateY(-4px)}
body.agi-ui .cards:not(.combat-hand) .card.selected{transform:translateY(-8px)}
body.agi-ui .scroll-cards{max-height:min(64vh,620px);padding-block:24px;scrollbar-gutter:stable}
body.agi-ui .suit-group>.cards{max-height:none;overflow:visible;justify-content:flex-start}
body.agi-ui dialog .cards:not(.combat-hand){max-height:min(63vh,620px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable}
body.agi-ui .suit-group h3{position:relative;z-index:1}
body.agi-ui .cards .card:disabled{opacity:1;filter:none;cursor:default}
body.agi-ui .cards:not(.combat-hand) .card:disabled:hover{transform:none}
body.agi-ui .card .card-face{image-rendering:auto;object-fit:contain;object-position:center}
body.agi-ui .card .chip{font:600 11px/1.35 system-ui,sans-serif;padding:3px 2px;gap:3px;bottom:5px;min-height:22px}
body.agi-ui .card .chip img,body.agi-ui .card .chip .ui-vector{width:17px;height:17px;flex:none}
body.agi-ui .card .card-check{right:-7px;top:-8px;width:22px;height:22px;font:800 14px/20px ui-monospace,monospace;z-index:8}
body.agi-ui .combat-hand{height:var(--fan-height,280px);margin:3px 0 18px;scroll-padding-inline:24px;scrollbar-gutter:stable}
body.agi-ui .combat-hand .fan-card{--fan-lift:0px}
body.agi-ui .combat-hand .fan-card:hover,body.agi-ui .combat-hand .fan-card:focus-visible{--fan-lift:-12px}
body.agi-ui .combat-hand .fan-card.selected{--fan-lift:-16px}
body.agi-ui .combat-hand .fan-card.selected:hover,body.agi-ui .combat-hand .fan-card.selected:focus-visible{--fan-lift:-18px}
body.agi-ui .combat-hand .fan-card:disabled{--fan-lift:0px}
body.agi-ui .fan-scroll-hint{left:8px;bottom:1px;max-width:calc(100% - 16px);white-space:normal}
/* The badge is rendered from the resolved card, not from the base artwork. */
.card-index-badge{position:absolute;top:5px;left:5px;z-index:6;display:grid;place-items:center;align-content:center;gap:1px;min-width:32px;min-height:40px;padding:3px 5px;border:1px solid #d0e2f0ba;border-radius:3px;background:#071321f5;box-shadow:0 1px 4px #000c;color:#edf7ff;pointer-events:none;text-shadow:none;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;line-height:1}
.card-index-rank{display:block;font-size:22px;font-weight:800;letter-spacing:-.04em;line-height:1}
.card-index-suit{display:block;font-size:16px;font-weight:800;line-height:1}
.card-index-badge.is-red,.card-index-badge[data-suit="♥"],.card-index-badge[data-suit="♦"]{color:#ff91a9;border-color:#fb9bb8c9}
.card-index-badge.is-wild,.card-index-badge[data-wild="true"]{color:#e0b5ff;border-color:#bf8fef}
.card-index-badge .card-index-rank.joker-label{font-size:12px;letter-spacing:0}
@media(min-width:1700px){body.agi-ui .cards:not(.combat-hand) .card{flex-basis:140px;width:140px;min-width:140px;height:210px}}
@media(max-width:640px){
 body.agi-ui .cards:not(.combat-hand){gap:18px 14px;padding:23px 9px 20px}
 body.agi-ui .cards:not(.combat-hand) .card{flex-basis:104px;width:104px;min-width:104px;height:156px;max-width:none}
 body.agi-ui dialog .cards:not(.combat-hand){max-height:60vh;padding-inline:8px;gap:18px 12px}
 body.agi-ui .suit-group>.cards{justify-content:center}
 body.agi-ui .combat-hand .fan-card:hover{--fan-lift:0px}
 body.agi-ui .combat-hand .fan-card.selected,body.agi-ui .combat-hand .fan-card.selected:hover{--fan-lift:-12px}
 body.agi-ui .combat-hand .fan-card:focus-visible,body.agi-ui .combat-hand .fan-card.selected:focus-visible{--fan-lift:-14px}
 body.agi-ui .card .chip{font-size:10px;min-height:21px;padding:2px 1px;gap:2px;bottom:4px}
 body.agi-ui .card .chip img,body.agi-ui .card .chip .ui-vector{width:15px;height:15px}
 .card-index-badge{top:4px;left:4px;min-width:29px;min-height:36px;padding:3px 4px}
 .card-index-rank{font-size:20px}.card-index-suit{font-size:14px}
}
@media(prefers-reduced-motion:reduce){body.agi-ui .cards .card{transition:none!important;animation:none!important}}

/* v2.6.12 compact BOT result rows and active construction confirmation. */
.bot-hand-records{list-style:none;padding:0;margin:0;font-size:11px;line-height:1.65}.bot-hand-records li{padding:3px 0;overflow-wrap:anywhere}.bot-hand-records b{color:#8ee7f5;margin-right:4px}.delete-confirm:not(:disabled){border:2px solid #ffd576!important;box-shadow:0 0 0 2px #ffcc5655,0 0 22px #ffbd3340;background:linear-gradient(135deg,#654715,#3e3218)!important;color:#fff5d0!important}.codex-silhouette-material{width:100%;height:100%;object-fit:contain;opacity:1}.codex-silhouette-unavailable{display:grid;place-items:center;width:100%;height:100%;color:#7e9daf;font-size:28px}

/* Studio signature: original transparent artwork, quiet on non-combat screens. */
.credits-copy .studio-logo{width:min(100%,440px);max-width:100%;height:auto;margin:28px 0 14px;object-fit:contain}
.studio-watermark{pointer-events:none;user-select:none;-webkit-user-select:none;opacity:.13}
.studio-watermark img{display:block;width:100%;height:auto;object-fit:contain;pointer-events:none}
.studio-watermark-menu{position:absolute;z-index:0;right:28px;bottom:18px;width:clamp(220px,30vw,380px);max-width:calc(100% - 48px)}
.studio-watermark-intermission{width:clamp(180px,26vw,280px);max-width:62%;margin:24px 0 2px auto;opacity:.12}
@media(max-width:640px){.credits-copy .studio-logo{width:min(100%,360px);margin-top:24px}.studio-watermark-menu{right:12px;bottom:8px;width:min(68vw,260px);max-width:calc(100% - 24px);opacity:.09}.studio-watermark-intermission{width:min(58vw,220px);max-width:70%;margin-top:20px;opacity:.11}}

/* v2.6.12 equipment refresh and cumulative, current-phase guidance. */
.equipment-refresh{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 16px;margin:14px 0 18px;border:1px solid #8bd9ed88;border-radius:10px;background:#102b35b8}.equipment-refresh span{color:#c6e3ea}.boss-tip ol{padding-left:21px;line-height:1.65}.boss-tip li+li{margin-top:7px}

/* Permanent red game title; version updates do not change this display name. */
.main-menu h1.game-title{font-family:"Songti SC","STSong","SimSun",serif;font-size:clamp(32px,5.2vw,64px);letter-spacing:.015em;white-space:normal;line-height:1.2;color:#ed234d}
.main-menu h1.game-title .game-title-en{font-family:Georgia,"Times New Roman",serif;font-size:.7em;white-space:nowrap;color:inherit}
.footer-version{font-size:11px;font-weight:400}
body:not([data-screen="menu"]) .footer-version{display:none}
.main-menu .menu-tools{position:relative;top:auto;right:auto;min-height:32px;justify-content:flex-end;margin:0 0 18px}
