/* Papildomi stiliai, kurių patogiau nerašyti kaip Tailwind utility klasių */

::-webkit-scrollbar { height: 8px; width: 8px; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 9999px; }
::-webkit-scrollbar-track { background: transparent; }

.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

.badge { display: inline-flex; align-items: center; gap: .25rem; padding: .125rem .5rem; border-radius: 9999px; font-size: .7rem; font-weight: 600; white-space: nowrap; }
.badge-slate  { background:#f1f5f9; color:#475569; }
.badge-blue   { background:#dbeafe; color:#1d4ed8; }
.badge-amber  { background:#fef3c7; color:#92400e; }
.badge-green  { background:#dcfce7; color:#15803d; }
.badge-red    { background:#fee2e2; color:#b91c1c; }
.badge-violet { background:#ede9fe; color:#6d28d9; }
.badge-cyan   { background:#cffafe; color:#0e7490; }

.kpi-card { background:#fff; border:1px solid #e2e8f0; border-radius:.75rem; padding:1rem 1.25rem; }

.nav-link { display:flex; align-items:center; gap:.65rem; padding:.55rem .75rem; border-radius:.5rem; font-size:.875rem; font-weight:500; color:#334155; transition: background-color .15s ease, color .15s ease; }
.nav-link:hover { background:#f1f5f9; color:#0f172a; }
.nav-link.active { background:#0f172a; color:#fff; }
.nav-link.active svg { opacity: 1; }
.nav-section-title { font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; font-weight:700; color:#94a3b8; padding:1rem .75rem .35rem; }

#sidebar-backdrop { transition: opacity .2s ease; }

.modal-backdrop { background: rgba(15,23,42,.55); }

input[type="text"], input[type="date"], input[type="number"], input[type="search"], input[type="email"], select, textarea {
  border:1px solid #cbd5e1; border-radius:.5rem; padding:.5rem .65rem; font-size:.875rem; width:100%; background:#fff;
}
input:focus, select:focus, textarea:focus { outline:2px solid #0f172a22; border-color:#0f172a; }

table.data-table { width:100%; border-collapse:separate; border-spacing:0; font-size:.825rem; }
table.data-table thead th { position:sticky; top:0; background:#f8fafc; text-align:left; font-size:.7rem; text-transform:uppercase; letter-spacing:.04em; color:#64748b; padding:.6rem .75rem; border-bottom:1px solid #e2e8f0; white-space:nowrap; }
table.data-table tbody td { padding:.6rem .75rem; border-bottom:1px solid #f1f5f9; vertical-align:middle; }
table.data-table tbody tr:hover { background:#f8fafc; }

.btn { display:inline-flex; align-items:center; gap:.4rem; font-size:.825rem; font-weight:600; padding:.5rem .9rem; border-radius:.5rem; transition:.15s; cursor:pointer; border:1px solid transparent; }
.btn-primary { background:#0f172a; color:#fff; }
.btn-primary:hover { background:#1e293b; }
.btn-secondary { background:#fff; color:#334155; border-color:#cbd5e1; }
.btn-secondary:hover { background:#f8fafc; }
.btn-ghost { color:#334155; }
.btn-ghost:hover { background:#f1f5f9; }
.btn-danger-ghost { color:#b91c1c; }
.btn-danger-ghost:hover { background:#fee2e2; }

.tab-btn { padding:.5rem 1rem; font-size:.825rem; font-weight:600; color:#64748b; border-bottom:2px solid transparent; }
.tab-btn.active { color:#0f172a; border-color:#0f172a; }

.tab-btn-flat { padding:.4rem .9rem; font-size:.8rem; font-weight:600; color:#64748b; border-radius:.4rem; }
.tab-btn-flat.active { background:#0f172a; color:#fff; }

.board-card { background:#fff; border:1px solid #e2e8f0; border-radius:.65rem; padding:.75rem .9rem; cursor:pointer; transition:.15s; }
.board-card:hover { border-color:#94a3b8; box-shadow:0 1px 4px rgba(15,23,42,.08); }

.demo-badge { background:linear-gradient(90deg,#fde68a,#fca5a5); color:#78350f; }
