/* ---- Bouton flottant ---- */
.crt-sw{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:9999;display:inline-flex;align-items:center;gap:8px;height:38px;margin:0;padding:0 12px 0 8px;background:#fff;border:0;border-radius:12px;box-shadow:0 3px 12px rgba(0,0,0,.18);cursor:pointer;font:600 11px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;letter-spacing:.1em;color:#222;transition:transform .15s,box-shadow .15s}
.crt-sw:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.22)}
.crt-sw:focus-visible{outline:2px solid #b8893a;outline-offset:2px}
.crt-sw .crt-caret{width:6px;height:6px;border-right:1.5px solid #888;border-bottom:1.5px solid #888;transform:rotate(-135deg);margin:3px 0 0 2px}
.crt-flag{display:inline-block;width:24px;height:16px;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.08);flex:none;vertical-align:middle}
.crt-flag svg{display:block;width:100%;height:100%}

/* ---- Voile et panneau ---- */
.crt-panel[hidden],.crt-veil[hidden],.crt-sugg[hidden],.crt-lang[hidden]{display:none !important}
.crt-lock{overflow:hidden}
.crt-veil{position:fixed;inset:0;background:rgba(8,14,18,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10000;opacity:0;transition:opacity .22s}
.crt-veil.is-on{opacity:1}
.crt-panel{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) translateY(14px);width:min(760px,calc(100vw - 32px));max-height:min(86vh,720px);background:#fff;color:#1a1a1a;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.35);z-index:10001;opacity:0;transition:opacity .22s,transform .26s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;text-align:left;box-sizing:border-box}
.crt-panel.is-on{opacity:1;transform:translate(-50%,-50%)}
.crt-panel[dir=rtl]{text-align:right}
.crt-ph{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:26px 28px 16px}
.crt-ph h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:26px;line-height:1.2;margin:0 0 4px;color:inherit;letter-spacing:0;text-transform:none}
.crt-ph p{margin:0;color:#6b6f73;font-size:13px;line-height:1.4}
.crt-x{width:36px;height:36px;border:1px solid #e8e4dc;border-radius:50%;background:transparent;color:#6b6f73;font-size:20px;line-height:1;cursor:pointer;flex:none;padding:0}
.crt-x:hover{border-color:#b8893a;color:#b8893a}
.crt-search{margin:0 28px 14px;display:flex;align-items:center;gap:10px;border:1px solid #e8e4dc;border-radius:10px;padding:0 12px;background:#fff}
.crt-search input{flex:1;border:0;background:transparent;padding:11px 0;font:14px -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#1a1a1a;outline:0;min-width:0;box-shadow:none;margin:0;height:auto}
.crt-search svg{width:16px;height:16px;stroke:#6b6f73;fill:none;stroke-width:2;flex:none}
.crt-grid{overflow:auto;padding:4px 20px 22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;scrollbar-width:thin}
.crt-lang{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:#1a1a1a;text-decoration:none;box-shadow:none}
.crt-panel[dir=rtl] .crt-lang{grid-template-columns:1fr 30px}
.crt-lang .crt-flag{grid-row:1/3;width:30px;height:20px}
.crt-panel[dir=rtl] .crt-lang .crt-flag{grid-column:2}
.crt-lang .crt-nm{font-size:14px;font-weight:600;line-height:1.15}
.crt-lang .crt-fr{font-size:11px;color:#6b6f73;letter-spacing:.04em}
.crt-lang:hover{background:#f3ead9;color:#1a1a1a}
.crt-lang.is-current{border-color:#b8893a;background:#f3ead9}
.crt-lang.is-current .crt-nm::after{content:" ✓";color:#b8893a}
.crt-lang:focus-visible{outline:2px solid #b8893a;outline-offset:1px}
.crt-pf{padding:12px 28px 16px;border-top:1px solid #e8e4dc;font-size:11px;color:#6b6f73;letter-spacing:.06em}
@media (max-width:520px){
  .crt-panel{width:100vw;max-width:100vw;max-height:88vh;top:auto;bottom:0;left:0;transform:translateY(20px);border-radius:16px 16px 0 0}
  .crt-panel.is-on{transform:none}
  .crt-ph{padding:20px 18px 12px}.crt-search{margin:0 18px 12px}.crt-grid{padding:4px 12px 22px;grid-template-columns:repeat(2,1fr)}
  .crt-pf{padding:12px 18px calc(14px + env(safe-area-inset-bottom,0px))}
}

/* ---- Barre « ce site existe aussi en … » ---- */
.crt-sugg{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translateX(-50%) translateY(12px);z-index:9998;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 32px);background:#fff;color:#1a1a1a;border-radius:14px;box-shadow:0 12px 40px rgba(0,0,0,.3);padding:12px 12px 12px 16px;opacity:0;transition:opacity .3s,transform .35s cubic-bezier(.2,.8,.2,1);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;box-sizing:border-box}
.crt-sugg.is-on{opacity:1;transform:translateX(-50%)}
.crt-sugg[dir=rtl]{direction:rtl;padding:12px 16px 12px 12px}
.crt-sugg .crt-flag{width:30px;height:20px}
.crt-sugg-text{font-size:14px;line-height:1.3}
.crt-sugg-text small{display:block;font-size:11px;color:#6b6f73;margin-top:2px}
.crt-sugg-go{display:inline-block;border:0;background:#b8893a;color:#fff !important;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:10px 14px;border-radius:9px;text-decoration:none;white-space:nowrap;box-shadow:none}
.crt-sugg-go:hover{background:#a3772f;color:#fff}
.crt-sugg-no{border:0;background:transparent;color:#6b6f73;font-size:20px;line-height:1;cursor:pointer;padding:4px 6px}
@media (max-width:700px){.crt-sugg{left:12px;right:12px;bottom:calc(62px + env(safe-area-inset-bottom,0px));transform:translateY(12px);max-width:none;flex-wrap:wrap}.crt-sugg.is-on{transform:none}.crt-sugg-go{flex:1;text-align:center}}
@media (prefers-reduced-motion:reduce){.crt-veil,.crt-panel,.crt-sugg,.crt-sw{transition:none}}

/* ---- Liste de drapeaux via le shortcode [traduction_langues] ---- */
.crt-inline{display:inline-flex;gap:8px;margin:0;padding:0;list-style:none;align-items:center}
.crt-inline li{margin:0;padding:0}
.crt-inline a{display:block;opacity:.75;transition:opacity .15s}
.crt-inline a:hover,.crt-inline li.crt-active a{opacity:1}
