/* 选定的深色大厅：角色、出发设置、主按钮、导航各自成组。 */
.home{background:linear-gradient(0deg,#111b39 0%,#111b39fa 20%,#152340b8 34%,#14223c16 55%,transparent 76%)}
.home-top{margin:14px 20px;gap:12px;min-height:40px}
.mini-tag{font:900 italic 10px system-ui,sans-serif;letter-spacing:1.5px;text-shadow:none}
.balance{border-radius:22px;border:1px solid #9cb3d2a3;padding:4px 12px 4px 6px;gap:10px;min-height:32px;background:#122c51de;font-size:15px;font-weight:850;font-variant-numeric:tabular-nums}
.balance .coin{width:25px;height:25px;font-size:23px}
.lobby-settings{width:36px;height:36px;min-width:44px;min-height:44px;border:0;border-radius:50%;background:#10294bdc;display:grid;place-items:center;flex:none}
.lobby-settings img{width:25px;height:25px;filter:brightness(0) invert(1)}
.home .game-logo{top:53px;left:17px;width:182px;transform:none;filter:none;line-height:1;letter-spacing:normal}
.game-logo img{width:100%;height:auto;display:block}
.home-bottom{--role-height:48px;--prep-height:48px;--prep-gap:20px;--start-gap:24px;--start-height:64px;--nav-gap:30px;--nav-height:68px;left:24px;right:24px;bottom:0;display:flex;flex-direction:column;gap:0;padding-bottom:24px}
.home-bottom .hero-detail{align-self:center;flex:none;width:250px;max-width:90%;min-height:var(--role-height);padding:6px 17px;gap:10px;border:1px solid #a8b3d492;border-radius:40px;background:#15213ad6;box-shadow:none;text-align:left;justify-content:center}
.home-bottom .hero-detail #selected-icon{width:30px;height:30px;flex:none;color:var(--hero);text-shadow:none}
.home-bottom .hero-detail #selected-icon svg{width:100%;height:100%}
.hero-caption{min-width:0;white-space:nowrap;display:flex;align-items:baseline;gap:0;line-height:1.3}
.home-bottom .hero-detail b{font-size:18px;font-weight:850;letter-spacing:.2px}
.home-bottom .hero-detail small{display:inline;margin:0;font-size:15px;color:#e5e8f5;font-weight:650}
.hero-caption small:before{content:' · ';white-space:pre}
.home-bottom .hero-detail .chevron{width:15px;height:15px;margin-left:auto}
.lobby-icon{display:block;width:24px;height:24px;flex:none;filter:brightness(0) invert(1)}
.lobby-icon.chevron{width:13px;height:13px}
.lobby-prep{margin-top:var(--prep-gap)}
.home-bottom .map-select{display:flex;align-items:center;min-width:0;min-height:var(--prep-height);width:100%;padding:0 1px 0 3px;gap:12px;border:0;border-bottom:1px solid #8e9ab64d;border-radius:0;background:transparent;color:#f8f9ff}
.home-bottom .map-select b{font-size:17px;font-weight:800;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map-change{margin-left:auto;display:flex;align-items:center;gap:4px;color:#b9c3db;font-size:13px;font-weight:650;flex:none}
.home-bottom .setup-row{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:center;gap:0;min-height:var(--prep-height)}
.home-bottom .learning-select,.home-bottom .difficulty-select{display:flex;align-items:center;justify-content:flex-start;gap:7px;min-width:0;width:100%;min-height:44px;padding:0 5px;border:0;border-radius:0;background:transparent;color:#f6f8ff;font-size:clamp(12px,4.1cqw,16px);font-weight:700;white-space:nowrap}
.home-bottom .learning-select{padding-left:4px;border-right:1px solid #8e9ab64d}
.home-bottom .difficulty-select{padding-left:14px;padding-right:1px}
.home-bottom .learning-select .abc{font:900 italic 12px system-ui,sans-serif;letter-spacing:-.3px}
.home-bottom .learning-select b,.home-bottom .difficulty-select b{display:inline;font:inherit;font-weight:800}
.home-bottom .learning-select .chevron,.home-bottom .difficulty-select .chevron{margin-left:auto;width:11px;height:11px}
.home-bottom .difficulty-select .lobby-icon:not(.chevron){width:21px;height:21px}
.home-bottom .start{margin-top:var(--start-gap);padding:0 18px;min-height:var(--start-height);font-size:29px;line-height:1.2;letter-spacing:.8px;font-style:normal;font-weight:950;gap:23px;color:#111a31;background:#ffe433;border:1px solid #fff1a3;border-radius:18px;transform:none;box-shadow:inset 0 1px 0 #fff9cc6e}
.home-bottom .start img{width:33px;height:33px}
.home-bottom .home-nav{margin-top:var(--nav-gap);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;height:var(--nav-height)}
.home-bottom .home-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:0;min-height:48px;border:0;border-radius:10px;background:transparent;color:#f7f8ff;font-size:17px;font-weight:800}
.home-bottom .home-nav button img{width:29px;height:29px;filter:brightness(0) invert(1)}
.home-bottom .home-nav button>span{margin:0;font-size:inherit;line-height:1.3}
.home button{cursor:pointer;-webkit-tap-highlight-color:transparent}
.home button:focus-visible{outline:3px solid #fff2a5;outline-offset:3px}
.home button:active{opacity:.78}
@media(hover:hover){.lobby-settings:hover,.home-nav button:hover{background:#ffffff15}.hero-detail:hover{border-color:#e1e5ff}.home .start:hover{background:#ffea65}.lobby-prep button:hover{color:#ffe990}}
.lobby-difficulty-options{display:grid;gap:10px;margin:20px 0 24px}
.lobby-difficulty-options button{min-height:78px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:5px 12px;padding:15px;border:1px solid #61728f;border-radius:12px;background:#21334e;color:#f7f8ff;text-align:left}
.lobby-difficulty-options button>b{font-size:17px}.lobby-difficulty-options button>span{grid-column:1;font-size:12px;color:#b3c3da}.lobby-difficulty-options button>em{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:12px;color:#b8cbe2}
.lobby-difficulty-options button[aria-pressed=true]{border-color:#ffe433;background:#3e3f39}.lobby-difficulty-options button[aria-pressed=true]>b,.lobby-difficulty-options button[aria-pressed=true]>em{color:#ffe989}
.character-stepper{display:flex;gap:10px;margin:0 0 20px}.character-stepper .secondary{margin:0;font-size:12px}
@media(max-width:600px){.home-top{margin-top:max(14px,env(safe-area-inset-top));margin-left:20px;margin-right:20px}.home-bottom{padding-bottom:max(24px,env(safe-area-inset-bottom))}}
@media(max-width:600px) and (max-height:740px){.home-bottom{--role-height:44px;--prep-height:44px;--prep-gap:14px;--start-gap:18px;--start-height:58px;--nav-gap:20px;--nav-height:58px;padding-bottom:max(16px,env(safe-area-inset-bottom));left:20px;right:20px}.home .game-logo{width:165px;top:48px}.home-bottom .hero-detail{width:235px}.home-bottom .home-nav button{font-size:14px;gap:5px}.home-bottom .start{font-size:27px}}
@media(max-width:600px) and (max-height:620px){.home-bottom{--prep-gap:8px;--start-gap:12px;--start-height:52px;--nav-gap:12px;--nav-height:48px;padding-bottom:max(12px,env(safe-area-inset-bottom));left:16px;right:16px}.home-top{margin:8px 14px;min-height:34px}.mini-tag{font-size:8px;letter-spacing:1px}.balance{font-size:12px;min-height:30px;gap:5px;padding-right:9px}.balance .coin{width:22px;height:22px;font-size:20px}.lobby-settings{width:32px;height:32px}.home .game-logo{top:44px;left:14px;width:140px}.home-bottom .hero-detail{width:215px;padding:5px 12px;gap:7px}.home-bottom .hero-detail b{font-size:16px}.home-bottom .hero-detail small{font-size:13px}.home-bottom .map-select b{font-size:14px}.map-change{font-size:11px}.home-bottom .map-select{gap:8px}.home-bottom .difficulty-select{padding-left:9px}.home-bottom .learning-select,.home-bottom .difficulty-select{gap:4px}.home-bottom .learning-select .abc{font-size:10px}.home-bottom .difficulty-select .lobby-icon:not(.chevron){width:18px;height:18px}.home-bottom .home-nav button{font-size:12px;gap:4px}.home-bottom .home-nav button img{width:23px;height:23px}.home-bottom .start{font-size:24px;border-radius:14px}}

/* 首页作者入口：手机保持独立触控区域，进入游戏后随首页一起隐藏。 */
.home-top .mini-tag{display:none}
.home-top .balance{margin-right:auto}
.author-link{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:0 10px;flex:none;border:1px solid #9cb3d270;border-radius:22px;background:#10294bdc;color:#f6f8ff;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap;transition:background .2s,transform .2s}
.author-link span{font-size:14px;color:#ffe433}
.author-link:hover{background:#233e64}
.author-link:active{transform:scale(.97)}
.author-link:focus-visible{outline:3px solid #ffe433;outline-offset:3px}
