/* ============================================================
   PULSE SPEED TEST · BroadbandSwitch.uk · production styles · v1.2
   v1.2: the ECG trace is retired so the real measurement curve is
   the hero line, dark panel controls are shielded from site wide
   link and button colours (including visited states), the ladder
   ticks and crosses bounce in on a cadence, and the byline pill
   centres itself.  v1.1 readability pass retained throughout.
   ------------------------------------------------------------
   CURSOR FONT ADOPTION STEP (one edit):
   Open the site's main stylesheet, find the body and heading
   font-family declarations, and set the two variables below so
   the page prose matches the rest of the site exactly.
   The instrument keeps JetBrains Mono for numerals by design.
   If the site's own font is loaded site wide, also remove the
   Sora line from the Google Fonts link in the page head.
   ------------------------------------------------------------
   House rules: brand #E50571, solid high contrast buttons,
   no em or en dashes anywhere, UK English.
   ============================================================ */
:root{
  --bbs-font-body:Poppins,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif; /* site body stack (styles.css) */
  --bbs-font-display:Poppins,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif; /* site heading stack (styles.css) */
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;

  --pink:#E50571;
  --coral:#FF6A3D;
  --ink:#10162E;
  --ink-muted:#5A6379;
  --cloud:#F4F6FB;
  --card-line:#E6E9F2;
  --bg-dark:#05070F;
  --panel:rgba(255,255,255,.035);
  --line:rgba(255,255,255,.09);
  --text:#F3F6FF;
  --slate:#93A0BE;
  --slate-bright:#AAB5CF;
  --good:#2BD57E;
  --warn:#FFB020;
  --bad:#FF5C5C;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }
body{font-family:var(--bbs-font-body);background:#fff;color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}
.pulse-wrap{max-width:1140px;margin:0 auto;padding:0 20px}
a{color:inherit}

.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--pink);color:#fff;font-family:var(--bbs-font-display);font-weight:700;padding:12px 20px;border-radius:0 0 12px 0;text-decoration:none}
.skip-link:focus{left:0}

/* ---------- Breadcrumb (page level, styled to sit under site header) ---------- */
.breadcrumb{background:var(--cloud);border-bottom:1px solid var(--card-line);font-size:13px;color:var(--ink-muted)}
.breadcrumb .pulse-wrap{height:40px;display:flex;align-items:center;gap:8px}
.breadcrumb a{color:var(--ink-muted);text-decoration:none}
.breadcrumb a:hover{color:var(--pink)}
.breadcrumb b{color:var(--ink);font-weight:600}

/* ---------- Intro ---------- */
.intro{padding:34px 0 6px;text-align:center}
.intro h1{font-family:var(--bbs-font-display);font-weight:800;font-size:clamp(28px,4.6vw,42px);letter-spacing:-.02em;line-height:1.12}
.intro h1 em{font-style:normal;color:var(--pink)}
.intro .lead{max-width:720px;margin:12px auto 0;color:var(--ink-muted);font-size:16.5px}
.intro .byline{display:flex !important;align-items:center;justify-content:center !important;gap:10px;width:fit-content;max-width:100%;margin:16px auto 8px;text-align:center;font-size:13px;color:var(--ink-muted);flex-wrap:wrap}
.byline .avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--coral));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--bbs-font-display);font-weight:700;font-size:12px}
.byline a{color:var(--ink);font-weight:600;text-decoration:none}
.byline a:hover{color:var(--pink)}

/* ---------- Instrument shell ---------- */
.instrument-band{position:relative;padding:26px 0 40px}
.instrument-shell{position:relative;overflow:hidden;border-radius:34px;background:var(--bg-dark);box-shadow:0 40px 100px rgba(16,22,46,.35)}
#stream{position:absolute;inset:0;width:100%;height:100%;display:block}
.shell-fade{position:absolute;inset:0;background:radial-gradient(900px 460px at 50% -8%, rgba(229,5,113,.16), transparent 60%);pointer-events:none}
.shell-inner{position:relative;padding:40px 34px 38px;color:var(--text)}
@media (max-width:900px){ .shell-inner{padding:26px 16px 26px} }

.instrument{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;text-align:left}
@media (max-width:900px){ .instrument{grid-template-columns:1fr;gap:26px} }

.phase-label{font-family:var(--bbs-font-display);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--slate);margin-bottom:4px;display:flex;align-items:center;gap:10px}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--pink);opacity:0;transition:opacity .3s}
.instrument-shell.testing .live-dot{opacity:1;animation:pulse-blink 1.1s ease infinite}
@keyframes pulse-blink{50%{opacity:.25}}
.numeral{
  font-family:var(--mono);font-weight:800;
  font-size:clamp(64px,13vw,118px);line-height:1;letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
  background:linear-gradient(92deg,#fff,#FFD9EA 60%,#FFC9B5);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:inline-block;
}
.unit{font-family:var(--bbs-font-display);font-weight:600;font-size:18px;color:var(--slate);margin-left:8px}

.chart-window{margin:14px 0 12px;border-bottom:1px solid var(--line)}
#chart{width:100%;height:78px;display:block}

.status{color:var(--slate);font-size:14px;min-height:22px}
.status b{color:var(--text);font-weight:600}
.server-line{font-family:var(--mono);font-size:11.5px;color:var(--slate-bright);opacity:0;transition:opacity .4s;margin:2px 0 4px;letter-spacing:.02em}
.server-line.show{opacity:.85}
.server-line b{color:var(--text);font-weight:700}
.mbps-note{font-size:12.5px;color:var(--slate-bright);opacity:.9;margin:0 0 12px}
.instrument-shell.done .mbps-note{display:none}

.mini-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:20px}
@media (max-width:560px){ .mini-tiles{grid-template-columns:repeat(2,1fr)} }
.tile{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 11px;transition:border-color .3s}
.tile.hot{border-color:rgba(255,176,32,.45)}
.tile .t-label{font-family:var(--bbs-font-display);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-bottom:4px}
.tile .t-val{font-family:var(--mono);font-weight:700;font-size:16.5px;font-variant-numeric:tabular-nums}
.tile .t-val small{font-family:var(--bbs-font-display);font-size:10.5px;color:var(--slate);font-weight:500;margin-left:2px}
.tile .t-grade{font-size:10.5px;font-weight:600;margin-top:1px}
.t-grade.g-good{color:var(--good)}
.t-grade.g-warn{color:var(--warn)}
.t-grade.g-bad{color:var(--bad)}

.btn{
  font-family:var(--bbs-font-display);font-weight:700;font-size:17px;border:none;cursor:pointer;
  border-radius:999px;padding:16px 38px;color:#fff;background:var(--pink);
  transition:transform .15s, background .15s;box-shadow:0 14px 40px rgba(229,5,113,.35);
  text-decoration:none;display:inline-block;text-align:center;
}
.btn:hover{transform:translateY(-1px);background:#F31380}
.btn:focus-visible{outline:3px solid rgba(229,5,113,.5);outline-offset:3px}
.btn:disabled{opacity:.55;cursor:default;transform:none}
.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--text);box-shadow:none;font-size:14px;font-weight:600;padding:12px 22px}
.btn-ghost:hover{background:rgba(255,255,255,.05)}
.btn-small{font-size:13.5px;padding:11px 22px;box-shadow:none}
/* The adopted site stylesheet defines a higher specificity a.btn base rule
   (white background) and loads before pulse.css.  Re-assert the Pulse brand
   button background and shape for anchor CTAs inside the page only, which also
   keeps the v1.2 white text shield legible on the compare CTA.  Site header and
   footer buttons are left untouched. */
.pulse-wrap a.btn{display:inline-block;border:none;border-radius:999px;padding:16px 38px;background:var(--pink);color:#fff;font-size:17px;box-shadow:0 14px 40px rgba(229,5,113,.35)}
.pulse-wrap a.btn:hover{background:#F31380;filter:none}
.start-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.start-meta{display:flex;flex-direction:column;gap:2px}
.hint-note{color:var(--slate-bright);font-size:12.5px;opacity:.9}
.meth-link{color:var(--slate);font-size:12px;text-decoration:none;font-weight:600}
.meth-link span{color:var(--pink)}
.meth-link:hover{color:var(--text)}

/* ---------- Unlock ladder ---------- */
.ladder-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.ladder h2{font-family:var(--bbs-font-display);font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--slate)}
.mode-toggle{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:rgba(255,255,255,.03)}
.mode-toggle button{font-family:var(--bbs-font-display);font-size:12px;font-weight:700;border:none;background:transparent;color:var(--slate);padding:6px 14px;border-radius:999px;cursor:pointer}
.mode-toggle button:focus-visible{outline:2px solid rgba(229,5,113,.6);outline-offset:2px}
.mode-toggle button.on{background:var(--pink);color:#fff}
.rung{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:8px;transition:border-color .35s, background .35s, transform .35s}
.rung .r-name{font-family:var(--bbs-font-display);font-weight:600;font-size:14px;line-height:1.3;color:var(--text)}
.rung .r-need{color:var(--slate-bright);font-size:12px}
.rung .r-state{margin-left:auto;flex:none;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--slate)}
.rung svg{width:13px;height:13px}
.rung.on{border-color:rgba(43,213,126,.45);background:rgba(43,213,126,.07);transform:translateX(2px)}
.rung.on .r-state{background:var(--good);border-color:var(--good);color:#04140B;animation:pulse-pop .55s cubic-bezier(.34,1.56,.64,1) both}
.rung.locked-final{border-color:rgba(229,5,113,.4);background:rgba(229,5,113,.06)}
.rung.locked-final .r-state{border-color:rgba(229,5,113,.5);color:var(--pink);animation:pulse-pop .55s cubic-bezier(.34,1.56,.64,1) both}
@keyframes pulse-pop{0%{transform:scale(.2);opacity:0}55%{transform:scale(1.22);opacity:1}100%{transform:scale(1);opacity:1}}
@media (prefers-reduced-motion: reduce){
  .rung.on .r-state,.rung.locked-final .r-state{animation:none}
}
.ladder-note{color:var(--slate);font-size:12px;margin-top:6px}
.ladder-note b{color:var(--text)}

/* ---------- Results ---------- */
.results{margin-top:22px;display:none;position:relative}
.instrument-shell.show-results .results{display:block;animation:pulse-rise .5s ease both}
@keyframes pulse-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){ .instrument-shell.show-results .results{animation:none} }
.panel-box{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));border:1px solid var(--line);border-radius:26px;padding:28px 26px;position:relative;color:var(--text)}
@media (max-width:900px){ .panel-box{padding:22px 16px} }

.score-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:4px}
.score-badge{width:88px;height:88px;border-radius:26px;flex:none;background:linear-gradient(135deg,var(--pink),var(--coral));display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 16px 44px rgba(229,5,113,.4)}
.score-badge .s-num{font-family:var(--mono);font-weight:800;font-size:31px;line-height:1;font-variant-numeric:tabular-nums}
.score-badge .s-lab{font-family:var(--bbs-font-display);font-size:9.5px;font-weight:700;letter-spacing:.18em;margin-top:3px}
.verdict{min-width:0;flex:1}
.verdict h3{font-family:var(--bbs-font-display);font-weight:800;font-size:clamp(19px,3vw,24px);letter-spacing:-.015em;line-height:1.28;color:var(--text)}
.verdict h3 b{color:var(--pink)}
.verdict p{color:var(--slate);font-size:13px;margin-top:4px}
.verdict p b{color:var(--text)}

.divider{height:1px;background:var(--line);margin:26px 0}
.mod h4{font-family:var(--bbs-font-display);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-bright);margin-bottom:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.grade-chip{font-family:var(--bbs-font-display);font-size:11.5px;font-weight:700;text-transform:none;padding:4px 11px;border-radius:999px}
.chip-good{color:var(--good);background:rgba(43,213,126,.12);border:1px solid rgba(43,213,126,.3)}
.chip-warn{color:var(--warn);background:rgba(255,176,32,.12);border:1px solid rgba(255,176,32,.3)}
.chip-bad{color:var(--bad);background:rgba(255,92,92,.12);border:1px solid rgba(255,92,92,.3)}

.lat-bars,.bars,.wifi-bars{display:flex;flex-direction:column;gap:13px;margin-bottom:12px}
.bar-label{font-size:13px;color:var(--slate);margin-bottom:6px;display:flex;justify-content:space-between;gap:10px}
.bar-label b{color:var(--text);font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.bar-track{height:12px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}
.bar-fill{height:100%;border-radius:999px;transition:width .5s ease}
.lat-idle .bar-fill{background:linear-gradient(90deg,#2BD57E,#7FE8B4)}
.lat-load .bar-fill{background:linear-gradient(90deg,var(--warn),var(--coral))}
.lat-load .bar-fill.is-good{background:linear-gradient(90deg,#2BD57E,#7FE8B4)}
.bar-you .bar-fill{background:rgba(255,255,255,.42)}
.bar-fast .bar-fill{background:linear-gradient(90deg,var(--pink),var(--coral))}
.wifi-device .bar-fill{background:rgba(255,255,255,.42)}
.wifi-router .bar-fill{background:linear-gradient(90deg,#2BD57E,#7FE8B4)}
.mod-explain{color:var(--slate-bright);font-size:13.5px;line-height:1.7}
.mod-explain b{color:var(--text)}
.bar-note{font-size:12.5px;color:var(--slate-bright);opacity:.9;margin-top:8px}

.wifi-reveal{display:none;margin-top:16px}
.wifi-reveal.show{display:block;animation:pulse-rise .4s ease both}
.wifi-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}

.io-grid{display:flex;gap:14px;align-items:stretch;flex-wrap:wrap}
.io-box{flex:1;min-width:210px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.io-box label{font-size:12px;color:var(--slate);display:block;margin-bottom:6px}
.io-input{display:flex;align-items:center;gap:6px}
.io-input .pre{font-family:var(--mono);font-weight:700;font-size:20px;color:var(--slate)}
.io-input input{width:96px;background:transparent;border:none;color:var(--text);font-family:var(--mono);font-weight:800;font-size:26px;font-variant-numeric:tabular-nums}
.io-input input::placeholder{color:rgba(170,181,207,.55);font-size:15px;font-weight:500;font-family:var(--bbs-font-body);letter-spacing:0}
.io-input input:focus{outline:none;border-bottom:2px solid var(--pink)}
.io-input .post{font-family:var(--bbs-font-display);font-size:13px;color:var(--slate);font-weight:600}
.io-out{flex:1.4;min-width:240px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;justify-content:center}
.io-line{font-size:14.5px;color:var(--slate)}
.io-line b{font-family:var(--mono);font-weight:800;color:var(--text);font-size:19px}
.io-line .hot{color:var(--coral)}
.rights-note{color:var(--slate-bright);font-size:13px;line-height:1.7;margin-top:12px}
.rights-note b{color:var(--text)}
.rights-note a{color:var(--text);font-weight:600}

.tariff{display:flex;gap:12px;align-items:flex-start;background:rgba(229,5,113,.06);border:1px solid rgba(229,5,113,.3);border-radius:16px;padding:15px 17px}
.tariff svg{width:18px;height:18px;flex:none;margin-top:2px;stroke:var(--pink)}
.tariff p{color:var(--slate);font-size:13.5px;line-height:1.6}
.tariff p b{color:var(--text)}
.tariff a{color:var(--text);font-weight:700;text-decoration:none}
.tariff a span{color:var(--pink)}

.compare-card{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:16px;padding:22px 20px;text-align:center;margin-bottom:14px}
.compare-card p{color:var(--slate);font-size:14px;max-width:520px;margin:0 auto 16px}
.compare-card p b{color:var(--text)}
.rank-line{font-size:11.5px;color:var(--slate);text-align:center;margin-bottom:12px}
.rank-line a{color:var(--text);font-weight:600}
.ots-line{display:flex;align-items:flex-start;gap:9px;color:var(--slate);font-size:12.5px;margin-bottom:10px;line-height:1.55}
.ots-line svg{width:15px;height:15px;flex:none;margin-top:2px;stroke:var(--good)}
.ots-line a{color:var(--text);font-weight:600}
.all-deals{display:block;text-align:center;color:var(--text);font-family:var(--bbs-font-display);font-weight:700;font-size:14.5px;text-decoration:none;padding:4px 0}
.all-deals span{color:var(--pink)}

.transparency{border-top:1px solid var(--line);margin-top:24px;padding-top:16px;font-family:var(--mono);font-size:12px;color:var(--slate-bright);letter-spacing:.02em;line-height:2}
.transparency a{color:var(--slate);font-weight:700;text-decoration:none}
.transparency a span{color:var(--pink)}
.transparency a:hover{color:var(--text)}
.peak-tip{font-size:12.5px;color:var(--slate-bright);opacity:.95;margin-top:10px;font-family:var(--bbs-font-body)}
.peak-tip b{color:var(--text)}
.ref-line{font-size:12.5px;color:var(--slate-bright);margin-top:6px;font-family:var(--bbs-font-body)}
.ref-line b{color:var(--text);font-family:var(--mono);font-weight:700}
.after-row{display:flex;gap:12px;justify-content:center;margin-top:18px;flex-wrap:wrap}

/* v1.2: shield dark panel links and buttons from the site's global
   link, visited and button colours so nothing can go invisible. */
.instrument-shell a,
.instrument-shell a:visited{color:var(--text)}
.instrument-shell .btn,
.instrument-shell .btn:visited,
.instrument-shell .btn:hover{color:#fff !important;-webkit-text-fill-color:#fff}
.instrument-shell .btn-ghost,
.instrument-shell .btn-ghost:visited,
.instrument-shell .btn-ghost:hover,
.instrument-shell .btn-ghost:focus{color:var(--text) !important;-webkit-text-fill-color:var(--text)}
.instrument-shell .all-deals,
.instrument-shell .all-deals:visited,
.instrument-shell .all-deals:hover{color:var(--text) !important;-webkit-text-fill-color:var(--text)}
.instrument-shell .meth-link,
.instrument-shell .meth-link:visited{color:var(--slate-bright) !important}
.instrument-shell .transparency a,
.instrument-shell .transparency a:visited{color:var(--slate-bright) !important}
.instrument-shell .ots-line a,
.instrument-shell .ots-line a:visited,
.instrument-shell .rank-line a,
.instrument-shell .rank-line a:visited,
.instrument-shell .tariff a,
.instrument-shell .tariff a:visited,
.instrument-shell .rights-note a,
.instrument-shell .rights-note a:visited,
.instrument-shell .bar-note a,
.instrument-shell .bar-note a:visited,
.instrument-shell .mod-explain a,
.instrument-shell .mod-explain a:visited{color:var(--text) !important}

.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:#1B2340;border:1px solid var(--line);color:var(--text);font-size:13.5px;padding:11px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .3s, transform .3s;z-index:310}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- Light content sections ---------- */
.content-band{padding:44px 0 10px}
.content-band h2{font-family:var(--bbs-font-display);font-size:clamp(21px,3.4vw,27px);font-weight:800;letter-spacing:-.02em;margin-bottom:18px;text-align:center}
.content-band h2 em{font-style:normal;color:var(--pink)}
.prose{max-width:760px;margin:0 auto 44px;color:var(--ink-muted);font-size:15.5px}
.prose p{margin-bottom:14px}
.prose a{color:var(--ink);font-weight:600}
.prose a:hover{color:var(--pink)}
.prose b{color:var(--ink)}

.measure{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:48px}
@media (max-width:860px){ .measure{grid-template-columns:repeat(2,1fr)} }
@media (max-width:520px){ .measure{grid-template-columns:1fr} }
.m-card{background:#fff;border:1px solid var(--card-line);border-radius:16px;padding:19px 18px}
.m-card h3{font-family:var(--bbs-font-display);font-size:15px;font-weight:700;margin-bottom:7px;display:flex;align-items:center;gap:8px}
.m-dot{width:9px;height:9px;border-radius:50%;background:var(--pink);flex:none}
.m-card p{color:var(--ink-muted);font-size:13.5px;line-height:1.6}

.needs{max-width:660px;margin:0 auto 48px;display:flex;flex-direction:column;gap:10px}
.need-row{background:#fff;border:1px solid var(--card-line);border-radius:14px;padding:15px 18px;display:flex;gap:14px;align-items:center}
.need-pill{font-family:var(--mono);font-weight:700;font-size:12.5px;color:var(--pink);background:rgba(229,5,113,.08);border:1px solid rgba(229,5,113,.22);padding:6px 12px;border-radius:999px;white-space:nowrap;flex:none}
.need-row p{color:var(--ink-muted);font-size:14px}
.need-row a{color:var(--ink);font-weight:600}

.faq{max-width:760px;margin:0 auto 46px}
.faq details{background:#fff;border:1px solid var(--card-line);border-radius:14px;margin-bottom:10px;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:16px 18px;font-family:var(--bbs-font-display);font-weight:700;font-size:15px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--pink);font-size:18px;font-weight:700;flex:none}
.faq details[open] summary::after{content:"\2212"}
.faq .a{padding:0 18px 16px;color:var(--ink-muted);font-size:14px;line-height:1.7}
.faq .a a{color:var(--ink);font-weight:600}

.cta-band{background:var(--ink);border-radius:26px;color:#fff;text-align:center;padding:38px 26px;margin:0 0 52px}
.cta-band h2{color:#fff;margin-bottom:8px}
.cta-band p{color:#C9D2E8;font-size:15px;max-width:560px;margin:0 auto 20px}
.cta-band .btn{box-shadow:0 14px 40px rgba(229,5,113,.35)}

.reviewed{max-width:760px;margin:0 auto 40px;display:flex;gap:14px;align-items:center;background:var(--cloud);border:1px solid var(--card-line);border-radius:16px;padding:16px 18px;font-size:13px;color:var(--ink-muted)}
.reviewed .avatar{width:40px;height:40px;border-radius:50%;flex:none;background:linear-gradient(135deg,var(--pink),var(--coral));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--bbs-font-display);font-weight:800}
.reviewed a{color:var(--ink);font-weight:600}

.noscript-box{max-width:760px;padding:20px;border:1px solid var(--card-line);border-radius:14px;margin:0 auto 40px;color:var(--ink-muted)}
.noscript-box b{color:var(--ink)}

/* ---------- Print: the results panel becomes complaint evidence ---------- */
@media print{
  .breadcrumb,#stream,.shell-fade,.start-row,.after-row,.cta-band,.toast,
  .content-band .measure,.content-band .faq,.content-band .needs{display:none !important}
  body{background:#fff}
  .instrument-shell{background:#fff;box-shadow:none;border:1px solid #ccc}
  .shell-inner,.panel-box,.verdict h3,.rung .r-name,.io-line b,.bar-label b,
  .mod-explain b,.rights-note b,.tariff p b,.ladder-note b,.status b{color:#000 !important}
  .numeral{-webkit-text-fill-color:#000;background:none;color:#000}
  .verdict p,.mod-explain,.rights-note,.bar-label,.transparency,.io-line{color:#333 !important}
}
