:root { color-scheme: dark; --bg:#08080b; --panel:#121218; --line:#292934; --text:#f4f3f8; --muted:#a3a1af; --accent:#8b6cff; --ok:#55d6a2; --bad:#ff756f; }
* { box-sizing: border-box; }
body { margin:0; background:radial-gradient(circle at 70% 0,#221746 0,transparent 36%),var(--bg); color:var(--text); font:15px/1.55 Inter,ui-sans-serif,system-ui,sans-serif; }
button,input,textarea { font:inherit; }
button { border:0; border-radius:9px; padding:10px 14px; background:var(--accent); color:white; font-weight:750; cursor:pointer; }
button.secondary { background:#24232d; color:#d8d6e2; border:1px solid #383744; }
input,textarea { width:100%; border:1px solid #393744; border-radius:9px; padding:10px 12px; background:#0b0b10; color:var(--text); }
textarea { min-height:92px; resize:vertical; }
label { display:grid; gap:6px; color:#d9d7e1; font-size:13px; font-weight:700; }
code { color:#b9a9ff; }
.hero { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; max-width:1180px; margin:auto; padding:52px 24px 28px; }
.hero h1 { font-size:clamp(34px,6vw,62px); line-height:1; margin:5px 0 15px; letter-spacing:-.045em; }
.hero p { max-width:760px; color:var(--muted); margin:0; }
.eyebrow { color:#aa95ff!important; text-transform:uppercase; letter-spacing:.16em; font-size:11px; font-weight:850; }
main { max-width:1180px; margin:auto; padding:0 24px 80px; }
.panel,.fixture,.instructions { border:1px solid var(--line); border-radius:16px; background:linear-gradient(145deg,#15151cdd,#0f0f14dd); box-shadow:0 24px 80px #0004; }
.panel { padding:22px; margin:18px 0; }
.setup { display:grid; grid-template-columns:.7fr 1.3fr; gap:30px; align-items:center; }
.setup h2,.panel h2,.fixture h2,.instructions h2 { margin:0 0 6px; }
.setup p,.panel p,.fixture p { color:var(--muted); margin:0 0 15px; }
.row { display:flex; gap:9px; align-items:center; }
.row input { flex:1; }
.row.compact { justify-content:flex-end; }
.note { font-size:12px; margin:8px 0 0!important; }
.status,.badge { display:inline-flex; align-items:center; border-radius:999px; padding:5px 9px; font-size:11px; font-weight:800; letter-spacing:.02em; }
.status.off { background:#2a2021; color:#ffaaa5; }
.status.on { background:#183027; color:#73e5b5; }
.badge { margin-bottom:12px; background:#272139; color:#bbaaff; }
.badge.warning { background:#392620; color:#ffb08c; }
.badge.provider { background:#172d36; color:#76d6fa; }
.section-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; }
.inspector-summary { display:flex; gap:20px; justify-content:space-between; margin:16px 0 10px; color:var(--muted); }
.privacy.good { color:var(--ok); }
.privacy.bad { color:var(--bad); font-weight:850; }
.event-log { max-height:340px; overflow:auto; border:1px solid #25242d; border-radius:11px; background:#09090d; }
.event { display:grid; grid-template-columns:160px 1fr auto; gap:12px; padding:10px 12px; border-bottom:1px solid #1e1e25; font-family:ui-monospace,SFMono-Regular,monospace; font-size:12px; }
.event:last-child { border:0; }
.event-kind { color:#bcaeff; font-weight:800; }
.event-form { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#ddd9e7; }
.event-time { color:#777584; }
.empty { padding:18px; color:#777584; }
.instructions { padding:20px 24px; margin:18px 0; }
.instructions ol { margin:10px 0 0; padding-left:22px; color:var(--muted); }
.fixture-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:18px 0; }
.fixture { padding:22px; }
.fixture form { display:grid; gap:12px; margin-top:14px; }
.fixture form button { justify-self:start; }
.check { display:flex; align-items:center; }
.check input { width:auto; }
.result { color:var(--ok); font-size:12px; min-height:18px; }
.duplicates { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.duplicates form { border:1px dashed #34323e; border-radius:12px; padding:13px; }
.sensitive { border-color:#493229; }
.embed-root { margin-top:16px; min-height:90px; }
.embed-root iframe { width:100%; height:620px; border:1px solid var(--line); border-radius:12px; background:white; }
.below-fold-spacer { min-height:85vh; display:grid; place-items:center; color:#666475; }
.below-fold { max-width:570px; margin:auto; }
dialog { width:min(92vw,560px); border:1px solid #3b3947; border-radius:16px; padding:28px; color:var(--text); background:#121218; box-shadow:0 35px 120px #000c; }
dialog::backdrop { background:#000a; backdrop-filter:blur(5px); }
dialog form { display:grid; gap:12px; }
.close { position:absolute; right:12px; top:10px; padding:4px 10px; background:transparent; font-size:24px; }
@media (max-width:760px) { .hero,.section-head,.row { flex-direction:column; } .setup,.fixture-grid,.duplicates { grid-template-columns:1fr; } .row button { width:100%; } .event { grid-template-columns:1fr; gap:3px; } }
