:root{--fond:#010a14;--fond-carte:#0d0d0d99;--fond-champ:#ffffff0d;--texte:#fff;--texte-2:#aaa;--texte-3:#888;--accent:#d4f1ff;--accent-ombre:#d4f1ff33;--accent-ombre-2:#d4f1ff66;--ok:#0fa;--erreur:#f44;--trait:#ffffff26;--interligne:1.5;--gouttiere:clamp(16px, 3vw, 40px);color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--fond);color:var(--texte);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:var(--interligne);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{flex-direction:column;min-height:100dvh;margin:0;display:flex}img{max-width:100%;display:block}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.saut{top:-100px;left:var(--gouttiere);z-index:100;background:var(--accent);color:#000;padding:8px 12px;position:absolute}.saut:focus{top:12px}.masque{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fond{z-index:-1;background:radial-gradient(circle,#0c1e2c 0%,#010a14 100%);position:fixed;inset:0}.etoiles{width:100%;height:100%;position:absolute;inset:0}.fond:after{content:"";opacity:.2;background:url(/_astro/nebuleuse.BJIJEvxA.webp) 50%/cover no-repeat;position:absolute;inset:0}.entete{padding:12px var(--gouttiere);align-items:center;display:flex}.marque{align-items:center;margin:0;display:flex}.marque a{display:block}.marque img{width:auto;height:40px;transition:opacity .2s;display:block}.marque a:hover img{opacity:.8}main{padding:8px var(--gouttiere) 24px;flex-direction:column;flex:1;justify-content:center;display:flex}.carte{isolation:isolate;background:var(--fond-carte);backdrop-filter:blur(10px);border:1px solid var(--accent);border-radius:12px;width:100%;max-width:36rem;margin:0 auto;padding:clamp(20px,3vw,28px);position:relative;box-shadow:0 0 10px #33ccff0d,inset 0 0 20px #33ccff14}.carte:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(120deg, transparent, var(--accent), transparent);opacity:.1;pointer-events:none;position:absolute;inset:0}form.carte:has(.champ:not([hidden])){flex-direction:column;flex:1;max-height:46rem;display:flex}form.carte .champ:has(textarea){flex:1;grid-template-rows:auto 1fr}.carte h1{font-family:var(--police-titres);letter-spacing:.15rem;text-transform:uppercase;text-align:center;text-wrap:balance;color:var(--accent);text-shadow:0 0 10px var(--accent-ombre-2), 0 0 20px var(--accent-ombre);margin:0 0 20px;font-size:clamp(1.6rem,5vw,2.2rem);font-weight:700;line-height:1.2}.carte h1:after{content:"";background:linear-gradient(to right, transparent, #fff3, var(--accent), #fff3, transparent);clip-path:polygon(0% 50%,50% 0%,100% 50%,50% 100%);width:60%;height:4px;margin:10px auto 0;animation:4s ease-in-out infinite pulsation;display:block;box-shadow:0 0 8px #fff3}@keyframes pulsation{0%,to{opacity:.5;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.2)}}.carte h1+p{text-align:center;color:var(--texte-2);text-wrap:pretty;margin:0 0 20px}.carte p a{color:var(--accent);border-bottom:1px solid var(--accent-ombre-2)}.carte p a:hover{border-bottom-color:var(--accent)}.champ{gap:4px;margin:0 0 14px;display:grid}.champ label{color:var(--texte-2);font-size:.85rem}input,select,textarea{font:inherit;width:100%;color:var(--texte);background:var(--fond-champ);border:1px solid var(--trait);border-radius:6px;padding:8px 12px;font-size:1rem;transition:border-color .2s,box-shadow .2s}input:hover,select:hover,textarea:hover{border-color:#ffffff4d}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 8px var(--accent-ombre-2);outline:none}input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:var(--erreur)}textarea{resize:vertical;min-height:4.5rem}.actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.bouton{letter-spacing:.05em;text-transform:uppercase;color:#000;background:var(--accent);border-radius:6px;padding:12px 28px;font-size:.9rem;font-weight:700;transition:filter .3s,opacity .2s;display:inline-block}.bouton:hover{filter:brightness(1.3)}.bouton:disabled{filter:none;opacity:.6;cursor:progress}.etat{border:1px solid var(--trait);border-radius:10px;margin:0 0 20px;padding:14px 16px}.etat[data-type=ok]{border-color:var(--ok);background:#00ffaa14;box-shadow:0 0 10px #00ffaa26}.etat[data-type=erreur]{border-color:var(--erreur);background:#ff444414;box-shadow:0 0 10px #ff444426}.etat p{margin:0}.etat strong{margin-bottom:4px;font-weight:600;display:block}.etat a{color:var(--accent);border-bottom:1px solid var(--accent-ombre-2)}.etat a:hover{border-bottom-color:var(--accent)}.suites{flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 0;padding:0;list-style:none;display:flex}.suites a{color:var(--accent);border:1px solid var(--accent);border-radius:20px;padding:10px 20px;transition:background-color .2s,color .2s;display:inline-block}.suites a:hover{background:var(--accent);color:#000}.pied{padding:16px var(--gouttiere);color:var(--texte-3);flex-wrap:wrap;justify-content:center;gap:4px 24px;margin-top:auto;font-size:.9rem;display:flex}.pied p{margin:0}.pied a:hover{color:var(--accent)}@media (width<=40rem){.carte{padding:20px 16px}textarea{min-height:8rem}.bouton{text-align:center;width:100%;display:block}}@media (prefers-reduced-motion:reduce){.marque img,input,select,textarea,.bouton,.suites a{transition:none}.carte h1:after{animation:none}}
