body.czeg-page .entry-header,
body.czeg-page .page-header,
body.czeg-page .entry-title,
body.czeg-page .page-title,
body.czeg-page .wp-block-post-title {
    display: none !important;
}

body.czeg-page #content,
body.czeg-page .site-content,
body.czeg-page .content-area,
body.czeg-page #primary,
body.czeg-page .site-main,
body.czeg-page main.site-main,
body.czeg-page article.page,
body.czeg-page .inside-article,
body.czeg-page .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.czeg-page .entry-content > *:first-child,
body.czeg-page .inside-article > *:first-child {
    margin-top: 0 !important;
}

.czeg-app {
    width: min(1160px, calc(100% - 28px));
    margin: 0 auto 64px;
    color: #172033;
    font-size: 16px;
    line-height: 1.68;
}

.czeg-app *,
.czeg-app *::before,
.czeg-app *::after {
    box-sizing: border-box;
}

.czeg-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
    padding: 4px 0 10px;
    color: #667085;
    font-size: 13px;
}

.czeg-breadcrumb a {
    color: #3656a6;
    text-decoration: none;
}

.czeg-hero {
    padding: 28px 31px;
    border: 1px solid #dfe5ef;
    border-radius: 18px;
    background: linear-gradient(135deg, #f7faff 0%, #ffffff 58%, #f7f2ff 100%);
    box-shadow: 0 10px 32px rgba(15, 23, 42, 0.06);
}

.czeg-eyebrow {
    margin: 0 0 7px !important;
    color: #5b45c8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.czeg-hero h1 {
    max-width: 980px;
    margin: 0 0 14px;
    color: #101828;
    font-size: clamp(32px, 5vw, 53px);
    line-height: 1.07;
    letter-spacing: -0.035em;
}

.czeg-hero > p:last-child {
    max-width: 960px;
    margin: 0;
    color: #475467;
    font-size: 17px;
}

.czeg-tool,
.czeg-catalog-preview,
.czeg-related,
.czeg-faq,
.czeg-content-grid article {
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 26px rgba(15, 23, 42, 0.045);
}

.czeg-tool,
.czeg-catalog-preview,
.czeg-related,
.czeg-faq {
    margin-top: 24px;
    padding: 26px;
}

.czeg-tool-heading {
    margin-bottom: 20px;
}

.czeg-tool-heading h2,
.czeg-related h2,
.czeg-faq > h2,
.czeg-catalog-preview h2 {
    margin: 0 0 7px;
    color: #111827;
    font-size: clamp(23px, 3vw, 31px);
    line-height: 1.2;
}

.czeg-tool-heading p,
.czeg-catalog-preview .czeg-tool-heading p {
    margin: 0;
    color: #667085;
}

.czeg-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.czeg-fields label,
.czeg-filters label {
    display: grid;
    gap: 7px;
    color: #344054;
    font-size: 13px;
    font-weight: 700;
}

.czeg-fields input,
.czeg-fields select,
.czeg-filters input,
.czeg-filters select {
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 9px 11px;
    border: 1px solid #cbd5e1;
    border-radius: 9px;
    background: #fff;
    color: #172033;
    font: inherit;
    font-size: 15px;
    box-shadow: none;
}

.czeg-fields input:focus,
.czeg-fields select:focus,
.czeg-filters input:focus,
.czeg-filters select:focus {
    border-color: #6d5ce7;
    outline: 3px solid rgba(109, 92, 231, 0.14);
}

.czeg-button {
    min-height: 48px;
    margin-top: 19px;
    padding: 11px 21px;
    border: 0;
    border-radius: 10px;
    background: #4f3cc9;
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(79, 60, 201, 0.2);
}

.czeg-button:hover,
.czeg-button:focus {
    background: #3f2fb0;
}

.czeg-result {
    margin-top: 24px;
    padding: 24px;
    border: 1px solid #c9d1ff;
    border-radius: 14px;
    background: #f8faff;
}

.czeg-result[hidden] {
    display: none !important;
}

.czeg-result-header span {
    display: block;
    margin-bottom: 5px;
    color: #5b45c8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.czeg-result-header h3 {
    margin: 0 0 19px;
    color: #111827;
    font-size: 25px;
    line-height: 1.25;
}

.czeg-fit.good { color: #0f7a45; }
.czeg-fit.warn { color: #9a6700; }
.czeg-fit.bad { color: #b42318; }

.czeg-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.czeg-metrics > div {
    min-width: 0;
    padding: 15px;
    border: 1px solid #e2e8f0;
    border-radius: 11px;
    background: #fff;
}

.czeg-metrics strong {
    display: block;
    overflow-wrap: anywhere;
    color: #111827;
    font-size: 18px;
    line-height: 1.25;
}

.czeg-metrics span {
    display: block;
    margin-top: 5px;
    color: #667085;
    font-size: 12px;
    line-height: 1.35;
}

.czeg-plan-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
}

.czeg-plan-grid > div,
.czeg-warnings {
    padding: 17px;
    border: 1px solid #e2e8f0;
    border-radius: 11px;
    background: #fff;
}

.czeg-plan-grid h4,
.czeg-warnings h4,
.czeg-products-heading,
.czeg-recommendations h4 {
    margin: 0 0 7px;
    color: #1f2937;
}

.czeg-plan-grid p,
.czeg-warnings ul,
.czeg-note {
    margin: 0;
    color: #475467;
}

.czeg-warnings {
    margin-top: 15px;
    border-color: #fde68a;
    background: #fffdf4;
}

.czeg-warnings ul {
    padding-left: 20px;
}

.czeg-products-heading {
    margin-top: 22px;
    font-size: 21px;
}

.czeg-recommendations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.czeg-recommendations article {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 11px;
    background: #fff;
}

.czeg-recommendation-main {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.czeg-recommendation-image {
    display: block;
    width: 104px;
    height: 104px;
    padding: 5px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #fff;
    object-fit: contain;
}

.czeg-recommendations h4 {
    overflow-wrap: anywhere;
    font-size: 15px;
    line-height: 1.4;
}

.czeg-recommendations p {
    margin: 0;
    color: #667085;
    font-size: 13px;
}

.czeg-recommendation-footer {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 15px;
}

.czeg-recommendation-footer strong,
.czeg-recommendation-footer span {
    display: block;
}

.czeg-recommendation-footer span {
    color: #667085;
    font-size: 12px;
}

.czeg-buy,
.czeg-recommendations a {
    color: #4f3cc9;
    font-weight: 800;
    text-decoration: none;
}

.czeg-note,
.czeg-empty {
    margin-top: 15px;
    padding: 13px 15px;
    border-radius: 9px;
    background: #eef2ff;
    font-size: 14px;
}

.czeg-content-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.czeg-content-grid article {
    padding: 25px;
}

.czeg-content-grid h2 {
    margin: 0 0 10px;
    color: #111827;
    font-size: 23px;
    line-height: 1.25;
}

.czeg-content-grid p {
    margin: 0;
    color: #475467;
}

.czeg-filters {
    display: grid;
    grid-template-columns: 1.5fr repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 12px;
}

.czeg-filter-count {
    margin: 0 0 14px;
    color: #667085;
    font-size: 13px;
}

.czeg-table-wrap {
    overflow: visible;
    border: 1px solid #e2e8f0;
    border-radius: 13px;
    background: #fff;
}

.czeg-product-table {
    width: 100%;
    min-width: 0; table-layout: fixed;
    border-collapse: collapse;
    font-size: 14px;
}

.czeg-product-table th,
.czeg-product-table td {
    min-width: 0;
    padding: 13px;
    border: 1px solid #e5e7eb;
    text-align: left;
    vertical-align: middle;
    overflow-wrap: anywhere;
}

.czeg-product-table th:nth-child(1), .czeg-product-table td:nth-child(1) { width: 34%; }
.czeg-product-table th:nth-child(2), .czeg-product-table td:nth-child(2) { width: 13%; }
.czeg-product-table th:nth-child(3), .czeg-product-table td:nth-child(3) { width: 13%; }
.czeg-product-table th:nth-child(4), .czeg-product-table td:nth-child(4) { width: 10%; }
.czeg-product-table th:nth-child(5), .czeg-product-table td:nth-child(5) { width: 9%; }
.czeg-product-table th:nth-child(6), .czeg-product-table td:nth-child(6) { width: 9%; }
.czeg-product-table th:nth-child(7), .czeg-product-table td:nth-child(7) { width: 12%; }

.czeg-product-table th {
    background: #f8fafc;
    color: #344054;
    font-size: 12px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.czeg-product-main {
    display: grid;
    min-width: 0;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}

.czeg-product-main > div {
    min-width: 0;
}

.czeg-product-main img {
    width: 72px;
    height: 72px;
    padding: 4px;
    border: 1px solid #e5e7eb;
    border-radius: 9px;
    object-fit: contain;
}

.czeg-product-main strong,
.czeg-product-main span {
    display: block;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}

.czeg-product-main span {
    margin-top: 4px;
    color: #667085;
    font-size: 12px;
    line-height: 1.35;
}

.czeg-product-table small {
    color: #667085;
}

.czeg-compare-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
}

.czeg-compare-cards article {
    padding: 17px;
    border: 1px solid #e2e8f0;
    border-radius: 11px;
    background: #fff;
}

.czeg-compare-cards h4,
.czeg-compare-cards p,
.czeg-compare-cards ul {
    margin-top: 0;
}

.czeg-compare-cards strong {
    display: block;
    margin-bottom: 5px;
    color: #111827;
    font-size: 24px;
}

.czeg-related > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.czeg-related a {
    padding: 12px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 9px;
    color: #3448a0;
    font-weight: 700;
    text-decoration: none;
}

.czeg-faq details {
    margin-top: 10px;
    padding: 14px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
}

.czeg-faq summary {
    color: #1f2937;
    font-weight: 800;
    cursor: pointer;
}

.czeg-faq p {
    margin: 10px 0 0;
    color: #475467;
}

@media (max-width: 900px) {
    .czeg-fields,
    .czeg-metrics,
    .czeg-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .czeg-compare-cards {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .czeg-app {
        width: min(100% - 18px, 1160px);
    }

    .czeg-hero,
    .czeg-tool,
    .czeg-catalog-preview,
    .czeg-related,
    .czeg-faq {
        padding: 20px;
        border-radius: 14px;
    }

    .czeg-fields,
    .czeg-metrics,
    .czeg-plan-grid,
    .czeg-recommendations,
    .czeg-content-grid,
    .czeg-related > div,
    .czeg-filters {
        grid-template-columns: 1fr;
    }

    .czeg-recommendation-main {
        grid-template-columns: 82px minmax(0, 1fr);
    }

    .czeg-recommendation-image {
        width: 82px;
        height: 82px;
    }

    .czeg-recommendation-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Enclosure-specific result layouts */
.czeg-combo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 14px;
}
.czeg-combo-card {
    padding: 18px;
    border: 1px solid #dce5ef;
    border-radius: 16px;
    background: #fff;
}
.czeg-combo-card h3 { margin: 0 0 14px; font-size: 1.05rem; }
.czeg-combo-parts { display: grid; gap: 12px; }
.czeg-combo-parts > div {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 4px 12px;
    align-items: center;
}
.czeg-combo-parts img {
    grid-row: 1 / span 2;
    width: 54px;
    height: 54px;
    object-fit: contain;
    border-radius: 8px;
    background: #fff;
}
.czeg-combo-parts span { color: #64748b; font-size: .88rem; }
.czeg-combo-card footer {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    padding: 12px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

/* Tighten theme wrappers only on plugin pages; never touch the site logo/header. */
body.czeg-page .site-main,
body.czeg-page main#main,
body.czeg-page .content-area,
body.czeg-page .site-content,
body.czeg-page .wp-site-blocks > main {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
body.czeg-page .page-header:empty,
body.czeg-page .entry-header:empty,
body.czeg-page .wp-block-post-title:empty {
    display: none !important;
}
body.czeg-page .czeg-app { margin-top: 20px; }

@media (max-width: 1050px) {
    .czeg-combo-grid { grid-template-columns: 1fr; }
    .czeg-combo-card footer { flex-direction: column; }
}

.czeg-result-kicker {
    margin: 0 0 8px;
    color: #5b45c8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .09em;
}
.czeg-result > h2 {
    margin: 0 0 20px;
    color: #111827;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.2;
}
.czeg-result-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.czeg-stat {
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
}
.czeg-stat span { display: block; color: #667085; font-size: 13px; }
.czeg-stat strong { display: block; margin-top: 6px; color: #111827; font-size: 21px; overflow-wrap: anywhere; }
.czeg-result-panels {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
}
.czeg-result-panels article {
    padding: 18px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
}
.czeg-result-panels h3 { margin: 0 0 8px; font-size: 19px; color: #1f2937; }
.czeg-result-panels p { margin: 0; color: #475467; }
.czeg-matches { margin-top: 22px; }
.czeg-matches > h3 { margin: 0 0 12px; font-size: 22px; }
.czeg-match-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.czeg-match-card {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 14px;
    min-width: 0;
    padding: 16px;
    border: 1px solid #dce5ef;
    border-radius: 14px;
    background: #fff;
}
.czeg-match-card > img {
    width: 104px;
    height: 104px;
    object-fit: contain;
    border-radius: 10px;
    background: #fff;
}
.czeg-match-card strong,
.czeg-match-card span { display: block; overflow-wrap: anywhere; }
.czeg-match-card strong { color: #1f2937; line-height: 1.4; }
.czeg-match-card span { margin-top: 7px; color: #667085; font-size: 13px; }
.czeg-match-card footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 12px;
    margin-top: 14px;
}
.czeg-match-card footer a { color: #4f3cc9; font-weight: 800; text-decoration: none; }

@media (max-width: 800px) {
    .czeg-result-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .czeg-result-panels,
    .czeg-match-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
    .czeg-result-stats { grid-template-columns: 1fr; }
    .czeg-match-card { grid-template-columns: 76px minmax(0, 1fr); }
    .czeg-match-card > img { width: 76px; height: 76px; }
    .czeg-match-card footer { flex-direction: column; align-items: flex-start; }
}

.czeg-result-header.good h3 { color: #0f7a45; }
.czeg-result-header.warn h3 { color: #9a6700; }
.czeg-result-header.bad h3 { color: #b42318; }
.czeg-plan-grid ul { margin: 0; padding-left: 20px; color: #475467; }
.czeg-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 12px;
}
.czeg-product-card {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 14px;
    min-width: 0;
    padding: 16px;
    border: 1px solid #dce5ef;
    border-radius: 14px;
    background: #fff;
}
.czeg-product-card > img {
    width: 112px;
    height: 112px;
    padding: 5px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #fff;
    object-fit: contain;
}
.czeg-product-card h3,
.czeg-product-card h4 { margin: 0 0 7px; color: #1f2937; font-size: 15px; line-height: 1.4; overflow-wrap: anywhere; }
.czeg-product-card p { margin: 0; color: #667085; font-size: 13px; }
.czeg-product-card footer {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-end;
    margin-top: 14px;
}
.czeg-product-card footer a { color: #4f3cc9; font-weight: 800; text-decoration: none; }
@media (max-width: 700px) {
    .czeg-card-grid { grid-template-columns: 1fr; }
    .czeg-product-card { grid-template-columns: 84px minmax(0, 1fr); }
    .czeg-product-card > img { width: 84px; height: 84px; }
    .czeg-product-card footer { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 760px) {
  .czeg-table-wrap { overflow: visible; border: 0; background: transparent; }
  .czeg-product-table { display: block; width: 100%; min-width: 0; table-layout: auto; }
  .czeg-product-table thead { display: none; }
  .czeg-product-table tbody, .czeg-product-table tr, .czeg-product-table td { display: block; width: 100%; box-sizing: border-box; }
  .czeg-product-table tr { margin: 0 0 14px; padding: 10px; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; }
  .czeg-product-table td { display: grid; grid-template-columns: minmax(90px, 34%) minmax(0, 1fr); gap: 10px; align-items: center; margin: 6px 0; padding: 8px; border: 1px solid #e5e7eb; border-radius: 8px; overflow-wrap: anywhere; }
  .czeg-product-table td::before { content: attr(data-label); font-size: 11px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; color: #667085; }
  .czeg-product-main { grid-template-columns: 56px minmax(0,1fr); }
  .czeg-product-main img { width: 56px; height: 56px; }
}
