/**
 * NovaTheme — WordPress Core Styles
 *
 * Required WP classes: alignleft, alignright, aligncenter, wp-caption,
 * gallery, sticky, bypostauthor, embeds, basic Gutenberg blocks.
 */


/* ==========================================================================
   IMAGE ALIGNMENTS
   ========================================================================== */

.alignleft {
    float: left;
    margin: 0 var(--nt-space-xl) var(--nt-space-lg) 0;
}

.alignright {
    float: right;
    margin: 0 0 var(--nt-space-lg) var(--nt-space-xl);
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: var(--nt-space-lg);
}

img.alignnone {
    float: none;
}

img.size-full,
img.size-large,
img.wp-post-image,
img.alignnone,
img.alignright,
img.aligncenter,
img.alignleft {
    max-width: 100%;
    height: auto;
}


/* ==========================================================================
   CAPTIONS
   ========================================================================== */

.wp-caption {
    max-width: 100%;
    text-align: center;
    padding-bottom: var(--nt-space-lg);
}

.wp-caption img {
    max-width: 100%;
    height: auto;
    margin: 0;
    vertical-align: bottom;
}

.wp-caption-text {
    margin: 0;
    padding: 10px;
    font-size: 1rem;
    color: var(--nt-gray-600);
}


/* ==========================================================================
   EMBEDS & IFRAMES
   ========================================================================== */

iframe,
object,
embed,
video {
    max-width: 100%;
}

.nf-embed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin-bottom: var(--nt-space-lg);
}

.nf-embed iframe,
.nf-embed object,
.nf-embed embed,
.nf-embed video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}


/* ==========================================================================
   STICKY POST
   ========================================================================== */

.sticky .nf-card {
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.12), 0 10px 10px rgba(0, 0, 0, 0.08);
}

.bypostauthor {
    font-weight: normal;
}


/* ==========================================================================
   GUTENBERG BASIC BLOCKS
   ========================================================================== */

.wp-block-image,
.wp-block-embed,
.wp-block-video,
.wp-block-audio,
.wp-block-gallery,
.wp-block-cover,
.wp-block-code,
.wp-block-button,
.wp-block-media-text {
    margin-bottom: var(--nt-space-lg);
}

.wp-block-audio audio {
    width: 100%;
}

.wp-block-video {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.wp-block-video iframe,
.wp-block-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.wp-block-columns {
    margin-bottom: var(--nt-space-2xl);
}

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

table.wp-block-table,
table.wp-block-table th,
table.wp-block-table td {
    border: 1px solid var(--nt-border);
}

table.wp-block-table th,
table.wp-block-table td {
    padding: 10px 15px;
}

/* Gutenberg quote styles */
.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
    margin: var(--nt-space-2xl) 0;
    padding: var(--nt-space-xl);
}

/* Gutenberg handles its own button styles — no theme override needed */
/* Gutenberg alignment, images, layout — handled by wp-block-library (loaded conditionally) */
