/* Aibō · Le calendrier de l'avent : plein écran, sans ascenseur */
html.av-html, body.av-plein { overflow: hidden !important; height: 100% !important; }
body.av-plein #main-footer, body.av-plein footer, body.av-plein #main-header, body.av-plein #top-header, body.av-plein .et-l--footer, body.av-plein .et-l--header, body.av-plein #wpadminbar { display: none !important; }
.av {
	--nuit: #0E1A2B; --nuit2: #17304A; --neige: #F4F7FB; --or: #FFD166; --rouge: #C2412D; --rouge2: #8E2424; --vert: #2E8B57; --encre: #1E2530; --creme: #FFF8EC;
	position: fixed; inset: 0; z-index: 2147482000; overflow: hidden; font-family: Lexend, system-ui, sans-serif; font-weight: 300; color: var(--neige);
	background: radial-gradient(120% 90% at 30% 10%, #23466B 0%, var(--nuit2) 40%, var(--nuit) 100%);
	padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
}
.av *, .av *::before, .av *::after { box-sizing: border-box; }
.av b, .av strong, .av h1, .av h2, .av h3 { font-weight: 700; }
.av button { font-family: inherit; }
.av-charge { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 18px; color: var(--or); }
.av-app { position: relative; height: 100%; display: flex; flex-direction: column; }
.av-neige { position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; }

/* ---------- bandeau ---------- */
.av-tete { position: relative; z-index: 5; flex: 0 0 auto; display: flex; align-items: center; gap: 14px; padding: 10px clamp(12px, 2vw, 26px); background: linear-gradient(180deg, rgba(8, 16, 28, .75), rgba(8, 16, 28, .25)); }
.av-marque { display: flex; flex-direction: column; line-height: 1.1; margin-right: auto; min-width: 0; }
.av-marque small { font-size: 10.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--or); font-weight: 600; }
.av-marque strong { font-size: clamp(17px, 2vw, 24px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.av-puce { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 16px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14); font-size: 13px; white-space: nowrap; }
.av-puce b { color: var(--or); }
.av-compte { display: flex; align-items: center; gap: 6px; font-size: 13px; }
.av-compte a, .av-lien { color: var(--neige) !important; text-decoration: none !important; padding: 6px 11px; border-radius: 16px; border: 1px solid rgba(255, 255, 255, .25); font-weight: 600; font-size: 13px; background: transparent; cursor: pointer; }
.av-compte a.av-plein-btn { background: var(--or); color: #2A1A10 !important; border-color: var(--or); }
.av-ib { position: relative; width: 38px; height: 38px; border-radius: 10px; border: 1px solid rgba(255, 255, 255, .22); background: rgba(255, 255, 255, .06); color: var(--neige); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; text-decoration: none !important; }
.av-ib:hover { background: rgba(255, 255, 255, .14); }
.av-ib svg { width: 19px; height: 19px; }
.av-ib[aria-pressed="false"] { opacity: .6; }
.av-ib[aria-pressed="false"]::after { content: ""; position: absolute; left: 8px; right: 8px; top: 50%; height: 2px; background: currentColor; transform: rotate(-40deg); border-radius: 1px; box-shadow: 0 0 0 1.5px var(--nuit); }
.av-b-rep { width: auto; padding: 0 12px; border: 1px dashed var(--or); color: var(--or); font-weight: 600; font-size: 13px; }
.av-b-rep.actif { background: var(--or); color: #2A1A10; border-style: solid; }

/* ---------- scène et portes ---------- */
.av-main { position: relative; z-index: 2; flex: 1 1 auto; min-height: 0; display: grid; grid-template-columns: minmax(260px, 34%) 1fr; gap: clamp(10px, 2vw, 26px); padding: 4px clamp(12px, 2vw, 26px) clamp(10px, 2vh, 20px); }
.av-scene { position: relative; min-height: 0; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; }
.av-guirlande { position: absolute; left: -10px; right: -10px; top: 0; height: 40px; pointer-events: none; }
.av-bulle { position: relative; z-index: 2; max-width: 360px; margin: 0 auto 10px; padding: 12px 16px; border-radius: 16px; background: var(--creme); color: var(--encre); font-size: 14px; line-height: 1.45; box-shadow: 0 8px 26px rgba(0, 0, 0, .3); }
.av-bulle::after { content: ""; position: absolute; left: 50%; bottom: -9px; margin-left: -9px; border: 9px solid transparent; border-bottom: 0; border-top-color: var(--creme); }
.av-bulle b { color: var(--rouge); }
.av-sapin { position: relative; z-index: 2; height: min(44vh, 420px); width: auto; aspect-ratio: 200 / 270; }
.av-sapin .avs { width: 100%; height: 100%; }
.av-sol { position: absolute; left: -40px; right: -40px; bottom: -20px; height: 70px; border-radius: 50% 50% 0 0 / 100% 100% 0 0; background: linear-gradient(180deg, #EAF1F8, #C9D8E8); opacity: .95; z-index: 1; }
.av-bonus { position: relative; z-index: 3; display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin-top: 12px; }
.av-bonus a, .av-bonus span { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 14px; font-size: 13px; font-weight: 600; text-decoration: none !important; }
.av-bonus a { background: var(--or); color: #2A1A10 !important; box-shadow: 0 4px 14px rgba(255, 209, 102, .35); }
.av-bonus span { background: rgba(255, 255, 255, .1); color: var(--neige); }

.av-portes { position: relative; min-height: 0; display: grid; grid-template-columns: repeat(6, 1fr); grid-template-rows: repeat(4, 1fr); gap: clamp(6px, 1.1vw, 14px); padding: clamp(8px, 1.2vw, 16px); border-radius: 22px; background: linear-gradient(160deg, #7A1F22, #4E1418); box-shadow: inset 0 0 0 3px rgba(255, 209, 102, .35), 0 18px 50px rgba(0, 0, 0, .35); perspective: 900px; }
.av-porte { position: relative; border: 0; padding: 0; background: #2B0E10; border-radius: 12px; cursor: pointer; min-height: 0; overflow: visible; transform-style: preserve-3d; }
.av-porte .av-int { position: absolute; inset: 0; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 50% 40%, #FFE9A8, #E0A93A); color: #5A2A10; font-size: clamp(18px, 2.4vw, 32px); }
.av-porte .av-face { position: absolute; inset: 0; border-radius: 12px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; transform-origin: left center; transition: transform .7s cubic-bezier(.3, .7, .3, 1); backface-visibility: hidden;
	background: linear-gradient(135deg, var(--p1, #2E8B57), var(--p2, #1F6B42)); box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .15), 0 3px 8px rgba(0, 0, 0, .35); }
.av-porte .av-face::before { content: ""; position: absolute; left: 50%; top: 0; bottom: 0; width: 14%; margin-left: -7%; background: rgba(255, 209, 102, .85); }
.av-porte .av-face::after { content: ""; position: absolute; top: 50%; left: 0; right: 0; height: 14%; margin-top: -7%; background: rgba(255, 209, 102, .85); }
.av-num { position: relative; z-index: 2; display: inline-flex; align-items: center; justify-content: center; min-width: 2.1em; height: 2.1em; padding: 0 .3em; border-radius: 50%; background: var(--creme); color: var(--rouge2); font-weight: 700; font-size: clamp(14px, 1.8vw, 24px); box-shadow: 0 2px 6px rgba(0, 0, 0, .3); }
.av-etat { position: relative; z-index: 2; font-size: clamp(9px, .9vw, 11.5px); font-weight: 600; color: #fff; background: rgba(0, 0, 0, .35); border-radius: 8px; padding: 1px 6px; margin-top: 3px; white-space: nowrap; }
.av-porte.verrou .av-face { filter: saturate(.35) brightness(.7); }
.av-porte.ouverte:not(.faite) .av-face { animation: av-lueur 2.2s ease-in-out infinite; }
@keyframes av-lueur { 0%, 100% { box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .2), 0 0 0 0 rgba(255, 209, 102, .0); } 50% { box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .4), 0 0 18px 4px rgba(255, 209, 102, .65); } }
.av-porte.faite .av-face { display: none; }
.av-porte.faite .av-int::after { content: "✓"; position: absolute; right: 8px; top: 4px; font-size: 16px; color: #1F6B42; font-weight: 700; }
.av-porte.ouvre .av-face { transform: rotateY(-105deg); }
.av-porte:focus-visible { outline: 3px solid var(--or); outline-offset: 3px; }
.av-porte.secoue { animation: av-secoue .4s; }
@keyframes av-secoue { 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }

/* hors saison : tout est grisé, un message rouge explique */
.av-ferme .av-main, .av-ferme .av-tete .av-puce { filter: grayscale(1) brightness(.6); pointer-events: none; }
.av-ferme-msg { position: absolute; z-index: 20; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(560px, 92vw); padding: 22px 26px; border-radius: 18px; background: #fff; color: #9E1B1B; text-align: center; box-shadow: 0 20px 60px rgba(0, 0, 0, .5); border: 3px solid #C62828; }
.av-ferme-msg h2 { margin: 0 0 8px; font-size: 22px; color: #C62828; }
.av-ferme-msg p { margin: 0; color: #5A1A1A; font-size: 15px; line-height: 1.5; }

/* ---------- fenêtre d'un jour ---------- */
.av-voile { position: absolute; inset: 0; z-index: 30; display: flex; align-items: center; justify-content: center; padding: clamp(8px, 2vh, 24px); background: rgba(6, 12, 22, .62); backdrop-filter: blur(3px); }
.av-voile[hidden] { display: none; }
.av-fen { position: relative; width: min(1120px, 100%); max-height: 100%; display: flex; flex-direction: column; border-radius: 20px; background: var(--creme); color: var(--encre); box-shadow: 0 30px 80px rgba(0, 0, 0, .5); overflow: hidden; animation: av-entre .35s ease; }
@keyframes av-entre { from { transform: translateY(16px) scale(.98); opacity: 0; } }
.av-fen-tete { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; padding: 14px 20px; background: linear-gradient(90deg, var(--rouge2), var(--rouge)); color: #fff; }
.av-fen-tete .av-num { font-size: 18px; }
.av-fen-tete h2 { margin: 0; font-size: clamp(17px, 2vw, 23px); line-height: 1.15; }
.av-fen-tete small { display: block; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: #FFE3A8; font-weight: 600; }
.av-fermer { margin-left: auto; width: 36px; height: 36px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .18); color: #fff; font-size: 20px; cursor: pointer; }
.av-fen-corps { flex: 1 1 auto; min-height: 0; overflow: auto; display: grid; grid-template-columns: minmax(250px, 36%) 1fr; }
.av-info { padding: 16px 20px; background: #FCEFD8; font-size: 14px; line-height: 1.5; }
.av-info p { margin: 0 0 10px; }
.av-info .av-var { font-size: 13px; background: #fff; border-radius: 10px; padding: 8px 10px; }
.av-info code { font-family: "DejaVu Sans Mono", monospace; font-size: 12px; }
.av-dl { display: inline-flex; align-items: center; gap: 8px; margin: 4px 0 10px; padding: 9px 14px; border-radius: 12px; background: var(--vert); color: #fff !important; font-weight: 600; text-decoration: none !important; }
.av-jamovi { font-size: 12.5px; color: #5A4632; border-left: 3px solid var(--or); padding-left: 10px; }
.av-qs { padding: 14px 20px 16px; }
.av-q { margin: 0 0 12px; }
.av-q > p { margin: 0 0 6px; font-weight: 600; font-size: 14.5px; }
.av-opts { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.av-opt { text-align: left; padding: 8px 11px; border-radius: 10px; border: 1.5px solid #E2D3B8; background: #fff; color: var(--encre); font-size: 13.5px; line-height: 1.35; cursor: pointer; display: flex; gap: 8px; align-items: flex-start; }
.av-opt:hover:not(:disabled) { border-color: var(--rouge); }
.av-opt .av-l { flex: 0 0 auto; width: 20px; height: 20px; border-radius: 50%; background: #F3E6CF; color: var(--rouge2); font-size: 11.5px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.av-opt.choisi { border-color: var(--rouge); background: #FFF1EC; box-shadow: 0 0 0 2px rgba(194, 65, 45, .2); }
.av-opt.choisi .av-l { background: var(--rouge); color: #fff; }
.av-opt:disabled { cursor: default; }
.av-opt.juste { border-color: #2E7D32; background: #E9F6EA; }
.av-opt.juste .av-l { background: #2E7D32; color: #fff; }
.av-opt.faux { border-color: #C62828; background: #FDECEC; }
.av-q > p.av-expl, .av-expl { margin: 5px 0 0; font-size: 12.5px; color: #4A3A2A; font-weight: 400; }
.av-pied { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; padding: 12px 20px; border-top: 1px solid #EBDDC4; background: #FFF4E2; font-size: 13.5px; }
.av-pied .av-msg { flex: 1; }
.av-valider { padding: 10px 20px; border-radius: 22px; border: 0; background: var(--rouge); color: #fff; font-weight: 700; font-size: 14px; cursor: pointer; }
.av-valider:disabled { opacity: .45; cursor: default; }
.av-interp { margin: 4px 0 0; padding: 10px 12px; border-radius: 10px; background: #E9F6EA; color: #1F4D27; font-size: 13.5px; }
.av-toast { position: absolute; z-index: 40; left: 50%; bottom: 22px; transform: translateX(-50%); padding: 10px 18px; border-radius: 14px; background: var(--creme); color: var(--encre); font-size: 14px; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); opacity: 0; transition: opacity .3s; pointer-events: none; }
.av-toast.on { opacity: 1; }
.av-sauve { position: absolute; z-index: 40; right: 14px; bottom: 12px; font-size: 12px; font-weight: 600; color: #2A1A10; background: var(--or); border-radius: 12px; padding: 4px 10px; opacity: 0; transition: opacity .4s; pointer-events: none; }
.av-sauve.on { opacity: 1; }

/* ---------- écrans étroits ---------- */
@media (max-width: 860px) {
	.av-main { grid-template-columns: 1fr; grid-template-rows: auto 1fr; }
	.av-scene { flex-direction: row; justify-content: center; gap: 10px; }
	.av-sapin { height: 22vh; }
	.av-bulle { margin: 0; font-size: 12.5px; max-width: 60vw; }
	.av-bulle::after { display: none; }
	.av-sol, .av-guirlande { display: none; }
	.av-portes { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(6, 1fr); }
	.av-puce.av-p-prog { display: none; }
	.av-marque small { display: none; }
	.av-fen-corps { grid-template-columns: 1fr; }
	.av-opts { grid-template-columns: 1fr; }
	.av-bonus { position: absolute; right: 0; bottom: -4px; }
}
@media (max-width: 560px) {
	.av-tete { flex-wrap: wrap; gap: 8px; }
	.av-compte .av-c-nom { display: none; }
}
@media (prefers-reduced-motion: reduce) { .av-porte .av-face { transition: none; } .av-porte.ouverte .av-face { animation: none; } }
.av-int-n{position:absolute;left:8px;bottom:5px;font-size:13px;font-weight:700;color:#8E2424}
@media (max-width:560px){.av-b-plein{display:none!important}.av-marque strong{font-size:16px}}
.av-b-roue.actif{background:var(--or);color:#2A1A10;border-color:var(--or)}.av-ferme .av-tete .av-b-roue{filter:none;pointer-events:auto}

/* ---------- Aibō en volume (CSS 3D) ---------- */
.a3d{--k:1;position:relative;width:calc(200px * var(--k));height:calc(250px * var(--k));perspective:calc(900px * var(--k))}
.a3d-scene{position:absolute;left:50%;top:50%;width:0;height:0;transform-style:preserve-3d;transform:scale(var(--k)) rotateX(-14deg) rotateY(20deg);animation:a3d-tour 12s linear infinite}
.a3d .a3d-scene{transform:scale(var(--k)) rotateX(-14deg) rotateY(20deg)}
@keyframes a3d-tour{from{transform:scale(var(--k)) rotateX(-14deg) rotateY(0deg)}to{transform:scale(var(--k)) rotateX(-14deg) rotateY(360deg)}}
.a3d-p{position:absolute;left:0;top:0;transform-style:preserve-3d}
.a3d-f{position:absolute;left:0;top:0;backface-visibility:hidden;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
.a3d-ecran{position:absolute;inset:11px 12px 18px;border-radius:9px;background:#2A323B;display:flex;align-items:center;justify-content:center;gap:16px}
.a3d-ecran span{width:20px;height:10px;border:5px solid #F4EEDF;border-bottom:0;border-radius:12px 12px 0 0;margin-top:-4px}
.a3d-roues{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-evenly}.a3d-roues i{width:22px;height:22px;border-radius:50%;background:#5C7180}
.a3d-ombre{position:absolute;left:18%;right:18%;bottom:2%;height:8%;border-radius:50%;background:rgba(0,0,0,.28);filter:blur(4px)}
.av-teaser{display:flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:16px;border:0;cursor:pointer;text-align:left;color:var(--neige);
 background:linear-gradient(135deg,rgba(194,65,45,.9),rgba(110,28,30,.9));box-shadow:0 0 0 2px rgba(255,209,102,.55) inset,0 6px 18px rgba(0,0,0,.3);transition:transform .2s}
.av-teaser:hover{transform:translateY(-2px)}.av-teaser .a3d{flex:0 0 auto}
.av-teaser small{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--or);font-weight:700}
.av-teaser b{display:block;font-size:14px;line-height:1.2}.av-teaser em{display:block;font-style:normal;font-size:12px;opacity:.85}
.av-cadeau-fen{max-width:760px}.av-cad-corps{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding:16px 22px 20px;overflow:auto}
.av-cad-vue{cursor:grab;touch-action:none;border-radius:16px;background:radial-gradient(circle at 50% 40%,#2B4A6E,#0E1A2B);padding:10px}.av-cad-vue:active{cursor:grabbing}
.av-cad-txt{font-size:14px;line-height:1.5}.av-cad-txt ul{margin:0 0 10px 18px;padding:0}.av-cad-txt li{margin:2px 0}
.av-cad-prog{height:10px;border-radius:5px;background:#EBDDC4;overflow:hidden;margin:8px 0 4px}.av-cad-prog span{display:block;height:100%;background:var(--rouge)}
.av-cad-astuce{font-size:12px;color:#7A6A55;margin:6px 0 0}
@media (max-width:860px){.av-cad-corps{grid-template-columns:1fr;justify-items:center}.av-teaser .a3d{--k:.24!important}.av-teaser{padding:4px 10px 4px 4px}.av-teaser b{font-size:12.5px}}
@media (prefers-reduced-motion:reduce){.a3d-scene{animation:none}}
.av-bonus .av-teaser span{display:block;background:none;padding:0;border-radius:0;font-weight:400;font-size:inherit;box-shadow:none}
.av-bonus .av-teaser > span{flex:1;min-width:0}
@media (max-width:860px){.av-bonus .av-teaser small,.av-bonus .av-teaser em{display:none}.av-bonus .av-teaser b{font-size:11.5px;max-width:92px}}

/* ---------- le cube des aventures, en bas à gauche ---------- */
.cube-aibo{--t:100px;position:absolute;z-index:4;left:10px;bottom:34px;width:var(--t);height:var(--t);perspective:520px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;text-decoration:none!important}
.cube-aibo:active{cursor:grabbing}.cube-aibo,.cube-aibo:hover,.cube-aibo:focus,.cube-aibo:active{background:none!important;box-shadow:none!important;border:0!important;outline:none!important}.cube-aibo:focus-visible .cb-scene{filter:drop-shadow(0 0 6px var(--or))}
.cb-scene{position:absolute;left:0;top:0;width:var(--t);height:var(--t);transform-style:preserve-3d;will-change:transform}
.cb-f{position:absolute;inset:0;overflow:hidden;border-radius:0;backface-visibility:hidden;box-shadow:inset 0 0 0 1.5px rgba(255,209,102,.5),inset 0 0 18px rgba(0,0,0,.35)}
.cb-av{transform:translateZ(calc(var(--t) / 2))}.cb-dr{transform:rotateY(90deg) translateZ(calc(var(--t) / 2))}.cb-ar{transform:rotateY(180deg) translateZ(calc(var(--t) / 2))}
.cb-ga{transform:rotateY(-90deg) translateZ(calc(var(--t) / 2))}.cb-ha{transform:rotateX(90deg) translateZ(calc(var(--t) / 2))}.cb-ba{transform:rotateX(-90deg) translateZ(calc(var(--t) / 2))}
.cb-fond{position:absolute;inset:0;width:100%;height:100%}
.cb-robot{position:absolute;left:10%;bottom:14%;width:30%;animation:cb-roule 4.5s ease-in-out infinite}.cb-robot svg{width:100%;height:auto;display:block}
@keyframes cb-roule{0%,100%{transform:translateX(0)}50%{transform:translateX(70%)}}
.cb-aibo{animation:cb-saute 1.1s ease-in-out infinite}@keyframes cb-saute{0%,100%{transform:translateY(0)}50%{transform:translateY(-6%)}}
.cb-et{animation:cb-scint 2.4s ease-in-out infinite}@keyframes cb-scint{0%,100%{opacity:1}50%{opacity:.2}}
.cb-anneau{transform-origin:70px 28px;animation:cb-anneau 5s ease-in-out infinite}@keyframes cb-anneau{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
.cb-lune{transform-origin:72px 28px;animation:cb-orbite 6s linear infinite}@keyframes cb-orbite{to{transform:rotate(360deg)}}
.cb-brume{animation:cb-brume 6s ease-in-out infinite}@keyframes cb-brume{50%{transform:translateX(22px)}}
.cb-lueur,.cb-cristal{animation:cb-scint 1.8s ease-in-out infinite}
.cb-nom{position:absolute;left:7%;top:7%;text-align:left;line-height:1.05;max-width:58%}.cb-nom b{display:block;font-size:calc(var(--t) * .16);color:#FFD166}.cb-nom small{font-size:calc(var(--t) * .095);color:#F4EEDF;opacity:.85}
.cb-info{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,#8E2424,#C2412D);color:#fff;line-height:1.05}
.cb-info b{font-size:calc(var(--t) * .2)}.cb-info span{font-size:calc(var(--t) * .13);font-weight:600}.cb-info small{font-size:calc(var(--t) * .1);opacity:.9;margin-top:3px}
.cb-pdf{background:linear-gradient(135deg,#B8882F,#D4A24C);color:#2A1A10}.cb-livre{font-size:calc(var(--t) * .26)!important}
.cb-legende{position:absolute;left:-14px;right:-14px;bottom:-26px;text-align:center;font-size:11px;font-weight:700;color:#8E2424;white-space:nowrap}
.av-bonus{padding-left:128px}
@media (max-width:1100px){.cube-aibo{--t:76px}.av-bonus{padding-left:96px}}
@media (max-width:860px){.cube-aibo{--t:58px;left:4px;bottom:6px}.cb-legende{display:none}.av-bonus{padding-left:0}.cb-nom small{display:none}}
@media (prefers-reduced-motion:reduce){.cb-robot,.cb-aibo,.cb-et,.cb-anneau,.cb-lune,.cb-brume,.cb-lueur,.cb-cristal{animation:none}}
/* Aibō-sapin et cadeau un peu décalés vers la droite, pour laisser respirer le cube */
.av-sapin{transform:translateX(9%)}.av-bonus{padding-left:150px}
@media (max-width:1100px){.av-bonus{padding-left:110px}}
@media (max-width:860px){.av-sapin{transform:none}.av-bonus{padding-left:0}}
/* ---------- partage ---------- */
.av-partage{display:flex;align-items:center;gap:5px;padding-right:10px;margin-right:2px;border-right:1px solid rgba(255,255,255,.18)}
.av-sh{width:34px;height:34px;border-radius:50%;transition:background .2s,color .2s,transform .2s}.av-sh svg{width:17px;height:17px}
.av-sh:hover,.av-sh:focus-visible{background:var(--marque);border-color:var(--marque);color:#fff;transform:translateY(-1px)}
.av-sh-natif{display:none}
@media (max-width:1180px){.av-sh-mail{display:none}}
@media (max-width:860px){.av-partage .av-sh{display:none}.av-partage .av-sh-natif,.av-partage .av-sh-whatsapp{display:inline-flex}.av-partage{border:0;padding:0}}
/* ---------- téléphone : une barre allégée, puis Aibō, le cube et le cadeau sur une ligne ---------- */
@media (max-width:560px){
	.av-compte .av-c-nom{display:inline-flex!important}.av-compte .av-c-n,.av-tete .av-compte .av-deco{display:none}
	.av-tete{flex-wrap:nowrap;gap:6px;padding:8px 10px}
	.av-marque strong{font-size:15px;white-space:normal;line-height:1.15}
	.av-p-compte,.av-p-prog,.av-compte .av-plein-btn,.av-sh-whatsapp,.av-b-musique,.av-b-son,.av-b-plein,.av-partage{border:0}
	.av-p-compte,.av-p-prog,.av-compte .av-plein-btn,.av-sh-whatsapp,.av-b-musique,.av-b-son,.av-b-plein{display:none!important}
	.av-compte a{padding:6px 10px;font-size:12.5px}
	.av-ib{width:34px;height:34px}.av-partage{padding:0;margin:0}
	.av-main{grid-template-rows:auto 1fr;gap:8px;padding:4px 10px 10px}
	.av-scene{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"bulle bulle bulle" "cube sapin cadeau";align-items:end;gap:6px 8px}
	.av-bulle{grid-area:bulle;max-width:none;width:100%;margin:0;font-size:13px;padding:9px 12px}
	.av-bulle br{display:none}
	.av-sapin{grid-area:sapin;height:15vh;justify-self:center;transform:none}
	.cube-aibo{grid-area:cube;position:relative;left:auto;bottom:auto;--t:62px;margin:0 0 6px 6px}
	.av-bonus{grid-area:cadeau;position:static;padding:0;margin:0;justify-content:flex-end}
	.av-bonus .av-teaser{padding:4px 8px 4px 4px}.av-bonus .av-teaser b{font-size:11.5px;max-width:84px}
	.av-teaser .a3d{--k:.22!important}
	.av-portes{gap:6px;padding:8px}
	.av-num{font-size:15px}.av-etat{font-size:9px}
}
.av .av-c-nom{border:0;background:transparent;color:var(--neige);font-weight:600;cursor:pointer;padding:6px 8px}.av .av-c-nom:hover{text-decoration:underline}
.av .aibo-msg-bloc h3{margin:0 0 6px;font-size:15px}.av .aibo-msg-case{display:flex;gap:8px;align-items:flex-start;font-size:14px;cursor:pointer}
.av .aibo-msg-case input{margin-top:3px;width:18px;height:18px;accent-color:#C2412D}.av .aibo-msg-note{margin:6px 0 0;font-size:12.5px;color:#6A5A45}.av .aibo-msg-retour{margin:4px 0 0;font-size:12.5px;font-weight:600;color:#2E7D32}
