:root{font-family:FangSong,"仿宋",STKaiti,serif;color:#f5f0e8;background:#1a0f0a;font-synthesis:none;--gold:#d4a847;--line:#d4a84755;--muted:#c1ae91;--paper:#f5f0e8}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{background:radial-gradient(ellipse at 40% 35%,#46372688,transparent 65%),linear-gradient(130deg,#1a0f0a,#2c1810 60%,#120d0a)}button,select{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:2px;background:linear-gradient(160deg,#594126,#302017);min-height:32px;padding:5px 12px;transition:filter .15s,border-color .15s}button:hover:not(:disabled){border-color:var(--gold);filter:brightness(1.18)}button:focus-visible,select:focus-visible{outline:2px solid #f2d997;outline-offset:2px}button:disabled{cursor:default}button.primary{background:linear-gradient(140deg,#936321,#5d3314);border-color:#d4a847;color:#fff4d3}button.selected{border-color:#f2d997;box-shadow:inset 0 0 14px #d4a84744}select{background:#281b13;border:1px solid var(--line);padding:6px;min-height:32px;width:100%}h1,h2,p{margin:0}small,.small{font-size:12px;color:var(--muted)}.eyebrow{color:#c7a969;font-size:12px;letter-spacing:5px}.game-shell{height:100dvh;display:grid;grid-template-rows:6% minmax(0,61fr) 5% 25% 3%;padding:0 6px;gap:0}.top-bar{display:flex;align-items:center;gap:14px;padding:0 12px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#3d2b1f,#21160f);font-size:14px;min-height:0}.brand{font-size:22px;letter-spacing:5px;color:#e7c87f;margin-right:auto}.top-bar button{padding:3px 12px}.middle{display:grid;grid-template-columns:24fr 46fr 30fr;gap:6px;padding:6px 0;min-height:0;min-width:0}.opponents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(130px,1fr);gap:6px;min-height:0;overflow-y:auto;padding:3px;background:#100a0766}.player-panel{display:flex;flex-direction:column;position:relative;width:100%;padding:7px;text-align:left;background:linear-gradient(145deg,#3d2b1ff2,#1a0f0af0);border:1px solid #ad90684d;overflow:hidden;min-height:0}.player-panel:before,.player-panel:after{content:"";position:absolute;width:12px;height:12px;border:1px solid #c9a363;pointer-events:none}.player-panel:before{left:2px;top:2px;border-right:0;border-bottom:0}.player-panel:after{right:2px;bottom:2px;border-left:0;border-top:0}.player-panel.is-current{border-color:#c44c39;box-shadow:inset 0 0 15px #c41a1a22,0 0 5px #c41a1a55}.player-panel.selectable{border-color:#d4a847;animation:target-pulse 2s infinite}.player-panel.is-target{background:linear-gradient(145deg,#69502c,#2c1810);box-shadow:inset 0 0 12px #d4a84788}.is-defeated{opacity:.43;filter:grayscale(.8)}.role-tab{font-size:11px;color:#d7bc85;padding-bottom:5px;white-space:nowrap}.player-main{display:flex;gap:7px;align-items:center;min-width:0}.portrait{width:48px;height:48px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,var(--accent),#201813 90%);border:1px solid #c6a770;font-size:25px;box-shadow:inset 0 0 0 3px #2b2016,0 2px 5px #0006}.player-main strong{display:block;font-size:16px;line-height:1.3;overflow-wrap:anywhere}.player-main small{display:block;font-size:11px;margin-top:3px}.hp-row{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:6px 0;font-size:12px}.hp-row>span{display:flex;gap:3px}.hp-row i{display:block;width:8px;height:12px;border:1px solid #8c704e;background:#130d09;transform:skew(-12deg)}.hp-row i.filled{background:linear-gradient(#dc8463,#9b3427);border-color:#d69863}.equip-slots{display:flex;flex-wrap:wrap;gap:3px;font-size:10px;line-height:1.4;color:#dfc8a1}.equip-slots span{padding:1px 2px;background:#0003}.delayed-zone{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px;font-size:10px}.delayed-zone em{font-style:normal;background:#536c8144;color:#acc6d9;padding:1px 3px;border:1px solid #4a7a9c77}.battlefield{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;overflow:hidden;border:1px solid var(--line);background:radial-gradient(ellipse,#69513222,transparent 65%),linear-gradient(140deg,#211b12aa,#140c08dd)}.battlefield:before{content:"";position:absolute;inset:8px;border:1px solid #d4a84720;pointer-events:none}.field-decoration{position:absolute;top:8%;right:7%;color:#bfa06b0a;font-size:130px;line-height:1.05;pointer-events:none}.turn-label{display:flex;align-items:center;gap:15px;color:#c7b494;margin-top:14px;font-size:13px;z-index:1}.turn-label strong{color:#f0d797;font-size:20px}.phase-track{display:flex;gap:14px;font-size:11px;color:#8f7b5e;margin:8px 0;z-index:1}.phase-track .active{color:#f0d797;border-bottom:1px solid var(--gold)}.battle-display{flex:1;min-height:35px;display:flex;align-items:center;justify-content:center;position:relative;width:100%}.empty-field{text-align:center;font-size:30px;letter-spacing:8px;color:#c2a374}.empty-field small{display:block;letter-spacing:3px;font-size:12px;margin-top:12px}.skill-flash{position:absolute;left:8%;top:15%;writing-mode:vertical-rl;font-size:28px;letter-spacing:7px;color:#f0d797;animation:skill-in .4s ease-out}.choice-panel{z-index:1;width:calc(100% - 28px);max-height:62%;overflow:auto;margin:7px 14px 12px;text-align:center;font-size:14px;flex-shrink:0}.choice-panel>strong{display:block;line-height:1.5;font-weight:400;color:#e4c991}.choice-options,.action-options{display:flex;justify-content:center;flex-wrap:wrap;gap:5px;margin-top:8px;max-height:150px;overflow-y:auto}.choice-options button,.action-options button{font-size:12px;padding:5px 9px;min-height:32px}.thinking{display:block;color:var(--muted);font-size:12px;margin-top:7px}.log{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--line);background:linear-gradient(120deg,#30211688,#130d0ac9);padding:14px}.log h2{font-size:16px;letter-spacing:4px;color:#d8b76c;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:10px}.log h2 small{font-size:10px;letter-spacing:0;color:#977f5c}.log-content{flex:1;min-height:0;list-style:none;margin:0;padding:8px 0;overflow:auto;font-size:13px;line-height:1.75;scrollbar-width:thin}.log-content li{padding:5px 0;border-bottom:1px solid #aa805015;color:#bca98d}.log-content li:last-child{color:#f0dbac}.log-content li.damage{color:#db9984}.log-content li.skill{color:#d4b573}.log-content li.heal{color:#a9bc91}.action-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;background:linear-gradient(90deg,#3a281a,#20140e);border-block:1px solid var(--line);font-size:13px;min-height:0}.action-bar>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-bar>div{display:flex;gap:6px;flex-shrink:0}.action-bar button{font-size:12px;min-height:26px;padding:3px 10px}.action-bar button:disabled{opacity:.4}.bottom{display:flex;min-height:0;gap:10px;padding:7px 0;background:linear-gradient(#21160f99,#2c1810aa)}.self-info{width:185px;flex-shrink:0;min-height:0}.self-info .player-panel{height:100%}.hand-wrap{flex:1;min-width:0;display:flex;flex-direction:column}.hand-heading{height:21px;display:flex;gap:15px;align-items:center;font-size:12px;color:#d8bb7d}.hand-area{display:flex;align-items:center;gap:10px;overflow-x:auto;overflow-y:hidden;flex:1;min-height:0;padding:9px 4px 3px;scrollbar-width:thin}.playing-card{flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;width:80px;height:112px;padding:16px 10px 13px;border:1px solid #bda379;border-radius:2px;background:linear-gradient(140deg,#f5f0e8,#ddd0b5 65%,#b8a383);color:#2c1810;box-shadow:2px 4px 8px #0007,inset 0 0 0 4px #ddd0b5,inset 0 0 0 5px #8b694c88;transition:transform .15s}.playing-card:disabled{filter:saturate(.6) brightness(.72)}.playing-card.selected{transform:translateY(-6px);outline:2px solid #efc965;box-shadow:0 0 15px #d4a84755}.playing-card:not(:disabled):hover{transform:translateY(-4px)}.card-corner{position:absolute;top:7px;left:7px;font-size:12px;display:flex;flex-direction:column;line-height:1.05}.is-red .card-corner{color:#a72520}.card-name{writing-mode:vertical-rl;white-space:nowrap;max-height:83px;font-size:18px;letter-spacing:2px;line-height:1.1}.card-name.long-name{font-size:14px;letter-spacing:0}.playing-card small{position:absolute;bottom:6px;right:6px;font-size:9px;color:#745235}.display-card{width:90px;height:125px;animation:card-in .28s ease-out}.display-card .card-name{font-size:20px}.display-card .card-name.long-name{font-size:14px}.skill-area{width:102px;flex-shrink:0;display:flex;flex-direction:column;justify-content:center;gap:7px;padding-right:4px;overflow:auto}.skill-area button{font-size:12px}.skill-area button:disabled{opacity:.55}.empty-hand{color:#ad9877;font-size:13px}.disclaimer{font-size:10px;opacity:.5;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;overflow:hidden;padding:0 8px;min-height:0}.modal-mask{position:fixed;inset:0;z-index:20;background:#0b070bc9;display:grid;place-items:center}.settings-panel{width:min(340px,calc(100vw - 24px));max-height:90vh;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:25px;border:1px solid #d4a847;background:linear-gradient(135deg,#3d2b1f,#1a0f0a)}.settings-panel h2{font-size:24px;color:#d8b76c}.settings-panel p{font-size:12px;line-height:1.8;color:#c1ae91}.lobby{height:100dvh;display:flex;flex-direction:column;padding:24px 3vw 0;background:radial-gradient(ellipse at 30% 50%,#6e472322,transparent 65%)}.lobby>header{padding:0 0 18px;border-bottom:1px solid var(--line)}.lobby h1{font-size:36px;letter-spacing:7px;color:#ecd49e;margin:7px 0}.lobby header p{font-size:13px;color:#ae9771}.lobby-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:25px;flex:1;min-height:0;padding:18px 0}.hero-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;overflow-y:auto;align-content:start;padding:2px}.hero-pick{text-align:left;position:relative;padding:12px 10px;background:linear-gradient(120deg,#433022,#1a120d);border-left:3px solid var(--accent);min-height:88px}.hero-pick span{display:block;font-size:10px;color:#c3a56a}.hero-pick strong{display:block;font-size:20px;margin:5px 0}.hero-pick small{display:block;font-size:10px}.lobby-config{display:flex;flex-direction:column;gap:11px;overflow:auto;padding-right:4px}.lobby-config h2{font-size:28px;color:#e2c486}.lobby-config p{font-size:12px;line-height:1.7;color:#c1ae91}.lobby-config p b{color:#e2c486}.selectors{display:grid;gap:7px}.selectors label{font-size:12px;color:#c1ae91;display:grid;gap:3px}.notice{font-size:12px;color:#e5c37d;line-height:1.5}.lobby>.disclaimer{height:23px;flex-shrink:0}.inspection{flex:0 1 auto;max-height:42%;overflow:auto;border-top:1px solid var(--line);padding:10px 0 0;margin-top:8px}.inspection strong{font-size:14px;color:#e6c582}.inspection p{font-size:12px;line-height:1.7;color:#dbc7a7;margin:6px 0}.inspection small{display:block;font-size:11px;line-height:1.6;color:#ac987a}.selection-summary{display:grid;gap:4px;text-align:left;border-left:2px solid #d4a847;padding:7px 10px;margin-top:6px;background:linear-gradient(90deg,#5e452d66,#21160f33)}.selection-summary b{color:#f2d997;font-size:13px}.selection-summary span,.selection-summary small{font-size:12px;line-height:1.5}.battle-display.has-result{min-height:0;overflow:auto;display:block;padding:8px 20px}.result-summary{border:1px solid #d4a84766;padding:16px;background:linear-gradient(135deg,#493320,#24180f)}.result-summary h2{font-size:28px;color:#efd89f;margin:8px 0}.result-summary p{font-size:13px;color:#ceb68c}.result-summary ul{list-style:none;padding:8px 0 0;margin:0}.result-summary li{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #d4a84722;padding:7px 0;font-size:12px}.result-summary li span{color:#c1ae91}.boot-message{max-width:620px;margin:15vh auto;padding:28px;border:1px solid #d4a847;background:linear-gradient(135deg,#3d2b1f,#1a0f0a);line-height:1.8}.boot-message h1{font-size:26px;color:#ecd49e}.boot-message p{margin-top:16px}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:#8c704c;border-radius:2px}@keyframes card-in{0%{opacity:.2;transform:translateY(28px) rotate(-8deg)}to{opacity:1;transform:none}}@keyframes skill-in{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@keyframes target-pulse{50%{border-color:#f5db91;box-shadow:inset 0 0 12px #d4a84733}}@media(min-width:1500px){.opponents{grid-auto-rows:minmax(160px,1fr)}.player-main strong{font-size:19px}.portrait{width:56px;height:56px}.equip-slots{font-size:12px}.self-info{width:210px}.hero-gallery{grid-template-columns:repeat(5,minmax(0,1fr))}.hero-pick{min-height:105px}.lobby-config{padding-top:10px}}@media(max-width:1000px){.opponents{grid-template-columns:minmax(0,1fr)}.top-bar{gap:7px;font-size:12px;padding:0 5px}.brand{font-size:18px;letter-spacing:2px}.top-bar button{font-size:11px;padding:2px 8px}.player-main{gap:4px}.portrait{width:36px;height:36px;font-size:22px}.player-main strong{font-size:13px}.role-tab,.player-main small{font-size:10px}.player-panel{padding:5px}.log{padding:8px}.log h2{font-size:13px;letter-spacing:2px}.log-content{font-size:11px;line-height:1.6}.self-info{width:145px}.playing-card{width:60px;height:84px}.card-name{font-size:13px;max-height:64px;letter-spacing:0}.card-name.long-name{font-size:10px}.card-corner{font-size:10px;top:6px;left:6px}.card-corner b{font-size:10px}.hand-area{gap:6px}.skill-area{width:82px}.skill-area button{font-size:11px;padding:4px}.display-card{width:75px;height:104px}.display-card .card-name{font-size:17px}.lobby h1{font-size:27px}.lobby-body{grid-template-columns:minmax(0,1fr) 240px;gap:15px}.hero-pick strong{font-size:16px}.hero-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.lobby-config h2{font-size:24px}}@media(max-height:500px){.game-shell{grid-template-rows:30px minmax(0,1fr) 32px 119px 16px;padding:0 4px}.middle{gap:4px;padding:4px 0}.opponents{grid-auto-rows:minmax(103px,1fr);gap:4px}.player-panel{padding:4px}.portrait{width:30px;height:30px;font-size:19px}.hp-row{margin:3px 0}.role-tab{padding-bottom:2px}.equip-slots{font-size:9px}.turn-label{margin-top:6px;font-size:11px}.turn-label strong{font-size:16px}.phase-track{margin:4px 0;font-size:10px;gap:9px}.battle-display .display-card{width:50px;height:65px;padding:10px 5px}.battle-display .card-name{font-size:12px;max-height:45px}.battle-display .card-name.long-name{font-size:8px}.battle-display .card-corner{top:4px;left:4px;font-size:9px}.battle-display .card-corner b{font-size:9px}.battle-display .playing-card small{font-size:8px;bottom:4px;right:3px}.choice-panel{margin:4px 8px 6px;width:calc(100% - 16px);font-size:11px;max-height:72%}.choice-options,.action-options{margin-top:4px;gap:4px;max-height:90px}.choice-options button,.action-options button{font-size:11px;padding:4px 6px}.thinking{font-size:10px;margin:2px}.empty-field{font-size:20px}.empty-field small{font-size:10px;margin-top:4px}.skill-flash{font-size:18px;left:12%;top:0;letter-spacing:3px}.bottom{gap:6px;padding:4px 0}.self-info{width:140px}.hand-heading{height:16px;font-size:10px}.hand-heading small{font-size:9px}.hand-area{padding:5px 3px 2px}.skill-area{gap:4px;width:75px}.disclaimer{font-size:9px}.action-bar{font-size:11px;padding:0 6px}.log h2{padding-bottom:4px;font-size:12px}.log h2 small{font-size:9px}.log-content{padding:3px 0;font-size:11px}.log-content li{padding:3px 0}.lobby{padding:12px 20px 0}.lobby>header{padding-bottom:8px}.lobby h1{font-size:23px;margin:3px 0}.lobby header p{font-size:11px}.eyebrow{font-size:10px}.lobby-body{padding:8px 0;gap:16px;grid-template-columns:minmax(0,1fr) 230px}.hero-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.hero-pick{padding:7px;min-height:73px}.hero-pick strong{font-size:14px}.hero-pick small{font-size:9px}.lobby-config{gap:7px}.lobby-config h2{font-size:21px}.lobby-config p{font-size:11px}.selectors{gap:4px}.selectors label{font-size:10px}.selectors select{padding:3px;min-height:28px}.lobby>.disclaimer{height:16px}}.spy-guide{display:block;margin:5px 0;line-height:1.5}.spy-mark{position:absolute;right:2px;top:2px;width:8px;height:8px;border-radius:50%;background:#b994f5;border:1px solid #eee}.spy-mark.self-spy{background:#ec6257}.spy-stamp{position:absolute;bottom:0;left:0;font-size:11px;color:#ffb3a4;border:1px solid #df7967;background:#481d17}.spy-duel{position:absolute;top:4px;left:0;right:0;text-align:center;color:#f1d18a;font-size:18px;letter-spacing:3px}.game-shell{grid-template-rows:52px minmax(0,1fr) 48px 210px 20px;padding:0 16px;background:radial-gradient(ellipse at 48% 42%,#4b47314a,transparent 65%),linear-gradient(120deg,#141b19,#231c16 60%,#101614)}.middle{grid-template-columns:minmax(0,1fr) 250px;grid-template-rows:174px minmax(0,1fr);gap:12px;padding:12px 0}.opponents{grid-column:1;grid-row:1;display:grid;grid-template-columns:repeat(var(--seats),minmax(138px,1fr));grid-auto-rows:158px;overflow:auto;gap:10px;background:transparent;padding:4px}.battlefield{grid-column:1;grid-row:2;border-color:#a98b554d;background:radial-gradient(ellipse,#64705a25,transparent 70%),linear-gradient(145deg,#101b18bb,#241a13c9);box-shadow:inset 0 0 80px #0005}.log{grid-column:2;grid-row:1/3;background:linear-gradient(125deg,#261f18e8,#121815e8);border-color:#a98b553b;font-size:12px}.player-panel{background:radial-gradient(ellipse at 80% 20%,color-mix(in srgb,var(--accent) 25%,transparent),transparent 70%),linear-gradient(140deg,#364039,#211811 80%);border-color:#a98b5580;padding:10px;box-shadow:0 4px 12px #0004}.player-panel.is-current{border-color:#ecd398;box-shadow:inset 0 0 22px #d4a84722,0 0 10px #b7955355}.portrait{width:46px;height:46px;border-radius:3px;font-size:30px}.player-main strong{font-size:17px}.player-main small{font-size:11px}.role-tab{letter-spacing:1px}.hp-row{margin:8px 0}.hp-row i{border-radius:5px 1px;width:9px;height:13px}.equip-slots{font-size:10px}.self-info{width:180px}.bottom{gap:16px;padding:12px 0;background:linear-gradient(#17201ccc,#262014cc);border-top:1px solid #d4a84744}.skill-area{width:110px;gap:12px}.skill-area button{min-height:40px;border-color:#bda36a88;font-size:15px}.hand-heading{height:24px;font-size:13px;flex-shrink:0}.hand-area{gap:12px;padding:16px 6px 8px;align-items:flex-end}.playing-card{width:100px;height:144px;border:1px solid #e1cba0;background:linear-gradient(140deg,#faf3e1,#c7b78d);box-shadow:0 5px 12px #0008,inset 0 0 0 3px #e1d3b0,inset 0 0 0 4px #82613f;overflow:hidden;padding:12px}.playing-card:disabled{filter:saturate(.65) brightness(.83)}.playing-card.selected{transform:translateY(-12px);outline:2px solid #f1cb6d}.playing-card:not(:disabled):hover{transform:translateY(-8px)}.card-illustration{position:absolute;inset:7px 6px 24px;background-image:none;background-size:300% 200%;background-repeat:no-repeat;opacity:.94;border:1px solid #7c624444}.art-attack{background-position:0 0}.art-defense{background-position:50% 0}.art-heal{background-position:100% 0}.art-trick{background-position:0 100%}.art-equip{background-position:50% 100%}.art-rare{background-position:100% 100%}.card-name{position:absolute;bottom:6px;left:0;right:0;writing-mode:horizontal-tb;max-height:none;text-align:center;font-size:16px;line-height:19px;letter-spacing:2px;color:#281b10;text-shadow:0 1px #fff9}.card-name.long-name{font-size:12px;letter-spacing:0}.card-corner{z-index:1;background:#f9f1dbeb;padding:3px;border-radius:1px;top:6px;left:6px;font-size:14px}.card-corner b{font-size:13px}.playing-card small{display:none}.display-card{width:114px;height:160px;animation:none}.display-card .card-name{font-size:18px}.display-card .card-name.long-name{font-size:13px}.battle-display{min-height:30px}.field-decoration{font-size:160px;color:#cbbd8c0a;top:12%;right:35%}.turn-label{margin-top:14px}.phase-track{gap:18px}.choice-panel{width:calc(100% - 32px);max-height:48%;margin:8px 16px 16px}.choice-panel>strong{font-size:15px;color:#f0d9a7}.choice-options button,.action-options button{min-height:36px}.deck-stack{position:absolute;left:20px;top:24px;width:48px;height:68px;border:1px solid #a58551;background:repeating-linear-gradient(45deg,#3d4436 0 3px,#252b23 3px 7px);box-shadow:3px 3px #352e20,5px 5px #88714a;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#d8bb78;font-size:16px;z-index:1}.deck-stack small{font-size:10px;margin-top:5px}.table-effects{position:fixed;inset:0;z-index:15;pointer-events:none;overflow:hidden;contain:layout style}.flying-card{position:absolute!important;width:84px!important;height:120px!important;margin:0!important;pointer-events:none;will-change:transform,opacity}.card-back{display:grid;place-items:center;border:2px solid #d1b46e;border-radius:3px;background:repeating-linear-gradient(45deg,#384737 0 5px,#222e24 5px 10px);color:#dec58a;font-size:22px;box-shadow:0 6px 16px #0008}.effect-label{position:absolute;font-size:36px;font-weight:700;white-space:nowrap;text-shadow:0 2px 3px #000,0 0 20px currentColor}.effect-label.damage{color:#ed8d73}.effect-label.healing{color:#b7dbaa}.effect-label.skill{color:#f6da96;font-size:24px}.target-trail{position:absolute;height:3px;transform-origin:left center;background:linear-gradient(90deg,transparent,#f2d29b,#f0bd67);box-shadow:0 0 12px #e9b864;border-radius:50%}.inspection{max-height:37%}.log-content{font-size:12px}.top-bar{background:linear-gradient(90deg,#19221d,#342719,#19221d)}@media(max-width:1100px){.game-shell{padding:0 8px;grid-template-rows:48px minmax(0,1fr) 44px 190px 18px}.middle{grid-template-columns:minmax(0,1fr) 190px;grid-template-rows:160px minmax(0,1fr);gap:8px}.opponents{grid-template-columns:repeat(var(--seats),minmax(125px,1fr));grid-auto-rows:144px;gap:8px}.player-panel{padding:7px}.player-main strong{font-size:14px}.portrait{width:36px;height:40px;font-size:25px}.self-info{width:145px}.playing-card{width:88px;height:126px}.card-name{font-size:15px;letter-spacing:0}.display-card{width:100px;height:142px}.hand-area{gap:8px}.skill-area{width:85px}.deck-stack{left:12px;top:18px;width:35px;height:52px;font-size:13px}.deck-stack small{font-size:9px}.turn-label{font-size:12px}.phase-track{gap:12px}.log{padding:10px}.bottom{gap:10px}.battle-display .card-name{writing-mode:horizontal-tb}.lobby-body{grid-template-columns:minmax(0,1fr) 260px}}@media(max-height:650px){.game-shell{grid-template-rows:40px minmax(0,1fr) 36px 156px 16px}.middle{grid-template-rows:132px minmax(0,1fr);padding:6px 0;gap:6px}.opponents{grid-auto-rows:120px}.player-panel{padding:5px}.hp-row{margin:3px 0}.portrait{width:32px;height:32px}.role-tab{font-size:10px}.playing-card{width:78px;height:112px}.hand-heading{height:18px}.hand-area{padding:10px 4px 4px}.bottom{padding:6px 0}.turn-label{margin-top:5px}.phase-track{margin:3px 0}.deck-stack{top:10px}.choice-panel{max-height:65%;margin:4px 12px 6px}.battle-display .display-card{width:64px;height:88px}.battle-display .card-name{font-size:12px;max-height:none}.battle-display .card-name.long-name{font-size:9px}.battle-display .card-illustration{bottom:22px}.battle-display .card-corner,.battle-display .card-corner b{font-size:10px}}.action-bar{gap:12px}.action-bar>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.action-bar>.decision-clock{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;min-width:180px;max-width:260px;height:40px;padding:2px 10px 6px;border:1px solid #bfa26266;background:linear-gradient(110deg,#35291b,#171c18);box-shadow:inset 0 0 9px #d4a84713;overflow:hidden}.decision-clock strong{font-size:14px;color:#f3dcaa;white-space:nowrap}.decision-clock small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.decision-clock i{position:absolute;bottom:1px;left:2px;right:2px;height:3px;background:linear-gradient(90deg,#745326,#f1d18a);transform:scaleX(var(--remaining,1));transform-origin:left center;transition:transform .1s linear}.decision-clock.urgent strong{color:#ffb19c}.decision-clock.urgent i{background:linear-gradient(90deg,#8c2820,#f19b67)}.decision-clock[data-mode=managed]{border-color:#e3bd6b}.action-bar [data-action=manage]{white-space:nowrap;flex-shrink:0}.action-bar [data-action=manage][aria-pressed=true]{border-color:#f4d68e;background:linear-gradient(120deg,#71512a,#3d2919)}@media(max-width:1100px){.action-bar{gap:6px}.action-bar>.decision-clock{min-width:156px;max-width:185px;height:38px}.decision-clock strong{font-size:12px}.action-bar>span{font-size:11px}}@media(max-height:650px){.action-bar>.decision-clock{height:32px}.decision-clock small{font-size:9px}}.flow-steps{display:flex;align-items:center;justify-content:center;gap:16px;font-size:12px;color:#968c78}.flow-steps span{padding:5px 0;border-bottom:1px solid transparent;white-space:nowrap}.flow-steps [aria-current]{color:#f0d49b;border-bottom-color:#d4a847}.top-bar .flow-steps{margin-right:auto;gap:10px}.top-bar .brand{margin-right:0}.lobby>header .flow-steps{margin-top:8px}.match-brief{padding:12px;border:1px solid #9b815044;background:linear-gradient(120deg,#3a2b1f,#1e201a);margin:10px 0}.match-brief p{font-size:13px;line-height:1.6;margin:6px 0}.hero-pick{position:relative;overflow:hidden}.hero-pick strong,.hero-pick>span,.hero-pick>small{position:relative;z-index:1}.portrait{position:relative;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#51422b,#211b14);color:#d9c799}.portrait>span{font-size:20px}.portrait small{font-size:10px;margin-left:2px}.hero-skill-list{font-size:11px;color:#cdbb98;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.player-main>span:last-child{min-width:0}.player-main strong{overflow-wrap:anywhere;line-height:1.25}.player-panel{overflow:auto}.cosmetic-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.playing-card{width:116px;height:150px;padding:8px;color:#eadfc8;background:linear-gradient(145deg,#3f3427,#241e18);border-color:#ab936b;box-shadow:0 4px 10px #0005,inset 0 0 0 3px #30281d,inset 0 0 0 4px #8f78494d;text-align:left}.playing-card:disabled{filter:none;opacity:.76}.playing-card .cosmetic-art{opacity:.25}.playing-card .card-corner{position:absolute;top:8px;left:8px;display:flex;gap:4px;align-items:center;background:none;padding:0;color:#e7d8bc;font-size:13px}.playing-card.is-red .card-corner{color:#ffa58e}.playing-card .card-corner b{font-size:12px}.card-category{position:absolute;top:9px;right:8px;font-size:10px;color:#bfa77f;letter-spacing:1px}.playing-card .card-name{position:absolute;inset:34px 8px auto;text-align:left;font-size:17px;color:#f1e6cc;text-shadow:none;line-height:22px;letter-spacing:0;white-space:nowrap}.playing-card .card-name.long-name{font-size:12px}.card-rule{position:absolute;inset:63px 8px 23px;line-height:1.5;font-size:11px;color:#c9baa0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.card-code{position:absolute;bottom:7px;left:8px;right:8px;padding-top:4px;border-top:1px solid #a58b5844;font-size:9px;white-space:nowrap;color:#aa9777;overflow:hidden;text-overflow:ellipsis}.display-card{width:136px;height:172px}.display-card .card-rule{-webkit-line-clamp:4}.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.has-result{align-items:flex-start;overflow:auto}.result-summary{width:100%;max-width:640px;padding:14px 20px}.result-summary h2{font-size:28px}.result-summary li{padding:7px 4px}.exit-panel p{line-height:1.7}.battlefield:has(.has-result) .deck-stack,.battlefield:has(.has-result) .phase-track,.battlefield:has(.has-result) .field-decoration{display:none}@media(max-width:1100px){.top-bar{gap:8px}.top-bar .flow-steps{gap:5px;font-size:10px}.top-bar>span{font-size:11px}.playing-card{width:104px;height:128px}.playing-card .card-name{top:29px;font-size:15px}.playing-card .card-name.long-name{font-size:11px}.card-rule{top:55px;font-size:10px;-webkit-line-clamp:3}.card-category{font-size:9px}.hero-skill-list{font-size:10px}.display-card{width:120px;height:150px}.result-summary h2{font-size:23px}}@media(max-height:650px){.playing-card{width:100px;height:112px}.playing-card .card-name{top:27px;font-size:14px}.card-rule{top:51px;font-size:10px;-webkit-line-clamp:2}.battle-display .display-card{width:120px;height:130px}.hero-skill-list{margin:0;font-size:9px}.player-main strong{font-size:13px}.lobby>header .flow-steps{margin:0}.flow-steps span{padding:2px 0}}.game-shell{grid-template-columns:minmax(0,1fr)}.game-shell>*,.player-panel{min-width:0}.role-tab{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:15px}.seat-status{font-size:10px;letter-spacing:0;color:#ffe0a0;white-space:nowrap}.player-panel.is-responding{border-color:#9cc9d2;box-shadow:inset 0 0 20px #76aab52b,0 0 8px #76aab544}.player-panel.is-responding .seat-status{color:#bdeaf0}.player-panel.selectable{border-color:#efd07d;outline:1px solid #d4a84766;outline-offset:-4px}.battle-display.has-result{display:flex;align-items:flex-start;justify-content:center;padding:12px 20px;scrollbar-width:thin}.result-summary{flex-shrink:0;margin:auto 0}.battlefield:has(.has-result) .turn-label{display:none}.battlefield:has(.has-result) .choice-panel{padding-top:10px;border-top:1px solid #d4a84744}.choice-panel:has(.choice-options),.choice-panel:has(.action-options){padding:10px;background:linear-gradient(100deg,#382a1feb,#18211eef);border:1px solid #bda06a77;box-shadow:0 3px 16px #0005}.choice-options button,.action-options button{min-height:36px;font-size:13px}.hand-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d4a8472b;padding:0 6px 5px}.log-content{font-size:13px;line-height:1.65}.inspection p{font-size:13px;line-height:1.6}@media(min-width:1101px)and (min-height:761px){.middle:has(.opponents>.player-panel:nth-child(6)){grid-template-columns:repeat(5,minmax(0,1fr)) 220px;grid-template-rows:154px repeat(2,minmax(0,1fr));gap:10px}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents{display:contents}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel{min-height:0;height:100%;grid-row:1}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(1){grid-column:1}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(2){grid-column:2}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(3){grid-column:3}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(4){grid-column:4}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(5){grid-column:5}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(6){grid-column:5;grid-row:2}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(7){grid-column:5;grid-row:3}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(8){grid-column:1;grid-row:3}.middle:has(.opponents>.player-panel:nth-child(6)) .opponents>.player-panel:nth-child(9){grid-column:1;grid-row:2}.middle:has(.opponents>.player-panel:nth-child(6)) .battlefield{grid-column:2/5;grid-row:2/4}.middle:has(.opponents>.player-panel:nth-child(6))[data-seat-count="6"] .battlefield{grid-column:1/5}.middle:has(.opponents>.player-panel:nth-child(6))[data-seat-count="6"] .opponents>.player-panel:nth-child(6){grid-row:2/4}.middle:has(.opponents>.player-panel:nth-child(6))[data-seat-count="7"] .opponents>.player-panel:nth-child(6){grid-row:2/4}.middle:has(.opponents>.player-panel:nth-child(6))[data-seat-count="7"] .opponents>.player-panel:nth-child(7){grid-column:1;grid-row:2/4}.middle:has(.opponents>.player-panel:nth-child(6)) .log{grid-column:6;grid-row:1/4}.middle:has(.opponents>.player-panel:nth-child(6)) .player-main strong{font-size:15px}.middle:has(.opponents>.player-panel:nth-child(6)) .portrait{width:34px;height:38px}.middle:has(.opponents>.player-panel:nth-child(6)) .player-panel{padding:7px}}@media(max-width:1100px)and (min-height:761px){.middle:has(.opponents>.player-panel:nth-child(4)){grid-template-rows:auto minmax(0,1fr)}.middle:has(.opponents>.player-panel:nth-child(4)) .opponents{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:122px;overflow-y:auto;max-height:390px}.middle:has(.opponents>.player-panel:nth-child(4)) .player-panel{padding:5px}.middle:has(.opponents>.player-panel:nth-child(4)) .hp-row{margin:3px 0}.middle:has(.opponents>.player-panel:nth-child(4)) .portrait{width:28px;height:30px}.middle:has(.opponents>.player-panel:nth-child(4)) .player-main strong{font-size:13px}.middle:has(.opponents>.player-panel:nth-child(4)) .role-tab{font-size:10px}.top-bar .flow-steps{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.hall-shell{height:100dvh;display:grid;grid-template-rows:70px minmax(0,1fr) 36px;color:#ebdfc8;background:radial-gradient(ellipse at 75% 15%,#33413a88,transparent 60%),linear-gradient(115deg,#171d19,#29261d 60%,#15201d);font-family:FangSong,STFangsong,serif}.hall-top{display:flex;gap:32px;align-items:center;border-bottom:1px solid #b196614d;padding:0 28px;background:linear-gradient(90deg,#201912ee,#222a22bb)}.hall-brand{border:0;background:transparent;font-size:26px;letter-spacing:5px;color:#efd7a2;padding:0;white-space:nowrap}.hall-brand small{display:block;font-size:10px;letter-spacing:7px}.hall-top nav{display:flex;gap:10px;height:100%;align-items:stretch}.hall-top nav button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:0 20px;color:#b7ae99;white-space:nowrap}.hall-top nav button[aria-current=page]{border-bottom-color:#d4a847;color:#ffe8b5;background:linear-gradient(0deg,#d4a84718,transparent)}.hall-version{margin-left:auto;border:1px solid #aa905755;padding:5px 10px;font-size:12px;color:#c3b28d;white-space:nowrap}.hall-body{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:0}.hall-sidebar{padding:32px 22px;border-right:1px solid #b1966133;background:linear-gradient(100deg,#171b17e6,#28271b44);overflow:auto;display:flex;flex-direction:column;gap:14px;align-items:stretch}.profile-mark{width:72px;height:72px;border:1px solid #a08a53;border-radius:50%;margin:0 auto;display:grid;place-items:center;font-size:34px;color:#dec797;background:radial-gradient(circle,#66563733,#121b17);outline:1px solid #ac92572b;outline-offset:5px}.hall-sidebar h2{text-align:center;font-size:22px;font-weight:400}.hall-sidebar>.eyebrow{text-align:center;font-size:10px;letter-spacing:3px}.hall-sidebar label{font-size:12px;color:#bcae92}.hall-shell input:not([type=checkbox]){width:100%;min-width:0;background:#111a17aa;color:#e8dbc0;border:1px solid #a8906155;padding:10px;font:inherit;border-radius:2px}.hall-shell input:focus-visible{outline:1px solid #e9ce90}.connection-state{display:flex;gap:8px;font-size:12px;line-height:1.5;padding:10px 0;color:#bfaa85}.connection-state i{width:6px;height:6px;flex-shrink:0;margin-top:6px;background:#a28a66;border-radius:50%}.connection-state.online i{background:#9cb7a0;box-shadow:0 0 6px #a9cdb688}.hall-help{font-size:12px;line-height:1.9;color:#a79f8b}.hall-divider{height:1px;background:linear-gradient(90deg,transparent,#a58c5855,transparent);margin:4px 0}.hall-content{min-width:0;overflow:auto;padding:30px 36px 14px;position:relative}.hall-hero{height:310px;position:relative;border-bottom:1px solid #b59b5f33;margin-bottom:28px;display:flex;align-items:center}.hall-poem{position:relative;z-index:1;padding:0 30px}.hall-poem h1{font-size:38px;letter-spacing:8px;line-height:1.4;margin:16px 0;color:#eaddc6;font-weight:400}.hall-poem h1 em{font-style:normal;font-size:62px;letter-spacing:15px;color:#e7c78c}.hall-poem p{font-size:14px;line-height:1.9;color:#bdb39d}.seal{position:absolute;top:50px;left:305px;display:block;padding:8px 4px;line-height:1.25;border:1px solid #b56549;color:#ca9274;font-size:13px;transform:rotate(5deg)}.hall-landscape{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hall-news{margin-left:auto;position:relative;z-index:1;width:230px;border-left:1px solid #a68e5b55;padding:12px 22px;background:linear-gradient(90deg,#20271fa6,transparent)}.hall-news h3{font-weight:400;font-size:20px;margin:18px 0;color:#e1cca3}.hall-news p{font-size:13px;color:#bdb39d;line-height:2;margin-bottom:20px}.hall-news small{font-size:10px}.hall-gates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.hall-gate{position:relative;min-height:244px;overflow:hidden;text-align:left;padding:26px 20px 18px;background:radial-gradient(ellipse at top,#68654533,transparent 70%),linear-gradient(140deg,#344136,#19231e);border:1px solid #ab955f80;box-shadow:inset 0 0 0 5px #20241d,inset 0 0 0 6px #aa8e4930,0 12px 25px #0002;display:flex;flex-direction:column;gap:12px}.hall-gate:before,.hall-gate:after{content:"";position:absolute;width:18px;height:18px;border:1px solid #c7aa6a;pointer-events:none}.hall-gate:before{left:9px;top:9px;border-right:0;border-bottom:0}.hall-gate:after{right:9px;bottom:9px;border-left:0;border-top:0}.gate-rank{background:linear-gradient(130deg,#574327,#241f18)}.gate-ranked{background:radial-gradient(ellipse at top,#a7884233,transparent 65%),linear-gradient(140deg,#49402b,#251e17)}.gate-friend{background:linear-gradient(140deg,#3a3e40,#1b2327)}.gate-practice{background:linear-gradient(140deg,#494334,#28241b)}.gate-number{font-size:11px;color:#b7a477;letter-spacing:4px}.gate-ink{position:absolute;right:14px;top:28px;writing-mode:vertical-rl;font-size:54px;letter-spacing:10px;color:#b7ae7e16;pointer-events:none}.hall-gate strong{margin-top:40px;font-size:25px;letter-spacing:3px;font-weight:400;position:relative}.hall-gate small{font-size:11px;line-height:1.6;position:relative;max-width:160px}.gate-enter{margin-top:auto;color:#d7bd84;font-size:12px;border-top:1px solid #ad945137;padding-top:16px;width:100%}.hall-footer{padding:0 26px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #b1966133;color:#ada184;font-size:11px;background:#161b16bb}.hall-message{min-height:28px;font-size:13px;color:#e3bc8f;padding:10px 0;line-height:1.6}.hall-section-heading{padding:8px 0 24px}.hall-section-heading h1{font-size:32px;font-weight:400;letter-spacing:5px;margin:12px 0}.hall-section-heading p{color:#b9ae93;font-size:13px;line-height:1.7}.mode-tabs{display:flex;flex-wrap:wrap;border-top:1px solid #af975755;border-bottom:1px solid #af975755;margin-bottom:24px;gap:4px;padding:6px}.mode-tabs button{background:transparent;border-color:transparent;color:#bbad90;padding:10px 13px}.mode-tabs button.active{color:#f1d799;border-color:#ac965555;background:#9a803622}.hall-mode-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:24px}.hall-mode-main{min-width:0;border:1px solid #aa925a44;background:linear-gradient(140deg,#2b322744,#131d1888);min-height:430px;position:relative}.mode-scroll{padding:32px;display:flex;flex-direction:column;align-items:flex-start;gap:20px}.mode-emblem{width:78px;height:78px;display:grid;place-items:center;font-size:28px;border:1px solid #bba37077;outline:1px solid #bba37022;outline-offset:5px;color:#d8bd84;transform:rotate(-3deg);background:#75603522}.mode-scroll h2{font-weight:400;font-size:26px;line-height:1.5}.mode-scroll p,.mode-scroll li{font-size:14px;line-height:1.9;color:#c6b99c}.mode-scroll ul{padding-left:20px;margin:0}.hall-cta{min-width:190px;min-height:48px;font-size:18px;letter-spacing:3px}.rank-alpha{display:flex;flex-direction:column;gap:8px;padding:14px;border-left:2px solid #b69b5c;background:#c99c3e0b;font-size:12px;color:#c2ae88}.hall-preparation{padding:22px;border:1px solid #b3965a55;background:linear-gradient(140deg,#3b342777,#161c17bb);display:flex;flex-direction:column;gap:16px;align-self:start}.hall-preparation label{font-size:12px;color:#baaa8d}.hero-inscription{border-top:1px solid #bda37033;border-bottom:1px solid #bda37033;padding:24px 0;position:relative}.hero-inscription h2{font-size:32px;font-weight:400;letter-spacing:6px;margin:12px 0}.hero-inscription>span{font-size:12px;color:#bfaa7a}.hall-preparation p{line-height:1.8;color:#bfb198;font-size:12px}.hall-preparation p b{font-size:15px;color:#e0c793}.hall-preparation>small{line-height:1.8}.room-toolbar{display:flex;gap:10px;align-items:center;padding:16px;border-bottom:1px solid #a88e5344}.room-toolbar h2{font-size:17px;margin-right:auto}.room-toolbar h2 small{font-size:10px}.room-join{padding:16px;display:flex;gap:10px;align-items:center;border-bottom:1px solid #a88e5333}.room-join label{font-size:12px;white-space:nowrap}.room-join button{white-space:nowrap}.room-list{padding:0 16px}.room-row{display:flex;gap:12px;align-items:center;padding:20px 0;border-bottom:1px solid #a88e5333}.room-row>div{flex:1;min-width:0}.room-row strong{display:block;font-size:16px;font-weight:400;overflow-wrap:anywhere}.room-row small{display:block;font-size:11px;margin-top:7px}.room-insignia{border:1px solid #b4975b88;color:#d3b577;padding:7px;font-size:18px}.hall-empty{text-align:center;padding:70px 10px;color:#a99d80}.hall-empty>span{display:block;font-size:30px;letter-spacing:10px;margin-bottom:20px;color:#d5c49b}.hall-empty p{font-size:13px;margin-bottom:12px}.room-code{letter-spacing:2px;color:#ead099;-webkit-user-select:all;user-select:all}.seat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:8px 0 26px}.waiting-seat{position:relative;padding:20px 12px;min-height:195px;text-align:center;border:1px solid #96835855;background:linear-gradient(150deg,#30372b77,#18221c);box-shadow:inset 0 0 0 4px #121c1633}.waiting-seat.occupied{border-color:#b7a17299;background:radial-gradient(ellipse at top,#7c67422b,transparent 70%),#293127}.seat-no{display:block;text-align:left;font-size:10px;color:#ab9b79}.waiting-monogram{display:grid;place-items:center;font-size:28px;width:54px;height:54px;border:1px solid #baa06d77;margin:15px auto;color:#e2c896;border-radius:50%}.waiting-monogram.empty{opacity:.4}.waiting-seat h3{font-size:16px;font-weight:400;overflow-wrap:anywhere;margin:10px 0}.waiting-seat p{font-size:12px;color:#c8b693;margin:8px 0}.waiting-seat small{font-size:10px}.room-bottom{display:flex;justify-content:space-between;gap:20px;border:1px solid #ae955855;background:linear-gradient(110deg,#3a3122,#1b231c);padding:24px;align-items:center}.room-bottom p{font-size:12px;color:#bdae8c;margin:12px 0;line-height:1.7}.room-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.check-label{font-size:12px;color:#d8c599}.check-label input{accent-color:#b29456}.hall-shell button:disabled{opacity:.45}.hall-shell .eyebrow{line-height:1.7}.back-home{position:absolute;left:24px;top:24px;font-size:13px}.lobby>header{position:relative}.online-status{position:fixed;top:52px;right:16px;z-index:30;padding:6px 12px;background:#682d22;color:#ffe1bc;border:1px solid #b57652;font:12px FangSong,serif}.online-status:empty{display:none}[hidden]{display:none!important}@media(max-width:1150px){.hall-top{gap:16px;padding:0 18px}.hall-top nav{gap:0}.hall-top nav button{padding:0 13px}.hall-body{grid-template-columns:176px minmax(0,1fr)}.hall-sidebar{padding:24px 16px}.hall-content{padding:24px}.hall-gates{gap:12px}.hall-gate{padding:24px 14px;min-height:235px}.hall-gate strong{font-size:21px}.hall-poem{padding:0 8px}.hall-poem h1{font-size:32px}.hall-poem h1 em{font-size:54px}.hall-news{width:190px;padding:12px 14px}.seal{left:242px}.hall-mode-layout{grid-template-columns:minmax(0,1fr) 200px;gap:16px}.mode-scroll{padding:24px}.seat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.room-toolbar{flex-wrap:wrap}.room-toolbar h2{width:100%}.room-bottom{align-items:flex-start;flex-direction:column}.hall-version{font-size:10px;padding:4px}.hall-preparation{padding:16px}}@media(max-width:900px){.hall-shell{grid-template-rows:64px minmax(0,1fr) 32px}.hall-body{grid-template-columns:156px minmax(0,1fr)}.hall-top{gap:10px;padding:0 14px}.hall-brand{font-size:23px;letter-spacing:2px}.hall-top nav button{padding:0 10px;font-size:13px}.hall-version{display:none}.hall-sidebar{padding:24px 12px}.hall-content{padding:20px}.hall-hero{height:310px;margin-bottom:22px}.hall-poem h1 em{font-size:48px}.hall-poem p{font-size:12px}.hall-news{width:158px;padding:10px}.hall-news h3{font-size:18px;line-height:1.6}.hall-news p{font-size:11px}.hall-news .eyebrow{letter-spacing:2px}.seal{left:210px;top:36px}.hall-gates{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hall-gate{min-height:205px}.hall-gate strong{margin-top:20px;font-size:24px}.gate-ink{font-size:52px}.hall-gate small{max-width:none}.hall-mode-layout{grid-template-columns:minmax(0,1fr)}.hall-preparation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.hall-preparation>.eyebrow,.hall-preparation>small{grid-column:1/-1}.hall-preparation label{align-self:center}.hero-inscription{grid-row:3/5}.hall-preparation p{grid-column:2}.room-toolbar{flex-wrap:nowrap}.room-toolbar h2{width:auto}.hall-mode-main{min-height:340px}.hall-section-heading h1{font-size:28px}.hall-footer{padding:0 14px;font-size:10px}.hall-footer small{font-size:10px}.seat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.hall-body{grid-template-columns:minmax(0,1fr)}.hall-sidebar{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;padding:12px;border-bottom:1px solid #a88e5344;overflow:visible;gap:8px}.hall-sidebar .profile-mark,.hall-sidebar h2,.hall-sidebar>.eyebrow,.hall-sidebar>.hall-help,.hall-sidebar>.hall-divider,.hall-sidebar>label,.hall-sidebar>[data-hall=practice]{display:none}.hall-sidebar .connection-state{flex:1;min-width:130px}.hall-sidebar #hall-name{width:90px}.hall-body{display:flex;flex-direction:column}.hall-content{padding:16px;flex:1}.hall-top nav button{padding:0 6px;font-size:11px}.hall-top{padding:0 8px;gap:8px}.hall-brand{font-size:18px}.hall-brand small{font-size:8px}.hall-news{display:none}.hall-hero{height:280px}.hall-footer small{display:none}.hall-gate strong{font-size:20px}.hall-gates{gap:10px}.hall-preparation{display:flex}.room-toolbar,.room-join{flex-wrap:wrap}.room-join input{max-width:150px}.back-home{position:static;margin-bottom:10px}}@media(max-height:760px)and (min-width:901px){.hall-hero{height:245px}.hall-gate{min-height:190px}.hall-gate strong{margin-top:15px}.hall-content{padding-top:18px}.hall-hero{margin-bottom:18px}.hall-poem h1{margin:8px 0}.hall-poem h1 em{font-size:48px}.hall-poem p{font-size:12px}.hall-news p{margin-bottom:10px}}
