  /* width:100% + this widget's own padding/border (the search input, the
     reset button, etc.) needs border-box everywhere here -- content-box is
     the default, which added padding/border ON TOP of that 100%, pushing
     the search box past the section's right edge on narrow screens instead
     of respecting it. */
  #bloosat-coverage, #bloosat-coverage *, #bloosat-coverage *::before, #bloosat-coverage *::after {
    box-sizing: border-box;
  }
  #bloosat-coverage {
    --cyan:#0088b0; --cyan-700:#006786; --cyan-100:rgba(255,255,255,.12);
    --mag:#d6006c; --mag-700:#aa0b56;
    --n300:rgba(255,255,255,.35); --n500:rgba(255,255,255,.6); --n700:rgba(255,255,255,.72);
    margin-top:clamp(28px,3.4vw,44px);
    font-family:var(--wp--preset--font-family--body);
    font-size:16px; line-height:1.55; color:#FEFEFD;
  }
  #bloosat-coverage a { color:#FEFEFD; }
  #bloosat-coverage a:hover { color:#46A8E5; }
  #bloosat-coverage :focus { outline:none; }
  #bloosat-coverage :focus-visible { outline:2px solid var(--cyan); outline-offset:2px; }

  .bc-grid { display:grid; grid-template-columns:minmax(0,320px) minmax(0,1fr); gap:clamp(28px,4vw,48px); align-items:start; }
  @media (max-width:860px) { .bc-grid { grid-template-columns:minmax(0,1fr); } }

  .bc-search { position:relative; }
  .bc-label { display:block; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--n700); margin-bottom:6px; }
  .bc-input { width:100%; font-family:var(--wp--preset--font-family--body); font-size:17px; padding:14px 16px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.4); border-radius:2px; color:#FEFEFD; }
  .bc-input::placeholder { color:var(--n500); }
  .bc-sugg { position:absolute; z-index:5; left:0; right:0; top:100%; margin-top:2px; background:#fff; border:1px solid #D1D4D7; border-radius:2px; box-shadow:0 10px 26px rgba(0,10,45,.28); max-height:270px; overflow:auto; }
  .bc-sugg[hidden] { display:none; }
  .bc-sugg button { display:flex; width:100%; justify-content:space-between; gap:10px; align-items:baseline; text-align:left; font-family:var(--wp--preset--font-family--body); font-size:15px; background:none; border:none; padding:9px 14px; cursor:pointer; color:#001864; }
  .bc-sugg button:hover, .bc-sugg button[data-active="true"] { background:rgba(70,168,229,.12); color:#0E5FB6; }
  .bc-sugg small { font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#6C757D; white-space:nowrap; }

  .bc-hint { font-size:13px; color:var(--n700); margin:10px 0 0; }
  .bc-result { margin-top:22px; min-height:170px; }
  .bc-verdict { font-size:clamp(20px,2.2vw,26px); font-weight:700; letter-spacing:-.01em; line-height:1.15; margin:0 0 6px; font-family:var(--wp--preset--font-family--heading); }
  .bc-place { font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--n700); margin:0 0 14px; }
  .bc-yes { color:#46A8E5; }
  .bc-no { color:#E8A06A; }
  .bc-services { list-style:none; margin:16px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
  .bc-services li { display:grid; grid-template-columns:14px minmax(0,1fr); gap:10px; align-items:start; font-size:15px; }
  .bc-dot { width:9px; height:9px; border-radius:50%; margin-top:7px; flex-shrink:0; }
  .bc-services b { font-weight:700; }
  .bc-services span { display:block; color:var(--n700); font-size:13.5px; }
  /* #bloosat-coverage a{color:#FEFEFD} outranks a plain .bc-cta rule (ID
     beats class), so the button text was invisible (white on white) —
     needs an equally ID-qualified selector to win. */
  #bloosat-coverage a.bc-cta { display:inline-block; margin-top:20px; font-family:var(--wp--preset--font-family--body); font-weight:700; font-size:15px; letter-spacing:.02em; background:#FEFEFD; color:#001864; border:0; border-radius:999px; padding:14px 28px; text-decoration:none; cursor:pointer; }
  #bloosat-coverage a.bc-cta:hover { background:#E9F3FB; color:#001864; }
  .bc-legend { display:flex; flex-wrap:wrap; gap:20px; margin-top:24px; font-size:12.5px; color:var(--n700); }
  .bc-legend span { display:flex; align-items:center; gap:7px; }
  .bc-swatch { width:10px; height:10px; border-radius:50%; flex-shrink:0; }

  .bc-stage { position:relative; aspect-ratio:1/0.82; min-height:340px; cursor:grab; }
  .bc-stage.dragging { cursor:grabbing; }
  .bc-stage canvas { display:block; width:100%; height:100%; }
  .bc-loading { position:absolute; inset:0; display:grid; place-items:center; font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--n700); }
  .bc-note { font-size:12px; color:var(--n700); margin:10px 0 0; max-width:60ch; }
  .bc-reset { position:absolute; right:0; bottom:0; font-family:var(--wp--preset--font-family--body); font-size:12px; letter-spacing:.1em; text-transform:uppercase; background:rgba(0,10,45,.4); border:1px solid rgba(255,255,255,.35); color:#FEFEFD; padding:7px 12px; border-radius:2px; cursor:pointer; }
  .bc-reset:hover { border-color:#46A8E5; }
