/* One design system for the whole site, modelled on InvoiceChaser: a light surface scale, one blue accent and primary,
   one wide container, one type scale, one card, one button, one menu.
   Loaded last so it overrides the older stacked stylesheets. Older rules hard-code light colours, so this layer uses !important on colour. */
/* Older stylesheets read these shared variables, so they follow the same light palette */
:root,body,body:has(.muse-home){
  --bg:#ffffff;
  --card:#f8f9fa;
  --surface-warm:#f8f9fa;
  --ink:#202124;
  --muted:#5f6368;
  --line:#dadce0;
  --green:#1a73e8;
  --forest-ink:#1a73e8;
}
:root{
  --bc-bg:#ffffff;
  --bc-surface:#f8f9fa;
  --bc-surface-2:#f1f3f4;
  --bc-border:#dadce0;
  --bc-text:#202124;
  --bc-muted:#5f6368;
  --bc-accent:#1a73e8;
  --bc-primary:#1a73e8;
  --bc-primary-hover:#1765cc;
  --bc-danger:#d93025;
  --bc-brand-red:#d93025;
  --bc-wrap:1280px;
  --bc-gutter:clamp(20px,4vw,48px);
  --bc-section:clamp(56px,7vw,96px);
  --bc-radius:16px;
  --bc-control:8px;
  --bc-font:"Google Sans","Google Sans Text",Roboto,"Segoe UI",system-ui,-apple-system,Arial,sans-serif;
}

/* Base */
html,body,body:has(.muse-home){background:var(--bc-bg)!important;color:var(--bc-text)!important}
body{font-family:var(--bc-font);font-size:16px;line-height:1.6;letter-spacing:0}
body a{color:var(--bc-accent)}
body a:hover{color:#1765cc}
body :focus-visible{outline:2px solid var(--bc-accent)!important;outline-offset:3px}

/* One container width */
body .wrap{width:min(var(--bc-wrap),calc(100% - 2 * var(--bc-gutter)));max-width:none;margin-inline:auto;padding:0}
body .mid{max-width:760px}
body .narrow{max-width:560px}

/* One type scale */
body h1,body h2,body h3,body .brand{font-family:var(--bc-font)!important;letter-spacing:-.02em;color:var(--bc-text)!important}
body h1{font-size:clamp(32px,4vw,42px);line-height:1.12;font-weight:800;letter-spacing:-.02em;max-width:18ch}
body h2{font-size:clamp(24px,2.6vw,28px);line-height:1.2;font-weight:800;letter-spacing:-.01em}
body h3{font-size:1.125rem;line-height:1.3;font-weight:700}
body h1 em,body .hero h1 em{color:var(--bc-accent)!important;font-style:normal}
body .lead,body .hero p.lead,body .section-intro,body .muted,body .hero-note,body .hero-urgency,body figcaption,body .stats>div,body .stats div{color:var(--bc-muted)!important}
body .section-intro{max-width:640px;font-size:1.1rem;line-height:1.65;margin:0 0 40px}
body .eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bc-accent)!important}

/* Brand red: the logo word and a few section headings, everything else is blue */
body .topbar .brand b,body .brand b{color:var(--bc-brand-red)!important}
body #how h2,body #faq h2,body .next-steps-section h2{color:var(--bc-brand-red)!important}
body .stats{border-color:var(--bc-border)!important}
body .stats b{color:var(--bc-text)!important}

/* One section rhythm and background band */
body .block{padding:var(--bc-section) 0;background:transparent}
body .life-section,body .categories,body .next-steps-section{background:var(--bc-surface)!important}
body #faq{background:transparent!important;border-top:1px solid var(--bc-border)!important}

/* One menu */
body .topbar{background:var(--bc-bg)!important;border-top:0!important;border-bottom:1px solid var(--bc-border)!important;box-shadow:none!important}
body .topbar .wrap{min-height:72px;height:auto;padding-block:14px}
body .topbar .brand{font-size:1.1rem;font-weight:700}
body .topbar .brand b{color:var(--bc-brand-red)!important}
body .topbar nav{gap:4px}
body .topbar nav a{color:var(--bc-muted)!important;font-size:.92rem;font-weight:500;padding:8px 12px;border-radius:var(--bc-control);background:transparent!important}
body .topbar nav a:hover{color:var(--bc-text)!important;background:var(--bc-surface)!important}
body .topbar nav a[aria-current]{color:var(--bc-text)!important;background:var(--bc-surface-2)!important}
body .navigation-toggle{background:var(--bc-surface)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important;border-radius:var(--bc-control)}

/* One card */
body .card,body .life-card,body .benefit-news-card,body .form-card,body .muse-photo-note,body .sample-report,body .account-panel,body .registration-story,body .plan,body .faq details{background:var(--bc-surface)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important;border-radius:var(--bc-radius);box-shadow:none!important;padding:28px}
body .life-card{padding:0;overflow:hidden}
body .life-card>div{padding:24px}
body .card p,body .life-card p,body .benefit-news-card p{color:var(--bc-muted)!important}
body .sample-report-head{border-color:var(--bc-border)!important}
body .sample-report li{border-color:var(--bc-border)!important}
body .sample-report-head span,body .sample-report p{color:var(--bc-muted)!important}
body .sample-match{background:#e8f0fe!important;color:var(--bc-primary-hover)!important}
body .sample-check{background:var(--bc-surface-2)!important;color:var(--bc-muted)!important}
body .how-strip,body .how-strip-grid>div{background:var(--bc-bg)!important;border-color:var(--bc-border)!important}
body .how-strip-grid span{background:var(--bc-primary)!important}
body .how-strip-grid b{color:var(--bc-text)!important}

/* One button: primary blue, secondary surface, same size and radius everywhere */
body .btn,body a.btn,body button.btn,body input[type=submit].btn,body input[type=button].btn{background:var(--bc-primary)!important;border:1px solid var(--bc-primary)!important;color:#fff!important;border-radius:var(--bc-control)!important;min-height:44px;padding:11px 20px;font-size:.92rem;font-weight:600;line-height:1.2;box-shadow:none!important;text-decoration:none}
body .btn:hover,body a.btn:hover,body button.btn:hover{background:var(--bc-primary-hover)!important;border-color:var(--bc-primary-hover)!important;color:#fff!important}
body .btn-ghost,body a.btn-ghost,body button.btn-ghost{background:var(--bc-surface)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important}
body .btn-ghost:hover{background:var(--bc-surface-2)!important;border-color:#9aa0a6!important;color:var(--bc-text)!important}
body .btn-sm{min-height:36px;padding:8px 14px;font-size:.85rem}
body .text-link,body .link-button,body .category-actions a{color:var(--bc-accent)!important}
body .link-button{background:none!important;border:0!important;font:inherit}

/* One form control */
body input[type=text],body input[type=email],body input[type=password],body input[type=search],body input[type=tel],body input[type=number],body input:not([type]),body select,body textarea{background:var(--bc-bg)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important;border-radius:var(--bc-control)!important;padding:10px 12px;font-size:1rem}
body input::placeholder,body textarea::placeholder{color:#80868b}
body label,body .field label,body legend{color:var(--bc-muted)!important}
body fieldset{border-color:var(--bc-border)!important}

/* One hero */
body .hero.muse-home{background:var(--bc-bg)!important;padding:var(--bc-section) 0;border-bottom:1px solid var(--bc-border)!important}
body .muse-home .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,5vw,80px);align-items:center}
body .muse-home .hero-text{max-width:620px}
body .muse-home .hero-leaf{max-width:none;width:100%;justify-self:stretch}
body .muse-home .hero-figure{width:100%}
body .muse-home .hero-image{width:100%;height:auto;border-radius:var(--bc-radius)}
body .muse-home figcaption{padding-left:0;text-align:left}
body .muse-home .ai-badge{color:var(--bc-accent)!important;background:none!important;border:0!important}

/* Photo caption card on the homepage */
body .muse-photo-note strong{color:var(--bc-text)!important}
body .muse-photo-note span{color:var(--bc-muted)!important}

/* Page wrapper and the questionnaire panels */
body .page{background:var(--bc-bg)!important;color:var(--bc-text)!important}
body .questionnaire-intro,body .questionnaire-stepper,body .optional-fields,body details,body .review-note{background:var(--bc-surface)!important;color:var(--bc-text)!important;border-color:var(--bc-border)!important}
body .step-status,body .hint,body .questionnaire-intro p,body .review-note{color:var(--bc-muted)!important}
body .wrap.mid{color:var(--bc-text)}
body .page a:not(.btn):not(.skip-link){background-color:transparent!important;color:var(--bc-accent)!important}
body .page a strong,body .page a b{color:var(--bc-text)!important}
body .page a span:not(.tag):not(.plan-flag){color:var(--bc-muted)!important}
body .questionnaire-stepper>*{background:var(--bc-bg)!important;color:var(--bc-muted)!important;border:1px solid var(--bc-border)!important;border-radius:var(--bc-control)}
body .questionnaire-stepper>*[aria-current],body .questionnaire-stepper>*.is-current,body .questionnaire-stepper>*.active{background:var(--bc-primary)!important;color:#fff!important;border-color:var(--bc-primary)!important}
body summary{background:var(--bc-surface)!important;color:var(--bc-text)!important}

/* Support and other content pages: unclassed white sections */
body main section:not(.hero){background-color:transparent}
body main section:not(.hero) h2,body main section:not(.hero) h3{color:var(--bc-text)!important}
body main section:not(.hero) p,body main section:not(.hero) li{color:var(--bc-muted)}
body main section:not(.hero) a:not(.btn){color:var(--bc-accent)}
body main section:not(.hero) .btn-ghost,body main section:not(.hero) .btn-ghost:hover{background:var(--bc-surface)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important}
body main section:not(.hero):not(.block):not(.featured-band){border:1px solid var(--bc-border);border-radius:var(--bc-radius);padding:28px;background:var(--bc-surface)!important}

/* Comparison pages: /compare and /compare/{slug} */
body .wrap.compare-page{width:min(1100px,calc(100% - 2 * var(--bc-gutter)))!important;max-width:1100px!important}
body .compare-page h1{max-width:none}
body .compare-table th,body .compare-table td{text-align:left!important}
body .compare-page .crumbs{color:var(--bc-muted);font-size:.9rem;margin:0 0 16px}
body .compare-page .lead{color:var(--bc-muted);font-size:1.1rem;max-width:44em}
body .compare-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0}
body .compare-card{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:var(--bc-radius);background:var(--bc-surface)!important;border:1px solid var(--bc-border);color:var(--bc-text);text-decoration:none}
body .compare-card:hover{border-color:var(--bc-accent)}
body .compare-card h2{font-size:1.15rem;margin:0;color:var(--bc-text)!important}
body .compare-card p{color:var(--bc-muted);margin:0}
body .compare-card span{margin-top:auto;color:var(--bc-accent);font-weight:600;font-size:.92rem}
body .compare-table-wrap{overflow-x:auto;border:1px solid var(--bc-border);border-radius:var(--bc-radius);margin:28px 0}
body .compare-table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:720px}
body .compare-table th,body .compare-table td{padding:16px 18px;border-bottom:1px solid var(--bc-border);text-align:left;vertical-align:top;line-height:1.55}
body .compare-table thead th{background:var(--bc-surface-2)!important;color:var(--bc-text)!important;font-weight:700}
body .compare-table tbody th{color:var(--bc-text)!important;font-weight:650;width:18%}
body .compare-table td{color:var(--bc-muted)}
body .compare-table tbody tr:last-child th,body .compare-table tbody tr:last-child td{border-bottom:0}
body .compare-verdict{margin:8px 0 24px}
body .compare-verdict h2{font-size:1.3rem}
body .compare-verdict p{color:var(--bc-muted)}
@media (max-width:760px){body .compare-index{grid-template-columns:minmax(0,1fr)}}

/* Homepage blue band with situation cards */
body .featured-band{background:var(--bc-primary)!important;color:#ffffff!important;padding:clamp(56px,6vw,64px) 0;border-bottom:0}
body .featured-band .eyebrow{color:#d2e3fc!important}
body .featured-band h2{color:#ffffff!important}
body .featured-band .section-intro{color:#e8f0fe!important;margin-bottom:32px}
body .band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
body .band-card{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:var(--bc-radius);background:#ffffff!important;color:var(--bc-text)!important;border:1px solid #dadce0;text-decoration:none;min-height:100%}
body .band-card:hover{background:#f8f9fa!important}
body .band-card h3{color:var(--bc-text)!important;margin:0;font-size:1.2rem}
body .band-card p{color:var(--bc-muted)!important;margin:0;font-size:.95rem;line-height:1.55}
body .band-card span{margin-top:auto;color:var(--bc-primary-hover)!important;font-weight:600;font-size:.92rem;padding-top:8px}
body .featured-band a:focus-visible{outline-color:#ffffff}
@media (max-width:760px){body .band-grid{grid-template-columns:minmax(0,1fr)}}

/* Homepage benefit updates block */
body .benefit-news{background:var(--bc-bg)!important;color:var(--bc-text)!important}
body .benefit-news .eyebrow{color:var(--bc-accent)!important}
body .benefit-news-card{background:var(--bc-surface)!important;border:1px solid var(--bc-border)!important}
body .benefit-news p,body .benefit-news-card p{color:var(--bc-muted)!important}

/* Guide pages: tags, fact cards and notices */
body .tag,body span.tag{background:var(--bc-surface-2)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important;border-radius:999px}
body .tag.high{background:#e8f0fe!important;color:var(--bc-primary-hover)!important;border-color:#e8f0fe!important}
body .fact,body .msg,body .msg-info{background:var(--bc-surface)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important;border-radius:var(--bc-radius)}
body .fact li,body .msg li{background:transparent!important;color:var(--bc-text)!important}
body .lead-sm,body p.lead-sm{color:var(--bc-muted)!important}
body b,body strong{color:var(--bc-text)}
body a:not(.btn):not(.skip-link){background-color:transparent}
body h2 a,body h3 a{color:var(--bc-text)!important;text-decoration-color:var(--bc-border)}
body h2 a:hover,body h3 a:hover{color:var(--bc-accent)!important}

/* Plan prices and headings inside cards */
body .plan h2,body .plan h3,body .plan .price,body .plan strong,body .plan .amount,body .plan .price strong{color:var(--bc-text)!important}
body .plan .price small,body .plan small{color:var(--bc-muted)!important}

/* Brand stripe from site.css is not part of this system */
body::before{display:none!important}

/* One footer */
body .footer{background:var(--bc-bg)!important;border-top:1px solid var(--bc-border)!important;color:var(--bc-muted)!important}
body .footer .wrap{padding-block:48px}
body .footer a{color:var(--bc-muted)!important}
body .footer a:hover{color:var(--bc-text)!important}
body .footer-links{border-color:var(--bc-border)!important}

/* Tables and rows */
body table{border-color:var(--bc-border)!important}
body th,body td{border-color:var(--bc-border)!important;color:var(--bc-text)!important}
body th{color:var(--bc-muted)!important}

/* Analytics cookie settings link in the footer */
body #analytics-settings{color:var(--bc-accent)!important;background:none!important;border:0!important;font:inherit;padding:0}

/* Message colours */
body .error,body .form-error,body #form-error,body .field-error{color:var(--bc-danger)!important}

@media (max-width:760px){
  body .muse-home .hero-grid{grid-template-columns:minmax(0,1fr)}
  body .muse-home .hero-text{max-width:none}
  body .topbar nav a{padding:12px}
}
@media (max-width:600px){
  body{font-size:15px}
  body .block{padding:56px 0}
  body .card,body .life-card,body .form-card,body .plan{padding:22px}
  body .life-card>div{padding:20px}
}

/* Screen-reader-only text */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Payment dates: /payment-dates and /fr/payment-dates */
body .wrap.pay-page{width:min(1100px,calc(100% - 2 * var(--bc-gutter)))!important;max-width:1100px!important}
body .pay-page h1{max-width:none}
body .pay-page .crumbs{color:var(--bc-muted);font-size:.9rem;margin:0 0 16px}
body .pay-page .lead{color:var(--bc-muted);font-size:1.1rem;max-width:44em}
body .pay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 40px}
body .pay-card{display:flex;flex-direction:column;gap:6px;padding:22px!important;margin:0!important;border:1px solid var(--bc-border)!important;border-radius:var(--bc-radius)!important;background:var(--bc-surface)!important}
body .pay-card h3{font-size:1rem;margin:0;line-height:1.35}
body .pay-next{display:flex;flex-direction:column;gap:2px;margin:6px 0 0}
body .pay-next span{font-size:.78rem;color:var(--bc-muted);text-transform:uppercase;letter-spacing:.06em}
body .pay-next strong{font-size:1.35rem;color:var(--bc-text)}
body .pay-next em{font-style:normal;font-size:.9rem;color:var(--bc-primary)}
body .pay-card .muted{font-size:.88rem;margin:4px 0 0}
body .pay-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin:auto 0 0;padding-top:8px;font-size:.9rem}
body .pay-dates{display:flex;flex-wrap:wrap;gap:6px 14px;list-style:none;margin:0;padding:0}
body .pay-dates li{margin:0;white-space:nowrap;color:var(--bc-text)}
body .pay-dates li.pay-past{color:var(--bc-muted);text-decoration:line-through;text-decoration-color:var(--bc-border)}
body .pay-table tbody th{width:30%}
@media (max-width:900px){body .pay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){body .pay-grid{grid-template-columns:minmax(0,1fr)}}
body .pay-done span{text-transform:none;letter-spacing:0;font-size:.92rem;line-height:1.5}

/* Calculators: /calculators/ccb */
body .wrap.calc-page{width:min(1100px,calc(100% - 2 * var(--bc-gutter)))!important;max-width:1100px!important}
body .calc-page h1{max-width:none}
body .calc-page .crumbs{color:var(--bc-muted);font-size:.9rem;margin:0 0 16px}
body .calc-page .lead{color:var(--bc-muted);font-size:1.1rem;max-width:44em}
body .calc{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px;margin:24px 0 40px;align-items:start}
body .calc-inputs{display:grid;gap:8px;margin:0!important}
body .calc-inputs label{font-weight:600;color:var(--bc-text)!important;margin-top:8px}
body .calc-inputs input[type=number],body .calc-inputs select{width:100%;max-width:340px}
body .calc-check{display:flex!important;align-items:center;gap:10px;font-weight:500!important}
body .calc-check input{width:20px;height:20px}
body .calc-result{display:flex;flex-direction:column;gap:4px;margin:0!important;position:sticky;top:16px}
body .calc-result span{font-size:.78rem;color:var(--bc-muted);text-transform:uppercase;letter-spacing:.06em}
body .calc-result strong{font-size:2rem;line-height:1.15;color:var(--bc-text)}
body .calc-result em{font-style:normal;font-size:1.05rem;color:var(--bc-primary)}
body .calc-result p{margin:10px 0 0;font-size:.9rem}
@media (max-width:760px){body .calc{grid-template-columns:minmax(0,1fr)}body .calc-result{position:static}}

/* Documents checklist: /checklist */
body .wrap.checklist-page{width:min(1100px,calc(100% - 2 * var(--bc-gutter)))!important;max-width:1100px!important}
body .checklist-page h1{max-width:none}
body .checklist-page .lead{color:var(--bc-muted);font-size:1.1rem;max-width:44em}
body .checklist{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin:24px 0 32px;align-items:start}
body .checklist-pick{margin:0!important;max-height:70vh;overflow:auto}
body .checklist-pick legend{font-weight:700;color:var(--bc-text)!important;padding:0 6px}
body .checklist-pick h2{font-size:.8rem!important;text-transform:uppercase;letter-spacing:.08em;color:var(--bc-muted)!important;margin:18px 0 6px}
body .checklist-pick ul,body .checklist-items{list-style:none;margin:0;padding:0}
body .checklist-pick li,body .checklist-items li{margin:0;padding:6px 0;border-bottom:1px solid var(--bc-border)}
body .checklist-pick label,body .checklist-items label{display:flex;gap:10px;align-items:flex-start;color:var(--bc-text)!important;font-weight:400}
body .checklist-pick input,body .checklist-items input{width:18px;height:18px;margin-top:3px;flex-shrink:0}
body .checklist-out{margin:0!important;position:sticky;top:16px}
body .checklist-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
body .checklist-head h2{margin:0}
body .checklist-out h3{font-size:1rem;margin:18px 0 4px}
@media (max-width:760px){body .checklist{grid-template-columns:minmax(0,1fr)}body .checklist-out{position:static}body .checklist-pick{max-height:none}}
@media print{
  body .topbar,body .footer,body .skip-link,body .checklist-pick,body .checklist-head button,body .checklist-page .lead,body .checklist-page>p,body #analytics-consent{display:none!important}
  body .checklist{display:block}
  body .checklist-out{position:static;border:0!important;padding:0!important;background:#fff!important}
  body .checklist-out a{color:#000!important;text-decoration:none}
}

/* Free tools row on the guides index */
body .guide-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 28px}
body .guide-tools a{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid var(--bc-border);border-radius:var(--bc-radius);background:var(--bc-surface)!important;text-decoration:none}
body .guide-tools a:hover{border-color:var(--bc-primary)}
body .guide-tools b{color:var(--bc-text)!important;font-size:.98rem}
body .guide-tools span{color:var(--bc-muted)!important;font-size:.86rem;line-height:1.45}
@media (max-width:900px){body .guide-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){body .guide-tools{grid-template-columns:minmax(0,1fr)}}

/* Compact density: less empty space between and inside sections, hero columns aligned to the top */
:root{--bc-section:clamp(32px,4vw,52px)}
body .hero.muse-home{padding:28px 0 36px!important}
body .muse-home .hero-grid{align-items:start!important;gap:clamp(28px,4vw,56px)}
body .muse-home .hero-text .eyebrow{margin:4px 0 10px}
body .muse-home .hero-text h1{margin:0 0 14px}
body .muse-home .hero-text p{margin:0 0 12px}
body .muse-home .hero-text .stats{margin-top:16px;padding-top:16px}
body .muse-home .sample-report{margin-top:12px}
body .featured-band{padding:clamp(32px,4vw,48px) 0!important}
body .featured-band .section-intro{margin-bottom:20px!important}
body .section-intro{margin:0 0 24px}
body .block h2{margin-top:0}
body .how-strip-grid>div{padding:14px 18px}
@media (max-width:760px){body .hero.muse-home{padding:18px 0 28px!important}}
/* The photo caption card repeats what the sample report says; drop it so the two hero columns end together */
body .muse-home .muse-photo-note{display:none!important}
body .muse-home .hero-figure figcaption{margin-top:6px}
body .muse-home .hero-figure{padding-bottom:0!important}
body .muse-home .hero-image{max-height:330px;object-fit:cover;object-position:center 35%}

/* Logo: a little larger (owner request 2026-10-29) */
body .topbar .brand{font-size:1.3rem;gap:10px}
body .topbar .brand .leaf{width:34px;height:34px}
@media (max-width:600px){body .topbar .brand{font-size:1.2rem}body .topbar .brand .leaf{width:30px;height:30px}}

/* Conversion prompts: waiting preview on sign-up/sign-in, quick unlock button, Plus value, report tools, pricing FAQ */
body .report-waiting{display:flex;flex-direction:column;gap:4px;margin:12px 0 16px;padding:14px 16px;border:1px solid #c6dafc;border-left:4px solid var(--bc-primary);border-radius:var(--bc-control);background:#f1f6fe}
body .report-waiting b{font-size:1rem;color:var(--bc-text)!important}
body .report-waiting span{font-size:1.05rem;font-weight:600;color:var(--bc-primary)}
body .report-waiting p{margin:2px 0 0;font-size:.92rem;color:var(--bc-muted)}
body .preview-quick-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:4px 0 20px}
body .preview-quick-cta .muted{font-size:.88rem}
body .plus-value{margin:14px auto 0;max-width:620px;font-size:.98rem;color:var(--bc-text)}
body .report-tools{margin-top:24px}
body .report-tools h2{margin-top:0;font-size:1.15rem}
body .report-tools ul{margin:0;padding-left:20px}
body .plus-card{margin-top:20px;border-color:#c6dafc!important;background:#f8fbff!important}
body .plus-card h2{margin:4px 0 8px;font-size:1.2rem}
body .plus-card p:last-child{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:0}
body .pricing-faq{max-width:820px;margin:32px auto 0}
body .pricing-faq h2{font-size:1.3rem;margin:0 0 12px}
body .pricing-faq details{margin:0 0 8px;padding:14px 18px!important}
body .pricing-faq summary{font-weight:600;cursor:pointer;background:transparent!important}
body .pricing-faq details p{margin:8px 0 0;color:var(--bc-muted)}
/* Secondary submit buttons (e.g. "Delete this report") must not look like the primary action */
body input[type=submit].btn-ghost,body input[type=button].btn-ghost,body button.btn.btn-ghost{background:var(--bc-surface)!important;color:var(--bc-text)!important;border:1px solid var(--bc-border)!important}
body input[type=submit].btn-ghost:hover,body input[type=button].btn-ghost:hover,body button.btn.btn-ghost:hover{background:var(--bc-surface-2)!important;color:var(--bc-text)!important}

/* Payment dates: this month list and one-program pages */
body .pay-month{list-style:none;margin:8px 0 32px;padding:0;border:1px solid var(--bc-border);border-radius:var(--bc-radius);overflow:hidden}
body .pay-month li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0;padding:10px 16px;border-bottom:1px solid var(--bc-border)}
body .pay-month li:last-child{border-bottom:0}
body .pay-month li b{min-width:110px;color:var(--bc-text)!important}
body .pay-month li.pay-past b,body .pay-month li.pay-past a{color:var(--bc-muted)!important}
body .pay-soon{font-size:.82rem;font-weight:600;color:var(--bc-primary);background:#e8f0fe;border-radius:999px;padding:2px 10px}
body .pay-card h3 a{color:var(--bc-text)!important;text-decoration:none}
body .pay-card h3 a:hover{text-decoration:underline}
body .pay-hero{display:flex;flex-direction:column;gap:4px;margin:20px 0 32px}
body .pay-hero>span{font-size:.8rem;color:var(--bc-muted);text-transform:uppercase;letter-spacing:.06em}
body .pay-hero>strong{font-size:clamp(1.8rem,4vw,2.4rem);line-height:1.15;color:var(--bc-text)}
body .pay-hero>em{font-style:normal;font-size:1.05rem;color:var(--bc-primary)}
body .pay-subscribe{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:16px 0 0}
body .pay-subscribe a{display:inline-block;padding:6px 14px;border:1px solid var(--bc-border);border-radius:999px;background:#fff!important;text-decoration:none;font-weight:600;font-size:.9rem}
body .pay-row-next th,body .pay-row-next td{background:#e8f0fe!important;font-weight:600}
body tr.pay-past th,body tr.pay-past td{color:var(--bc-muted)!important}
body .pay-others{columns:2;column-gap:32px;padding-left:20px}
@media (max-width:600px){body .pay-others{columns:1}}
/* Share box on reports and previews */
body .share-box{display:flex;flex-direction:column;gap:4px;margin:20px 0 0;padding:16px 18px;border:1px dashed var(--bc-border);border-radius:var(--bc-radius)}
body .share-box b{color:var(--bc-text)!important}
body .share-box span{font-size:.9rem;color:var(--bc-muted)}
body .share-box p{display:flex;flex-wrap:wrap;gap:8px 16px;margin:6px 0 0}
body .share-box p a,body .share-box p button{font-weight:600;font-size:.92rem;cursor:pointer}

/* One-time pass and money-back guarantee */
body .pass-offer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;max-width:820px;margin:28px auto 0}
body .pass-offer>div{flex:1 1 380px}
body .pass-offer h2{margin:4px 0 6px;font-size:1.25rem}
body .pass-offer p{margin:0;color:var(--bc-muted)}
body .guarantee{margin:12px 0 0;padding:10px 12px;border-radius:var(--bc-control);background:#e6f4ea;color:#1e4620!important;font-size:.9rem}
body .guarantee b{color:#1e4620!important}
body .buy-pass .buy-pass-card{max-width:560px}
body .buy-pass .price{font-size:2rem;font-weight:800;color:var(--bc-text)}
body .buy-pass .price small{font-size:.95rem;font-weight:500;color:var(--bc-muted)}
body .buy-pass .ticks{margin:14px 0}
body .pay-jump{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:12px 0 4px;font-size:.88rem}
body .pay-jump span{color:var(--bc-muted);font-weight:600}
body .pay-jump a{display:inline-flex;align-items:center;min-height:32px;padding:4px 12px;border:1px solid var(--bc-border);border-radius:999px;background:var(--bc-surface);text-decoration:none}
body .pay-jump a:hover,body .pay-jump a:focus-visible{border-color:currentColor;text-decoration:underline}
body .pay-card:target{outline:2px solid var(--bc-primary,#1a73e8);outline-offset:2px}
