/* Sankalika Foundation — supporting styles (Tailwind CDN handles the layout classes). */
[hidden] { display: none !important; }

/* Popups */
.sf-modal { position: fixed; inset: 0; z-index: 70; background: rgba(2, 6, 23, .7); backdrop-filter: blur(4px);
  display: flex; align-items: flex-start; justify-content: center; padding: 1rem; overflow-y: auto; }
.sf-modal-box { background: #fff; width: 100%; max-width: 42rem; margin: 2rem 0; border-radius: 1.25rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, .35); overflow: hidden; }
@media (min-width: 640px) { .sf-modal { align-items: center; } }

/* Sliders */
.sf-track > * { flex: 0 0 auto; }
.sf-viewport { cursor: grab; }
.sf-viewport:active { cursor: grabbing; }
.sf-slider img { -webkit-user-drag: none; user-select: none; }

/* Header dropdowns */
.sf-dd-panel { min-width: 220px; }

/* Forms (public) */
input[type="range"] { accent-color: #f59e0b; }
.sf-cert-sheet { container-type: inline-size; }

/* Admin */
.adm-input { width: 100%; padding: .5rem .75rem; border-radius: .75rem; background: #020617; border: 1px solid #334155; color: #f8fafc; font-size: .8rem; }
.adm-input:focus { outline: 2px solid #f59e0b; outline-offset: 1px; }
.adm-label { display: block; font-size: .72rem; font-weight: 700; color: #cbd5e1; margin-bottom: .3rem; }
.adm-card { background: #0f172a; border: 1px solid #1e293b; border-radius: 1rem; padding: 1.25rem; }
.adm-btn { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem 1rem; border-radius: .75rem; font-weight: 800; font-size: .75rem; background: #f59e0b; color: #020617; cursor: pointer; border: 0; }
.adm-btn:disabled { opacity: .5; cursor: not-allowed; }
.adm-btn.blue { background: #2563eb; color: #fff; }
.adm-btn.green { background: #059669; color: #fff; }
.adm-btn.red { background: #9f1239; color: #fecdd3; }
.adm-btn.ghost { background: #1e293b; color: #e2e8f0; }
.adm-table { width: 100%; font-size: .78rem; border-collapse: collapse; }
.adm-table th { text-align: left; color: #94a3b8; font-weight: 700; padding: .6rem .5rem; border-bottom: 1px solid #1e293b; }
.adm-table td { padding: .6rem .5rem; border-bottom: 1px solid #1e293b; color: #e2e8f0; vertical-align: top; }
.adm-muted { color: #94a3b8; font-size: .75rem; }
