/* ============================================================================
   Ippocrate Lab — design allineato al gestionale Ippocrate Manager
   Font: Plus Jakarta Sans · Palette: #29ABE2 → #1B2080
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');

:root {
  --ip-cyan: #29ABE2;
  --ip-dark: #1B2080;
  --ip-mid:  #1565B8;
}

* { -webkit-font-smoothing: antialiased; }
body {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  letter-spacing: -0.015em;
  color: #0f172a;
  background: #f8fafc !important;
}

/* ── Voce nav attiva (identica al Manager) ───────────────────────────────── */
.ip-active {
  background: linear-gradient(135deg, rgba(41,171,226,0.12) 0%, rgba(27,32,128,0.08) 100%) !important;
  color: var(--ip-dark) !important;
  border-left-color: var(--ip-cyan) !important;
}
.ip-active i { color: var(--ip-cyan) !important; }

/* ── Card: bordo chiaro + ombra leggera (come Manager) ───────────────────── */
main .bg-white.rounded-2xl,
main .bg-white.rounded-3xl {
  border-color: #f1f5f9 !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.04), 0 8px 24px rgba(15,23,42,.03);
}

main tbody tr[onclick] { transition: background .15s ease; }
main tbody tr[onclick]:hover { background: rgba(41,171,226,0.05); }

/* ── Avatar iniziali ─────────────────────────────────────────────────────── */
.lab-avatar {
  width: 36px; height: 36px; border-radius: 12px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-weight: 800; font-size: 12px; letter-spacing: .3px;
  background: linear-gradient(135deg, var(--ip-cyan), var(--ip-dark));
  box-shadow: 0 6px 16px rgba(27,32,128,.22);
}

/* ── Bottone primario brand ──────────────────────────────────────────────── */
.lab-btn {
  background: linear-gradient(135deg, var(--ip-cyan), var(--ip-dark));
  color: #fff; font-weight: 800; border-radius: 12px;
  box-shadow: 0 6px 16px rgba(27,32,128,.18);
  transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.lab-btn:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(27,32,128,.24); }
.lab-btn:active { transform: translateY(0); }

/* ── Top bar ─────────────────────────────────────────────────────────────── */
.lab-topbar {
  position: sticky; top: 0; z-index: 20;
  background: rgba(255,255,255,.85); backdrop-filter: saturate(180%) blur(10px);
  border-bottom: 1px solid #f1f5f9;
}

.lab-fade { animation: labFade .3s ease both; }
@keyframes labFade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

aside nav::-webkit-scrollbar { display: none; }
*::-webkit-scrollbar { width: 9px; height: 9px; }
*::-webkit-scrollbar-thumb { background: #d7dee7; border-radius: 8px; border: 2px solid transparent; background-clip: content-box; }
*::-webkit-scrollbar-thumb:hover { background: #b6c1cf; background-clip: content-box; }

input:focus, select:focus, textarea:focus { box-shadow: 0 0 0 3px rgba(41,171,226,.15); }
