:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#edf4ff;background:#080e1b}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 70% 0%,#172b46 0%,transparent 55%),#080e1b}.cadre{max-width:1060px;margin:auto;padding:30px 22px}header,.ligne{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.marque{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:800;letter-spacing:.07em}.marque small{display:block;color:#91a6bf;font-size:10px;letter-spacing:.23em}.symbole{display:grid;place-items:center;width:45px;height:45px;border:1px solid #6be2ce;border-radius:14px;color:#80f5df}.statut,.sur-titre{font-size:12px;color:#80e5d5;letter-spacing:.12em}.panneau{margin:65px auto 35px;padding:clamp(24px,5vw,55px);border:1px solid #263d56;border-radius:24px;background:linear-gradient(145deg,#122238,#0c1628);box-shadow:0 22px 80px #0005}#connexion{max-width:620px}h1{font-size:clamp(30px,5vw,48px);letter-spacing:-.04em;margin:8px 0}.intro{color:#b3c2d5;line-height:1.6;max-width:560px}form{display:grid;gap:11px;margin-top:28px}label{font-size:13px;font-weight:650}input{width:100%;padding:14px 15px;background:#0a1425;color:white;border:1px solid #45617d;border-radius:10px;font:inherit;margin-bottom:8px}input:focus{outline:2px solid #73e5d3}button{cursor:pointer;border:0;border-radius:10px;padding:14px 22px;font-weight:750;background:#79e6d3;color:#082027;font-size:15px}button:hover{filter:brightness(1.08)}button:focus-visible{outline:3px solid white;outline-offset:3px}.secondaire{background:transparent;border:1px solid #638198;color:#d6e9fa}.discret,footer{color:#91a6bf;font-size:12px;line-height:1.6;margin-top:28px}footer{text-align:center}.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin-top:30px}.carte{padding:24px;border:1px solid #34506b;background:#10253b;border-radius:16px}.carte strong{display:block;font-size:19px;margin-bottom:10px}.carte span{font-size:13px;color:#a5b8c9}#message{color:#ffc3ae;min-height:1.4em}[hidden]{display:none!important}@media(max-width:540px){.panneau{margin-top:35px}.ligne{align-items:flex-start}}

/* Administration OZZY : adaptation mobile, sans dépendance externe */
#administration{margin-top:24px}#administration h2{font-size:clamp(24px,4vw,36px);margin:8px 0}#administration h3{margin:0 0 16px}#administration .grille-admin{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-top:20px}#administration select{width:100%;padding:14px;background:#0a1425;color:white;border:1px solid #45617d;border-radius:10px;font:inherit}#administration .espace-admin{margin-top:18px}#administration .ligne-utilisateur{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #34506b}#administration .ligne-utilisateur:last-child{border-bottom:0}#administration .ligne-utilisateur button{padding:9px 12px}#administration .ligne-utilisateur button:disabled{opacity:.5;cursor:not-allowed}#administration .secret{display:block;overflow-wrap:anywhere;padding:12px;background:#091322;border:1px solid #45617d;border-radius:8px;margin:12px 0}#administration .evenement{padding:9px 0;border-bottom:1px solid #34506b;font-size:13px;overflow-wrap:anywhere}#message-admin{min-height:1.5em;color:#a7f2df}#administration button{margin-top:4px}#administration .etat-inactif{color:#ffc3ae}@media(max-width:540px){#administration{padding:20px}#administration .carte{padding:16px}}
