/* DailyOS Modern Glassmorphism & SaaS Design System */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

:root {
  --color-primary: #2563EB;
  --color-secondary: #0F172A;
  --color-accent: #06B6D4;
  --color-success: #10B981;
  --color-warning: #F59E0B;
  --color-danger: #EF4444;
  --color-bg-light: #F8FAFC;
  --color-bg-dark: #090D16;
}

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Custom Scrollbars */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.2);
  border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(148, 163, 184, 0.4);
}

/* Dark / Light Mode Glassmorphism Utility */
.glass-panel {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(226, 232, 240, 0.8);
  box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.05);
}

.dark .glass-panel {
  background: rgba(15, 23, 42, 0.75);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(30, 41, 59, 0.7);
  box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.3);
}

.glass-panel-hover {
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.glass-panel-hover:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px -4px rgba(37, 99, 235, 0.12);
  border-color: rgba(37, 99, 235, 0.3);
}

/* Kanban Ghost and Dragging */
.sortable-ghost {
  opacity: 0.4;
  background: rgba(37, 99, 235, 0.15) !important;
  border: 2px dashed #2563EB !important;
}

.sortable-chosen {
  cursor: grabbing;
}

/* Glowing Pulsing Animations */
@keyframes pulse-glow {
  0%, 100% {
    box-shadow: 0 0 15px rgba(37, 99, 235, 0.4);
  }
  50% {
    box-shadow: 0 0 25px rgba(6, 182, 212, 0.7);
  }
}

.pulse-glow-box {
  animation: pulse-glow 3s infinite ease-in-out;
}

@keyframes live-dot {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.4); opacity: 0.5; }
}

.live-indicator {
  animation: live-dot 1.5s infinite;
}

/* Printable PDF stylesheet rules */
@media print {
  body {
    background: #ffffff !important;
    color: #000000 !important;
  }
  .no-print, #sidebar, #topbar, #jin-floating-widget, .action-buttons {
    display: none !important;
  }
  .print-only {
    display: block !important;
  }
  .glass-panel {
    border: 1px solid #ddd !important;
    box-shadow: none !important;
    background: none !important;
  }
}

/* --- Enterprise UI Additions --- */
[x-cloak] { display: none !important; }
.line-clamp-2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.line-clamp-3 { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

@keyframes bounce-once {
  0%   { transform: scale(1); }
  30%  { transform: scale(1.4); }
  60%  { transform: scale(0.9); }
  80%  { transform: scale(1.1); }
  100% { transform: scale(1); }
}
.animate-bounce-once { animation: bounce-once 0.5s ease forwards; }

@keyframes slide-down {
  0%   { opacity:0; transform:translateY(-8px) scale(0.97); }
  100% { opacity:1; transform:translateY(0) scale(1); }
}
#quick-add-dropdown:not(.hidden), #notif-dropdown:not(.hidden) {
  animation: slide-down 0.18s ease forwards;
}
