/**
 * 654 MEMENTO - CUSTOM OVERRIDES
 * Project-specific styles not covered by base/components/layout
 */

/* Agent cards - expand workflow preview on hover */
.agent-card .workflow-preview {
    max-height: 120px;
    transition: max-height 0.3s ease-in-out;
}

.agent-card:hover .workflow-preview {
    max-height: 200px;
}

.workflow-preview {
    background: var(--color-bg-2);
}

/* Badge phase variations - Tailwind @apply directives */
.badge-task-0 { @apply badge-neutral; }
.badge-task-1 { @apply badge-primary; }
.badge-task-2 { @apply badge-secondary; }
.badge-task-3 { @apply badge-accent; }

/* Font mono ligatures */
.font-mono {
    font-feature-settings: "liga" 0, "kern" 1;
}

/* View toggle button group */
.btn-group .btn {
    transition: all 0.2s ease-in-out;
}

.btn-group .btn:hover {
    transform: translateY(-1px);
}

.btn-group .btn:active {
    transform: translateY(0);
}

/* Sidebar search input */
#left-sidebar .input {
    transition: all 0.2s ease;
}

#left-sidebar .input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(34, 211, 238, 0.2);
}

/* Mobile menu toggle */
.btn-circle {
    transition: all 0.3s ease;
}

.btn-circle:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(34, 211, 238, 0.4);
}

/* Card hover gradient effect */
.card-hover-gradient:hover {
    /* Hover effects disabled for cleaner UI */
}

/* Custom scrollbar for card bodies */
.card-body .space-y-2:hover {
    scrollbar-width: thin;
    scrollbar-color: var(--color-primary) transparent;
}

.card-body .space-y-2::-webkit-scrollbar { width: 6px; }
.card-body .space-y-2::-webkit-scrollbar-track { background: transparent; }
.card-body .space-y-2::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-primary) 100%);
    border-radius: 3px;
}
.card-body .space-y-2::-webkit-scrollbar-thumb:hover { background: var(--color-primary); }

/* Focus states with gradient */
.input:focus,
.select:focus,
.btn:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
    box-shadow: 0 0 0 4px rgba(34, 211, 238, 0.2);
}

/* Icon color accents */
.icon-primary { color: var(--color-secondary); }
.icon-secondary { color: var(--color-primary); }

/* Typography utilities */
.font-bold, .font-semibold { font-weight: 500; }
.text-foreground, .text-base-content { color: var(--color-text); }

/* Page header overrides */
.page-header h1,
.page-header h2,
.page-header h3 {
    font-weight: 500;
}

/* Link hover effect - neutral gray with subtle underline */
a:hover {
    color: rgb(55, 65, 81); /* gray-700 */
    text-decoration: underline;
    text-decoration-color: rgba(34, 211, 238, 0.3); /* subtle cyan underline */
    transition: all 0.2s ease;
}

/* Sidebar links - slightly darker on hover */
#left-sidebar a:hover {
    color: rgb(31, 41, 55); /* gray-800 */
    background-color: rgba(34, 211, 238, 0.05); /* subtle cyan bg */
}

/* Documentation menu - Drill-down navigation pattern */
#left-sidebar .docs-drill-btn {
    min-width: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

#left-sidebar .docs-drill-btn:hover {
    background-color: rgba(34, 211, 238, 0.1);
}

#left-sidebar .docs-drill-btn:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: -2px;
}

/* Navigation panels container */
.nav-panel {
    position: relative;
    width: 100%;
}

/* Slide animations */
@keyframes slideOutLeft {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(-100%);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideOutRight {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(100%);
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.nav-slide-out-left {
    animation: slideOutLeft 0.3s ease-in-out forwards;
}

.nav-slide-in-right {
    animation: slideInRight 0.3s ease-in-out forwards;
}

.nav-slide-out-right {
    animation: slideOutRight 0.3s ease-in-out forwards;
}

.nav-slide-in-left {
    animation: slideInLeft 0.3s ease-in-out forwards;
}

/* Documentation navigation styling */
#docs-nav .menu-title {
    margin-top: 0.5rem;
    padding-left: 0.25rem;
}

#docs-nav .menu-title:first-child {
    margin-top: 0;
}

#docs-nav a.active {
    background-color: rgba(34, 211, 238, 0.15);
    color: var(--color-primary);
    font-weight: 500;
}

/* Back button styling */
[data-back] {
    border-bottom: 1px solid rgba(31, 41, 55, 0.1);
    border-radius: 0;
}

/* Account menu dropdown accordion */
.account-toggle {
    cursor: pointer;
}

.account-toggle:active {
    transform: scale(0.98);
}

.account-toggle[aria-expanded="true"] {
    background-color: rgba(34, 211, 238, 0.1);
}

#account-menu {
    transition: all 0.2s ease-in-out;
}

#account-menu li a,
#account-menu li button {
    padding-left: 2.5rem;
}
