:root{
  --cam-purple:#6c51a1;
  --cam-gold:#d4af37;
  --bg:#0a0a0c;
  --card:rgba(255,255,255,0.04);
  --border:rgba(255,255,255,0.10);
  --text:#ffffff;
  --muted:rgba(255,255,255,0.70);
}

body.csq-public{
  background: radial-gradient(900px at 10% 10%, rgba(108,81,161,.18), transparent 55%),
              radial-gradient(900px at 90% 15%, rgba(212,175,55,.12), transparent 55%),
              var(--bg);
  color:var(--text);
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

.csq-wrap{ max-width: 980px; margin: 32px auto; padding: 0 16px; }

.csq-card{
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  border:1px solid var(--border);
  border-radius: 18px;
  padding: 18px;
  box-shadow: 0 18px 60px rgba(0,0,0,0.35);
}

.csq-h1{ font-size: 28px; margin: 0 0 8px; }
.csq-sub{ color: var(--muted); margin: 0 0 18px; line-height:1.5; }

.csq-row{ display:grid; grid-template-columns: 1fr; gap:10px; }

.csq-input{
  width:100%;
  padding: 12px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(0,0,0,0.25);
  color: var(--text);
  font-size: 16px;
}

.csq-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.16);
  padding: 12px 14px;
  background: rgba(108,81,161,0.22);
  color: var(--text);
  font-weight: 700;
  cursor:pointer;
  text-decoration:none;
}
.csq-btn:hover{ background: rgba(108,81,161,0.30); }

.csq-meta{ display:flex; flex-wrap:wrap; gap:10px; color: var(--muted); font-size: 14px; }
.csq-meta b{ color: var(--text); }

.csq-hr{ height:1px; background: rgba(255,255,255,0.12); margin: 16px 0; border:0; }

.csq-iframe{ width:100%; height: 78vh; border:0; border-radius: 14px; background: rgba(0,0,0,0.2); }

.csq-topbar{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:space-between; margin-bottom: 12px; }

.csq-pill{ padding: 6px 10px; border: 1px solid rgba(255,255,255,0.16); border-radius: 999px; background: rgba(0,0,0,0.20); }

.csq-warn{ padding: 12px 14px; border: 1px solid rgba(255,187,0,0.30); background: rgba(255,187,0,0.08); border-radius: 14px; color: #fff; }

.csq-ok{ padding: 12px 14px; border: 1px solid rgba(0,255,160,0.22); background: rgba(0,255,160,0.08); border-radius: 14px; color: #fff; }

@media (min-width: 860px){
  .csq-row.two{ grid-template-columns: 1fr auto; align-items:end; }
}
