/* ============================================
   JWT Lifecycle Visualizer - Theme Colors
   Project-specific colors and overrides
   ============================================ */

:root {
    /* JWT Component Colors - Warm Earth Tones */
    --color-header-start: #B8860B;       /* Dark goldenrod */
    --color-header-end: #8B6914;
    --color-payload-start: #A67B5B;      /* Warm brown/sienna */
    --color-payload-end: #8B5A3C;
    --color-signature-start: #5D7B5D;    /* Forest sage */
    --color-signature-end: #4A5F4A;

    --color-token-glow: rgba(184, 134, 11, 0.45);
    --color-valid: #7B9E7B;              /* Sage green */
    --color-expired: #9B6B6B;            /* Dusty rose/terracotta */

    --color-client-start: #C2785C;       /* Terra cotta */
    --color-client-end: #A65D42;
    --color-auth-server-start: #7B9E7B;  /* Sage */
    --color-auth-server-end: #5C7A5C;
    --color-resource-server-start: #6B9E9E;  /* Teal */
    --color-resource-server-end: #4A7A7A;

    --color-clock: #D4A855;              /* Gold/amber */
    --color-secret-key: #8B5A3C;         /* Deep brown */

    /* Theme accent for controls */
    --color-accent-start: var(--color-header-start);
    --color-accent-end: var(--color-signature-start);
}

/* Link colors using JWT theme */
a {
    color: var(--color-header-start);
}

a:hover {
    color: var(--color-header-end);
}

/* JWT Logo Gradient */
.jwt-logo {
    font-size: 1.25rem;
    font-weight: 600;
    background: linear-gradient(135deg, var(--color-header-start), var(--color-signature-start));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* JWT-themed control button */
.viz-control-btn-primary {
    background: linear-gradient(135deg, var(--color-auth-server-end), var(--color-client-end)) !important;
    color: white !important;
}

.viz-control-btn-primary:hover {
    filter: brightness(1.1);
}

/* JWT-themed slider thumb */
.viz-speed-slider::-webkit-slider-thumb {
    background: linear-gradient(135deg, var(--color-header-start), var(--color-signature-start));
}

.viz-speed-slider::-moz-range-thumb {
    background: linear-gradient(135deg, var(--color-header-start), var(--color-signature-start));
}

/* JWT lesson item active state */
.viz-lesson-item.active {
    background-color: var(--bg-surface-light) !important;
    border-left-color: var(--color-header-start) !important;
}

.viz-lesson-item.active .lesson-number {
    background: linear-gradient(135deg, var(--color-header-start), var(--color-header-end));
    color: white;
}

/* Focus indicators using JWT theme */
:focus-visible {
    outline: 2px solid var(--color-header-start);
    outline-offset: 2px;
}

.viz-lesson-item:focus-visible {
    outline: 2px solid var(--color-header-start);
    background-color: var(--bg-surface-light);
}
