* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; height: 100%; background: #161310; }
:root { --acc: #4be28e; --acc-rgb: 75,226,142; }
body { color: #ece7e2; font-family: Geist, system-ui, sans-serif; }
input::placeholder { color: #6f655d; opacity: 1; }
input { caret-color: #ece7e2; }
/* Autofill navigateur : garder fond sombre + texte clair, sans repeindre le champ (motif éprouvé,
   box-shadow inset large). Pas de hack `transition` (qui figeait le rendu → champ blanc/vide). */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
  -webkit-text-fill-color: #ece7e2 !important;
  -webkit-box-shadow: 0 0 0 1000px #130d0b inset !important;
  caret-color: #ece7e2 !important;
}
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #130d0b; }
::-webkit-scrollbar-thumb { background: #322a25; border-radius: 6px; border: 2px solid #130d0b; }

@keyframes radarSpin { to { transform: rotate(360deg); } }
@keyframes pulseDot { 0%,100% { opacity: 1; } 50% { opacity: 0.35; } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes blipReveal { 0% { opacity: 1; } 4% { opacity: 1; } 32% { opacity: 0.82; } 72% { opacity: 0.12; } 100% { opacity: 0.08; } }
@keyframes blipPing { 0% { transform: translate(-50%,-50%) scale(0.5); opacity: 0.9; } 14% { opacity: 0.5; } 34% { transform: translate(-50%,-50%) scale(2.8); opacity: 0; } 100% { opacity: 0; } }
@keyframes blipFlash { 0% { box-shadow: 0 0 14px 3px var(--acc); } 12% { box-shadow: 0 0 8px 1px var(--acc); } 60% { box-shadow: 0 0 4px 0 var(--acc); } 100% { box-shadow: 0 0 3px 0 var(--acc); } }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes focusPulse { 0%,100% { box-shadow: 0 0 0 3px rgba(var(--acc-rgb),0.05); } 50% { box-shadow: 0 0 0 4px rgba(var(--acc-rgb),0.16); } }
@keyframes aurora { 0% { transform: translate(-6%,-4%) scale(1); } 50% { transform: translate(6%,7%) scale(1.14); } 100% { transform: translate(-6%,-4%) scale(1); } }
[data-stagger] > * { opacity: 0; animation: fadeUp 0.5s ease forwards; }
[data-stagger] > *:nth-child(1) { animation-delay: .04s; } [data-stagger] > *:nth-child(2) { animation-delay: .09s; }
[data-stagger] > *:nth-child(3) { animation-delay: .14s; } [data-stagger] > *:nth-child(4) { animation-delay: .19s; }
[data-stagger] > *:nth-child(5) { animation-delay: .24s; } [data-stagger] > *:nth-child(6) { animation-delay: .29s; }
[data-stagger] > *:nth-child(7) { animation-delay: .34s; } [data-stagger] > *:nth-child(8) { animation-delay: .39s; }
[data-stagger] > *:nth-child(n+9) { animation-delay: .44s; }

.lg-wrap { display: flex; height: 100vh; width: 100vw; background: #161310; overflow: hidden; }

/* ── panneau gauche (héro radar) ── */
.lg-aside {
  position: relative; width: 46%; max-width: 680px; flex: none;
  background: linear-gradient(165deg, #16100d 0%, #110c0a 55%, #0d0908 100%); border-right: 1px solid #241d1b;
  display: flex; flex-direction: column; padding: 52px 56px; overflow: hidden;
  background-image: radial-gradient(rgba(250,242,232,0.04) 1.1px, transparent 1.6px), radial-gradient(120% 80% at 18% 0%, rgba(160,122,86,0.14), transparent 62%);
  background-size: 15px 15px, 100% 100%;
}
.lg-aside .glow { position: absolute; inset: -12%; pointer-events: none; background: radial-gradient(42% 42% at 30% 20%, rgba(var(--acc-rgb),0.10), transparent 70%); filter: blur(40px); animation: aurora 22s ease-in-out infinite; }
.lg-aside .vignette { position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 160px 40px rgba(8,5,4,0.7); }
.lg-radar { position: absolute; top: -150px; right: -150px; width: 560px; height: 560px; pointer-events: none; opacity: 0.6; }
.lg-radar .ring { position: absolute; border-radius: 50%; }
.lg-radar .sweep { position: absolute; inset: 0; border-radius: 50%; animation: radarSpin 11s linear infinite; background: conic-gradient(from 0deg, rgba(var(--acc-rgb),0.16), rgba(var(--acc-rgb),0.03) 16%, transparent 30%); }
.lg-radar .center { position: absolute; left: 50%; top: 50%; width: 7px; height: 7px; margin: -3.5px 0 0 -3.5px; border-radius: 50%; background: var(--acc); box-shadow: 0 0 12px 2px rgba(var(--acc-rgb),0.7); animation: pulseDot 2.6s ease-in-out infinite; }
.lg-brand { position: relative; display: flex; align-items: center; gap: 11px; }
.lg-brand .mark { width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; color: var(--acc); }
.lg-brand .name { font-family: 'JetBrains Mono', monospace; font-weight: 700; font-size: 18px; letter-spacing: 0.01em; }
.lg-brand .name .a { color: var(--acc); } .lg-brand .name .b { color: #6f655d; }
.lg-grow { flex: 1; }
.lg-hero { position: relative; max-width: 466px; }
.lg-pill { display: inline-flex; align-items: center; gap: 9px; padding: 6px 13px 6px 9px; margin-bottom: 28px; border: 1px solid rgba(var(--acc-rgb),0.22); border-radius: 100px; background: rgba(var(--acc-rgb),0.04); }
.lg-pill .d { width: 5px; height: 5px; border-radius: 50%; background: var(--acc); box-shadow: 0 0 8px 1px rgba(var(--acc-rgb),0.6); }
.lg-pill span:last-child { font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.22em; color: #c0b1a4; text-transform: uppercase; }
.lg-hero h1 { margin: 0; font-size: 46px; line-height: 1.06; font-weight: 600; letter-spacing: -0.035em; color: #f8f4ef; }
.lg-hero h1 .grad { background: linear-gradient(96deg, var(--acc), #8fe9b6); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.lg-hero p { margin: 24px 0 0; font-size: 15px; line-height: 1.68; color: #a1948a; max-width: 410px; }
.lg-stats { position: relative; display: flex; align-items: stretch; padding-top: 28px; border-top: 1px solid #241d1b; }
.lg-stat { display: flex; flex-direction: column; gap: 5px; }
.lg-stat .v { font-family: 'JetBrains Mono', monospace; font-size: 25px; font-weight: 600; letter-spacing: -0.01em; color: #f0e9e2; }
.lg-stat .v.acc { color: var(--acc); }
.lg-stat .k { font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.14em; color: #7a6f66; }
.lg-stats .sep { width: 1px; background: #241d1b; }

/* ── carte centrée (formulaire) ── */
.lg-main { position: relative; z-index: 2; width: 100%; display: flex; align-items: center; justify-content: center; }
.lg-card {
  position: relative; z-index: 1; width: 100%; max-width: 430px;
  background: linear-gradient(180deg, rgba(28,23,20,0.86), rgba(19,15,12,0.92));
  backdrop-filter: blur(16px) saturate(1.1); -webkit-backdrop-filter: blur(16px) saturate(1.1);
  border: 1px solid rgba(250,242,232,0.09); border-radius: 20px; padding: 38px 36px;
  box-shadow: 0 40px 90px -28px rgba(0,0,0,0.8), 0 0 70px -30px rgba(var(--acc-rgb),0.22), 0 1px 0 rgba(250,242,232,0.05) inset;
}
.lg-view { display: none; }
.lg-view.active { display: block; }
.lg-eyebrow { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: 0.12em; color: var(--acc); }
.lg-card h2 { margin: 10px 0 7px; font-size: 27px; font-weight: 600; letter-spacing: -0.015em; color: #f3eee9; }
.lg-card .sub { margin: 0 0 26px; font-size: 13.5px; line-height: 1.55; color: #8f8379; }
.lg-oauth { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; height: 46px; background: #1e1a17; border: 1px solid #342c27; border-radius: 9px; color: #e7ddd3; font-family: Geist, sans-serif; font-size: 14px; font-weight: 500; cursor: pointer; transition: background .12s, border-color .12s; }
.lg-oauth:hover { background: #241e1b; border-color: #463b34; }
.lg-or { display: flex; align-items: center; gap: 14px; margin: 22px 0; }
.lg-or span:first-child, .lg-or span:last-child { flex: 1; height: 1px; background: #2c2421; }
.lg-or .t { flex: none; font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 0.08em; color: #6f655d; }
.lg-label { display: block; font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: 0.06em; color: #b8aca1; margin-bottom: 8px; }
.lg-label.row { display: flex; align-items: center; justify-content: space-between; }
.lg-field { display: flex; align-items: center; gap: 10px; height: 46px; padding: 0 14px; background: #130d0b; border: 1px solid #2c2421; border-radius: 9px; margin-bottom: 18px; transition: border-color .12s; }
.lg-field.tight { margin-bottom: 16px; }
.lg-field.nogap { margin-bottom: 10px; }
/* Focus STATIQUE (aucune animation) : on ne redéfinit PAS `animation` sur le focus, pour ne pas
   relancer `fadeUp` ni faire clignoter le champ ; l'opacité reste tenue à 1 (par `forwards`), et
   opacity:1 est conservé par sécurité. Halo de focus fixe au lieu de l'ancien `focusPulse`. */
.lg-field:focus-within { border-color: rgba(var(--acc-rgb),0.6); box-shadow: 0 0 0 3px rgba(var(--acc-rgb),0.12); opacity: 1; }
.lg-field input { flex: 1; min-width: 0; background: transparent; border: none; outline: none; color: #ece7e2; font-family: Geist, sans-serif; font-size: 14px; }
.lg-field .eye { cursor: pointer; color: #6f655d; display: flex; transition: color .12s; }
.lg-field .eye:hover { color: #cdbfb4; }
.lg-pw-meter { display: flex; align-items: center; gap: 9px; margin-bottom: 22px; }
.lg-pw-bars { flex: 1; display: flex; gap: 5px; }
.lg-pw-bars span { flex: 1; height: 4px; border-radius: 2px; background: #2a2420; transition: background .2s; }
.lg-pw-lbl { font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 0.04em; color: #6f655d; min-width: 54px; text-align: right; }
.lg-cb { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; margin-bottom: 24px; user-select: none; }
.lg-cb.center { align-items: center; }
.lg-cb .box { width: 18px; height: 18px; flex: none; margin-top: 1px; border-radius: 5px; border: 1px solid #463b34; background: transparent; display: flex; align-items: center; justify-content: center; transition: background .12s, border-color .12s; }
.lg-cb.on .box { border-color: var(--acc); background: var(--acc); }
.lg-cb .box svg { display: none; }
.lg-cb.on .box svg { display: block; }
.lg-cb .txt { font-size: 13px; line-height: 1.5; color: #9a8d83; }
.lg-cb .txt b { color: #cdbfb4; font-weight: 500; }
.lg-cb .txt a { color: var(--acc); font-weight: 500; text-decoration: none; }
.lg-cb .txt a:hover { text-decoration: underline; }
.lg-submit { display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; height: 48px; background: var(--acc); border: none; border-radius: 9px; color: #0e1a12; font-family: Geist, sans-serif; font-size: 14.5px; font-weight: 600; cursor: pointer; box-shadow: 0 6px 22px rgba(var(--acc-rgb),0.22); transition: filter .12s; }
.lg-submit:hover { filter: brightness(1.06); }
.lg-submit .busy, .lg-submit .done { display: none; align-items: center; gap: 10px; }
.lg-submit.is-busy .idle, .lg-submit.is-done .idle { display: none; }
.lg-submit.is-busy .busy { display: inline-flex; }
.lg-submit.is-done .done { display: inline-flex; }
.lg-submit .idle { display: inline-flex; align-items: center; gap: 9px; }
.lg-submit .spin { width: 16px; height: 16px; border-radius: 50%; border: 2px solid rgba(14,26,18,0.3); border-top-color: #0e1a12; animation: spin 0.7s linear infinite; }
.lg-forgot { font-size: 12px; color: var(--acc); cursor: pointer; }
.lg-forgot:hover { text-decoration: underline; }
.lg-foot { margin: 24px 0 0; text-align: center; font-size: 13.5px; color: #8f8379; }
.lg-link { color: var(--acc); font-weight: 500; cursor: pointer; }
.lg-link:hover { text-decoration: underline; }
.lg-copy { margin: 28px 0 0; padding-top: 20px; border-top: 1px solid #241d1b; text-align: center; font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.1em; color: #5c534c; }
.lg-sent { text-align: center; animation: fadeUp 0.4s ease both; }
.lg-sent .ico { width: 64px; height: 64px; margin: 0 auto 22px; border-radius: 16px; background: rgba(var(--acc-rgb),0.12); border: 1px solid rgba(var(--acc-rgb),0.3); display: flex; align-items: center; justify-content: center; color: var(--acc); }

/* ════════════ Layout split : formulaire (gauche) + vitrine outils (droite) ════════════ */
.lg-split { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); grid-template-rows: minmax(100vh, auto); grid-template-rows: minmax(100dvh, auto); }
/* vitrine à GAUCHE, formulaire à DROITE */
.lg-showcase { order: 1; }
.lg-left { order: 2; }

/* ── colonne gauche ── */
.lg-left {
  position: relative; display: flex; flex-direction: column; overflow: hidden;
  padding: 30px 52px 40px; background: #141009;
  background-image: radial-gradient(rgba(250,242,232,0.032) 1.1px, transparent 1.7px);
  background-size: 15px 15px;
}
.lg-left__glow { position: absolute; left: -22%; top: -12%; width: 560px; height: 560px; pointer-events: none; background: radial-gradient(circle, rgba(var(--acc-rgb),0.08), transparent 62%); filter: blur(52px); animation: aurora 26s ease-in-out infinite; }
.lg-left::before { content: ''; position: absolute; left: 50%; bottom: -12%; width: 620px; height: 320px; transform: translateX(-50%); pointer-events: none; z-index: 0; background: radial-gradient(circle at 50% 100%, rgba(var(--acc-rgb),0.09), transparent 60%); filter: blur(34px); }
.lg-brand { position: relative; z-index: 1; align-self: flex-start; text-decoration: none; }
/* Logo formulaire : masqué en desktop (le logo est sur la vitrine), affiché en mobile quand la vitrine disparaît */
.lg-brand--form { display: none; }
.lg-main { position: relative; z-index: 1; flex: 1; display: flex; align-items: center; justify-content: center; padding: 24px 0; }

/* carte formulaire — aérée, posée à même la colonne (plus de chrome flottant) */
.lg-card { position: relative; z-index: 1; width: 100%; max-width: 470px; background: transparent; border: none; border-radius: 0; padding: 0; box-shadow: none; backdrop-filter: none; }
.lg-card h2 { font-size: 30px; }
.lg-card .sub { margin-bottom: 28px; font-size: 14px; }
.lg-oauth { height: 48px; }
.lg-field { height: 48px; }
.lg-submit { height: 50px; }

/* ── colonne droite : vitrine outils ── */
.lg-showcase {
  position: relative; overflow: hidden; border-right: 1px solid #241d1b;
  background: radial-gradient(90% 60% at 28% 10%, rgba(var(--acc-rgb),0.15), transparent 55%), linear-gradient(150deg, #17110d 0%, #120d0a 60%, #0e0a08 100%);
}
.lg-showcase__bg { position: absolute; inset: 0; background-image: radial-gradient(rgba(250,242,232,0.04) 1.1px, transparent 1.6px); background-size: 16px 16px; opacity: 0.55; }
.lg-showcase__glow { position: absolute; right: -14%; top: 6%; width: 620px; height: 620px; border-radius: 50%; background: radial-gradient(circle, rgba(var(--acc-rgb),0.12), transparent 60%); filter: blur(52px); animation: aurora 24s ease-in-out infinite; }
/* radar décoratif (derrière le montage) */
.lg-sc-radar { position: absolute; left: 50%; top: 50%; width: 660px; height: 660px; transform: translate(-50%,-50%); opacity: 0.42; z-index: 0; pointer-events: none; }
.lg-sc-radar .r { position: absolute; border-radius: 50%; border: 1px solid rgba(250,242,232,0.06); }
.lg-sc-radar .r.acc { border-color: rgba(var(--acc-rgb),0.18); }
.lg-sc-radar .sweep { position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(from 0deg, rgba(var(--acc-rgb),0.14), rgba(var(--acc-rgb),0.02) 18%, transparent 32%); animation: radarSpin 13s linear infinite; }
.lg-sc-radar .dot { position: absolute; left: 50%; top: 50%; width: 6px; height: 6px; margin: -3px; border-radius: 50%; background: var(--acc); box-shadow: 0 0 10px 2px rgba(var(--acc-rgb),0.6); animation: pulseDot 2.6s ease-in-out infinite; }
.lg-sc-p { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--acc); box-shadow: 0 0 8px var(--acc); z-index: 0; animation: pulseDot 5s ease-in-out infinite; }
.lg-sc-p.p1 { left: 13%; top: 19%; opacity: .5; }
.lg-sc-p.p2 { left: 88%; top: 64%; opacity: .4; animation-delay: 1.6s; }
.lg-sc-p.p3 { left: 30%; top: 85%; opacity: .35; animation-delay: 2.6s; }

/* voile lisibilité + fondu vers la colonne formulaire */
.lg-showcase::after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: radial-gradient(58% 32% at 50% 104%, rgba(var(--acc-rgb),0.17), transparent 62%), linear-gradient(270deg, rgba(14,10,8,0.5), transparent 24%), linear-gradient(0deg, rgba(14,10,8,0.5), transparent 26%); }

/* montage de cartes-outils (parallax via variables --px/--py, rotation via --rot) */
.lg-montage { position: absolute; inset: 0; transform: scale(1.02); }
.lm-card {
  position: absolute; border-radius: 15px; border: 1px solid rgba(255,255,255,0.08);
  background: linear-gradient(158deg, rgba(40,34,28,0.74), rgba(19,15,12,0.64));
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 34px 80px -26px rgba(0,0,0,0.72);
  transform: rotate(var(--rot,0deg));
  animation: lmFloat 8s ease-in-out infinite;
}
/* légère lévitation (la rotation --rot est conservée dans les keyframes) */
@keyframes lmFloat {
  0%, 100% { transform: translateY(0) rotate(var(--rot,0deg)); }
  50%      { transform: translateY(-10px) rotate(var(--rot,0deg)); }
}
.lm-risk  { animation-delay: 0s;   }
.lm-radar { animation-delay: 1.3s; }
.lm-biais { animation-delay: .6s;  }
.lm-cot   { animation-delay: 2s;   }
.pos { color: var(--acc); } .neg { color: #e8776b; }

/* Fiche / Biais (centre) */
.lm-biais { width: 344px; padding: 22px; left: 50%; top: 45%; margin: -140px 0 0 -172px; z-index: 3; }
.lm-b-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.lm-eye { font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 0.1em; color: #8f8379; }
.lm-live { display: inline-flex; align-items: center; gap: 6px; font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.08em; color: var(--acc); }
.lm-live i { width: 5px; height: 5px; border-radius: 50%; background: var(--acc); box-shadow: 0 0 6px var(--acc); animation: pulseDot 1.8s ease-in-out infinite; }
.lm-b-score { display: flex; align-items: baseline; gap: 11px; margin-bottom: 12px; }
.lm-val { font-size: 40px; font-weight: 600; line-height: 1; letter-spacing: -0.01em; }
.lm-tag { font-family: 'JetBrains Mono', monospace; font-size: 10px; font-weight: 700; letter-spacing: 0.08em; color: var(--acc); }
.lm-gauge { position: relative; height: 5px; border-radius: 3px; background: rgba(255,255,255,0.06); margin-bottom: 16px; }
.lm-gauge b { position: absolute; top: 0; bottom: 0; border-radius: 3px; background: linear-gradient(90deg, rgba(var(--acc-rgb),0.45), var(--acc)); }
.lm-b-rows { display: flex; flex-direction: column; gap: 10px; }
.lm-fac { display: grid; grid-template-columns: 78px 1fr; align-items: center; gap: 12px; }
.lm-fac > span { font-family: 'JetBrains Mono', monospace; font-size: 9.5px; letter-spacing: 0.04em; color: #9a8d83; }
.lm-fac i { position: relative; height: 5px; border-radius: 3px; background: rgba(255,255,255,0.06); }
.lm-fac i::before { content: ''; position: absolute; left: 50%; top: -1px; bottom: -1px; width: 1px; background: rgba(255,255,255,0.12); }
.lm-fac b { position: absolute; top: 0; bottom: 0; border-radius: 3px; }
.lm-fac b.pos { background: var(--acc); box-shadow: 0 0 6px rgba(var(--acc-rgb),0.4); }

/* Radar Matrix */
.lm-radar { width: 270px; padding: 17px 18px; z-index: 2; }
.lm-r-head { display: flex; justify-content: space-between; align-items: center; font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.1em; color: #8f8379; margin-bottom: 10px; }
.lm-r-n { display: inline-flex; align-items: center; gap: 5px; color: var(--acc); }
.lm-r-n i { width: 5px; height: 5px; border-radius: 50%; background: var(--acc); box-shadow: 0 0 6px var(--acc); }
.lm-r-row { display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 8px; padding: 7px 0; }
.lm-r-row + .lm-r-row { border-top: 1px solid rgba(255,255,255,0.05); }
.lm-badge { font-family: 'JetBrains Mono', monospace; font-size: 8px; padding: 2px 4px; border-radius: 3px; background: rgba(255,255,255,0.07); color: #9a8d83; letter-spacing: 0.04em; }
.lm-r-row b { font-family: 'JetBrains Mono', monospace; font-size: 11.5px; font-weight: 600; color: #e7ddd3; }
.lm-spark { width: 44px; height: 15px; }
.lm-spark polyline { fill: none; stroke: var(--acc); stroke-width: 1.6; }
.lm-spark.neg polyline { stroke: #e8776b; }
.lm-sc { font-family: 'JetBrains Mono', monospace; font-size: 12px; font-weight: 700; }

/* Risk On/Off (mini) */
.lm-risk { width: 172px; padding: 17px 19px; z-index: 2; }
.lm-risk-lbl { font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.1em; color: #8f8379; }
.lm-risk-v { font-size: 34px; font-weight: 600; line-height: 1; margin: 9px 0 7px; letter-spacing: -0.01em; }
.lm-risk-tag { display: inline-block; font-family: 'JetBrains Mono', monospace; font-size: 9px; font-weight: 700; letter-spacing: 0.06em; color: var(--acc); padding: 3px 8px; border: 1px solid rgba(var(--acc-rgb),0.35); border-radius: 6px; background: rgba(var(--acc-rgb),0.08); }

/* COT · bars long/short */
.lm-cot { width: 262px; padding: 17px 18px; z-index: 2; }
.lm-cot-head { font-family: 'JetBrains Mono', monospace; font-size: 9px; letter-spacing: 0.1em; color: #8f8379; margin-bottom: 11px; }
.lm-cot-row { display: grid; grid-template-columns: 32px 1fr 36px; align-items: center; gap: 10px; padding: 5px 0; }
.lm-cot-row .k { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; color: #cdbfb4; }
.lm-cot-bar { height: 7px; border-radius: 4px; background: #e8776b; overflow: hidden; }
.lm-cot-bar b { display: block; height: 100%; border-radius: 4px; background: var(--acc); }
.lm-cot-row .v { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; font-weight: 700; color: var(--acc); text-align: right; }

/* Scène à taille FIXE, centrée dans la vitrine : garantit des proportions et des chevauchements
   identiques quelle que soit la largeur de l'écran (les cartes ont une largeur en px). */
.lg-showcase__stage { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 600px; max-width: calc(100% - 40px); height: 620px; max-height: 94%; z-index: 2; }
.lg-showcase__brand { position: absolute; top: 0; left: 0; z-index: 5; text-decoration: none; }
.lg-showcase__cap { position: absolute; left: 0; right: 0; bottom: 0; z-index: 4; text-align: left; }
.lg-showcase__line { margin: 0; font-size: 28px; font-weight: 600; line-height: 1.34; letter-spacing: -0.015em; color: #f3eee9; max-width: 400px; }
.lg-showcase__line b { color: var(--acc); font-weight: 600; }

/* responsive : vitrine cachée sous 960px → formulaire pleine largeur (aéré) */
@media (max-width: 960px) {
  .lg-split { grid-template-columns: 1fr; }
  .lg-showcase { display: none; }
  .lg-left { padding: 26px 24px 44px; }
  .lg-brand--form { display: inline-flex; margin-bottom: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .lg-left__glow, .lg-showcase__glow, .lm-live i, .lm-card, .lg-sc-radar .sweep, .lg-sc-radar .dot, .lg-sc-p { animation: none; }
}

/* ── Logo officiel MacroVisionPRO ── */
@keyframes mvpRadarSpin { to { transform: rotate(360deg); } }
.mvp-logo { display: inline-flex; align-items: center; gap: 13px; text-decoration: none; }
.mvp-logo__mark { position: relative; width: 40px; height: 40px; flex: none; border-radius: 50%; border: 1.5px solid rgba(var(--acc-rgb, 75,226,142), 0.3); overflow: hidden; }
.mvp-logo__mark::before { content: ""; position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(from 0deg, rgba(var(--acc-rgb, 75,226,142), 0.55), transparent 32%); animation: mvpRadarSpin 4s linear infinite; }
.mvp-logo__mark::after { content: ""; position: absolute; left: 50%; top: 50%; width: 5px; height: 5px; margin: -2.5px; border-radius: 50%; background: var(--acc, #4be28e); }
.mvp-logo__word { font-family: Geist, system-ui, sans-serif; font-weight: 600; font-size: 28px; letter-spacing: -0.03em; line-height: 1; white-space: nowrap; }
.mvp-logo__word b { font-weight: 600; color: var(--acc, #4be28e); }
.mvp-logo__word i { font-weight: 600; font-style: normal; color: #f3eee9; }
@media (prefers-reduced-motion: reduce) { .mvp-logo__mark::before { animation: none; } }
