/**
 * Card Component - CSS
 * Source: src/components/Organisms/Card/Card.tsx
 * Last synced: 2026-04-09 (ui-core v2.0.76; computed against Tailwind v4 build)
 */

@import url("../tokens.4b8ea74adec1.css");

.ui-card {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 24px 0;
    box-sizing: border-box;
    background: #ffffff;
    color: #000000;
    border: 1px solid color-mix(in srgb, var(--color-gray-400) 75%, transparent);
    border-radius: var(--radius-xl);
    font-family: var(--font-spline, "Spline Sans", sans-serif);
}

@supports (color: color-mix(in lab, red, red)) {
    .ui-card {
        border-color: color-mix(in oklab, var(--color-gray-400) 75%, transparent);
    }
}

.ui-card-header {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 6px;
    padding: 0 24px;
    container-type: inline-size;
}

.ui-card-header:has(.ui-card-action) {
    grid-template-columns: 1fr auto;
}

.ui-card-title {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    color: inherit;
}

.ui-card-description {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    font-size: 0.875rem;
    line-height: calc(1.25 / 0.875);
    color: inherit;
}

.ui-card-action {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    justify-self: end;
}

.ui-card-content {
    padding: 0 24px;
}

.ui-card-content p {
    margin: 0;
    line-height: 1.5;
}

.ui-card-footer {
    display: flex;
    align-items: center;
    padding: 0 24px;
    box-sizing: border-box;
}

.ui-card-footer p {
    margin: 0;
    line-height: 1.5;
}

/* Storybook-only: Card.stories.tsx With action + Custom styling */
.ui-card-story-action-btn {
    padding: 8px 16px;
    background: var(--color-green-500);
    color: #ffffff;
    border-radius: 4px;
    border: none;
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
}

.ui-card--story-custom {
    background: var(--color-blue-100);
    border: 1px solid var(--color-blue-500);
}
