.olymp-screen{position:fixed;inset:0;background:#0000a8;z-index:80;overflow:auto;color:#fff;padding:18px;font:14px Tahoma,sans-serif}.olymp-wrap{width:min(920px,100%);margin:auto}.olymp-banner{border:5px ridge #fff;background:#ed008b;color:#fff;text-align:center;padding:8px;text-shadow:2px 2px #000080}.olymp-banner strong{display:block;font:bold clamp(24px,5vw,45px) Georgia;color:#ffff00}.olymp-flash{font:bold 14px 'Courier New';color:#fffe49;animation:olymp-blink 1s steps(2) infinite}@keyframes olymp-blink{50%{opacity:.3}}.olymp-window{margin:10px auto;background:#c0c0c0;color:#000;border:2px solid;border-color:#fff #333 #333 #fff;box-shadow:2px 2px #000}.olymp-title{background:#000080;color:#fff;font:bold 13px Tahoma;padding:5px 8px}.olymp-inner{padding:14px}.olymp-inner h1,.olymp-inner h2{font-size:19px;margin:2px 0 9px}.olymp-sub{background:#fff;border:2px inset #ddd;padding:10px;line-height:1.4}.olymp-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.olymp-actions .btn{font-size:14px}.olymp-progress{display:flex;gap:3px;flex-wrap:wrap;margin:7px 0}.olymp-progress span{background:#ddd;border:2px solid;border-color:#fff #777 #777 #fff;padding:5px 7px;font:bold 11px Tahoma;color:#333}.olymp-progress .done{background:#ade3a3}.olymp-progress .active{background:#000080;color:white}.olymp-status{font:bold 12px 'Courier New';background:#fff;border:2px inset #ccc;padding:8px;margin:8px 0}.olymp-chat{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:10px}.olymp-chat>div{background:#eee;border:2px inset #fff;padding:7px;font:11px/1.4 Tahoma}.olymp-chat b{display:block;color:#000080}.olymp-celebrate{background:#ffff9f;color:#900066;border:4px ridge #fff;text-align:center;padding:15px;font:bold 20px Georgia}.olymp-field{background:#fff;border:3px inset #ddd;padding:10px}.olymp-counter{font:bold 18px 'Courier New';color:#000080}.olymp-track{height:230px;position:relative;background:#81745f;border:5px ridge #ddd;overflow:hidden;background-image:repeating-linear-gradient(0deg,transparent 0 35px,#c5bba7 36px 40px,transparent 41px 80px);animation:road-olymp .5s linear infinite}@keyframes road-olymp{to{background-position:0 80px}}.olymp-track:before,.olymp-track:after{content:'';position:absolute;top:0;bottom:0;width:3px;background:#fff8}.olymp-track:before{left:33.33%}.olymp-track:after{left:66.66%}.olymp-rider,.olymp-obstacle{position:absolute;font-size:30px;transform:translateX(-50%);z-index:2}.olymp-rider{bottom:5px;transition:left .1s}.olymp-obstacle{top:0}.olymp-food{background:#ff9cc9;border:5px ridge #eee;padding:10px}.olymp-food h2{font:bold 26px Georgia;color:#d80075;text-shadow:1px 1px #fff;text-align:center}.olymp-foodgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.olymp-foodgrid button{background:#c0c0c0;border:3px outset #fff;padding:4px;font:bold 12px Tahoma}.olymp-foodgrid img{display:block;width:100%;height:80px;object-fit:cover;image-rendering:pixelated;filter:saturate(.65) contrast(1.1);margin-bottom:5px}.olymp-memory{display:grid;grid-template-columns:repeat(3,minmax(70px,100px));gap:7px;justify-content:center}.olymp-card{height:90px;background:#000080;color:#fff;border:3px outset #ddd;font:bold 24px Tahoma}.olymp-card img{width:100%;height:100%;object-fit:cover}.olymp-card.matched{border-color:#76da6b}.olymp-ball{position:relative;max-width:650px;margin:auto;height:min(45vh,350px);background:#111;border:4px inset #ddd;overflow:hidden}.olymp-ball img{width:100%;height:100%;object-fit:cover}.olymp-ball button{position:absolute;width:21px;height:21px;border-radius:50%;border:1px solid #555;background:#d1e747;padding:0;font-size:10px;line-height:19px}.olymp-casino-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.olymp-casino-grid>div{background:#fff;border:2px inset #ddd;padding:8px}.olymp-casino-grid h3{font:bold 13px Tahoma;margin:3px 0}.olymp-casino-grid .btn{margin:3px}.olymp-casino-grid .cards{display:flex;gap:3px}.olymp-casino-grid .cards button{min-width:35px;padding:6px}.olymp-connect{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.olymp-connect button{min-height:65px;font-weight:bold}.olymp-big{background:#1f9e1f!important;color:#fff!important;font-weight:bold!important;box-shadow:1px 1px #000}.birthday{min-height:100dvh;background:#000080;color:#ffff00;text-align:center;padding:20px;font:16px Tahoma;overflow:auto;background-image:radial-gradient(#fff 1px,transparent 2px);background-size:38px 41px}.birthday-card{max-width:760px;margin:auto;border:8px ridge #fff;background:#d5008b;padding:18px;box-shadow:0 0 0 4px #000}.birthday h1{font:bold clamp(45px,9vw,80px) Georgia;text-shadow:3px 3px #000080;margin:10px}.birthday h2{font: bold 27px Georgia;text-shadow:2px 2px #000080}.birthday p{color:#fff;line-height:1.6}.birthday-gift{background:#ffffa0;color:#000080;border:5px ridge #eee;padding:14px;margin:16px 0;font:bold 18px Tahoma}.birthday .btn{margin:5px}.birthday-emoji{font-size:clamp(25px,5vw,48px)}.slide-actions #skipSlides{background:#55d85a;color:#000;font-weight:bold;padding:10px 20px;outline:2px solid #fff}.catalog .explorer-sidebar .side-buttons,.catalog #sort,.catalog #stop,.catalog #list{display:none!important}.catalog .gift{cursor:pointer}.olymp-screen .btn:disabled{color:#777}@media(max-width:600px){.olymp-screen{padding:8px}.olymp-casino-grid{grid-template-columns:1fr}.olymp-foodgrid img{height:52px}.olymp-chat{grid-template-columns:1fr}.olymp-track{height:190px}.olymp-memory{grid-template-columns:repeat(3,minmax(60px,85px))}.olymp-card{height:70px}.birthday-card{padding:12px}}@media(prefers-reduced-motion:reduce){.olymp-flash,.olymp-track{animation:none}.olymp-rider{transition:none}}
.catalog .explorer-sidebar>h2:first-child{display:none}.catalog .olymp-screen .btn{font-size:14px}
.olymp-banner .olymp-mute{font:10px Tahoma;padding:3px 8px;min-height:23px;margin-top:4px;text-shadow:none}.olymp-celebrate .olymp-flash{color:#97005c}.olymp-banner small{display:inline-block}.olymp-foodgrid img{height:75px}
.olymp-food-header{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#fff3d9;border:3px outset #fff;padding:4px}.olymp-food-header h2{flex:1;margin:0}.olymp-food-header img{width:88px;height:50px;object-fit:cover;filter:saturate(.65) contrast(1.15);image-rendering:pixelated}@media(max-width:600px){.olymp-food-header img{width:50px;height:40px}.olymp-food-header h2{font-size:18px}}
/* Tables du casino : chaque action et son résultat restent visibles. */
.casino-marquee{border:5px ridge #e2cb69;background:#7b0731;color:#ffec71;text-shadow:2px 2px #000;text-align:center;padding:9px;font:bold 24px Georgia}.casino-marquee small{display:block;font:10px Tahoma;color:white;letter-spacing:1px}.casino-score{background:#000;color:#ffed63;font-size:16px}.casino-meter{height:9px;background:#555;border:1px solid #ddd;margin-top:6px}.casino-meter i{display:block;height:100%;width:0;background:#2dd24a;transition:width .4s}.casino-tables>div{background:#006740;color:white;border:4px ridge #e6ce91;text-align:center;min-width:0}.casino-tables h3{background:#6b092e;color:#fff38c;padding:7px;margin:-4px -4px 8px}.casino-tables p{font:12px/1.35 Tahoma}.casino-dice{height:75px;display:flex;justify-content:center;align-items:center;gap:8px;color:#fff;font-size:68px;line-height:1;text-shadow:2px 2px #333}.casino-coin{margin:4px auto;width:64px;height:64px;border-radius:50%;border:5px ridge #ffe276;background:#c99413;color:#543000;display:grid;place-items:center;font:bold 26px Georgia;box-shadow:2px 3px #003b29}.casino-cards{justify-content:center;min-height:80px;align-items:center}.olymp-casino-grid .casino-cards button{width:52px;height:72px;background:repeating-linear-gradient(45deg,#a90038 0 4px,#f0c8d4 5px 7px);border:4px ridge white;color:#fff;text-shadow:1px 1px #000;font:bold 25px Georgia}.casino-result{min-height:33px;background:#fff9d4;color:#222;border:2px inset #ddd;padding:5px}.spinning .casino-dice,.spinning .casino-coin,.spinning .casino-cards{animation:casino-jiggle .18s infinite alternate}@keyframes casino-jiggle{from{transform:rotate(-4deg)}to{transform:rotate(4deg)}}
.food-ticket{background:#fffbe0;border:2px dashed #934c18;color:#39210e;padding:10px;margin:8px 0;font: bold 14px/1.4 'Courier New',monospace}.olymp-foodgrid button:disabled{opacity:.6}.olymp-foodgrid button:not(:disabled):active{transform:scale(.95);background:#ffff9b}.olymp-memory{grid-template-columns:repeat(4,minmax(65px,100px))}.olymp-card{background:repeating-linear-gradient(45deg,#000080 0 7px,#192f9f 7px 10px);text-shadow:2px 2px #000}.olymp-card.matched{background:#0a6b30}
.kv-stage{position:relative;max-width:650px;margin:auto;border:6px ridge #ddd;background:#9b7254;overflow:hidden;image-rendering:pixelated}.kv-stage:focus{outline:2px dotted #fff;outline-offset:-8px}.kv-sign{text-align:center;background:#df2d21;color:#fff993;padding:7px;font:bold 22px Georgia;text-shadow:2px 2px #000}.kv-sign small{font:10px Tahoma}.kv-outside{min-height:215px;text-align:center;padding:15px;background:linear-gradient(#d2c6a8 0 70%,#888 70%)}.kv-door{display:inline-block;background:#9d2520;border:7px ridge #ddd;padding:15px;font:bold 13px Tahoma}.kv-room{height:250px;position:relative;background:repeating-conic-gradient(#dbc6a3 0 25%,#bda984 0 50%) 0 0/48px 48px}.kv-room[hidden],.kv-outside[hidden]{display:none}.kv-counter{position:absolute;right:0;top:0;bottom:0;width:23%;background:repeating-linear-gradient(0deg,#8b3f24 0 30px,#5c2816 32px 35px);border-left:9px ridge #ebc287;color:#ffedaa;font:bold 11px Tahoma;writing-mode:vertical-rl;padding:10px}.kv-tables{position:absolute;left:10%;top:8%;font-size:26px}.kv-character{position:absolute;z-index:2;font-size:34px;text-align:center;transform:translate(-50%,-50%);filter:drop-shadow(2px 3px #333);transition:left .1s,top .1s}.kv-character span{display:block;background:#ffffdc;color:#111;border:1px solid #111;font:bold 9px Tahoma;padding:2px;white-space:nowrap;text-shadow:none}.kv-kemal{left:83%;top:32%}.kv-direction{position:absolute;left:60%;top:5%;color:#d30000;font-size:25px;animation:olymp-blink 1s infinite}.kv-dialog{max-width:650px;margin:8px auto;background:#fff;border:4px double #000080;padding:9px;font:13px/1.4 Tahoma;min-height:56px}.kv-controls{text-align:center}.kv-controls .btn{min-width:46px;margin:2px}.kv-controls>div{display:flex;justify-content:center}.kv-controls [hidden]{display:none}@media(max-width:600px){.olymp-memory{grid-template-columns:repeat(4,minmax(52px,75px))}.casino-dice{height:55px;font-size:50px}.kv-room{height:200px}.kv-character{font-size:28px}}
/* Une petite porte discrète mène à l'arrière-cuisine du Pacha. */
.kv-secret{position:absolute;left:2%;top:0;width:13%;height:58px;background:#603b29;border:5px ridge #9c7859;color:#ffe9b3;text-align:center;font-size:25px;line-height:26px;z-index:1}.kv-secret span{display:block;font:bold 7px/1 Tahoma;color:#fff}.kv-secret[hidden],.kv-storeroom[hidden],.kv-kemal[hidden],.kv-direction[hidden]{display:none}.kv-room.backroom{background:repeating-conic-gradient(#aab8a0 0 25%,#d1d0ad 0 50%) 0 0/40px 40px}.kv-room.backroom .kv-counter,.kv-room.backroom .kv-tables{display:none}.kv-storeroom{position:absolute;inset:0}.kv-shelf{position:absolute;top:0;left:52%;width:35%;background:#765234;border:7px ridge #c9ac7e;font-size:28px;line-height:1.35;text-align:center}.kv-fridge{position:absolute;left:7%;top:4%;height:100px;width:80px;background:#d4d9ce;border:6px ridge #eee;text-align:center;font:bold 10px/1.6 Tahoma;padding-top:20px}.kv-key{position:absolute;left:66%;top:21%;z-index:1;font-size:29px;filter:drop-shadow(2px 2px #111);animation:olymp-blink 1.2s infinite}.kv-key span{display:block;font:bold 8px Tahoma;background:#ffffa1;border:1px solid black;padding:2px}
.mt-bonus{font:bold 17px Tahoma;color:#000080;background:#fff53c;border:3px ridge #fff;border-radius:50%;padding:5px 7px;box-shadow:2px 2px #222;white-space:nowrap;animation:olymp-blink .7s steps(2) infinite}#mt-message{color:#a00035}
.olymp-help{background:#fff6a3;border:2px ridge #dfc66a;color:#342200;padding:7px}
/* Un bouton indisponible doit être clairement différent du bouton vert prêt. */
.olymp-screen .olymp-big:disabled{background:#a8a8a8!important;color:#555!important;box-shadow:none;cursor:not-allowed}.casino-next{background:#fffbd2;border:2px inset #ddd;padding:8px;font:bold 12px/1.4 Tahoma;color:#323000}.casino-tables h3 span{display:block;margin:4px auto 0;width:max-content;background:#f6e093;color:#523500;padding:2px 5px;font:bold 9px Tahoma}.casino-tables h3 span.played{background:#a4ec9c;color:#064512}
.kv-controls #kv-talk:not(:disabled){background:#168c38;color:#fff;font-weight:bold;border-color:#baf7b4 #135a20 #135a20 #baf7b4;min-width:230px;min-height:40px}.kv-kemal,.kv-secret,.kv-key{cursor:pointer}
