body.theme-cyber {
  margin: 0;
  font-family: Orbitron, monospace;
  color: #fff;
  background: linear-gradient(180deg, #0a0a0a, #1a1a1a);
}
*, *::before, *::after { box-sizing: border-box; }
.panel {
  width: min(900px, 94vw);
  margin: 3vh auto;
  border: 2px solid #ff6600;
  border-radius: 10px;
  padding: 24px;
  box-shadow: 0 0 30px rgba(255, 102, 0, 0.5);
}
.panel.wide { width: min(1200px, 96vw); }
h1 { text-transform: uppercase; text-shadow: 0 0 10px #ff6600; text-align: center; }
button {
  border: 2px solid #ff6600; background: #111; color: #fff; padding: 10px 16px;
  cursor: pointer; border-radius: 8px;
}
button:hover { transform: scale(1.05); box-shadow: 0 0 15px rgba(255, 102, 0, 0.7); }
input[type="text"], input[type="password"] {
  width: 100%; padding: 8px; margin: 6px 0; background: #000; color: #fff; border: 1px solid #666;
}
.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px; }
.q, .a { border: 1px solid #ff6600; padding: 10px; border-radius: 6px; background: #111; }
.a label { margin-right: 12px; display: inline-flex; align-items: center; gap: 6px; }
.panel.wide form > button { display: block; margin: 18px auto 0; }
.a.invalid {
  border-color: #ff3b30;
  box-shadow: 0 0 10px rgba(255, 59, 48, 0.7);
}
table { width: 100%; border-collapse: separate; border-spacing: 0 8px; }
th, td { border: 1px solid #ff6600; padding: 8px 12px; background: #111; }
dialog { width: min(900px, 94vw); max-height: 90vh; overflow: auto; background: #111; color: #fff; border: 2px solid #ff6600; }
dialog::backdrop { background: rgba(0, 0, 0, 0.75); }
@media (max-width: 768px) { .grid { grid-template-columns: 1fr; } }
