/* Lóngmò Games — Doudou Café Deluxe 1.6.34 */
body[data-current-view="games"] .keyboard{display:none!important}
.games-page{padding:18px 26px 44px;color:#f8f2e8}
.games-page .page-kicker{color:#a76b37;font-weight:900;letter-spacing:.06em}
.games-hub,.cafe-intro,.cafe-game{max-width:1260px;margin:0 auto}
.games-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px;padding:26px 28px;border:1px solid rgba(124,78,35,.16);border-radius:28px;background:linear-gradient(135deg,rgba(255,250,241,.98),rgba(247,231,204,.95));color:#392517;box-shadow:0 24px 56px rgba(72,43,19,.12)}
.games-hero-deluxe{position:relative;overflow:hidden}.games-hero-deluxe:after{content:'游';position:absolute;right:36px;top:-44px;color:rgba(134,73,34,.045);font:900 170px/1 "Noto Serif SC",serif;pointer-events:none}
.games-hero h2{margin:4px 0 8px;font:900 36px/1.05 "Noto Serif SC",serif}.games-hero p{max-width:650px;margin:0;color:#735841;line-height:1.58}
.games-summary{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(82px,1fr));gap:9px;min-width:420px}.games-summary div{padding:12px 10px;border:1px solid rgba(97,61,28,.11);border-radius:15px;background:rgba(255,255,255,.62);text-align:center}.games-summary strong{display:block;color:#4b2d18;font-size:21px}.games-summary span{font-size:9px;color:#94775f}
.games-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}.game-card{overflow:hidden;border:1px solid rgba(116,78,43,.16);border-radius:26px;background:rgba(255,248,236,.96);color:#3e2b1d;box-shadow:0 18px 42px rgba(72,44,22,.11)}
.cafe-game-card{grid-row:span 2;display:grid;grid-template-columns:minmax(340px,1.16fr) minmax(320px,.84fr);min-height:520px}.game-card-art{position:relative;min-height:100%;overflow:hidden;background:#7c4a27}.game-card-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(37,20,10,.54))}.game-card-art img{width:100%;height:100%;object-fit:cover;display:block}.game-live-badge{position:absolute;z-index:2;top:16px;left:16px;padding:8px 11px;border-radius:999px;background:#2d7b50;color:#fff;font-size:9px;font-weight:950;letter-spacing:.09em;box-shadow:0 8px 22px rgba(28,74,50,.22)}.game-card-art-caption{position:absolute;z-index:2;left:22px;bottom:18px;color:#fff;font:900 22px/1 "Noto Serif SC",serif;text-shadow:0 2px 14px rgba(0,0,0,.65)}
.game-card-copy{display:flex;flex-direction:column;padding:29px}.game-card-copy h3{margin:5px 0 12px;font:900 31px/1.05 "Noto Serif SC",serif}.game-card-copy p{margin:0;color:#765c48;line-height:1.62}.game-feature-list{display:grid;gap:7px;margin:18px 0 0;padding:0;list-style:none;color:#765c48;font-size:11px}.game-feature-list li:before{content:'✓';display:inline-grid;place-items:center;width:18px;height:18px;margin-right:7px;border-radius:50%;background:#e8d4b8;color:#7b4827;font-weight:950}.game-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:22px;color:#8d6a4f;font-size:10px}.game-card-meta span{padding:8px 10px;border-radius:10px;background:#f3e2c9}.game-primary{margin-top:13px;border:0;border-radius:15px;padding:14px 17px;background:linear-gradient(135deg,#b76b34,#81401d);color:#fff;font-weight:950;cursor:pointer;box-shadow:0 13px 24px rgba(126,65,29,.22);transition:.17s ease}.game-primary:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(126,65,29,.27)}
.game-card-coming{min-height:240px;padding:22px;opacity:.88}.game-card-coming>div{display:flex;align-items:center;gap:10px}.game-card-coming>div>span{font-size:27px}.game-card-coming strong{font:850 16px/1.2 "Noto Serif SC",serif}.game-card-coming small{margin-left:auto;padding:5px 8px;border-radius:999px;background:#eadbc4;color:#99775b;font-size:8px;font-weight:900}.game-card-coming p{color:#8d7058;font-size:12px;line-height:1.5}

.cafe-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-bottom:12px;padding:15px 18px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:linear-gradient(135deg,rgba(52,29,17,.95),rgba(91,50,24,.92));box-shadow:0 20px 44px rgba(48,27,16,.18)}.cafe-topbar-intro{grid-template-columns:auto 1fr}.cafe-topbar>button{border:1px solid rgba(255,255,255,.15);border-radius:11px;padding:9px 11px;background:rgba(255,255,255,.07);color:#f8e9d6;cursor:pointer}.cafe-topbar h2{margin:3px 0 2px;font:900 25px/1 "Noto Serif SC",serif}.cafe-topbar small{color:#c9aa8e}.cafe-topbar label{display:grid;gap:5px;color:#cfb49b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.cafe-topbar select,.cafe-intro-level select{min-width:110px;border:1px solid rgba(255,255,255,.14);border-radius:11px;padding:9px 12px;background:#2c1c14;color:#fff}

.cafe-intro-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);overflow:hidden;border:1px solid rgba(108,68,35,.16);border-radius:28px;background:#fff7ea;color:#432a1b;box-shadow:0 28px 68px rgba(61,37,18,.18)}.cafe-intro-art{position:relative;min-height:590px;margin:0;overflow:hidden}.cafe-intro-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 68%,rgba(255,247,234,.72))}.cafe-intro-art img{width:100%;height:100%;object-fit:cover;display:block}.cafe-intro-art figcaption{position:absolute;z-index:2;left:20px;bottom:18px;padding:9px 12px;border-radius:12px;background:rgba(43,25,14,.75);color:#fff;font-size:10px;backdrop-filter:blur(6px)}.cafe-intro-panel{display:flex;flex-direction:column;padding:34px}.cafe-intro-panel h3{margin:6px 0 10px;font:900 30px/1.08 "Noto Serif SC",serif}.cafe-intro-panel>p{margin:0;color:#7d604a;line-height:1.6}.cafe-howto{display:grid;gap:10px;margin:23px 0}.cafe-howto>div{display:flex;gap:11px;align-items:center;padding:11px;border:1px solid #ead5b9;border-radius:15px;background:#fffaf2}.cafe-howto b{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:#8c4d28;color:#fff}.cafe-howto span{display:grid;gap:2px}.cafe-howto strong{font-size:12px}.cafe-howto small{color:#92735c;font-size:10px}.cafe-intro-level{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 12px;margin-top:auto;padding:14px;border-radius:16px;background:#f1dfc6}.cafe-intro-level>span{font-weight:900}.cafe-intro-level small{grid-column:1/-1;color:#8a694f}.cafe-intro-stats{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.cafe-intro-stats span{padding:8px 9px;border-radius:10px;background:#fff8ef;color:#907059;font-size:9px}.cafe-intro-stats b{color:#5a3821}.cafe-open-button{border:0;border-radius:15px;padding:14px 17px;background:linear-gradient(135deg,#3f9a59,#267746);color:#fff;font-weight:950;cursor:pointer;box-shadow:0 13px 24px rgba(39,119,70,.22)}

.cafe-hud{display:grid;grid-template-columns:120px 100px 145px 100px 1fr;gap:9px;margin-bottom:12px}.cafe-hud>div{padding:10px 12px;border:1px solid rgba(92,54,28,.13);border-radius:14px;background:rgba(255,248,235,.97);color:#4b3020}.cafe-hud span{display:block;color:#9a7659;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.cafe-hud strong{display:block;margin-top:3px;font-size:19px}.cafe-hearts strong{color:#d65350;letter-spacing:2px}.cafe-round-progress{display:flex;align-items:center;gap:13px}.cafe-round-progress>span{min-width:78px}.cafe-round-progress>div{height:8px;flex:1;border-radius:999px;background:#ead8c0;overflow:hidden}.cafe-round-progress i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#bd743c,#e1aa5d);transition:width .22s ease}
.cafe-stage{position:relative;min-height:665px;overflow:hidden;padding:20px;border:1px solid rgba(101,62,32,.13);border-radius:28px;background:#5b351d;box-shadow:0 30px 70px rgba(65,40,20,.18)}.cafe-scene-layer{position:absolute;inset:0;background:linear-gradient(180deg,rgba(38,21,11,.15),rgba(42,23,12,.4)),url('../assets/games/doudou-cafe/stage.webp') center/cover no-repeat;transform:scale(1.01)}.cafe-stage>*:not(.cafe-scene-layer){position:relative;z-index:1}
.cafe-customer-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;max-width:1030px;margin:0 auto 14px;padding:14px 16px;border:1px solid rgba(255,255,255,.38);border-radius:21px;background:rgba(51,29,17,.86);color:#fff;box-shadow:0 16px 38px rgba(35,20,12,.24);backdrop-filter:blur(12px)}.cafe-customer{display:flex;align-items:center;gap:13px;min-width:0}.cafe-customer img{width:78px;height:78px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.22))}.cafe-customer div{min-width:0}.cafe-customer span{display:block;color:#e1c3a6;font-size:10px}.cafe-customer strong{display:block;margin-top:4px;font:900 25px/1.18 "Noto Serif SC",serif}.cafe-customer small{display:block;margin-top:5px;color:#d8c6b5}.cafe-order-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.cafe-order-actions button{border:1px solid rgba(255,255,255,.16);border-radius:11px;padding:9px 10px;background:rgba(255,255,255,.09);color:#fff;cursor:pointer;font-size:10px}.cafe-order-actions button small{display:block;color:#d4bca6;font-size:7px}.cafe-order-actions button:disabled{opacity:.45}.cafe-hint{grid-column:1/-1;margin-top:-4px;padding:8px 11px;border-radius:11px;background:rgba(255,241,204,.12);color:#ffe7b6;font-size:11px}.cafe-hint[hidden]{display:none}
.cafe-workbench{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr);gap:14px;max-width:1030px;margin:0 auto}.cafe-menu-panel,.cafe-prep-panel{padding:16px;border:1px solid rgba(255,255,255,.58);border-radius:21px;background:rgba(255,250,242,.93);color:#432b1d;box-shadow:0 14px 35px rgba(46,27,14,.14);backdrop-filter:blur(8px)}.cafe-panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.cafe-panel-title strong{font-size:13px}.cafe-panel-title span{color:#9b7d66;font-size:9px}.cafe-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.cafe-product-grid button{display:grid;justify-items:center;gap:3px;min-height:112px;border:1px solid #e2ccb0;border-radius:15px;padding:9px 6px;background:#fff8ee;color:#4b3020;cursor:pointer;transition:.15s ease}.cafe-product-grid button:hover{transform:translateY(-2px);border-color:#c18a56}.cafe-product-grid button.active{border-color:#a96532;background:#f3dec2;box-shadow:0 0 0 3px rgba(169,101,50,.12)}.cafe-product-grid button>span{font-size:28px}.cafe-product-grid button strong{font:900 20px/1 "Noto Serif SC",serif}.cafe-product-grid button small{color:#8f6f58;font-size:9px}.cafe-product-grid button em{max-width:95px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aa8b72;font-size:8px;font-style:normal}.cafe-details{display:grid;gap:8px}.cafe-detail-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:9px;border:1px solid #e7d1b5;border-radius:13px}.cafe-detail-group legend{padding:0 5px;color:#947158;font-size:9px;font-weight:900}.cafe-detail-group button{display:flex;align-items:center;gap:6px;border:1px solid #e2ceb5;border-radius:10px;padding:8px;background:#fffaf3;color:#684a34;cursor:pointer;font-size:10px;font-weight:800}.cafe-detail-group button.active{border-color:#9a5b30;background:#f0d8b8;color:#552f18;box-shadow:inset 0 0 0 1px rgba(154,91,48,.12)}.cafe-detail-group button small{margin-left:auto;color:#a17b5e}.cafe-detail-placeholder{display:flex;align-items:center;gap:11px;min-height:94px;padding:12px;border:2px dashed #d7b995;border-radius:15px;color:#96775e;background:#fbefdf}.cafe-detail-placeholder span{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:50%;background:#e9d4b7;color:#6b4329;font-weight:950}.cafe-detail-placeholder p{margin:0;font-size:10px;line-height:1.45}.cafe-detail-placeholder.compact{min-height:64px}.cafe-tray{display:grid;place-items:center;min-height:122px;margin:11px 0;border:2px dashed #d3b491;border-radius:17px;background:linear-gradient(135deg,#f2e0c6,#ead0ac);position:relative}.cafe-tray-label{position:absolute;top:7px;left:9px;color:#98765c;font-size:8px;text-transform:uppercase;font-weight:900}.cafe-tray-empty{max-width:190px;color:#a38771;font-size:10px;text-align:center;line-height:1.45}.cafe-tray-item{display:grid;justify-items:center}.cafe-tray-item b{font-size:35px}.cafe-tray-item strong{font:900 23px/1.05 "Noto Serif SC",serif}.cafe-tray-item small{margin-top:3px;color:#906d51;font-size:9px}.cafe-serve{width:100%;border:0;border-radius:13px;padding:12px;background:linear-gradient(135deg,#42a85f,#227441);color:#fff;font-weight:950;cursor:pointer;box-shadow:0 10px 20px rgba(34,116,65,.17)}.cafe-serve:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.cafe-coach{display:flex;align-items:center;gap:9px;max-width:1030px;margin:12px auto 0;padding:8px 12px;border:1px solid rgba(255,255,255,.25);border-radius:15px;background:rgba(47,27,16,.74);color:#f9ead9;backdrop-filter:blur(8px)}.cafe-coach img{width:38px;height:38px;object-fit:contain}.cafe-coach span{display:grid;gap:2px;font-size:9px}.cafe-coach b{font-size:10px;color:#ffdb9d}
.cafe-feedback{display:none}.cafe-feedback.show{position:absolute!important;z-index:8!important;inset:0;display:grid;grid-template-columns:230px minmax(0,1fr) auto;align-items:center;gap:18px;padding:26px;background:rgba(34,19,10,.72);backdrop-filter:blur(5px);color:#fff}.cafe-feedback-art{height:170px;overflow:hidden;border:2px solid rgba(255,255,255,.36);border-radius:20px;box-shadow:0 18px 44px rgba(0,0,0,.24)}.cafe-feedback-art img{width:100%;height:100%;object-fit:cover;object-position:center 68%;display:block}.cafe-feedback-copy{display:flex;gap:13px;align-items:flex-start}.cafe-feedback-copy>span{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:50%;font-size:24px;font-weight:950}.cafe-feedback.correct .cafe-feedback-copy>span{background:#2d8852}.cafe-feedback.wrong .cafe-feedback-copy>span{background:#b74d48}.cafe-feedback-copy strong{display:block;font:900 27px/1.05 "Noto Serif SC",serif}.cafe-feedback-copy p{margin:8px 0 0;color:#f2ddc8;line-height:1.5}.cafe-feedback-copy small{display:block;margin-top:8px;color:#d6bfa9;line-height:1.45}.cafe-feedback>button{border:0;border-radius:13px;padding:12px 15px;background:#fff0cf;color:#5d361d;font-weight:950;cursor:pointer;white-space:nowrap}
.cafe-result-deluxe{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);max-width:1060px;min-height:575px;margin:24px auto;overflow:hidden;border:1px solid rgba(255,255,255,.52);border-radius:25px;background:rgba(255,249,239,.97);color:#4c311f;box-shadow:0 25px 60px rgba(41,23,11,.25)}.cafe-result-art{min-height:100%;overflow:hidden}.cafe-result-art img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.cafe-result-copy{display:flex;flex-direction:column;padding:30px}.cafe-result-stars{color:#e5a628;font-size:30px;letter-spacing:3px}.cafe-result h3{margin:8px 0 5px;font:900 30px/1 "Noto Serif SC",serif}.cafe-result p{color:#84674e}.cafe-result-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.cafe-result-numbers span{display:grid;justify-items:center;padding:11px;border-radius:14px;background:#f2dfc4}.cafe-result-numbers b{font-size:23px}.cafe-result-numbers small{color:#98785e;font-size:8px}.cafe-perfect-bonus{padding:10px 12px;border-radius:12px;background:#e1f3e7;color:#2b6943;font-weight:900;font-size:10px}.cafe-learning-recap{margin-top:15px}.cafe-learning-recap>strong{font-size:11px}.cafe-learning-recap>p{font-size:10px}.cafe-learning-recap>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.cafe-learning-recap button{display:grid;justify-items:start;border:1px solid #dfc8a9;border-radius:11px;padding:8px 9px;background:#fff9ef;color:#60432e;cursor:pointer}.cafe-learning-recap button b{font:900 17px/1 "Noto Serif SC",serif}.cafe-learning-recap button span,.cafe-learning-recap button small{font-size:8px;color:#95765e}.cafe-result-actions{display:flex;gap:8px;margin-top:auto;padding-top:18px}.cafe-result-actions button{border:0;border-radius:12px;padding:11px 16px;background:#8f4c25;color:#fff;font-weight:900;cursor:pointer}.cafe-result-actions button.secondary{background:#ead8bf;color:#64452f}.cafe-empty{position:relative;z-index:2;padding:40px;border-radius:20px;background:rgba(255,250,243,.94);text-align:center;color:#6b4e39}
.games-sidebar-link span{font-family:"Noto Serif SC",serif;font-weight:900}.games-sidebar-link.active{background:linear-gradient(135deg,#a95f2d,#7f411d)!important;color:#fff!important;box-shadow:0 10px 24px rgba(106,58,27,.22)!important}
@media(max-width:1250px){.games-grid{grid-template-columns:1fr 1fr}.cafe-game-card{grid-column:1/-1;grid-row:auto}.cafe-product-grid{grid-template-columns:repeat(3,1fr)}.cafe-hud{grid-template-columns:repeat(4,1fr)}.cafe-round-progress{grid-column:1/-1}.cafe-feedback.show{grid-template-columns:190px 1fr}.cafe-feedback>button{grid-column:2}}
@media(max-width:940px){.games-hero{align-items:stretch;flex-direction:column}.games-summary{min-width:0}.games-grid{grid-template-columns:1fr}.cafe-game-card,.cafe-intro-layout,.cafe-result-deluxe{grid-template-columns:1fr}.game-card-art,.cafe-intro-art{min-height:330px}.cafe-intro-art:after{background:linear-gradient(180deg,transparent 72%,rgba(255,247,234,.8))}.cafe-workbench{grid-template-columns:1fr}.cafe-topbar{grid-template-columns:1fr}.cafe-hud{grid-template-columns:1fr 1fr}.cafe-round-progress{grid-column:1/-1}.cafe-product-grid{grid-template-columns:repeat(3,1fr)}.cafe-feedback.show{grid-template-columns:1fr;align-content:center}.cafe-feedback-art{height:140px}.cafe-feedback>button{grid-column:auto}.cafe-result-art{max-height:300px}}
@media(max-width:620px){.games-page{padding:12px}.games-summary{grid-template-columns:1fr 1fr}.cafe-product-grid{grid-template-columns:repeat(2,1fr)}.cafe-customer-card{grid-template-columns:1fr}.cafe-order-actions{justify-content:flex-start}.cafe-intro-panel{padding:22px}.cafe-stage{padding:12px}.cafe-result-numbers{grid-template-columns:1fr 1fr}.cafe-result-copy{padding:22px}}

/* 1.6.35 — Doudou Café immersive clickable */
body[data-current-view="games"] .games-page{position:relative;border-radius:32px;background:linear-gradient(180deg,rgba(7,10,20,.96),rgba(13,9,18,.93));box-shadow:inset 0 0 0 1px rgba(255,190,120,.06)}
body[data-current-view="games"] .games-page::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(7,10,20,.84),rgba(13,9,18,.76)),url('../assets/games/doudou-cafe/immersive-hsk4.webp') center/cover no-repeat;opacity:.40;pointer-events:none}
body[data-current-view="games"] .games-hub,body[data-current-view="games"] .cafe-intro,body[data-current-view="games"] .cafe-game{position:relative;z-index:1}
body[data-current-view="games"] .games-hero,body[data-current-view="games"] .game-card,body[data-current-view="games"] .cafe-intro-layout{background:rgba(22,17,28,.88);border-color:rgba(255,183,117,.12);color:#fff7ef;backdrop-filter:blur(12px)}
body[data-current-view="games"] .games-hero p,body[data-current-view="games"] .game-card-copy p,body[data-current-view="games"] .game-feature-list,body[data-current-view="games"] .game-card-coming p,body[data-current-view="games"] .cafe-intro-panel>p{color:#e7d2c2}
body[data-current-view="games"] .games-summary strong,body[data-current-view="games"] .game-card-copy h3,body[data-current-view="games"] .game-card-coming strong,body[data-current-view="games"] .cafe-intro-panel h3{color:#fff8f0}
body[data-current-view="games"] .games-page .page-kicker{color:#ffbf84}
body[data-current-view="games"] .game-primary,body[data-current-view="games"] .cafe-open-button{background:linear-gradient(135deg,#28a062,#1b6a41)}
.cafe-stage{padding:0;background:#0f111a;border-color:rgba(255,180,120,.14)}
.cafe-immersive-shell{position:relative;min-height:720px;background-position:center;background-size:cover;overflow:hidden;border-radius:28px}
.cafe-immersive-shell::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,17,.04),rgba(8,9,17,.18) 50%,rgba(8,9,17,.55));pointer-events:none}
.cafe-customer-card-immersive{position:relative;z-index:3;max-width:1160px;margin:18px auto 0;background:rgba(20,15,22,.80);border-color:rgba(255,255,255,.18)}
.cafe-hotspot-layer{position:absolute;inset:0;z-index:2}
.cafe-hotspot{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;min-width:94px;padding:8px 10px;border:1px solid rgba(255,184,110,.9);border-radius:16px;background:rgba(32,18,17,.86);color:#fff8f0;box-shadow:0 8px 22px rgba(0,0,0,.35),0 0 20px rgba(255,137,45,.18);cursor:pointer;backdrop-filter:blur(8px);transition:.16s ease}
.cafe-hotspot:hover{transform:translate(-50%,-54%) scale(1.03);box-shadow:0 12px 30px rgba(0,0,0,.42),0 0 28px rgba(255,137,45,.32)}
.cafe-hotspot.active{background:rgba(39,140,82,.94);border-color:#9ff0ba;box-shadow:0 0 0 2px rgba(159,240,186,.18),0 10px 28px rgba(0,0,0,.34)}
.cafe-hotspot>span{font-size:22px}.cafe-hotspot>b{font-size:11px}.cafe-hotspot>small{font:800 12px/1.1 "Noto Serif SC",serif;color:#ffd7ae}
.cafe-hotspot.detail{border-color:rgba(103,194,255,.92)}
.cafe-immersive-dock{position:absolute;z-index:3;left:18px;right:18px;bottom:18px;display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:stretch}
.cafe-immersive-dock>div,.cafe-immersive-dock>button{padding:13px 16px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(17,13,22,.88);color:#fff;backdrop-filter:blur(14px)}
.cafe-immersive-dock span{display:block;color:#ffca95;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.cafe-immersive-dock strong{display:block;margin-top:4px;font:900 18px/1.1 "Noto Serif SC",serif}.cafe-immersive-dock small{display:block;margin-top:4px;color:#e3cbb7}
.cafe-serve.immersive{min-width:220px;background:linear-gradient(135deg,#2fa564,#1e7548)!important;border:0!important;font-weight:950;cursor:pointer}.cafe-serve.immersive:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:900px){.cafe-immersive-dock{grid-template-columns:1fr 1fr}.cafe-serve.immersive{grid-column:1/-1}.cafe-hotspot{min-width:78px;padding:6px 8px}}

/* 1.6.40 — restauration immersive + fond Jeux néon + carte café simplifiée */
body[data-current-view="games"] .dragon,
body[data-current-view="games"] .bear,
body[data-current-view="games"] .teacher-buddy,
body[data-current-view="games"] #teacherBuddy,
body[data-current-view="games"] .teacher-bubble,
body[data-current-view="games"] .music-controls,
body[data-current-view="games"] #musicControls,
body[data-current-view="games"] .grammar-menu-fab,
body[data-current-view="games"] .mascot-sprinkles{display:none!important}

body[data-current-view="games"]{overflow-x:hidden}
body[data-current-view="games"] .shell{overflow-x:clip}

body[data-current-view="games"] .games-page{
  position:relative;
  border-radius:32px;
  background:transparent!important;
  box-shadow:none!important;
}
body[data-current-view="games"] .games-page::before{display:none!important}
body.module-background-active .module-backdrop[data-page="games"]::after{
  background:linear-gradient(180deg,rgba(5,7,18,.26),rgba(12,8,18,.42))!important;
}
body[data-current-view="games"] .games-hero,
body[data-current-view="games"] .game-card,
body[data-current-view="games"] .cafe-intro-layout{
  background:rgba(19,15,27,.88)!important;
  border-color:rgba(255,183,117,.14)!important;
  color:#fff7ef!important;
  backdrop-filter:blur(14px)!important;
}
body[data-current-view="games"] .game-card-art{background:#120f18}
body[data-current-view="games"] .game-card-art img{object-fit:cover!important;object-position:center center!important;transform:none!important}
body[data-current-view="games"] .cafe-game-card .game-card-art{min-width:0;min-height:100%}
body[data-current-view="games"] .cafe-game-card .game-card-art img{width:100%;height:100%;object-fit:cover;object-position:center center}

.cafe-mode-picker{display:grid;gap:9px;margin:12px 0 0;padding:13px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(255,255,255,.06)}
.cafe-mode-picker>span{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#ffd09d}
.cafe-mode-picker>div{display:flex;flex-wrap:wrap;gap:8px}
.cafe-mode-picker button{border:1px solid rgba(255,255,255,.12);border-radius:11px;padding:9px 12px;background:rgba(255,255,255,.06);color:#f8eadf;font-weight:850;cursor:pointer}
.cafe-mode-picker button.active{border-color:rgba(129,242,174,.34);background:linear-gradient(135deg,#2fa564,#1e7548);color:#fff;box-shadow:0 8px 18px rgba(26,110,66,.22)}
.cafe-mode-picker small{color:#d9c1af;line-height:1.4}

.cafe-immersive-shell.voice-mode .cafe-hotspot.voice-hotspot{min-width:60px;padding:9px;border-radius:18px}
.cafe-immersive-shell.voice-mode .cafe-hotspot.voice-hotspot>span{font-size:26px}
.cafe-immersive-shell.voice-mode .cafe-customer-card-immersive strong{font-size:21px}
.cafe-immersive-dock.voice-dock{grid-template-columns:1fr 1fr auto}

.cafe-pedagogy-recap{display:grid;gap:7px;margin-top:12px;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.07)}
.cafe-pedagogy-recap>strong{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#ffe0ad}
.cafe-pedagogy-recap>div{display:flex;flex-wrap:wrap;gap:6px}
.cafe-pedagogy-recap>div>span{display:grid;gap:1px;min-width:86px;padding:7px 8px;border-radius:10px;background:rgba(255,255,255,.08)}
.cafe-pedagogy-recap b{font:900 16px/1.05 "Noto Serif SC",serif;color:#fff7ef}
.cafe-pedagogy-recap small{margin:0!important;color:#e8cdbb!important;font-size:8px!important}
.cafe-pedagogy-recap em{color:#f3dfd0;font-size:8px;font-style:normal}
.cafe-pedagogy-recap p{margin:0!important;color:#f1dccd!important;font-size:9px!important}

@media(max-width:940px){body[data-current-view="games"] .games-page{background-attachment:scroll}.cafe-immersive-dock.voice-dock{grid-template-columns:1fr 1fr}.cafe-immersive-dock.voice-dock .cafe-serve{grid-column:1/-1}}

/* 1.6.53 — aides lexicales interactives et traduction à la demande */
#gamesPage .listening-detective .ld-conversation .ld-transcript{overflow:visible!important;max-height:38vh!important}
.ld-word-help{position:relative;display:inline-block;text-decoration:underline dotted #bd9464;text-decoration-thickness:1px;text-underline-offset:3px;cursor:help;outline:none}
.ld-word-help:focus-visible{border-radius:3px;outline:2px solid #9c744e;outline-offset:2px}
.ld-wordtip-bubble{display:none;position:fixed;z-index:1000;left:0;top:0;transform:none;min-width:125px;max-width:min(210px,calc(100vw - 16px));padding:8px 10px;border:1px solid #ddc6a8;border-radius:10px;background:#fffaf2;color:#44372f;box-shadow:0 5px 18px #22170f35;text-align:center;text-decoration:none;white-space:normal;pointer-events:none}
.ld-wordtip-bubble b,.ld-wordtip-bubble span,.ld-wordtip-bubble small{display:block}.ld-wordtip-bubble b{font:700 16px/1.25 "Noto Serif SC",serif}.ld-wordtip-bubble>span{color:#966c45;font-size:11px}.ld-wordtip-bubble small{margin-top:2px;color:#5f5148;font-size:10px}
.ld-word-help.is-hovered .ld-wordtip-bubble,.ld-word-help.is-open .ld-wordtip-bubble{display:block}
.ld-french-request{justify-self:start;margin-top:5px!important;min-height:32px!important;padding:6px 9px!important;font-size:10px!important}
.ld-transcript>p[data-ld-french-text]{margin:3px 0 0;padding-top:5px;border-top:1px solid #eadfce;color:#6f5a46;font-size:11px}
.ld-transcript>p[data-ld-french-text][hidden]{display:none}
.ld-word-help-note{color:#8a765f;font-size:9px}
@media(max-width:720px){.ld-word-help{touch-action:manipulation}#gamesPage .listening-detective .ld-conversation .ld-transcript{overflow:visible!important;max-height:38vh!important}}


/* 1.6.40 — carte Doudou Café: seulement l'image + le nom */
body[data-current-view="games"] .cafe-game-card{
  display:block!important;
  position:relative;
  min-height:520px;
  overflow:hidden;
  padding:0!important;
  background:#120f18!important;
}
body[data-current-view="games"] .game-card-cover-button{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:inherit;
  overflow:hidden;
  background:#120f18;
  cursor:pointer;
  text-align:left;
}
body[data-current-view="games"] .game-card-cover-button img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transition:transform .25s ease;
}
body[data-current-view="games"] .game-card-cover-button::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 52%,rgba(12,7,16,.82) 100%);
}
body[data-current-view="games"] .game-card-cover-button:hover img{transform:scale(1.015)}
/* The cover buttons are absolutely positioned: their cards must have a
   positioned box with intrinsic height, including the last grid row. */
body[data-current-view="games"] .games-grid > .game-card:has([data-adventure-start]),
body[data-current-view="games"] .games-grid > .tower-game-card{
  position:relative;
  min-height:310px;
}
body[data-current-view="games"] .tower-card-badge{
  position:absolute;
  z-index:2;
  top:16px;
  left:16px;
  padding:8px 12px;
  border-radius:999px;
  background:#e9ab55;
  color:#211421;
  font:900 11px/1 system-ui,sans-serif;
  letter-spacing:.07em;
}
body[data-current-view="games"] .game-card-simple-title{
  position:absolute;
  z-index:2;
  left:24px;
  bottom:22px;
  color:#fff;
  font:900 clamp(27px,2.25vw,38px)/1.05 "Noto Serif SC",serif;
  text-shadow:0 3px 18px rgba(0,0,0,.72);
}

/* 1.6.41 — fixed cafe page; the scene takes the remaining viewport height. */
body[data-current-view="games"]:has([data-games-screen="intro"]),
body[data-current-view="games"]:has([data-games-screen="cafe"]){overflow:hidden}
body[data-current-view="games"] .games-page:is([data-games-screen="intro"],[data-games-screen="cafe"]){position:fixed;inset:0;z-index:1000;margin:0;padding:12px;max-width:none;width:100%;border-radius:0;height:100dvh;box-sizing:border-box;overflow:hidden}
.games-page:is([data-games-screen="intro"],[data-games-screen="cafe"])::before{display:none}
[data-cafe-game]:not([hidden]),[data-cafe-intro]:not([hidden]){display:flex;flex-direction:column;height:100%;max-width:none;min-height:0}
.cafe-game .cafe-topbar{display:flex;gap:12px;flex-shrink:0;padding:8px 12px;margin-bottom:8px}
.cafe-game .cafe-topbar>div{flex:1}.cafe-game .cafe-topbar h2{font-size:22px}
.cafe-game .cafe-hud{grid-template-columns:repeat(4,minmax(70px,110px)) 1fr;flex-shrink:0;margin-bottom:8px;gap:6px}
.cafe-game .cafe-hud>div{padding:6px 10px}.cafe-game .cafe-round-progress{grid-column:auto}
.cafe-game .cafe-stage{flex:1;min-height:0;padding:0;border-radius:18px;overflow:hidden}
.cafe-game .cafe-immersive-shell{height:100%;min-height:0;border-radius:18px}
.cafe-game .cafe-hotspot-layer{inset:75px 0 80px}
.cafe-game .cafe-hotspot{min-width:58px;max-width:105px;padding:5px 7px}
.cafe-game .cafe-hotspot>span{font-size:20px}.cafe-game .cafe-hotspot>b{font-size:10px}
.cafe-game .cafe-customer-card{margin:8px;padding:6px 12px;gap:8px}
.cafe-game .cafe-customer img{height:46px;width:46px}.cafe-game .cafe-customer strong{font-size:20px}
.cafe-game .cafe-immersive-dock{left:10px;right:10px;bottom:10px;grid-template-columns:1fr 1fr auto}
.cafe-game .cafe-immersive-dock>div,.cafe-game .cafe-immersive-dock>button{padding:8px 12px}
.cafe-game .cafe-immersive-dock strong{font-size:16px}.cafe-game .cafe-serve.immersive{grid-column:auto}
.cafe-game .cafe-feedback.show{overflow:auto;grid-template-columns:minmax(110px,20%) 1fr auto;padding:18px}
.cafe-game .cafe-feedback>button{grid-column:auto}
.cafe-game .cafe-result-deluxe{height:100%;min-height:0;margin:0 auto;grid-template-columns:35% 65%}
.cafe-game .cafe-result-copy{padding:18px;overflow:auto}.cafe-game .cafe-result-art{min-height:0;max-height:none}
.cafe-intro .cafe-intro-layout{flex:1;min-height:0;grid-template-columns:1fr 1fr}
.cafe-intro .cafe-intro-art{min-height:0}.cafe-intro .cafe-intro-panel{padding:18px;overflow:auto}
.cafe-intro .cafe-howto{margin:10px 0;gap:5px}.cafe-intro .cafe-howto>div{padding:6px}
.cafe-music-credit{display:block;margin:6px 0 10px;color:#d4bea9;font-size:10px}.cafe-music-credit a{color:inherit}
@media(max-height:720px){.cafe-game .page-kicker,.cafe-game [data-cafe-difficulty]{display:none}.cafe-game .cafe-customer span{display:none}.cafe-game .cafe-customer img{height:32px;width:32px}.cafe-game .cafe-customer strong{font-size:17px}.cafe-game .cafe-hotspot>span{font-size:17px}.cafe-game .cafe-immersive-dock small{font-size:10px}.cafe-game .cafe-hotspot-layer{inset:60px 0 70px}}
@media(max-width:650px){.cafe-game .cafe-topbar{flex-wrap:wrap;gap:6px}.cafe-game .cafe-topbar h2{font-size:17px}.cafe-game .cafe-topbar select{min-width:65px;padding:5px}.cafe-game .cafe-hud{grid-template-columns:repeat(4,1fr)}.cafe-game .cafe-round-progress{grid-column:1/-1}.cafe-game .cafe-customer-card{grid-template-columns:1fr}.cafe-game .cafe-hotspot-layer{inset:115px 18px 95px}.cafe-game .cafe-hotspot{min-width:34px;max-width:65px;padding:4px}.cafe-game .cafe-hotspot>b{font-size:8px}.cafe-game .cafe-immersive-dock{grid-template-columns:1fr auto}.cafe-game .cafe-immersive-dock>div:nth-child(2){display:none}.cafe-game .cafe-feedback.show{grid-template-columns:1fr;align-content:start}.cafe-game .cafe-feedback-art{display:none}.cafe-intro .cafe-intro-layout{grid-template-columns:1fr}.cafe-intro .cafe-intro-art{display:none}}
/* 1.6.42: a stable counter and editable multi-product tray. */
.cafe-v2{position:relative;height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding:12px;box-sizing:border-box;background:linear-gradient(#19101bb3,#19101b66),var(--cafe-scene) center/cover;color:#fff8ec}
.cafe-v2 button,.cafe-v2-result button{border:1px solid #e3bd8766;border-radius:10px;padding:9px 12px;background:#33261e;color:#fff5e5;cursor:pointer;font:inherit;font-size:12px}.cafe-v2 button:hover{background:#604733}.cafe-v2 button:focus-visible{outline:3px solid #fff0a8;outline-offset:2px}.cafe-v2 button[aria-pressed="true"]{background:#286645;border-color:#a1edb7}.cafe-v2 button:disabled{opacity:.45;cursor:default}
.cafe-v2-order{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px;background:#211923ed;border:1px solid #d7b98966;border-radius:15px;padding:10px 14px;max-height:28vh;overflow:auto}.cafe-v2-order>img{width:54px;height:54px;object-fit:contain}.cafe-v2-order strong{display:block;font-size:clamp(16px,1.4vw,22px);line-height:1.5}.cafe-v2-order span,.cafe-v2-order small{display:block;color:#ead1ae;font-size:12px}.cafe-v2-order p{margin:5px 0;font-size:13px}.cafe-v2-audio{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.cafe-v2-work{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,30%);gap:12px;min-height:0}.cafe-v2-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-content:start;overflow:auto;min-height:0;padding:3px}.cafe-v2-products button{min-height:70px;background:#231a20e8;display:grid;place-items:center;gap:2px}.cafe-v2-products button>span{font-size:29px}.cafe-v2-products b{font-weight:600;font-size:12px}.cafe-v2-products small{font-size:14px;color:#e9ce9b}.cafe-v2-prep{background:#211923ed;border-radius:15px;padding:14px;overflow:auto;min-height:0}.cafe-v2-prep h3{margin:0 0 10px;font-size:17px}.cafe-v2-prep label{display:flex;align-items:center;justify-content:space-between;margin:10px 0}.cafe-v2-prep input{width:65px;padding:9px;background:#fff5e5;color:#30251c;border-radius:8px;border:0;font-size:18px}.cafe-v2-details{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.cafe-rule{font-size:11px;color:#dbc4a6;line-height:1.5}.cafe-v2-prep>button{margin:4px 0}
.cafe-v2-tray{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;background:#211923f5;border-radius:15px;padding:10px 14px;max-height:24vh;overflow:auto}.cafe-v2-tray-items{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:5px}.cafe-v2-tray .cafe-serve{width:auto;min-width:150px;background:#287346}.cafe-v2-tray-items button{font-size:11px;padding:6px 9px}.cafe-v2-tray-items>span{font-size:12px;color:#dec7a9}
.cafe-v2-feedback{position:absolute;inset:8px;z-index:10;overflow:auto;border:1px solid #e6c997;border-radius:16px;background:#201922f5;backdrop-filter:blur(8px);padding:24px;display:flex;flex-direction:column;gap:10px}.cafe-v2-feedback>strong{font-size:24px}.cafe-v2-feedback p,.cafe-v2-feedback li{line-height:1.6}.cafe-v2-feedback button{align-self:flex-start;background:#367548}.cafe-v2-focus{display:flex;flex-wrap:wrap;gap:8px}.cafe-v2-focus span{padding:8px;background:#ffffff10;border-radius:8px;font-size:13px}.cafe-v2-result{height:100%;box-sizing:border-box;overflow:auto;padding:clamp(18px,4vw,50px);background:#211923;color:#fff5e5}.cafe-v2-result h3{font-size:28px}.cafe-v2-result p{max-width:850px;line-height:1.7}.cafe-v2-result button{margin:5px}
@media(max-height:750px){.cafe-v2-products button{min-height:54px;padding:5px}.cafe-v2-products button>span{font-size:23px}.cafe-v2{gap:6px;padding:8px}.cafe-v2-order{padding:6px 10px}.cafe-v2-order>img{height:38px;width:38px}.cafe-v2-order{grid-template-columns:38px 1fr auto}}
@media(max-width:750px){.cafe-v2-work{grid-template-columns:minmax(0,1fr) minmax(170px,42%)}.cafe-v2-products{grid-template-columns:repeat(2,minmax(0,1fr))}.cafe-v2-order{grid-template-columns:1fr auto}.cafe-v2-order>img{display:none}.cafe-v2-audio{grid-template-columns:1fr}.cafe-v2-order strong{font-size:15px}.cafe-v2 button{font-size:11px;padding:7px}.cafe-v2-prep{padding:9px}.cafe-v2-tray{grid-template-columns:1fr}.cafe-v2-tray .cafe-serve{min-width:0}.cafe-v2-feedback{padding:16px}}
/* 1.6.43 — restore the clickable café photograph while retaining the mastery tray. */
.cafe-v2{background-color:#24151a!important}
.cafe-v2-work{position:relative;display:block;min-height:0;overflow:hidden;border-radius:18px;background:rgba(0,0,0,.08)}
.cafe-v2-products{position:absolute;inset:0;z-index:4;display:block;overflow:visible;padding:0}
.cafe-v2-products button{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);min-width:72px;min-height:62px;padding:7px 9px;background:rgba(34,22,22,.84);border:1px solid rgba(255,196,123,.78);border-radius:14px;box-shadow:0 8px 20px #160b0aaa,0 0 16px #ff9d421f;backdrop-filter:blur(6px);transition:transform .16s,background .16s}
.cafe-v2-products button:hover{transform:translate(-50%,-55%) scale(1.06);background:rgba(117,66,33,.95)}
.cafe-v2-products button[aria-pressed="true"]{background:#28784bcf;border-color:#b2f0bb;box-shadow:0 0 0 3px #9ff0ba33,0 10px 25px #071d0e99}
.cafe-v2-products button>span{font-size:25px}.cafe-v2-products b{display:block;font-size:10px;text-shadow:0 1px 6px #000}.cafe-v2-products small{display:block;font-size:12px;color:#ffe0ad}
.cafe-v2-prep{position:absolute;z-index:6;right:12px;top:12px;bottom:12px;width:min(300px,29%);box-sizing:border-box;background:rgba(28,19,24,.88);border:1px solid #e5c58a55;backdrop-filter:blur(12px)}
.cafe-v2-tray{position:relative;z-index:7}
@media(max-width:750px){.cafe-v2-prep{right:7px;top:auto;bottom:7px;width:46%;max-height:52%;padding:9px}.cafe-v2-products button{min-width:50px;min-height:48px;padding:4px}.cafe-v2-products button>span{font-size:19px}.cafe-v2-products b{font-size:8px}.cafe-v2-products small{font-size:10px}}
/* 1.6.45 — make the bar photograph explicit and keep every product button reachable. */
.cafe-v2-work{background-position:center;background-size:cover;background-repeat:no-repeat}
.cafe-v2-products button{width:clamp(58px,7vw,86px);max-width:86px;min-width:0;min-height:58px;padding:5px 4px}
.cafe-v2-prep{display:none!important}
.cafe-v2-prep.is-open{display:block!important;left:8px;right:8px;bottom:8px;top:auto;width:auto;max-height:38%;overflow:auto}
.cafe-v2-prep.is-open ~ *{filter:none}
.cafe-v2-work:has(.cafe-v2-prep.is-open) .cafe-v2-products button{opacity:.36}
.cafe-v2-work:has(.cafe-v2-prep.is-open) .cafe-v2-products button[aria-pressed="true"]{opacity:1}
@media(max-width:750px){.cafe-v2-products button{width:54px;min-height:48px}.cafe-v2-prep.is-open{max-height:48%}}

/* 1.6.46 — the café photograph is the whole play surface; controls float above it. */
.cafe-game .cafe-stage{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.cafe-v2{position:relative!important;display:block!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden!important;border-radius:18px!important;background:transparent!important}
.cafe-v2-work{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;border-radius:18px!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;overflow:hidden!important}
.cafe-v2-order{position:absolute!important;z-index:8!important;top:10px!important;left:10px!important;right:10px!important;width:auto!important;max-height:none!important;box-sizing:border-box!important;padding:8px 12px!important;border:1px solid rgba(255,226,178,.32)!important;border-radius:13px!important;background:rgba(28,17,21,.58)!important;backdrop-filter:blur(8px)!important;box-shadow:0 8px 24px rgba(19,8,12,.25)!important}
.cafe-v2-order>img{width:42px!important;height:42px!important}.cafe-v2-order strong{font-size:clamp(14px,1.2vw,19px)!important;line-height:1.25!important}.cafe-v2-order span,.cafe-v2-order small{font-size:10px!important}.cafe-v2-order p{margin:3px 0!important;font-size:11px!important}.cafe-v2-audio{gap:4px!important}.cafe-v2-audio button{padding:6px 8px!important;font-size:11px!important;background:rgba(52,35,29,.82)!important}
.cafe-v2-products{position:absolute!important;inset:0!important;z-index:5!important}
.cafe-v2-tray{position:absolute!important;z-index:8!important;left:10px!important;right:10px!important;bottom:10px!important;width:auto!important;max-height:18%!important;box-sizing:border-box!important;padding:7px 10px!important;border:1px solid rgba(255,226,178,.3)!important;border-radius:13px!important;background:rgba(28,17,21,.62)!important;backdrop-filter:blur(8px)!important;box-shadow:0 -8px 24px rgba(19,8,12,.25)!important}
.cafe-v2-tray-items{margin-top:3px!important;max-height:48px!important;overflow:auto!important}.cafe-v2-tray .cafe-serve{padding:8px 14px!important;min-width:124px!important}
.cafe-v2-prep.is-open{z-index:9!important;left:50%!important;right:auto!important;top:auto!important;bottom:72px!important;transform:translateX(-50%)!important;width:min(440px,calc(100% - 24px))!important;max-height:42%!important;padding:12px!important;background:rgba(28,19,24,.9)!important}
@media(max-width:750px){.cafe-v2-order{top:6px!important;left:6px!important;right:6px!important;padding:6px 8px!important}.cafe-v2-order>img{display:none!important}.cafe-v2-order strong{font-size:13px!important}.cafe-v2-order span,.cafe-v2-order small{font-size:9px!important}.cafe-v2-audio button{padding:5px 6px!important;font-size:10px!important}.cafe-v2-tray{left:6px!important;right:6px!important;bottom:6px!important;max-height:22%!important}.cafe-v2-prep.is-open{bottom:64px!important;max-height:48%!important;width:calc(100% - 14px)!important}}

/* 1.6.47 — compact HUD and collision-free product placement. */
.cafe-game .cafe-topbar{padding:8px 12px!important;margin-bottom:6px!important;min-height:62px!important}.cafe-game .cafe-topbar h2{font-size:21px!important}.cafe-game .cafe-topbar label{gap:3px!important}.cafe-game .cafe-topbar select{padding:7px 9px!important}
.cafe-game .cafe-hud{grid-template-columns:repeat(4,minmax(66px,88px)) minmax(170px,320px)!important;justify-content:space-between!important;gap:6px!important;margin-bottom:6px!important}.cafe-game .cafe-hud>div{padding:5px 8px!important;min-height:43px!important;box-sizing:border-box}.cafe-game .cafe-hud span{font-size:8px!important}.cafe-game .cafe-hud strong{margin-top:1px!important;font-size:16px!important}.cafe-game .cafe-round-progress{justify-self:end!important;width:100%!important;max-width:320px!important;padding-inline:9px!important}.cafe-game .cafe-round-progress>div{height:5px!important}.cafe-game .cafe-stage{min-height:0!important}
.cafe-v2-products button{min-height:56px!important;height:auto!important}.cafe-v2-products button b{line-height:1.05!important}.cafe-v2-products button>span{font-size:23px!important}
@media(max-width:940px){.cafe-game .cafe-hud{grid-template-columns:repeat(4,minmax(58px,1fr))!important}.cafe-game .cafe-round-progress{grid-column:1/-1!important;max-width:none!important;justify-self:stretch!important}}
@media(max-width:650px){.cafe-game .cafe-topbar{min-height:0!important;padding:6px 8px!important}.cafe-game .cafe-hud>div{min-height:38px!important;padding:4px 6px!important}.cafe-game .cafe-hud strong{font-size:14px!important}}

/* 1.6.48 — keep hotspots in the clear central band, between the order and tray overlays. */
.cafe-game .cafe-topbar{height:68px!important;min-height:68px!important;box-sizing:border-box!important}
.cafe-game .cafe-hud{height:42px!important;min-height:42px!important;grid-template-columns:repeat(4,minmax(58px,82px)) minmax(150px,260px)!important}
.cafe-game .cafe-hud>div{height:42px!important;min-height:42px!important;padding:4px 7px!important}
.cafe-game .cafe-hud strong{font-size:15px!important}
.cafe-game .cafe-round-progress{height:42px!important}
.cafe-v2-products button{width:min(76px,6vw)!important;min-width:58px!important;min-height:54px!important;padding:5px 3px!important}
@media(max-width:940px){.cafe-game .cafe-topbar{height:auto!important;min-height:58px!important}.cafe-game .cafe-hud{height:auto!important;min-height:38px!important}.cafe-game .cafe-hud>div,.cafe-game .cafe-round-progress{height:38px!important;min-height:38px!important}}
@media(max-width:650px){.cafe-v2-products button{width:64px!important;min-width:52px!important;min-height:48px!important}.cafe-game .cafe-hud{grid-template-columns:repeat(4,1fr)!important}}

/* Listening Detective — intégration dans le hub 1.6.48, scène entière et commandes lisibles. */
.games-grid .ld-game-card{position:relative;min-width:0;min-height:0;overflow:hidden;border-radius:22px;background:#172c29;box-shadow:0 18px 42px #201a1533}
.games-grid .ld-card-cover{position:relative;display:block;width:100%;height:100%;min-height:310px;padding:0;overflow:hidden;border:0;border-radius:inherit;background:#172c29;cursor:pointer;text-align:left}
.games-grid .ld-card-cover img{display:block;width:100%;height:100%;min-height:310px;object-fit:cover;transition:transform .35s}
.games-grid .ld-card-cover:hover img{transform:scale(1.025)}
.games-grid .ld-card-cover .game-card-simple-title{position:absolute;left:14px;right:14px;bottom:14px;padding:11px 14px;border-radius:12px;background:#17231ed9;color:#fff8e8;font-weight:900;text-shadow:0 2px 8px #111}
.listening-detective{max-width:1400px;margin:0 auto;padding:4px 0 20px;color:#f8f2e8}
.ld-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin:4px 0 14px;padding:13px 16px;border:1px solid #ffffff24;border-radius:18px;background:linear-gradient(135deg,#233d37,#3b5546);box-shadow:0 14px 32px #1928202b}
.ld-topbar>button{min-height:42px;padding:9px 13px;border:1px solid #ffffff38;border-radius:11px;background:#ffffff12;color:#fff;font-weight:800;cursor:pointer}
.ld-topbar h2{margin:3px 0 2px;font:900 24px/1.1 "Noto Serif SC",serif}.ld-topbar small{color:#d5e2cf}.ld-topbar .page-kicker{color:#d8bd83}
.ld-layout{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(370px,.86fr);align-items:start;gap:16px}
.ld-scene{position:sticky;top:14px;margin:0;overflow:hidden;min-height:300px;border:1px solid #ffffff29;border-radius:22px;background:#203b35;box-shadow:0 22px 48px #16221d38}
.ld-scene img{display:block;width:100%;max-height:min(67vh,760px);aspect-ratio:1.48;object-fit:contain;background:#203b35}.ld-scene figcaption{padding:10px 14px;background:#17312b;color:#e1dbc9;font-size:11px;font-weight:800}
.ld-panel{min-width:0;padding:20px;border:1px solid #8bac8b3d;border-radius:22px;background:linear-gradient(150deg,#f9f4e9,#efe5d2);color:#332a20;box-shadow:0 22px 48px #16221d29}
.ld-story-head h3{margin:4px 0 7px;font:900 clamp(22px,2.5vw,30px)/1.1 "Noto Serif SC",serif;color:#294337}.ld-story-head>p{margin:0;color:#705d48;font-size:13px;line-height:1.55}.ld-eyebrow{color:#a26b3d;font-size:9px;font-weight:950;letter-spacing:.1em}
.ld-progress{height:6px;margin:15px 0 8px;overflow:hidden;border-radius:9px;background:#dfd3c0}.ld-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#79a276,#c9a562);transition:width .25s}.ld-case-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:#8d7359;font-size:10px}.ld-case-meta b{color:#4a402f}
.ld-briefing,.ld-result,.ld-final-evidence{margin-top:17px;padding:15px;border:1px solid #e0cfb3;border-radius:15px;background:#fffaf1;color:#6b5945;font-size:12px;line-height:1.55}.ld-briefing>span{color:#3e6948;font-weight:900}.ld-briefing p,.ld-result p{margin:8px 0 0}.ld-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.ld-actions button,.ld-choice-grid button,.ld-dialogue button{min-height:44px;padding:10px 12px;border:1px solid #dac8ad;border-radius:12px;background:#fffaf2;color:#493a2d;font-weight:850;text-align:left;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.ld-actions button:hover,.ld-choice-grid button:hover,.ld-dialogue button:hover{transform:translateY(-1px);border-color:#71916c;background:#f6f5e9}.ld-actions .primary{border-color:#3d714b;background:#3d714b;color:#fff}
.ld-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.ld-choice-grid button{display:grid;align-content:start;gap:5px;min-height:72px}.ld-choice-grid small{color:#816d54;font-size:10px;font-weight:500;line-height:1.4}.ld-witnesses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.ld-witness{display:grid;justify-items:center;gap:4px;min-height:80px;padding:9px 5px;border:1px solid #d9c9af;border-radius:14px;background:#fffaf2;color:#493a2d;cursor:pointer}.ld-witness>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e8deca;color:#3d714b;font-weight:950}.ld-witness b{font-size:12px}.ld-witness small{color:#92775c;font-size:9px;text-align:center}.ld-witness.heard{border-color:#83a17d;background:#f1f6eb}.ld-witness.selected{outline:2px solid #6f936a;outline-offset:1px}
.ld-dialogue{margin:9px 0;padding:12px;border-radius:14px;background:#e7e8d9}.ld-dialogue-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.ld-dialogue-head>strong{color:#33583b}.ld-dialogue-head>strong small{color:#8c7157;font-size:10px;font-weight:600}.ld-dialogue-head>div{display:flex;gap:6px;flex-wrap:wrap}.ld-dialogue button{min-height:38px;padding:7px 9px;font-size:10px}.ld-transcript{display:grid;gap:4px;margin-top:10px;padding:11px;border-radius:10px;background:#fffaf2}.ld-transcript[hidden]{display:none}.ld-transcript>b{font:700 18px/1.5 "Noto Serif SC",serif;color:#283d34}.ld-transcript>span{color:#9b754e;font-size:11px}.ld-transcript>p{margin:3px 0 0;color:#6f5a46;font-size:11px}.ld-note{margin:11px 0 0;padding:11px 12px;border-left:3px solid #8aa27a;border-radius:5px 10px 10px 5px;background:#eef0e5;color:#655944;font-size:11px;line-height:1.5}.ld-clues{margin-top:14px;padding:12px 14px;border:1px solid #dfd0b9;border-radius:14px;background:#fff9ef}.ld-clues>strong{color:#52714e;font-size:12px}.ld-clues ul{display:grid;gap:6px;margin:8px 0 0;padding-left:17px;color:#735c43;font-size:10px;line-height:1.4}.ld-final-evidence b{color:#456b4b}.ld-final-evidence p{margin:6px 0 0}.ld-card-cover:focus-visible,.listening-detective button:focus-visible{outline:3px solid #ffdf8a;outline-offset:3px}
@media(max-width:980px){.games-grid{grid-template-columns:1.3fr 1fr}.ld-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);gap:12px}.ld-panel{padding:16px}.ld-scene img{max-height:58vh}}
@media(max-width:720px){.games-grid{grid-template-columns:1fr}.games-grid .ld-game-card{min-height:0}.games-grid .ld-card-cover,.games-grid .ld-card-cover img{min-height:230px}.ld-topbar{grid-template-columns:1fr auto;gap:9px}.ld-topbar>div{grid-column:1/-1;grid-row:1}.ld-topbar>button{grid-row:2}.ld-topbar>button:last-child{grid-column:2}.ld-layout{grid-template-columns:minmax(0,1fr);gap:10px}.ld-scene{position:relative;top:auto;min-height:0;border-radius:16px}.ld-scene img{width:100%;max-height:none;aspect-ratio:1.48;object-fit:contain}.ld-panel{padding:15px;border-radius:16px}.ld-choice-grid{grid-template-columns:1fr}.ld-choice-grid button{min-height:60px}.ld-witnesses{gap:6px}.ld-witness{min-height:76px}.ld-dialogue-head{align-items:flex-start}.ld-dialogue-head>div{width:100%}.ld-dialogue button{flex:1}.ld-case-meta{gap:6px 10px}.ld-actions button{flex:1}}

/* 1.6.52 — Visual novel: l’illustration de l’enquête remplit tout l’écran. */
#gamesPage .listening-detective{position:fixed!important;z-index:120!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#15231f!important;color:#f8f2e8!important}
#gamesPage .listening-detective[hidden]{display:none!important}
#gamesPage .listening-detective .ld-layout{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important}
#gamesPage .listening-detective .ld-scene{position:absolute!important;inset:0!important;min-height:0!important;margin:0!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:#15231f!important;box-shadow:none!important}
#gamesPage .listening-detective .ld-scene:after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(9,18,17,.35),transparent 26%,transparent 51%,rgba(9,14,16,.28) 76%,rgba(9,14,16,.54))}
#gamesPage .listening-detective .ld-scene img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;background:#15231f!important}
#gamesPage .listening-detective .ld-scene figcaption{position:absolute!important;z-index:2!important;top:78px!important;left:clamp(12px,3vw,36px)!important;width:max-content!important;max-width:calc(100% - 24px)!important;padding:7px 11px!important;border:1px solid #ffffff42!important;border-radius:999px!important;background:#111b18a8!important;color:#fff8e8!important;backdrop-filter:blur(9px)!important;font-size:10px!important}
#gamesPage .listening-detective .ld-topbar{position:absolute!important;z-index:4!important;top:0!important;left:0!important;right:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important;min-height:62px!important;box-sizing:border-box!important;margin:0!important;padding:9px clamp(10px,2vw,24px)!important;border:0!important;border-bottom:1px solid #ffffff35!important;border-radius:0!important;background:linear-gradient(180deg,#111a19c9,#111a1982)!important;backdrop-filter:blur(10px)!important;box-shadow:none!important}
#gamesPage .listening-detective .ld-topbar>div{min-width:0}.listening-detective .ld-topbar h2{margin:0!important;color:#fff8e8!important;font:800 clamp(15px,2vw,21px)/1.1 system-ui,sans-serif!important}.listening-detective .ld-topbar .page-kicker{font-size:9px!important}.listening-detective .ld-topbar small{display:block;margin-top:3px!important;color:#f4dfbe!important;font-size:10px!important}.listening-detective .ld-topbar>button{min-height:36px!important;padding:7px 12px!important;border:1px solid #ffffff60!important;border-radius:9px!important;background:#111a197a!important;color:#fff9eb!important;font-size:11px!important;white-space:nowrap}
#gamesPage .listening-detective .ld-panel{position:absolute!important;z-index:3!important;left:clamp(12px,4vw,60px)!important;right:clamp(12px,4vw,60px)!important;bottom:clamp(12px,3vh,34px)!important;width:auto!important;max-width:1440px!important;max-height:min(54vh,580px)!important;box-sizing:border-box!important;margin:0 auto!important;padding:clamp(14px,2vw,25px)!important;overflow:auto!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:18px!important;background:rgba(255,248,247,.88)!important;color:#302a34!important;backdrop-filter:blur(16px)!important;box-shadow:0 12px 50px #10141c55!important;scrollbar-color:#aa8097 #f7e9eb!important}
.listening-detective .ld-story-head h3{margin:2px 0 5px!important;color:#433343!important;font-size:clamp(19px,2.2vw,26px)!important}.listening-detective .ld-story-head>p{color:#514653!important;font-size:clamp(12px,1.1vw,14px)!important}.listening-detective .ld-eyebrow{color:#95677d!important}.listening-detective .ld-progress{margin:10px 0 6px!important}.listening-detective .ld-case-meta{color:#705f70!important}
.listening-detective .ld-panel .ld-briefing,.listening-detective .ld-panel .ld-result,.listening-detective .ld-panel .ld-final-evidence,.listening-detective .ld-panel .ld-clues{background:#fffdf9!important;color:#493f45!important}.listening-detective .ld-panel .ld-choice-grid{margin-top:11px!important}.listening-detective .ld-panel .ld-choice-grid button,.listening-detective .ld-panel .ld-actions button,.listening-detective .ld-panel .ld-dialogue button{background:#fffdf9!important;color:#493a45!important;border-color:#d8c6d0!important}.listening-detective .ld-panel .ld-actions .primary{background:#875b77!important;color:white!important;border-color:#875b77!important}.listening-detective .ld-panel .ld-dialogue{background:#f3e8ed!important}.listening-detective .ld-glossary{margin-top:12px;padding:10px 12px;border:1px solid #e3d1dc;border-radius:12px;background:#fffdf9!important;color:#493a45!important}.listening-detective .ld-glossary>strong{font-size:11px}.listening-detective .ld-glossary>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.listening-detective .ld-glossary span{display:grid;gap:2px;min-width:105px;padding:6px 8px;border-radius:8px;background:#f5edf0}.listening-detective .ld-glossary b{font-size:13px}.listening-detective .ld-glossary small{color:#806c7b;font-size:10px}
@media(max-width:720px){#gamesPage .listening-detective .ld-topbar{grid-template-columns:auto minmax(0,1fr) auto!important;gap:6px!important;padding:7px!important}.listening-detective .ld-topbar>button{min-height:33px!important;padding:5px 7px!important;font-size:10px!important}.listening-detective .ld-topbar .page-kicker{display:none}.listening-detective .ld-topbar small{font-size:9px!important}.listening-detective .ld-scene figcaption{top:67px!important}#gamesPage .listening-detective .ld-panel{left:8px!important;right:8px!important;bottom:8px!important;max-height:62vh!important;padding:13px!important;border-radius:14px!important}.listening-detective .ld-choice-grid{grid-template-columns:1fr!important;gap:6px!important}.listening-detective .ld-choice-grid button{min-height:45px!important;padding:8px 10px!important}.listening-detective .ld-witness{min-height:68px!important}.listening-detective .ld-witness small{font-size:8px!important}.listening-detective .ld-case-meta{font-size:9px!important}.listening-detective .ld-dialogue-head>div{display:flex;flex-wrap:wrap;gap:4px}.listening-detective .ld-dialogue button{flex:1 1 30%!important;min-width:90px!important}}
@media(max-height:650px) and (min-width:721px){#gamesPage .listening-detective .ld-panel{max-height:48vh!important;padding:12px 16px!important}.listening-detective .ld-briefing,.listening-detective .ld-clues,.listening-detective .ld-final-evidence{margin-top:8px!important;padding:9px!important}.listening-detective .ld-actions{margin-top:8px!important}}

/* 1.6.52 — Use the dialogue frame already painted into every 16:9 detective scene. */
#gamesPage:has(.listening-detective:not([hidden])){overflow:hidden!important}
#gamesPage .listening-detective{position:fixed!important;z-index:120!important;inset:0!important;width:100%!important;height:100vh!important;height:100dvh!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#171a18!important;color:#fff!important}
#gamesPage .listening-detective[hidden]{display:none!important}
#gamesPage .listening-detective .ld-layout{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important}
#gamesPage .listening-detective .ld-scene{position:absolute!important;inset:0!important;min-height:0!important;margin:0!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:#171a18!important;box-shadow:none!important}
#gamesPage .listening-detective .ld-scene:after{content:none!important}
#gamesPage .listening-detective .ld-scene img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;background:#171a18!important}
#gamesPage .listening-detective .ld-scene figcaption{position:absolute!important;z-index:2!important;top:72px!important;left:clamp(12px,2vw,28px)!important;width:max-content!important;max-width:calc(100% - 24px)!important;padding:5px 9px!important;border:1px solid #ffffff42!important;border-radius:999px!important;background:#111b18a8!important;color:#fff8e8!important;font-size:9px!important}
#gamesPage .listening-detective .ld-topbar{position:absolute!important;z-index:4!important;top:0!important;left:0!important;right:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important;min-height:58px!important;box-sizing:border-box!important;margin:0!important;padding:7px clamp(10px,2vw,24px)!important;border:0!important;border-bottom:1px solid #ffffff35!important;border-radius:0!important;background:linear-gradient(180deg,#111a19b8,#111a1966)!important;backdrop-filter:blur(8px)!important;box-shadow:none!important}
#gamesPage .listening-detective .ld-topbar>div{min-width:0!important}.listening-detective .ld-topbar h2{margin:0!important;color:#fff8e8!important;font:800 clamp(15px,1.7vw,20px)/1.1 system-ui,sans-serif!important}.listening-detective .ld-topbar .page-kicker{font-size:8px!important}.listening-detective .ld-topbar small{display:block;margin-top:2px!important;color:#f4dfbe!important;font-size:9px!important}.listening-detective .ld-topbar>button{min-height:32px!important;padding:5px 10px!important;border:1px solid #ffffff60!important;border-radius:8px!important;background:#111a197a!important;color:#fff9eb!important;font-size:10px!important;white-space:nowrap!important}
#gamesPage .listening-detective .ld-panel{position:absolute!important;z-index:3!important;left:4%!important;right:4%!important;bottom:2.1%!important;width:auto!important;max-width:none!important;height:18vh!important;max-height:205px!important;min-height:142px!important;box-sizing:border-box!important;margin:0!important;padding:8px 2.2%!important;overflow:auto!important;border:0!important;border-radius:0!important;background:transparent!important;color:#322a27!important;box-shadow:none!important;backdrop-filter:none!important;scrollbar-width:thin!important;scrollbar-color:#8a7760 transparent!important;min-width:0!important}
#gamesPage .listening-detective .ld-panel>*{max-width:100%!important;min-width:0!important}.listening-detective .ld-story-head{margin:0!important}.listening-detective .ld-story-head h3{margin:0 0 3px!important;color:#44342b!important;font-size:clamp(14px,1.4vw,19px)!important}.listening-detective .ld-story-head>p{margin:0!important;color:#51463d!important;font-size:10px!important;line-height:1.25!important}.listening-detective .ld-eyebrow{color:#806147!important;font-size:8px!important}.listening-detective .ld-progress{height:3px!important;margin:4px 0!important}.listening-detective .ld-case-meta{gap:4px 10px!important;color:#675747!important;font-size:8px!important}.listening-detective .ld-case-meta b{color:#453a2f!important}
.listening-detective .ld-panel .ld-briefing,.listening-detective .ld-panel .ld-result,.listening-detective .ld-panel .ld-final-evidence,.listening-detective .ld-panel .ld-clues{margin:4px 0!important;padding:5px 8px!important;border-color:#ffffff70!important;border-radius:8px!important;background:#fffaf0a6!important;color:#493f37!important;font-size:9px!important;line-height:1.25!important}.listening-detective .ld-panel .ld-briefing p,.listening-detective .ld-panel .ld-result p{margin:3px 0 0!important}.listening-detective .ld-panel .ld-glossary{display:none!important}.listening-detective .ld-panel .ld-choice-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin:4px 0!important}.listening-detective .ld-panel .ld-choice-grid button{min-width:0!important;min-height:38px!important;padding:5px 8px!important;border:1px solid #c5b8a5!important;border-radius:8px!important;background:#fffaf0d9!important;color:#44382e!important;font-size:10px!important;line-height:1.2!important;overflow-wrap:anywhere!important}.listening-detective .ld-choice-grid button small{display:none!important}
.listening-detective .ld-witnesses{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important;margin:0 0 4px!important}.listening-detective .ld-witness{display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;min-width:0!important;min-height:26px!important;padding:3px 7px!important;border:1px solid #c5b8a5!important;border-radius:7px!important;background:#fffaf0d9!important;color:#44382e!important}.listening-detective .ld-witness>span{width:16px!important;height:16px!important;font-size:9px!important}.listening-detective .ld-witness b{font-size:10px!important}.listening-detective .ld-witness small{display:none!important}
.listening-detective .ld-dialogue{margin:0 0 4px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.listening-detective .ld-dialogue-head{justify-content:space-between!important;gap:5px!important;min-height:25px!important}.listening-detective .ld-dialogue-head>strong{color:#46372d!important;font-size:10px!important}.listening-detective .ld-dialogue-head>strong small{font-size:8px!important}.listening-detective .ld-dialogue-head>div{display:flex!important;flex-wrap:wrap!important;gap:4px!important}.listening-detective .ld-dialogue button,.listening-detective .ld-actions button{min-width:0!important;min-height:24px!important;padding:3px 7px!important;border:1px solid #c5b8a5!important;border-radius:7px!important;background:#fffaf0d9!important;color:#44382e!important;font-size:9px!important;line-height:1.1!important}.listening-detective .ld-transcript{position:absolute!important;z-index:5!important;left:2%!important;right:2%!important;bottom:100%!important;max-height:40vh!important;overflow:auto!important;margin:0 0 4px!important;padding:8px!important;border:1px solid #d2bfaa!important;border-radius:9px!important;background:#fffaf0f2!important;box-shadow:0 4px 18px #19120d55!important}.listening-detective .ld-transcript>b{font-size:15px!important}.listening-detective .ld-listen-check{display:grid!important;grid-template-columns:minmax(180px,.8fr) 2fr!important;align-items:center!important;gap:6px!important;margin:3px 0!important;padding:0!important;border:0!important;background:transparent!important}.listening-detective .ld-listen-check>b{margin:0!important;color:#493b32!important;font-size:9px!important;line-height:1.2!important}.listening-detective .ld-listen-check .ld-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin:0!important;gap:4px!important}.listening-detective .ld-listen-check .ld-choice-grid button{min-height:32px!important;padding:4px 6px!important;font-size:9px!important}.listening-detective .ld-listen-check .ld-note{display:none!important}.listening-detective .ld-note{margin:3px 0!important;padding:4px 6px!important;font-size:8px!important;line-height:1.2!important}.listening-detective .ld-panel .ld-actions{display:flex!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:4px!important;margin:3px 0 0!important}.listening-detective .ld-panel .ld-actions .primary{background:#416747e8!important;color:white!important;border-color:#355239!important}.listening-detective .ld-panel[data-phase="interviews"] .ld-story-head{display:none!important}
@media(max-width:720px){#gamesPage .listening-detective .ld-topbar{grid-template-columns:auto minmax(0,1fr) auto!important;gap:5px!important;padding:6px!important}.listening-detective .ld-topbar>button{min-height:29px!important;padding:4px 6px!important;font-size:9px!important}.listening-detective .ld-topbar .page-kicker{display:none!important}.listening-detective .ld-topbar small{font-size:8px!important}.listening-detective .ld-scene figcaption{top:60px!important}.listening-detective .ld-panel{left:2%!important;right:2%!important;bottom:1%!important;height:32vh!important;max-height:300px!important;min-height:205px!important;padding:8px 3%!important;background:linear-gradient(180deg,#fffaf055,#fffaf09e)!important}.listening-detective .ld-panel .ld-choice-grid{grid-template-columns:1fr!important}.listening-detective .ld-panel .ld-choice-grid button{min-height:30px!important}.listening-detective .ld-listen-check{grid-template-columns:1fr!important;gap:2px!important}.listening-detective .ld-listen-check .ld-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.listening-detective .ld-listen-check .ld-choice-grid button{font-size:8px!important}.listening-detective .ld-panel[data-phase="interviews"] .ld-witness{min-height:25px!important}.listening-detective .ld-dialogue-head{align-items:center!important}.listening-detective .ld-dialogue-head>div{width:auto!important}.listening-detective .ld-dialogue button{flex:0 1 auto!important}.listening-detective .ld-panel .ld-actions button{flex:1 1 auto!important}}
@media(max-height:650px) and (min-width:721px){#gamesPage .listening-detective .ld-panel{height:22vh!important;min-height:132px!important;padding-top:5px!important}.listening-detective .ld-panel .ld-choice-grid button{min-height:30px!important}}

/* 1.6.52 — Scene-first detective HUD: one dialogue strip, compact tools on demand. */
.addon-game-screen[hidden]{display:none!important}
.addon-game-screen{position:relative;min-height:70vh}
.addon-error{margin:24px;padding:24px;border-radius:16px;background:#fff7e7;color:#342b24}
#gamesPage .listening-detective .ld-topbar{min-height:64px!important;padding:8px clamp(12px,2.2vw,30px)!important;grid-template-columns:auto minmax(0,1fr) auto!important}
#gamesPage .listening-detective .ld-music-button{width:40px!important;min-width:40px!important;height:38px!important;padding:0!important;font-size:17px!important;text-align:center!important}
#gamesPage .listening-detective .ld-panel{position:absolute!important;z-index:3!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;color:#352b24!important;pointer-events:none!important}
#gamesPage .listening-detective .ld-panel[hidden]{display:none!important}
#gamesPage .listening-detective .ld-side-rail,#gamesPage .listening-detective .ld-tool-drawer,#gamesPage .listening-detective .ld-conversation{pointer-events:auto!important}
#gamesPage .listening-detective .ld-side-rail{position:absolute!important;z-index:5!important;top:38%!important;right:clamp(10px,2.2vw,30px)!important;display:grid!important;gap:8px!important;width:58px!important}
#gamesPage .listening-detective .ld-tool-button{position:relative!important;display:grid!important;justify-items:center!important;align-content:center!important;gap:2px!important;width:56px!important;height:52px!important;min-width:0!important;min-height:0!important;padding:4px!important;border:1px solid #ffffffaa!important;border-radius:12px!important;background:#fff7e7d9!important;color:#46372d!important;box-shadow:0 3px 14px #21170f44!important;cursor:pointer!important}
#gamesPage .listening-detective .ld-tool-button>span{font:800 19px/1 system-ui,sans-serif!important}
#gamesPage .listening-detective .ld-tool-button small{font-size:8px!important;font-weight:850!important;line-height:1!important}
#gamesPage .listening-detective .ld-tool-button>b{position:absolute!important;top:-5px!important;right:-5px!important;display:grid!important;place-items:center!important;min-width:17px!important;height:17px!important;padding:0 3px!important;border-radius:999px!important;background:#426a48!important;color:white!important;font-size:8px!important}
#gamesPage .listening-detective .ld-tool-button.active{outline:2px solid #ffe6a1!important;outline-offset:1px!important;background:#fffdf5!important}
#gamesPage .listening-detective .ld-tool-drawer{position:absolute!important;z-index:6!important;top:36%!important;right:clamp(76px,6.4vw,104px)!important;width:min(330px,calc(100vw - 110px))!important;max-height:48vh!important;overflow:auto!important;padding:15px!important;border:1px solid #ffffffc2!important;border-radius:15px!important;background:#fffaf0ed!important;color:#43362c!important;box-shadow:0 12px 36px #17110c55!important;backdrop-filter:blur(10px)!important;scrollbar-width:thin!important}
#gamesPage .listening-detective .ld-tool-drawer[hidden]{display:none!important}
#gamesPage .listening-detective .ld-drawer-close{position:absolute!important;top:5px!important;right:7px!important;width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#ece2d3!important;color:#514234!important;font-size:19px!important;line-height:1!important;cursor:pointer!important}
#gamesPage .listening-detective .ld-drawer-heading{margin:0 32px 10px 0!important;color:#3c5941!important;font-size:14px!important;font-weight:900!important}
#gamesPage .listening-detective .ld-drawer-body{max-height:calc(48vh - 58px)!important;overflow:auto!important}
#gamesPage .listening-detective .ld-drawer-body .ld-witnesses{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin:0!important}
#gamesPage .listening-detective .ld-drawer-body .ld-witness{display:flex!important;justify-content:flex-start!important;align-items:center!important;gap:9px!important;width:100%!important;min-height:42px!important;padding:7px 10px!important;border:1px solid #d9c9af!important;border-radius:9px!important;background:#fffdf8!important;color:#493b31!important;cursor:pointer!important}
#gamesPage .listening-detective .ld-drawer-body .ld-witness>span{width:24px!important;height:24px!important;font-size:11px!important}
#gamesPage .listening-detective .ld-drawer-body .ld-witness b{font-size:12px!important}
#gamesPage .listening-detective .ld-drawer-body .ld-witness small{display:block!important;margin-left:auto!important;font-size:9px!important;text-align:right!important}
#gamesPage .listening-detective .ld-drawer-body .ld-choice-grid{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin:7px 0!important}
#gamesPage .listening-detective .ld-drawer-body .ld-choice-grid button{display:block!important;width:100%!important;min-width:0!important;min-height:40px!important;padding:8px 10px!important;border:1px solid #d6c6af!important;border-radius:9px!important;background:#fffdf8!important;color:#493a30!important;font-size:11px!important;line-height:1.25!important;text-align:left!important;overflow-wrap:anywhere!important;cursor:pointer!important}
#gamesPage .listening-detective .ld-drawer-body .ld-choice-grid button small{display:block!important;margin-top:3px!important;color:#806b54!important;font-size:9px!important;line-height:1.25!important}
#gamesPage .listening-detective .ld-drawer-body .ld-listen-check{display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
#gamesPage .listening-detective .ld-drawer-body .ld-listen-check>b{display:block!important;margin:0 0 8px!important;color:#49392e!important;font-size:11px!important;line-height:1.35!important}
#gamesPage .listening-detective .ld-drawer-body .ld-actions{display:grid!important;gap:6px!important;margin:9px 0 0!important}
#gamesPage .listening-detective .ld-drawer-body .ld-actions button{width:100%!important;min-height:34px!important;padding:7px 9px!important;border:1px solid #cbbb9f!important;border-radius:8px!important;background:#fffdf7!important;color:#49382b!important;font-size:10px!important;cursor:pointer!important}
#gamesPage .listening-detective .ld-drawer-body .ld-actions .primary{background:#416747!important;color:#fff!important}
#gamesPage .listening-detective .ld-drawer-body .ld-actions button:disabled{opacity:.45!important}
#gamesPage .listening-detective .ld-drawer-body .ld-briefing,#gamesPage .listening-detective .ld-drawer-body .ld-result,#gamesPage .listening-detective .ld-drawer-body .ld-final-evidence,#gamesPage .listening-detective .ld-drawer-body .ld-clues,#gamesPage .listening-detective .ld-drawer-body .ld-glossary{margin:6px 0!important;padding:9px!important;border:1px solid #e1d3bd!important;border-radius:9px!important;background:#fffdf8!important;color:#5e4f40!important;font-size:10px!important;line-height:1.4!important}
#gamesPage .listening-detective .ld-drawer-body .ld-glossary{display:block!important}
#gamesPage .listening-detective .ld-drawer-body .ld-glossary>div{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important}
#gamesPage .listening-detective .ld-drawer-body .ld-glossary span{min-width:0!important;padding:5px!important;background:#f4eee3!important}
#gamesPage .listening-detective .ld-drawer-body .ld-case-meta{font-size:9px!important}
#gamesPage .listening-detective .ld-conversation{position:absolute!important;z-index:4!important;left:7%!important;right:7%!important;bottom:1.5%!important;display:flex!important;align-items:center!important;min-height:13vh!important;max-height:17vh!important;overflow:visible!important;padding:12px clamp(12px,2.4vw,30px)!important;border:0!important;border-radius:0!important;background:transparent!important;color:#3b3027!important;box-shadow:none!important}
#gamesPage .listening-detective .ld-conversation-copy{display:grid!important;gap:4px!important;width:100%!important;max-height:100%!important;overflow:auto!important}
#gamesPage .listening-detective .ld-conversation-copy strong{color:#405d43!important;font-size:13px!important}
#gamesPage .listening-detective .ld-conversation-copy span{color:#4e4034!important;font-size:11px!important;line-height:1.35!important}
#gamesPage .listening-detective .ld-conversation .ld-dialogue{width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
#gamesPage .listening-detective .ld-conversation .ld-dialogue-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
#gamesPage .listening-detective .ld-conversation .ld-dialogue-head>strong{color:#3f5a41!important;font-size:12px!important}
#gamesPage .listening-detective .ld-conversation .ld-dialogue-head>strong small{font-size:9px!important}
#gamesPage .listening-detective .ld-conversation .ld-dialogue-head>div{display:flex!important;gap:5px!important;flex-wrap:wrap!important}
#gamesPage .listening-detective .ld-conversation .ld-dialogue button{min-width:0!important;min-height:29px!important;padding:5px 9px!important;border:1px solid #cbbca7!important;border-radius:8px!important;background:#fffaf0df!important;color:#4b3e34!important;font-size:9px!important;cursor:pointer!important}
#gamesPage .listening-detective .ld-conversation .ld-transcript{position:absolute!important;z-index:8!important;left:0!important;right:0!important;bottom:100%!important;max-height:38vh!important;overflow:auto!important;margin:0 0 6px!important;padding:10px!important;border:1px solid #d5c6b1!important;border-radius:10px!important;background:#fffaf0f5!important;box-shadow:0 5px 20px #21170f55!important}
#gamesPage .listening-detective .ld-conversation .ld-transcript>b{font-size:16px!important}
#gamesPage .listening-detective .ld-conversation .ld-note{margin:0!important;padding:5px 8px!important;background:#fffaf0bc!important;color:#594a3d!important;font-size:10px!important;line-height:1.3!important}
@media(max-width:720px){#gamesPage .listening-detective .ld-topbar{grid-template-columns:auto minmax(0,1fr) auto!important;gap:5px!important;min-height:54px!important;padding:5px 7px!important}.listening-detective .ld-topbar h2{font-size:14px!important}.listening-detective .ld-topbar small{font-size:8px!important}.listening-detective .ld-music-button{width:32px!important;min-width:32px!important;height:32px!important}.listening-detective .ld-side-rail{top:30%!important;right:6px!important;width:45px!important;gap:5px!important}.listening-detective .ld-tool-button{width:44px!important;height:43px!important;border-radius:10px!important}.listening-detective .ld-tool-button>span{font-size:16px!important}.listening-detective .ld-tool-button small{font-size:7px!important}.listening-detective .ld-tool-drawer{top:28%!important;right:56px!important;width:min(285px,calc(100vw - 68px))!important;max-height:46vh!important;padding:11px!important}.listening-detective .ld-drawer-body{max-height:calc(46vh - 50px)!important}.listening-detective .ld-conversation{left:3%!important;right:3%!important;bottom:1%!important;min-height:16vh!important;max-height:22vh!important;padding:8px 10px!important}.listening-detective .ld-conversation .ld-dialogue-head{gap:4px!important}.listening-detective .ld-conversation .ld-dialogue-head>div{gap:3px!important}.listening-detective .ld-conversation .ld-dialogue button{min-height:25px!important;padding:4px 6px!important;font-size:8px!important}.listening-detective .ld-conversation-copy strong{font-size:11px!important}.listening-detective .ld-conversation-copy span{font-size:9px!important}}

#gamesPage .listening-detective .ld-episode-picker{display:grid;gap:7px;margin:12px 0;padding:12px;border:1px solid #d8c8ae;border-radius:12px;background:#fff8ecde}
#gamesPage .listening-detective .ld-episode-picker>strong{font-size:12px;color:#3f5a41}
#gamesPage .listening-detective .ld-episode-picker button{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px;border:1px solid #d8c8ae;border-radius:9px;background:#fff;color:#463d32;text-align:left;cursor:pointer}
#gamesPage .listening-detective .ld-episode-picker button small{color:#6e675e;white-space:nowrap}
#gamesPage .listening-detective [data-ld-episode-transcript]{position:relative;z-index:8;max-height:34vh;overflow:auto;padding:12px;border-radius:10px;background:#fff9ed;color:#352e26}
#gamesPage .listening-detective [data-ld-episode-transcript]>b,#gamesPage .listening-detective [data-ld-episode-transcript]>span{display:block;margin-bottom:8px}
#gamesPage .listening-detective [data-ld-episode-transcript]>b{font-size:18px}
#gamesPage .listening-detective .ld-episode-dialogue{margin:8px 0 14px;padding:10px;border-radius:12px;background:#ffffffd9}

/* 1.6.62 — Listening Detective chapter lobby */
#gamesPage .listening-detective .ld-home-screen{position:fixed;inset:0;z-index:130;overflow-y:auto;overscroll-behavior:contain;background:linear-gradient(180deg,#122a27 0,#eae6d6 58%,#f4efe2 100%);color:#263c35;font-family:system-ui,sans-serif;scrollbar-color:#7e9175 #e9e4d6}
#gamesPage .listening-detective .ld-home-top{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:7px clamp(14px,3vw,42px);background:#162b27ee;border-bottom:1px solid #ffffff25;backdrop-filter:blur(12px)}
#gamesPage .listening-detective .ld-home-top>span{color:#ecd8a9;font-size:11px;font-weight:900;letter-spacing:.18em}
#gamesPage .listening-detective .ld-home-top button{padding:8px 12px;border:1px solid #ffffff40;border-radius:10px;background:#ffffff12;color:#fff9ec;font-weight:750;cursor:pointer}
#gamesPage .listening-detective .ld-home-hero{position:relative;display:flex;align-items:center;min-height:360px;height:min(49vh,520px);overflow:hidden;padding:clamp(28px,6vw,84px);isolation:isolate;background:radial-gradient(ellipse at 75% 45%,#536b48 0,#28463b 43%,#17312c 78%)}
#gamesPage .listening-detective .ld-home-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#17312cf5 0%,#17312cdd 42%,#17312c36 70%,#17312c22 100%)}
#gamesPage .listening-detective .ld-home-art{position:absolute;z-index:-2;top:0;right:2%;height:100%;width:min(50vh,48vw);display:grid;place-items:center;overflow:hidden;filter:drop-shadow(0 20px 28px #09181466)}
#gamesPage .listening-detective .ld-home-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
#gamesPage .listening-detective .ld-home-copy{position:relative;z-index:1;max-width:660px;color:#fff8e9}
#gamesPage .listening-detective .ld-home-kicker{color:#e3c68d;font-size:10px;font-weight:900;letter-spacing:.2em}
#gamesPage .listening-detective .ld-home-copy h1{margin:10px 0 12px;color:#fff7e8;font:900 clamp(34px,5.5vw,68px)/1.02 Georgia,serif;text-shadow:0 3px 20px #0b1916}
#gamesPage .listening-detective .ld-home-copy>p{max-width:470px;margin:0 0 23px;color:#f2ead8;font-size:clamp(14px,1.4vw,18px);line-height:1.6}
#gamesPage .listening-detective .ld-home-cta{display:inline-flex;align-items:center;gap:17px;padding:12px 17px;border:1px solid #efdcae;border-radius:11px;background:#e6c887;color:#26392f;text-decoration:none;font-weight:900;box-shadow:0 8px 24px #101d1970}
#gamesPage .listening-detective .ld-home-cta span{font-size:18px}
#gamesPage .listening-detective .ld-home-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
#gamesPage .listening-detective .ld-home-facts span{padding:6px 10px;border:1px solid #ffffff46;border-radius:999px;background:#ffffff12;color:#f8eed9;font-size:10px;font-weight:750}
#gamesPage .listening-detective .ld-home-stamp{position:absolute;right:5%;bottom:8%;display:grid;place-content:center;width:54px;height:54px;border:1px solid #efd79d;border-radius:50%;background:#203b31ba;color:#ffedc4;text-align:center;font:700 22px Georgia,serif;box-shadow:0 4px 20px #101d1970}
#gamesPage .listening-detective .ld-home-stamp small{font:800 6px system-ui;letter-spacing:.08em}
#gamesPage .listening-detective .ld-chapter-section{max-width:1500px;margin:0 auto;padding:clamp(28px,4vw,58px) clamp(16px,4vw,56px) 28px}
#gamesPage .listening-detective .ld-chapter-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
#gamesPage .listening-detective .ld-chapter-heading h2{margin:6px 0 0;color:#203a31;font:900 clamp(25px,3vw,37px)/1.1 Georgia,serif}
#gamesPage .listening-detective .ld-chapter-heading>p{margin:0 0 3px;color:#657368;font-size:12px}
#gamesPage .listening-detective .ld-chapter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;align-items:stretch}
#gamesPage .listening-detective .ld-chapter-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:0;border:1px solid #d6d0bf;border-radius:15px;background:#fffdf6;color:#263a31;text-align:left;box-shadow:0 7px 18px #22392d16;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
#gamesPage .listening-detective .ld-chapter-card:hover,#gamesPage .listening-detective .ld-chapter-card:focus-visible{transform:translateY(-4px);border-color:#b08c4c;box-shadow:0 14px 26px #22392d29;outline:none}
#gamesPage .listening-detective .ld-chapter-card.is-saved{border-color:#78956e;box-shadow:0 0 0 2px #78956e44}
#gamesPage .listening-detective .ld-chapter-image{position:relative;display:block;aspect-ratio:1.36;overflow:hidden;background:#314a3e}
#gamesPage .listening-detective .ld-chapter-image:before{position:absolute;inset:0;z-index:1;content:"";background:linear-gradient(180deg,#14241c11 45%,#14241c89 100%)}
#gamesPage .listening-detective .ld-chapter-image:after{position:absolute;inset:0;content:"";background:var(--ld-chapter-art) center 43%/cover no-repeat;transition:transform .3s ease}
#gamesPage .listening-detective .ld-chapter-card:hover .ld-chapter-image:after{transform:scale(1.06)}
#gamesPage .listening-detective .ld-chapter-number,.ld-chapter-resume{position:absolute;z-index:2;top:10px;left:10px;padding:5px 8px;border:1px solid #ffffff8a;border-radius:999px;background:#17251cb3;color:#fff7e6;font-size:10px;font-weight:900;backdrop-filter:blur(8px)}
#gamesPage .listening-detective .ld-chapter-resume{right:10px;left:auto;background:#58774fe8}
#gamesPage .listening-detective .ld-chapter-copy{display:flex;flex:1;flex-direction:column;gap:8px;padding:13px}
#gamesPage .listening-detective .ld-chapter-copy>small{color:#8a7042;font-size:8px;font-weight:900;letter-spacing:.09em}
#gamesPage .listening-detective .ld-chapter-copy>b{color:#263d32;font:800 16px/1.15 Georgia,serif}
#gamesPage .listening-detective .ld-chapter-copy>span{color:#667166;font-size:10px;line-height:1.45}
#gamesPage .listening-detective .ld-chapter-copy>em{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;color:#486548;font-size:10px;font-style:normal;font-weight:900}
#gamesPage .listening-detective .ld-chapter-copy>em i{font-size:16px;font-style:normal}
#gamesPage .listening-detective .ld-home-footer{margin:22px 0 0;padding:14px 0;border-top:1px solid #d5d0c1;color:#667166;text-align:center;font-size:10px}
@media(max-width:1050px){#gamesPage .listening-detective .ld-chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){#gamesPage .listening-detective .ld-home-top{min-height:50px;padding:6px 10px}#gamesPage .listening-detective .ld-home-top>span{font-size:8px;letter-spacing:.1em}#gamesPage .listening-detective .ld-home-top button{padding:7px 8px;font-size:10px}#gamesPage .listening-detective .ld-home-hero{height:auto;min-height:390px;align-items:flex-end;padding:28px 20px 25px}#gamesPage .listening-detective .ld-home-art{top:0;right:0;width:min(74vw,340px);height:55%;opacity:.9}#gamesPage .listening-detective .ld-home-shade{background:linear-gradient(180deg,#17312c18 0%,#17312c32 30%,#17312cf5 65%,#17312c 100%)}#gamesPage .listening-detective .ld-home-copy h1{font-size:39px}#gamesPage .listening-detective .ld-home-copy>p{font-size:13px}#gamesPage .listening-detective .ld-home-facts{gap:5px;margin-top:14px}#gamesPage .listening-detective .ld-home-facts span{font-size:9px}#gamesPage .listening-detective .ld-home-stamp{right:14px;bottom:16px;width:45px;height:45px}#gamesPage .listening-detective .ld-chapter-section{padding:25px 13px 20px}#gamesPage .listening-detective .ld-chapter-heading{display:block;margin-bottom:14px}#gamesPage .listening-detective .ld-chapter-heading>p{margin-top:8px}#gamesPage .listening-detective .ld-chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}#gamesPage .listening-detective .ld-chapter-image{aspect-ratio:1.16}#gamesPage .listening-detective .ld-chapter-copy{gap:6px;padding:10px}#gamesPage .listening-detective .ld-chapter-copy>b{font-size:13px}#gamesPage .listening-detective .ld-chapter-copy>span{font-size:9px}#gamesPage .listening-detective .ld-chapter-copy>small{font-size:7px}#gamesPage .listening-detective .ld-chapter-copy>em{font-size:9px}}

/* 1.6.63 — Full-screen videogame lobby for Listening Detective */
#gamesPage .listening-detective .ld-game-lobby{position:fixed;inset:0;z-index:130;display:grid;grid-template-rows:68px minmax(300px,1fr) 280px;overflow:hidden;isolation:isolate;background:#101915;color:#f7f0df;font-family:system-ui,sans-serif}
#gamesPage .listening-detective .ld-game-lobby:before{position:absolute;inset:-2%;z-index:-3;content:"";background:var(--ld-lobby-bg) center 46%/cover no-repeat;filter:blur(1.5px);transform:scale(1.02);transition:background-image .2s ease}
#gamesPage .listening-detective .ld-game-lobby:after{position:absolute;inset:0;z-index:-2;content:"";background:linear-gradient(90deg,#0b1715f2 0%,#101c19dc 32%,#111c1985 62%,#11181466 100%),linear-gradient(0deg,#09110ff7 0%,#0b1514dd 24%,#0b151447 55%,#0b15148a 100%)}
#gamesPage .listening-detective .ld-lobby-vignette{position:absolute;inset:0;z-index:-1;pointer-events:none;box-shadow:inset 0 0 130px #050b0a99}
#gamesPage .listening-detective .ld-lobby-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 clamp(18px,3vw,48px);border-bottom:1px solid #fff2d81c;background:linear-gradient(180deg,#0912108c,#09121042);backdrop-filter:blur(12px)}
#gamesPage .listening-detective .ld-lobby-back,#gamesPage .listening-detective .ld-lobby-sound{display:flex;align-items:center;gap:8px;justify-self:start;padding:9px 12px;border:1px solid #fff5d82c;border-radius:10px;background:#ffffff0b;color:#f7f0df;font-size:11px;font-weight:800;cursor:pointer}
#gamesPage .listening-detective .ld-lobby-back:hover,#gamesPage .listening-detective .ld-lobby-sound:hover{border-color:#d9b965;background:#ffffff17}
#gamesPage .listening-detective .ld-lobby-brand{display:flex;align-items:center;gap:10px;color:#fff4d6}
#gamesPage .listening-detective .ld-lobby-mark{display:grid;place-items:center;width:35px;height:35px;border:1px solid #d8b667;border-radius:10px;background:#b38a4133;color:#edd28e;font:900 20px Georgia,serif;box-shadow:0 0 20px #d3aa4b20}
#gamesPage .listening-detective .ld-lobby-brand>span:last-child{display:grid;gap:2px}.ld-lobby-brand b{font-size:12px;letter-spacing:.19em}.ld-lobby-brand small{color:#c6b894;font-size:8px;letter-spacing:.16em}
#gamesPage .listening-detective .ld-lobby-top-actions{display:flex;justify-self:end;align-items:center;gap:12px}
#gamesPage .listening-detective .ld-lobby-status{color:#e8d9b5;font-size:9px;font-weight:850;letter-spacing:.12em}.ld-lobby-status i{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#8dc17b;box-shadow:0 0 10px #8dc17b}
#gamesPage .listening-detective .ld-lobby-feature{position:relative;display:flex;align-items:center;min-height:0;padding:8px clamp(28px,7vw,110px) 20px}
#gamesPage .listening-detective .ld-lobby-copy{position:relative;max-width:min(750px,62vw);padding:12px 0 4px}
#gamesPage .listening-detective .ld-lobby-kickers{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:19px}
#gamesPage .listening-detective .ld-lobby-chapter-tag,#gamesPage .listening-detective .ld-lobby-level,#gamesPage .listening-detective .ld-lobby-resume{padding:6px 9px;border:1px solid #edd99c66;border-radius:6px;background:#16241fd9;color:#efd89d;font-size:9px;font-weight:900;letter-spacing:.12em}
#gamesPage .listening-detective .ld-lobby-level{border-color:#ffffff28;color:#f3ead7;font-weight:750;letter-spacing:.06em}
#gamesPage .listening-detective .ld-lobby-resume{border-color:#8eb77780;background:#182b1fe0;color:#b8e19b}
#gamesPage .listening-detective .ld-lobby-eyebrow{margin:0 0 7px;color:#d8b76e;font-size:10px;font-weight:900;letter-spacing:.24em}
#gamesPage .listening-detective .ld-lobby-copy h1{max-width:730px;margin:0;color:#fff7e7;font:900 clamp(36px,5vw,69px)/.99 Georgia,"Noto Serif SC",serif;letter-spacing:-.035em;text-shadow:0 5px 25px #090e0c}
#gamesPage .listening-detective .ld-lobby-desc{max-width:560px;margin:14px 0 15px;color:#e6e1d3;font-size:clamp(13px,1.2vw,16px);line-height:1.55;text-shadow:0 2px 7px #060c0a}
#gamesPage .listening-detective .ld-lobby-details{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
#gamesPage .listening-detective .ld-lobby-details span{padding:6px 9px;border:1px solid #ffffff29;border-radius:6px;background:#0f1a17a6;color:#eee6d5;font-size:9px;font-weight:700;backdrop-filter:blur(9px)}
#gamesPage .listening-detective .ld-lobby-play{display:inline-flex;align-items:center;gap:24px;min-height:47px;padding:0 18px;border:1px solid #f3d58e;border-radius:7px;background:linear-gradient(180deg,#e5c46f,#b78c3e);color:#1c251d;font-size:12px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 7px 28px #050b0a85;cursor:pointer;transition:filter .15s,transform .15s}
#gamesPage .listening-detective .ld-lobby-play:hover{filter:brightness(1.1);transform:translateY(-2px)}#gamesPage .listening-detective .ld-lobby-play span{font-size:14px}
#gamesPage .listening-detective .ld-lobby-scroll-hint{position:absolute;right:clamp(22px,3vw,48px);bottom:28px;display:flex;align-items:center;gap:9px;color:#f3e6c4b8;font-size:8px;font-weight:850;letter-spacing:.14em;writing-mode:vertical-rl}
#gamesPage .listening-detective .ld-lobby-scroll-hint i{display:block;width:1px;height:35px;background:linear-gradient(#e7cb8e00,#e7cb8e)}
#gamesPage .listening-detective .ld-lobby-tray{position:relative;z-index:2;padding:11px clamp(18px,4vw,62px) 17px;border-top:1px solid #dec88632;background:linear-gradient(180deg,#0b1413c2,#09100ff5 22%);backdrop-filter:blur(15px)}
#gamesPage .listening-detective .ld-lobby-tray-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 10px}
#gamesPage .listening-detective .ld-lobby-tray-heading h2{margin:2px 0 0;color:#f8f0df;font:800 17px/1.1 Georgia,serif}
#gamesPage .listening-detective .ld-lobby-tray-heading .ld-lobby-eyebrow{margin:0;font-size:8px}
#gamesPage .listening-detective .ld-lobby-instruction{color:#b5b2a7;font-size:9px}.ld-lobby-instruction b{margin-left:5px;color:#d8b76e;font-size:13px}
#gamesPage .listening-detective .ld-lobby-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;height:190px}
#gamesPage .listening-detective .ld-lobby-card{position:relative;display:block;min-width:0;overflow:hidden;padding:0;border:1px solid #ffffff36;border-radius:9px;background:#18221e;color:#fff;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
#gamesPage .listening-detective .ld-lobby-card:hover{transform:translateY(-3px);border-color:#e3c771aa;box-shadow:0 8px 24px #0008}
#gamesPage .listening-detective .ld-lobby-card.is-selected{transform:translateY(-5px);border:1px solid #f0d27f;box-shadow:0 0 0 1px #f0d27f55,0 10px 28px #0009}
#gamesPage .listening-detective .ld-lobby-card-art{position:absolute;inset:0;background:var(--ld-card-bg) center 44%/cover no-repeat;transition:transform .3s ease}
#gamesPage .listening-detective .ld-lobby-card:hover .ld-lobby-card-art{transform:scale(1.05)}
#gamesPage .listening-detective .ld-lobby-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,#08100d30 0%,#08100d15 27%,#08100d66 51%,#08100df2 100%)}
#gamesPage .listening-detective .ld-lobby-card-top{position:absolute;top:9px;left:10px;right:9px;display:flex;justify-content:space-between;align-items:center}
#gamesPage .listening-detective .ld-lobby-card-top>b{display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffff7a;border-radius:50%;background:#101815b5;color:#fff4d8;font-size:10px}
#gamesPage .listening-detective .ld-lobby-card-top>i{padding:5px 6px;border-radius:4px;background:#213b25e8;color:#bee3a1;font-size:7px;font-style:normal;font-weight:900;letter-spacing:.1em}
#gamesPage .listening-detective .ld-lobby-card-copy{position:absolute;right:12px;bottom:10px;left:12px;display:grid;gap:5px}
#gamesPage .listening-detective .ld-lobby-card-copy>small{color:#e4c978;font-size:7px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
#gamesPage .listening-detective .ld-lobby-card-copy>strong{display:-webkit-box;overflow:hidden;color:#fff9ed;font:750 14px/1.12 Georgia,serif;text-shadow:0 2px 8px #000;-webkit-line-clamp:2;-webkit-box-orient:vertical}
#gamesPage .listening-detective .ld-lobby-card-copy>em{display:flex;justify-content:space-between;align-items:center;padding-top:5px;border-top:1px solid #ffffff42;color:#e5dece;font-size:7px;font-style:normal;font-weight:850;letter-spacing:.08em}
#gamesPage .listening-detective .ld-lobby-card-copy>em span{color:#e8c86d;font-size:15px}
@media(max-width:1000px){#gamesPage .listening-detective .ld-game-lobby{grid-template-rows:62px minmax(280px,1fr) 255px}#gamesPage .listening-detective .ld-lobby-cards{height:168px;gap:8px}#gamesPage .listening-detective .ld-lobby-card-copy>strong{font-size:12px}#gamesPage .listening-detective .ld-lobby-copy{max-width:70vw}}
@media(max-width:700px){#gamesPage .listening-detective .ld-game-lobby{position:fixed;inset:0;grid-template-rows:56px minmax(365px,1fr) 300px;overflow-y:auto;min-height:100dvh}#gamesPage .listening-detective .ld-lobby-top{grid-template-columns:1fr auto;padding:0 11px}.ld-lobby-brand{grid-column:1;grid-row:1}.ld-lobby-top-actions{grid-column:2;grid-row:1}.ld-lobby-status{display:none!important}#gamesPage .listening-detective .ld-lobby-back{position:absolute;left:10px;top:61px;z-index:3;padding:6px 8px;font-size:9px}#gamesPage .listening-detective .ld-lobby-feature{align-items:flex-end;min-height:365px;padding:22px 16px 21px;background:linear-gradient(180deg,#07100e11 0%,#07100e22 25%,#07100eab 75%,#07100ee8 100%)}#gamesPage .listening-detective .ld-lobby-copy{max-width:100%;padding:0}#gamesPage .listening-detective .ld-lobby-kickers{gap:5px;margin-bottom:12px}#gamesPage .listening-detective .ld-lobby-chapter-tag,#gamesPage .listening-detective .ld-lobby-level,#gamesPage .listening-detective .ld-lobby-resume{padding:5px 6px;font-size:7px}#gamesPage .listening-detective .ld-lobby-copy h1{font-size:38px}#gamesPage .listening-detective .ld-lobby-desc{margin:9px 0;font-size:12px}#gamesPage .listening-detective .ld-lobby-details{gap:5px;margin-bottom:12px}#gamesPage .listening-detective .ld-lobby-details span{padding:5px 6px;font-size:7px}#gamesPage .listening-detective .ld-lobby-play{min-height:41px;font-size:10px}#gamesPage .listening-detective .ld-lobby-scroll-hint{display:none}#gamesPage .listening-detective .ld-lobby-tray{min-height:300px;padding:12px 10px 18px}#gamesPage .listening-detective .ld-lobby-tray-heading{margin-bottom:9px}#gamesPage .listening-detective .ld-lobby-tray-heading h2{font-size:15px}#gamesPage .listening-detective .ld-lobby-instruction{max-width:45%;font-size:8px;text-align:right}#gamesPage .listening-detective .ld-lobby-cards{display:flex;height:221px;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 2px 10px;scroll-snap-type:x mandatory}#gamesPage .listening-detective .ld-lobby-card{flex:0 0 66vw;max-width:285px;scroll-snap-align:start}#gamesPage .listening-detective .ld-lobby-card-copy>strong{font-size:15px}}
@media(max-height:730px) and (min-width:701px){#gamesPage .listening-detective .ld-game-lobby{grid-template-rows:56px minmax(250px,1fr) 240px}#gamesPage .listening-detective .ld-lobby-cards{height:158px}#gamesPage .listening-detective .ld-lobby-copy h1{font-size:clamp(34px,4vw,52px)}#gamesPage .listening-detective .ld-lobby-kickers{margin-bottom:10px}}
/* Keep lobby artwork in the DOM so it remains visible across app stacking contexts. */
#gamesPage .listening-detective .ld-game-lobby{position:fixed;isolation:isolate}
#gamesPage .listening-detective .ld-game-lobby:before,#gamesPage .listening-detective .ld-game-lobby:after{content:none}
#gamesPage .listening-detective .ld-lobby-background{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:blur(1.5px);transform:scale(1.02)}
#gamesPage .listening-detective .ld-lobby-vignette{z-index:1;box-shadow:none;background:linear-gradient(90deg,#0b1715f2 0%,#101c19dc 32%,#111c1985 62%,#11181466 100%),linear-gradient(0deg,#09110ff7 0%,#0b1514dd 24%,#0b151447 55%,#0b15148a 100%);}
#gamesPage .listening-detective .ld-lobby-top,#gamesPage .listening-detective .ld-lobby-feature,#gamesPage .listening-detective .ld-lobby-tray{position:relative;z-index:2}
#gamesPage .listening-detective .ld-lobby-card-art{z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 44%;transition:transform .3s ease}
