/* Same CSS as SQL variant */
html, body { height: 100%; margin: 0; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; background: #000; }
.kb-slider { position: fixed; inset: 0; overflow: hidden; z-index: 1; }
.kb-slide { position: absolute; inset: 0; background-size: cover; background-position: center;
  opacity: 0; transform: scale(1.05); animation: kenburns 16s ease-in-out infinite; }
.kb-slide.active { opacity: 1; }
@keyframes kenburns {
  0% { transform: scale(1.05) translate(0,0); opacity: 1; }
  50% { transform: scale(1.15) translate(2%,2%); opacity: 1; }
  100% { transform: scale(1.05) translate(-2%,-1%); opacity: 1; }
}
.container { max-width: 1100px; margin: 0 auto; padding: 24px; }
.card { background: #fff; border-radius: 14px; box-shadow: 0 10px 30px rgba(0,0,0,0.08); padding: 18px; }
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { padding: 10px; border-bottom: 1px solid #eee; text-align: left; font-size: 14px; }
.badge { display:inline-block; padding:4px 8px; border-radius:999px; background:#111827; color:#fff; font-size:12px; }
.button { appearance:none; border:none; border-radius:10px; padding:10px 14px; background:#111827; color:#fff; cursor:pointer; }
.button.secondary { background:#6b7280; }
form input[type=file], form input[type=text], form input[type=password] { padding:8px; border:1px solid #ddd; border-radius:10px; width:100%; }
.grid { display:grid; gap:16px; } .grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); } .grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:800px){ .grid-2,.grid-3{ grid-template-columns:1fr; } }
