/* =========================================================
   ALPHA STRIKE — CARD COMPONENT
   Version: 1.0
   Status: Locked
   ========================================================= */


/* =========================================================
   1. DEMO FOUNDATION
   ========================================================= */

.alpha-card-demo {
    max-width: var(--alpha-container-max);
    margin: 0 auto;
    padding: var(--alpha-spacing-6);

    color: var(--alpha-text-primary);

    font-family: var(--alpha-font-body);
    font-size: var(--alpha-font-size-body);
    line-height: var(--alpha-line-height-body);
}

.alpha-card-demo__header {
    margin-bottom: var(--alpha-spacing-8);
}

.alpha-card-demo__eyebrow {
    margin: 0 0 var(--alpha-spacing-2);

    color: var(--alpha-text-accent);

    font-size: var(--alpha-font-size-caption);
    letter-spacing: var(--alpha-letter-spacing-label);
}

.alpha-card-demo__title {
    margin: 0 0 var(--alpha-spacing-3);

    color: var(--alpha-text-primary);

    font-family: var(--alpha-font-display);
    font-size: var(--alpha-font-size-h1);
    line-height: var(--alpha-line-height-heading);
}

.alpha-card-demo__description {
    max-width: 720px;
    margin: 0;

    color: var(--alpha-text-secondary);
}

.alpha-card-demo__section {
    margin-top: var(--alpha-spacing-8);
}

.alpha-card-demo__section h2 {
    margin: 0 0 var(--alpha-spacing-4);

    color: var(--alpha-text-primary);

    font-family: var(--alpha-font-display);
    font-size: var(--alpha-font-size-h3);
    line-height: var(--alpha-line-height-heading);
}


/* =========================================================
   2. BASE CARD
   ========================================================= */

.alpha-card {
    width: 100%;
    max-width: 720px;

    box-sizing: border-box;

    background: var(--alpha-surface-primary);

    border:
        var(--alpha-border-thin)
        solid
        var(--alpha-border-default);

    border-radius: var(--alpha-radius-md);

    box-shadow: var(--alpha-shadow-subtle);

    color: var(--alpha-text-primary);

    overflow: hidden;

    transition:
        border-color var(--alpha-motion-duration-fast)
            var(--alpha-motion-ease-standard),
        box-shadow var(--alpha-motion-duration-fast)
            var(--alpha-motion-ease-standard);
}


/* =========================================================
   3. CARD HOVER
   ========================================================= */

.alpha-card:hover {
    border-color: var(--alpha-border-strong);
    box-shadow: var(--alpha-shadow-medium);
}


/* =========================================================
   4. CARD HEADER
   ========================================================= */

.alpha-card__header {
    padding:
        var(--alpha-spacing-5)
        var(--alpha-spacing-5)
        0;
}

.alpha-card__eyebrow {
    margin: 0 0 var(--alpha-spacing-2);

    color: var(--alpha-text-accent);

    font-size: var(--alpha-font-size-caption);
    font-weight: var(--alpha-font-weight-bold);
    letter-spacing: var(--alpha-letter-spacing-label);
}


/* =========================================================
   5. CARD TITLE
   ========================================================= */

.alpha-card__title {
    margin: 0;

    color: var(--alpha-text-primary);

    font-family: var(--alpha-font-display);
    font-size: var(--alpha-font-size-h2);
    line-height: var(--alpha-line-height-heading);
}


/* =========================================================
   6. CARD BODY
   ========================================================= */

.alpha-card__body {
    padding: var(--alpha-spacing-5);
}

.alpha-card__header + .alpha-card__body {
    padding-top: var(--alpha-spacing-3);
}

.alpha-card__description {
    margin: 0;

    color: var(--alpha-text-secondary);

    line-height: var(--alpha-line-height-body);
}


/* =========================================================
   7. CARD FOOTER
   ========================================================= */

.alpha-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--alpha-spacing-4);

    padding:
        var(--alpha-spacing-4)
        var(--alpha-spacing-5);

    border-top:
        var(--alpha-border-thin)
        solid
        var(--alpha-border-subtle);

    background: var(--alpha-surface-secondary);
}

.alpha-card__meta {
    color: var(--alpha-text-muted);

    font-size: var(--alpha-font-size-caption);
    letter-spacing: var(--alpha-letter-spacing-label);
}


/* =========================================================
   8. CARD ACTION
   ========================================================= */

.alpha-card__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 32px;

    padding:
        var(--alpha-spacing-2)
        var(--alpha-spacing-3);

    border:
        var(--alpha-border-thin)
        solid
        var(--alpha-border-default);

    border-radius: var(--alpha-radius-sm);

    background: transparent;

    color: var(--alpha-text-primary);

    font-family: var(--alpha-font-body);
    font-size: var(--alpha-font-size-label);
    font-weight: var(--alpha-font-weight-bold);

    cursor: pointer;

    transition:
        background-color var(--alpha-motion-duration-fast)
            var(--alpha-motion-ease-standard),
        border-color var(--alpha-motion-duration-fast)
            var(--alpha-motion-ease-standard),
        color var(--alpha-motion-duration-fast)
            var(--alpha-motion-ease-standard);
}

.alpha-card__action:hover {
    background: var(--alpha-interactive-hover);
    border-color: var(--alpha-interactive-hover);
    color: var(--alpha-text-inverse);
}

.alpha-card__action:active {
    background: var(--alpha-interactive-active);
    border-color: var(--alpha-interactive-active);
    color: var(--alpha-text-inverse);
}


/* =========================================================
   9. CARD ACTION FOCUS
   ========================================================= */

.alpha-card__action:focus-visible {
    outline:
        var(--alpha-border-medium)
        solid
        var(--alpha-interactive-focus);

    outline-offset: var(--alpha-spacing-1);
}


/* =========================================================
   10. DATA CARD
   ========================================================= */

.alpha-card--data {
    border-color: var(--alpha-border-accent);
}

.alpha-card--data .alpha-card__header {
    padding-bottom: var(--alpha-spacing-2);
}

.alpha-card__data {
    margin: 0;

    color: var(--alpha-text-primary);

    font-family: var(--alpha-font-display);
    font-size: var(--alpha-font-size-h1);
    line-height: var(--alpha-line-height-heading);
}


/* =========================================================
   11. REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .alpha-card,
    .alpha-card__action {
        transition: none;
    }
}


/* =========================================================
   12. RESPONSIVE
   ========================================================= */

@media (max-width: 640px) {

    .alpha-card-demo {
        padding: var(--alpha-spacing-4);
    }

    .alpha-card {
        max-width: none;
    }

    .alpha-card__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .alpha-card__action {
        width: 100%;
    }
}