/**
 * Gutenberg Block Styles for Novara Pro
 */

.wp-block-quote, .wp-block-pullquote {
    border-left: 4px solid var(--novara-crimson);
    padding: 12px 0 12px 24px;
    margin: 1.5em 0;
    font-family: var(--font-heading);
    font-style: italic;
    color: var(--text-primary);
}

.wp-block-button__link {
    background: var(--grad-crimson);
    color: white;
    padding: 12px 24px;
    border-radius: var(--radius-md);
    font-weight: 700;
    transition: all var(--t-fast);
    box-shadow: var(--shadow-crimson);
}
.wp-block-button__link:hover {
    transform: translateY(-2px);
    color: white;
    box-shadow: 0 12px 28px -6px rgba(230,57,70,0.5);
}

.wp-block-image figcaption {
    text-align: center;
    font-size: 13px;
    color: var(--text-muted);
    font-style: italic;
}

.wp-block-cover {
    border-radius: var(--radius-xl);
    overflow: hidden;
}

.wp-block-separator {
    border: 0;
    border-top: 2px solid var(--border-color);
    max-width: 80px;
    margin: 32px auto;
}
.wp-block-separator.is-style-wide { max-width: 100%; }
.wp-block-separator.is-style-dots {
    border: none;
    text-align: center;
}
.wp-block-separator.is-style-dots::before {
    content: '···';
    color: var(--novara-crimson);
    font-size: 24px;
    letter-spacing: 8px;
}

.wp-block-table {
    border-collapse: collapse;
    width: 100%;
    border-radius: var(--radius-md);
    overflow: hidden;
}
.wp-block-table th {
    background: var(--bg-secondary);
    font-weight: 700;
    text-align: left;
    padding: 12px 16px;
}
.wp-block-table td {
    padding: 12px 16px;
    border-bottom: 1px solid var(--border-color);
}

.wp-block-code, pre {
    background: var(--novara-charcoal);
    color: #F4F4F8;
    padding: 20px;
    border-radius: var(--radius-md);
    font-family: var(--font-mono);
    font-size: 14px;
    overflow-x: auto;
    border-left: 3px solid var(--novara-crimson);
}

.wp-block-gallery {
    border-radius: var(--radius-md);
}

/* Color palette */
.has-crimson-color { color: var(--novara-crimson); }
.has-crimson-background-color { background: var(--novara-crimson); color: white; }
.has-black-color { color: var(--novara-black); }
.has-black-background-color { background: var(--novara-black); color: white; }
.has-gold-color { color: var(--novara-gold); }
.has-gold-background-color { background: var(--novara-gold); }

/* Gradient palette */
.has-crimson-gradient-background { background: var(--grad-crimson); color: white; }
.has-sunset-gradient-background  { background: var(--grad-sunset); }
.has-night-gradient-background   { background: var(--grad-night); color: white; }
.has-neon-gradient-background    { background: var(--grad-neon); color: white; }
.has-fire-gradient-background    { background: var(--grad-fire); color: white; }
