/**
 * ============================================================
 * ALYDRON REUSABLE COMPONENTS
 * Buttons, cards, badges, terminal chrome, post cards and feedback states.
 * All selectors use the alydron- namespace to avoid WooCommerce collisions.
 * ============================================================
 */
.alydron-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 1px solid; border-radius: var(--aly-radius-sm); padding: 0 18px; font: 750 11px/1 var(--aly-font-mono); letter-spacing: .055em; text-transform: uppercase; transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease; }
.alydron-button-primary { border-color: var(--aly-accent); background: var(--aly-accent); color: #031003 !important; }
.alydron-button-primary:hover { background: #67ff4a; transform: translateY(-1px); }
.alydron-button-secondary { border-color: var(--aly-border-strong); background: transparent; color: var(--aly-text) !important; }
.alydron-button-secondary:hover { border-color: var(--aly-accent-border); background: var(--aly-accent-soft); color: var(--aly-accent) !important; }
.alydron-text-link { color: var(--aly-accent) !important; font: 750 10px/1.5 var(--aly-font-mono); letter-spacing: .06em; text-transform: uppercase; }
.alydron-badge { display: inline-flex; align-items: center; border: 1px solid var(--aly-accent-border); border-radius: var(--aly-radius-sm); padding: 7px 9px; background: var(--aly-accent-soft); color: var(--aly-accent); font: 700 9px/1 var(--aly-font-mono); letter-spacing: .07em; }
.alydron-terminal-bar { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--aly-border); padding: 0 14px; color: var(--aly-text-muted); font: 600 9px/1 var(--aly-font-mono); }
.alydron-terminal-bar > span { display: flex; gap: 5px; }
.alydron-terminal-bar i { width: 7px; height: 7px; border-radius: 50%; background: var(--aly-border-strong); }
.alydron-terminal-bar i:first-child { background: var(--aly-danger); }
.alydron-terminal-bar i:nth-child(2) { background: var(--aly-warning); }
.alydron-terminal-bar i:last-child { background: var(--aly-accent); }
.alydron-card-grid { display: grid; gap: 14px; }
.alydron-card-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.alydron-card, .alydron-article-card { min-height: 300px; display: flex; flex-direction: column; border: 1px solid var(--aly-border); border-radius: var(--aly-radius-md); padding: 26px; background: linear-gradient(145deg, var(--aly-surface), #070a08); transition: transform 180ms ease, border-color 180ms ease, background 180ms ease; }
.alydron-card:hover, .alydron-article-card:hover { transform: translateY(-3px); border-color: var(--aly-border-strong); background: var(--aly-surface-hover); }
.alydron-card-code { color: var(--aly-accent); font: 700 10px/1 var(--aly-font-mono); letter-spacing: .08em; }
.alydron-card h3, .alydron-article-card h2 { margin: 56px 0 12px; color: var(--aly-text); font-size: 24px; line-height: 1.1; letter-spacing: -.02em; }
.alydron-card p, .alydron-article-card > p { margin: 0 0 24px; color: var(--aly-text-secondary); font-size: 14px; line-height: 1.65; }
.alydron-card b, .alydron-article-card > .alydron-text-link { margin-top: auto; color: var(--aly-accent); font: 700 10px/1.4 var(--aly-font-mono); text-transform: uppercase; }
.alydron-article-meta { display: flex; justify-content: space-between; gap: 16px; color: var(--aly-text-muted); font: 650 9px/1.4 var(--aly-font-mono); text-transform: uppercase; }
.alydron-article-meta span { color: var(--aly-accent); }

@media (max-width: 900px) {
    .alydron-card-grid-three { grid-template-columns: 1fr 1fr; }
    .alydron-card-grid-three > :last-child { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
    .alydron-card-grid-three { grid-template-columns: 1fr; }
    .alydron-card-grid-three > :last-child { grid-column: auto; }
    .alydron-card, .alydron-article-card { min-height: 270px; padding: 22px; }
}
