*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% 0,#11524e,#062b2f 70%);color:#e8f4f2;font-family:system-ui,sans-serif;padding:16px}
main{max-width:560px;margin:0 auto}
header{display:flex;align-items:center;gap:12px;margin-bottom:18px}header img{width:44px;border-radius:50%;box-shadow:0 0 0 2px #d9b45a}
h1{font-weight:300;letter-spacing:.2em;margin:0;font-size:1.2rem}
form,.carte{background:#0a3b3a;border:1px solid #1d6f6a;border-radius:14px;padding:1em 1.1em}
label{display:block;margin:.8em 0 .25em;font-size:.9rem;color:#d9b45a}
input{width:100%;padding:.65em .8em;border-radius:10px;border:1px solid #1d6f6a;background:#031a1d;color:#e8f4f2;font-size:1rem}
input[type=checkbox]{width:auto;margin-right:.5em}
.ligne{display:flex;align-items:flex-start;margin-top:1em;font-size:.9rem;line-height:1.4}
button{margin-top:1.2em;width:100%;padding:.8em;border:0;border-radius:999px;background:#3CDCD7;color:#062b2f;font-weight:700;font-size:1rem;cursor:pointer}
button:disabled{opacity:.5}
#msg{margin-top:.9em;min-height:1.3em;color:#ffb4a8}#msg.ok{color:#9ff0c0}
a{color:#3CDCD7}small,.petit{opacity:.75;font-size:.82rem;line-height:1.4}
