/* ==================================================================
 * Trunao Brand Overlay — paints twentytwentyfive (or any block theme)
 * in Trunao's teal+clean palette with Open Sans body and IBM Plex Mono
 * code. Loaded via mu-plugin so it doesn't depend on child-theme
 * inheritance (which was breaking FSE pattern references).
 * ================================================================== */
:root {
    --tr-teal:       #04656E;
    --tr-teal-dark:  #065860;
    --tr-teal-tint:  #E6F2F3;
    --tr-ink:        #1C2324;
    --tr-ink-2:      #3A4546;
    --tr-muted:      #586566;
    --tr-line:       #E2E7E7;
    --tr-line-2:     #EEF1F1;
    --tr-line-3:     #D5DCDC;
    --tr-surface:    #F6F8F8;
    --tr-bg:         #EEF1F1;
}

/* Body: Open Sans + Trunao palette */
body,
body.wp-site-blocks {
    font-family: 'Open Sans', system-ui, -apple-system, Segoe UI, sans-serif !important;
    color: var(--tr-ink) !important;
    background: var(--tr-bg) !important;
    -webkit-font-smoothing: antialiased;
    line-height: 1.6;
}

/* Clear large hero spacing that twentytwentyfive adds */
.wp-site-blocks > main,
main.wp-block-group {
    background: var(--tr-bg) !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6,
.wp-block-post-title,
.wp-block-site-title {
    font-family: 'Open Sans', system-ui, sans-serif !important;
    color: var(--tr-ink) !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em;
}
.wp-block-post-title a { color: var(--tr-ink) !important; }
.wp-block-post-title a:hover { color: var(--tr-teal) !important; }

/* Links: teal */
a,
.wp-block-site-title a,
.wp-block-navigation a {
    color: var(--tr-teal) !important;
    text-decoration: none !important;
}
a:hover,
.wp-block-navigation a:hover {
    color: var(--tr-teal-dark) !important;
    text-decoration: underline !important;
}

/* Post meta (date, author): muted */
.wp-block-post-date,
.wp-block-post-date a,
.wp-block-post-author-name,
.wp-block-post-author,
.wp-block-post-terms,
.wp-block-post-terms a {
    color: var(--tr-muted) !important;
    font-size: 0.9em !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Cards: wrap each post in the Query loop with a card-like container */
.wp-block-query .wp-block-post {
    background: #fff !important;
    border: 1px solid var(--tr-line) !important;
    border-radius: 10px !important;
    padding: 24px 28px !important;
    margin-bottom: 22px !important;
    transition: box-shadow 0.18s ease, border-color 0.18s ease;
}
.wp-block-query .wp-block-post:hover {
    box-shadow: 0 6px 20px rgba(28, 35, 36, 0.06);
    border-color: var(--tr-line-3) !important;
}
.wp-block-query .wp-block-post .wp-block-post-featured-image img {
    border-radius: 8px !important;
}

/* Post reading view */
.wp-block-post-content,
.entry-content {
    font-size: 17px !important;
    line-height: 1.75 !important;
    color: var(--tr-ink-2) !important;
}
.wp-block-post-content h2,
.wp-block-post-content h3 {
    margin-top: 1.8em !important;
    color: var(--tr-ink) !important;
}

/* Inline code */
:not(pre) > code {
    background: var(--tr-teal-tint) !important;
    color: var(--tr-teal-dark) !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    font-size: 0.9em !important;
    font-family: 'IBM Plex Mono', Menlo, Consolas, monospace !important;
}

/* Code / preformatted blocks */
pre,
.wp-block-code,
.wp-block-preformatted {
    background: #1C2324 !important;
    color: #E6F2F3 !important;
    padding: 18px 22px !important;
    border-radius: 8px !important;
    font-family: 'IBM Plex Mono', Menlo, Consolas, monospace !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    overflow-x: auto !important;
    border: none !important;
}
pre code, .wp-block-code code {
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
}

/* Blockquote: teal left bar */
blockquote,
.wp-block-quote {
    border-left: 4px solid var(--tr-teal) !important;
    background: var(--tr-surface) !important;
    padding: 14px 20px !important;
    margin: 1.6em 0 !important;
    color: var(--tr-ink-2) !important;
    font-style: normal !important;
    border-radius: 0 6px 6px 0 !important;
}

/* Buttons */
.wp-block-button__link,
.wp-element-button,
button:not(.wp-block-navigation-submenu__toggle):not(.wp-block-navigation__responsive-container-open):not(.wp-block-navigation__responsive-container-close) {
    background: var(--tr-teal) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    border: none !important;
}
.wp-block-button__link:hover,
.wp-element-button:hover {
    background: var(--tr-teal-dark) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link {
    background: #fff !important;
    color: var(--tr-teal) !important;
    border: 1px solid var(--tr-teal) !important;
}

/* Horizontal rule */
hr, .wp-block-separator {
    border-color: var(--tr-line) !important;
    opacity: 1 !important;
    height: 1px !important;
    background: var(--tr-line) !important;
}

/* Tables */
.wp-block-table table, table {
    border-collapse: collapse !important;
}
.wp-block-table th, .wp-block-table td,
table th, table td {
    border: 1px solid var(--tr-line) !important;
    padding: 10px 14px !important;
}
.wp-block-table thead, thead {
    background: var(--tr-surface) !important;
}

/* Forms */
input[type="text"], input[type="email"], input[type="url"],
input[type="search"], input[type="password"], textarea {
    border: 1px solid var(--tr-line-3) !important;
    border-radius: 6px !important;
    padding: 10px 12px !important;
    font-family: inherit !important;
    font-size: 15px !important;
    background: #fff !important;
}
input[type="text"]:focus, input[type="email"]:focus,
input[type="search"]:focus, textarea:focus {
    border-color: var(--tr-teal) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(4, 101, 110, 0.12) !important;
}

/* Header + navigation polish */
.wp-block-site-title {
    font-size: 22px !important;
}
.wp-block-navigation .wp-block-navigation-item__content {
    color: var(--tr-ink-2) !important;
    font-weight: 500 !important;
}
.wp-block-navigation .wp-block-navigation-item__content:hover {
    color: var(--tr-teal) !important;
}

/* Comments */
.wp-block-comment-date,
.wp-block-comment-author-name,
.comment-meta {
    color: var(--tr-muted) !important;
    font-size: 0.9em !important;
}
.wp-block-comments-title {
    color: var(--tr-ink) !important;
}
