/* Amphion Developer Platform — custom styles */

:root {
    --color-primary: #6366f1;
    --color-primary-hover: #4f46e5;
    --color-primary-light: #e0e7ff;
    --color-sidebar-bg: #1e1b4b;
    --color-sidebar-text: #c7d2fe;
    --color-sidebar-active: #6366f1;
}

/* Alpine.js cloak: hide until Alpine initializes */
[x-cloak] { display: none !important; }

/* Smooth page transitions */
body {
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Sidebar active state */
.sidebar-link.active {
    background-color: rgba(99, 102, 241, 0.15);
    color: #fff;
    border-right: 3px solid var(--color-primary);
}

.sidebar-link:hover:not(.active) {
    background-color: rgba(255, 255, 255, 0.05);
}

/* Data cards */
.data-card {
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.data-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

/* Toast notification */
.toast-enter {
    animation: toast-in 0.3s ease-out;
}

.toast-leave {
    animation: toast-out 0.3s ease-in forwards;
}

@keyframes toast-in {
    from { opacity: 0; transform: translateY(-12px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes toast-out {
    from { opacity: 1; transform: translateY(0); }
    to   { opacity: 0; transform: translateY(-12px); }
}

/* Table styling */
.data-table th {
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
}

/* Modal backdrop */
.modal-backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(2px);
}

/* Focus ring utility */
input:focus, select:focus, textarea:focus {
    outline: none;
}

/* Scrollbar (Webkit) */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Responsive table scroll hint */
@media (max-width: 640px) {
    .overflow-x-auto { -webkit-overflow-scrolling: touch; }
}
