:root{--ink: #17130f;--ink-2: #241a14;--paper: #ead9b8;--paper-light: #f6ecd4;--paper-dim: rgba(234, 217, 184, .66);--gold: #d4a83c;--gold-light: #f3d985;--red: #b3261e;--red-dark: #6e120e;--jade: #3f9c7c;--indigo: #2c4a7c;--line: rgba(212, 168, 60, .35);--panel: rgba(30, 18, 14, .92);--panel-2: rgba(52, 30, 22, .9);--font-kai: "KaiTi", "STKaiti", "Kaiti SC", "Songti SC", serif;--font-ui: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", system-ui, sans-serif;--card-w: 128px;--card-h: 180px;--sat: env(safe-area-inset-top, 0px);--sar: env(safe-area-inset-right, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px)}*{box-sizing:border-box}html,body{height:100%;margin:0;overscroll-behavior:none;touch-action:manipulation;touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}img{-webkit-user-drag:none}body{background:var(--ink);color:var(--paper);font:14px/1.5 var(--font-ui);overflow:hidden;user-select:none;-webkit-user-select:none}#app{position:fixed;inset:0;overflow:hidden}h1,h2,h3,h4{font-family:var(--font-kai);font-weight:700;margin:0;letter-spacing:.08em}p{margin:.3em 0}small{font-size:.7em;opacity:.75;margin-left:.5em;font-weight:400}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d4a83c66;border-radius:4px}::-webkit-scrollbar-track{background:#00000040}.btn{font:15px var(--font-kai);letter-spacing:.1em;color:var(--paper-light);background:linear-gradient(#4a2a1e,#2a1610);border:1px solid var(--line);border-radius:4px;padding:6px 16px;cursor:pointer;transition:filter .12s,transform .08s,box-shadow .12s;white-space:nowrap}@media(hover:hover){.btn:hover:not(:disabled){filter:brightness(1.25);box-shadow:0 0 10px #d4a83c59}}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:linear-gradient(#c8372b,#7d160f);border-color:var(--gold);color:#fff5dc}.btn.danger{background:linear-gradient(#5a1f1a,#2e0d0a)}.btn.plain{background:#00000059}.btn.small{font-size:13px;padding:3px 10px}.btn.big{font-size:20px;padding:10px 36px}input,select,textarea{font:14px var(--font-ui);color:var(--paper-light);background:#00000073;border:1px solid var(--line);border-radius:3px;padding:5px 8px;user-select:text;-webkit-user-select:text}input:focus,select:focus,textarea:focus{outline:1px solid var(--gold)}select option{background:#241a14}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.end{justify-content:flex-end}.row.center{justify-content:center}.col{display:flex;flex-direction:column;gap:8px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:14px 18px}.tag{display:inline-block;font-size:12px;padding:1px 8px;border-radius:3px;background:#5a4630;color:#fff;white-space:nowrap}.tag.ghost{background:transparent;border:1px solid var(--line);color:var(--paper)}.hint{color:var(--paper-dim);font-size:13px}.tabs{display:flex;gap:6px;margin-bottom:12px}.tab{font:16px var(--font-kai);color:var(--paper-dim);background:#0006;border:1px solid var(--line);border-bottom:none;padding:6px 22px;border-radius:6px 6px 0 0;cursor:pointer}.tab.on{color:var(--gold-light);background:var(--panel-2)}.page{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--ink) center / cover no-repeat;padding:var(--sat) var(--sar) var(--sab) var(--sal)}.page:before{content:"";position:absolute;inset:0;background:#120a089e;pointer-events:none}.page>*{position:relative}.page.loading{align-items:center;justify-content:center;font:22px var(--font-kai)}.page-head{display:flex;align-items:center;gap:18px;padding:12px 24px;background:linear-gradient(#140a08f2,#140a0899);border-bottom:1px solid var(--line)}.page-head h2{font-size:26px;color:var(--gold-light)}.page-body{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:18px max(24px,calc(50vw - 620px)) 40px}h3.sec{font-size:19px;color:var(--gold-light);margin:18px 0 10px;padding-bottom:4px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px}h3.sec img{width:28px;height:28px}.sticky{position:sticky;bottom:-20px;padding:14px 0;background:linear-gradient(transparent,#120a08f2 40%)}.page.menu:before{background:linear-gradient(90deg,#120a0833,#120a0826 45%,#120a08e0 70%)}.menu-brand{position:absolute;left:calc(8vw + var(--sal));top:calc(12vh + var(--sat));text-shadow:0 2px 18px rgba(0,0,0,.8)}.menu-brand h1{font-size:clamp(90px,14vw,190px);line-height:1;color:#1a120c;-webkit-text-stroke:1px rgba(243,217,133,.5);writing-mode:vertical-rl;letter-spacing:.12em;text-shadow:0 0 40px rgba(246,236,212,.55)}.menu-seal{position:absolute;left:clamp(100px,15vw,210px);top:20px;width:84px;transform:rotate(-4deg);filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}.menu-brand p{position:absolute;left:clamp(104px,15.4vw,216px);top:124px;writing-mode:vertical-rl;font:18px var(--font-kai);letter-spacing:.3em;color:var(--paper-light);margin:0;white-space:nowrap}.menu-list{position:absolute;right:calc(7vw + var(--sar));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;width:min(360px,34vw)}.menu-item{text-align:left;background:linear-gradient(90deg,#3c1810f2,#1e0e0ab3);border:1px solid var(--line);border-left:4px solid var(--red);color:var(--paper);padding:12px 20px;cursor:pointer;transition:transform .15s,border-color .15s,background .15s;border-radius:2px}.menu-item b{display:block;font:700 24px var(--font-kai);letter-spacing:.2em;color:var(--paper-light)}.menu-item span{font-size:12px;color:var(--paper-dim)}@media(hover:hover){.menu-item:hover{transform:translate(-10px);border-left-color:var(--gold);background:linear-gradient(90deg,#7d160ff2,#3c1810cc)}}.menu-item:active{border-left-color:var(--gold)}.menu-foot{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:10px calc(24px + var(--sar)) calc(10px + var(--sab)) calc(24px + var(--sal));font-size:12px;color:var(--paper-dim);background:#0a060499}.menu-foot input{width:130px}.card{--kind: #6b6156;position:relative;flex:none;width:var(--card-w);height:var(--card-h);border-radius:7px;background:linear-gradient(#f6ecd4,#e2cfa6);color:#2a1c12;border:2px solid #2a1c12;box-shadow:0 0 0 1px var(--kind) inset,0 3px 8px #00000080;overflow:hidden;transition:transform .14s,box-shadow .14s,filter .14s}.card-art{position:absolute;left:5px;right:5px;top:5px;height:46%;background:#cdb88c center / cover;border:1px solid rgba(42,28,18,.5);border-radius:4px}.card-cost{position:absolute;left:-2px;top:-2px;width:30px;height:30px;border-radius:0 0 14px;background:var(--ink);color:var(--gold-light);font:700 18px/30px var(--font-kai);text-align:center;z-index:1;border:1px solid var(--gold)}.card-cost.up{color:#ff8a70}.card-cost.down{color:#8ff0b0}.card-cost.resp{font-size:15px;color:#9fd0ff}.card-elem{position:absolute;right:3px;top:3px;height:22px;padding:0 6px;border-radius:11px;color:#fff;font:700 13px/22px var(--font-kai);z-index:1;display:flex;gap:3px;box-shadow:0 1px 3px #00000080}.card-elem i{font-style:normal;opacity:.9}.card-name{position:absolute;left:0;right:0;top:50%;text-align:center;font:700 18px var(--font-kai);letter-spacing:.08em;background:var(--kind);color:#fff;padding:1px 0;text-shadow:0 1px 2px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden}.card-kind{position:absolute;right:5px;bottom:3px;font-size:10px;color:#2a1c1299}.card-desc{position:absolute;left:7px;right:7px;top:calc(50% + 28px);bottom:14px;font-size:10.5px;line-height:1.32;overflow:hidden;color:#3a2a1c}.card.small{width:84px;height:118px;border-radius:5px}.card.small .card-art{height:58%}.card.small .card-name{top:64%;font-size:14px}.card.small .card-cost{width:24px;height:24px;font-size:14px;line-height:24px}.card.small .card-elem{height:18px;font-size:11px;line-height:18px;padding:0 4px}.card.small .card-kind{display:none}.card.back{background:#5c1612 center / cover}.card.empty{background:#00000040;border:1px dashed var(--line);box-shadow:none}.card.unknown{display:grid;place-items:center}.hero-card{--fc: #555;--fc-dark: #222;position:relative;flex:none;width:150px;height:200px;border-radius:8px;overflow:hidden;border:2px solid var(--fc-dark);box-shadow:0 0 0 1px var(--gold) inset,0 4px 10px #0000008c;cursor:pointer;transition:transform .14s,box-shadow .14s,filter .14s;background:#222}.hero-art{position:absolute;inset:0;background:center top / cover}.hero-emblem{position:absolute;left:4px;top:4px;width:34px;height:34px;filter:drop-shadow(0 1px 3px #000)}.hero-hp{position:absolute;right:5px;top:6px;display:flex;flex-direction:column;gap:3px}.hero-hp i,.seat-hp i{width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff9a8a,#c0261c 60%,#6e120e);border:1px solid rgba(0,0,0,.6);display:block}.hero-plate{position:absolute;left:0;right:0;bottom:0;padding:14px 8px 6px;background:linear-gradient(transparent,#000000e6 45%);text-align:center}.hero-name{font:700 22px var(--font-kai);letter-spacing:.15em;color:#fff;text-shadow:0 0 6px var(--fc),0 1px 2px #000}.hero-title{font-size:11px;color:var(--paper-dim)}.hero-card.small{width:96px;height:128px;border-radius:6px}.hero-card.small .hero-name{font-size:16px}.hero-card.small .hero-title{display:none}.hero-card.small .hero-emblem{width:24px;height:24px}.hero-card.small .hero-hp i{width:8px;height:8px}.hero-card.small .hero-plate{padding:10px 4px 3px}@media(hover:hover){.hero-card:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--gold) inset,0 8px 18px #0009,0 0 14px var(--fc)}}.hero-card.selected{outline:3px solid var(--gold-light);box-shadow:0 0 22px var(--gold);transform:translateY(-4px)}.hero-card.taken{filter:grayscale(1) brightness(.5);pointer-events:none}.hero-card.unknown{display:grid;place-items:center;font:18px var(--font-kai);color:var(--paper-dim);cursor:default}.skill-line{margin:6px 0;line-height:1.5}.skill-line b{color:var(--gold-light);font-family:var(--font-kai);font-size:15px}.sk-kind{font-size:11px;padding:0 5px;margin-right:6px;border-radius:2px;background:#5a4630}.sk-kind.active{background:var(--red)}.sk-kind.trigger{background:var(--indigo)}.sk-kind.passive{background:#4a6b3c}.picker{display:flex;flex-direction:column;gap:10px}.picker-row{display:flex;gap:12px;align-items:center}.picker-emblem{width:44px;height:44px;flex:none}.picker-list,.grid,.minis{display:flex;flex-wrap:wrap;gap:10px}.grid{gap:14px}.hero-detail{display:flex;gap:20px}.hero-detail-art{flex:none;width:270px;height:360px;background:center / cover;border-radius:8px;border:2px solid var(--gold)}.hero-detail-body h3{font-size:34px;color:var(--paper-light);margin-bottom:8px}.bio{color:var(--paper-dim);font-family:var(--font-kai);font-size:15px;margin:12px 0}.levels{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.level{text-align:left;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:4px;color:var(--paper);padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:transform .12s,background .12s}.level b{font:700 20px var(--font-kai);letter-spacing:.12em;color:var(--paper-light)}.level span{font-size:12px;color:var(--paper-dim)}@media(hover:hover){.level:hover{transform:translateY(-3px);background:var(--panel-2)}}.level.done{border-left-color:var(--gold)}.level.locked{filter:grayscale(1) brightness(.6)}.stars i{font-style:normal;font-size:18px;color:#fff3}.stars i.on{color:var(--gold-light);text-shadow:0 0 8px var(--gold)}.level-dialog h3{font-size:28px;color:var(--gold-light)}.level-dialog h4{margin:12px 0 6px;color:var(--gold);font-size:16px}.intro{font:16px/1.7 var(--font-kai);color:var(--paper-light)}.level-sides{display:flex;gap:30px}.modes{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.mode{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:4px;color:var(--paper);padding:10px 14px;cursor:pointer}.mode b{display:block;font:700 19px var(--font-kai)}.mode span{font-size:12px;color:var(--paper-dim)}.mode.on{border-color:var(--gold-light);background:linear-gradient(#7d160f,#3c1810);box-shadow:0 0 12px #d4a83c66}.help-body{max-width:860px;font-size:15px;line-height:1.8;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:8px 28px 24px}.net-status{margin-left:auto;font-size:13px;color:#e09a6a}.net-status.on{color:#8fe0a8}.lobby-actions{display:flex;flex-direction:column;gap:10px}.lobby-actions b{width:80px;font-family:var(--font-kai);color:var(--gold-light)}.rooms{display:flex;flex-direction:column;gap:8px}.room{display:grid;grid-template-columns:90px 120px 1fr 80px;gap:10px;text-align:left;align-items:center;background:var(--panel);border:1px solid var(--line);color:var(--paper);padding:10px 16px;border-radius:4px;cursor:pointer}@media(hover:hover){.room:hover:not(:disabled){background:var(--panel-2)}}.room:disabled{opacity:.5;cursor:not-allowed}.room b{font:700 18px var(--font-kai);color:var(--gold-light)}.room-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.room-head h3{font-size:24px;color:var(--gold-light)}.room-seats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.room-seat{width:124px;min-height:196px;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px}.room-seat.me{border-color:var(--gold-light);box-shadow:0 0 10px #d4a83c59}.room-seat.empty{justify-content:center;color:var(--paper-dim);border-style:dashed}.room-seat b{font-family:var(--font-kai);font-size:15px}.room-cols{display:grid;grid-template-columns:1fr 280px;gap:24px}.chat{display:flex;flex-direction:column}.chat-log{height:220px;overflow-y:auto;overscroll-behavior:contain;background:#0006;border:1px solid var(--line);border-radius:4px;padding:6px 10px;margin-bottom:6px;font-size:13px;user-select:text;-webkit-user-select:text}.chat-row{display:flex;gap:6px}.chat-row input{flex:1;min-width:0}.table{position:absolute;inset:0;display:grid;grid-template-rows:40px minmax(150px,25vh) minmax(0,1fr) 38px 266px;background:#1c120c center / cover no-repeat;overflow:hidden;padding:var(--sat) var(--sar) var(--sab) var(--sal)}.table:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(92deg,rgba(0,0,0,.05) 0 3px,transparent 3px 11px),radial-gradient(ellipse at 50% 46%,rgba(212,168,60,.1),transparent 60%);pointer-events:none}.table>*{position:relative;min-height:0}.t-top{display:flex;align-items:center;gap:18px;padding:0 16px;background:#0a0604bf;border-bottom:1px solid var(--line)}.t-logbtn,.t-log-x,.pile-name{display:none}.t-tools .btn.off{opacity:.5}.t-title{font:700 18px var(--font-kai);color:var(--gold-light);letter-spacing:.12em}.t-info{color:var(--paper-dim);font-size:13px}.t-tools{margin-left:auto;display:flex;gap:8px}.t-opps{display:flex;justify-content:center;align-items:center;gap:clamp(10px,2.2vw,36px);padding:8px 16px}.t-mid{display:grid;grid-template-columns:1fr 270px;gap:12px;padding:0 12px}.t-center{position:relative;display:flex;align-items:center;justify-content:center;gap:30px}.t-pile{display:flex;gap:14px;position:absolute;left:12px;top:50%;transform:translateY(-50%)}.pile{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--paper-dim)}.t-show{display:flex;gap:14px;align-items:center;justify-content:center;pointer-events:none}.show-item{display:flex;flex-direction:column;align-items:center;gap:4px;animation:show-in .25s ease-out;transition:opacity .45s,transform .45s}.show-item.out{opacity:0;transform:translateY(-16px) scale(.92)}.show-item .card{box-shadow:0 0 24px #f3d9858c,0 4px 12px #000}.show-item.resp .card{box-shadow:0 0 24px #78beffb3,0 4px 12px #000}.show-item.ok .card{box-shadow:0 0 26px #78ffaacc}.show-item.fail .card{filter:grayscale(.8) brightness(.75)}.show-label{font:14px var(--font-kai);color:var(--gold-light);text-shadow:0 1px 3px #000}@keyframes show-in{0%{opacity:0;transform:translateY(26px) scale(1.25)}}.t-choice{position:absolute;inset:0;display:none;align-items:center;justify-content:center;gap:14px;background:#0c0604d1;border:1px solid var(--line);border-radius:8px;z-index:5;flex-wrap:wrap;padding:10px}.t-choice.on{display:flex}.choice{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:1px solid transparent;border-radius:6px;color:var(--paper);padding:8px;cursor:pointer;font-size:13px}@media(hover:hover){.choice:hover{border-color:var(--gold-light);background:#d4a83c26}}.t-side{display:flex;flex-direction:column;background:#0a060499;border:1px solid var(--line);border-radius:6px;overflow:hidden}.t-log-title{font:14px var(--font-kai);color:var(--gold-light);padding:3px 10px;border-bottom:1px solid var(--line);background:#0000004d}.t-log{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px 10px;font-size:12px;line-height:1.55;user-select:text;-webkit-user-select:text}.log-line{color:var(--paper-dim)}.log-line.turn{color:var(--gold-light);margin-top:4px;font-family:var(--font-kai);font-size:13px}.log-line.use{color:var(--paper-light)}.log-line.dmg{color:#ff9a85}.log-line.heal{color:#9be8b4}.log-line.skill{color:#f3d985}.log-line.death{color:#ff6a55;font-weight:700}.log-line.sys{color:#9fc4e8}.t-bannerwrap{display:flex;flex-direction:column;align-items:center;justify-content:center}.t-banner{font:17px var(--font-kai);letter-spacing:.08em;color:var(--paper-dim);padding:3px 26px;border-radius:16px;max-width:92vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-banner.mine{color:#fff5dc;background:linear-gradient(90deg,transparent,rgba(179,38,30,.85) 12%,rgba(179,38,30,.85) 88%,transparent);text-shadow:0 1px 2px #000}.t-banner.empty{visibility:hidden}.t-timer{width:300px;height:3px;background:#00000080;border-radius:2px;visibility:hidden;overflow:hidden}.t-timer.on{visibility:visible}.t-timer i{display:block;height:100%;background:var(--gold);transition:width .2s linear}.t-timer i.low{background:#ff5a40}.t-bottom{display:grid;grid-template-columns:176px 1fr 190px;gap:10px;padding:6px 12px 10px;background:linear-gradient(transparent,#0a0604b3 30%)}.t-me{display:flex;align-items:flex-end;justify-content:center}.t-handwrap{display:flex;flex-direction:column;min-width:0}.t-skills{display:flex;gap:8px;justify-content:center;height:32px;flex:none}.skill{font:15px var(--font-kai);letter-spacing:.12em;padding:2px 16px;border-radius:14px;border:1px solid var(--line);color:var(--paper-dim);background:#00000080;cursor:default}.skill.active{border-color:#a0463c}.skill.trigger{border-color:#4a6aa0}.skill.passive{border-color:#4a7a4a}.skill.usable{color:#fff5dc;background:linear-gradient(#c8372b,#7d160f);border-color:var(--gold);cursor:pointer;box-shadow:0 0 10px #d4a83c73}@media(hover:hover){.skill.usable:hover{filter:brightness(1.25)}}.skill.selected{outline:2px solid var(--gold-light)}.skill:disabled{opacity:.55}.t-hand{flex:1;display:flex;justify-content:center;align-items:flex-end;padding:22px 4px 0;min-width:0;--n: 1}.t-hand .card{cursor:pointer}.t-hand .card+.card{margin-left:min(6px,calc((100% - var(--n) * 132px) / max(var(--n) - 1,1)))}@media(hover:hover){.t-hand .card:hover{transform:translateY(-18px);z-index:3}}.t-hand .card.usable{box-shadow:0 0 0 1px var(--kind) inset,0 0 14px #f3d985bf,0 3px 8px #00000080}.t-hand .card.dim{filter:brightness(.55) saturate(.6)}.t-hand .card.selected,.t-choice .card.selected{transform:translateY(-26px);z-index:4;outline:3px solid var(--gold-light);box-shadow:0 0 26px var(--gold);filter:none}.t-choice .card{cursor:pointer}@media(hover:hover){.t-choice .card:hover:not(.selected){transform:translateY(-8px)}}.hand-note{align-self:center;font:18px var(--font-kai);color:var(--paper-dim)}.t-actions{display:flex;flex-direction:column;justify-content:flex-end;gap:8px}.t-actions .btn{font-size:18px;padding:9px 10px}.orders{display:flex;flex-wrap:wrap;align-items:center;gap:3px;margin-bottom:auto;padding-top:30px}.orders img{width:26px;height:26px}.orders span{font:15px var(--font-kai);color:var(--gold-light);margin-left:4px;width:100%}.seat{--fc: #555;position:relative;flex:none;width:clamp(118px,11.5vw,156px);height:100%;max-height:208px;border-radius:8px;overflow:hidden;border:2px solid #120a06;box-shadow:0 0 0 1px var(--line) inset,0 4px 12px #0009;background:#1a120c;transition:box-shadow .2s,transform .2s,filter .3s}.seat.mine{width:164px;height:100%;max-height:220px}.seat-art{position:absolute;inset:0;background:center top / cover}.seat-emblem{position:absolute;left:3px;top:3px;width:28px;height:28px;filter:drop-shadow(0 1px 3px #000);pointer-events:none}.seat-tag{position:absolute;right:0;top:0;font:12px var(--font-kai);padding:1px 8px;border-radius:0 0 0 6px;background:var(--red-dark);color:#ffd9c8}.seat.ally .seat-tag{background:#1f5a44;color:#c8ffe2}.seat.mine .seat-tag{background:var(--gold);color:#2a1c12}.seat-hand{position:absolute;right:4px;top:24px;display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:12px}.seat-hand span{background:#000000b3;border-radius:3px;padding:0 5px}.seat-hand .trap{color:#b8f0a0}.seat-status{position:absolute;left:3px;top:34px;display:flex;flex-direction:column;gap:2px}.status{width:24px;height:24px;filter:drop-shadow(0 1px 2px #000)}.seat-foot{position:absolute;left:0;right:0;bottom:0;padding:16px 5px 4px;background:linear-gradient(transparent,#000000eb 38%)}.seat-name{font:700 15px var(--font-kai);color:#fff;text-shadow:0 0 5px var(--fc),0 1px 2px #000;white-space:nowrap;overflow:hidden}.seat-hp{display:flex;gap:2px;margin:2px 0 3px;flex-wrap:wrap;align-items:center}.seat-hp i{width:10px;height:10px;filter:grayscale(1) brightness(.35)}.seat-hp i.on{filter:none}.seat-hp.big{font-size:12px}.seat-hp.big b{color:#ff9a8a;font-size:15px}.hpbar{flex-basis:100%;height:5px;background:#300;border-radius:3px;overflow:hidden}.hpbar i{all:unset;display:block;height:100%;background:linear-gradient(90deg,#c0261c,#ff7a60);filter:none}.seat-equip{display:grid;grid-template-columns:1fr 1fr;gap:2px}.eq{display:flex;align-items:center;gap:2px;height:16px;font-size:10px;background:#00000080;border-radius:2px;overflow:hidden;white-space:nowrap;opacity:.35}.eq.on{opacity:1;background:#5a3c14d9;color:var(--gold-light)}.eq img{width:14px;height:14px;flex:none}.seat.current{box-shadow:0 0 0 2px var(--gold-light),0 0 22px #f3d985b3}.seat.cand{cursor:pointer;animation:cand 1s ease-in-out infinite}@media(hover:hover){.seat.cand:hover{transform:scale(1.05)}}.seat.picked{box-shadow:0 0 0 3px #ff5a40,0 0 26px #ff5a40;animation:none}.seat.dead{filter:grayscale(1) brightness(.4)}.seat.thinking:after{content:"思考中…";position:absolute;left:50%;top:42%;transform:translate(-50%);font:13px var(--font-kai);background:#000000b3;padding:1px 8px;border-radius:10px;color:var(--gold-light);animation:blink 1s infinite}@keyframes cand{50%{box-shadow:0 0 0 2px #ff8a60,0 0 22px #ff6e46cc}}@keyframes blink{50%{opacity:.45}}.bubble{position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);font:700 20px var(--font-kai);letter-spacing:.1em;padding:2px 12px;border-radius:4px;white-space:nowrap;pointer-events:none;z-index:6;animation:bubble 1.4s ease-out forwards;background:#000000bf;color:#fff}.bubble.skill{color:var(--gold-light);border:1px solid var(--gold);font-size:22px}.bubble.bad{color:#ff9a85}.bubble.good{color:#9be8b4}.bubble.big{font-size:24px;background:var(--red)}@keyframes bubble{0%{opacity:0;transform:translate(-50%,-20%) scale(.6)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-90%)}}.over-back{position:absolute;inset:0;z-index:50;display:grid;place-items:center;background:#080402c7;animation:fade .5s}.over{text-align:center;padding:30px 70px 34px;background:var(--panel);border:2px solid var(--gold);border-radius:10px;box-shadow:0 0 60px #d4a83c59;min-width:380px}.over-title{font:700 92px var(--font-kai);letter-spacing:.25em;margin-right:-.25em;line-height:1.15}.over.win .over-title{color:var(--gold-light);text-shadow:0 0 30px var(--gold)}.over.lose .over-title{color:#8a8076}.over.draw .over-title{color:var(--paper)}.over-sub{margin:4px 0 16px;color:var(--paper-dim)}.over-stars .stars i{font-size:46px}.over-note{color:var(--paper-dim);margin-bottom:16px}@keyframes fade{0%{opacity:0}}.tip{position:fixed;z-index:1000;max-width:320px;background:#140c08f7;border:1px solid var(--gold);border-radius:6px;padding:9px 13px;font-size:13px;line-height:1.55;pointer-events:none;box-shadow:0 6px 20px #000000b3}.tip-title{display:flex;align-items:center;gap:6px;margin-bottom:4px}.tip-title b{font:700 17px var(--font-kai);color:var(--gold-light)}.tip-cost{margin-left:auto;font-size:12px;color:var(--paper-dim)}.flavor{font-family:var(--font-kai);color:var(--paper-dim);font-size:13px}.modal-back{position:fixed;inset:0;z-index:800;background:#080402b8;display:grid;place-items:center;animation:fade .2s;padding:var(--sat) var(--sar) var(--sab) var(--sal)}.modal{position:relative;background:var(--panel);border:1px solid var(--gold);border-radius:8px;padding:22px 26px;max-width:min(560px,92vw);max-height:90vh;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 10px 50px #000c}.modal-x{position:sticky;top:-14px;float:right;z-index:2;margin:-14px -18px 0 8px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#0000008c;color:var(--paper-light);font:22px/1 var(--font-ui);cursor:pointer}.card-detail{display:flex;gap:16px;align-items:flex-start}.card-detail .tip-card{font-size:15px;line-height:1.6;min-width:0}.tip.touch{max-width:min(340px,calc(100vw - 16px));max-height:calc(100vh - 16px);overflow:hidden;font-size:14px}.tip-seat p{margin:.35em 0}.tip-seat p b{color:var(--gold-light);margin-right:4px}.tip-line{color:var(--paper-dim)}.modal.wide{max-width:min(900px,94vw)}.confirm p{font-size:16px;margin-bottom:18px}#toasts{position:fixed;left:50%;top:calc(56px + var(--sat));transform:translate(-50%);z-index:1100;display:flex;flex-direction:column;gap:6px;align-items:center;pointer-events:none}.toast{background:#140c08f2;border:1px solid var(--gold);border-radius:4px;padding:6px 18px;animation:show-in .2s;transition:opacity .4s;font-size:14px;max-width:80vw}.toast.error{border-color:#ff5a40;color:#ffb4a4}.toast.out{opacity:0}@media(max-height:700px){:root{--card-w: 112px;--card-h: 158px}.card-desc{font-size:9.5px}.t-hand .card+.card{margin-left:min(6px,calc((100% - var(--n) * 116px) / max(var(--n) - 1,1)))}}@media(pointer:coarse){.btn{min-height:44px;padding:8px 18px}.btn.small{min-height:38px;min-width:44px;padding:4px 12px}.btn.big{min-height:52px}.tab{min-height:44px}input,select,textarea{font-size:16px;min-height:44px}.skill{min-height:36px}::-webkit-scrollbar{width:4px;height:4px}}@media(max-width:640px),(max-height:540px){.page-head{gap:10px;padding:6px 12px}.page-head h2{font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.page-body{padding:12px 12px 32px}h3.sec{font-size:17px;margin:12px 0 8px}.panel{padding:10px 12px}.help-body{padding:4px 14px 16px;font-size:14px;line-height:1.7}.modal{padding:18px 16px;max-height:calc(100% - 12px);max-width:calc(100vw - 16px - var(--sal) - var(--sar))}.modal.wide{max-width:calc(100vw - 16px - var(--sal) - var(--sar))}.modal-x{margin:-12px -10px 0 8px;top:-12px;width:40px;height:40px}.hero-detail{gap:14px}.hero-detail-art{width:150px;height:200px}.hero-detail-body h3{font-size:26px}.level-sides{flex-wrap:wrap;gap:8px 24px}.level-dialog h3{font-size:22px}.intro{font-size:15px;line-height:1.6}.picker-row{gap:8px}.picker-emblem{width:32px;height:32px}.picker-list,.minis{gap:8px}.sticky{bottom:-32px;padding:10px 0 calc(10px + var(--sab))}.lobby-actions input,.lobby-actions select{min-width:0;max-width:100%}.room{grid-template-columns:auto auto minmax(0,1fr) auto;padding:10px 12px;min-height:48px}.room span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-cols{grid-template-columns:minmax(0,1fr);gap:4px}.room-seats{gap:8px}.room-seat{width:112px;min-height:0;padding:6px}.chat-log{height:130px}.menu-brand p{display:none}.menu-item{padding:8px 14px}.menu-item b{font-size:20px;letter-spacing:.12em}.menu-item span{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-foot{padding-top:4px;padding-bottom:calc(4px + var(--sab));gap:10px}.menu-foot span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.menu-brand{top:calc(5vh + var(--sat))}.menu-brand h1{font-size:clamp(64px,22vh,110px)}.menu-seal{width:56px;left:calc(clamp(64px,22vh,110px) + 8px);top:8px}.menu-list{width:min(540px,60vw);display:grid;grid-template-columns:1fr 1fr;gap:8px;top:calc(50% - 14px);max-height:calc(100% - 60px);overflow-y:auto}.table{--card-w: 78px;--card-h: 110px;--t-top: 40px;--t-ban: 26px;--t-bot: 146px;grid-template-rows:var(--t-top) minmax(72px,25%) minmax(0,1fr) var(--t-ban) var(--t-bot)}.table .card{border-radius:5px}.table .card-art{height:58%}.table .card-name{top:64%;font-size:14px}.table .card-cost{width:24px;height:24px;font-size:14px;line-height:24px}.table .card-elem{height:18px;font-size:11px;line-height:18px;padding:0 4px}.table .card-kind,.table .card-desc{display:none}.t-top{gap:8px;padding:0 8px}.t-title{font-size:15px;letter-spacing:.04em;flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-info{font-size:12px;flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-tools{gap:6px;flex:none}.t-tools .btn{min-height:36px;min-width:44px;padding:2px 10px;font-size:14px;letter-spacing:0}.t-lbl{display:none}.t-logbtn{display:inline-block}.t-opps{gap:6px;padding:4px 8px;align-items:stretch}.seat{width:auto;flex:1 1 0;min-width:0;max-width:118px;max-height:none;border-radius:6px}.seat.mine{width:100%;flex:none;max-width:none;max-height:none}.seat-emblem{width:20px;height:20px}.seat-tag{font-size:11px;padding:0 5px}.seat-hand{top:19px;right:2px;font-size:11px;gap:2px}.seat-status{top:24px}.status{width:18px;height:18px}.seat-foot{padding:10px 3px 3px}.seat-name{font-size:12px}.seat-name small{display:none}.seat-hp{margin:1px 0 2px}.seat-hp i{width:8px;height:8px}.seat-hp.big{font-size:11px}.seat-hp.big b{font-size:13px}.seat-equip{grid-template-columns:repeat(4,1fr)}.eq{height:14px;justify-content:center}.eq span{display:none}.eq img{width:12px;height:12px}.seat.thinking:after{font-size:11px;white-space:nowrap;top:30%}.bubble{font-size:15px;padding:1px 8px}.bubble.skill{font-size:16px}.bubble.big{font-size:17px}.t-mid{grid-template-columns:minmax(0,1fr);padding:0 8px}.t-center{gap:10px}.t-pile{left:0;flex-direction:column;gap:4px;align-items:flex-start}.pile{flex-direction:row;background:#00000080;border:1px solid var(--line);border-radius:10px;padding:0 8px;font-size:11px;white-space:nowrap}.pile .card{display:none}.pile-name{display:inline;font-style:normal;color:var(--paper-light)}.t-show{gap:6px;z-index:4}.show-label{font-size:12px}.t-bannerwrap{z-index:5}.t-banner:not(.mine):not(.empty){background:#0a060499}.t-side{position:fixed;z-index:60;top:calc(var(--sat) + var(--t-top));right:0;bottom:0;width:min(300px,84vw);padding:0 var(--sar) var(--sab) 0;border-radius:6px 0 0 6px;background:#0e0806f7;box-shadow:-6px 0 20px #0009;transform:translate(105%);visibility:hidden;transition:transform .2s,visibility .2s}.table.log-open .t-side{transform:none;visibility:visible}.t-log-title{display:flex;align-items:center;justify-content:space-between;padding:0 4px 0 12px;font-size:15px}.t-log-x{display:block;width:40px;height:40px;background:none;border:none;color:var(--paper-light);font:22px/1 var(--font-ui);cursor:pointer}.t-log{font-size:13px}.t-banner{font-size:14px;padding:1px 16px;max-width:96%}.t-timer{width:min(300px,60%)}.t-choice{position:fixed;inset:calc(var(--sat) + var(--t-top)) var(--sar) calc(var(--sab) + var(--t-bot) + var(--t-ban)) var(--sal);z-index:30;border-radius:0;border-width:1px 0;gap:10px;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior:contain;padding:14px 12px 8px}.t-choice>:first-child{margin-left:auto}.t-choice>:last-child{margin-right:auto}.choice{padding:6px;min-width:64px;flex:none}.t-hand .card.selected,.t-choice .card.selected{transform:translateY(-12px)}.t-bottom{grid-template-columns:90px auto minmax(0,1fr) 112px;grid-template-areas:"me skills hand actions";gap:6px;padding:4px 8px 6px}.t-handwrap{display:contents}.t-me{grid-area:me;align-items:stretch;min-height:0}.t-skills{grid-area:skills;display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,auto);align-content:end;justify-content:start;gap:4px;height:auto;min-height:0}.skill{min-height:38px;padding:2px 10px;font-size:14px;letter-spacing:.04em;border-radius:10px;white-space:nowrap}.t-hand{grid-area:hand;padding:16px 2px 0;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scrollbar-width:none}.t-hand::-webkit-scrollbar{display:none}.t-hand>:first-child{margin-left:auto}.t-hand>:last-child{margin-right:auto}.t-hand .card+.card{margin-left:max(calc(40px - var(--card-w)),min(4px,calc((100% - var(--n) * (var(--card-w) + 4px)) / max(var(--n) - 1,1))))}.hand-note{font-size:15px}.t-actions{grid-area:actions;gap:6px;min-width:0}.t-actions .btn{font-size:16px;letter-spacing:.04em;padding:4px 6px;min-height:46px;white-space:normal;line-height:1.15}.orders{padding-top:0;justify-content:center}.orders img{display:none}.orders span{margin:0;font-size:14px;text-align:center}.over{min-width:0;max-width:calc(100% - 24px);max-height:calc(100% - 16px);overflow-y:auto;padding:14px 32px 18px}.over-title{font-size:54px}.over-stars .stars i{font-size:32px}.over-sub,.over-note{margin-bottom:10px}#toasts{top:calc(46px + var(--sat))}}@media(max-width:640px)and (orientation:portrait){.hero-detail{flex-direction:column;align-items:center}.hero-detail-body{align-self:stretch}.card-detail{flex-direction:column;align-items:center}.page.menu:before{background:linear-gradient(180deg,#120a0826,#120a084d 26%,#120a08e6 58%)}.menu-brand{left:calc(20px + var(--sal));top:calc(3vh + var(--sat))}.menu-brand h1{writing-mode:horizontal-tb;font-size:68px}.menu-seal{left:172px;top:8px;width:56px}.menu-list{left:calc(14px + var(--sal));right:calc(14px + var(--sar));width:auto;top:auto;bottom:calc(64px + var(--sab));transform:none;max-height:calc(100% - 190px - var(--sat) - var(--sab))}.menu-list{grid-template-columns:1fr}.menu-foot span{display:none}.table{--t-bot: 266px;grid-template-rows:var(--t-top) auto minmax(0,1fr) var(--t-ban) var(--t-bot)}.t-title{display:none}.t-opps{flex-wrap:wrap;align-content:center}.seat{flex:1 1 calc(25% - 6px);height:104px;max-width:112px}.seat.mine{height:100%}.t-bottom{grid-template-columns:92px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto calc(var(--card-h) + 20px);grid-template-areas:"me skills" "me actions" "hand hand"}.t-skills{display:flex;flex-wrap:wrap;justify-content:flex-start;align-content:flex-end;overflow-y:auto}.t-actions{flex-direction:row;justify-content:flex-end;align-items:stretch}.t-actions .btn{flex:1 1 0;max-width:150px}.orders{margin:0 auto 0 0;align-self:center;width:auto;flex:none}.orders span{width:auto}.t-choice{flex-wrap:wrap;justify-content:center;align-content:center;overflow-y:auto}.t-choice>:first-child{margin-left:0}.t-choice>:last-child{margin-right:0}}@media(max-width:640px)and (orientation:portrait)and (min-height:740px){.table{--card-w: 90px;--card-h: 126px;--t-bot: 286px}.table .card-name{font-size:15px}.seat{height:118px}}@media(max-height:540px){.t-show .card{--card-w: 60px;--card-h: 84px}.t-show .card .card-name{font-size:12px}.show-item{position:relative;gap:0}.show-label{position:absolute;left:3px;right:3px;bottom:3px;font-size:11px;line-height:15px;text-align:center;white-space:nowrap;overflow:hidden;background:#000000c7;border-radius:3px}}@media(max-height:340px){.table{--card-w: 64px;--card-h: 90px;--t-top: 36px;--t-ban: 22px;--t-bot: 122px}.table .card-name{font-size:12px}.t-tools .btn{min-height:32px}.skill{min-height:34px}.t-actions .btn{min-height:40px;font-size:15px}.menu-item span{display:none}.menu-item{padding:6px 14px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01s!important;transition-duration:.01s!important}}
