/**
 * Coffee App - Card-Based Dashboard Design
 * @version 7.0.0
 */

/* =============================================================================
   APP THEME VARIABLES
   ============================================================================= */

.app-coffee {
    --coffee-primary: #6F4E37;
    --coffee-secondary: #8B6914;
    --coffee-light: #FFF8F0;
    --coffee-bg: linear-gradient(180deg, #FFF8F0 0%, #F5E6D3 100%);
    --coffee-star: #F59E0B;

    /* Override app accent for dashboard cards */
    --app-accent: var(--coffee-primary);
    --app-accent-dark: #5C3D2E;
    --app-accent-light: rgba(111, 78, 55, 0.08);
    --card-bg: #ffffff;
    --card-border: rgba(111, 78, 55, 0.12);
    --card-shadow: rgba(111, 78, 55, 0.08);
    --card-shadow-hover: rgba(111, 78, 55, 0.15);
}

/* =============================================================================
   DASHBOARD LAYOUT
   ============================================================================= */

.coffee-dashboard {
    background: var(--coffee-bg);
    min-height: 100vh;
    padding: calc(var(--header-height, 60px) + 20px) 16px 32px;
}

@media (min-width: 640px) {
    .coffee-dashboard {
        padding: calc(var(--header-height, 60px) + 24px) 24px 40px;
    }
}

/* =============================================================================
   STAT CARDS ENHANCEMENT
   ============================================================================= */

.coffee-dashboard .stat-value {
    color: var(--coffee-primary);
}

.coffee-dashboard .stat-label {
    color: var(--coffee-secondary);
}

.coffee-dashboard .rating-display {
    color: var(--coffee-star);
}

/* =============================================================================
   FORM CARD STYLING
   ============================================================================= */

.coffee-dashboard .form-card {
    border: 1px solid var(--card-border);
}

.coffee-dashboard .form-card .card-header {
    background: linear-gradient(135deg, var(--app-accent-light) 0%, transparent 100%);
    border-bottom-color: var(--card-border);
}

.coffee-dashboard .form-card .card-title {
    color: var(--coffee-primary);
}

.coffee-dashboard .form-field-input {
    border-color: #E5D4C0;
    text-align: center;
}

.coffee-dashboard .form-field-input:focus {
    border-color: var(--coffee-primary);
    box-shadow: 0 0 0 3px rgba(111, 78, 55, 0.1);
}

.coffee-dashboard .form-field-input::placeholder {
    color: #9CA3AF;
}

.coffee-dashboard .form-field-label {
    color: var(--coffee-primary);
    font-weight: 600;
}

/* =============================================================================
   CHIP STYLING
   ============================================================================= */

.coffee-dashboard .chip {
    border-color: #E5D4C0;
    color: var(--coffee-primary);
}

.coffee-dashboard .chip:hover {
    border-color: var(--coffee-primary);
    background: var(--app-accent-light);
}

.coffee-dashboard .chip--selected {
    background: var(--coffee-primary);
    border-color: var(--coffee-primary);
    color: white;
}

.coffee-dashboard .chip--disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* =============================================================================
   RATING INPUT STYLING
   ============================================================================= */

.coffee-dashboard .rating-input {
    justify-content: center;
}

.coffee-dashboard .rating-input-star {
    color: #D4D4D4;
    background: white;
    border: 2px solid #E5E5E5;
    border-radius: 12px;
    width: 48px;
    height: 48px;
}

.coffee-dashboard .rating-input-star:hover,
.coffee-dashboard .rating-input-star--active {
    color: var(--coffee-star);
    border-color: var(--coffee-star);
    background: #FFFBEB;
}

/* =============================================================================
   QUICK ACTION BUTTON
   ============================================================================= */

.coffee-dashboard .quick-action-btn {
    background: linear-gradient(145deg, #8B6914, #6F4E37);
    box-shadow:
        0 4px 14px rgba(111, 78, 55, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    font-weight: 600;
    border-radius: 14px;
}

.coffee-dashboard .quick-action-btn:hover:not(:disabled) {
    background: linear-gradient(145deg, #9A7516, #7D5840);
    box-shadow:
        0 6px 20px rgba(111, 78, 55, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

.coffee-dashboard .quick-action-btn:disabled {
    opacity: 0.5;
}

/* =============================================================================
   ENTRY CARD STYLING
   ============================================================================= */

.coffee-dashboard .entry-card {
    border-color: var(--card-border);
}

.coffee-dashboard .entry-card:hover {
    border-color: var(--coffee-primary);
    background: var(--app-accent-light);
}

.coffee-dashboard .entry-card-icon {
    background: linear-gradient(135deg, #FFF8F0 0%, #F5E6D3 100%);
    font-size: 1.5rem;
}

.coffee-dashboard .entry-card-title {
    color: var(--coffee-primary);
}

.coffee-dashboard .entry-card-subtitle {
    color: #78716C;
}

.coffee-dashboard .entry-card-meta {
    color: #9CA3AF;
}

.coffee-dashboard .entry-card-meta .rating-display {
    color: var(--coffee-star);
}

.coffee-dashboard .entry-action-btn {
    border-color: #E5D4C0;
}

.coffee-dashboard .entry-action-btn:hover {
    background: var(--app-accent-light);
    border-color: var(--coffee-primary);
}

/* =============================================================================
   EMPTY STATE
   ============================================================================= */

.coffee-dashboard .empty-card {
    background: linear-gradient(135deg, var(--app-accent-light) 0%, var(--card-bg) 100%);
}

.coffee-dashboard .empty-card-icon {
    opacity: 0.6;
}

.coffee-dashboard .empty-card-title {
    color: var(--coffee-primary);
}

/* =============================================================================
   TOAST NOTIFICATIONS
   ============================================================================= */

.toast-container {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
}

.toast {
    padding: 12px 24px;
    border-radius: 12px;
    background: white;
    color: #374151;
    font-size: 14px;
    font-weight: 500;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.toast.show {
    opacity: 1;
    transform: translateY(0);
}

.toast-success {
    background: #D1FAE5;
    color: #065F46;
}

.toast-error {
    background: #FEE2E2;
    color: #991B1B;
}

.toast-info {
    background: var(--coffee-light);
    color: var(--coffee-primary);
}

/* =============================================================================
   RESPONSIVE ADJUSTMENTS
   ============================================================================= */

@media (max-width: 360px) {
    .coffee-dashboard .rating-input-star {
        width: 42px;
        height: 42px;
        font-size: 1.5rem;
    }

    .coffee-dashboard .stat-value {
        font-size: 2rem;
    }

    .coffee-dashboard .chip {
        padding: 6px 12px;
        font-size: 0.8125rem;
    }
}

/* =============================================================================
   DARK THEME SUPPORT
   ============================================================================= */

[data-theme="dark"] .coffee-dashboard {
    --coffee-light: #2D2520;
    --coffee-bg: linear-gradient(180deg, #1E1A16 0%, #2D2520 100%);
    --card-bg: #2D2520;
    --card-border: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .coffee-dashboard .form-field-input {
    background: var(--card-bg);
    border-color: rgba(255, 255, 255, 0.15);
    color: #F5F5F5;
}

[data-theme="dark"] .coffee-dashboard .chip {
    background: var(--card-bg);
    border-color: rgba(255, 255, 255, 0.15);
    color: #E5D4C0;
}

[data-theme="dark"] .coffee-dashboard .rating-input-star {
    background: var(--card-bg);
    border-color: rgba(255, 255, 255, 0.15);
    color: #666;
}

/* =============================================================================
   REDUCED MOTION
   ============================================================================= */

@media (prefers-reduced-motion: reduce) {
    .coffee-dashboard .dashboard-card,
    .coffee-dashboard .entry-card,
    .coffee-dashboard .chip,
    .coffee-dashboard .quick-action-btn,
    .toast {
        transition: none;
    }

    .coffee-dashboard .dashboard-card:hover,
    .coffee-dashboard .quick-action-btn:hover {
        transform: none;
    }
}
