.cwv-guide { --cwv-accent:#2f6f2a; --cwv-surface:#eef4ec; --cwv-border:#c5d6c0; --cwv-ink:#1b3a22; --cwv-base:#b8c9b3; --cwv-gain:#2f6f2a; }
html.theme-dark .cwv-guide { --cwv-accent:#b9e27a; --cwv-surface:#17301f; --cwv-border:#4a6a52; --cwv-ink:#eef6ea; --cwv-base:#55705c; --cwv-gain:#b9e27a; }
html.reading-mode:not(.theme-dark) .cwv-guide { --cwv-accent:#7a4a10; --cwv-surface:#ece3d1; --cwv-border:#bcb09a; --cwv-ink:#332d24; --cwv-base:#c2b49b; --cwv-gain:#7a4a10; }
html.reading-mode.theme-dark .cwv-guide { --cwv-accent:#f5c85b; --cwv-surface:#2a1a13; --cwv-border:#493127; --cwv-ink:#f7ead3; --cwv-base:#6e5646; --cwv-gain:#f5c85b; }
.cwv-guide .cwv-deck { max-width:640px; margin:18px auto; font-size:1.2rem; }
.cwv-guide .blog-post-content { min-width:0; }
.cwv-guide .blog-featured-image img { display:block; width:100%; height:auto; }
.cwv-guide .blog-post-content figcaption { padding:12px 2px; font-size:.875rem; line-height:1.6; }
.cwv-guide .cwv-toc { display:grid; grid-template-columns:1fr 1fr; gap:12px 18px; padding:24px; margin:30px 0; border:1px solid var(--cwv-border); border-radius:16px; }
.cwv-guide .cwv-toc strong { grid-column:1/-1; }
.cwv-guide :is(h2,h3,section[id]) { scroll-margin-top:110px; }
.cwv-guide .cwv-visual { margin:30px 0; padding:24px; border:1px solid var(--cwv-border); border-radius:18px; background:var(--cwv-surface); color:var(--cwv-ink); }
html body.cwv-guide .blog-post-content .cwv-visual figcaption { padding:0 0 10px; }
.cwv-guide .cwv-visual figcaption strong,.cwv-guide .cwv-visual figcaption span { display:block; }
html body.cwv-guide .blog-post-content .cwv-visual figcaption strong { color:var(--cwv-ink) !important; font-size:1.3rem; }
.cwv-guide .cwv-row { display:grid; grid-template-columns:170px minmax(0,1fr) 56px; align-items:center; gap:14px; padding:12px 0; color:var(--cwv-ink); }
.cwv-guide .cwv-row > span { font-size:.95rem; font-weight:800; }
.cwv-guide .cwv-row small { display:block; margin-top:2px; font-size:.78rem; font-weight:500; line-height:1.4; opacity:.85; }
.cwv-guide .cwv-track { display:flex; height:30px; overflow:hidden; border-radius:6px; background:color-mix(in srgb,var(--cwv-ink) 8%,transparent); }
.cwv-guide .cwv-track i { display:block; height:100%; }
.cwv-guide .cwv-track .is-base { background:var(--cwv-base); }
.cwv-guide .cwv-track .is-gain { background:var(--cwv-gain); }
.cwv-guide .cwv-row b { text-align:right; font-size:1.05rem; }
.cwv-guide .cwv-legend { display:flex; flex-wrap:wrap; gap:8px 22px; margin:10px 0 4px; color:var(--cwv-ink); font-size:.875rem; font-weight:600; }
.cwv-guide .cwv-legend span::before { content:""; display:inline-block; width:12px; height:12px; margin-right:8px; border-radius:3px; vertical-align:-1px; background:var(--swatch); }
html body.cwv-guide .blog-post-content .cwv-visual p { max-width:none; margin:14px 0 0 !important; font-size:.95rem !important; }
html body.cwv-guide .blog-post-content code { padding:1px 6px; border-radius:5px; background:var(--cwv-surface); color:var(--cwv-ink); font-size:.9em; }
.cwv-guide .cwv-card,.cwv-guide .cwv-calculator { margin:32px 0; padding:26px; border:1px solid var(--cwv-border); border-radius:18px; background:var(--cwv-surface); }
.cwv-guide .cwv-eyebrow { display:block; color:var(--cwv-accent); font-size:.8rem; font-weight:800; letter-spacing:.1em; }
.cwv-guide .cwv-card dl { display:grid; grid-template-columns:120px minmax(0,1fr); gap:12px 18px; margin:18px 0 0; }
.cwv-guide .cwv-card dt { color:var(--cwv-accent); font-size:.9rem; font-weight:800; }
.cwv-guide .cwv-card dd { margin:0; color:var(--cwv-ink); font-size:.95rem; line-height:1.6; }
.cwv-guide .cwv-table-wrap { max-width:100%; overflow-x:auto; margin:26px 0; }
html body.cwv-guide .blog-post-content .cwv-table-wrap table { display:table !important; width:100% !important; max-width:none !important; margin:0 !important; table-layout:fixed; }
.cwv-guide .cwv-table-wrap--ledger th:first-child { width:44%; }
.cwv-guide .cwv-table-wrap--campaigns th:first-child { width:26%; }
.cwv-guide .cwv-table-wrap :is(th,td) { overflow-wrap:anywhere; }
.cwv-guide .cwv-table-wrap caption { padding:0 0 12px; text-align:left; font-size:.9rem; line-height:1.6; }
.cwv-guide .cwv-input-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:20px 0; }
.cwv-guide .cwv-input-grid label { display:flex; flex-direction:column; gap:8px; color:var(--cwv-ink); font-size:.95rem; font-weight:600; }
.cwv-guide .cwv-input-grid input { width:100%; min-width:0; box-sizing:border-box; padding:12px; border:1px solid var(--cwv-border); border-radius:8px; background:var(--cwv-surface); color:var(--cwv-ink); font:inherit; font-size:1.125rem; }
.cwv-guide :is(input,button,a,summary,[tabindex]):focus-visible { outline:3px solid var(--cwv-accent); outline-offset:4px; }
.cwv-guide .cwv-result-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:25px; padding-top:24px; border-top:1px solid var(--cwv-border); }
.cwv-guide .cwv-result-grid span { display:block; margin-bottom:6px; color:var(--cwv-ink); font-size:.9rem; }
.cwv-guide .cwv-result-grid strong { color:var(--cwv-accent); font-size:clamp(1.25rem,2.5vw,1.8rem); overflow-wrap:anywhere; }
html body.cwv-guide .blog-post-content .cwv-result-grid strong { color:var(--cwv-accent) !important; }
html body.cwv-guide .blog-post-content .cwv-small { font-size:.875rem !important; line-height:1.6 !important; }
.cwv-guide #cwv-calc-error { color:var(--cwv-accent); font-weight:700; }
.cwv-guide .cwv-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:26px 0; }
.cwv-guide .cwv-grid article { padding:20px; border:1px solid var(--cwv-border); border-radius:14px; background:var(--cwv-surface); }
.cwv-guide .cwv-grid span { color:var(--cwv-accent); font-weight:800; }
html body.cwv-guide .blog-post-content .cwv-grid h3 { margin:10px 0 8px !important; color:var(--cwv-ink) !important; font-size:1.45rem !important; }
html body.cwv-guide .blog-post-content .cwv-grid p { margin:0 !important; font-size:.92rem !important; line-height:1.7 !important; }
.cwv-guide .lead-faq details { padding:18px 0; border-bottom:1px solid var(--cwv-border); }
.cwv-guide .lead-faq summary { color:var(--cwv-ink); font-size:1.05rem; font-weight:700; cursor:pointer; }
.cwv-guide .cwv-sources { padding:24px; margin-top:32px; border:1px solid var(--cwv-border); border-radius:16px; background:var(--cwv-surface); font-size:.95rem; }
.cwv-guide .blog-post-content .cwv-sources :is(h2,p,li) { color:var(--cwv-ink); }
.cwv-guide .cwv-sources li { margin-bottom:14px; overflow-wrap:anywhere; }
@media(max-width:600px) { .cwv-guide .cwv-toc,.cwv-guide .cwv-input-grid,.cwv-guide .cwv-result-grid,.cwv-guide .cwv-grid { grid-template-columns:1fr; } .cwv-guide .cwv-card,.cwv-guide .cwv-calculator,.cwv-guide .cwv-visual { padding:18px; } .cwv-guide .cwv-row { grid-template-columns:1fr 48px; gap:6px 10px; } .cwv-guide .cwv-row > span { grid-column:1/-1; } .cwv-guide .cwv-card dl { grid-template-columns:1fr; gap:4px; } .cwv-guide .cwv-card dd { margin-bottom:10px; } .cwv-guide .cwv-result-grid { gap:16px; } html body.cwv-guide .blog-post-content .cwv-table-wrap table { min-width:560px; table-layout:auto; } }
