@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Sora:wght@800&family=Space+Grotesk:wght@700&display=swap');
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#111827;background:#fff}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.logo{font-family:'Sora',sans-serif;font-weight:800;font-size:30px;letter-spacing:-.05em;line-height:1}
.logo span{background:linear-gradient(130deg,#4f46e5,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}
.mono{font-family:'JetBrains Mono',monospace}
.hero{background:radial-gradient(110% 70% at 80% -10%,#eef0ff 0%,#fff 52%)}
.hero header{display:flex;justify-content:space-between;align-items:center;padding:24px 0}
.hero h1{font-family:'Sora',sans-serif;font-weight:800;font-size:clamp(44px,6vw,76px);line-height:1;letter-spacing:-.04em;margin:20px 0 18px}
.hero h1 em{font-style:normal;background:linear-gradient(120deg,#4f46e5,#7c3aed 60%,#0891b2);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:500px;font-size:18px;line-height:1.6;color:#4b5563;margin:0 0 60px}
.pill{display:inline-block;padding:6px 13px;border-radius:30px;background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3;font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.14em}
.eyebrow{font:600 12px 'JetBrains Mono',monospace;letter-spacing:.3em;color:#4f46e5}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:10px}
.dom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-radius:13px;border:1px solid rgba(17,24,39,.08);font:500 15px 'JetBrains Mono',monospace}
.dom:hover{border-color:#c7d2fe}
.dot{width:8px;height:8px;border-radius:50%;flex:none}
.dot.live{background:#10b981}.dot.soon{background:#f59e0b}
.bar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:22px 0}
input[type=text],input[type=password],textarea,select{font:inherit;padding:11px 14px;border:1.5px solid rgba(17,24,39,.15);border-radius:12px;background:#fff;min-width:0}
input:focus,textarea:focus,select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 4px rgba(79,70,229,.1)}
.btn{display:inline-block;padding:10px 18px;border-radius:11px;border:1px solid rgba(17,24,39,.14);background:#fff;color:#111827;font:600 14px inherit;cursor:pointer;text-decoration:none}
.btn:hover{border-color:#4f46e5;color:#4f46e5}
.btn.primary{background:#4f46e5;border-color:#4f46e5;color:#fff}.btn.primary:hover{background:#4338ca;color:#fff}
.btn.danger:hover{border-color:#dc2626;color:#dc2626}
.legend{display:flex;gap:18px;font-size:13px;color:#6b7280}
.legend span{display:inline-flex;gap:6px;align-items:center}
footer{border-top:1px solid rgba(17,24,39,.08);margin-top:60px;padding:28px 0;color:#6b7280;font-size:13.5px}
/* admin */
.card{background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:16px;padding:22px;margin:18px 0}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:10px 8px;border-bottom:1px solid rgba(17,24,39,.07);font-size:14.5px}
th{font:600 11.5px 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#6b7280}
td.actions{text-align:right;white-space:nowrap}
td.actions form{display:inline}
.msg{padding:11px 14px;border-radius:11px;margin:14px 0;font-size:14.5px}
.msg.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}
.msg.err{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}
.login{max-width:360px;margin:12vh auto}
.login input{width:100%;margin:12px 0}
