/* Only the play lounge and its arcade pages. */
.arcade-page{font-size:15px;line-height:1.65;letter-spacing:-.015em}
.arcade-page .game-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start}
.arcade-page .game-board{padding:24px;background:#fff;min-width:0}
.arcade-page .board-header{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #e1ebf6}
.arcade-page #game .board-heading h2{white-space:normal;line-height:1.4;font-size:25px;letter-spacing:-.035em}
.arcade-page .board-heading .overline{font-size:12px;color:#2573c8;font-weight:700}
.arcade-page .board-heading p{font-size:14px;color:#627a99}
.arcade-page .scenario-tools label{font-size:13px;font-weight:600}
.arcade-page #game button,.arcade-page select{font-family:inherit;line-height:1.5;font-size:14px}
.arcade-page #game .scenario-tools button{padding:11px 14px}
.arcade-page .game-guide[open] summary{margin-bottom:17px}
.arcade-page .play-area>p{margin:14px 0;font-size:14px;line-height:1.85;color:#47617f}
.arcade-page .play-area>h3{margin:24px 0 10px;font-size:19px;line-height:1.5}
.arcade-page .game-status{align-items:center;flex-wrap:wrap;font-size:14px;margin:18px 0;padding:14px 17px}
.arcade-page .game-status strong{font-size:16px}
.arcade-page .scene{display:grid;grid-template-columns:110px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:24px;align-content:center;min-height:170px;padding:23px;margin:20px 0 24px;text-align:left}
.arcade-page .scene:before{content:none}
.arcade-page .scene .arcade-scene-art{grid-column:1;grid-row:1/4;width:110px;height:110px;margin:0;align-self:center}
.arcade-page .scene h3{grid-column:2;grid-row:1;font-size:23px;line-height:1.4;margin:0 0 7px;overflow-wrap:anywhere}
.arcade-page .scene p{grid-column:2;grid-row:2;font-size:13px;color:#577a9e;margin:0 0 14px}
.arcade-page .scene .arcade-round-progress{grid-column:2;grid-row:3;width:100%;height:8px;margin:0;border:0;border-radius:20px;overflow:hidden;background:#d5e5f4;appearance:none}
.arcade-page progress::-webkit-progress-bar{background:#d5e5f4;border-radius:20px}
.arcade-page progress::-webkit-progress-value{background:#1485f7;border-radius:20px}
.arcade-page progress::-moz-progress-bar{background:#1485f7;border-radius:20px}
.arcade-page .game-info-wrap{max-height:none;overflow:visible;margin:22px 0;border-radius:12px}
.arcade-page .game-info-table caption{border-radius:12px 12px 0 0;padding:16px 18px;line-height:1.6;font-size:17px}
.arcade-page .game-info-table th,.arcade-page .game-info-table td{padding:12px 16px;font-size:14px;line-height:1.7}
.arcade-page .game-info-notes{padding:17px 18px;border-radius:12px;background:#f6f9fd;font-size:13px;margin:18px 0 24px}
.arcade-page .game-info-notes p{margin:8px 0}
.arcade-page .game-info-notes h4{margin:0 0 9px;font-size:15px}
.arcade-page .choice-grid{gap:12px;margin:21px 0}
.arcade-page #game .choice-grid button{padding:17px 14px;font-size:16px;font-weight:700;line-height:1.5}
.arcade-page .choice-grid small{font-size:12px;font-weight:400;line-height:1.8;margin-top:9px}
.arcade-page .game-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.arcade-page .game-side{display:grid;gap:16px;min-width:0}
.arcade-page .side-card{padding:21px;background:#fff;border:1px solid #dce9f7;border-radius:15px;box-shadow:0 5px 20px #91b3d310}
.arcade-page .side-card h3{font-size:17px;line-height:1.5;margin:0 0 13px}
.arcade-page .side-card p{font-size:13px;color:#637b98;line-height:1.85;margin:10px 0}
.arcade-page .side-card small{display:block;font-size:12px;color:#647b98;line-height:1.8}
.arcade-page .record-value{font-size:29px;font-weight:800;color:#137de5;line-height:1.4;margin:8px 0}
.arcade-page .log-list{margin:0;padding-left:20px;font-size:13px;line-height:1.8;color:#587493}
.arcade-page .log-list li{padding:9px 0;border-bottom:1px solid #edf2f8}
.arcade-page .arcade-notice{margin:24px 0 10px;line-height:1.8}
.arcade-page .city-lots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.arcade-page .city-lot{text-align:center;background:#ffffffb8;border:1px solid #cde7da;border-radius:12px;padding:14px 8px;line-height:1.7;font-size:12px;overflow-wrap:anywhere}
.arcade-page .city-lot b{display:block;font-size:35px;line-height:1.4;margin-bottom:8px}
.arcade-page .shop-table-scroll{overflow-x:auto;margin:18px 0}
.arcade-page .shop-table{min-width:580px}
.arcade-page .shop-table th{width:auto}
.arcade-page .crossword-answer{padding:20px;margin-top:22px}
.arcade-page .crossword-answer h3{line-height:1.7;margin:14px 0;font-size:18px}
.arcade-page .game-finish{padding:30px 22px;text-align:center}
.play-hub{line-height:1.65;letter-spacing:-.015em}
.play-hub h2,.play-hub h3{line-height:1.4;word-break:keep-all}
.play-hub .hub-nav b{line-height:1.5;word-break:keep-all}
.play-hub .arcade-card p{line-height:1.8;min-height:44px}
.play-hub .detective-card h3{line-height:1.55;overflow-wrap:anywhere}
.play-hub .hub-bottom strong{line-height:1.7}
.play-hub .player-card progress{appearance:none;border:0;border-radius:20px;overflow:hidden;background:#d5e5f4}
.play-hub .player-card progress::-webkit-progress-bar{background:#d5e5f4}
.play-hub .player-card progress::-webkit-progress-value{background:#1485f7}
@media(max-width:1020px){.arcade-page .game-layout{grid-template-columns:1fr}.arcade-page .game-side{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}}
@media(max-width:680px){.arcade-page .game-board{padding:17px}.arcade-page .game-side{grid-template-columns:1fr}.arcade-page .scene{grid-template-columns:75px minmax(0,1fr);gap:15px;padding:18px;min-height:145px}.arcade-page .scene .arcade-scene-art{width:75px;height:85px}.arcade-page .scene h3{font-size:20px}.arcade-page #game .board-heading h2{font-size:22px}.arcade-page .game-info-table th,.arcade-page .game-info-table td{font-size:13px;padding:11px}.arcade-page .choice-grid{grid-template-columns:1fr}.arcade-page .city-lots{grid-template-columns:repeat(2,minmax(0,1fr))}.arcade-page .crossword-answer{padding:15px}.arcade-page .scenario-tools button{white-space:normal!important}.arcade-page .game-status strong{font-size:14px}}
