:root { --bg:#0b0b0f; --panel:#14151a; --text:#e7e7ea; --muted:#b3b3b7; --accent:#4f46e5; }
html[data-theme="light"] { --bg:#f6f7fb; --panel:#ffffff; --text:#1f2330; --muted:#505564; --accent:#4f46e5; }
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial}
main{max-width:760px;margin:32px auto;padding:0 16px} a{color:var(--accent);text-decoration:none}
.card{background:var(--panel);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:20px;box-shadow:0 10px 30px rgba(0,0,0,.2)}
h1,h2,h3{margin-top:0} label{display:block;margin:8px 0}
input,textarea,select{width:100%;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:transparent;color:var(--text)}
textarea{resize:vertical}.btn{display:inline-block;background:var(--accent);color:#fff;padding:12px 16px;border-radius:12px;border:none;cursor:pointer;text-align:center}
.btn.small{padding:8px 12px;font-size:14px}.btn.danger{background:#e11d48}.footer{text-align:center;color:var(--muted);padding:24px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:720px){.grid{grid-template-columns:1fr}}
.public{display:flex;justify-content:center}.public-card{text-align:center;padding:28px}
.public .avatar{width:96px;height:96px;border-radius:9999px;object-fit:cover;display:block;margin:0 auto 12px;border:3px solid var(--accent)}
.links{list-style:none;padding:0;margin:24px 0 0}.links li+li{margin-top:12px}.links .btn{width:100%}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.list{list-style:none;padding:0;margin:0}.list li{padding:8px;border:1px dashed rgba(255,255,255,.1);border-radius:12px;margin:8px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.list li.dragging{opacity:.6}.inline{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.checkbox{display:inline-flex;align-items:center;gap:8px}
.flashes{list-style:none;padding:0;margin:12px 0}.flashes li{padding:8px 12px;border-radius:10px;margin:8px 0}.flashes li.ok{background:rgba(16,185,129,.15)}.flashes li.error{background:rgba(239,68,68,.15)}
