/* AI 업무 자동화 진단 서비스 - 보라색 테마 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Sans+KR:wght@300;400;500;600;700&display=swap');

:root {
  --purple-50: #f5f3ff;
  --purple-100: #ede9fe;
  --purple-200: #ddd6fe;
  --purple-300: #c4b5fd;
  --purple-400: #a78bfa;
  --purple-500: #8b5cf6;
  --purple-600: #7c3aed;
  --purple-700: #6d28d9;
  --purple-800: #5b21b6;
  --purple-900: #4c1d95;
}

body {
  font-family: 'Noto Sans KR', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #f8f7fc;
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

/* Header gradient - 보라색 */
.header-gradient {
  background: linear-gradient(135deg, #4c1d95 0%, #7c3aed 50%, #a78bfa 100%);
}

/* Glass effect */
.glass {
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(20px);
}

/* Form fields */
.field {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  font-size: 14px;
  color: #1f2937;
  background: #fff;
  transition: all 0.2s;
  box-sizing: border-box;
}
.field:focus {
  outline: none;
  border-color: #a78bfa;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12);
}
.field::placeholder {
  color: #9ca3af;
}

/* Engine card radio */
.engine-card {
  padding: 14px;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.2s;
  background: #fff;
}
.engine-card:hover {
  border-color: #c4b5fd;
  background: #faf5ff;
}

/* Card hover */
.card-hover {
  transition: all 0.3s ease;
}
.card-hover:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(0,0,0,0.10);
}

/* Progress bar */
.progress-bar {
  transition: width 1.5s ease-in-out;
}

/* Animations */
.fade-in {
  animation: fadeIn 0.5s ease-in;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes spin {
  to { transform: rotate(360deg); }
}
.spinner {
  animation: spin 1s linear infinite;
}

/* Score ring */
.score-ring {
  transition: stroke-dashoffset 1.5s ease-in-out;
}

/* Tooltip */
.tooltip { position: relative; }
.tooltip:hover::after {
  content: attr(data-tip);
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: #1e293b;
  color: white;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  white-space: nowrap;
  z-index: 50;
}

/* Pattern borders */
.pattern-a { border-left: 4px solid #7c3aed; }
.pattern-b { border-left: 4px solid #8b5cf6; }
.pattern-c { border-left: 4px solid #f59e0b; }
.pattern-d { border-left: 4px solid #10b981; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #c4b5fd; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #a78bfa; }

/* Admin */
.admin-sidebar {
  background: linear-gradient(180deg, #1e1b4b 0%, #312e81 100%);
}

/* Responsive */
@media (max-width: 640px) {
  .grid-cols-2 { grid-template-columns: 1fr !important; }
}
