/* Shared warm timber / jade surfaces, artwork edition. */
#panel-game-mode .mode-card-grid { gap:12px; grid-template-columns:repeat(2,minmax(0,1fr)); }
#panel-game-mode .mode-card-grid .lobby-game-mode,
#panel-game-mode .mode-card-grid .lobby-game-mode:last-child {
  display:block;position:relative;grid-column:auto;height:144px;min-height:144px;
  padding:0;margin:0;border:1px solid #cbbd9b;border-radius:18px;background:#33483c;
  box-shadow:0 5px 14px #493d2420;isolation:isolate;overflow:hidden;
}
#panel-game-mode .mode-card-grid .lobby-game-mode.on { border:2px solid #d6b26b;box-shadow:0 0 0 2px #d6b26b33,0 6px 18px #493d2430; }
#panel-game-mode .mode-card-grid .lobby-game-mode i,
#panel-game-mode .mode-card-grid .lobby-game-mode:last-child i { position:absolute;inset:0;width:100%;height:100%;border-radius:0;box-shadow:none; }
#panel-game-mode .mode-card-grid .lobby-game-mode:after { content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0e211ca8,transparent 68%);z-index:0;pointer-events:none; }
#panel-game-mode .mode-card-grid .lobby-game-mode>span { position:absolute;left:15px;bottom:15px;padding:0;z-index:1;color:#fff8e8;text-shadow:0 2px 6px #0008; }
#panel-game-mode .mode-card-grid .lobby-game-mode b,
#panel-game-mode .mode-card-grid .lobby-game-mode:last-child b { font:700 19px/1.2 "MaoyuChessSerif", "Noto Serif SC",serif;letter-spacing:2px; }
#panel-game-mode .mode-card-grid .lobby-game-mode em { right:16px;bottom:16px;color:#ffe6a6;z-index:1; }
#panel-game-mode .mode-card-grid .lobby-game-mode em::after { font-size:23px; }
.friend-lobby-primary .lobby-mode-select { position:relative;background-size:cover;background-position:center 58%;background-color:#395447;border-color:#c6b58f;color:#fff8e8;text-shadow:0 2px 6px #0009;border-radius:18px;box-shadow:0 4px 0 #627367,0 8px 20px #26392b22; }
.friend-lobby-primary .lobby-start { background:linear-gradient(145deg,#4d9281,#20594f);border:1px solid #a9ccb2;border-radius:18px;box-shadow:inset 0 1px 0 #eff9da75,0 4px 0 #194a42,0 9px 18px #24554825;letter-spacing:3px; }
.friend-lobby-primary .lobby-start::before { content:"✦";font-size:13px;color:#ead8a5;margin-right:10px;vertical-align:2px; }
#screen-lobby .lobby-voice { display:flex;align-items:center;gap:6px; }
#screen-lobby .lobby-voice .vbtn { display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;margin:0;padding:8px;border:1px solid #9aafa54d;border-radius:50%;background:#fbfaf2b8;color:#4b685e;box-shadow:0 2px 6px #314c3510; }
#screen-lobby .lobby-voice .vbtn[aria-pressed="true"] { background:#dceadf;color:#287663; }
#screen-lobby #lobby-audio-settings svg { width:18px;height:18px; }
#panel-settings .game-theme-choice { position:relative;height:96px;padding:0;gap:0;overflow:hidden;border-radius:14px; }
#panel-settings .game-theme-preview { position:absolute;inset:0;height:100%;border:0;border-radius:0;background-size:cover;background-position:center; }
#panel-settings .game-theme-preview::after { display:none; }
#panel-settings .game-theme-choice::after { content:"";position:absolute;inset:0;background:linear-gradient(0deg,#17271fc9,transparent 75%);pointer-events:none; }
#panel-settings .game-theme-name { position:absolute;left:11px;right:11px;bottom:11px;text-align:left;color:#fff6df;z-index:1;font-size:13px;letter-spacing:1px;text-shadow:0 1px 5px #0008; }
.theme-preview-tealStripe,.theme-preview-ivoryPattern,.theme-preview-gridParchment,.theme-preview-gridLake,.theme-preview-chessSilk,.theme-preview-chessInk { background-image:url('../assets/modes/tea-atelier-v2.webp?v=20260930'); }
.theme-preview-gildedStar,.theme-preview-warmwood,.theme-preview-flowCrystal,.theme-preview-softGlass { background-image:url('../assets/modes/jump-atelier-v2.webp?v=20260930'); }
.theme-preview-gridAmber,.theme-preview-cloudPorcelain { background-image:url('../assets/modes/gomoku-atelier-v2.webp?v=20260930'); }
.theme-preview-gridJade,.theme-preview-cloudJade { background-image:url('../assets/modes/reversi-atelier-v2.webp?v=20260930'); }
.theme-preview-chessMaple,.theme-preview-chessIvory { background-image:url('../assets/modes/xiangqi-atelier-v2.webp?v=20260930'); }
.theme-preview-chessSlate,.theme-preview-chessJade { background-image:url('../assets/modes/jieqi-atelier-v2.webp?v=20260930'); }
.theme-preview-gridLake,.theme-preview-chessInk,.theme-preview-softGlass { filter:sepia(.15) hue-rotate(45deg) saturate(.65); }
.undo-help-row { position:relative;display:block; }
.undo-help-row #opt-undo { width:100%;padding-inline:38px; }
.undo-help-row .undo-help { position:absolute;right:8px;top:50%;transform:translateY(-50%);margin:0; }
.undo-help-row .undo-help summary { display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid #9c947f;border-radius:50%;font:15px/1 Georgia,serif;color:#827864;list-style:none;cursor:pointer; }
.undo-help-row .undo-help summary::-webkit-details-marker { display:none; }
.undo-help-row .undo-help p { position:absolute;bottom:30px;right:-4px;width:220px;padding:12px;border:1px solid #d8ccb2;border-radius:12px;background:#fffaf0;color:#544d3e;font-size:12px;line-height:1.7;box-shadow:0 6px 20px #34230e22;z-index:5; }
.social-call-record { height:auto;min-height:44px;padding:10px 14px;border-radius:10px;box-shadow:none;gap:12px; }
.social-call-record span { font-size:15px;line-height:1.5;white-space:normal; }
.social-call-record.is-video { color:#285f54;border-color:#d3e1d8;background:#f1f5ef; }
.social-call-record.is-voice { color:#292b29;background:#fff;border-color:#e5e5df; }
.native-chat-row.mine .social-call-record.is-voice { background:#e4f0da; }
.native-chat-row.mine .social-call-record.is-video { background:#deeee6; }
.social-call-record svg { width:22px;height:22px; }
.call-diag,.bot-level-note { display:none; }
@media(max-height:740px) {
  #panel-game-mode .mode-card-grid .lobby-game-mode,#panel-game-mode .mode-card-grid .lobby-game-mode:last-child { height:112px;min-height:112px; }
}

#screen-game.skin-bg-teaScene { background:linear-gradient(#fff7e4aa,#fff7e4aa),url('../assets/modes/tea-atelier-v2.webp?v=20260930') center/cover; }
.theme-preview-teaScene { background-image:url('../assets/modes/tea-atelier-v2.webp?v=20260930'); }
#lobby-audio-settings.vbtn::before { display:none; }

#panel-game-mode .mode-card-grid .lobby-game-mode em { display:block;opacity:1;position:absolute;right:14px;bottom:14px; }
#panel-game-mode .mode-card-grid .lobby-game-mode em::after { content:'›';color:#ffe6a6;font-size:24px; }
#panel-game-mode .mode-card-grid .lobby-game-mode.on em::after { content:'✓'; }

.theme-preview-tealStripe { filter:hue-rotate(125deg) saturate(.55); }
.theme-preview-ivoryPattern { filter:saturate(.45) brightness(1.2); }
.theme-preview-gridLake { filter:hue-rotate(55deg) saturate(.5); }
.theme-preview-chessInk { filter:hue-rotate(110deg) saturate(.45) brightness(.65); }
.theme-preview-gildedStar { filter:sepia(.2) saturate(1.3); }

.setting-info-dialog { width:min(340px,calc(100vw - 48px));padding:24px;border:1px solid #dbd0b9;border-radius:18px;background:#f8f4e9;color:#332f28;box-shadow:0 18px 60px #0004; }
.setting-info-dialog::backdrop { background:#14241e66; }
.setting-info-dialog h3 { margin:0 0 16px;font-size:19px; }
.setting-info-dialog p { margin:0;line-height:1.75;font-size:15px; }
.setting-info-dialog button { display:block;margin:20px 0 0 auto;border:0;background:transparent;color:#286d60;font-size:15px;padding:8px 12px; }
.setting-help-button { background:transparent;border:0;color:#79623f;padding:10px 0; }
.undo-help-row { position:relative;display:block; }
.undo-help-row #opt-undo { width:100%; }
.undo-info-button { position:absolute;right:12px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:1px solid #85775f;border-radius:50%;padding:0;background:transparent;color:#85775f;font:16px/22px Georgia,serif; }

.social-call-record { position:relative;min-height:50px;border:0;border-radius:6px;padding:12px 15px;gap:11px;overflow:visible; }
.social-call-record span { font-size:17px;line-height:1.5;white-space:nowrap; }
.social-call-record svg { width:28px;height:28px;flex-shrink:0; }
.social-call-record::before { content:'';position:absolute;left:-7px;top:15px;border-style:solid;border-width:6px 7px 6px 0;border-color:transparent #fff transparent transparent; }
.native-chat-row.mine .social-call-record::before { left:auto;right:-7px;border-width:6px 0 6px 7px;border-color:transparent transparent transparent #e4f0da; }
.social-call-record.is-video { background:#fff; }
.native-chat-row.mine .social-call-record.is-video { background:#e4f0da; }
