:root {
    --cse-ink: #17233a;
    --cse-muted: #61718b;
    --cse-line: #dce4f0;
    --cse-soft: #f6f8fc;
    --cse-blue: #2464ea;
    --cse-blue-dark: #164cae;
    --cse-amber: #8f5a00;
    --cse-amber-soft: #fff4d8;
    --cse-green: #1a6b3b;
}

.cse-enclosure-page .entry-content,
.cse-enclosure-page .wp-block-post-content,
.cse-enclosure-page .page-content,
.cse-enclosure-page .site-main > article > .entry-content {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}

.cse-app {
    width: min(100%, 920px);
    max-width: 920px;
    margin: 0 auto;
    color: var(--cse-ink);
    font-size: 15px;
    line-height: 1.55;
    box-sizing: border-box;
}

.cse-app * { box-sizing: border-box; }

.cse-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: .38rem;
    margin: 0 0 .85rem;
    color: var(--cse-muted);
    font-size: .78rem;
}
.cse-breadcrumbs a { color: var(--cse-blue-dark); text-decoration: none; }

.cse-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.2rem;
    align-items: center;
    padding: 1.35rem;
    border: 1px solid var(--cse-line);
    border-radius: 18px;
    background: linear-gradient(135deg, #fff 0%, #f3f7ff 100%);
    box-shadow: 0 10px 30px rgba(31, 54, 95, .05);
}
.cse-eyebrow {
    display: inline-block;
    margin-bottom: .32rem;
    color: var(--cse-blue-dark);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .11em;
}
.cse-hero h2 {
    margin: 0 0 .48rem;
    color: var(--cse-ink);
    font-size: clamp(1.42rem, 3vw, 1.95rem);
    line-height: 1.13;
    letter-spacing: -.024em;
}
.cse-hero p { margin: 0; color: #4c5c74; font-size: .94rem; }
.cse-hero-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(82px, 1fr));
    gap: .55rem;
    min-width: 280px;
}
.cse-hero-stats > div {
    display: flex;
    min-height: 82px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: .72rem .45rem;
    border: 1px solid var(--cse-line);
    border-radius: 13px;
    background: rgba(255,255,255,.9);
    text-align: center;
}
.cse-hero-stats strong { font-size: 1.08rem; line-height: 1.1; }
.cse-hero-stats span { margin-top: .25rem; color: var(--cse-muted); font-size: .7rem; }

.cse-quick-filters { display: flex; flex-wrap: wrap; gap: .42rem; margin-top: .86rem; }
.cse-quick-filters button {
    padding: .43rem .66rem;
    border: 1px solid #c9d7eb;
    border-radius: 999px;
    background: #fff;
    color: #263b5b;
    font: inherit;
    font-size: .78rem;
    font-weight: 700;
    cursor: pointer;
}
.cse-quick-filters button:hover,
.cse-quick-filters button:focus-visible { border-color: var(--cse-blue); color: var(--cse-blue-dark); }

.cse-freshness {
    margin-top: .68rem;
    padding: .62rem .8rem;
    border: 1px solid #d7e1f0;
    border-radius: 10px;
    background: #fbfcff;
    color: #53627a;
    font-size: .76rem;
}
.cse-freshness a { color: var(--cse-blue-dark); font-weight: 700; }

.cse-controls {
    display: grid;
    grid-template-columns: 1.4fr .9fr .85fr;
    gap: .66rem;
    align-items: end;
    margin-top: .9rem;
    padding: .9rem;
    border: 1px solid var(--cse-line);
    border-radius: 15px;
    background: #fff;
}
.cse-search-control { grid-column: span 2; }
.cse-control { min-width: 0; }
.cse-control label { display: block; margin-bottom: .25rem; color: #32435f; font-size: .72rem; font-weight: 800; }
.cse-control input,
.cse-control select {
    width: 100%; min-width: 0; height: 40px; padding: 0 .62rem;
    border: 1px solid #cbd6e6; border-radius: 9px; background: #fff; color: var(--cse-ink);
    font: inherit; font-size: .8rem;
}
.cse-control input:focus,
.cse-control select:focus { border-color: var(--cse-blue); outline: 2px solid rgba(36,100,234,.15); outline-offset: 1px; }
.cse-checkbox { display: flex; min-height: 40px; align-items: center; gap: .42rem; padding: 0 .15rem; color: #293953; font-size: .8rem; font-weight: 700; }
.cse-checkbox input { width: 17px; height: 17px; }
.cse-reset,
.cse-load-more-wrap button {
    min-height: 40px; padding: .55rem .82rem; border: 1px solid #cbd6e6; border-radius: 9px;
    background: var(--cse-soft); color: var(--cse-ink); font: inherit; font-size: .8rem; font-weight: 800; cursor: pointer;
}
.cse-reset:hover,
.cse-load-more-wrap button:hover { border-color: var(--cse-blue); color: var(--cse-blue-dark); }

.cse-results-summary { display: flex; justify-content: space-between; gap: 1rem; margin: .82rem 0 .5rem; color: var(--cse-muted); font-size: .8rem; }
.cse-results-summary strong { color: var(--cse-ink); }

.cse-table { width: 100%; min-width: 0; overflow: hidden; border: 1px solid var(--cse-line); border-radius: 15px; background: #fff; }
.cse-table-head,
.cse-row {
    display: grid;
    grid-template-columns: minmax(0, 2.35fr) minmax(84px, .72fr) minmax(100px, .86fr) minmax(0, 1.12fr) minmax(0, 1fr) minmax(106px, .82fr);
    align-items: center;
}
.cse-table-head { min-height: 46px; background: var(--cse-soft); color: #4a5b74; font-size: .68rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.cse-table-head > div,
.cse-cell { min-width: 0; padding: .65rem .55rem; }
.cse-row { border-top: 1px solid #e6ebf3; transition: background .15s ease; }
.cse-row:hover { background: #fbfcff; }
.cse-row.is-filter-hidden,
.cse-row.is-page-hidden { display: none; }
.cse-cell { color: #293852; font-size: .77rem; }
.cse-cell strong { display: block; color: var(--cse-ink); line-height: 1.28; }
.cse-cell-product { display: flex; align-items: center; gap: .55rem; }
.cse-product-image {
    display: flex; width: 60px; height: 60px; flex: 0 0 60px; align-items: center; justify-content: center;
    overflow: hidden; border: 1px solid #d9e1ed; border-radius: 10px; background: #fff; color: var(--cse-muted);
    font-size: .68rem; text-decoration: none;
}
.cse-product-image img { width: 54px; height: 54px; object-fit: contain; }
.cse-product-copy { min-width: 0; }
.cse-product-title {
    display: -webkit-box; overflow: hidden; color: var(--cse-ink); font-size: .86rem; font-weight: 800; line-height: 1.31;
    text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
.cse-product-title:hover { color: var(--cse-blue-dark); }
.cse-product-meta { display: flex; flex-wrap: wrap; gap: .26rem .42rem; margin-top: .28rem; color: var(--cse-muted); font-size: .66rem; }
.cse-deal-badge { display: inline-flex; padding: .1rem .38rem; border-radius: 999px; background: var(--cse-amber-soft); color: var(--cse-amber); font-weight: 800; }
.cse-cell-price strong { color: var(--cse-blue-dark); font-size: .94rem; }
.cse-cell-price del { display: block; color: #8792a3; font-size: .68rem; }
.cse-subline,
.cse-speed { display: block; margin-top: .18rem; color: var(--cse-muted); font-size: .67rem; line-height: 1.35; }
.cse-speed { color: var(--cse-green); font-weight: 800; }
.cse-cell-action { text-align: center; }
.cse-amazon-button {
    display: inline-flex; align-items: center; justify-content: center; gap: .18rem; min-height: 36px; padding: .48rem .62rem;
    border-radius: 8px; background: #ffb900; color: #211900; font-size: .74rem; font-weight: 800; line-height: 1.1; text-decoration: none;
}
.cse-amazon-button:hover { background: #f2aa00; color: #211900; }
.cse-paid-link { display: block; margin-top: .22rem; color: var(--cse-muted); font-size: .62rem; }
.cse-load-more-wrap { margin-top: .75rem; text-align: center; }
.cse-no-results,
.cse-empty { margin-top: .8rem; padding: 1.25rem; border: 1px solid var(--cse-line); border-radius: 14px; background: #fff; text-align: center; }
.cse-no-results h2,
.cse-empty h2 { margin: 0 0 .35rem; font-size: 1.1rem; }
.cse-no-results p,
.cse-empty p { margin: 0; color: var(--cse-muted); }

.cse-disclosure,
.cse-methodology { margin-top: 1.05rem; padding: 1rem; border: 1px solid var(--cse-line); border-radius: 14px; background: #fbfcff; }
.cse-disclosure strong { font-size: .85rem; }
.cse-disclosure p,
.cse-methodology p { margin: .35rem 0 0; color: #53627a; font-size: .76rem; }
.cse-guide,
.cse-faq,
.cse-related { margin-top: 1.55rem; }
.cse-guide h2,
.cse-methodology h2,
.cse-faq h2,
.cse-related h2 { margin: 0 0 .78rem; font-size: 1.35rem; line-height: 1.2; }
.cse-guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.cse-guide-grid article { padding: .95rem; border: 1px solid var(--cse-line); border-radius: 13px; background: #fff; }
.cse-guide-grid h3 { margin: 0 0 .35rem; font-size: .96rem; }
.cse-guide-grid p { margin: 0; color: #53627a; font-size: .82rem; }
.cse-source-links { display: flex; flex-wrap: wrap; gap: .6rem; }
.cse-source-links a { color: var(--cse-blue-dark); font-weight: 700; }
.cse-faq details { border-top: 1px solid var(--cse-line); }
.cse-faq details:last-child { border-bottom: 1px solid var(--cse-line); }
.cse-faq summary { padding: .8rem .1rem; color: var(--cse-ink); font-weight: 800; cursor: pointer; }
.cse-faq details p { margin: 0 0 .85rem; color: #53627a; font-size: .84rem; }
.cse-related > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
.cse-related a { display: flex; justify-content: space-between; gap: .6rem; padding: .72rem .8rem; border: 1px solid var(--cse-line); border-radius: 10px; color: var(--cse-blue-dark); font-size: .8rem; font-weight: 800; text-decoration: none; }
.cse-related a:hover { border-color: var(--cse-blue); }
.cse-admin-message { padding: 1rem; border: 1px solid #dba617; border-radius: 10px; background: #fff8df; }

@media (max-width: 860px) {
    .cse-hero { grid-template-columns: 1fr; }
    .cse-hero-stats { min-width: 0; }
    .cse-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cse-search-control { grid-column: span 2; }
    .cse-table-head,
    .cse-row { grid-template-columns: minmax(0, 2.15fr) minmax(82px, .72fr) minmax(95px, .82fr) minmax(0, 1.08fr) minmax(104px, .84fr); }
    .cse-table-head > div:nth-child(5),
    .cse-row > .cse-cell:nth-child(5) { display: none; }
}

@media (max-width: 680px) {
    .cse-app { font-size: 14px; }
    .cse-hero { padding: 1rem; }
    .cse-hero-stats { grid-template-columns: repeat(3, 1fr); }
    .cse-hero-stats > div { min-height: 72px; }
    .cse-controls { grid-template-columns: 1fr; }
    .cse-search-control { grid-column: auto; }
    .cse-results-summary { flex-direction: column; gap: .15rem; }
    .cse-table-head { display: none; }
    .cse-table { border: 0; background: transparent; }
    .cse-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin-bottom: .72rem; border: 1px solid var(--cse-line); border-radius: 13px; background: #fff; overflow: hidden; }
    .cse-row > .cse-cell:nth-child(5) { display: block; }
    .cse-cell { padding: .58rem .65rem; border-top: 1px solid #edf1f6; }
    .cse-cell::before { display: block; margin-bottom: .12rem; color: #718096; font-size: .61rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; content: attr(data-label); }
    .cse-cell-product { grid-column: 1 / -1; border-top: 0; }
    .cse-cell-action { display: flex; flex-direction: column; justify-content: center; }
    .cse-amazon-button { width: 100%; }
    .cse-guide-grid,
    .cse-related > div { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
    .cse-hero-stats { grid-template-columns: 1fr; }
    .cse-hero-stats > div { min-height: 62px; }
    .cse-row { grid-template-columns: 1fr; }
    .cse-product-image { width: 56px; height: 56px; flex-basis: 56px; }
}
