/* KAVEVA GROWTH — la démonstration (/demo) : noir, vert profond, turquoise ; boutons propres, texte sur une ligne */
@font-face{font-family:"DM Sans";font-weight:400;font-display:swap;src:url(/fonts/dm-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:500;font-display:swap;src:url(/fonts/dm-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:700;font-display:swap;src:url(/fonts/dm-sans-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Manrope";font-weight:800;font-display:swap;src:url(/fonts/manrope-latin-800-normal.woff2) format("woff2")}
:root{--bg:#07110f;--deep:#0f3b2e;--card:#0d1a17;--line:#1f3d33;--line2:#2b5446;--txt:#eef6f2;--sub:#a9c0b7;--ka:#2af2b1;--warn:#ffd166;--ko:#ff8a7a;color-scheme:dark}
*{box-sizing:border-box}
html,body{margin:0}
body{background:radial-gradient(900px 520px at 85% -10%,#0f3b2e 0%,rgba(7,17,15,0) 70%),radial-gradient(700px 420px at -10% 110%,#0b2a21 0%,rgba(7,17,15,0) 70%),var(--bg);background-attachment:fixed;color:var(--txt);font:16px/1.5 "DM Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;min-height:100vh}
.dm{max-width:560px;margin:0 auto;padding:14px 16px 28px}
.dm-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}
.dm-wm{font:800 20px Manrope,system-ui,sans-serif;letter-spacing:.12em;text-decoration:none}.dm-wm .ka{color:#4afcfc;text-shadow:0 0 14px rgba(74,252,252,.45)}.dm-wm .eva{color:#fff}
.dm-priv{font-size:12px;color:var(--sub);border:1px solid var(--line);border-radius:99px;padding:4px 10px;white-space:nowrap}
.dm-hero{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}
.dm-av{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--ka);flex:none;box-shadow:0 0 0 6px rgba(42,242,177,.08)}
.dm-hero h1{font:800 clamp(26px,7vw,36px)/1.08 Manrope,system-ui,sans-serif;margin:2px 0 8px;color:#fff;letter-spacing:-.01em}
.dm-lead{margin:0;color:var(--sub);font-size:16px}
.dm-cadeau{margin:0 0 8px;display:inline-block;font-size:13px;font-weight:700;color:var(--ka);background:rgba(42,242,177,.08);border:1px solid var(--line2);border-radius:99px;padding:5px 12px}
.dm-form{display:grid;gap:14px}
.dm-bloc{border:1px solid var(--line);background:linear-gradient(160deg,rgba(15,59,46,.35),rgba(13,26,23,.9) 60%);border-radius:20px;padding:16px;margin:0;min-width:0}
.dm-bloc legend{display:flex;align-items:center;gap:10px;font:800 17px Manrope,system-ui,sans-serif;color:#fff;padding:0;float:left;width:100%;margin-bottom:12px}
.dm-bloc legend+*{clear:both}
.dm-n{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--deep);color:var(--ka);font:800 14px Manrope,system-ui,sans-serif;flex:none}
.dm-metiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dm-metiers button{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:68px;padding:10px 4px;border-radius:14px;border:1px solid var(--line2);background:rgba(7,17,15,.6);color:var(--txt);font:700 14px "DM Sans",system-ui,sans-serif;white-space:nowrap;cursor:pointer}
.dm-metiers button span{font-size:20px;line-height:1}
.dm-metiers button[aria-checked=true]{border-color:var(--ka);background:rgba(42,242,177,.1);color:#fff;box-shadow:inset 0 0 0 1px var(--ka)}
.dm-champ{display:grid;gap:6px;margin-bottom:10px}.dm-champ span{font-weight:700;font-size:14px}.dm-champ small{color:var(--sub);font-weight:400}
.dm-champ input{font:16px "DM Sans",system-ui,sans-serif;background:#07110f;color:var(--txt);border:1px solid var(--line2);border-radius:12px;padding:13px 14px;min-height:50px;width:100%}
.dm-champ input:focus,.dm-metiers button:focus-visible,.dm-go:focus-visible,.dm-photo:focus-within{outline:2px solid var(--ka);outline-offset:2px}
.dm-photo{display:flex;align-items:center;justify-content:center;gap:10px;min-height:64px;border-radius:16px;border:1.5px dashed var(--ka);background:rgba(42,242,177,.06);color:#fff;font:800 16px "DM Sans",system-ui,sans-serif;cursor:pointer;white-space:nowrap;position:relative}
.dm-photo input{position:absolute;inset:0;opacity:0;cursor:pointer}
.dm-photo svg{width:26px;height:26px;color:var(--ka)}
.dm-aide{margin:8px 0 0;color:var(--sub);font-size:13px}
.dm-vignettes{list-style:none;padding:0;margin:10px 0 0;display:flex;gap:8px;flex-wrap:wrap}
.dm-vignettes li{position:relative}.dm-vignettes img{width:76px;height:76px;object-fit:cover;border-radius:12px;border:1px solid var(--line2);display:block}
.dm-vignettes button{position:absolute;top:-6px;right:-6px;width:26px;height:26px;border-radius:50%;border:1px solid var(--line2);background:#07110f;color:#fff;font-size:14px;line-height:1;cursor:pointer}
.dm-ok{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--txt);padding:0 4px}
.dm-ok input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--ka)}.dm-ok small{display:block;color:var(--sub)}
.dm-go{min-height:58px;border:0;border-radius:18px;background:linear-gradient(135deg,#2af2b1,#64edbd);color:#05201a;font:800 18px Manrope,system-ui,sans-serif;cursor:pointer;white-space:nowrap;box-shadow:0 10px 30px rgba(42,242,177,.22)}
.dm-go:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.dm-fine{color:var(--sub);font-size:13px;text-align:center;margin:0}
.dm-msg{margin:0;border-radius:12px;padding:12px 14px;font-weight:700;background:#3a1512;border:1px solid var(--ko);color:#ffe3df}
.dm-attente{position:fixed;inset:0;z-index:20;background:rgba(7,17,15,.94);display:grid;place-content:center;justify-items:center;gap:14px;text-align:center;padding:24px}
.dm-attente[hidden]{display:none}
.dm-attente p{font:800 22px Manrope,system-ui,sans-serif;color:#fff;margin:0}
.dm-pulse{width:88px;height:88px;animation:dmPulse 1.6s ease-in-out infinite}
@keyframes dmPulse{0%,100%{box-shadow:0 0 0 6px rgba(42,242,177,.08)}50%{box-shadow:0 0 0 18px rgba(42,242,177,.16)}}
.dm-barre{width:220px;height:6px;border-radius:99px;background:var(--line);overflow:hidden}.dm-barre i{display:block;height:100%;width:40%;border-radius:99px;background:var(--ka);animation:dmBarre 1.4s ease-in-out infinite}
@keyframes dmBarre{0%{transform:translateX(-100%)}100%{transform:translateX(260%)}}
.dm-pied{margin-top:26px;text-align:center;color:var(--sub);font-size:12px}
@media (prefers-reduced-motion:reduce){.dm-pulse,.dm-barre i{animation:none}}
@media (max-width:360px){.dm-metiers button{font-size:13px}.dm-photo{font-size:15px}}
.dm-cadeau[hidden]{display:none}
.dm-champ textarea{font:16px "DM Sans",system-ui,sans-serif;background:#07110f;color:var(--txt);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;width:100%;resize:vertical}
.dm-faits{margin:12px 0 0}.dm-faits[hidden]{display:none}
