/* ==========================================================================
   GUTENBERG BLOCK STYLES — tema oscuro
   ========================================================================== */

/* Alineacion de imagenes */
.wp-block-image img { max-width: 100%; height: auto; }
.wp-block-image.aligncenter { text-align: center; }
.wp-block-image.alignfull img,
.wp-block-image.alignwide img { width: 100%; }

/* Botones */
.wp-block-button__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-3) var(--space-6);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-semibold);
    border-radius: var(--radius-md);
    text-decoration: none;
    cursor: pointer;
    transition: background-color var(--transition-fast), box-shadow var(--transition-fast);
    border: none;
}

.wp-block-button__link:not(.has-background) {
    background: var(--color-accent);
    color: #fff;
}

.wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent;
    border: 1px solid var(--color-border-strong);
    color: var(--color-accent);
}

/* Separator */
.wp-block-separator {
    border: none;
    border-bottom: 1px solid var(--color-border);
    margin: var(--space-8) 0;
}

.wp-block-separator.is-style-wide { border-bottom-width: 2px; }

/* Blockquote */
.wp-block-quote {
    border-left: 4px solid var(--color-accent);
    padding: var(--space-4) var(--space-6);
    background: var(--glass-bg);
    border-radius: var(--radius-md);
    margin: var(--space-6) 0;
    font-style: italic;
    color: var(--color-text-secondary);
}

.wp-block-quote cite {
    display: block;
    margin-top: var(--space-3);
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
    font-style: normal;
}

/* Table */
.wp-block-table {
    width: 100%;
    overflow-x: auto;
    margin: var(--space-6) 0;
}

.wp-block-table table {
    width: 100%;
    border-collapse: collapse;
}

.wp-block-table th,
.wp-block-table td {
    padding: var(--space-3) var(--space-4);
    border: 1px solid var(--color-border);
    text-align: left;
}

.wp-block-table th {
    background: var(--glass-bg);
    font-weight: var(--font-weight-semibold);
}

/* Group / Cover */
.wp-block-group.has-background,
.wp-block-cover {
    padding: var(--space-8);
    border-radius: var(--radius-lg);
    margin: var(--space-6) 0;
}

/* Columns */
.wp-block-columns {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-6);
    margin: var(--space-6) 0;
}

.wp-block-column {
    flex: 1 1 0;
    min-width: 0;
}

/* Lists */
.wp-block-list { padding-left: var(--space-6); }
.wp-block-list li { margin-bottom: var(--space-2); }

/* Code / Preformatted */
.wp-block-code,
.wp-block-preformatted {
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-4);
    font-family: 'Courier New', monospace;
    font-size: var(--font-size-sm);
    overflow-x: auto;
}

/* Pullquote */
.wp-block-pullquote {
    border-top: 3px solid var(--color-accent);
    border-bottom: 3px solid var(--color-accent);
    padding: var(--space-8) 0;
    margin: var(--space-8) 0;
    text-align: center;
    font-size: var(--font-size-xl);
    color: var(--color-text-secondary);
}

/* Gallery */
.wp-block-gallery { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.wp-block-gallery .blocks-gallery-item { flex: 1 1 auto; }
.wp-block-gallery img { border-radius: var(--radius-md); }

/* File download button */
.wp-block-file .wp-block-file__button {
    background: var(--color-accent);
    color: #fff;
    border-radius: var(--radius-md);
    padding: var(--space-2) var(--space-4);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semibold);
}

/* Embeds responsive */
.wp-block-embed { margin: var(--space-6) 0; }
.wp-block-embed iframe { max-width: 100%; }

/* Latest posts */
.wp-block-latest-posts {
    list-style: none;
    padding: 0;
}

.wp-block-latest-posts li {
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-border);
}

.wp-block-latest-posts__post-title {
    color: var(--color-text);
    font-weight: var(--font-weight-semibold);
}

.wp-block-latest-posts__post-date {
    font-size: var(--font-size-xs);
    color: var(--color-text-muted);
}
