/* The assistant mockup. Oftheard's navy and amber, in a modern skin: soft
   gradient backdrop, glass header, rounded layered cards, sans headings with a
   gradient accent. Fraunces stays for the wordmark only. */
:root{
  --bg:#F5F7FC; --card:#FFFFFF; --card-2:#F7F9FD; --card-3:#E8EDF6;
  --ink:#0E1627; --ink-2:#3A4760; --ink-3:#66748E; --ink-4:#9AA6BC;
  --line:#E2E7F1; --line-2:#CDD5E3;
  --brand:#1F3D66; --brand-2:#3B6BAA; --brand-3:#5B8FD6; --brand-ink:#1F3D66; --brand-tint:#E9F0FB;
  --ok:#128062; --ok-tint:#DDF3EA;
  --wr:#D0901F; --wr-ink:#8F5F0A; --wr-tint:#FCF0D6;
  --er:#D24B2E; --er-ink:#A63A20; --er-tint:#FBE6DF;
  --on-brand:#FFFFFF;
  --grad:linear-gradient(135deg,#1F3D66 0%,#2F5A94 55%,#4C82C9 100%);
  --grad-text:linear-gradient(95deg,#1F3D66 0%,#3B6BAA 55%,#D0901F 100%);
  --glow:0 10px 24px -10px rgba(31,61,102,.55);
  --r2:10px; --r3:16px; --r4:22px;
  --sh1:0 1px 2px rgba(14,22,39,.04),0 6px 20px -10px rgba(14,22,39,.12);
  --sh2:0 30px 60px -30px rgba(14,22,39,.30),0 8px 20px -12px rgba(14,22,39,.12);
  --ring:0 0 0 4px rgba(59,107,170,.18);
  --serif:"Fraunces","Iowan Old Style",Georgia,serif;
  --disp:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Menlo,Consolas,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){
  --bg:#080E1C; --card:#101a2e; --card-2:#0d1628; --card-3:#1b2640;
  --ink:#EAF0FA; --ink-2:#BAC5DA; --ink-3:#8594AF; --ink-4:#5E6C88;
  --line:#1D2942; --line-2:#2B3A5B;
  --brand:#4C82C9; --brand-2:#6B9BDA; --brand-3:#8FB4E8; --brand-ink:#A9C6F0; --brand-tint:#15223D;
  --ok:#5FD1A6; --ok-tint:#0F2E24;
  --wr:#EDB04E; --wr-ink:#F2C26F; --wr-tint:#2F230C;
  --er:#F08A6C; --er-ink:#F5A287; --er-tint:#35180F;
  --grad:linear-gradient(135deg,#2F5A94 0%,#4C82C9 60%,#6FA2E4 100%);
  --grad-text:linear-gradient(95deg,#A9C6F0 0%,#8FB4E8 45%,#EDB04E 100%);
  --glow:0 10px 26px -10px rgba(76,130,201,.6);
  --sh1:0 1px 2px rgba(0,0,0,.3),0 8px 24px -12px rgba(0,0,0,.6);
  --sh2:0 30px 60px -30px rgba(0,0,0,.8);
  --ring:0 0 0 4px rgba(111,162,228,.25);
  color-scheme:dark;
}}:root[data-theme=dark]{
  --bg:#080E1C; --card:#101a2e; --card-2:#0d1628; --card-3:#1b2640;
  --ink:#EAF0FA; --ink-2:#BAC5DA; --ink-3:#8594AF; --ink-4:#5E6C88;
  --line:#1D2942; --line-2:#2B3A5B;
  --brand:#4C82C9; --brand-2:#6B9BDA; --brand-3:#8FB4E8; --brand-ink:#A9C6F0; --brand-tint:#15223D;
  --ok:#5FD1A6; --ok-tint:#0F2E24;
  --wr:#EDB04E; --wr-ink:#F2C26F; --wr-tint:#2F230C;
  --er:#F08A6C; --er-ink:#F5A287; --er-tint:#35180F;
  --grad:linear-gradient(135deg,#2F5A94 0%,#4C82C9 60%,#6FA2E4 100%);
  --grad-text:linear-gradient(95deg,#A9C6F0 0%,#8FB4E8 45%,#EDB04E 100%);
  --glow:0 10px 26px -10px rgba(76,130,201,.6);
  --sh1:0 1px 2px rgba(0,0,0,.3),0 8px 24px -12px rgba(0,0,0,.6);
  --sh2:0 30px 60px -30px rgba(0,0,0,.8);
  --ring:0 0 0 4px rgba(111,162,228,.25);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:15.5px/1.6 var(--disp);min-height:100vh;position:relative;overflow-x:hidden}
/* the backdrop: two soft washes, navy top-left and amber top-right */
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(900px 520px at 8% -8%,rgba(59,107,170,.16),transparent 60%),
             radial-gradient(760px 460px at 100% 0%,rgba(208,144,31,.12),transparent 60%),
             radial-gradient(700px 500px at 50% 110%,rgba(59,107,170,.08),transparent 60%)}
.hide{display:none!important}
a{color:var(--brand-2)}
h1,h2,h3{font-family:var(--disp);font-weight:600;letter-spacing:-.03em;line-height:1.12;margin:0}
h1 em,h2 em,.q em{font-style:normal;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
button{font:inherit;cursor:pointer}
input,select,textarea{font:inherit;color:var(--ink)}
:focus-visible{outline:none;box-shadow:var(--ring)}

/* header: glass over the backdrop */
.band{position:sticky;top:0;z-index:5;background:rgba(15,30,56,.95);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid rgba(255,255,255,.07);color:#F5F7FC}
.band-in{max-width:1320px;margin:0 auto;padding:0 24px;min-height:64px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.logo{display:inline-flex;align-items:center;gap:10px;color:#F5F7FC;text-decoration:none;font:600 22px/1 var(--serif);letter-spacing:-.01em}
.omark{display:inline-block;flex:none;width:24px;height:24px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat}
.flag{font:500 11px/1 var(--disp);letter-spacing:.02em;color:#F2C26F;background:rgba(208,144,31,.14);border:1px solid rgba(208,144,31,.35);padding:6px 10px;border-radius:999px}
.grow{flex:1}
.btn-band{background:rgba(255,255,255,.06);color:#F5F7FC;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:500;transition:background .15s}
.btn-band:hover{background:rgba(255,255,255,.12)}
.dash-nav{display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.dash-nav button{background:none;border:0;border-radius:999px;color:rgba(245,247,252,.72);padding:7px 14px;font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;transition:background .15s,color .15s}
.dash-nav button:hover{color:#fff}
.dash-nav button[aria-current=page]{color:#0E1627;background:#F5F7FC}
.dash-nav .count{min-width:19px;height:19px;padding:0 6px;border-radius:999px;background:#EDB04E;color:#0E1627;font:600 11px/19px var(--disp);text-align:center}
@media (max-width:760px){.band-in{padding:8px 16px;gap:10px}.flag{display:none}.dash-nav{order:9;width:100%;overflow-x:auto}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--grad);color:#fff;border:0;border-radius:12px;padding:12px 20px;font-size:14.5px;font-weight:600;line-height:1.2;text-decoration:none;box-shadow:var(--glow);transition:transform .15s,box-shadow .15s,filter .15s}
.btn:hover{transform:translateY(-1px);filter:brightness(1.07);box-shadow:0 14px 28px -12px rgba(31,61,102,.6)}
.btn:active{transform:none}
.btn.ghost{background:var(--card);color:var(--ink);border:1px solid var(--line-2);box-shadow:var(--sh1)}
.btn.ghost:hover{border-color:var(--brand-2);color:var(--brand-2);filter:none}
.btn.lg{padding:15px 26px;font-size:15.5px;border-radius:14px}
.btn:disabled{opacity:.5;cursor:default;transform:none}
.link{background:none;border:0;padding:0;color:var(--brand-2);font-weight:600;text-decoration:none;border-bottom:1.5px solid currentColor}
.link:hover{opacity:.8}

/* onboarding */
.onb{max-width:900px;margin:0 auto;padding:40px 24px 90px}
@media (max-width:600px){.onb{padding:24px 16px 60px}}
.steps{list-style:none;display:flex;gap:0;padding:0;margin:0 0 44px;position:relative}
.steps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;font-size:12.5px;font-weight:500;color:var(--ink-4);text-align:center}
.steps li::before{content:"";position:absolute;top:15px;left:calc(-50% + 20px);right:calc(50% + 20px);height:2px;background:var(--line);border-radius:2px}
.steps li:first-child::before{display:none}
.steps li.done::before,.steps li.now::before{background:var(--grad)}
.steps .n{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:13px;background:var(--card);border:1.5px solid var(--line-2);color:var(--ink-3);position:relative;z-index:1;transition:all .2s}
.steps li.done .n{background:var(--ok);border-color:var(--ok);color:#fff}
.steps li.now .n{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 0 0 5px var(--brand-tint)}
.steps li.now{color:var(--ink)}
.steps li.done{color:var(--ink-3)}
@media (max-width:600px){.steps .t{display:none}.steps{margin-bottom:30px}}

.say{display:flex;gap:12px;align-items:center;margin:0 0 22px;padding:12px 16px 12px 12px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh1);max-width:max-content}
@media (max-width:600px){.say{max-width:none}}
.av{flex:none;width:36px;height:36px;border-radius:12px;background:var(--grad);position:relative;box-shadow:var(--glow)}
.av::after{content:"";position:absolute;inset:8px;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat}
.say p{margin:0;color:var(--ink-2);font-size:14.5px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font:600 12px/1 var(--disp);letter-spacing:.01em;color:var(--brand-2);background:var(--brand-tint);padding:7px 12px;border-radius:999px;margin:0 0 16px}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--wr)}
.q{font-size:clamp(32px,5vw,52px);margin:0 0 14px}
.lede{font-size:17px;color:var(--ink-2);max-width:640px;margin:0 0 30px}
.in{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.in,.flash,.chk,.fact,.modal,.modal-wrap{animation:none}.btn,.choice{transition:none}}

.choices{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:600px){.choices{grid-template-columns:1fr}}
.choice{display:flex;flex-direction:column;gap:12px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r4);padding:26px 24px 24px;color:var(--ink);box-shadow:var(--sh1);transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}
.choice::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--grad);opacity:0;transition:opacity .2s;z-index:0}
.choice>*{position:relative;z-index:1}
.choice:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:transparent}
.choice svg{width:48px;height:48px;padding:11px;border-radius:14px;background:var(--brand-tint);color:var(--brand-2)}
.choice b{font:600 21px/1.25 var(--disp);letter-spacing:-.02em}
.choice span{color:var(--ink-3);font-size:14.5px}

.urlrow{display:flex;align-items:stretch;background:var(--card);border:1px solid var(--line-2);border-radius:18px;overflow:hidden;box-shadow:var(--sh2);padding:6px}
.urlrow:focus-within{border-color:var(--brand-2);box-shadow:var(--ring),var(--sh2)}
.urlrow span{display:flex;align-items:center;padding:0 0 0 14px;color:var(--ink-4);font:500 15px var(--mono)}
.urlrow input{flex:1;min-width:0;border:0;background:transparent;padding:14px 12px 14px 2px;font:500 17px var(--mono);outline:none;box-shadow:none}
.urlrow .btn{border-radius:13px;padding:0 24px}
@media (max-width:600px){.urlrow{flex-wrap:wrap}.urlrow .btn{width:100%;padding:14px}}
.fine{font-size:13.5px;color:var(--ink-3);margin:14px 0 0}
.fine b{color:var(--ok);font-weight:600}
.back{margin-top:26px}

/* forms */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:26px;box-shadow:var(--sh1)}
@media (max-width:600px){.card{padding:18px 16px}}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.full{grid-column:1/-1}
@media (max-width:600px){.grid{grid-template-columns:1fr}}
.fld{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;color:var(--ink-2)}
.fld small{font-weight:400;color:var(--ink-3)}
.fld input,.fld select{width:100%;padding:12px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);font-size:15px;font-weight:400;transition:border-color .15s,box-shadow .15s}
.fld input:focus,.fld select:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.fld .tagpick input{width:auto;padding:0;border:0;background:none}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tagpick{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line-2);border-radius:999px;padding:7px 13px;font-size:13.5px;font-weight:500;color:var(--ink-2);background:var(--card);cursor:pointer;transition:all .15s}
.tagpick input{margin:0;accent-color:var(--brand-2)}
.tagpick:has(input:checked){border-color:transparent;background:var(--brand-tint);color:var(--brand-2);box-shadow:inset 0 0 0 1.5px var(--brand-2)}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:26px}

/* the site check */
.scan{display:grid;grid-template-columns:230px 1fr;gap:32px;align-items:start;background:var(--card);border:1px solid var(--line);border-radius:var(--r4);padding:28px;box-shadow:var(--sh2)}
@media (max-width:700px){.scan{grid-template-columns:1fr;justify-items:center;padding:20px}.scan .feed{width:100%}}
.ringbox{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.ring{width:200px;height:200px;filter:drop-shadow(0 10px 20px rgba(31,61,102,.18))}
.ring circle{fill:none;stroke-width:12}
.ring .bg{stroke:var(--card-3)}
.ring .fg{stroke:url(#ringGrad);stroke-linecap:round;transition:stroke-dashoffset .35s ease}
.ring text{font-family:var(--disp);font-weight:600;fill:var(--ink);letter-spacing:-.03em}
.ringbox small{font-size:12.5px;font-weight:500;color:var(--ink-3)}
.feed{display:grid;gap:2px;max-height:440px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 85%,transparent);mask-image:linear-gradient(to bottom,#000 85%,transparent)}
.grp{font:600 11.5px/1 var(--disp);letter-spacing:.04em;text-transform:uppercase;color:var(--brand-2);margin:16px 0 6px}
.grp:first-child{margin-top:0}
.chk{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:14.5px;font-weight:500;padding:5px 0;animation:rise .3s ease-out both}
.ic{width:20px;height:20px;border-radius:7px;display:grid;place-items:center;font:700 11px/1 var(--disp);margin-top:2px}
.ic.pass{background:var(--ok-tint);color:var(--ok)}
.ic.warn{background:var(--wr-tint);color:var(--wr-ink)}
.ic.fail{background:var(--er-tint);color:var(--er-ink)}
.ic.run{border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--brand-2);animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.chk em{display:block;font-style:normal;font-weight:400;color:var(--ink-3);font-size:13px}

.score-head{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin:0 0 26px;background:var(--card);border:1px solid var(--line);border-radius:var(--r4);padding:24px 28px;box-shadow:var(--sh1)}
.big{font:600 88px/.9 var(--disp);letter-spacing:-.05em;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.big small{font:500 22px var(--disp);color:var(--ink-3);-webkit-text-fill-color:var(--ink-3);letter-spacing:0}
.score-head p{margin:10px 0 0;color:var(--ink-2);max-width:460px}
.verdict{display:inline-flex;align-items:center;gap:6px;font:600 12px/1 var(--disp);padding:7px 12px;border-radius:999px;background:var(--er-tint);color:var(--er-ink)}
.verdict::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.disc{display:grid;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:22px 24px;box-shadow:var(--sh1)}
.panel .disc{border:0;padding:0;box-shadow:none;background:none}
.disc div{display:grid;grid-template-columns:210px 1fr 44px;gap:16px;align-items:center;font-size:14.5px;font-weight:500}
@media (max-width:600px){.disc div{grid-template-columns:1fr 44px}.disc .bar{grid-column:1/-1;grid-row:2}}
.bar{height:10px;border-radius:999px;background:var(--card-3);overflow:hidden}
.bar i{display:block;height:100%;border-radius:999px;width:0;transition:width 1s cubic-bezier(.2,.7,.2,1)}
.bar i.lo{background:linear-gradient(90deg,#E7735A,#D24B2E)}
.bar i.mid{background:linear-gradient(90deg,#EDB04E,#D0901F)}
.bar i.hi{background:linear-gradient(90deg,#3FC195,#128062)}
.disc b{font:600 15px var(--disp);text-align:right}
.find{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.find li{display:grid;grid-template-columns:22px 1fr;gap:12px;font-size:15px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--sh1)}
.find li span:last-child{color:var(--ink-2)}
.find b{color:var(--ink);font-weight:600}
.gist .find li{border:0;box-shadow:none;padding:4px 0;background:none}
.gist{margin:28px 0 0;background:linear-gradient(135deg,var(--brand-tint),var(--card) 70%);border:1px solid var(--line);border-radius:var(--r3);padding:18px 20px;box-shadow:var(--sh1)}
.gist p{margin:0 0 12px;color:var(--ink-2);font-size:14.5px}
.gist b{color:var(--ink);font-weight:600}
.gist-tags{display:flex;flex-wrap:wrap;gap:6px}
.gist-tags .pill{margin-left:0}
.sample{margin:0;white-space:pre-wrap;font:13.5px/1.65 var(--mono);color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}

.pill{display:inline-flex;align-items:center;gap:4px;font:600 11.5px/1 var(--disp);padding:5px 9px;border-radius:999px;vertical-align:1px;margin-left:6px}
.pill.ok{background:var(--ok-tint);color:var(--ok)}
.pill.wr{background:var(--wr-tint);color:var(--wr-ink)}
.pill.er{background:var(--er-tint);color:var(--er-ink)}
.pill.br{background:var(--brand-tint);color:var(--brand-2)}
.sec{margin:40px 0 16px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.sec:empty{margin:0}
.sec h2{font-size:24px}
.sec span{font-size:14px;color:var(--ink-3)}

/* business card */
.facts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:600px){.facts{grid-template-columns:1fr}}
.fact{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--sh1);animation:rise .35s ease-out both;transition:border-color .15s}
.fact:hover{border-color:var(--line-2)}
.fact:last-child:nth-child(odd){grid-column:1/-1}
.fact small{font:600 11.5px/1.2 var(--disp);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-3)}
.fact b{font-weight:500;font-size:15.5px}
.fact .src{font-size:12.5px;color:var(--ink-4)}
.fact.miss{background:var(--wr-tint);border-color:transparent}
.fact.miss b{color:var(--wr-ink)}
.fact.gbp{background:var(--ok-tint);border-color:transparent}
.ask{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--sh1);position:relative;overflow:hidden}
.ask::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(#EDB04E,#D0901F)}
.ask.ok::before{background:linear-gradient(#3FC195,#128062)}
.ask p{margin:0 0 10px;font-weight:500}
.ask .opts{display:flex;gap:8px;flex-wrap:wrap}
.ask .opts button{background:var(--card);border:1px solid var(--line-2);border-radius:999px;padding:8px 15px;font-size:13.5px;font-weight:500;color:var(--ink);transition:all .15s}
.ask .opts button:hover{border-color:var(--brand-2);color:var(--brand-2);background:var(--brand-tint)}
.ask .done{color:var(--ok);font-weight:600;font-size:14px;margin:0}
.draft .ask{margin:0 0 16px}

/* popup */
.modal-wrap{position:fixed;inset:0;background:rgba(8,14,28,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;z-index:20;animation:fade .2s ease-out}
@keyframes fade{from{opacity:0}}
.modal{background:var(--card);border:1px solid var(--line);border-radius:26px;max-width:540px;width:100%;padding:30px;box-shadow:0 40px 80px -30px rgba(0,0,0,.55);animation:pop .35s cubic-bezier(.2,.8,.2,1);max-height:calc(100vh - 32px);overflow:auto}
@keyframes pop{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
@media (max-width:600px){.modal{padding:22px 18px;border-radius:22px}}
.modal h2{font-size:28px;margin:0 0 10px}
.modal p{color:var(--ink-2);margin:0 0 18px}
.modal .eyebrow{margin:0 0 14px}
.modal .fine{margin:16px 0 0;color:var(--ink-3)}
.gbpcard{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:14px;margin:0 0 14px;background:linear-gradient(135deg,var(--brand-tint),var(--card-2))}
.gbpcard .pin{width:52px;height:52px;border-radius:14px;background:var(--grad);display:grid;place-items:center;color:#fff;box-shadow:var(--glow)}
.gbpcard .pin svg{width:24px;height:24px}
.gbpcard b{display:block;font-size:16px}
.gbpcard span{font-size:13.5px;color:var(--ink-3)}
.toggle{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;margin:0 0 18px;font-size:14.5px;font-weight:500}
.sw{flex:none;width:46px;height:26px;border-radius:999px;background:var(--line-2);position:relative;border:0;padding:0;transition:background .2s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:left .2s}
.sw[aria-checked=true]{background:var(--ok)}
.sw[aria-checked=true]::after{left:23px}
.toggle div{flex:1}
.toggle small{display:block;color:var(--ink-3);font-size:12.5px;font-weight:400}
.mopts{display:grid;gap:10px}
.mopt{display:flex;align-items:center;gap:14px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px;color:var(--ink);width:100%;box-shadow:var(--sh1);transition:transform .15s,border-color .15s,box-shadow .15s}
a.mopt{text-decoration:none}
.mopt:hover{border-color:var(--brand-2);transform:translateY(-2px);box-shadow:var(--sh2)}
.mopt b{display:block;font-size:15px}
.mopt span{font-size:13.5px;color:var(--ink-3)}
.mopt svg{width:40px;height:40px;padding:9px;flex:none;border-radius:12px;background:var(--brand-tint);color:var(--brand-2)}
.fine.hide{display:none}

/* the workspace */
.dash{display:grid;grid-template-columns:1fr 390px;max-width:1320px;margin:0 auto;min-height:calc(100vh - 64px);gap:0}
.dash-main{padding:34px 30px 80px;min-width:0}
@media (max-width:1000px){.dash{grid-template-columns:1fr}.asst{position:static!important;height:auto!important;margin:0 16px 24px!important}.asst-log{max-height:440px}}
@media (max-width:600px){.dash-main{padding:22px 16px 40px}}
.asst{margin:20px 20px 20px 0;border:1px solid var(--line);border-radius:var(--r4);background:var(--card);display:flex;flex-direction:column;position:sticky;top:84px;height:calc(100vh - 104px);box-shadow:var(--sh2);overflow:hidden}
.asst-head{display:flex;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--brand-tint),var(--card) 80%)}
.asst-head b{display:block;font:600 16px var(--disp);letter-spacing:-.01em}
.asst-head small{color:var(--ink-3);font-size:12.5px}
.asst-log{flex:1;overflow-y:auto;padding:16px 16px;display:flex;flex-direction:column;gap:10px}
.asst-say{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}
.asst-say input{flex:1;min-width:0;padding:11px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);font-size:14px}
.asst-say input:focus{outline:none;border-color:var(--brand-2);box-shadow:var(--ring)}
.asst-say .btn{padding:10px 16px;font-size:13.5px}
.m{max-width:92%;font-size:14px;line-height:1.55;padding:11px 14px;border-radius:16px;animation:rise .3s ease-out both}
.m p{margin:0 0 .45em}.m p:last-child{margin:0}
.m.bot{align-self:flex-start;background:var(--card-2);border:1px solid var(--line);border-top-left-radius:6px}
.m.me{align-self:flex-end;background:var(--grad);color:#fff;border-top-right-radius:6px;box-shadow:var(--glow)}
.m.note{align-self:stretch;background:transparent;border:1px dashed var(--line-2);color:var(--ink-3);font-size:13px}
.m .chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.m .chips button{background:var(--card);border:1px solid var(--brand-2);color:var(--brand-2);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500;transition:background .15s}
.m .chips button:hover{background:var(--brand-tint)}
.typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:var(--card-2);border:1px solid var(--line);border-radius:16px}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--ink-4);animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{0%,100%{opacity:.25}50%{opacity:1}}

.pagehead{margin:0 0 24px}
.pagehead h1{font-size:clamp(28px,3.8vw,42px)}
.pagehead p{color:var(--ink-3);margin:8px 0 0}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:0 0 18px}
.tile{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:18px 20px;box-shadow:var(--sh1);position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.tile:hover{transform:translateY(-2px);box-shadow:var(--sh2)}
.tile::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--grad)}
.tile.good::before{background:linear-gradient(90deg,#3FC195,#128062)}
.tile.bad::before{background:linear-gradient(90deg,#E7735A,#D24B2E)}
.tile small{display:block;font:600 11.5px/1.3 var(--disp);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-3);margin:4px 0 12px}
.tile b{font:600 38px/1 var(--disp);letter-spacing:-.04em}
.tile span{display:block;margin-top:10px;font-size:13px;color:var(--ink-3)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:22px 24px;margin:0 0 16px;box-shadow:var(--sh1)}
@media (max-width:600px){.panel{padding:18px 16px}}
.panel h3{font-size:20px;margin:0 0 4px}
.panel .sub{color:var(--ink-3);font-size:14px;margin:0 0 16px}
.tbox{overflow-x:auto}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:14.5px}
th{text-align:left;font:600 11.5px/1.3 var(--disp);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);padding:0 14px 10px 0;border-bottom:1px solid var(--line)}
td{padding:12px 14px 12px 0;border-bottom:1px solid var(--line);color:var(--ink-2)}
tr:last-child td{border-bottom:0}
td:first-child{color:var(--ink);font-weight:500}
td.num{font-weight:600;font-variant-numeric:tabular-nums}
.up{color:var(--ok)!important;font-weight:600}
.eng{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.eng div{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--card-2)}
.eng b{display:block;font-size:14.5px;margin-bottom:6px}
.eng span{display:block;font-size:13px;color:var(--ink-3)}
.yes{color:var(--ok)!important;font-weight:600}
.no{color:var(--er-ink)!important;font-weight:600}
.item{display:grid;grid-template-columns:34px 1fr auto;gap:4px 14px;padding:16px 0;border-top:1px solid var(--line);align-items:start}
.item:first-of-type{border-top:0}
.item .n{width:32px;height:32px;border-radius:10px;background:var(--brand-tint);display:grid;place-items:center;font:600 13px var(--disp);color:var(--brand-2)}
.item b{font-size:15.5px;font-weight:600}
.item p{margin:5px 0 0;font-size:14px;color:var(--ink-2)}
.item .st{font:600 12px/1.3 var(--disp);color:var(--ink-3);white-space:nowrap;padding:6px 10px;border-radius:999px;background:var(--card-2);border:1px solid var(--line)}
.item .st.ok{color:var(--ok);background:var(--ok-tint);border-color:transparent}
@media (max-width:600px){.item{grid-template-columns:34px 1fr}.item .st{grid-column:2;justify-self:start}}
.draft h3{font-size:21px}
.why{color:var(--ink-2);font-size:14.5px;margin:6px 0 16px}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px}
@media (max-width:760px){.ba{grid-template-columns:1fr}}
.ba div{border:1px solid var(--line);border-radius:14px;padding:14px 16px;font-size:14.5px;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--card-2)}
.ba .after{border-color:transparent;background:linear-gradient(135deg,var(--brand-tint),var(--card-2));box-shadow:inset 0 0 0 1.5px var(--brand-2)}
.ba small{display:block;font:600 11.5px/1 var(--disp);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}
.ba .after small{color:var(--brand-2)}
.checks{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px}
.checks .pill{margin-left:0}
.draft.gone{opacity:.6}
.result{color:var(--ok);font-weight:600;font-size:14.5px;margin:0}
.flash{animation:flash 1.4s ease-out}
@keyframes flash{0%{box-shadow:var(--ring)}100%{box-shadow:var(--sh1)}}
@media (max-width:600px){.tiles{grid-template-columns:1fr 1fr;gap:10px}.tile{padding:14px}.tile b{font-size:28px}.tile small{font-size:10.5px}}
/* no website: the builders and the sample page on one row */
.builders{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.bld{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:12px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh1);color:var(--ink);font-weight:600;font-size:14.5px;text-decoration:none;transition:transform .15s,border-color .15s}
.bld:hover{transform:translateY(-2px);border-color:var(--brand-2)}
.bld svg{width:18px;height:18px;color:var(--brand-2)}
/* the sample page, previewed as it will paste */
.samplepage{border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:var(--card-2);max-height:48vh;overflow:auto;font-size:14px;color:var(--ink-2)}
.samplepage h1{font-size:20px;margin:0 0 8px;color:var(--ink)}
.samplepage h2{font-size:16px;margin:16px 0 6px;color:var(--ink)}
.samplepage h3{font-size:14.5px;margin:10px 0 2px;color:var(--ink)}
.samplepage p{margin:0 0 6px;color:var(--ink-2)}
.samplepage ul{margin:0 0 6px;padding-left:20px}
.modal .samplepage+.row{margin-top:18px}

/* ---- the starter site editor ---- */
.onb.wide{max-width:1240px}
.editor{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:start}
@media (max-width:980px){.editor{grid-template-columns:1fr}.ed-pv{position:static!important;max-height:none!important}}
.ed-form{display:grid;gap:14px}
.ed-card{margin:0;border:1px solid var(--line);border-radius:var(--r3);background:var(--card);padding:18px 20px 20px;box-shadow:var(--sh1);min-width:0}
.ed-card legend{font:600 15px var(--disp);padding:0 6px;margin-left:-6px;letter-spacing:-.01em}
.ed-card.opt legend::after{content:"optional";margin-left:8px;font:600 11px var(--disp);color:var(--ink-3);background:var(--card-3);padding:3px 8px;border-radius:999px;vertical-align:1px}
.ed-card .grid{gap:12px 14px}
.ed-card .fld{font-size:12.5px}
.ed-card .fld input{padding:10px 12px;font-size:14.5px}
.fld .req{font-style:normal;color:var(--er)}
.ed-code{margin:16px 0 0;border-radius:var(--r3);padding:16px 18px;background:linear-gradient(135deg,var(--brand-tint),var(--card) 75%);border:1px solid var(--line);box-shadow:var(--sh1)}
.ed-code p{margin:0 0 6px;font-size:13.5px;color:var(--ink-2)}
.ed-code p:last-child{margin:0}
.ed-code b{display:block;color:var(--ink);font-size:14.5px;margin-bottom:6px}
.ed-code code{display:inline-block;font:500 13px var(--mono);background:var(--card);border:1px solid var(--line-2);border-radius:8px;padding:5px 9px;word-break:break-all}
.ed-pv{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto;border-radius:var(--r3);border:1px solid var(--line);background:var(--card);box-shadow:var(--sh2)}
.ed-pv-label{margin:0;padding:10px 14px;font:600 11.5px/1 var(--disp);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);background:var(--card-2);position:sticky;top:0;z-index:1}
.steps-list{margin:6px 0 10px;padding-left:20px;font-size:14.5px;color:var(--ink-2)}
.steps-list li{margin:4px 0}

/* the preview mimics the downloaded page */
.pv{font:14px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#14192A;background:#F7F8FB}
.pv-nav{display:flex;align-items:center;gap:10px;background:#1F3D66;color:#fff;padding:12px 18px;font-size:14px}
.pv-nav img{width:28px;height:28px;border-radius:6px;background:#fff;object-fit:contain}
.pv-nav img.broken{display:none}
.pv-head{background:#1F3D66;color:#fff;padding:14px 18px 24px}
.pv-head h1{font:700 22px/1.25 system-ui,sans-serif;letter-spacing:-.01em;margin:0;color:#fff}
.pv-head p{margin:8px 0 0;opacity:.85}
.pv-act{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.pv-act span{background:#fff;color:#1F3D66;border-radius:8px;padding:8px 12px;font-weight:600;font-size:13px}
.pv-act span.wa{background:#1FAF5A;color:#fff}
.pv-body{padding:6px 18px 20px}
.pv-body h2{font:700 16px/1.3 system-ui,sans-serif;letter-spacing:0;margin:16px 0 4px;color:#14192A}
.pv-body ul{margin:0;padding-left:18px}
.pv-body p{margin:0}
/* logo upload */
.lp{position:relative;display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px dashed var(--line-2);border-radius:14px;background:var(--card-2);cursor:pointer;transition:border-color .15s,background .15s}
.lp:hover,.lp.over{border-color:var(--brand-2);background:var(--brand-tint)}
.lp.has{border-style:solid}
.lp input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.lp-thumb{flex:none;width:56px;height:56px;border-radius:12px;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239AA6BC' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4m0 0-4 4m4-4 4 4M4 16v3a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:24px}
.lp.has .lp-thumb{background-image:none}
.lp-thumb img{width:100%;height:100%;object-fit:contain}
.lp-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.lp-text b{font-size:14.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lp-text small{font-weight:400;color:var(--ink-3);font-size:12.5px}
.lp-err{color:var(--er-ink)!important}
/* founders list */
.fd-rows{display:grid;gap:12px}
.fd-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;background:var(--card-2)}
.fd-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}
.fd-head b{font-size:13.5px}
.fd-rm{background:none;border:0;color:var(--er-ink);font-size:13px;font-weight:600;padding:4px 6px;border-radius:8px}
.fd-rm:hover{background:var(--er-tint)}
.fd-add{margin-top:12px}
.fd-add .btn{padding:9px 14px;font-size:13.5px}
/* opening hours */
.hr-presets{display:flex;flex-wrap:wrap;gap:6px}
.hr-pre{background:var(--card);border:1px solid var(--line-2);border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--brand-2)}
.hr-pre:hover{background:var(--brand-tint);border-color:var(--brand-2)}
.hr-rows{display:grid;gap:6px;margin-top:4px}
.hr-row{display:grid;grid-template-columns:150px 1fr auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--card-2);font-weight:400}
.hr-row.off{opacity:.7}
.hr-day{display:flex;align-items:center;gap:8px;cursor:pointer}
.hr-day input,.hr-24 input,.ar-d input{width:auto!important;padding:0!important;margin:0;accent-color:var(--brand-2)}
.hr-day b{font-size:13.5px;font-weight:600;color:var(--ink)}
.hr-times{display:flex;align-items:center;gap:8px}
.hr-times input{width:auto!important;padding:7px 10px!important;font-size:14px!important;border-radius:10px!important}
.hr-to{color:var(--ink-3);font-size:13px}
.hr-24{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-2);cursor:pointer}
.hr-closed{color:var(--ink-3);font-size:13px;grid-column:2}
@media (max-width:600px){.hr-row{grid-template-columns:1fr auto}.hr-times{grid-column:1/-1}}
/* areas served */
.ar-chips{display:flex;flex-wrap:wrap;gap:6px}
.ar-chip{display:inline-flex;align-items:center;gap:4px;background:var(--brand-tint);color:var(--brand-2);border-radius:999px;padding:5px 6px 5px 12px;font-size:13px;font-weight:600}
.ar-x{background:none;border:0;color:inherit;font-size:16px;line-height:1;padding:0 6px;border-radius:999px}
.ar-x:hover{background:rgba(0,0,0,.08)}
.ar-empty{font-size:13px;color:var(--ink-3);font-weight:400}
/* a phone: the country code chosen, the number typed */
.ph-row{display:flex;gap:8px;min-width:0}
.ph-row select{flex:0 0 auto;width:auto!important;max-width:60%;min-width:0;text-overflow:ellipsis;padding-right:30px}
.ph-row input[type=tel]{flex:1 1 110px;min-width:0}
.ph-row.bad{outline:2px solid #D24B2E;outline-offset:4px;border-radius:12px}
.ar-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ar-add select{flex:1 1 170px;width:auto!important;min-width:0}
.ar-add .btn{padding:10px 16px}
.ar-note{color:var(--er-ink)!important;font-weight:500}
/* town suggestions under a typed field */
.has-sugg{position:relative}
.sugg{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:30;margin:0;padding:4px;list-style:none;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);max-height:280px;overflow:auto}
.sugg li{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:14px;color:var(--ink)}
.sugg li small{color:var(--ink-3);font-size:12px;white-space:nowrap}
.sugg li.on,.sugg li:hover{background:var(--brand-tint)}
.ar-credit{display:block;margin-top:6px;font-size:11.5px;color:var(--ink-3)}
.ar-credit a{color:inherit}
.ar-soft{display:block;font-size:12.5px;color:var(--ink-3)}
.ar-dhead{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--ink-3);font-weight:500}
.ar-dlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 10px;max-height:190px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--card-2);margin-top:6px}
.ar-d{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:400;color:var(--ink-2);cursor:pointer}
/* sector */
.sc-ideas{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sc-ideas span{flex-basis:100%;font-size:12px;font-weight:500;color:var(--ink-3)}
.sc-idea{background:var(--card);border:1px dashed var(--line-2);border-radius:999px;padding:4px 10px;font-size:12.5px;font-weight:500;color:var(--ink-2)}
.sc-idea:hover{border-style:solid;border-color:var(--brand-2);color:var(--brand-2)}
.fld small{font-weight:400}
.pv-kind{margin:0 0 6px!important;font-size:11px;letter-spacing:.05em;text-transform:uppercase;opacity:.7!important}
/* the whole page width for every step; the first question fills the screen */
.onb{max-width:1240px}
.onb .lede{max-width:760px}
#stage.hero{min-height:calc(100vh - 64px - 150px);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding-bottom:40px}
#stage.hero .say{margin-left:auto;margin-right:auto}
#stage.hero .q{font-size:clamp(40px,6vw,72px);margin-bottom:14px}
#stage.hero .lede{margin:0 auto 34px;font-size:18px}
#stage.hero .urlrow{width:100%;max-width:900px}
#stage.hero .urlrow input{font-size:19px;padding:20px 12px 20px 2px}
#stage.hero .urlrow .btn{padding:0 34px;font-size:16px}
#stage.hero .fine{margin-top:14px}
#stage.hero .back{margin-top:22px}
#stage.hero > p.fine:last-child{margin-top:40px;opacity:.75;font-size:12.5px}
@media (max-width:600px){#stage.hero .urlrow .btn{padding:14px;font-size:15.5px}#stage.hero .urlrow input{font-size:17px;padding:16px 10px 16px 2px}#stage.hero{min-height:0;padding-top:10px}}

/* ---- the first screen: brand panel + start card ---- */
.onb.first{padding-top:28px}
.onb.first .steps{display:none}
.intro{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);min-height:calc(100vh - 64px - 70px);border-radius:28px;overflow:hidden;border:1px solid var(--line);background:var(--card);box-shadow:var(--sh2)}
.intro-side{position:relative;overflow:hidden;padding:44px 44px 36px;color:#EEF3FB;display:flex;flex-direction:column;gap:30px;
  background:radial-gradient(520px 320px at 110% -10%,rgba(208,144,31,.28),transparent 60%),radial-gradient(600px 420px at -20% 110%,rgba(76,130,201,.45),transparent 60%),linear-gradient(160deg,#14243B 0%,#1F3D66 100%)}
.intro-side::after{content:"";position:absolute;right:-120px;bottom:-120px;width:360px;height:360px;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 40px rgba(255,255,255,.03),0 0 0 90px rgba(255,255,255,.02)}
.in-brand{display:flex;align-items:center;gap:10px;font:600 22px/1 var(--serif)}
.intro-side h2{font-size:clamp(28px,3.1vw,40px);line-height:1.12;color:#fff;letter-spacing:-.03em}
.intro-side h2 em{font-style:normal;background:linear-gradient(95deg,#A9C6F0,#EDB04E);-webkit-background-clip:text;background-clip:text;color:transparent}
.in-steps{list-style:none;margin:0;padding:0;display:grid;gap:18px;position:relative;z-index:1}
.in-steps li{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start}
.in-n{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-weight:600;font-size:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16)}
.in-steps b{display:block;font-size:15.5px;color:#fff}
.in-steps span{font-size:13.5px;color:rgba(238,243,251,.72)}
.in-engines{margin:auto 0 0;font-size:13px;color:rgba(238,243,251,.6)}
.in-engines b{color:rgba(238,243,251,.9);font-weight:600}
.intro-main{padding:52px 56px 40px;display:flex;flex-direction:column;justify-content:center}
.intro-main .eyebrow{align-self:flex-start}
.in-title{font-size:clamp(32px,3.6vw,48px);margin:0 0 10px}
.in-sub{color:var(--ink-2);margin:0 0 28px;font-size:16.5px}
.in-label{font-size:13px;font-weight:600;color:var(--ink-2);margin:0 0 8px}
.intro-main .urlrow{box-shadow:var(--sh1)}
.in-or{display:flex;align-items:center;gap:14px;margin:26px 0 18px;color:var(--ink-4);font-size:13px}
.in-or::before,.in-or::after{content:"";flex:1;height:1px;background:var(--line)}
.in-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.in-tiles .mopt{align-items:flex-start;height:100%}
.intro-main > p.fine:last-child{margin-top:26px;font-size:12px;color:var(--ink-4)}
@media (max-width:900px){.intro{grid-template-columns:1fr;min-height:0}.intro-side{padding:28px 22px;gap:18px}.in-steps{gap:12px}.in-engines{display:none}.intro-main{padding:28px 20px}.in-tiles{grid-template-columns:1fr}}

/* =====================================================================
   v4: a modern skin over everything above. System sans (Segoe UI Variable,
   SF Pro), white and bright, a faint dotted grid, pill controls, soft
   shadows. Oftheard navy stays as the brand ink; blue and amber accent.
   ===================================================================== */
:root{
  --bg:#FAFBFD; --card:#FFFFFF; --card-2:#F6F8FC; --card-3:#EDF1F7;
  --ink:#0B1220; --ink-2:#3C4658; --ink-3:#6B7588; --ink-4:#A0A8B8;
  --line:#E8EBF1; --line-2:#D6DBE5;
  --brand:#1F3D66; --brand-2:#2F63E0; --brand-3:#6E97F5; --brand-ink:#1F3D66; --brand-tint:#EEF3FF;
  --grad:linear-gradient(135deg,#2F63E0 0%,#1F3D66 100%);
  --grad-text:linear-gradient(95deg,#2F63E0 0%,#6E4CE0 55%,#E9962A 100%);
  --glow:0 8px 24px -8px rgba(47,99,224,.55);
  --sh1:0 1px 2px rgba(11,18,32,.04),0 4px 14px -6px rgba(11,18,32,.08);
  --sh2:0 24px 60px -24px rgba(11,18,32,.22),0 6px 16px -8px rgba(11,18,32,.08);
  --ring:0 0 0 4px rgba(47,99,224,.16);
  --disp:"Inter","Segoe UI Variable Text","Segoe UI Variable","SF Pro Text",-apple-system,system-ui,"Segoe UI",Roboto,sans-serif;
  --head:"Inter","Segoe UI Variable Display","Segoe UI Variable","SF Pro Display",-apple-system,system-ui,"Segoe UI",Roboto,sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){
  --bg:#070B14; --card:#0E1422; --card-2:#0B111D; --card-3:#18203A;
  --ink:#EEF2FA; --ink-2:#B9C2D4; --ink-3:#8390A8; --ink-4:#56617A;
  --line:#1A2238; --line-2:#26314C;
  --brand:#6E97F5; --brand-2:#7AA2FF; --brand-3:#A9C3FF; --brand-ink:#A9C3FF; --brand-tint:#131D38;
  --grad:linear-gradient(135deg,#3E72F0 0%,#2A4C9A 100%);
  --grad-text:linear-gradient(95deg,#8FB0FF 0%,#B79BFF 55%,#F2B35A 100%);
  --glow:0 8px 26px -8px rgba(62,114,240,.6);
}}:root[data-theme=dark]{
  --bg:#070B14; --card:#0E1422; --card-2:#0B111D; --card-3:#18203A;
  --ink:#EEF2FA; --ink-2:#B9C2D4; --ink-3:#8390A8; --ink-4:#56617A;
  --line:#1A2238; --line-2:#26314C;
  --brand:#6E97F5; --brand-2:#7AA2FF; --brand-3:#A9C3FF; --brand-ink:#A9C3FF; --brand-tint:#131D38;
  --grad:linear-gradient(135deg,#3E72F0 0%,#2A4C9A 100%);
  --grad-text:linear-gradient(95deg,#8FB0FF 0%,#B79BFF 55%,#F2B35A 100%);
  --glow:0 8px 26px -8px rgba(62,114,240,.6);
}
body{font-family:var(--disp);font-size:15.5px;letter-spacing:-.005em;background:var(--bg);
  background-image:radial-gradient(rgba(11,18,32,.07) 1px,transparent 1px);background-size:22px 22px;background-attachment:fixed}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) body{background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px)}}:where(:root[data-theme=dark]) body{background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px)}
body::before{background:radial-gradient(800px 480px at 12% -6%,rgba(47,99,224,.14),transparent 62%),radial-gradient(700px 420px at 96% 4%,rgba(233,150,42,.12),transparent 60%),radial-gradient(700px 500px at 60% 110%,rgba(110,76,224,.08),transparent 60%)}
h1,h2,h3,.q,.in-title{font-family:var(--head);font-weight:700;letter-spacing:-.035em}

/* header: light glass */
.band{background:rgba(255,255,255,.72);color:var(--ink);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%)}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .band{background:rgba(7,11,20,.7)}}:where(:root[data-theme=dark]) .band{background:rgba(7,11,20,.7)}
.logo{color:var(--ink);font:700 19px/1 var(--head);letter-spacing:-.02em}
.logo .omark{width:30px;height:30px;border-radius:9px;background:var(--grad);-webkit-mask:none;mask:none;position:relative}
.logo .omark::after{content:"";position:absolute;inset:6px;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat}
.flag{color:var(--wr-ink);background:var(--wr-tint);border-color:transparent}
.btn-band{background:var(--card);color:var(--ink);border:1px solid var(--line-2);box-shadow:var(--sh1)}
.btn-band:hover{background:var(--card-2)}
.dash-nav{background:var(--card-2);border-color:var(--line)}
.dash-nav button{color:var(--ink-3)}
.dash-nav button:hover{color:var(--ink)}
.dash-nav button[aria-current=page]{background:var(--card);color:var(--ink);box-shadow:var(--sh1)}

/* controls */
.btn{border-radius:999px;padding:12px 22px;font-weight:600}
.btn.lg{border-radius:999px;padding:15px 28px}
.btn.ghost{border-radius:999px}
.urlrow{border-radius:999px;padding:6px}
.urlrow .btn{border-radius:999px}
.fld input,.fld select,.asst-say input{border-radius:12px}
.eyebrow{background:var(--brand-tint);color:var(--brand-2);font-weight:600}
.eyebrow::before{background:var(--brand-2)}
.steps li.now .n{box-shadow:0 0 0 5px var(--brand-tint)}
.say{border-radius:999px;padding:8px 18px 8px 8px}
.av{border-radius:999px}

/* ---- the first screen ---- */
.onb.first{max-width:1280px;padding-top:0}
.hr2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;min-height:calc(100vh - 64px);padding:40px 0 60px}
.hr2-badge{display:inline-flex;align-items:center;gap:8px;margin:0 0 22px;padding:7px 14px 7px 10px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh1);font-size:13px;font-weight:600;color:var(--ink-2)}
.hr2-badge i{width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.18)}
.hr2-title{font-size:clamp(40px,5.4vw,72px);line-height:1.02;margin:0 0 20px}
.hr2-title em{font-style:normal;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.hr2-sub{font-size:18px;color:var(--ink-2);max-width:540px;margin:0 0 32px;line-height:1.55}
.hr2-left .urlrow{max-width:600px;box-shadow:var(--sh2)}
.hr2-left .urlrow input{font:500 17px var(--disp)}
.hr2-left .urlrow span{font:500 15px var(--disp)}
.hr2-other{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:18px 0 0;font-size:14px;color:var(--ink-4)}
.hr2-other .link{font-weight:500;border-bottom:1px solid transparent;color:var(--ink-2)}
.hr2-other .link:hover{color:var(--brand-2);border-bottom-color:currentColor}
.hr2-engines{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:40px 0 0;font-size:13px;color:var(--ink-3)}
.hr2-engines b{font-weight:600;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px 11px}
.hr2-left > p.fine:last-child{margin-top:26px;font-size:12px;color:var(--ink-4)}

/* the product visual */
.hv{position:relative;height:520px}
.hv::before{content:"";position:absolute;inset:6% 4%;border-radius:36px;background:radial-gradient(closest-side,rgba(47,99,224,.20),transparent),radial-gradient(60% 50% at 80% 80%,rgba(233,150,42,.18),transparent);filter:blur(10px)}
.hv-card{position:absolute;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh2);padding:18px 20px;animation:float 7s ease-in-out infinite}
.hv-card small{display:block;font-size:12px;font-weight:600;color:var(--ink-3);letter-spacing:.01em}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.hv-score{top:2%;left:4%;display:flex;gap:16px;align-items:center;width:300px}
.hv-ring{width:64px;height:64px;flex:none}
.hv-ring circle{fill:none;stroke-width:7}
.hv-ring .bg{stroke:var(--card-3)}
.hv-ring .fg{stroke:#E5484D;stroke-linecap:round}
.hv-score b{display:block;font:700 34px/1.1 var(--head);letter-spacing:-.04em}
.hv-score b span{font-size:15px;color:var(--ink-3);font-weight:600;letter-spacing:0}
.hv em{font-style:normal;font-size:12.5px;font-weight:600;padding:3px 9px;border-radius:999px;display:inline-block;margin-top:4px}
.hv em.bad{background:var(--er-tint);color:var(--er-ink)}
.hv em.good{background:var(--ok-tint);color:var(--ok)}
.hv-chat{top:28%;right:0;width:380px;animation-delay:-2.3s}
.hv-q{margin:8px 0 10px 40px;padding:10px 14px;border-radius:14px 14px 4px 14px;background:var(--grad);color:#fff;font-size:14px;font-weight:500}
.hv-a{margin:0 40px 10px 0;padding:10px 14px;border-radius:14px 14px 14px 4px;background:var(--card-2);border:1px solid var(--line);font-size:14px;color:var(--ink-2)}
.hv-a mark{background:rgba(233,150,42,.22);color:var(--ink);border-radius:4px;padding:0 3px;font-weight:600}
.hv-flag{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;color:var(--er-ink)}
.hv-flag i{width:8px;height:8px;border-radius:50%;background:#E5484D}
.hv-rank{bottom:3%;left:10%;width:320px;animation-delay:-4.6s}
.hv-move{display:flex;align-items:baseline;gap:12px;margin:10px 0 2px;font:700 30px/1 var(--head);letter-spacing:-.03em}
.hv-move .from{color:var(--ink-4);text-decoration:line-through;text-decoration-thickness:2px}
.hv-move .arrow{color:var(--ink-4);font-size:22px}
.hv-move .to{color:var(--ok)}
@media (max-width:1000px){.hr2{grid-template-columns:1fr;gap:28px;min-height:0;padding:28px 0 40px}.hv{height:auto;display:grid;gap:12px}.hv::before{display:none}.hv-card{position:static;width:auto!important;animation:none}}
@media (max-width:600px){.hr2-title{font-size:40px}.hr2-sub{font-size:16px}.hr2-left .urlrow{border-radius:18px}.hr2-left .urlrow .btn{border-radius:14px}}
@media (prefers-reduced-motion:reduce){.hv-card{animation:none}}

/* =====================================================================
   v5: Oftheard's own colours, flat. No gradient text, no violet, no glow:
   navy for everything that acts or stands out, amber only as a marker
   under the engine name, white and near-black surfaces.
   ===================================================================== */
:root{
  --brand:#1F3D66; --brand-2:#1F3D66; --brand-3:#3B6BAA; --brand-ink:#1F3D66; --brand-tint:#EAF0F8;
  --amber:#E4A53A;
  --grad:linear-gradient(#1F3D66,#1F3D66);
  --grad-text:linear-gradient(currentColor,currentColor);
  --glow:0 6px 16px -8px rgba(20,36,59,.45);
  --ring:0 0 0 4px rgba(31,61,102,.16);
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){
  --brand:#8FB4E8; --brand-2:#8FB4E8; --brand-3:#B5CDF0; --brand-ink:#B5CDF0; --brand-tint:#16243D;
  --grad:linear-gradient(#3B6BAA,#3B6BAA);
  --glow:0 6px 18px -8px rgba(0,0,0,.7);
  --ring:0 0 0 4px rgba(143,180,232,.22);
}}:root[data-theme=dark]{
  --brand:#8FB4E8; --brand-2:#8FB4E8; --brand-3:#B5CDF0; --brand-ink:#B5CDF0; --brand-tint:#16243D;
  --grad:linear-gradient(#3B6BAA,#3B6BAA);
  --glow:0 6px 18px -8px rgba(0,0,0,.7);
  --ring:0 0 0 4px rgba(143,180,232,.22);
}
body::before{display:none}
/* every gradient-clipped word becomes solid navy */
h1 em,h2 em,.q em,.hr2-title em,.intro-side h2 em{background:none;-webkit-text-fill-color:currentColor;color:var(--brand)}
.big{background:none;-webkit-text-fill-color:currentColor;color:var(--ink)}
.big small{-webkit-text-fill-color:var(--ink-3)}
/* buttons and marks: flat navy */
.btn{background:#1F3D66;color:#fff;box-shadow:var(--glow)}
.btn:hover{background:#17304F;filter:none}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .btn{background:#3B6BAA}:where(:root:not([data-theme=light])) .btn:hover{background:#4A7CC0}}:where(:root[data-theme=dark]) .btn{background:#3B6BAA}:where(:root[data-theme=dark]) .btn:hover{background:#4A7CC0}
.btn.ghost{background:var(--card);color:var(--ink);box-shadow:var(--sh1)}
.logo .omark{background:#1F3D66}
.av{background:#1F3D66;box-shadow:none}
.steps li.done::before,.steps li.now::before{background:var(--brand)}
.steps li.now .n{background:#1F3D66;color:#fff}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .steps li.now .n{background:#3B6BAA}:where(:root:not([data-theme=light])) .logo .omark,:where(:root:not([data-theme=light])) .av{background:#3B6BAA}}:where(:root[data-theme=dark]) .steps li.now .n{background:#3B6BAA}:where(:root[data-theme=dark]) .logo .omark,:where(:root[data-theme=dark]) .av{background:#3B6BAA}
.tile::before{background:var(--brand)}
.bar i.lo{background:#D24B2E}.bar i.mid{background:#D0901F}.bar i.hi{background:#1E8A63}
.tile.good::before{background:#1E8A63}.tile.bad::before{background:#D24B2E}
.m.me,.hv-q{background:#1F3D66}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .m.me,:where(:root:not([data-theme=light])) .hv-q{background:#2C4F80}}:where(:root[data-theme=dark]) .m.me,:where(:root[data-theme=dark]) .hv-q{background:#2C4F80}
.ring .fg{stroke:var(--brand)}
.hv::before{display:none}
.eyebrow::before{background:var(--amber)}
.hr2-badge i{background:#1E8A63;box-shadow:0 0 0 4px rgba(30,138,99,.16)}

/* the cycling engine name: ink text on an amber marker stroke */
.rot{display:inline-block;position:relative;white-space:nowrap}
.rot::after{content:"";position:absolute;left:-.06em;right:-.06em;bottom:.08em;height:.3em;background:var(--amber);opacity:.55;border-radius:3px;z-index:-1;transition:width .3s}
.rot-w{display:inline-block;color:var(--brand);transition:transform .28s ease,opacity .28s ease}
.rot-w.out{transform:translateY(-.35em);opacity:0}
.rot-w.in{animation:rotIn .38s ease}
@keyframes rotIn{from{transform:translateY(.35em);opacity:0}to{transform:none;opacity:1}}
.hr2-title{position:relative;z-index:0}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .rot-w{color:#fff}:where(:root:not([data-theme=light])) .rot::after{opacity:.45}}:where(:root[data-theme=dark]) .rot-w{color:#fff}:where(:root[data-theme=dark]) .rot::after{opacity:.45}
.rot::after{height:.22em;bottom:.1em;opacity:.45}
/* the first screen fits one screen: sizes follow the window's height too */
.onb.first{padding-bottom:0}
.hr2{min-height:calc(100vh - 64px);padding:clamp(12px,3vh,36px) 0;gap:clamp(24px,3vw,48px)}
.hr2-title{font-size:clamp(32px,min(4.4vw,7.2vh),64px);line-height:1.04;margin:0 0 clamp(10px,2vh,18px)}
.hr2-title .nowrap{white-space:nowrap}
.hr2-badge{margin:0 0 clamp(10px,2.2vh,20px);padding:6px 12px 6px 9px;font-size:12.5px}
.hr2-sub{font-size:clamp(15px,2vh,17px);margin:0 0 clamp(14px,3vh,28px)}
.hr2-left .urlrow input{padding:clamp(10px,1.6vh,15px) 12px clamp(10px,1.6vh,15px) 2px;font-size:16px}
.hr2-left .urlrow .btn{padding:0 24px;font-size:15px}
.hr2-other{margin-top:clamp(10px,1.8vh,16px);font-size:13.5px}
.hr2-engines{margin-top:clamp(14px,3vh,30px)}
.hr2-left > p.fine:last-child{margin-top:clamp(10px,2vh,20px)}
.hv{height:min(500px,calc(100vh - 150px))}
.hv-card{padding:clamp(12px,1.8vh,18px) 18px}
.hv-score{width:280px}.hv-chat{width:360px}.hv-rank{width:300px}
@media (max-height:760px){.hv-rank{display:none}.hv-chat{top:34%}}
@media (max-height:600px){.hv{display:none}.hr2{grid-template-columns:1fr}}
@media (max-width:1000px){.hr2{min-height:0}.hv{height:auto}}
.hv{height:min(580px,calc(100vh - 150px))}
.hv-score{top:0;left:0}
.hv-chat{top:22%;right:0}
.hv-rank{bottom:0;left:0}
/* the cards: one fixed drawing, scaled by script; nothing hidden */
.hv-wrap{display:flex;justify-content:center;min-width:0}
.hv{width:560px;height:580px!important;flex:none;transform-origin:top center}
.hv-rank{display:block}
@media (max-height:760px){.hv-rank{display:block}.hv-chat{top:22%}}
@media (max-height:600px){.hv{display:block}.hr2{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
@media (max-width:1000px){.hv-wrap{display:block}.hv{width:auto;height:auto!important;display:grid}}
/* tidy: one stack of cards, a quiet left column */
.hv{width:440px;height:auto!important;display:flex;flex-direction:column;gap:16px}
.hv-card{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important}
.hv-score{margin-right:130px}
.hv-chat{margin-left:36px}
.hv-rank{margin-right:100px}
.hr2-sub{max-width:460px}
.hr2-other{font-size:13.5px;color:var(--ink-3)}
.hr2-other .link{color:var(--ink-3);font-weight:500}
.hr2-try{margin-top:clamp(18px,3vh,30px);font-size:12.5px}
.hr2-try > .link{color:var(--ink-4);font-weight:500;font-size:12.5px}
.hr2-try .fine{margin-top:8px}
.hr2{gap:clamp(32px,5vw,80px)}
@media (max-width:1000px){.hv{width:auto}.hv-score,.hv-chat,.hv-rank{margin:0}}
/* the changing engine name: same colour as the headline, no marker */
.rot::after{display:none}
.rot-w{color:inherit}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .rot-w{color:inherit}}:where(:root[data-theme=dark]) .rot-w{color:inherit}
/* the engine name in Oftheard amber, as a gradient (the main site's yellow) */
.rot-w{background:linear-gradient(95deg,#B8760F 0%,#C98A1B 45%,#E3AC4C 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-bottom:.06em}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .rot-w{background:linear-gradient(95deg,#E3AC4C 0%,#EDBE6C 50%,#F2C26F 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}}:where(:root[data-theme=dark]) .rot-w{background:linear-gradient(95deg,#E3AC4C 0%,#EDBE6C 50%,#F2C26F 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
/* a clearly visible amber gradient on the engine name */
.rot-w{background:linear-gradient(90deg,#9A5F08 0%,#C98A1B 40%,#F0B84A 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .rot-w{background:linear-gradient(90deg,#C98A1B 0%,#E3AC4C 45%,#FFE08A 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}:where(:root[data-theme=dark]) .rot-w{background:linear-gradient(90deg,#C98A1B 0%,#E3AC4C 45%,#FFE08A 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
/* engine name: a richer amber-to-gold run with a slow shimmer; the run is
   the same length for every name, and no letter fades out */
.rot-w{background-image:linear-gradient(100deg,#8A5207 0%,#B8760F 22%,#D99A2B 45%,#E9B24A 55%,#B8760F 78%,#8A5207 100%);background-size:220% 100%;background-position:0% 50%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gild 6s ease-in-out infinite}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .rot-w{background-image:linear-gradient(100deg,#C98A1B 0%,#E3AC4C 22%,#F6CF7A 45%,#FFE7A8 55%,#E3AC4C 78%,#C98A1B 100%)}}:where(:root[data-theme=dark]) .rot-w{background-image:linear-gradient(100deg,#C98A1B 0%,#E3AC4C 22%,#F6CF7A 45%,#FFE7A8 55%,#E3AC4C 78%,#C98A1B 100%)}
@keyframes gild{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.rot-w.in{animation:rotIn .38s ease,gild 6s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.rot-w{animation:none;background-position:30% 50%}}
/* if a browser autofills anyway, the box keeps its own colours */
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--card) inset!important;box-shadow:0 0 0 1000px var(--card) inset!important;-webkit-text-fill-color:var(--ink)!important;caret-color:var(--ink);transition:background-color 99999s ease 0s}
.urlrow input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--card) inset!important}
.fld input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--card-2) inset!important}

/* the site check while it runs: ring | areas | facts for the form */
.sc2{display:grid;grid-template-columns:230px minmax(0,1.1fr) minmax(0,1fr);background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--sh2);overflow:hidden}
.sc2>div{padding:24px 28px}
.sc2>div+div{border-left:1px solid var(--line)}
.sc2-ring{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--card-2)}
.sc2-ring .ring{width:164px;height:164px;filter:none}
.sc2-page{margin:0;text-align:center;font-size:12.5px;color:var(--ink-3)}
.sc2-page code{display:block;margin-top:5px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 12.5px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:4px 8px}
.sc2-h{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 8px;font:600 11.5px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.sc2-h b{font:600 12.5px var(--disp);letter-spacing:0;text-transform:none;color:var(--brand)}
.sc2-area{display:grid;grid-template-columns:20px 1fr auto;gap:7px 10px;align-items:center;padding:10px 0}
.sc2-area+.sc2-area{border-top:1px solid var(--line)}
.sc2-area .ic{margin:0}
.sc2-area .t{font-size:14.5px;font-weight:600;color:var(--ink-4);transition:color .2s}
.sc2-area.run .t,.sc2-area.done .t{color:var(--ink)}
.sc2-area .n{font:600 12.5px var(--disp);font-variant-numeric:tabular-nums;color:var(--ink-4)}
.sc2-area.run .n{color:var(--ink-3)}
.sc2-area .n.lo{color:var(--er-ink)}.sc2-area .n.mid{color:var(--wr-ink)}.sc2-area .n.hi{color:var(--ok)}
.sc2-bar{grid-column:2/4;height:4px;border-radius:4px;background:var(--card-3);overflow:hidden}
.sc2-bar i{display:block;height:100%;width:0;border-radius:4px;background:var(--brand);transition:width .3s ease,background .3s}
.sc2-bar i.lo{background:#D24B2E}.sc2-bar i.mid{background:#D0901F}.sc2-bar i.hi{background:#1E8A63}
.ic.wait{width:14px;height:14px;margin:3px!important;border-radius:50%;border:2px solid var(--line-2)}
.sc2-now{margin:12px 0 0;padding:10px 12px;border-radius:12px;background:var(--card-2);font-size:13px;color:var(--ink-3);min-height:40px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc2-now b{color:var(--ink-2);font-weight:600}
.sc2-facts{display:grid}
.sc2-fact{display:grid;grid-template-columns:20px 64px minmax(0,1fr);gap:10px;align-items:center;padding:8px 0;animation:rise .3s ease-out both}
.sc2-fact+.sc2-fact{border-top:1px dashed var(--line)}
.sc2-fact .ic{margin:0}
.sc2-fact small{font-size:12.5px;color:var(--ink-3)}
.sc2-fact b{font-size:14px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc2-empty{margin:10px 0 0;font-size:13.5px;color:var(--ink-4)}
@media (max-width:1000px){.sc2{grid-template-columns:1fr}.sc2>div+div{border-left:0;border-top:1px solid var(--line)}}
@media (max-width:700px){.sc2>div{padding:18px 20px}.sc2-ring{flex-direction:row;justify-content:flex-start;gap:18px}.sc2-ring .ring{width:92px;height:92px}.sc2-page{text-align:left}}
@media (prefers-reduced-motion:reduce){.sc2-fact{animation:none}.sc2-bar i{transition:none}}

/* the check fits one screen: a narrower column, a smaller head, tight rows */
.onb.scanning{max-width:1040px;padding-top:18px;padding-bottom:20px}
.onb.scanning .steps{margin-bottom:20px}
.onb.scanning .eyebrow{margin-bottom:10px}
.onb.scanning .q{font-size:clamp(26px,3.2vw,38px);margin:0 0 6px}
.onb.scanning .lede{font-size:15px;margin:0 0 18px}
.onb.scanning .sc2{grid-template-columns:190px minmax(0,1fr) minmax(0,1fr);border-radius:20px}
.onb.scanning .sc2>div{padding:18px 22px}
.onb.scanning .sc2-ring .ring{width:136px;height:136px}
.onb.scanning .sc2-area{padding:7px 0;gap:6px 10px}
.onb.scanning .sc2-area .t{font-size:14px}
.onb.scanning .sc2-now{margin-top:8px;padding:8px 12px;min-height:34px}
.onb.scanning .sc2-fact{padding:5px 0;grid-template-columns:20px 58px minmax(0,1fr)}
.onb.scanning .sc2-fact b{font-size:13.5px}
@media (max-height:700px){.onb.scanning{padding-top:10px}.onb.scanning .steps{margin-bottom:12px}.onb.scanning .eyebrow{display:none}.onb.scanning .lede{margin-bottom:12px}.onb.scanning .sc2-fact{padding:3px 0}.onb.scanning .sc2-area{padding:5px 0}}
@media (max-width:1000px){.onb.scanning .sc2{grid-template-columns:1fr}}
@media (max-width:700px){.onb.scanning .sc2-ring .ring{width:92px;height:92px}}

.onb.scanning .sc2-fact b{white-space:normal;line-height:1.35}


/* step 2's form: one centred column, no preview */
.onb.formpage{max-width:1240px}
.onb.formpage .lede{max-width:760px}
.onb.formpage .q{font-size:clamp(28px,3.6vw,40px);margin:0 0 10px}
.onb.formpage .lede{font-size:15.5px;margin:0 0 18px}
.onb.formpage .say{margin-bottom:16px}
.ed-solo{display:grid;gap:0}
.ed-solo .ed-form{gap:16px}
.ed-solo .ed-card{padding:20px 24px 22px}
.ed-solo > .fine:not(.hide){margin:14px 0 0;padding:10px 14px;border-radius:12px;background:var(--er-tint);color:var(--er-ink);font-weight:500}
.ed-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 0;padding:14px 0;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:5;background:color-mix(in srgb,var(--bg) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ed-foot > span{font-size:13.5px;color:var(--ink-3)}
@media (max-width:600px){.ed-foot{flex-wrap:wrap}.ed-foot .btn{flex:1}}
.ed-foot-end{display:flex;align-items:center;gap:18px}

/* steps 2 and 3: full width, a side rail, cards with numbered heads */
.ed-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:28px;align-items:start}
.ed-rail{position:sticky;top:84px;display:grid;gap:18px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--sh1)}
.rl-id{display:flex;gap:12px;align-items:center}
.rl-id>div{min-width:0}
.rl-logo{width:48px;height:48px;flex:none;border-radius:13px;background:#1F3D66;color:#fff;display:grid;place-items:center;font:700 20px var(--head);overflow:hidden}
.rl-logo img{width:100%;height:100%;object-fit:contain;background:#fff;padding:4px;box-sizing:border-box}
.rl-name{display:block;font-size:15.5px;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-dom{display:block;margin-top:2px;font-size:12.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-prog p{display:flex;justify-content:space-between;gap:8px;margin:0 0 8px;font-size:13px;font-weight:600;color:var(--ink-2)}
.rl-prog p b{font-weight:600;color:var(--brand)}
.rl-bar{display:block;height:6px;border-radius:6px;background:var(--card-3);overflow:hidden}
.rl-bar i{display:block;height:100%;width:0;border-radius:6px;background:var(--brand);transition:width .3s ease}
.rl-prog small{display:block;margin-top:8px;font-size:12.5px;color:var(--ink-3)}
.rl-list{list-style:none;margin:0;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:2px}
.rl-list button{width:100%;display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border:0;border-radius:10px;background:none;font:500 13.5px var(--disp);color:var(--ink-2);text-align:left;cursor:pointer}
.rl-list button:hover{background:var(--card-2);color:var(--ink)}
.rl-list small{font-size:12px;color:var(--ink-4);font-variant-numeric:tabular-nums}
.rl-dot{width:8px;height:8px;border-radius:50%;background:var(--line-2)}
.rl-dot.part{background:#D0901F}
.rl-dot.full{background:#1E8A63}
.rl-fine{margin:0;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;line-height:1.5;color:var(--ink-3)}
.ed-solo .ed-card{padding:20px 24px 24px;border-radius:18px;scroll-margin-top:90px}
.ed-solo .ed-card legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ed-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:12px;align-items:center;margin:0 0 18px;padding:0 0 16px;border-bottom:1px solid var(--line)}
.ed-no{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand);font:700 15px var(--disp)}
.ed-head b{display:block;font:700 16.5px var(--head);letter-spacing:-.015em;color:var(--ink)}
.ed-head small{display:block;margin-top:2px;font-size:13px;color:var(--ink-3)}
.ed-opt{font:600 11px var(--disp);color:var(--ink-3);background:var(--card-3);padding:4px 9px;border-radius:999px}
.ed-count{font:600 12px var(--disp);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}
em.auto{display:inline-block;margin-left:8px;font:600 10.5px/1 var(--disp);color:var(--ok);background:var(--ok-tint);padding:3px 7px;border-radius:999px;vertical-align:1px}
.fld.lnk{position:relative}
.fld.lnk input{padding-left:50px}
.lnk-ic{position:absolute;left:9px;bottom:8px;width:32px;height:28px;border-radius:8px;display:grid;place-items:center;color:#fff;font:700 11.5px/1 var(--disp);letter-spacing:-.02em;pointer-events:none}
@media (max-width:1000px){.ed-layout{grid-template-columns:1fr}.ed-rail{position:static}.rl-list,.rl-fine{display:none}}
@media (max-width:600px){.ed-head{grid-template-columns:34px minmax(0,1fr)}.ed-opt,.ed-count{display:none}.ed-solo .ed-card{padding:16px 16px 20px}}
.ed-rail .rl-list li{display:block;margin:0;padding:0;grid-template-columns:none}
.ed-rail .rl-list li::before,.ed-rail .rl-list li::after{content:none;display:none}
.ed-rail .rl-list button{display:flex;gap:10px;align-items:center;white-space:nowrap}
.ed-rail .rl-list button > span:nth-child(2){flex:1;overflow:hidden;text-overflow:ellipsis}
.ed-rail .rl-dot{flex:none}
/* the ring turns while the site is being fetched */
.ring.spin .fg{transition:none}
.ring.snap .fg{transition:none}
.ring.spin text{fill:var(--ink-3);font-weight:500;letter-spacing:0}
/* the rail never grows past its column: long names wrap to two lines */
.ed-rail{grid-template-columns:minmax(0,1fr);min-width:0}
.ed-rail>*{min-width:0}
.ed-rail .rl-name{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;line-height:1.3}
.ed-rail .rl-id{align-items:flex-start}
.ed-rail .rl-list li,.ed-rail .rl-list button{min-width:0;max-width:100%}
.ed-layout>*{min-width:0}
/* What you offer: one line per row */
.of-rows{display:grid;gap:10px}
.of-row{display:flex;gap:8px;align-items:center}
.of-row .fld{flex:1;min-width:0;margin:0}
/* Payments: a grid of ticks */
.pay-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.pay{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card-2);font-size:14px;font-weight:500;color:var(--ink-2);cursor:pointer}
.pay:has(input:checked){border-color:var(--brand);color:var(--ink);background:var(--brand-tint)}
.pay input{flex:none;width:16px;height:16px;margin:0;accent-color:var(--brand)}
/* a field at fault, and the live count under the one line */
.ed-form .bad,.ed-form .bad:focus{border-color:#D24B2E!important;box-shadow:0 0 0 3px rgba(210,75,46,.18)!important}
.lp.bad{border-color:#D24B2E!important}
.fld-count{align-self:flex-end;font-size:12px;color:var(--ink-4);font-variant-numeric:tabular-nums}
.fld-count.near{color:var(--wr-ink)}
/* sector suggestions: ticked ones, more, and your own */
.sc-idea.on{border-style:solid;border-color:var(--brand);background:var(--brand-tint);color:var(--brand)}
.sc-more{font-size:13px;font-weight:600;align-self:center;margin-left:4px}
.sc-mine{display:flex;gap:8px;margin-top:10px;max-width:520px}
.sc-mine input{flex:1;min-width:0}
.sc-mine .btn{padding:10px 16px}
/* the Business Profile popup: link box, then the other answer */
#modalBox .urlrow{margin:4px 0 14px}
#modalBox .urlrow input,#modalBox .urlrow input::placeholder{font-family:var(--disp)}
#modalBox .urlrow + .fine:not(.hide){margin:-6px 0 12px}
.gbp-row{align-items:center;gap:18px;margin-top:6px}
/* step 5: goals and access */
.ed-hint{margin:0 0 12px;font-size:13.5px;color:var(--ink-3)}
small.ed-hint{display:block;margin:10px 0 0}
.acc-list{display:grid;gap:10px}
.acc{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card-2);cursor:pointer}
.acc input{margin:3px 0 0;width:16px;height:16px;accent-color:var(--brand)}
.acc b{display:block;font-size:14.5px;color:var(--ink)}
.acc small{display:block;margin-top:2px;font-size:13px;color:var(--ink-3)}
.acc.on{border-color:var(--brand);background:var(--brand-tint)}
.pay-list.bad,.sc-ideas.bad,.acc-list.bad,.ar-add.bad{outline:2px solid #D24B2E;outline-offset:6px;border-radius:12px}
.sc-idea:disabled{opacity:.45;cursor:not-allowed}
.riv-add .fld{flex:1 1 220px;min-width:0;margin:0}
.riv-chip small{margin-left:6px;font-size:12px;font-weight:400;opacity:.75}
.riv-nosite{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:var(--ink-2);cursor:pointer}
.riv-nosite input{width:auto!important;margin:0;accent-color:var(--brand-2)}
/* what you sell: the chosen items, wrapping */
.what-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:48px;padding:8px 10px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2)}
.what-chips .ar-empty{font-size:13.5px}
.what-chips.bad{border-color:#D24B2E;box-shadow:0 0 0 3px rgba(210,75,46,.18)}
/* leaving a popup */
.modal{position:relative}
.modal-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink-3);font-size:20px;line-height:1;cursor:pointer}
.modal-x:hover{color:var(--ink);border-color:var(--line-2)}
.modal-back{display:inline-block;margin-top:16px;font-size:13.5px}
/* customers and AI: history answers as segmented yes / no / not sure */
.hist{display:grid;gap:10px}
.hist-row{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}
.hist-row > span{flex:1 1 320px;font-size:14px;color:var(--ink-2)}
.hist.bad,.ed-form textarea.bad{outline:2px solid #D24B2E;outline-offset:6px;border-radius:12px}
.seg{display:inline-flex;border:1px solid var(--line-2);border-radius:999px;overflow:hidden}
.seg-o{display:flex;align-items:center;padding:6px 14px;font-size:13px;font-weight:600;color:var(--ink-3);cursor:pointer}
.seg-o + .seg-o{border-left:1px solid var(--line-2)}
.seg-o input{position:absolute;opacity:0;pointer-events:none}
.seg-o.on{background:var(--brand-tint);color:var(--brand)}
.ed-form textarea{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);color:var(--ink);font:inherit;font-size:14.5px;resize:vertical}
.ap-other{margin-top:12px}
.pay.terms{max-width:max-content}
/* workspace week 1 */
.wk-list{display:grid;gap:8px;margin-top:6px}
.wk-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.wk-row b{display:block;font-size:14.5px}
.wk-row small{display:block;font-size:12.5px;color:var(--ink-3)}
.wk-row.done{background:var(--ok-tint)}
.wk-done{color:var(--ok)!important}
.ed-card .sc-ideas + .ar-add,.ed-card .sc-ideas + small + .ar-add{margin-top:14px}
/* who you sell to: two by two, one column on phones */
.type-list{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:600px){.type-list{grid-template-columns:1fr}}
.type-list .acc b{letter-spacing:.02em}
/* step 2 and 3: how customers find you, practitioners; step 7: consents */
/* four answers as two rows of two: each card wide enough for its words at any zoom */
.visit-list{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
.fld:has(> .visit-list){min-width:0}
.prac-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:420px}
@media (max-width:800px){.visit-list{grid-template-columns:1fr}}
.acc-list.bad{outline:2px solid #D24B2E;outline-offset:6px;border-radius:12px}
.consents{display:grid;gap:8px}
/* The account gate before step 1. Flat, in the brand's navy and amber: no
   glow, no gradient, nothing that moves except the entrance. The left side
   shows a week of the product for the sample business; the right side is
   the form. */
.onb.gate-on{max-width:1240px;min-height:calc(100vh - 66px);padding:24px 24px 24px;display:flex;align-items:center;position:relative;box-sizing:border-box}
.gate-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center;width:100%}
.gate-left{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}
.gate-eyebrow{margin:0 0 14px;font:600 12px/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.gate-h{margin:0 0 12px;font:600 clamp(26px,2.6vw,34px)/1.2 var(--disp);letter-spacing:-.015em;color:var(--ink);max-width:560px}
.gate-sub{margin:0 0 24px;font-size:15.5px;line-height:1.55;color:var(--ink-2);max-width:560px}
.gate-week{border:1px solid var(--line);border-radius:12px;background:var(--card);max-width:620px;overflow:hidden}
.gate-week-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--card-2)}
.gate-week-head b{font:600 14px var(--disp);color:var(--ink)}
.gate-week-head span{font-size:12.5px;color:var(--ink-3);white-space:nowrap}
.gate-tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.gate-tbl td{padding:9px 12px;border-top:1px solid var(--line);color:var(--ink-2);vertical-align:top}
.gate-tbl tr:first-child td{border-top:0}
.gate-tbl td:first-child{padding-left:16px}
.gate-tbl td.k{width:92px;font:600 12px var(--disp);color:var(--ink-3);white-space:nowrap;padding-top:11px}
.gate-tbl td.n{width:150px;text-align:right;white-space:nowrap;font-family:var(--mono);font-size:12.5px;padding-right:16px}
.gate-tbl td.n s{color:var(--ink-4);text-decoration:line-through}
.gate-tbl td.n b{font-weight:600;color:var(--wr-ink);background:var(--wr-tint);padding:2px 7px;border-radius:6px}
.gate-tbl td.n.txt{font-family:inherit;font-size:13px;color:var(--ink-3);white-space:normal}
.gate-card{background:var(--card);border:1px solid var(--line-2);border-radius:14px;padding:24px 24px 20px;max-width:460px;width:100%;justify-self:end;box-shadow:var(--sh1);animation:rise .5s cubic-bezier(.2,.7,.2,1) .08s both}
.gate{display:grid;gap:16px}
.gate-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.gate-tab{border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;padding:10px 12px;font:600 14px var(--disp);color:var(--ink-3);cursor:pointer;transition:color .15s,border-color .15s}
.gate-tab.on{color:var(--ink);border-bottom-color:var(--brand)}
.gate-pane{display:grid;gap:12px}
.gate-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gate-2 .fld{grid-column:auto;min-width:0}
.gate-kind{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gate-k{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);font:600 14px var(--disp);color:var(--ink-2);cursor:pointer;transition:border-color .15s,background .15s}
.gate-k input{width:auto!important;margin:0;accent-color:var(--brand)}
.gate-k.on{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-ink)}
.gate-pane .fld input{padding:11px 13px;font-size:15px}
.gate-pane .fld input.bad{border-color:#D24B2E;box-shadow:0 0 0 3px rgba(210,75,46,.18)}
.gate-pw{position:relative}
.gate-pw input{padding-right:64px!important}
.gate-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:none;font:600 12.5px var(--disp);color:var(--brand-2);padding:6px 8px;border-radius:8px;cursor:pointer}
.gate-eye:hover{background:var(--brand-tint)}
.gate-err{margin:-4px 0 0;padding:10px 12px;border-radius:10px;background:rgba(210,75,46,.1);color:#D24B2E;font-size:13.5px;font-weight:500}
.gate-err.hide{display:none}
.gate-go{width:100%;margin-top:2px;background:#1F3D66;color:#fff;box-shadow:none;border-radius:10px}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .gate-go{background:#3B6BAA}}:where(:root[data-theme=dark]) .gate-go{background:#3B6BAA}
.gate-go:hover{filter:brightness(1.08);transform:none;box-shadow:none}
.gate-foot{margin:0;text-align:center;font-size:13.5px;color:var(--ink-3)}
.gate-foot .link{margin-left:4px}
.gate-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 14px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink);font:600 14.5px var(--disp);cursor:pointer;transition:border-color .15s,background .15s}
.gate-google:hover{border-color:var(--brand-2);background:var(--card-2)}
.gate-google:disabled{opacity:.6}
.gate-google svg{width:18px;height:18px;flex:none}
.gate-or{display:flex;align-items:center;gap:12px;color:var(--ink-4);font-size:12.5px}
.gate-or::before,.gate-or::after{content:"";flex:1;height:1px;background:var(--line)}
.gate-row{display:flex;justify-content:flex-end;margin-top:-4px}
.gate-forgot{font-size:13px;border-bottom-width:1px}
.gate-note{margin:0;font-size:14px;color:var(--ink-2)}
.gate-sent{margin:0;padding:10px 12px;border-radius:10px;background:var(--ok-tint);color:var(--ok);font-size:13.5px;font-weight:500}
.signed{margin-top:10px}
/* the week plays once: rows arrive in turn, the old number is struck, the new one lands */
.gate-tbl tr{animation:rowIn .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.45s + var(--r,0) * .22s)}
@keyframes rowIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.gate-tbl td.n s{animation:strike .35s ease both;animation-delay:calc(1s + var(--r,0) * .22s);text-decoration-color:transparent}
@keyframes strike{from{text-decoration-color:transparent;color:var(--ink-2)}to{text-decoration-color:var(--ink-4);color:var(--ink-4)}}
.gate-tbl td.n b{display:inline-block;animation:land .42s cubic-bezier(.2,.9,.3,1.2) both;animation-delay:calc(1.25s + var(--r,0) * .22s)}
@keyframes land{from{opacity:0;transform:translateY(6px) scale(.85)}60%{transform:translateY(-1px) scale(1.04)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.gate-left,.gate-card,.gate-tbl tr,.gate-tbl td.n s,.gate-tbl td.n b{animation:none}.gate-tbl td.n s{text-decoration-color:var(--ink-4)}}
@media (max-width:900px){.gate-layout{grid-template-columns:1fr;gap:28px}.gate-card{justify-self:stretch;max-width:none}.gate-week{max-width:none}}
@media (max-width:700px){.gate-week{display:none}.gate-sub{margin-bottom:4px}}
@media (max-width:480px){.gate-2{grid-template-columns:1fr}}
/* the fixed rules of a regulated sector, and Google's third-party terms */
.reg-intro{display:block;margin:0 0 6px;font-size:13px;color:var(--ink-2)}
.rules{margin:0 0 14px;padding:0 0 0 18px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.rules li{margin:0 0 4px}
.rules a{color:var(--brand-2)}
.g-terms{margin-bottom:12px}
.ai-lang{margin-top:12px;max-width:360px}
.ai-lang small{display:block;margin-top:4px;font-size:12.5px;color:var(--ink-3)}
.opt-in{grid-column:1/-1;margin:0}
.consent-gist input{width:100%;margin-top:8px;font-family:var(--mono,monospace);font-size:13px}
@media (max-width:800px){.who-list{grid-template-columns:1fr}}
.consents .pay.terms{max-width:none;align-items:flex-start}
.consents .pay input{margin-top:2px}
.ap-within{margin-top:12px;max-width:280px}

/* The brand mark on the band, as logo.svg asks: navy on a light band, cream on a dark one, no tile; the wordmark in the house serif. */
.logo{color:#1B2A4A;font:600 21px/1 var(--serif);letter-spacing:-.01em}
.logo .omark{width:26px;height:26px;border-radius:0;background:#1B2A4A;box-shadow:none;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='7' cy='12' r='3.2' fill='%23000' stroke='none'/%3E%3Cpath d='M12.6 7.6a6.2 6.2 0 0 1 0 8.8'/%3E%3Cpath d='M16.4 4.2a11 11 0 0 1 0 15.6'/%3E%3C/svg%3E") center/contain no-repeat}
.logo .omark::after{content:none}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .logo{color:#F4F1EA}:where(:root:not([data-theme=light])) .logo .omark{background:#F4F1EA}}:where(:root[data-theme=dark]) .logo{color:#F4F1EA}:where(:root[data-theme=dark]) .logo .omark{background:#F4F1EA}

/* a short window (or a big zoom): tighter, so the gate fits without scrolling where it can */
@media (max-height:860px){.onb.gate-on{padding:16px 24px}.gate-h{font-size:clamp(22px,2.2vw,28px);margin-bottom:8px}.gate-sub{font-size:14px;margin-bottom:14px}.gate-tbl{font-size:12.5px}.gate-tbl td{padding:7px 10px}.gate-card{padding:14px 20px 12px}.gate{gap:8px}.gate-pane{gap:7px}.gate-foot{font-size:13px}.gate-pane .fld input,.gate-google{padding:9px 12px;font-size:14px}.gate-tab{padding:8px 10px}.gate-go{padding:11px 20px}.gate-or{font-size:11px}}
@media (max-height:700px){.gate-eyebrow{display:none}.gate-sub{display:none}.gate-tbl tr:nth-child(n+5){display:none}}

/* the autosave word in the band */
.save-state{font-size:12.5px;color:rgba(245,247,252,.55);margin-right:4px;transition:opacity .3s}
.save-state:empty{display:none}
@media (prefers-color-scheme:light){:where(:root:not([data-theme=dark])) .save-state{color:var(--ink-3)}}:where(:root[data-theme=light]) .save-state{color:var(--ink-3)}
/* the dashboard shell: a left nav, a 12-column page */
.home{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;align-items:start}
.hnav{position:sticky;top:84px;display:grid;gap:2px}
.hnav button{text-align:left;background:none;border:0;border-radius:10px;padding:9px 12px;font:500 14px var(--disp);color:var(--ink-2);cursor:pointer}
.hnav button:hover{background:var(--card-2);color:var(--ink)}
.hnav button[aria-current=page]{background:var(--brand-tint);color:var(--brand-ink);font-weight:600}
.hbody{min-width:0}
.hgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin:0 0 16px;align-items:stretch}
.hcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:20px 22px;box-shadow:var(--sh1);min-width:0;grid-column:span 12}
.hcard.c4{grid-column:span 4}.hcard.c6{grid-column:span 6}.hcard.c8{grid-column:span 8}.hcard.c12{grid-column:span 12}
.hcard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 12px}
.hcard-head h3{margin:0;font:600 16px var(--disp);letter-spacing:-.01em}
.hcard-head .sub{margin:3px 0 0;font-size:13px;color:var(--ink-3)}
.hcard-head .link{white-space:nowrap;font-size:13px}
.hcard .foot{margin:10px 0 0;font-size:12.5px;color:var(--ink-3)}
.hcard .chips{display:flex;flex-wrap:wrap;gap:6px}
.hcard .chips .pill{margin:0}
.hero-row{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center}
.hero-ring{display:grid;justify-items:center;gap:10px}
.ring .bg{fill:none;stroke:var(--line-2);stroke-width:6}
.ring .fg{fill:none;stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .6s}
.ring .fg.good{stroke:var(--ok)}.ring .fg.mid{stroke:var(--wr)}.ring .fg.bad{stroke:#D24B2E}
.ring-n{font:700 17px var(--disp);fill:var(--ink)}
.steps-list2{display:grid;gap:6px;margin:12px 0 0}
.step2{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font-size:13.5px}
.step2 .who.soon{background:var(--wr-tint);color:var(--wr-ink)}
.hcard.hero{display:flex;flex-direction:column}
.hcard.hero .hero-row{flex:1;align-content:center}
.step2 i{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-2);display:grid;place-items:center;font-style:normal;font-size:12px;color:#fff}
.step2.done i{background:var(--ok);border-color:var(--ok)}
.step2.done b{text-decoration:line-through;color:var(--ink-3)}
.step2 b{display:block;font-weight:600}
.step2 small{display:block;color:var(--ink-3);font-size:12px}
.step2 small:empty{display:none}
.step2 .who{font:600 11px var(--disp);padding:3px 8px;border-radius:999px;background:var(--card-3);color:var(--ink-2);white-space:nowrap}
.step2.soon{opacity:.6}
.bar{height:6px;border-radius:999px;background:var(--card-3);overflow:hidden}
.bar i{display:block;height:100%;background:var(--ok);border-radius:999px;transition:width .4s}
.run-row{margin-top:14px;display:grid;gap:8px}
.run-row.two{grid-template-columns:1fr 1fr}
.run-row.two .sub{grid-column:1/-1}
@media (max-width:700px){.run-row.two{grid-template-columns:1fr}}
.mini.areas{margin:12px 0 0}
/* the business card beside the score */
.hcard .facts.one{grid-template-columns:1fr;gap:6px}
.hcard .facts.one .fact{padding:8px 12px;border-radius:10px;animation:none;box-shadow:none;background:var(--card-2)}
.hcard .facts.one .fact b{font-size:14px;overflow-wrap:anywhere}
.hcard .facts.one .fact small{font-size:10.5px}
.hcard .chips{margin-top:10px}
.mini.cols{grid-template-columns:1fr 1fr;column-gap:24px}
.mini.cols li:nth-child(2){border-top:0}
@media (max-width:700px){.mini.cols{grid-template-columns:1fr}.mini.cols li:nth-child(2){border-top:1px solid var(--line)}}
.hero-row.top{align-items:start}
.hero-row.top .hero-ring{padding-top:6px}
.hcard.hero .hero-row.top{flex:0 0 auto}
.sub.note.clock{margin:12px 0 0;color:var(--ink-3);font-size:13px}
.sub.note.clock b{color:var(--ink);font-variant-numeric:tabular-nums}
.foot.bad{color:#D24B2E}
.step2{padding:7px 10px;font-size:13px}
.step2 b{line-height:1.3}
.run-row .sub.bad{color:#D24B2E}
.run-row .sub.note{color:var(--ink-3);font-size:13px;margin:0}
/* a scan's progress: the bar fills a step a request, the line names the step */
.prog{display:grid;gap:5px;min-width:150px}
.prog-bar{height:6px;border-radius:999px;background:var(--card-3);overflow:hidden}
.prog-bar i{display:block;height:100%;width:0;background:var(--wr);border-radius:999px;transition:width .35s ease}
.prog-txt{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prog-txt b{color:var(--ink);font-variant-numeric:tabular-nums}
.prog-why{font-size:12px;line-height:1.45;color:var(--wr-ink);white-space:normal;max-width:360px}
.ctable td.when .prog{min-width:220px}
.ctable td.when{white-space:normal}
.hero .prog{margin:14px 0 0}
/* the Oftheard scan: the strip of scores, the blockers, the list in order */
.vstat{min-width:0;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--card-2)}
.vstat b{display:block;font:700 20px/1.1 var(--disp);letter-spacing:-.02em}
.vstat.good b{color:var(--ok)}
.vstat small{display:block;font-size:11px;line-height:1.25;color:var(--ink-3);margin-top:3px}
.vblk{border:1px solid #D24B2E;border-radius:10px;padding:10px 12px;margin:0 0 12px;background:var(--er-tint,#3a1512)}
.vblk .vblklab{margin:0 0 4px;font:600 11.5px var(--disp);text-transform:uppercase;letter-spacing:.04em;color:var(--er-ink,#F08A75)}
.vblk p{margin:4px 0 0;font-size:13.5px}
.plist{display:grid}
.pagehead h2{margin:8px 0 2px;font:600 20px var(--disp);letter-spacing:-.01em}
.pagehead h2{margin:8px 0 2px;font:600 20px var(--disp);letter-spacing:-.01em}
.btn.amber{background:var(--wr);color:#1B2A4A;box-shadow:none}
.btn.amber:hover{filter:brightness(1.05)}
.mini{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.mini{min-width:0}
.mini li{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:6px 0;border-top:1px solid var(--line);min-width:0;overflow:hidden}
.mini li:first-child{border-top:0}
.mini li b{display:block;flex:1 1 auto;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mini li small{color:var(--ink-3);white-space:nowrap}
.facts.one{grid-template-columns:1fr}
.crow{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:14px;align-items:center}
.crow:first-of-type{border-top:0}
.crow small{color:var(--ink-3)}
/* the competitor editor */
.crows{margin:0 0 14px}
.crow.edit{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.crow.edit span{color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btn.sm{padding:6px 12px;font-size:13px}
/* the assistants: name and a reason on each row */
.eng-list .pay{align-items:flex-start}
.eng-list .eng{display:flex;flex-direction:column;gap:1px;min-width:0}
.eng-list .eng b{font-weight:600}
.eng-list .eng small{color:var(--ink-3);font-size:12px}
.eng-list .pay.extra .eng small{color:var(--wr-ink)}
.comp-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 0 0;border-top:1px solid var(--line);margin-top:4px}
.comp-add{display:flex;flex:1 1 420px;gap:8px;align-items:center;min-width:0}
.comp-add input{flex:1 1 160px;min-width:0;padding:11px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);font-size:14.5px;transition:border-color .15s,box-shadow .15s}
.comp-add input:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.comp-add .btn{padding:10px 18px}
.comp-foot > .btn.amber{margin-left:auto}
/* the comparison table */
.ctable th.num,.ctable td.num{text-align:right;white-space:nowrap}
.ctable td.num{font:700 15px var(--disp)}
.ctable td.num.good{color:var(--ok)}.ctable td.num.mid{color:var(--wr-ink)}.ctable td.num.bad{color:#E7735A}
.ctable td.num.na{color:var(--ink-4);font-weight:500;font-size:12.5px;cursor:help}
/* the table fits the card; when it cannot, the scrollbar is the page's own thin dark one, not the browser's grey bar */
.ctable th,.ctable td{padding:9px 8px}
.ctable .acts .btn.sm{padding:5px 10px;font-size:12.5px}
.ctable td.when .prog{min-width:150px;max-width:260px}
.ctable .prog-txt{white-space:normal;overflow:visible;line-height:1.35}
.tbox{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;padding-bottom:4px}
.tbox::-webkit-scrollbar{height:6px}
.tbox::-webkit-scrollbar-track{background:transparent}
.tbox::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px}
/* the readiness table: facts down the side, one column a site */
.rtable th:first-child{text-transform:none;letter-spacing:0;font:500 13px var(--disp);color:var(--ink-2);white-space:nowrap;width:1%}
.rtable thead th{vertical-align:bottom}
.rtable thead th b{display:block;font:600 13px var(--disp);text-transform:none;letter-spacing:0;color:var(--ink)}
.rtable thead th small{display:block;font:400 11px var(--disp);text-transform:none;letter-spacing:0;color:var(--ink-3)}
.rtable thead th.you b{color:var(--brand-ink)}
.rtable td{font-size:13px;max-width:220px;overflow-wrap:anywhere}
.rtable td.good{color:var(--ok)}.rtable td.mid{color:var(--wr-ink)}.rtable td.bad{color:#E7735A}
.rtable td.none{color:var(--ink-4);font-size:12px}
.rtable tbody tr:nth-child(odd) td,.rtable tbody tr:nth-child(odd) th{background:var(--card-2)}
/* the questions table: stars, and the named / not named cells */
.atable th.star,.atable td.star{width:36px;padding-left:4px;padding-right:0}
.btn.star{background:none;border:0;box-shadow:none;padding:2px 6px;font-size:18px;line-height:1;color:var(--ink-4);cursor:pointer}
.btn.star.on{color:var(--wr)}
.atable tr.starred td.qtext{font-weight:600}
.atable td.qtext{min-width:260px;font-size:14px}
.atable td.qtext small.fam{display:block;font-weight:400;font-size:12px;color:var(--ink-4);margin-top:2px}
.atable td.named{font-weight:600;white-space:nowrap;cursor:help}
.atable th.num,.atable td.num{text-align:right;white-space:nowrap}
.atable td.num{font-weight:600}
.atable td.num.good{color:var(--ok)}.atable td.num.mid{color:var(--wr-ink)}.atable td.num.bad{color:#E7735A}
.atable td.num.none{color:var(--ink-4);font-weight:400;font-size:12.5px}
.atable td.num[title]{cursor:help}
.ttable th.num,.ttable td.num{text-align:right;white-space:nowrap}
.ttable td.num{font-weight:600}
.ttable td.num.good{color:var(--ok)}.ttable td.num.mid{color:var(--wr-ink)}.ttable td.num.bad{color:#E7735A}.ttable td.num.none{color:var(--ink-4);font-weight:400}
.ttable td.muted{color:var(--ink-3);font-size:13px}
.ttable td.acts-td{text-align:right;white-space:nowrap}
.atable td.named.good{color:var(--ok)}.atable td.named.bad{color:#E7735A}
.others{margin-top:12px}
.others .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.others .chip{font-size:12.5px;padding:3px 10px;border-radius:999px;border:1px solid var(--line);background:var(--card-2)}
/* head to head: one row a competitor */
.h2h{display:grid;gap:10px}
.h2h-row{display:grid;grid-template-columns:180px 220px minmax(0,1fr);gap:16px;align-items:start;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}
.h2h-who b{display:block;font:600 15px var(--disp)}
.h2h-who small{color:var(--ink-3);font-size:12px}
.h2h-tally{display:grid;gap:4px;font-size:13px;color:var(--ink-3)}
.h2h-tally b{font:700 15px var(--disp);color:var(--ink);margin-right:4px}
.h2h-tally .ok b{color:var(--ok)}.h2h-tally .er b{color:#E7735A}
.h2h-body{display:grid;gap:10px;min-width:0}
.h2h-k{display:block;font:600 11px var(--disp);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin:0 0 5px}
.h2h-chips{display:flex;flex-wrap:wrap;gap:6px}
.h2h-chips .chip{font-size:12.5px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--card)}
.h2h-chips .chip b{font-weight:600;margin-right:2px}
.h2h-chips .chip.lost{border-color:rgba(231,115,90,.45);color:var(--ink)}
.h2h-chips .chip.won{color:var(--ink-2)}
@media (max-width:860px){.h2h-row{grid-template-columns:1fr}.h2h-tally{grid-template-columns:repeat(3,auto);justify-content:start;gap:14px}}
/* what they write about: three piles, then the pages folded per competitor */
.gapgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.gap-block{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--card-2);min-width:0}
.gap-block h4{margin:0 0 2px;font:600 14.5px var(--disp)}
.gap-block.lost h4{color:var(--wr-ink)}.gap-block.won h4{color:var(--ok)}
.gap-block > .sub{margin:0 0 10px;font-size:12.5px;color:var(--ink-3)}
.gap-block .mini li{display:grid;gap:4px;padding:8px 0}
.gap-block .mini li b{white-space:normal;font-weight:600;line-height:1.35}
.gap-block .mini-r{justify-content:space-between;white-space:normal;align-items:flex-start}
.gap-block .chips{display:flex;flex-wrap:wrap;gap:4px;margin:0}
.gap-block .chip{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.folds{display:grid;gap:6px;margin-top:14px}
.fold{border:1px solid var(--line);border-radius:10px;background:var(--card-2);padding:0 14px}
.fold summary{cursor:pointer;padding:10px 0;font-size:13.5px;color:var(--ink-2);list-style:none;display:flex;gap:6px;align-items:center}
.fold summary::before{content:'▸';color:var(--ink-3);font-size:12px}
.fold[open] summary::before{content:'▾'}
.fold summary::-webkit-details-marker{display:none}
.fold summary b{color:var(--ink)}
.fold .mini{padding:0 0 10px}
.fold .mini li b{white-space:normal;font-weight:500}
/* what each competitor writes about: one column a site */
.topic-stats{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0 0 8px;font-size:12.5px;color:var(--ink-3)}
.topic-stats b{color:var(--ink);font-weight:700}
.topic-stats .wr b{color:var(--wr-ink)}
.topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.topic-col .mini li{display:grid;gap:3px}
.topic-col .mini li b{white-space:normal;font-weight:600}
.topic-col .mini li.gap b{color:var(--wr-ink)}
.topic-col .mini-r{justify-content:space-between}
/* the locked preview of the paid table */
.hcard.locked{position:relative}
.hcard.locked .ctable{opacity:.55}
.locked-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 14px;border:1px dashed var(--line-2);border-radius:12px}
.locked-foot b{display:block;font:600 14px var(--disp)}
.locked-foot small{color:var(--ink-3);font-size:12.5px;max-width:640px;display:block}
.locked-foot .btn{text-decoration:none}
.ctable td.who b{display:block;font-weight:600}
.ctable td.who small{color:var(--ink-3);font-size:12px}
.ctable td.when{color:var(--ink-3);font-size:12.5px;white-space:nowrap}
.ctable tr.you td{background:var(--brand-tint)}
.ctable tr.you td:first-child{border-radius:10px 0 0 10px}.ctable tr.you td:last-child{border-radius:0 10px 10px 0}
.ctable .acts{display:flex;gap:6px;justify-content:flex-end}
.mini-r{display:flex;align-items:center;gap:8px;white-space:nowrap}
.score-pill{font:700 12px var(--disp);font-style:normal;padding:2px 8px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.score-pill.good{background:var(--ok-tint);color:var(--ok)}.score-pill.mid{background:var(--wr-tint);color:var(--wr-ink)}.score-pill.bad{background:var(--er-tint,#3a1512);color:var(--er-ink,#F08A75)}
.score-pill.none{font-weight:500;color:var(--ink-3)}
.save-word{font-size:12.5px;color:var(--ink-3);white-space:nowrap}
.hcard .fine:not(.hide){margin:10px 0 0;color:var(--er-ink,#F08A75);font-size:13px}
/* the goals, as a grid of facts */
.hcard .facts.goal{grid-template-columns:1fr 1fr;gap:8px}
.hcard .facts.goal .fact{padding:10px 12px;border-radius:10px;animation:none;box-shadow:none;background:var(--card-2)}
.hcard .facts.goal .fact b{font-size:14px;overflow-wrap:anywhere}
.hcard .facts.goal .fact small{font-size:10.5px}
.hcard .facts.goal .fact:last-child:nth-child(odd){grid-column:1/-1}
@media (max-width:600px){.hcard .facts.goal{grid-template-columns:1fr}}
.qtable{width:100%;border-collapse:collapse;font-size:14px}
.qtable th,.qtable td{padding:9px 10px;text-align:left;border-top:1px solid var(--line)}
.qtable th{font:600 12px var(--disp);color:var(--ink-3);text-transform:uppercase;letter-spacing:.03em;border-top:0}
.qtable td.muted{color:var(--ink-4);font-size:12.5px}
@media (max-width:1000px){.hcard.c4,.hcard.c6,.hcard.c8{grid-column:span 12}.hero-row{grid-template-columns:1fr}}
@media (max-width:760px){.home{grid-template-columns:1fr}.hnav{position:static;display:flex;overflow-x:auto;gap:4px;padding-bottom:4px}.hnav button{white-space:nowrap}}
/* the real dashboard: one column, no sample assistant */
/* the real dashboard fills the window: no centred column, the band's row follows it */
.dash.solo{grid-template-columns:1fr;max-width:none}
.dash.solo .dash-main{padding:30px 40px 80px}
body:has(#dash.solo:not(.hide)) .band-in{max-width:none;padding:0 40px}
.dash.solo .home{grid-template-columns:minmax(0,1fr);gap:0}
/* the section tabs across the top of the dashboard */
.htabs{display:flex;gap:2px;margin:-6px 0 22px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.htabs::-webkit-scrollbar{display:none}
.htabs button{background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 14px;font:500 14px var(--disp);color:var(--ink-3);cursor:pointer;white-space:nowrap;border-radius:8px 8px 0 0}
.htabs button:hover{color:var(--ink);background:var(--card-2)}
.htabs button[aria-current=page]{color:var(--ink);border-bottom-color:var(--wr);font-weight:600}
@media (max-width:600px){.htabs{margin:-4px -16px 18px;padding:0 16px}.htabs button{padding:9px 11px;font-size:13.5px}}
@media (min-width:1700px){.dash.solo .dash-main{padding:34px 56px 80px}body:has(#dash.solo:not(.hide)) .band-in{padding:0 56px}.dash.solo .home{gap:40px}}
@media (max-width:760px){.dash.solo .dash-main{padding:22px 20px 60px}body:has(#dash.solo:not(.hide)) .band-in{padding:0 20px}.dash.solo .home{grid-template-columns:1fr;gap:16px}}
@media (max-width:600px){.dash.solo .dash-main{padding:18px 16px 50px}body:has(#dash.solo:not(.hide)) .band-in{padding:8px 16px}}
.dash.solo .asst{display:none}
.qlist{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.qlist li{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card-2);font-size:14px}
.qlist li small{color:var(--ink-3);white-space:nowrap}
.qlist li.more{border-style:dashed;color:var(--ink-3)}
.finding-area{margin:10px 0 0}
.finding-area > b{display:block;font:600 13px var(--disp);color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px}
.finding{display:grid;grid-template-columns:22px minmax(0,1fr);gap:2px 10px;padding:6px 0;border-top:1px solid var(--line);font-size:14px;align-items:baseline}
.finding i{font-style:normal;font-weight:700;text-align:center;border-radius:6px;font-size:12px;line-height:20px}
.finding.pass i{background:var(--ok-tint);color:var(--ok)}
.finding.warn i{background:var(--wr-tint);color:var(--wr-ink)}
.finding.fail i{background:var(--er-tint,#3a1512);color:var(--er-ink,#F08A75)}
.finding small{grid-column:2;color:var(--ink-3);font-size:12.5px}
.finding span,.finding small{overflow-wrap:anywhere}
.finding.na i{background:var(--card-3);color:var(--ink-3)}
.finding.na span{color:var(--ink-2)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:8px}
.home-logo{width:56px;height:56px;border-radius:12px;object-fit:contain;background:#fff;padding:6px;border:1px solid var(--line);margin:4px 0 10px}
.panel .row{margin-top:12px}
/* a double-click on a button or the switch line selects nothing */
.gate-tab,.gate-go,.gate-google,.gate-foot,.gate-k,.gate-eye,.gate-or{user-select:none;-webkit-user-select:none}

/* step 1: the address box, a step like the others */
.step1{max-width:640px}
.step1 .urlrow{box-shadow:var(--sh1)}
.step1 .signed{margin-top:12px}
/* the free assessment: the setup to confirm, the steps left, the visibility bars, the plan card */
.hcard.confirm .facts{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.confirm-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:4px}
.confirm-form .fld.full{grid-column:1/-1}
.run-row.three{grid-template-columns:1fr 1fr 1fr}.run-row.three .sub{grid-column:1/-1}
@media (max-width:700px){.confirm-form{grid-template-columns:1fr}.run-row.three{grid-template-columns:1fr}}
.steps{display:grid;gap:8px;margin-top:6px}
.step{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line-2);border-radius:12px}
.step i{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--card-2);color:var(--ink-3);font-style:normal;font-size:13px;font-weight:700}
.step.done i{background:var(--ok);color:#fff}
.step b{display:block;font-size:14px}.step small{color:var(--ink-3);font-size:12.5px}
.vis{display:grid;gap:10px;margin-top:6px}
.vis-row{display:grid;grid-template-columns:minmax(120px,1fr) 2fr 56px;align-items:center;gap:12px;font-size:14px}
.vis-row.you b{color:var(--brand-2)}
.vis-bar{height:10px;border-radius:999px;background:var(--card-2);overflow:hidden}
.vis-bar i{display:block;height:100%;background:var(--amber,#D99A2B);border-radius:999px;min-width:2px}
.vis-row .num{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.vis-row .num.good{color:var(--ok)}.vis-row .num.bad{color:#E7735A}.vis-row .num.mid{color:var(--wr-ink)}
.atable td.instead{font-size:13px;color:var(--ink-2)}
.atable td.named.good{color:var(--ok);font-weight:600}.atable td.named.bad{color:#E7735A;font-weight:600}
.hcard.plan .rules{margin:8px 0 14px}
.btn.chip{padding:6px 12px;font-size:13px;border-radius:999px;background:var(--card-2);color:var(--ink-2);border:1px solid var(--line-2);box-shadow:none}
.btn.chip:hover{border-color:var(--brand-2);color:var(--brand-2)}
pre.plain{white-space:pre-wrap;font:13px/1.5 ui-monospace,monospace;background:var(--card-2);padding:12px;border-radius:12px;margin-top:10px}
/* the free check names the problem; the fix itself is the plan's */
/* the free check names a finding; its detail, and the subjects competitors cover, are the plan's */
.finding small.locked{font-style:italic;color:var(--ink-4)}
.gap.locked b{color:var(--ink)}
.gap.locked small{display:block;color:var(--ink-3);margin-top:4px}

/* the front door: the free scan, its preview, the one-page business form */
.front-wait{max-width:640px;margin-top:8px}
.bizform{max-width:720px;display:grid;gap:18px;margin-top:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:24px;box-shadow:var(--sh1)}
.bizform .btn.lg{justify-self:start}
.acc-list.bad,.pay-list .pay.bad,.chips.bad{outline:2px solid var(--er);outline-offset:3px;border-radius:12px}
.bizform input.bad,.hcard input.bad{border-color:var(--er)}
.gate-score{display:flex;align-items:center;gap:16px;margin:18px 0 10px}
.gate-score b{display:block;font-size:18px}.gate-score small{color:var(--ink-3)}
.step.run i{background:var(--wr-tint);color:var(--wr-ink)}
.step.bad i{background:var(--er-tint);color:var(--er-ink)}
.step.bad small{color:var(--er-ink)}
.onb.wide .hgrid{margin-top:16px}
@media (max-width:600px){.step1 .urlrow{border-radius:18px}.step1 .urlrow .btn{border-radius:14px}}

/* the front page: the box and what it gives on the left, a sample result on the right, three steps under */
.onb.front{padding-top:40px}
.fr{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
.fr-h{font-size:clamp(34px,4.2vw,54px);line-height:1.06;margin:0 0 16px}
.fr-h em,.onb.front h1 em{background:none;-webkit-text-fill-color:currentColor;color:var(--brand)}
.fr-lede{font-size:18px;color:var(--ink-2);max-width:560px;margin:0 0 26px}
.fr .step1{max-width:600px}
.fr-gets{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:14px;max-width:560px}
.fr-gets li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start}
.fr-gets b{display:block;font-size:15px}
.fr-gets small{color:var(--ink-3);font-size:13.5px}
.fr-tick{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:var(--wr-tint);color:var(--wr-ink);font-weight:700;font-size:13px}
.fr-trust{margin:22px 0 0;font-size:13px;color:var(--ink-3)}
.hcard.fr-sample{padding:22px 24px;box-shadow:var(--sh2)}
.fr-sample-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.fr-sample-head small{color:var(--ink-3);font-family:var(--mono);font-size:12.5px}
.fr-tag{font:600 11.5px/1 var(--disp);letter-spacing:.04em;text-transform:uppercase;color:var(--wr-ink);background:var(--wr-tint);padding:6px 10px;border-radius:999px}
.fr-sample-top{display:grid;grid-template-columns:104px 1fr;gap:18px;align-items:center}
.fr-sample-top .ring{filter:none}
.fr-sample-strip{display:grid;gap:8px}
.fr-sample-strip .vstat{display:flex;align-items:baseline;gap:10px;padding:8px 12px}
.fr-sample-strip .vstat b{font-size:18px;min-width:28px}
.fr-sample-strip .vstat.bad b{color:var(--er)}
.fr-sample-k{margin:18px 0 8px;font:600 11.5px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.fr-ai{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:14px}
.fr-ai li{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:start}
.fr-ai i{font-style:normal;font-weight:700;text-align:center}
.fr-ai li.ok i{color:var(--ok)}.fr-ai li.bad i{color:var(--er)}
.fr-fix{margin:0;padding-left:20px;display:grid;gap:6px;font-size:14px}
.fr-fix li::marker{color:var(--wr-ink);font-weight:700}
.fr-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}
.fr-step{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start}
.fr-step b{display:block;font-size:15px}
.fr-step small{color:var(--ink-3);font-size:13.5px}
.fr-n{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--brand);color:var(--on-brand);font-weight:700;font-size:14px}
@media (max-width:980px){.fr{grid-template-columns:1fr;gap:32px}.fr-steps{grid-template-columns:1fr;margin-top:36px}}
@media (max-width:600px){.onb.front{padding-top:20px}.fr-lede{font-size:16px}}
.fr>.hcard.fr-sample{grid-column:auto;align-self:center}

/* the check's loader: a ring with the share done, the parts ticking off, the line being read */
.cl-h{font-size:clamp(30px,3.6vw,46px)}
.cl{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:center;max-width:980px;margin-top:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:32px 36px;box-shadow:var(--sh1)}
.cl-left{display:flex;flex-direction:column;align-items:center;gap:14px}
.cl-ringbox{position:relative;width:200px;height:200px}
.cl-ring{width:200px;height:200px}
.cl-bg{fill:none;stroke:var(--card-3);stroke-width:8}
.cl-fg{fill:none;stroke:var(--wr);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .6s ease}
.cl-mid{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.cl-pct{font-size:40px;font-weight:600;letter-spacing:-.02em;line-height:1}
.cl-clock{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:13px}
.cl-site{margin:0;font-family:var(--mono);font-size:13px;color:var(--ink-3);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cl-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.cl-row{display:grid;grid-template-columns:26px 1fr auto;gap:12px;align-items:center;padding:9px 12px;border-radius:12px;transition:background .3s,opacity .3s}
.cl-row b{display:block;font-size:15px;font-weight:600}
.cl-row small{display:block;color:var(--ink-3);font-size:12.5px}
.cl-n{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.cl-i{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-style:normal;font-size:12px;font-weight:700;box-sizing:border-box}
.cl-row.wait{opacity:.5}
.cl-row.wait .cl-i{border:2px solid var(--line-2)}
.cl-row.run{background:var(--wr-tint)}
.cl-row.run .cl-i{border:2px solid var(--line-2);border-top-color:var(--wr);animation:spin .8s linear infinite}
.cl-row.done .cl-i{background:var(--ok);color:#fff}
.cl-now{margin:14px 12px 0;font-size:13px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cl-now code{font-family:var(--mono);color:var(--ink-2)}
.cl-why{margin:8px 12px 0;font-size:13px;color:var(--wr-ink)}
@media (prefers-reduced-motion:reduce){.cl-row.run .cl-i{animation:none;border-color:var(--wr)}.cl-fg{transition:none}}
@media (max-width:760px){.cl{grid-template-columns:1fr;gap:20px;padding:22px 18px}.cl-ringbox,.cl-ring{width:150px;height:150px}.cl-pct{font-size:32px}}

/* compact: the loader fits in one screen with room around it; a stage's note shows only while it runs */
.cl-h{font-size:clamp(26px,2.6vw,34px);margin:0 0 6px}
.cl-lede{margin:0 0 18px;color:var(--ink-3);font-size:15px}
.cl{grid-template-columns:150px minmax(0,1fr);gap:28px;max-width:760px;padding:22px 26px}
.cl-left{gap:8px}
.cl-ringbox,.cl-ring{width:132px;height:132px}
.cl-pct{font-size:28px}
.cl-clock{font-size:12px}
.cl-site{font-size:12px;max-width:150px}
.cl-list{gap:2px}
.cl-row{grid-template-columns:22px 1fr auto;gap:10px;padding:6px 10px;border-radius:10px}
.cl-row b{font-size:14px;font-weight:500}
.cl-row small{display:none}
.cl-row.run small{display:block}
.cl-row.run b{font-weight:600}
.cl-i{width:20px;height:20px;font-size:11px}
.cl-now{margin:10px 10px 0;font-size:12.5px}
.cl-why{margin:6px 10px 0;font-size:12.5px}
@media (max-width:760px){.cl{grid-template-columns:1fr;gap:14px;padding:18px 16px}.cl-left{flex-direction:row;justify-content:flex-start;gap:16px}.cl-ringbox,.cl-ring{width:96px;height:96px}.cl-pct{font-size:22px}.cl-site{max-width:none}}

/* the result: the score and what it means, the numbers, fix first beside how AI reads it, then what an account adds */
.rs-h{font-size:clamp(28px,3vw,40px);margin:0 0 18px}
.rs{display:grid;gap:16px;max-width:1120px}
.rs-sum{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:24px 28px;box-shadow:var(--sh1)}
.rs-score{display:grid;grid-template-columns:128px 1fr;gap:22px;align-items:center}
.rs-score .ring{filter:none}
.rs-score p{margin:8px 0 6px;color:var(--ink-2);font-size:15px;max-width:420px}
.rs-word{display:inline-block;font-weight:600;font-size:13px;padding:5px 10px;border-radius:999px}
.rs-word.good{background:var(--ok-tint);color:var(--ok)}
.rs-word.mid{background:var(--wr-tint);color:var(--wr-ink)}
.rs-word.bad{background:var(--er-tint);color:var(--er-ink)}
.rs-meta{color:var(--ink-3);font-size:12.5px}
.rs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.rs-stat{background:var(--card-2);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.rs-stat b{display:block;font-size:22px;font-weight:600;letter-spacing:-.01em}
.rs-stat small{color:var(--ink-3);font-size:12.5px}
.rs-stat.bad b{color:var(--er)}.rs-stat.mid b{color:var(--wr-ink)}.rs-stat.good b{color:var(--ok)}
.rs-two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}
.rs-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:22px 24px;box-shadow:var(--sh1)}
.rs-card h3{font-size:17px}
.rs-sub{margin:4px 0 14px;color:var(--ink-3);font-size:13px}
.rs-block{display:grid;gap:4px;padding:10px 12px;margin:0 0 12px;border-radius:10px;background:var(--er-tint);color:var(--er-ink);font-size:13.5px}
.rs-fix{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:fx}
.rs-fix li{counter-increment:fx;position:relative;padding:12px 14px 12px 50px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}
.rs-fix li::before{content:counter(fx);position:absolute;left:14px;top:12px;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12.5px;background:var(--wr-tint);color:var(--wr-ink)}
.rs-fix li.fail::before{background:var(--er-tint);color:var(--er-ink)}
.rs-fix-h{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rs-fix-h b{font-size:15px}
.rs-tag{font-size:11.5px;color:var(--ink-3);border:1px solid var(--line-2);padding:2px 8px;border-radius:999px}
.rs-fix p{margin:4px 0 0;color:var(--ink-2);font-size:13.5px}
.rs-sig{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.rs-sig li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
.rs-sig li:last-child{border-bottom:0}
.rs-sig i{font-style:normal;font-weight:700;width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;background:var(--card-3);color:var(--ink-3)}
.rs-sig li.ok i{background:var(--ok-tint);color:var(--ok)}
.rs-sig li.bad i{background:var(--er-tint);color:var(--er-ink)}
.rs-more{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:28px;align-items:center;background:var(--card);border:1px solid var(--line-2);border-left:4px solid var(--wr);border-radius:var(--r3);padding:24px 28px;box-shadow:var(--sh1)}
.rs-k{margin:0 0 6px;font:600 11.5px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--wr-ink)}
.rs-more h3{font-size:20px;margin:0 0 12px}
.rs-list{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--ink-2);font-size:14px}
.rs-list li::marker{color:var(--wr)}
.rs-more-r{display:grid;gap:8px;justify-items:stretch;text-align:center}
.rs-more-r small{color:var(--ink-3);font-size:12.5px}
@media (max-width:980px){.rs-sum,.rs-two,.rs-more{grid-template-columns:1fr}}
@media (max-width:600px){.rs-sum,.rs-card,.rs-more{padding:18px 16px}.rs-score{grid-template-columns:96px 1fr;gap:14px}.rs-score .ring{width:96px!important;height:96px!important}}
.rs-stats{grid-template-columns:repeat(auto-fit,minmax(88px,1fr))}.rs-stat{padding:12px}.rs-stat small{display:block;line-height:1.3}
/* the two cards keep their own height; a fix shows two lines at most */
.rs-two{align-items:start}
.rs-fix p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* the result, v2: everything stacked on the left at one width (nothing to line up side by side); the sign-up beside it, in view while scrolling */
.rs2{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px 24px;align-items:start;max-width:1200px;
  grid-template-areas:"sum side" "fix side" "ai side" "lock side"}
.rs-a-sum{grid-area:sum}.rs-a-fix{grid-area:fix}.rs-a-ai{grid-area:ai}.rs-a-lock{grid-area:lock}.rs-a-side{grid-area:side}
.rs2 .rs-sum{grid-template-columns:1fr;gap:18px;padding:22px 24px}
.rs2 .rs-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.rs-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin-bottom:14px}
.rs-head .rs-sub{margin:0}
.rs2 .rs-sig{grid-template-columns:1fr 1fr;column-gap:24px}
.rs2 .rs-sig li:nth-last-child(2):nth-child(odd){border-bottom:0}
.rs-lockrows{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rs-lockrows li{display:grid;grid-template-columns:28px minmax(0,1fr) 120px;gap:12px;align-items:center;padding:12px 14px;border:1px dashed var(--line-2);border-radius:12px;background:var(--card-2)}
.rs-lockrows b{display:block;font-size:14.5px}
.rs-lockrows small{color:var(--ink-3);font-size:12.5px}
.rs-lock{width:26px;height:26px;border-radius:8px;background:var(--wr-tint);position:relative}
.rs-lock::before{content:"";position:absolute;left:8px;top:11px;width:10px;height:8px;border-radius:2px;background:var(--wr-ink)}
.rs-lock::after{content:"";position:absolute;left:9.5px;top:5px;width:7px;height:7px;border:2px solid var(--wr-ink);border-bottom:0;border-radius:5px 5px 0 0;box-sizing:border-box}
.rs-skel{display:grid;gap:6px}
.rs-skel i{display:block;height:8px;border-radius:4px;background:var(--card-3)}
.rs-skel i:last-child{width:60%}
.rs-side{position:sticky;top:84px;background:var(--card);border:1px solid var(--line-2);border-top:4px solid var(--wr);border-radius:var(--r3);padding:22px 24px;box-shadow:var(--sh2)}
.rs-side h3{font-size:20px;line-height:1.2;margin:0 0 6px}
.rs-side-sub{margin:0 0 16px;color:var(--ink-3);font-size:13.5px}
.rs-side .btn.lg{width:100%}
.su-form{display:grid;gap:10px}
.su-form .fld{gap:5px}
.su-form .fld input{padding:10px 12px;font-size:14.5px}
.su-form .gate-google{width:100%}
.su-form .gate-or{margin:2px 0}
.su-terms{margin:2px 0 0;font-size:11.5px;color:var(--ink-3);line-height:1.45}
.rs-side-foot{margin:12px 0 0;font-size:12.5px;color:var(--ink-3)}
@media (max-width:1100px){.rs2{grid-template-columns:minmax(0,1fr) 340px}.rs2 .rs-sig{grid-template-columns:1fr}.rs2 .rs-sig li:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--line)}}
@media (max-width:900px){.rs2{grid-template-columns:1fr;grid-template-areas:"sum" "side" "fix" "ai" "lock"}.rs-side{position:static}.rs2 .rs-stats{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}}
@media (max-width:600px){.rs-lockrows li{grid-template-columns:28px minmax(0,1fr)}.rs-skel{display:none}.rs-side{padding:18px 16px}}

/* onboarding, /onboarding: the form in numbered sections on the left, the check and the steps on the right */
.ob-h{font-size:clamp(28px,3vw,40px);margin:0 0 20px}
.ob{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start;max-width:1100px}
.ob-form{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--sh1);overflow:hidden}
.ob-sec{padding:22px 26px;border-bottom:1px solid var(--line);display:grid;gap:12px}
.ob-sec-h{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start}
.ob-sec-h h3{font-size:16px;margin:2px 0 0}
.ob-sec-h p{margin:3px 0 0;color:var(--ink-3);font-size:13px}
.ob-n{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-tint);color:var(--brand-2);font-weight:700;font-size:13px}
.ob-sec>:not(.ob-sec-h){margin-left:40px}
.ob-id{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;align-items:start}
.ob-id-f{display:grid;gap:12px}
.ob-logo{display:grid;gap:8px;justify-items:center}
.ob-logo-img{width:104px;height:104px;border-radius:18px;border:1px solid var(--line-2);background:var(--card-2);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.ob-logo-img img{max-width:84%;max-height:84%;object-fit:contain}
.ob-logo-img.empty img{display:none}
.ob-logo-img.empty::after{content:attr(data-initial);font-size:40px;font-weight:600;color:var(--ink-4)}
.ob-logo-act{display:flex;gap:10px;align-items:center}
.ob-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ob-chips{display:flex;flex-wrap:wrap;gap:6px;min-height:0}
.ob-chips:empty{display:none}
.ob-over{font-size:12px;color:var(--er-ink);align-self:center}
.ob-kinds{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ob-reach{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ob-opt{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;padding:12px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);cursor:pointer;transition:border-color .15s,background .15s}
.ob-opt input{margin:3px 0 0;accent-color:var(--brand)}
.ob-opt b{display:block;font-size:14px}
.ob-opt small{display:block;color:var(--ink-3);font-size:12.5px;line-height:1.4;margin-top:2px}
.ob-opt.on{border-color:var(--brand-2);background:var(--brand-tint)}
.ob-kinds.bad,.ob-reach.bad{outline:2px solid var(--er);outline-offset:4px;border-radius:12px}
.ob-where{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ob-go{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:20px 26px;background:var(--card-2)}
.ob-go small{color:var(--ink-3);font-size:13px}
.ob-err{margin:0;padding:0 26px 18px;background:var(--card-2);color:var(--er-ink);font-size:14px}
.ob-side{position:sticky;top:84px;background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:20px 22px;box-shadow:var(--sh1)}
.ob-check{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.ob-check .ring{filter:none}
.ob-check b{display:block;font-size:15px}.ob-check small{color:var(--ink-3);font-size:12.5px}
.ob-k{margin:0 0 10px;font:600 11.5px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.ob-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ob-steps li{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;font-size:14px;color:var(--ink-3)}
.ob-steps li small{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px}
.ob-steps i{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:700;border:1px solid var(--line-2)}
.ob-steps li.done i{background:var(--ok);border-color:var(--ok);color:#fff}
.ob-steps li.done span{color:var(--ink-2)}
.ob-steps li.now i{background:var(--wr);border-color:var(--wr);color:#fff}
.ob-steps li.now span{color:var(--ink);font-weight:600}
.ob-note{margin:16px 0 0;font-size:12.5px;color:var(--ink-3)}
@media (max-width:960px){.ob{grid-template-columns:1fr}.ob-side{position:static;order:-1}}
@media (max-width:600px){.ob-sec{padding:18px 16px}.ob-sec>:not(.ob-sec-h){margin-left:0}.ob-id{grid-template-columns:1fr}.ob-logo{grid-template-columns:auto 1fr;justify-items:start;align-items:center}.ob-logo-img{width:72px;height:72px;border-radius:14px}.ob-kinds,.ob-reach,.ob-where{grid-template-columns:1fr}.ob-go{padding:16px}}
.ob-id{grid-template-columns:132px minmax(0,1fr)}
.ob-logo .hint{font-size:11.5px;color:var(--ink-3);text-align:center;font-weight:400}
.ob-logo-act .btn.sm{padding:5px 12px;font-size:13px}
@media (max-width:600px){.ob-id{grid-template-columns:1fr}.ob-logo{grid-template-columns:auto auto 1fr}.ob-logo .hint{text-align:left}}
.ob-logo-act .link{font-size:13px}

/* what you sell: picked services on top, the industry, its usual services to tap, and one's own */
.ob-services{display:grid;gap:14px}
.ob-services.bad{outline:2px solid var(--er);outline-offset:6px;border-radius:12px}
.ob-picked{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:42px;padding:8px 10px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2)}
.ob-pick{display:inline-flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;border-radius:999px;border:1px solid var(--brand-2);background:var(--brand-tint);color:var(--ink);font-size:13.5px;font-weight:500;cursor:pointer}
.ob-pick .x{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--card);color:var(--ink-3);font-size:13px;line-height:1}
.ob-pick:hover .x{background:var(--er-tint);color:var(--er-ink)}
.ob-empty{color:var(--ink-3);font-size:13px}
.ob-count{margin-left:auto;color:var(--ink-3);font-size:12px;font-variant-numeric:tabular-nums}
.ob-sector{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ob-sector .fld{gap:6px}
.ob-ideas:empty{display:none}
.ob-ideas-k{display:block;color:var(--ink-3);font-size:12.5px;margin-bottom:8px}
.ob-idea-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ob-idea{padding:6px 12px;border-radius:999px;border:1px dashed var(--line-2);background:var(--card);color:var(--ink-2);font-size:13px;cursor:pointer;transition:border-color .15s,background .15s}
.ob-idea:hover{border-color:var(--brand-2);color:var(--ink)}
.ob-idea.on{border-style:solid;border-color:var(--ok);background:var(--ok-tint);color:var(--ok)}
.ob-mine{display:grid;grid-template-columns:1fr auto;gap:8px}
.ob-mine input{width:100%;padding:11px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);font-size:14.5px}
.ob-mine input:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
@media (max-width:600px){.ob-sector{grid-template-columns:1fr}}

/* onboarding: who is signed in, and the terms box above the button */
.ob-acct{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.ob-av{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:var(--on-brand);font-weight:700;font-size:14px}
.ob-acct small{display:block;color:var(--ink-3);font-size:12px}
.ob-acct b{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ob-acct>div{min-width:0}
.ob-cap{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:var(--wr-tint);color:var(--ink);font-size:13.5px;line-height:1.5}
.ob-cap b{color:var(--wr-ink)}
.ob-cap a{color:var(--brand-2)}
.ob-acct .link{font-size:12px}
.ob-go{display:grid;gap:14px}
.ob-go-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.ob-agree{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;font-size:13.5px;color:var(--ink-2);cursor:pointer;padding:4px;border-radius:8px}
.ob-agree input{margin:2px 0 0;accent-color:var(--brand);width:16px;height:16px}
.ob-agree a{color:var(--brand-2)}
.ob-agree.bad{outline:2px solid var(--er);outline-offset:3px}
.su-terms a,.gate-note a{color:var(--brand-2)}

/* online: the main market, and where else it sells */
.ob-mk{gap:8px}
.ob-world{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:center;padding:10px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);cursor:pointer;max-width:360px}
.ob-world input{margin:0;accent-color:var(--brand);width:16px;height:16px}
.ob-world b{font-size:14px;margin-right:8px}.ob-world small{color:var(--ink-3);font-size:12.5px;font-weight:400}
.ob-world.on{border-color:var(--brand-2);background:var(--brand-tint)}
.ob-mk-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ob-mk-chips{display:contents}
.ob-mk-add select{width:auto;min-width:200px;padding:9px 12px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);font-size:14px}

/* onboarding: the competitors, a name and a website a row */
.ob-rivals{display:grid;gap:8px}
.ob-rival{display:grid;grid-template-columns:24px minmax(0,1fr) minmax(0,1.2fr) 32px;gap:8px;align-items:center}
.ob-rn{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--card-3);color:var(--ink-3);font-size:11.5px;font-weight:700}
.ob-rival input{width:100%;padding:10px 12px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);font-size:14.5px}
.ob-rival input:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.ob-rival input.bad{border-color:var(--er)}
.ob-x{width:30px;height:30px;border-radius:50%;border:1px solid var(--line-2);background:var(--card);color:var(--ink-3);font-size:16px;line-height:1;cursor:pointer}
.ob-x:hover{background:var(--er-tint);color:var(--er-ink)}
.ob-rival-add{padding-left:32px}
@media (max-width:600px){.ob-rival{grid-template-columns:22px 1fr 30px}.ob-rival input:nth-of-type(2){grid-column:2}}

/* a competitor whose site could not be scanned: the reason, and the address asked for again */
.ctable tr.failrow td{background:var(--wr-tint)}
.ctable td.failnote{font-size:13px;color:var(--ink-2);max-width:420px}
.ctable td.failnote b{color:var(--wr-ink)}
.ctable td.failnote small{display:block;color:var(--ink-3);margin-top:2px}
.ctable tr.fixrow input{width:100%;min-width:200px;padding:8px 10px;border:1px solid var(--brand-2);border-radius:10px;background:var(--card);font-size:14px}
.ctable td.failnote{grid-column:auto}
.hcard.warncard{border-left:4px solid var(--wr);background:var(--wr-tint)}
.hcard.warncard p{margin:0;font-size:14px;color:var(--ink-2)}
.hcard.warncard .link{margin-left:6px}

/* the client's read-only report (/r/<link>) */
.rp{max-width:1100px;padding-top:28px}
.rp-who{display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:center;margin-bottom:18px}
.rp-logo{width:72px;height:72px;border-radius:16px;object-fit:contain;background:var(--card);border:1px solid var(--line)}
.rp-initial{width:72px;height:72px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--brand);color:var(--on-brand);font-size:30px;font-weight:600}
.rp-who .eyebrow{margin:0 0 6px}
.rp-h{font-size:clamp(26px,3vw,38px);margin:0}
.rp-meta{margin:4px 0 0;color:var(--ink-3);font-size:13.5px}
.rp-body{gap:16px}
.rp-also{margin-top:12px}
.rp-searches{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:6px 24px}
.rp-searches li{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line);font-size:14px}
.rp-searches li span{flex:1}
.rp-searches li small.up{color:var(--ok)}.rp-searches li small.down{color:var(--er)}
.rp-line{margin:0;font-size:14.5px;color:var(--ink-2)}
.rp-foot{margin:22px 0 40px;color:var(--ink-4);font-size:12.5px}
.rp-brand{font-size:20px}

/* agency work: the client picker, sharing the report, the owner, deleting a business */
.dash-pick{min-width:240px;max-width:360px;padding:8px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink);font-size:14px}
.dash-count{font-size:12.5px;color:var(--ink-3);margin-right:8px;align-self:center}
.share-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-top:4px}
.share-row input{width:100%;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);font-family:var(--mono);font-size:13px;color:var(--ink-2)}
.share-acts{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:12px}
.share-acts .btn.link{font-size:13px}
.owner-card .confirm-form{margin-top:4px}
.danger-card{border-color:var(--er-tint)}
.btn.danger{color:var(--er-ink);border-color:var(--er)}
.btn.danger:hover{background:var(--er-tint)}
.su-kind{margin-bottom:2px}
@media (max-width:600px){.share-row{grid-template-columns:1fr 1fr}.share-row input{grid-column:1/-1}}
.owner-card .run-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}
.owner-card .run-row .btn{width:auto}
.owner-card .run-row .sub{flex-basis:100%;margin:0}
.consent-gist input{width:100%;margin-top:8px;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}
.danger-card .sub{font-size:13px;margin:10px 0 0}
.camp-note{margin:0 0 12px}

/* the report as a PDF: light, no header bar or buttons, cards kept whole */
.rp-save{margin-left:auto}
.rp-mark{display:inline-block;width:16px;text-align:center;font-weight:700}
.rp-mark.fail{color:var(--er)}.rp-mark.warn{color:var(--wr-ink)}
.rp-why{font-size:13px;color:var(--ink-2);max-width:460px}
.rp-you{font-weight:600}
@media print{
  :root,:root[data-theme=dark],:root:not([data-theme=light]){--bg:#fff;--card:#fff;--card-2:#F7F9FD;--card-3:#E8EDF6;--ink:#0E1627;--ink-2:#3A4760;--ink-3:#66748E;--ink-4:#9AA6BC;--line:#E2E7F1;--line-2:#CDD5E3;--brand:#1F3D66;--brand-2:#3B6BAA;--brand-tint:#E9F0FB;--ok:#128062;--ok-tint:#DDF3EA;--wr:#D0901F;--wr-ink:#8F5F0A;--wr-tint:#FCF0D6;--er:#D24B2E;--er-ink:#A63A20;--er-tint:#FBE6DF;color-scheme:light}
  body{background:#fff}
  body::before{display:none}
  .band{position:static;background:#fff;border-bottom:1px solid #E2E7F1;color:#0E1627}
  .band .logo{color:#0E1627}
  .rp-save{display:none}
  .rp{padding-top:12px}
  .rs-card,.rs-sum{box-shadow:none;break-inside:avoid;page-break-inside:avoid}
  .rp-table tr{break-inside:avoid}
  .tbox{overflow:visible}
  @page{margin:14mm}
}

/* Settings: one column; each section a title on the left, the thing on the right */
.st{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--sh1)}
.st-sec{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:48px;padding:28px 32px;border-top:1px solid var(--line)}
.st-sec:first-child{border-top:0}
.st-side h2{font:600 16px/1.3 var(--disp);margin:0 0 6px;color:var(--ink)}
.st-side p{font-size:13px;line-height:1.5;color:var(--ink-3);margin:0}
.st-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.st-list{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr);margin:0}
.st-list dt,.st-list dd{padding:10px 0;border-top:1px solid var(--line);margin:0;font-size:14px;line-height:1.45}
.st-list dt:first-of-type,.st-list dt:first-of-type+dd{border-top:0}
.st-list dt{color:var(--ink-3)}
.st-list dd{color:var(--ink);font-weight:500;overflow-wrap:anywhere}
.st .pill{margin-left:0}
.st-muted{color:var(--ink-4);font-weight:400}
.st-who{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding-bottom:6px}
.st-who b{display:block;font:600 17px/1.3 var(--disp);color:var(--ink)}
.st-who a{font-size:13.5px;color:var(--brand-2);text-decoration:none}
.st-who a:hover{text-decoration:underline}
.st-logo{width:56px;height:56px;border-radius:12px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;overflow:hidden}
.st-logo img{max-width:100%;max-height:100%;object-fit:contain;padding:6px}
.st-logo span{font:600 22px/1 var(--disp);color:#fff;background:var(--brand);width:100%;height:100%;display:grid;place-items:center}
.st-logo-acts{display:flex;align-items:center;gap:10px;margin-top:4px;flex-wrap:wrap}
.st-logo-acts .linkbtn,.st-logo-acts button{font-size:12.5px}
.st-note{font-size:12.5px;color:var(--ink-3);margin:0}
.st-note.bad{color:var(--er-ink)}
.st-state{display:flex}
.st-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.st-fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.st-fld>span{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.st input[type=text],.st input[type=email]{width:100%;min-width:0;padding:10px 13px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.st input[type=text]:focus,.st input[type=email]:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.st-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;max-width:520px}
.st-acts{display:flex;gap:8px;flex-wrap:wrap}
.st-link{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:12px;background:var(--card-2);border:1px dashed var(--line-2)}
.st-link small{font-size:12.5px;color:var(--ink-3)}
.st-email{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.st-email .linkbtn,.st-email button{font-size:13px;font-weight:500}
.st-danger .st-side h2{color:var(--er-ink)}
.st-main>.card{margin:0;box-shadow:none}
@media (max-width:820px){
  .st-sec{grid-template-columns:1fr;gap:14px;padding:22px 18px}
  .st-pair{grid-template-columns:1fr}
  .st-list{grid-template-columns:1fr}
  .st-list dt{padding-bottom:0;border-top:1px solid var(--line)}
  .st-list dd{padding-top:2px;border-top:0}
  .st-list dt:first-of-type{border-top:0}
  .st-who{grid-template-columns:auto minmax(0,1fr)}
  .st-who>.btn{grid-column:1/-1;justify-self:start}
}

/* the account button in the top bar: shown on the dashboard only */
.acct-btn{display:none;width:36px;height:36px;padding:0;border-radius:50%;place-items:center;font:600 14px/1 var(--disp)}
body:has(#dash:not(.hide)) .acct-btn{display:inline-grid}
/* Account settings */
.acct-back{margin-bottom:10px}
.acct-back .link{font-size:13.5px}
.st-kind{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.st-agency{display:flex;flex-direction:column;gap:14px}
.st-who-sm{grid-template-columns:auto minmax(0,1fr);padding:0}
.st-logo-wide{width:120px;height:56px}
.st-usage{display:flex;flex-direction:column;gap:8px}
.st-usage p{margin:0;font-size:13.5px;color:var(--ink-2)}
.st-meter{height:8px;border-radius:99px;background:var(--card-3);overflow:hidden;max-width:420px}
.st-meter i{display:block;height:100%;background:var(--wr);border-radius:99px}
.st input[type=password]{width:100%;min-width:0;padding:10px 13px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.st input[type=password]:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.pagehead .link{font-size:inherit}
.ob-whose{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
@media (max-width:820px){.st-kind,.ob-whose{grid-template-columns:1fr}}
/* the shared report's bar: an agency's logo and website */
.rp-brand{display:inline-flex;align-items:center;gap:10px}
.rp-agency-logo{height:28px;max-width:110px;object-fit:contain;border-radius:6px;background:#fff;padding:3px}
.rp-agency-site{font:400 13px/1 var(--disp);color:var(--ink-3);text-decoration:none;margin-left:4px}
.rp-agency-site:hover{text-decoration:underline}

/* the loader: the Oftheard mark, the dot steady and the two arcs carrying out from it in turn.
   Shown until the first page is drawn, and over the page while a business loads. */
.boot{position:fixed;inset:64px 0 0;z-index:40;display:grid;place-items:center;background:var(--bg)}
body:has(#stage > *) .boot,body:has(#dash:not(.hide)) .boot{display:none}
body.loading .boot{display:grid;background:color-mix(in srgb,var(--bg) 82%,transparent)}
.boot svg{width:64px;height:64px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;color:var(--ink)}
.boot-dot{fill:currentColor;stroke:none;transform-origin:7px 12px;animation:boot-dot 1.4s ease-in-out infinite}
.boot-a1,.boot-a2{opacity:.15;animation:boot-arc 1.4s ease-in-out infinite}
.boot-a2{animation-delay:.25s}
@keyframes boot-dot{0%,100%{transform:scale(1)}20%{transform:scale(.82)}}
@keyframes boot-arc{0%,15%{opacity:.15}40%{opacity:1;color:var(--wr)}75%,100%{opacity:.15}}
@media (prefers-reduced-motion:reduce){.boot-dot,.boot-a1,.boot-a2{animation:none;opacity:1}}
/* the loader in the brand's colours: navy into blue into amber, on the mark and the word, a slow shimmer across the word */
.boot{--g1:#1F3D66;--g2:#3B6BAA;--g3:#D0901F}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .boot{--g1:#6B9BDA;--g2:#A9C6F0;--g3:#EDB04E}}:where(:root[data-theme=dark]) .boot{--g1:#6B9BDA;--g2:#A9C6F0;--g3:#EDB04E}
.boot{grid-auto-flow:row;align-content:center;justify-items:center;gap:14px}
.boot svg{stroke:url(#bootGrad);color:inherit}
.boot-s1{stop-color:var(--g1)}.boot-s2{stop-color:var(--g2)}.boot-s3{stop-color:var(--g3)}
.boot-dot{fill:url(#bootGrad)}
@keyframes boot-arc{0%,15%{opacity:.2}40%{opacity:1}75%,100%{opacity:.2}}
.boot-word{font:600 22px/1 var(--serif);letter-spacing:.01em;background:linear-gradient(100deg,var(--g1) 0%,var(--g2) 35%,var(--g3) 50%,var(--g2) 65%,var(--g1) 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:boot-shine 2.2s ease-in-out infinite}
@keyframes boot-shine{0%{background-position:100% 0}100%{background-position:0 0}}
@media (prefers-reduced-motion:reduce){.boot-word{animation:none;background-position:50% 0}}
.boot svg{width:76px;height:76px}
.boot-a1,.boot-a2{opacity:.35}
@keyframes boot-arc{0%,15%{opacity:.35}40%{opacity:1}75%,100%{opacity:.35}}
.boot-word{font-size:28px;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(90deg,var(--g1),var(--g2),var(--g3),var(--g2),var(--g1));background-size:300% 100%;animation:boot-shine 2.8s ease-in-out infinite alternate}
@keyframes boot-shine{0%{background-position:0 0}100%{background-position:100% 0}}

/* Profile tab */
.pf .ed-card{border:0;padding:0;box-shadow:none;background:none}
.pf .ed-card legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pf textarea{width:100%;min-width:0;padding:10px 13px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font:inherit;font-size:14px;resize:vertical}
.pf textarea:focus,.pf input[type=url]:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.pf input[type=url]{width:100%;min-width:0;padding:10px 13px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.pf input.bad{border-color:var(--er)}
.pf .fld{font-size:12.5px}
.pf-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pf-lg{display:flex;flex-direction:column;gap:10px}
.pf-lg+.pf-lg{margin-top:10px}
.pf-lg-h{font:600 11.5px/1 var(--disp);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.pf-faq{display:flex;flex-direction:column;gap:12px}
.pf-q{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}
.pf-q-h{display:flex;justify-content:space-between;align-items:center}
.pf-q input{width:100%;padding:10px 13px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink);font-size:14px}
.pf-pub .share-row{margin:4px 0 12px}
.pf-meter{display:flex;flex-direction:column;gap:6px;margin:4px 0 14px}
.pf-meter small{font-size:12.5px;color:var(--ink-3)}
.pf-acts{align-items:center}
.pf-bar{position:sticky;bottom:0;z-index:20;margin-top:18px;padding:12px 0;background:linear-gradient(transparent,var(--bg) 30%)}
.pf-bar-in{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--sh2)}
.pf-state{margin-right:auto;font-size:13.5px;color:var(--ink-3)}
.pf-state.dirty{color:var(--wr-ink);font-weight:600}
@media (max-width:820px){.pf-links{grid-template-columns:1fr}}
.pf-acts>.btn{flex:0 0 auto;width:auto}
.pf-acts{display:flex;flex-wrap:wrap;gap:12px}

/* Profile tab, laid out: the form in a readable column, the panel beside it stays in view */
.pf-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.pf-main{display:flex;flex-direction:column;gap:16px;min-width:0;max-width:880px}
.pf-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:22px 24px 24px;box-shadow:var(--sh1);scroll-margin-top:20px}
.pf-card-h{margin-bottom:16px}
.pf-card-h h2{font:600 16.5px/1.3 var(--disp);margin:0;color:var(--ink)}
.pf-card-h p{margin:4px 0 0;font-size:13px;color:var(--ink-3)}
.pf-card-b{display:flex;flex-direction:column;gap:14px}
.pf-main .st-fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.pf-main .st-fld>span{font-size:12.5px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;gap:8px}
.pf-main .st-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pf-main input[type=text],.pf-main input[type=email]{width:100%;min-width:0;padding:10px 13px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.pf-main input[type=text]:focus,.pf-main input[type=email]:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
.pf-main .st-note{font-size:12.5px;color:var(--ink-3);margin:0}
.pf-main .st-acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pf-main .hr-row{grid-template-columns:140px auto 1fr;max-width:620px}
.pf-main .hr-presets .hr-pre{font-size:12px}
.pf-main .pay-list{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.pf-main .ar-dlist{max-height:220px;overflow:auto}
.pf-ic{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:5px;color:#fff;font:700 9.5px/1 var(--disp);font-style:normal;flex:none}
.pf-main .pf-read{margin:0}
.pf-bar{margin-top:0}
/* the side panel */
.pf-side{position:sticky;top:16px;display:flex;flex-direction:column;gap:14px}
.pf-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r3);padding:18px;box-shadow:var(--sh1);display:flex;flex-direction:column;gap:10px}
.pf-k{margin:0;font:600 11.5px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.pf-status{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.pf-status small{font-size:12.5px;color:var(--ink-3)}
.pf-url input{width:100%;padding:9px 11px;border:1px solid var(--line-2);border-radius:9px;background:var(--card-2);color:var(--ink);font:13px var(--mono)}
.pf-url-acts{display:flex;gap:8px;margin-top:8px}
.pf-box-acts .btn{width:100%}
.pf-box .st-meter{max-width:none}
.pf-box>small{font-size:12.5px;color:var(--ink-3)}
.pf-check{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}
.pf-check button{width:100%;display:flex;align-items:center;gap:10px;padding:7px 8px;border:0;border-radius:8px;background:none;color:var(--ink-2);font-size:13.5px;text-align:left;cursor:pointer}
.pf-check button:hover{background:var(--card-2)}
.pf-check i{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-2);font:700 10px/1 var(--disp);font-style:normal;flex:none}
.pf-check button.on{color:var(--ink)}
.pf-check button.on i{background:var(--ok);border-color:var(--ok);color:#fff}
.pf-refill{margin:4px 0 0;font-size:13px}
/* the preview: the top of the public page, small */
.pf-prev{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#F7F8FB}
.pf-prev-top{background:#1F3D66;color:#fff;padding:14px 14px 16px}
.pf-prev-who{display:flex;gap:10px;align-items:center}
.pf-prev-mark{width:32px;height:32px;border-radius:8px;background:#fff;color:#1F3D66;display:grid;place-items:center;font:700 15px/1 var(--disp);flex:none}
.pf-prev-who small{display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;opacity:.75}
.pf-prev-who b{display:block;font-size:15px;line-height:1.25}
.pf-prev-top p{margin:10px 0 0;font-size:12.5px;line-height:1.45;opacity:.9}
.pf-prev-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.pf-prev-acts span{font-size:11px;font-weight:600;padding:5px 9px;border-radius:7px;background:#fff;color:#1F3D66}
.pf-prev-acts span.wa{background:#1FAF5A;color:#fff}
.pf-prev-acts span.gh{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}
.pf-prev-list{margin:0;padding:10px 14px 12px 28px;color:#14192A;font-size:12px}
.pf-prev-list:empty{display:none}
.pf-prev-list li{margin:3px 0}
@media (max-width:1100px){.pf-layout{grid-template-columns:1fr}.pf-side{position:static;order:-1}.pf-main{max-width:none}}
@media (max-width:640px){.pf-main .st-pair,.pf-links{grid-template-columns:1fr}.pf-card{padding:18px 16px}.pf-main .hr-row{grid-template-columns:1fr}}
.pf-layout{grid-template-columns:minmax(0,880px) 340px;justify-content:start}
@media (max-width:1100px){.pf-layout{grid-template-columns:1fr}}
.pf-layout{grid-template-columns:minmax(0,1fr) 380px;justify-content:stretch}
.pf-main{max-width:none}
@media (max-width:1100px){.pf-layout{grid-template-columns:1fr}}
@media (max-width:640px){.pf-check,.pf-refill{display:none}.pf-side>.pf-box:nth-child(3){display:none}}
/* the preview: the real page, small; click to see it full size */
.pf-prev-h{display:flex;justify-content:space-between;align-items:center}
.pf-prev-h .link{font-size:13px}
.pf-thumb{position:relative;display:block;width:100%;height:330px;padding:0;margin:0;overflow:hidden;border:1px solid var(--line-2);border-radius:12px;background:#F5F6F9;cursor:zoom-in}
.pf-frame{position:absolute;top:0;left:0;width:1280px;height:1240px;border:0;transform-origin:0 0;transform:scale(.267);pointer-events:none;background:#F5F6F9}
.pf-thumb-cta{position:absolute;right:10px;bottom:10px;padding:6px 11px;border-radius:999px;background:rgba(20,25,42,.78);color:#fff;font-size:12px;font-weight:600;opacity:0;transition:opacity .15s}
.pf-thumb:hover .pf-thumb-cta,.pf-thumb:focus-visible .pf-thumb-cta{opacity:1}
.pf-modal{position:fixed;inset:0;z-index:100;background:rgba(8,14,28,.72);display:grid;place-items:center;padding:24px}
.pf-win{width:min(1320px,100%);height:min(92vh,100%);display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--sh2)}
.pf-win-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}
.pf-win-bar>div:first-child{margin-right:auto;display:flex;flex-direction:column}
.pf-win-bar small{font-size:12.5px;color:var(--ink-3)}
.pf-seg{display:inline-flex;padding:3px;border-radius:999px;background:var(--card-2);border:1px solid var(--line)}
.pf-seg button{border:0;background:none;color:var(--ink-3);font-size:13px;font-weight:600;padding:6px 14px;border-radius:999px;cursor:pointer}
.pf-seg button.on{background:var(--brand);color:#fff}
.pf-stage{flex:1;min-height:0;display:flex;justify-content:center;background:var(--card-3);overflow:auto}
.pf-big{width:100%;height:100%;border:0;background:#fff}
.pf-stage.phone{padding:20px 0}
.pf-stage.phone .pf-big{width:390px;height:100%;max-height:844px;border-radius:24px;border:8px solid #14192A;box-shadow:var(--sh2)}
@media (max-width:640px){.pf-modal{padding:0}.pf-win{height:100%;border-radius:0}.pf-seg{display:none}}

/* Shown / Hidden switches on the Profile tab */
.pf-fh{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:22px}
.pf-fh>label{font-size:12.5px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;gap:8px}
.pf-card-t{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pf-vis{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;color:var(--ok);cursor:pointer;user-select:none;flex:none}
.pf-vis input{position:absolute;opacity:0;width:1px;height:1px}
.pf-vis i{position:relative;width:28px;height:16px;border-radius:999px;background:var(--ok);transition:background .15s;flex:none}
.pf-vis i::after{content:"";position:absolute;top:2px;left:14px;width:12px;height:12px;border-radius:50%;background:#fff;transition:left .15s}
.pf-vis.off{color:var(--ink-4)}
.pf-vis.off i{background:var(--line-2)}
.pf-vis.off i::after{left:2px}
.pf-vis input:focus-visible+i{box-shadow:var(--ring)}
.st-fld.is-off>input,.st-fld.is-off>textarea{opacity:.5}
.pf-card.is-off .pf-card-b{opacity:.5}
.pf-card.is-off h2::after{content:"hidden from the page";margin-left:10px;font:600 11px var(--disp);color:var(--ink-4);vertical-align:2px}
/* quick answers */
.pf-facts{display:flex;flex-direction:column;gap:8px}
.pf-fact{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr) auto;gap:8px;align-items:center}
.pf-x{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:none;color:var(--ink-3);font-size:18px;line-height:1;cursor:pointer}
.pf-x:hover{color:var(--er-ink);border-color:var(--er)}
.pf-fact-ideas{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}
.pf-fact-ideas small{font-size:12.5px;color:var(--ink-3);margin-right:2px}
.pf-chip{border:1px dashed var(--line-2);background:none;color:var(--brand-2);border-radius:999px;padding:5px 11px;font-size:12.5px;font-weight:500;cursor:pointer}
.pf-chip:hover{border-style:solid;border-color:var(--brand-2);background:var(--brand-tint)}
.pf-chip.own{color:var(--ink-2)}
/* the preview window's AI views */
.pf-views{margin-right:4px}
.pf-stage.code{display:block;padding:0}
.pf-code{height:100%;display:flex;flex-direction:column;background:var(--card)}
.pf-code-h{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line)}
.pf-code-h p{margin:0;flex:1;font-size:13px;color:var(--ink-3);line-height:1.5}
.pf-code pre{margin:0;flex:1;overflow:auto;padding:16px 18px;font:12.5px/1.6 var(--mono);color:var(--ink);background:var(--card-2);white-space:pre-wrap;word-break:break-word}
@media (max-width:760px){.pf-fact{grid-template-columns:1fr auto}.pf-fact input:nth-child(2){grid-column:1}.pf-views button{padding:6px 9px;font-size:12px}}
.pf-suggest{margin-top:6px;padding:14px 16px;border:1px dashed var(--line-2);border-radius:12px;display:flex;flex-direction:column;gap:12px}
.pf-suggest-h{margin:0;font-size:13px;font-weight:600;color:var(--ink-2)}
.pf-ideas{display:flex;flex-direction:column;gap:6px}
.pf-ideas>small{font:600 11px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.pf-ideas-row{display:flex;flex-wrap:wrap;gap:6px}
.pf-ideas .pf-chip{text-align:left}
.pf-q-t{display:flex;align-items:center;gap:10px}
.pf-src{font:600 11px/1 var(--disp);color:var(--ink-3);background:var(--card-3);padding:4px 8px;border-radius:999px}
.pf-main .pay-list{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-rows:1fr;align-items:stretch}
.pf-main .pay{min-height:46px;align-items:center;white-space:nowrap}

/* Bookings tab */
.bk-k{margin:6px 0 0;font:600 11.5px/1 var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.bk-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.6fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}
.bk-row.pending{border-color:var(--wr);background:var(--wr-tint)}
.bk-row.declined,.bk-row.cancelled{opacity:.6}
.bk-when b,.bk-who b{display:block;font-size:14.5px}
.bk-when small,.bk-who small{display:block;font-size:12.5px;color:var(--ink-3)}
.bk-who a{color:var(--brand-2)}
.bk-note{font-style:italic}
.bk-warn{color:var(--er-ink)!important}
.bk-st{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.bk-st .pill{margin:0}
.bk-on{padding:2px 0 6px;border-bottom:1px solid var(--line)}
.bk-on b{font-size:14px}
.bk-chips{display:flex;flex-wrap:wrap;gap:6px}
.bk-chip{border:1px solid var(--line-2);background:var(--card-2);color:var(--ink-2);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer}
.bk-chip.on{background:var(--brand);border-color:var(--brand);color:#fff}
.bk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.bk select,.bk input[type=number],.bk input[type=date],.bk input[type=time],.bk input[type=url],.bk-door input{width:100%;min-width:0;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.bk-dates{display:flex;flex-direction:column;gap:8px}
.bk-date{display:grid;grid-template-columns:160px auto auto minmax(0,1fr) auto;gap:10px;align-items:center}
.bk-date.hol{grid-template-columns:160px auto 160px minmax(0,1fr) auto}
.bk-date input[type=text]{width:100%;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.bk-closed{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--ink-2);white-space:nowrap}
.bk-times{display:flex;align-items:center;gap:6px}
.bk-times input{width:120px}
.bk-pre{margin:10px 0 0;padding:12px 14px;border-radius:10px;background:var(--card-2);border:1px solid var(--line);font:12px/1.6 var(--mono);white-space:pre-wrap;word-break:break-word;color:var(--ink-2)}
.bk-how summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--brand-2)}
.bk-door{display:flex;flex-direction:column;gap:5px}
.bk-door small{font-size:12px;color:var(--ink-3)}
.bk-door input{font:12px var(--mono)}
@media (max-width:820px){.bk-row{grid-template-columns:1fr}.bk-st{justify-content:flex-start}.bk-date,.bk-date.hol{grid-template-columns:1fr 1fr}}
.pf-hrs{display:flex;flex-direction:column;max-width:460px}
.pf-hr{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--line);font-size:14px}
.pf-hr:first-child{border-top:0}
.pf-hr b{font-weight:600}
.pf-hr b.off{color:var(--ink-4);font-weight:400}
.pf-soon{margin:8px 0 0;font-size:13px;color:var(--ink-2)}
.pf-soon b{color:var(--wr-ink)}
.bk-prof{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.bk-prof a{font:13px var(--mono);color:var(--brand-2)}
.bk-dcard{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}
.bk-dhead{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:10px;align-items:center}
.bk-dhead input[type=text]{width:100%;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink);font-size:14px}
.bk-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bk-lab{width:70px;flex:none;font-size:12.5px;font-weight:600;color:var(--ink-3)}
.bk-seg{display:inline-flex;flex-wrap:wrap;padding:3px;border-radius:999px;background:var(--card);border:1px solid var(--line)}
.bk-seg label{position:relative;padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--ink-3);cursor:pointer}
.bk-seg label.on{background:var(--brand);color:#fff}
.bk-seg input{position:absolute;opacity:0;width:1px;height:1px}
.bk-seg label:has(input:focus-visible){box-shadow:var(--ring)}
@media (max-width:820px){.bk-dhead{grid-template-columns:1fr auto}.bk-dhead input[type=text]{grid-column:1/-1;grid-row:2}}
.hr-span{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.hr-more{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.hr-extra{display:inline-flex;align-items:center;gap:6px}
.hr-and{font-size:12px;color:var(--ink-3)}
.hr-x{width:26px;height:26px;border:1px solid var(--line);border-radius:7px;background:none;color:var(--ink-3);font-size:15px;line-height:1;cursor:pointer}
.hr-x:hover{color:var(--er-ink);border-color:var(--er)}
.hr-add{border:1px dashed var(--line-2);background:none;color:var(--brand-2);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}
.hr-add:hover{border-style:solid;background:var(--brand-tint)}
.pf-main .hr-row{max-width:none;grid-template-columns:140px minmax(0,1fr) auto}
.id-chip{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.id-chip code{font:600 13px var(--mono);padding:4px 9px;border-radius:7px;background:var(--card-3);color:var(--ink);letter-spacing:.02em}
.id-copy{border:1px solid var(--line-2);background:none;color:var(--ink-2);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;cursor:pointer}
.id-copy:hover{background:var(--card-2)}
.ob-usp{display:flex;flex-direction:column;gap:12px}
.ob-usp textarea{width:100%;min-height:62px;padding:11px 13px;border:1px solid var(--line-2);border-radius:12px;background:var(--card-2);color:var(--ink);font:inherit;font-size:14.5px;resize:vertical}
.ob-usp textarea.bad{border-color:var(--er)}
.ob-usp input{width:100%}
.ob-usp-row{display:flex;justify-content:space-between;gap:12px;margin-top:4px}
.ob-usp-hint{font-size:12.5px;color:var(--ink-3)}
.ob-usp-hint.bad{color:var(--er-ink)}
.ob-usp-n{font-size:12px;color:var(--ink-4);white-space:nowrap}
.gc-list{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:10px 18px;margin:6px 0 14px}
.gc-list dt{color:var(--ink-3);font-size:13px;align-self:center}
.gc-list dd{margin:0;font-size:14px;color:var(--ink)}
.gc-list select{max-width:100%;min-width:240px}
.log-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px;max-width:420px}
.log-list li{display:flex;justify-content:space-between;padding:8px 12px;border:1px solid var(--line);border-radius:10px}
.rp-goal{display:grid;grid-template-columns:minmax(160px,260px) 1fr;gap:8px 18px;margin:4px 0 0}
.rp-goal dt{color:var(--ink-3);font-size:13px}
.rp-goal dd{margin:0;font-weight:600}
.rp-table th.rp-you{color:var(--accent-ink,var(--ink))}
/* the side-by-side table in the full report */
td.rp-good{color:var(--ok)}td.rp-mid{color:var(--wr-ink)}td.rp-bad{color:var(--er)}
/* the site at a glance (public/sitefacts.js), in the app and the report: surfaces, not borders */
.sf-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:2px 0 24px}
.sf-stat{--t:var(--ink-3);background:color-mix(in srgb,var(--t) 5%,var(--card-2));border-radius:12px;padding:10px 12px 11px;display:flex;flex-direction:column;gap:2px;min-width:0}
.sf-stat.sf-good{--t:var(--ok)}.sf-stat.sf-mid{--t:var(--wr)}.sf-stat.sf-bad{--t:var(--er)}
.sf-stat-top{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--ink-3);font-size:11.5px;line-height:1.3}
.sf-stat b{font-size:18px;font-weight:600;letter-spacing:-.01em;line-height:1.2;color:var(--ink);margin-top:4px}
.sf-stat small{color:var(--ink-3);font-size:11.5px;line-height:1.35;overflow-wrap:anywhere}
.sf-chip{font-style:normal;font-size:10px;font-weight:600;letter-spacing:.02em;padding:1px 7px;flex:none;border-radius:999px;background:color-mix(in srgb,var(--t) 16%,transparent);color:var(--t)}
.sf-stat.sf-mid .sf-chip{color:var(--wr-ink)}
.sf-sec{margin:0 0 30px}
.sf-sec-h{margin:0 0 14px}
.sf-sec-h h4{font-size:16px;font-weight:600;color:var(--ink);margin:0 0 3px;letter-spacing:-.01em}
.sf-sec-h p{margin:0;color:var(--ink-3);font-size:13px;max-width:70ch}
.sf-provs{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.sf-prov{--t:var(--ink-3);display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:var(--card-2);min-width:0}
.sf-prov.sf-mid{background:color-mix(in srgb,var(--wr) 9%,var(--card-2))}.sf-prov.sf-bad{background:color-mix(in srgb,var(--er) 9%,var(--card-2))}
.sf-prov .sf-logo{width:38px;height:38px;border-radius:11px}
.sf-prov .sf-logo svg{width:20px;height:20px}
.sf-prov-n{display:flex;flex-direction:column;min-width:0}
.sf-prov-n small{color:var(--ink-3);font-size:11.5px;letter-spacing:.01em}
.sf-prov-n b{font-size:14px;font-weight:600;line-height:1.3;overflow-wrap:break-word}
.sf-prov-n span{color:var(--ink-3);font-size:12px;overflow-wrap:anywhere}
.sf-prov.sf-mid .sf-prov-n span{color:var(--wr-ink)}.sf-prov.sf-bad .sf-prov-n span{color:var(--er)}
.sf-note{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:var(--brand-tint);color:var(--ink-2);font-size:13px}
.sf-meterbox{background:var(--card-2);border-radius:16px;padding:14px 16px;margin:0 0 12px}
.sf-meter{display:flex;height:8px;border-radius:999px;overflow:hidden;background:var(--card-3);gap:2px}
.sf-meter span{display:block;height:100%}
.sf-meter .sf-good{background:var(--ok)}.sf-meter .sf-mid{background:var(--wr)}.sf-meter .sf-bad{background:var(--er)}
.sf-key{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px;font-size:12.5px;color:var(--ink-2)}
.sf-key span,.sf-st,.sf-co li{display:inline-flex;align-items:center;gap:7px}
.sf-key i,.sf-st i,.sf-v i,.sf-co li i{width:8px;height:8px;border-radius:50%;flex:none;background:var(--ink-4)}
.sf-good>i,.sf-co li.sf-good i{background:var(--ok)}.sf-mid>i,.sf-co li.sf-mid i{background:var(--wr)}.sf-bad>i,.sf-co li.sf-bad i{background:var(--er)}
.sf-cos{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:8px;align-items:start}
.sf-co{background:var(--card-2);border-radius:14px;transition:background .15s}
.sf-co:hover{background:color-mix(in srgb,var(--ink) 4%,var(--card-2))}
.sf-co.sf-mid{background:color-mix(in srgb,var(--wr) 9%,var(--card-2))}
.sf-co.sf-bad{background:color-mix(in srgb,var(--er) 9%,var(--card-2))}
.sf-co summary{list-style:none;display:flex;align-items:center;gap:11px;padding:10px 12px;cursor:pointer;border-radius:14px;min-width:0}
.sf-co summary::-webkit-details-marker{display:none}
.sf-co summary:focus-visible{outline:none;box-shadow:var(--ring)}
.sf-logo{width:32px;height:32px;border-radius:9px;background:var(--card);color:var(--ink);display:grid;place-items:center;flex:none;box-shadow:0 1px 2px rgba(14,22,39,.08)}
.sf-logo svg{width:17px;height:17px;fill:currentColor}
.sf-logo.sf-ini{font:700 12px var(--disp);letter-spacing:.02em;color:var(--ink-2)}
.sf-co-n{display:flex;flex-direction:column;min-width:0;flex:1}
.sf-co-n b{font-size:13.5px;font-weight:600;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-co-n small{color:var(--ink-3);font-size:11.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-st{font-size:11.5px;font-weight:600;color:var(--ink-2);white-space:nowrap;flex:none}
.sf-st.sf-good{color:var(--ok)}.sf-st.sf-mid{color:var(--wr-ink)}.sf-st.sf-bad{color:var(--er)}
.sf-co ul{list-style:none;margin:0;padding:2px 12px 12px 55px;display:grid;gap:7px}
.sf-co li{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:8px;font-size:12.5px}
.sf-co li code{font:12px var(--mono);color:var(--ink);overflow-wrap:anywhere;background:none;padding:0}
.sf-co li.sf-bad code{color:var(--er)}.sf-co li.sf-mid code{color:var(--wr-ink)}
.sf-co li small{color:var(--ink-3);font-size:11.5px}
.sf-tabs{display:flex;gap:4px;padding:4px;background:var(--card-2);border-radius:12px;overflow-x:auto;scrollbar-width:none;margin:0 0 6px}
.sf-tabs::-webkit-scrollbar{display:none}
.sf-tabs button{flex:none;display:inline-flex;align-items:center;gap:7px;border:0;background:none;color:var(--ink-3);font:600 13px var(--disp);padding:8px 13px;border-radius:9px;cursor:pointer;white-space:nowrap}
.sf-tabs button:hover{color:var(--ink)}
.sf-tabs button[aria-selected="true"]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(14,22,39,.12)}
.sf-tabs button:focus-visible{outline:none;box-shadow:var(--ring)}
.sf-tabs em{font-style:normal;font-size:11px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-grid;place-items:center;background:var(--wr-tint);color:var(--wr-ink)}
.sf-panel{padding:8px 4px 0}
@media (min-width:900px){.sf-panel .sf-list{display:grid;grid-template-columns:1fr 1fr;column-gap:44px}.sf-panel .sf-list li:nth-child(2){border-top:0}}
.sf-panel h4{display:none}
.sf-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px 28px;margin:0 0 30px}
.sf-group h4{font-size:14px;font-weight:600;color:var(--ink);margin:0 0 4px}
.sf-list{list-style:none;margin:0;padding:0}
.sf-list li{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:11px 0;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent);font-size:13.5px}
.sf-list li:first-child{border-top:0}
.sf-k{color:var(--ink-2);min-width:0}
.sf-v{display:block;font-weight:600;color:var(--ink);text-align:right;overflow-wrap:anywhere;min-width:0;max-width:62%}
.sf-v.sf-good{color:var(--ok)}.sf-v.sf-mid{color:var(--wr-ink)}.sf-v.sf-bad{color:var(--er)}
.sf-v i{display:inline-block;margin-right:7px;vertical-align:.1em}
.sf-pages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.sf-pages li{background:var(--card-2);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.sf-pg-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sf-pg-n{width:22px;height:22px;border-radius:7px;display:inline-grid;place-items:center;font:700 11.5px var(--disp);background:var(--card);color:var(--ink-2)}
.sf-chip-d{font-size:11px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.sf-chip-d.sf-good{background:var(--ok-tint);color:var(--ok)}.sf-chip-d.sf-mid{background:var(--wr-tint);color:var(--wr-ink)}.sf-chip-d.sf-bad{background:var(--er-tint);color:var(--er)}
.sf-pg-t{font-size:14px;font-weight:600;line-height:1.4;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}
.sf-pg-path{font:12px var(--mono);color:var(--ink-3);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;align-self:flex-start;max-width:100%}
a.sf-pg-path:hover{color:var(--brand-ink);text-decoration:underline}
a.sf-pg-path::after{content:" ↗";opacity:.6}
.sf-pw{display:flex;align-items:center;gap:10px;margin-top:4px}
.sf-track{flex:1;height:6px;border-radius:999px;background:var(--card-3);overflow:hidden}
.sf-bar{display:block;height:100%;border-radius:999px;background:var(--brand-3)}
.sf-bar.sf-good{background:var(--ok)}.sf-bar.sf-mid{background:var(--wr)}.sf-bar.sf-bad{background:var(--er)}
.sf-pg-w{font-size:12px;color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums}
.sf-pg-w b{color:var(--ink);font-weight:600;font-size:13px}
@media (max-width:640px){.sf-provs{grid-template-columns:1fr 1fr}.sf-prov{flex-direction:column;align-items:flex-start;gap:8px}.sf-stats{grid-template-columns:1fr 1fr}.sf-stat b{font-size:16px}.sf-stat-top{flex-direction:column;align-items:flex-start;gap:6px}.sf-cos{grid-template-columns:1fr 1fr}.sf-co[open]{grid-column:1/-1}.sf-co:not([open]) .sf-co-n small{display:none}.sf-co:not([open]) .sf-st{font-size:0;gap:0}.sf-co:not([open]) summary{padding:9px 10px;gap:9px}.sf-co ul{padding-left:12px}.sf-pages{grid-template-columns:1fr}.sf-list li{flex-direction:column;gap:2px}.sf-v{text-align:left;max-width:none}}
@media print{.sf-co,.sf-group,.sf-stat{break-inside:avoid}.sf-co{background:none;border:1px solid var(--line)}}
@media (max-width:640px){.gc-list,.rp-goal{grid-template-columns:1fr}.gc-list dt,.rp-goal dt{margin-top:6px}.log-row{grid-template-columns:1fr}}
.gc-acts{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.pf-pin{grid-column:1/-1;margin-top:6px;padding-top:14px;border-top:1px solid var(--line)}
.pf-pin .pf-fh{display:flex;align-items:center;gap:10px}
.pf-pin-acts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.pf-pin-paste{display:flex;gap:8px;margin-top:10px}
.pf-pin-paste input{flex:1;min-width:0;height:38px;padding:0 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font:inherit;font-size:14px}
.pf-pin-map{display:block;width:100%;height:220px;border:0;border-radius:12px;margin-top:12px}
.pf-pin-pick{margin-top:12px;display:grid;gap:10px}
.pf-pin-pick gmp-place-autocomplete{width:100%}
.pf-pin-gmap{width:100%;height:340px;border-radius:12px;overflow:hidden;border:1px solid var(--line)}
.pf-pin .st-note.bad{color:var(--er-ink)}
/* the "i" beside a setting, and what it opens */
.info-label{display:inline-flex;align-items:center;gap:8px}
.info-wrap{position:relative;display:inline-flex}
.info-i{width:18px;height:18px;padding:0;border-radius:50%;border:1px solid var(--line-2);background:transparent;color:var(--ink-3);font:600 11px/16px Georgia,'Times New Roman',serif;font-style:italic;cursor:pointer;display:inline-grid;place-items:center}
.info-i:hover,.info-wrap.open .info-i{color:var(--ink);border-color:var(--ink-3)}
.info-i:focus-visible{outline:2px solid var(--wr,#E8A33D);outline-offset:2px}
.info-pop{display:none;position:absolute;z-index:30;top:calc(100% + 8px);left:-12px;width:min(300px,78vw);padding:11px 13px;border-radius:10px;background:var(--card);border:1px solid var(--line-2);box-shadow:0 10px 30px rgba(0,0,0,.35);color:var(--ink-2);font-size:13px;font-weight:400;line-height:1.5;white-space:normal}
.info-wrap.open .info-pop{display:block}
@media (max-width:640px){.info-pop{left:auto;right:-8px}}
.pf-pin-paste-box{margin-top:10px}
.pf-pin-help{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.pf-pin-help summary{cursor:pointer;font-size:13.5px;color:var(--ink-2)}
.pf-pin-help[open] summary{margin-bottom:8px}
.pf-pin-how{margin:8px 0}
.pf-pin-how b{font-size:13.5px}
.pf-pin-how ol{margin:6px 0 0;padding-left:20px;font-size:13.5px;line-height:1.6;color:var(--ink-2)}
.pf-pin-mapbox{position:relative;margin-top:12px}
.pf-pin-mapbox .pf-pin-map{margin-top:0}
.pf-pin-hit{position:absolute;inset:0;border-radius:12px;cursor:pointer}
.pf-pin-hit:focus-visible{outline:2px solid var(--wr,#E8A33D);outline-offset:2px}
.pf-pin-open{display:inline-block;margin-top:6px;font-size:13px}
@media (max-width:640px){
  .hr-row, .pf-main .hr-row{grid-template-columns:1fr !important}
}
.info-label > label{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.acc-list .acc.off{opacity:.55;cursor:not-allowed}
.acc-list .acc.off input{cursor:not-allowed}
@media (max-width:640px){
  .info-wrap{position:static}
  .info-label{flex-wrap:wrap}
  .info-pop{position:static;width:auto;max-width:100%;margin-top:6px;flex-basis:100%}
}

/* ---- Site check (mockup.js hSiteCheck): a panel of scores, a section bar, cards for the first fixes, filtered checks ---- */
.sc-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--sh1);margin:0 0 14px}
.sc-score{display:flex;gap:22px;align-items:flex-start;min-width:0}
.sc-score .ring{flex:none}
.sc-score-t{display:flex;flex-direction:column;gap:8px;min-width:0}
.sc-verdict{align-self:flex-start;font:600 13px var(--disp);padding:4px 11px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.sc-verdict.sc-good{background:var(--ok-tint);color:var(--ok)}.sc-verdict.sc-mid{background:var(--wr-tint);color:var(--wr-ink)}.sc-verdict.sc-bad{background:var(--er-tint);color:var(--er)}
.sc-score-t p{margin:0;color:var(--ink-2);font-size:14px;line-height:1.5;max-width:46ch}
.sc-counts{display:flex;flex-wrap:wrap;gap:6px}
.sc-count{font-size:12.5px;color:var(--ink-2);background:var(--card-2);border-radius:999px;padding:4px 11px}
.sc-count b{font-weight:700}
.sc-count.sc-bad b{color:var(--er)}.sc-count.sc-mid b{color:var(--wr-ink)}.sc-count.sc-good b{color:var(--ok)}
.sc-when{color:var(--ink-3);font-size:12.5px}
.sc-score-t .run-row{margin-top:4px}
.sc-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;align-content:start}
.sc-area{--t:var(--ink-4);text-align:left;border:0;cursor:pointer;background:var(--card-2);border-radius:16px;padding:13px 14px;display:flex;flex-direction:column;gap:5px;color:var(--ink);font:inherit;transition:transform .15s,background .15s}
.sc-area:hover{background:color-mix(in srgb,var(--t) 9%,var(--card-2));transform:translateY(-1px)}
.sc-area:focus-visible{outline:none;box-shadow:var(--ring)}
.sc-area.sc-good{--t:var(--ok)}.sc-area.sc-mid{--t:var(--wr)}.sc-area.sc-bad{--t:var(--er)}
.sc-area small{color:var(--ink-3);font-size:12px;line-height:1.3}
.sc-area b{font-size:26px;font-weight:600;letter-spacing:-.02em;line-height:1}
.sc-track{display:block;height:5px;border-radius:999px;background:var(--card-3);overflow:hidden}
.sc-track i{display:block;height:100%;border-radius:999px;background:var(--t)}
.sc-area-n{font-size:11.5px;color:var(--ink-3)}
.sc-alert{border-radius:18px;margin:0 0 14px}
.sc-nav{position:sticky;top:64px;z-index:5;display:flex;gap:4px;padding:5px;margin:0 0 22px;width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none;background:color-mix(in srgb,var(--card) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:999px;box-shadow:var(--sh1)}
.sc-nav::-webkit-scrollbar{display:none}
.sc-nav button{border:0;background:none;color:var(--ink-2);font:600 13px var(--disp);padding:8px 15px;border-radius:999px;cursor:pointer;white-space:nowrap}
.sc-nav button:hover{background:var(--card-2);color:var(--ink)}
.sc-nav button:focus-visible{outline:none;box-shadow:var(--ring)}
.sc-sec{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--sh1);margin:0 0 14px;scroll-margin-top:124px}
.sc-sec-h{margin:0 0 18px}
.sc-sec-h h2{font:600 20px var(--disp);letter-spacing:-.015em;margin:0 0 4px;color:var(--ink)}
.sc-sec-h p{margin:0;color:var(--ink-3);font-size:13.5px;max-width:72ch}
.sc-fixgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.sc-fixcard{--t:var(--wr);background:color-mix(in srgb,var(--t) 7%,var(--card-2));border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}
.sc-fixcard.sc-fail{--t:var(--er)}
.sc-fix-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sc-num{width:24px;height:24px;border-radius:8px;display:inline-grid;place-items:center;font:700 12px var(--disp);background:var(--card);color:var(--ink);flex:none}
.sc-fixcard .sc-num{background:var(--t);color:#fff}
.sc-tag{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--card-3);color:var(--ink-2);text-transform:capitalize;white-space:nowrap}
.sc-area-tag{font-size:11.5px;color:var(--ink-3);margin-left:auto}
.sc-fixcard h4{margin:4px 0 0;font:600 16px var(--disp);color:var(--ink);letter-spacing:-.01em}
.sc-fixcard p{margin:0;color:var(--ink-2);font-size:13.5px;line-height:1.55}
.sc-lock{color:var(--ink-3);font-size:12px;margin:0}
.sc-lock::before{content:"🔒 ";filter:grayscale(1);opacity:.7}
.sc-more{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px}
.sc-more li{display:flex;align-items:center;gap:10px;background:var(--card-2);border-radius:12px;padding:9px 12px;font-size:13.5px;min-width:0}
.sc-more li>span:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc-site .sf-stats{margin-top:0}
.sc-toolbar{display:flex;flex-direction:column;gap:10px;margin:0 0 16px}
.sc-filters{display:inline-flex;align-self:flex-start;gap:4px;padding:4px;background:var(--card-2);border-radius:12px;max-width:100%;overflow-x:auto}
.sc-filters button{border:0;background:none;color:var(--ink-3);font:600 13px var(--disp);padding:7px 13px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.sc-filters button[aria-pressed="true"]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(14,22,39,.12)}
.sc-filters em{font-style:normal;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.sc-chips{display:flex;flex-wrap:wrap;gap:6px}
.sc-chips button{border:1px solid var(--line);background:none;color:var(--ink-2);font:500 12.5px var(--disp);padding:5px 12px;border-radius:999px;cursor:pointer}
.sc-chips button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--card)}
.sc-filters button:focus-visible,.sc-chips button:focus-visible{outline:none;box-shadow:var(--ring)}
.sc-group{margin:0 0 18px}
.sc-group:last-child{margin-bottom:0}
.sc-group-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 6px;padding:0 4px}
.sc-group-h h3{font:600 14px var(--disp);margin:0;color:var(--ink)}
.sc-group-h span{font-size:12px;color:var(--ink-3)}
.sc-rows{display:grid;gap:4px}
.sc-row{background:var(--card-2);border-radius:12px}
.sc-row summary{list-style:none;display:flex;align-items:center;gap:11px;padding:10px 12px;cursor:pointer;border-radius:12px;min-width:0}
.sc-row summary::-webkit-details-marker{display:none}
.sc-row summary:hover{background:color-mix(in srgb,var(--ink) 4%,var(--card-2))}
.sc-row summary:focus-visible{outline:none;box-shadow:var(--ring)}
.sc-row summary>i{font-style:normal;font-weight:700;font-size:11px;width:20px;height:20px;border-radius:7px;display:grid;place-items:center;flex:none;background:var(--card-3);color:var(--ink-3)}
.sc-row.sc-pass summary>i{background:var(--ok-tint);color:var(--ok)}.sc-row.sc-warn summary>i{background:var(--wr-tint);color:var(--wr-ink)}.sc-row.sc-fail summary>i{background:var(--er-tint);color:var(--er)}
.sc-row-l{flex:1;min-width:0;font-size:13.5px;font-weight:500;color:var(--ink);overflow-wrap:anywhere}
.sc-chev{width:8px;height:8px;border-right:2px solid var(--ink-4);border-bottom:2px solid var(--ink-4);transform:rotate(45deg);margin:0 4px 3px 2px;transition:transform .15s;flex:none}
.sc-row[open] .sc-chev{transform:rotate(225deg);margin-bottom:-3px}
.sc-row>p{margin:0;padding:0 14px 12px 43px;color:var(--ink-2);font-size:13px;line-height:1.55;overflow-wrap:anywhere}
.sc-empty{margin:6px 4px;color:var(--ink-3);font-size:13.5px}
@media (max-width:900px){.sc-hero{grid-template-columns:1fr}}
@media (max-width:640px){.sc-hero,.sc-sec{padding:18px 16px;border-radius:20px}.sc-score{flex-direction:column;gap:14px}.sc-score .ring{width:104px!important;height:104px!important}.sc-areas{grid-template-columns:1fr 1fr}.sc-area b{font-size:22px}.sc-nav{top:58px}.sc-row>p{padding-left:14px}.sc-area-tag{margin-left:0;width:100%}}
@media print{.sc-nav{display:none}}
.sc-why{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.sc-clamp{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(4 * 1.55em)}
.sc-fixcard .sc-lock{margin-top:auto;padding-top:6px}
.sc-dialog{border:0;padding:0;background:transparent;max-width:min(600px,calc(100vw - 32px));width:100%;color:var(--ink)}
.sc-dialog::backdrop{background:rgba(8,14,28,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sc-dialog[open]{animation:pop .3s cubic-bezier(.2,.8,.2,1)}
.sc-dlg{--t:var(--wr);background:var(--card);border:1px solid var(--line);border-radius:24px;padding:22px 24px 20px;box-shadow:0 40px 80px -30px rgba(0,0,0,.55);max-height:calc(100vh - 48px);overflow:auto;display:flex;flex-direction:column;gap:10px}
.sc-dlg.sc-fail{--t:var(--er)}
.sc-dlg .sc-num{background:var(--t);color:#fff}
.sc-dlg .sc-area-tag{margin-left:auto}
.sc-dlg h3{margin:6px 0 0;font:600 20px var(--disp);letter-spacing:-.01em}
.sc-dlg p{margin:0;color:var(--ink-2);font-size:14.5px;line-height:1.65}
.sc-dlg .sc-dlg-detail{color:var(--ink-3);font-size:13.5px;padding-top:10px;border-top:1px solid var(--line)}
.sc-dlg-x{border:0;background:var(--card-2);color:var(--ink-2);width:32px;height:32px;border-radius:10px;font-size:20px;line-height:1;cursor:pointer;margin-left:8px;flex:none}
.sc-dlg-x:hover{color:var(--ink);background:var(--card-3)}
.sc-dlg-x:focus-visible{outline:none;box-shadow:var(--ring)}
.sc-readmore{border:0;background:none;padding:0;color:var(--brand-ink);font:600 12.5px var(--disp);cursor:pointer}
.sc-readmore:hover{text-decoration:underline}
/* the report's area tiles are facts, not buttons */
.rp-areas{margin-top:4px}.rp-areas .sc-area{cursor:default}.rp-areas .sc-area:hover{transform:none;background:var(--card-2)}
.rs-sum .sc-counts{margin-top:8px}
@media print{.sc-fixcard,.sc-area{break-inside:avoid}}
.st-note.st-warn{color:var(--wr-ink);font-weight:500}
.st-warnbox{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:8px;padding:10px 12px;border-radius:12px;background:var(--wr-tint)}
.st-warnbox.hide{display:none}
.st-warnbox .st-note{margin:0}
.ob-back{margin:0 0 14px}
.ob-back .link{font-weight:600}
/* the header's business picker (mockup.js bizPicker) */
.dash-nav:has(.biz-pick){position:relative;padding:0;background:none;border:0;border-radius:0;overflow:visible} /* the old pill row scrolled sideways on a phone, which clipped the panel */
.biz-pick{display:inline-flex;align-items:center;gap:10px;padding:5px 12px 5px 5px;border-radius:999px;border:1px solid var(--line-2);background:var(--card-2);color:var(--ink);cursor:pointer;max-width:320px;font:inherit}
.biz-pick:hover{border-color:var(--ink-4)}
.biz-pick:focus-visible{outline:none;box-shadow:var(--ring)}
.biz-av{--h:212;width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;flex:none;font:700 13.5px var(--disp);color:hsl(var(--h) 70% 92%);background:hsl(var(--h) 45% 32%)}
.biz-av.sm{width:30px;height:30px;font-size:12.5px}
.biz-pick-t{display:flex;flex-direction:column;align-items:flex-start;min-width:0;line-height:1.2}
.biz-pick-t b{font-size:14px;font-weight:600;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.biz-pick-t small{font-size:11.5px;color:var(--ink-3)}
.biz-chev{width:7px;height:7px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);transform:rotate(45deg);margin:0 4px 4px 4px;flex:none;transition:transform .15s}
.biz-pick[aria-expanded="true"] .biz-chev{transform:rotate(225deg);margin-bottom:-3px}
.biz-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:min(340px,calc(100vw - 32px));background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh2);padding:8px;display:flex;flex-direction:column;gap:6px;animation:pop .18s ease-out}
.biz-pop.hide{display:none}
.biz-search{height:38px;border:1px solid var(--line-2);border-radius:11px;background:var(--card-2);color:var(--ink);padding:0 12px;font:inherit;font-size:13.5px}
.biz-search:focus{outline:none;box-shadow:var(--ring)}
.biz-list{list-style:none;margin:0;padding:0;max-height:min(360px,60vh);overflow:auto;display:grid;gap:2px}
.biz-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:12px;background:none;color:var(--ink);cursor:pointer;text-align:left;font:inherit}
.biz-item:hover,.biz-item:focus-visible{background:var(--card-2);outline:none}
.biz-item.on{background:var(--brand-tint)}
.biz-item-t{display:flex;flex-direction:column;min-width:0;flex:1}
.biz-item-t b{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.biz-item-t small{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.biz-tag{font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--wr-tint);color:var(--wr-ink)}
.biz-tick{color:var(--ok);font-weight:700}
.biz-none{padding:10px;color:var(--ink-3);font-size:13px}
.biz-add{border:0;border-top:1px solid var(--line);background:none;color:var(--brand-ink);font:600 13.5px var(--disp);padding:10px 10px 6px;text-align:left;cursor:pointer;border-radius:0 0 10px 10px}
.biz-add:hover{text-decoration:underline}
@media (max-width:760px){.dash-nav:has(.biz-pick){order:9;width:100%}.biz-pick{max-width:none;width:100%}.biz-pick-t{flex:1}.biz-pop{left:0;right:auto;width:100%}}
.st-meter-h{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;margin:0 0 6px;max-width:420px} /* the count ends where its bar ends */
.st-usage>p{max-width:520px}
.st-meter-h b{font-weight:600}.st-meter-h span{color:var(--ink-2);font-variant-numeric:tabular-nums}
.st-usage+.st-usage{margin-top:14px}
.st-usage.full .st-meter i{background:var(--er)}
.st-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.st-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--brand-2)}
.st-check span{display:flex;flex-direction:column;gap:2px}.st-check small{color:var(--ink-3);font-size:12.5px}
.ob-partial{margin:0 0 14px;padding:10px 14px;border-radius:12px;background:var(--wr-tint);color:var(--wr-ink);font-size:13.5px}

/* ---- One colour code (6 Oct 2026): flat navy, blue and amber from the tokens above, in light and dark. No gradient
   fills, gradient text or glows; the layers above that still carry them are overridden here, last. ---- */
:root{--grad:var(--brand);--grad-text:linear-gradient(var(--brand-2),var(--brand-2));--glow:none}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--grad:#3B6BAA;--grad-text:linear-gradient(var(--brand-ink),var(--brand-ink))}}
:root[data-theme=dark]{--grad:#3B6BAA;--grad-text:linear-gradient(var(--brand-ink),var(--brand-ink))}
body::before,.hv::before{background:none!important}
.bar i.lo{background:var(--er)}.bar i.mid{background:var(--wr)}.bar i.hi{background:var(--ok)}
.ask::before{background:var(--wr)}.ask.ok::before{background:var(--ok)}
.tile::before{background:var(--brand)}.tile.good::before{background:var(--ok)}.tile.bad::before{background:var(--er)}
.gist,.ed-code,.asst-head,.ba .after{background:var(--brand-tint)}
.rot-w,.intro-side h2 em,.boot-word{background:none!important;-webkit-text-fill-color:currentColor!important;animation:none!important}
.rot-w,.intro-side h2 em{color:var(--wr-ink)}
.boot-word{color:var(--brand-ink)}
/* the theme switch: a round button the size of the account button */
.theme-btn{width:38px;height:38px;padding:0!important;display:inline-grid;place-items:center;border-radius:50%}
.theme-btn svg{width:18px;height:18px}
.rp-theme{margin-left:8px}
.st-theme .acc{cursor:pointer}

/* ---- Oftheard navy buttons (6 Oct 2026): the main action is navy with white text, as on oftheard.in; amber stays an
   accent (dots, warnings, bars), never a button fill. The header's theme switch is a bare icon and the account button a
   filled navy initial, so the two no longer look alike. ---- */
:root{--btn-bg:#1F3D66;--btn-bg-h:#17304F;--btn-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--btn-bg:#3B6BAA;--btn-bg-h:#4C82C9}}
:root[data-theme=dark]{--btn-bg:#3B6BAA;--btn-bg-h:#4C82C9}
.btn.amber,a.btn.amber{background:var(--btn-bg);color:var(--btn-ink);border-color:var(--btn-bg);box-shadow:none}
.btn.amber:hover:not(:disabled),a.btn.amber:hover{background:var(--btn-bg-h);border-color:var(--btn-bg-h);color:var(--btn-ink);filter:none}
.btn.amber:focus-visible{outline:2px solid var(--brand-3);outline-offset:2px}
.btn.amber:disabled{opacity:.6}
.theme-btn,.btn-band.theme-btn{background:transparent;border-color:transparent;box-shadow:none;color:var(--ink-3)}
.theme-btn:hover,.btn-band.theme-btn:hover{background:var(--card-2);color:var(--ink)}
.acct-btn.btn-band{background:var(--btn-bg);border-color:var(--btn-bg);color:#fff;box-shadow:none}
.acct-btn.btn-band:hover{background:var(--btn-bg-h);border-color:var(--btn-bg-h)}

/* the "I am human" box (challenge.js) */
.cap{margin:6px 0 2px}.cap[data-mounted="1"]{min-height:65px}.cap.capfail{color:var(--er);font-size:13px}

/* Campaigns: cards for the list, a hero with the clock and the numbers that move,
   a month-by-month chart, the questions as one row each, and the form in four
   numbered parts with a bar that stays in view. Tinted surfaces, no borders inside. */
.cp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.cp-head>div{min-width:0}
.cp-head .link{font-size:14px;margin-bottom:6px}
.cp-banner{background:var(--brand-tint);color:var(--ink);border-radius:14px;padding:12px 16px;margin:0 0 16px;font-size:14px}
.cp-empty{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 24px}
.cp-empty-mark{font-size:34px;line-height:1;color:var(--brand-2)}
.cp-empty h2{margin:0;font:600 20px var(--disp);color:var(--ink)}
.cp-empty p{margin:0 0 8px;color:var(--ink-3);max-width:52ch}
.cp-filter{display:flex;gap:4px;padding:5px;margin:0 0 16px;width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none;background:var(--card);border:1px solid var(--line);border-radius:999px;box-shadow:var(--sh1)}
.cp-filter button{border:0;background:none;color:var(--ink-2);font:600 13px var(--disp);padding:7px 14px;border-radius:999px;cursor:pointer;display:inline-flex;gap:7px;align-items:center;white-space:nowrap}
.cp-filter button span{font-size:11.5px;color:var(--ink-3);background:var(--card-2);border-radius:999px;padding:1px 7px}
.cp-filter button:hover{background:var(--card-2)}
.cp-filter button.on{background:var(--brand);color:#fff}
.cp-filter button.on span{background:rgba(255,255,255,.2);color:#fff}
.cp-filter button:focus-visible{outline:none;box-shadow:var(--ring)}
.cp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px;margin:0 0 24px}
.cp-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--sh1);display:flex;flex-direction:column;gap:10px;cursor:pointer;min-width:0;transition:transform .15s,box-shadow .15s,border-color .15s}
.cp-card:hover{transform:translateY(-2px);box-shadow:var(--sh2);border-color:var(--line-2)}
.cp-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.cp-state{font:600 12px var(--disp);padding:4px 10px;border-radius:999px;background:var(--card-3);color:var(--ink-2);white-space:nowrap;align-self:flex-start}
.cp-state.cp-active{background:var(--ok-tint);color:var(--ok)}
.cp-state.cp-pending,.cp-state.cp-owner{background:var(--wr-tint);color:var(--wr-ink)}
.cp-state.cp-draft{background:var(--brand-tint);color:var(--brand-ink)}
.cp-by{font-size:12px;color:var(--ink-3);white-space:nowrap}
.cp-card h3{margin:2px 0 0;font:600 19px/1.25 var(--disp);letter-spacing:-.015em;color:var(--ink)}
.cp-goal{margin:0;color:var(--ink-2);font-size:14px;line-height:1.5}
.cp-track{display:block;height:6px;border-radius:999px;background:var(--card-3);overflow:hidden}
.cp-track i{display:block;height:100%;border-radius:999px;background:var(--brand-2);transition:width .3s}
.cp-track.wr i{background:var(--wr)}
.cp-track.ok i{background:var(--ok)}
.cp-time,.cp-next{display:grid;gap:7px;background:var(--card-2);border-radius:14px;padding:12px 14px}
.cp-time-t{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--ink-3)}
.cp-time-t b{color:var(--ink);font-weight:600}
.cp-next b{font-size:14px;color:var(--ink)}
.cp-next span{font-size:12.5px;color:var(--ink-3);line-height:1.45}
.cp-mini{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cp-mini>div{background:var(--card-2);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.cp-mini small{font-size:11.5px;color:var(--ink-3);font-weight:600}
.cp-mini b{font:600 26px/1.15 var(--disp);letter-spacing:-.02em;color:var(--ink)}
.cp-mini span{font-size:12px;color:var(--ink-3);line-height:1.35}
.cp-card-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:4px;font-size:12.5px;color:var(--ink-3)}
.cp-add{border:1.5px dashed var(--line-2);background:transparent;border-radius:22px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:220px;cursor:pointer;color:var(--ink-2);font:inherit;transition:border-color .15s,color .15s,background .15s}
.cp-add:hover{border-color:var(--brand-2);color:var(--brand-2);background:var(--card)}
.cp-add span{font-size:30px;line-height:1;font-weight:300}
.cp-add b{font-size:15px}
.cp-add small{font-size:12.5px;color:var(--ink-3)}
.cp-add:focus-visible{outline:none;box-shadow:var(--ring)}

.cp-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--sh1);margin:0 0 14px}
.cp-hero-l{display:flex;flex-direction:column;gap:12px;align-items:flex-start;min-width:0}
.cp-hero-l .cp-track{width:100%;height:8px}
.cp-clock{display:flex;align-items:baseline;gap:8px}
.cp-clock b{font:600 40px/1 var(--disp);letter-spacing:-.03em;color:var(--ink)}
.cp-clock span{font-size:16px;color:var(--ink-3)}
.cp-when{color:var(--ink-3);font-size:12.5px}
.cp-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;width:100%}
.cp-steps li{display:flex;gap:12px;align-items:flex-start}
.cp-dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:700 12px var(--disp);background:var(--card-3);color:var(--ink-3);flex:none}
.cp-steps li.done .cp-dot{background:var(--ok-tint);color:var(--ok)}
.cp-steps li.now .cp-dot{background:var(--wr);color:#1B2A4A}
.cp-steps b{display:block;font-size:14px;color:var(--ink);line-height:1.3}
.cp-steps li:not(.done):not(.now) b{color:var(--ink-3)}
.cp-steps small{display:block;font-size:12.5px;color:var(--ink-3)}
.cp-acts{display:flex;gap:8px;flex-wrap:wrap}
.cp-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;align-self:start}
.cp-kpi{background:var(--card-2);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:8px;min-width:0}
.cp-kpi small{font-size:12px;font-weight:600;color:var(--ink-3);line-height:1.3}
.cp-kpi b{font:600 32px/1 var(--disp);letter-spacing:-.03em;color:var(--ink)}
.cp-kpi.up b::after{content:" ↑";font-size:20px;color:var(--ok)}
.cp-kpi.down b::after{content:" ↓";font-size:20px;color:var(--er)}
.cp-kpi span{font-size:12.5px;color:var(--ink-3);line-height:1.4;margin-top:auto}
.cp-sec-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.cp-log{display:flex;gap:8px;flex-wrap:wrap}
.cp-log select,.cp-log input{height:40px;padding:0 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font:inherit;font-size:14px}
.cp-log input{width:120px}
.cp-log .btn{padding:8px 18px}
.cp-chart{display:flex;align-items:stretch;gap:10px;height:210px;padding:4px 2px 0;overflow-x:auto}
.cp-col{flex:1 0 48px;max-width:96px;display:flex;flex-direction:column;align-items:center;gap:6px}
.cp-col b{font-size:13px;color:var(--ink-2);font-weight:600}
.cp-bar-box{flex:1;width:100%;display:flex;align-items:flex-end}
.cp-bar-box i{display:block;width:100%;background:var(--brand-tint);border-radius:10px 10px 4px 4px}
.cp-col.last .cp-bar-box i{background:var(--brand-2)}
.cp-col.last b{color:var(--ink)}
.cp-col small{font-size:12px;color:var(--ink-3)}
.cp-nochart{background:var(--card-2);border-radius:16px;padding:22px;display:grid;gap:4px}
.cp-nochart b{color:var(--ink);font-size:14.5px}
.cp-nochart span{color:var(--ink-3);font-size:13px}
.cp-qs{display:grid;gap:6px}
.cp-q{display:grid;grid-template-columns:minmax(0,1.7fr);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:10px;align-items:center;background:var(--card-2);border-radius:14px;padding:12px 16px}
.cp-q>b{font-weight:500;font-size:14px;color:var(--ink);min-width:0}
.cp-q-h{background:none;padding:0 16px 2px;font-size:11.5px;font-weight:600;color:var(--ink-3)}
.cp-q-c small{display:none}
.cp-ans{display:inline-block;font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap}
.cp-ans.yes{background:var(--ok-tint);color:var(--ok)}
.cp-ans.no{background:var(--er-tint);color:var(--er-ink)}
.cp-ans.na{background:var(--card-3);color:var(--ink-3);font-weight:500}
.cp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.cp-facts>div{background:var(--card-2);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:3px;min-width:0}
.cp-facts small{font-size:12px;color:var(--ink-3)}
.cp-facts b{font-weight:500;font-size:14.5px;color:var(--ink)}

.cp-sec-h{display:flex;gap:14px;align-items:flex-start}
.cp-no{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--brand);color:#fff;font:700 14px var(--disp);flex:none;margin-top:1px}
.cp-part{display:flex;flex-direction:column;gap:10px;margin:0 0 22px;min-width:0}
.cp-part:last-child{margin-bottom:0}
.cp-part-h b{display:block;font-size:14.5px;color:var(--ink)}
.cp-part-h small{display:block;font-size:13px;color:var(--ink-3);margin-top:1px}
.cp-two{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px;margin:0 0 22px}
.cp-two:last-child{margin-bottom:0}
.cp-two .cp-part{margin:0}
.cp-chips{display:flex;flex-wrap:wrap;gap:8px}
.cp-chips .pay{border-radius:999px;padding:8px 14px;border-color:transparent}
.cp-chips .pay:has(input:checked){border-color:var(--brand)}
.cp-sec .acc{border-color:transparent}
.cp-sec .acc.on{border-color:var(--brand)}
.cp-seg{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.cp-seg .acc{padding:12px 14px}
.cp-seg-sm{display:flex;flex-wrap:wrap;gap:8px}
.cp-seg-sm .acc{align-items:center;padding:9px 14px;border-radius:999px;gap:8px}
.cp-seg-sm .acc b{font-size:14px;white-space:nowrap}
.cp-permit-list{grid-template-columns:1fr}
.cp-permit{align-items:flex-start;padding:14px 16px;line-height:1.5;border-color:transparent}
.cp-permit input{margin-top:3px}
.cp-count{font-size:12px;color:var(--ink-3)}
.cp-anchor{scroll-margin-top:124px}
.cp-bar{position:sticky;bottom:12px;z-index:6;display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;background:color-mix(in srgb,var(--card) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:20px;padding:12px 14px 12px 18px;box-shadow:var(--sh2);margin:8px 0 10px}
.cp-left{display:grid;gap:6px;min-width:150px;flex:1}
.cp-left b{font-size:14px;color:var(--ink)}
.cp-left .cp-track{max-width:240px}
.cp-bar-acts{display:flex;gap:8px;flex-wrap:wrap}
.cp-bar .sub.note,.cp-bar .sub.bad{flex-basis:100%;margin:0;font-size:13px}
.cp-foot{font-size:12.5px;color:var(--ink-3);margin:0 0 24px;max-width:80ch}
@media (max-width:760px){
  .cp-hero{grid-template-columns:1fr;padding:18px;gap:18px}
  .cp-two{grid-template-columns:1fr}
  .cp-grid{grid-template-columns:1fr}
  .cp-q{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr))}
  .cp-q>b{grid-column:1/-1}
  .cp-q-h{display:none}
  .cp-q-c small{display:block;font-size:11px;color:var(--ink-3);margin-bottom:3px}
  .cp-ans{white-space:normal}
  .cp-bar{bottom:8px;padding:12px}
  .cp-bar{gap:8px}
  .cp-left{grid-template-columns:auto 1fr;align-items:center;gap:10px}
  .cp-bar-acts{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .cp-bar-acts .btn{padding:10px 12px;font-size:13.5px}
  .cp-bar-acts .btn.amber{grid-column:1/-1;order:-1}
  .cp-clock b{font-size:34px}
  .cp-kpi b{font-size:28px}
  .cp-kpis,.cp-facts{grid-template-columns:1fr 1fr}
  .cp-kpi:last-child:nth-child(odd),.cp-facts>div:last-child:nth-child(odd){grid-column:1/-1}
}
/* the ask to the owner, and where the business loses (the campaign form's top) */
.cp-state.cp-sent,.cp-state.cp-opened{background:var(--wr-tint);color:var(--wr-ink)}
.cp-state.cp-agreed{background:var(--ok-tint);color:var(--ok)}
.cp-ask{display:flex;align-items:center;justify-content:space-between;gap:14px 20px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px 20px;box-shadow:var(--sh1);margin:0 0 14px}
.cp-ask.ok{background:var(--ok-tint);border-color:transparent;box-shadow:none}
.cp-ask-t{display:grid;gap:2px;min-width:0;flex:1}
.cp-ask-t b{font-size:15px;color:var(--ink)}
.cp-ask-t span{font-size:13.5px;color:var(--ink-3);max-width:70ch}
.cp-ask-steps{list-style:none;margin:0;padding:0;display:flex;gap:8px 28px;flex-wrap:wrap}
.cp-ask-steps li{display:flex;gap:10px;align-items:center}
.cp-ask-steps li.on .cp-dot{background:var(--ok-tint);color:var(--ok)}
.cp-ask-steps b{display:block;font-size:14px;color:var(--ink);line-height:1.2}
.cp-ask-steps li:not(.on) b{color:var(--ink-3)}
.cp-ask-steps small{font-size:12.5px;color:var(--ink-3)}
@media (max-width:760px){.cp-ask{padding:14px 16px}.cp-ask .btn{width:100%}}

/* trending searches under the campaign's questions */
.cp-trend{display:grid;gap:10px;background:var(--card-2);border-radius:16px;padding:14px 16px;margin-top:4px}
.cp-trend-h b{display:block;font-size:14px;color:var(--ink)}
.cp-trend-h small{display:block;font-size:12.5px;color:var(--ink-3)}
.cp-trend-list{display:flex;flex-wrap:wrap;gap:8px}
.cp-trend-chip{display:inline-flex;align-items:center;gap:8px;border:1px dashed var(--line-2);background:var(--card);border-radius:999px;padding:6px 12px 6px 8px;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;transition:border-color .15s,color .15s}
.cp-trend-chip:hover{border-style:solid;border-color:var(--brand-2);color:var(--brand-2)}
.cp-trend-chip:focus-visible{outline:none;box-shadow:var(--ring)}
.cp-trend-plus{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand-ink);font-weight:700;font-size:13px}
.cp-trend-chip small{font-size:12px;color:var(--ink-3)}
.cp-trend-chip em{font-style:normal;font-size:12px;font-weight:600;color:var(--ok);background:var(--ok-tint);border-radius:999px;padding:1px 7px}
.cp-count.bad{color:var(--er)}

/* a question of the user's own, under the list */
.cp-add-q{display:flex;gap:8px;max-width:640px}
.cp-add-q input{flex:1;min-width:0;padding:10px 14px;border:1px solid var(--line-2);border-radius:999px;background:var(--card-2);color:var(--ink);font:inherit;font-size:14px}
.cp-add-q input:focus{outline:none;border-color:var(--brand-2);box-shadow:var(--ring);background:var(--card)}

/* the campaign's own question: an × takes it off this campaign (the business's list keeps its own) */
.cp-chips .pay.cp-own{padding-right:6px}
.cp-x{border:0;background:transparent;color:var(--ink-3);width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;font-size:16px;line-height:1;cursor:pointer;margin-left:2px}
.cp-x:hover{background:var(--er-tint);color:var(--er)}
.cp-x:focus-visible{outline:none;box-shadow:var(--ring)}

/* where a question came from */
.cp-qlabel{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.cp-tag{font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;white-space:nowrap;line-height:1.6}
.cp-tag.trend{background:var(--ok-tint);color:var(--ok)}
.cp-tag.own{background:var(--card-3);color:var(--ink-3)}

/* what the drafts say: two fields across the card */
.cp-fields{margin:0}
.cp-fields .fld input{width:100%}
.cp-fields .hint{font-size:12.5px;color:var(--ink-3);font-weight:400}
.cp-fields .hint.bad{color:var(--er)}

/* starting is the owner's permission: said beside the button */
.cp-consent{flex-basis:100%;font-size:12.5px;color:var(--ink-3);line-height:1.45}
#cp-ok .cp-fields{margin-bottom:14px}
/* a band that needs the reader's word: the owner's consent withdrawn, another agency already on the business */
.cp-ask.warn{background:var(--wr-tint);border-color:transparent;box-shadow:none}
.gate-owner-row{display:block;margin-top:10px}
.gate-owner{font-size:13.5px}

.st-withdraw{margin-left:10px}

/* the share card: two options as tiles; the plan card: what a plan adds, as tiles */
.sh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;margin-top:4px}
.sh-tile{background:var(--card-2);border-radius:16px;padding:16px 18px;display:flex;flex-direction:column;gap:14px;min-width:0}
.sh-top{display:flex;gap:12px;align-items:flex-start}
.sh-top b{display:block;font-size:15px;color:var(--ink)}
.sh-top small{display:block;font-size:13px;color:var(--ink-3);line-height:1.45;margin-top:2px}
.sh-acts{margin-top:auto;display:flex;gap:8px}
.sh-acts .btn{padding:9px 16px;font-size:14px}
.sh-tile .share-row{margin-top:auto}
.sh-tile .share-acts{margin-top:0}
.pl-ico{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand-ink)}
.pl-ico svg{width:19px;height:19px}
.pl-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:0 0 16px}
.pl-head h3{margin:4px 0 2px;font:600 18px var(--disp);color:var(--ink)}
.pl-head .sub{margin:0}
.pl-eyebrow{font:600 11.5px var(--disp);letter-spacing:.04em;text-transform:uppercase;color:var(--wr-ink)}
.pl-head .btn{padding:10px 22px}
.pl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}
.pl-tile{background:var(--card-2);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pl-tile .pl-ico{margin-bottom:4px}
.pl-tile b{font-size:14.5px;color:var(--ink)}
.pl-tile small{font-size:13px;color:var(--ink-3);line-height:1.45}
@media (max-width:640px){.pl-head .btn{width:100%}.sh-acts .btn{width:100%}}
@media (max-width:640px){
  .pl-tile{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;row-gap:2px;padding:12px 14px}
  .pl-tile .pl-ico{grid-row:span 2;margin:0}
  .pl-head .sub{font-size:14px}
}

/* one business and no room for another: the switcher is a plain label */
.biz-static{cursor:default}
.biz-static:hover{background:transparent}

/* a change that cannot be undone, said before it is made */
.st-oneway{display:grid;gap:4px;background:var(--wr-tint);border-left:3px solid var(--wr);border-radius:12px;padding:12px 14px;margin:4px 0 12px}
.st-oneway b{font-size:14px;color:var(--wr-ink)}
.st-oneway span{font-size:13px;color:var(--ink-2);line-height:1.5}

/* confirm the email before the free report: a code, typed in place */
.vf-row{display:flex;gap:8px;margin-top:10px;max-width:360px}
.vf-row input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-size:15px;letter-spacing:.2em}
.vf-card .st-note{margin:8px 0 0}

/* the plans, each for one business: picked in a campaign, shown in Settings */
.pc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.pc-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 18px;border:1px solid var(--line-2);border-radius:14px;background:var(--card)}
.pc-grid.pick .pc-card{cursor:pointer}
.pc-grid.pick .pc-card:hover{border-color:var(--brand)}
.pc-card.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--ring)}
.pc-card input{position:absolute;top:16px;right:16px;accent-color:var(--brand)}
.pc-top{display:flex;flex-direction:column;gap:2px}
.pc-top b{font-size:15px}
.pc-price strong{font-size:22px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.pc-price small{color:var(--ink-2);font-size:13px}
.pc-for{color:var(--ink-3);font-size:12.5px}
.pc-list{margin:6px 0 0;padding:0 0 0 18px;display:grid;gap:4px;font-size:13.5px;color:var(--ink-2)}
.cp-paynote{margin:10px 0 0}
/* Settings: a business's plan and its counts */
.st-biz{padding:12px 0;border-top:1px solid var(--line)}
.st-biz:first-of-type{border-top:0}
.st-biz-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}
.st-biz-m{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.st-biz-m .st-usage+.st-usage{margin-top:0}
.st-plans{margin-top:14px}
.st-plans summary{cursor:pointer;font-size:13.5px;font-weight:600;color:var(--brand);margin:0 0 10px}
.st-divide{margin:28px 0 4px;padding-top:20px;border-top:1px solid var(--line-2)}
.st-divide h2{margin:0 0 4px;font-size:20px}
.st-divide p{margin:0;color:var(--ink-2);font-size:14px}

/* the campaign form: the sections, and beside them "Your campaign" (each step's state, what is set up, the price) */
.cpf{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start;margin:0 0 14px}
.cpf-main{min-width:0}
.cpf-main .sc-sec{padding:26px 28px}
.cpf-rail{position:sticky;top:76px}
.cpf-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--sh1);display:grid;gap:14px}
.cpf-eyebrow{font:700 11.5px var(--disp);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.cpf-steps{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.cpf-step{display:flex;gap:12px;align-items:center;width:100%;padding:9px 10px;border:0;border-radius:12px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.cpf-step:hover{background:var(--card-2)}
.cpf-step:focus-visible{outline:none;box-shadow:var(--ring)}
.cpf-step i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;font:700 12.5px var(--disp);font-style:normal;background:var(--card-3);color:var(--ink-2)}
.cpf-step.done i{background:var(--ok-tint);color:var(--ok)}
.cpf-step b{display:block;font-size:14px;font-weight:600;color:var(--ink)}
.cpf-step small{display:block;font-size:12.5px;color:var(--wr-ink)}
.cpf-step.done small{color:var(--ink-3)}
.cpf-sum{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 12px;padding-top:14px;border-top:1px solid var(--line);font-size:13.5px}
.cpf-sum dt{color:var(--ink-3)}
.cpf-sum dd{margin:0;color:var(--ink);font-weight:600;text-align:right;overflow-wrap:anywhere}
.cpf-note{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink-3)}
.cpf-chip{margin-left:auto;flex:none;font:600 12px var(--disp);padding:4px 10px;border-radius:999px;white-space:nowrap}
.cpf-chip.ok{background:var(--ok-tint);color:var(--ok)}
.cpf-chip.wr{background:var(--wr-tint);color:var(--wr-ink)}
/* bigger, calmer choices */
.cpf #cp-goal .cp-two{grid-template-columns:1fr}
.cpf .cp-chips{gap:10px}
.cpf .cp-chips .pay{padding:10px 16px;font-size:14px;background:var(--card-2)}
.cpf .cp-chips .pay:has(input:checked){background:var(--brand-tint);border-color:var(--brand)}
.cpf .cp-seg{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cpf .cp-seg .acc{padding:16px 18px}
.cpf .cp-seg .acc b{font-size:15.5px}
.cpf .cp-seg-sm{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:4px;background:var(--card-2);border-radius:14px}
.cpf .cp-seg-sm .acc{justify-content:center;border-radius:10px;background:none;border-color:transparent;padding:10px 8px}
.cpf .cp-seg-sm .acc.on{background:var(--card);border-color:var(--line);box-shadow:var(--sh1)}
.cpf .cp-seg-sm .acc input{position:absolute;opacity:0;pointer-events:none}
.cpf #cp-work>.cp-part .acc-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.cpf .acc{transition:border-color .15s,background .15s}
@media (max-width:1060px){
  .cpf{grid-template-columns:1fr}
  .cpf-rail{order:-1;top:60px;z-index:5}
  .cpf-card{padding:6px;border-radius:16px;gap:0}
  .cpf-eyebrow,.cpf-sum,.cpf-note{display:none}
  .cpf-steps{display:flex;overflow-x:auto;scrollbar-width:none;gap:4px}
  .cpf-steps::-webkit-scrollbar{display:none}
  .cpf-step{white-space:nowrap;padding:7px 12px 7px 8px}
  .cpf-step i{width:22px;height:22px;font-size:11.5px}
  .cpf-step b{font-size:13px}
  .cpf-step small{display:none}
}
@media (max-width:720px){
  .cpf-main .sc-sec{padding:20px 18px}
  .cpf .cp-seg{grid-template-columns:1fr}
  .cpf .cp-seg-sm{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cpf #cp-work>.cp-part .acc-list{grid-template-columns:1fr}
}

/* the panel beside the form says it on a wide screen */
@media (min-width:1061px){.cp-foot{display:none}}
/* a section header: the number, the title and its state on one line; the title takes what is left */
.cpf .cp-sec-h>div{flex:1;min-width:0}
@media (max-width:720px){.cpf .cp-sec-h{gap:10px}.cpf .cp-sec-h h2{font-size:18px}.cpf-chip{font-size:11.5px;padding:3px 8px}}

/* a campaign waiting for its plan: what is due, and the way to Review and pay */
.cp-hero.cp-hero-solo{display:block}
.cp-wait{display:grid;gap:12px;justify-items:start}
.cp-wait-t{display:grid;gap:4px}
.cp-wait-t b{font:600 22px var(--disp);letter-spacing:-.01em;color:var(--ink)}
.cp-wait-t span{color:var(--ink-2);font-size:14px;max-width:62ch}
/* Review and pay: the plan, and beside it what is being paid for and what happens next */
.pay-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start;margin:0 0 24px}
.pay-side{position:sticky;top:76px}
.pay-side .cp-steps{margin:0}
.pay-side .cpf-eyebrow+.cpf-sum{border-top:0;padding-top:0}
.pay-sum{grid-template-columns:auto 1fr}
.pay-sum dd{text-align:right}
.pay-side .cp-paynote{margin:0;font-size:12.5px}
@media (max-width:1060px){.pay-grid{grid-template-columns:1fr}.pay-side{position:static}}

/* a waiting campaign's questions, plain */
.cp-qlist{display:flex;flex-wrap:wrap;gap:8px}
.cp-qlist span{padding:8px 14px;border-radius:999px;background:var(--card-2);border:1px solid var(--line);font-size:14px;color:var(--ink)}

/* a waiting campaign's page: what it is, what it gets, the plan, and paying */
.pay-main{min-width:0;display:grid;gap:0}
.pay-qs{display:grid;gap:8px;margin-top:16px}
.pay-qs small{font-size:12.5px;color:var(--ink-3)}
.pv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px}
.pv-tile{display:grid;gap:6px;align-content:start;background:var(--card-2);border-radius:16px;padding:16px}
.pv-tile b{font-size:14.5px;color:var(--ink)}
.pv-tile small{font-size:13px;line-height:1.5;color:var(--ink-2)}
.pay-now{display:grid;gap:2px}
.pay-price b{font:700 30px var(--disp);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.pay-price span{color:var(--ink-2);font-size:14px}
.pay-for{font-size:13px;color:var(--ink-3)}
.pay-side .btn.amber{width:100%;justify-content:center}

/* the waiting campaign's basics: the goal as a band, then a calm two-column list */
.pay-goal{display:grid;gap:4px;padding:18px 20px;border-radius:16px;background:var(--brand-tint);margin:0 0 6px}
.pay-goal small{font:700 11.5px var(--disp);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.pay-goal b{font:600 21px var(--disp);letter-spacing:-.01em;line-height:1.3;color:var(--ink)}
.pay-goal span{font-size:14px;color:var(--ink-2)}
.pay-dl{display:grid;grid-template-columns:minmax(150px,200px) 1fr;margin:0}
.pay-dl dt,.pay-dl dd{margin:0;padding:15px 0;border-top:1px solid var(--line)}
.pay-dl dt:first-of-type,.pay-dl dt:first-of-type+dd{border-top:0}
.pay-dl dt{padding-right:16px;font-size:13.5px;color:var(--ink-3)}
.pay-dl dd b{display:block;font-size:14.5px;font-weight:600;color:var(--ink)}
.pay-dl dd small{display:block;margin-top:6px;font-size:13px;color:var(--ink-3)}
.pay-chips{display:flex;flex-wrap:wrap;gap:6px}
.pay-chips span{padding:5px 11px;border-radius:999px;background:var(--card-2);border:1px solid var(--line);font-size:13px;color:var(--ink)}
.pay-incl{list-style:none;margin:12px 0 6px;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:7px;font-size:13.5px;color:var(--ink-2)}
.pay-incl li{display:flex;gap:8px;align-items:baseline}
.pay-incl li::before{content:'✓';color:var(--ok);font-weight:700}
@media (max-width:720px){.pay-dl{grid-template-columns:1fr}.pay-dl dt{padding-bottom:6px}.pay-dl dd{border-top:0;padding-top:0}}

/* the Pay panel keeps its label and padding on a phone (the campaign form's panel turns into a strip there; this one does not) */
@media (max-width:1060px){.pay-side .cpf-card{padding:18px;gap:14px;border-radius:20px}.pay-side .cpf-eyebrow{display:block}}

/* ── a waiting campaign's page, dressed up: a flat navy band, icon rows, a bento of what it gets, a receipt ── */
.pz-hero{position:relative;background:#1F3D66;color:#fff;border:1px solid #1F3D66;border-radius:28px;padding:26px 30px 24px;margin:0 0 16px;display:grid;gap:10px;overflow:hidden}
.pz-hero::after{content:'';position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;border:34px solid rgba(255,255,255,.05);pointer-events:none}
.pz-hero-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.pz-pill{display:inline-flex;align-items:center;gap:7px;font:600 12.5px var(--disp);padding:5px 12px;border-radius:999px;background:rgba(208,144,31,.18);color:#F2C26F}
.pz-pill::before{content:'';width:7px;height:7px;border-radius:50%;background:#D0901F}
.pz-hero .pz-back{color:#DCE6F5}
.pz-hero h1{margin:4px 0 0;font:700 clamp(28px,4vw,40px)/1.1 var(--disp);letter-spacing:-.025em;color:#fff}
.pz-goal{display:flex;gap:10px;align-items:flex-start;margin:0;font-size:17px;line-height:1.45;color:#E4ECF8;max-width:70ch}
.pz-goal-ico{flex:none;width:26px;height:26px;margin-top:1px;color:#F2C26F}
.pz-goal-ico svg{width:100%;height:100%}
.pz-meta{font-size:13px;color:#A9BEDC}
.pz-track{list-style:none;margin:10px 0 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pz-track li{display:flex;gap:9px;align-items:center;font-size:13.5px;color:#A9BEDC;min-width:0}
.pz-track li span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pz-track i{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font:700 12px var(--disp);font-style:normal;border:1.5px solid rgba(255,255,255,.25);color:#DCE6F5}
.pz-track li.done{color:#E4ECF8}
.pz-track li.done i{background:#2E7D5B;border-color:#2E7D5B;color:#fff}
.pz-track li.now{color:#fff;font-weight:600}
.pz-track li.now i{background:#D0901F;border-color:#D0901F;color:#1F3D66}
@media (prefers-color-scheme:dark){:where(:root:not([data-theme=light])) .pz-hero{background:#14233D;border-color:#24385A}}
:where(:root[data-theme=dark]) .pz-hero{background:#14233D;border-color:#24385A}
/* how the work happens: a row each, with its icon */
.pz-rows{display:grid}
.pz-row{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-top:1px solid var(--line)}
.pz-row:first-child{border-top:0;padding-top:4px}
.pz-ico{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand)}
.pz-ico svg{width:18px;height:18px}
.pz-row-v{display:grid;gap:6px;min-width:0}
.pz-row-v>small{font-size:12.5px;color:var(--ink-3)}
.pz-row-v b{font-size:14.5px;font-weight:600;color:var(--ink)}
.pz-row-v span{font-size:13px;color:var(--ink-3)}
.pz-row-v .pay-chips span{color:var(--ink)}
.pz-row-v .pay-chips+span{display:block;margin-top:6px}
/* what it gets: a bento */
.pz-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pz-bento .pv-tile{transition:transform .15s ease,box-shadow .15s ease}
.pz-bento .pv-tile:hover{transform:translateY(-2px);box-shadow:var(--sh1)}
.pz-fix{grid-column:span 2;grid-row:span 2}
.pz-fixes{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.pz-fixes li{display:flex;gap:10px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:9px 12px;font-size:13.5px;color:var(--ink)}
.pz-fixes li i{flex:none;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--wr-tint);color:var(--wr-ink);font:700 11.5px var(--disp);font-style:normal}
.pz-fixes li span{flex:1;min-width:0}
.pz-fixes li em{font-style:normal;font-size:11.5px;color:var(--ink-3);white-space:nowrap}
.pz-num strong{font:700 38px/1 var(--disp);letter-spacing:-.03em;color:var(--brand);font-variant-numeric:tabular-nums}
.pz-report{grid-column:span 2}
.pz-bars{display:flex;align-items:flex-end;gap:6px;height:46px;margin-top:6px}
.pz-bars i{flex:1;max-width:26px;border-radius:6px 6px 3px 3px;background:var(--brand-tint)}
.pz-bars i:last-child{background:var(--wr)}
/* the receipt */
.pz-receipt .pay-price b{font-size:34px}
.pz-due{display:flex;justify-content:space-between;align-items:baseline;margin-top:6px;padding-top:12px;border-top:1px dashed var(--line-2);font-size:14px;color:var(--ink-2)}
.pz-due b{font:700 20px var(--disp);color:var(--ink)}
.pz-receipt .cp-acts{justify-content:center}
@media (max-width:900px){.pz-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.pz-report{grid-column:span 2}}
@media (max-width:720px){
  .pz-hero{padding:20px 18px;border-radius:22px}
  .pz-goal{font-size:15.5px}
  .pz-track{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}
  .pz-bento{grid-template-columns:1fr}
  .pz-fix,.pz-report{grid-column:auto;grid-row:auto}
}

/* the bento in two even rows: fixes (wide), the two numbers / pages (wide), the report (wide); a title over its line */
.pz-fix{grid-row:auto}
.pz-bento .pv-tile:nth-child(4){grid-column:span 2}
.pz-row-v>div>b{display:block}
.pz-row-v>div>b+span{display:block;margin-top:3px}
@media (max-width:900px){.pz-bento .pv-tile:nth-child(4){grid-column:span 2}}
@media (max-width:720px){.pz-bento .pv-tile:nth-child(4){grid-column:auto}}

/* the plan of work: a vertical line of steps, each with its state and rough month */
.pz-road{list-style:none;margin:0;padding:0;display:grid}
.pz-step{position:relative;display:flex;gap:14px;padding:0 0 18px}
.pz-step:last-child{padding-bottom:0}
.pz-step::before{content:'';position:absolute;left:17px;top:38px;bottom:2px;width:2px;background:var(--line)}
.pz-step:last-child::before{display:none}
.pz-step-ico{position:relative;z-index:1;flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--card-2);color:var(--ink-3);border:1px solid var(--line)}
.pz-step-ico svg{width:17px;height:17px}
.pz-step.pz-done .pz-step-ico{background:var(--ok-tint);color:var(--ok);border-color:transparent}
.pz-step.pz-done .pz-step-ico b{font-size:15px}
.pz-step.pz-first .pz-step-ico{background:var(--wr-tint);color:var(--wr-ink);border-color:var(--wr)}
.pz-step.pz-always .pz-step-ico{background:var(--brand-tint);color:var(--brand);border-color:transparent}
.pz-step-b{min-width:0;flex:1;padding-top:6px}
.pz-step-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pz-step-h b{font-size:15px;color:var(--ink)}
.pz-step-h small{margin-left:auto;font-size:12.5px;color:var(--ink-3);white-space:nowrap}
.pz-step-b p{margin:4px 0 0;font-size:13.5px;line-height:1.5;color:var(--ink-2);max-width:72ch}
.pz-step.pz-done .pz-step-b p,.pz-step.pz-done .pz-step-h b{color:var(--ink-3)}
.pz-chip{font:600 11.5px var(--disp);padding:3px 9px;border-radius:999px;background:var(--card-2);color:var(--ink-3)}
.pz-chip-done{background:var(--ok-tint);color:var(--ok)}
.pz-chip-first{background:var(--wr-tint);color:var(--wr-ink)}
.pz-chip-always{background:var(--brand-tint);color:var(--brand)}

/* the site today: the campaign's own check, its score and what to fix (names only) */
.pz-site-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center}
.pz-site-score{display:grid;justify-items:center;gap:8px;text-align:center}
.pz-site-score small{font-size:12.5px;color:var(--ink-3);max-width:180px}
.pz-site-list{display:grid;gap:8px}
.pz-site-list>small{font-size:12.5px;color:var(--ink-3)}
.pz-issues{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}
.pz-issues li{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:12px;background:var(--card-2);font-size:13.5px;color:var(--ink)}
.pz-issues li i{flex:none;width:8px;height:8px;border-radius:50%;background:var(--wr)}
.pz-issues li.pz-iss-fail i{background:var(--er)}
.pz-site-wait{margin:0}
@media (max-width:720px){.pz-site-row{grid-template-columns:1fr}}

/* the plan switch in the receipt */
.pz-seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px;margin:8px 0 10px;border-radius:12px;background:var(--card-2);border:1px solid var(--line)}
.pz-seg button{border:0;background:none;border-radius:9px;padding:8px 10px;font:600 13.5px var(--disp);color:var(--ink-2);cursor:pointer}
.pz-seg button:hover{color:var(--ink)}
.pz-seg button.on{background:var(--card);color:var(--ink);box-shadow:var(--sh1)}
.pz-seg button:focus-visible{outline:none;box-shadow:var(--ring)}
.pz-up{display:block;margin:2px 0 0;padding:9px 11px;border-radius:10px;background:var(--brand-tint);font-size:12.5px;line-height:1.45;color:var(--ink-2)}

/* a running campaign before its questions are chosen: the next step, on its own */
.cp-gate{padding:22px 24px}
.cp-gate .cp-ask-t b{font-size:17px}
.cp-gate-note{margin:4px 0 0}

/* the step before the questions: connect Google, then choose */
.cp-gate{display:block}
.cp-gate-in{display:grid;gap:16px}
.cp-gsteps{display:grid;gap:10px}
.cp-gstep{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.cp-gstep>i{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:700 13px var(--disp);font-style:normal;background:var(--wr-tint);color:var(--wr-ink)}
.cp-gstep.done>i{background:var(--ok-tint);color:var(--ok)}
.cp-gstep-b{flex:1;min-width:0;display:grid;gap:2px}
.cp-gstep-b b{font-size:14.5px;color:var(--ink)}
.cp-gstep-b span{font-size:13px;color:var(--ink-2)}
.cp-gstep-acts{flex:none;display:flex;gap:8px}
.cp-gsc{margin-top:12px}
@media (max-width:720px){.cp-gstep{flex-wrap:wrap}.cp-gstep-acts{width:100%}.cp-gstep-acts .btn{width:100%;justify-content:center}}

/* a question taken from the business's Search Console */
.cp-tag.gsc{background:var(--ok-tint);color:var(--ok)}

/* a Search Console search's average position: neutral, green only on page one, amber on page two */
.cp-trend-chip em.cp-pos{background:var(--card-3);color:var(--ink-2)}
.cp-trend-chip em.cp-pos.good{background:var(--ok-tint);color:var(--ok)}
.cp-trend-chip em.cp-pos.mid{background:var(--wr-tint);color:var(--wr-ink)}

/* the Search Console box: a filter, and how many are shown */
.cp-gsc-find{margin:10px 0}
.cp-gsc-find input{width:100%;max-width:420px;padding:9px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-size:14px}
.cp-gsc-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}
.cp-gsc-foot small{font-size:12.5px;color:var(--ink-3)}

/* a running campaign's competitors */
.cp-rivals .pay-chips{margin-top:2px}
.cp-rivals-pick{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:10px}
.cp-rivals-pick .sub{margin:0}
.cp-rivals-more{font-size:12.5px;color:var(--ink-3)}
.cp-rivals-need{margin:0 0 14px}

/* the campaign's setup: a progress header, then a timeline of steps */
.cpg{padding:24px 26px}
.cpg-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 24px;flex-wrap:wrap;margin:0 0 18px}
.cpg-head .cp-ask-t{display:grid;gap:4px}
.cpg-head .cp-ask-t b{font-size:18px}
.cpg-prog{display:grid;gap:6px;min-width:180px}
.cpg-prog b{font-size:13px;color:var(--ink-2);font-weight:600}
.cpg-bar{display:block;height:6px;border-radius:99px;background:var(--card-3);overflow:hidden}
.cpg-bar i{display:block;height:100%;border-radius:99px;background:var(--ok)}
.cpg-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cpg-step{position:relative;display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.cpg-step:not(:last-child)::after{content:'';position:absolute;left:35px;top:56px;bottom:-12px;width:2px;background:var(--line);z-index:0}
.cpg-dot{position:relative;z-index:1;flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--card-2);color:var(--ink-3);border:1px solid var(--line)}
.cpg-dot svg{width:17px;height:17px}
.cpg-step.done .cpg-dot{background:var(--ok-tint);color:var(--ok);border-color:transparent}
.cpg-step.now{border-color:var(--wr);box-shadow:0 0 0 3px var(--wr-tint)}
.cpg-step.now .cpg-dot{background:var(--wr-tint);color:var(--wr-ink);border-color:var(--wr)}
.cpg-step.later{opacity:.72}
.cpg-body{flex:1;min-width:0;display:grid;gap:4px;padding-top:2px}
.cpg-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.cpg-title b{font-size:15px;color:var(--ink)}
.cpg-body p{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.cpg-chips{margin-top:6px}
.cpg-step .cp-gstep-acts{align-self:center}
@media (max-width:720px){.cpg{padding:18px 16px}.cpg-step{flex-wrap:wrap}.cpg-step:not(:last-child)::after{display:none}.cpg-step .cp-gstep-acts{width:100%}.cpg-step .cp-gstep-acts .btn{width:100%;justify-content:center}}

.cpg-tick{font-style:normal;font-weight:700;font-size:15px}

/* suggested questions, written by AI on request */
.cp-sug{margin-top:12px}
.cp-sug-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.cp-sug .cp-trend-list{margin-top:10px}
.cp-tag.sug{background:var(--brand-tint);color:var(--brand)}


.cp-sug-state{margin:8px 0 0}

/* buying / learning marks on a search */
.cp-tag.buy{background:var(--brand-tint);color:var(--brand)}
.cp-tag.learn{background:var(--card-3);color:var(--ink-3)}
.cp-trend-chip .cp-tag{margin-left:2px}
.cp-qwarn{display:block;margin:6px 0 0;color:var(--ink-2);font-size:13px;line-height:1.45}
.cp-qwarn:empty{display:none}

/* the campaign's fixed length, where a choice used to be */
.cp-fixed{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.cp-fixed b{font-size:15px}
.cp-fixed small{color:var(--ink-3)}

/* a yes/no dialog */
.cf-dlg{background:var(--card);border-radius:18px;padding:24px;box-shadow:0 20px 60px rgba(8,14,28,.25)}
.cf-dlg h3{margin:0 0 12px;font-size:20px}
.cf-dlg p{margin:0 0 10px;line-height:1.55;color:var(--ink-2)}
.cf-dlg .cf-sub{font-size:13px;color:var(--ink-3)}
.cf-count{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;padding:14px 16px;border-radius:12px;background:var(--brand-tint)}
.cf-count strong{font-size:32px;line-height:1;color:var(--brand)}
.cf-count span{color:var(--ink-2)}
.cf-acts{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;flex-wrap:wrap}
/* the questions once locked */
.cp-locked-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cp-locked-list li{display:flex;gap:10px;align-items:center;padding:10px 14px;border-radius:12px;background:var(--card-3);color:var(--ink)}
.cp-lock-ico{display:inline-flex;color:var(--ink-3)}
.cp-lock-ico svg{width:16px;height:16px}

.cf-acts.cf-left{justify-content:flex-start;margin-top:4px}

/* step 1 of a running campaign: the site made ready */
.rd-eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.rd-top{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:6px 0 14px}
.rd-score{display:flex;gap:16px;align-items:center}
.rd-score b{display:block;font-size:17px}
.rd-score small{display:block;color:var(--ink-3);margin-top:2px}
.rd-score .rd-fixed{color:var(--ok)}
.rd-wait{margin:8px 0 0}
.rd-list{display:grid;gap:8px}
.rd-item{border:1px solid var(--line);border-radius:14px;background:var(--card-2,var(--card));overflow:hidden}
.rd-item summary{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;list-style:none}
.rd-item summary::-webkit-details-marker{display:none}
.rd-item summary b{flex:1;font-weight:600}
.rd-dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--amber)}
.rd-fail .rd-dot{background:var(--bad,#c2412d)}
.rd-imp{font-size:12px;color:var(--ink-3);white-space:nowrap}
.rd-st{font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.rd-fail .rd-st{background:var(--bad-tint,var(--card-3));color:var(--bad,#c2412d)}
.rd-body{padding:0 16px 16px 35px;color:var(--ink-2);line-height:1.55}
.rd-body p{margin:0 0 8px}
.rd-body h4{margin:12px 0 4px;font-size:13px;color:var(--ink)}
.rd-detail{font-size:13px;color:var(--ink-3)}
.rd-snip{margin-top:10px;border-radius:12px;background:var(--card-3);overflow:hidden}
.rd-snip-h{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px}
.rd-snip-h small{color:var(--ink-3);overflow-wrap:anywhere}
.rd-snip pre{margin:0;padding:12px;max-height:280px;overflow:auto;font-size:12.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid var(--line)}
.rd-note{display:block;padding:8px 12px;color:var(--ink-3);border-top:1px solid var(--line)}
.rd-foot{margin:12px 0 0}
.rd-next{margin-top:14px}
@media (max-width:640px){.rd-body{padding-left:16px}.rd-imp{display:none}}

/* the short summary beside the clock, with the way to the full one */
.cp-brief{display:flex;flex-direction:column;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:16px;background:var(--card-2,var(--card-3));min-width:0}
.cp-brief dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0}
.cp-brief dt{color:var(--ink-3);font-size:13px}
.cp-brief dd{margin:0;font-weight:600;color:var(--ink)}
.cp-brief .btn{align-self:flex-start}

/* the campaign's short summary: three tiles and the way to the full one */
.cp-hero-brief{align-items:stretch}
.cp-hero-brief .cp-hero-l{display:flex;flex-direction:column;justify-content:center}
.cp-brief{display:flex;flex-direction:column;gap:12px;padding:0;background:none;border-radius:0}
.cp-brief-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;flex:1}
.cp-bt{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:16px;background:var(--card-2,var(--card-3));border:1px solid var(--line);min-width:0}
.cp-bt-h{display:flex;align-items:center;gap:8px;min-width:0}
.cp-bt-h small{color:var(--ink-3);font-size:12.5px;line-height:1.3}
.cp-bt-ico{display:inline-flex;width:26px;height:26px;border-radius:8px;align-items:center;justify-content:center;background:var(--brand-tint);color:var(--brand);flex:none}
.cp-bt-ico svg{width:15px;height:15px}
.cp-bt-v{font-size:30px;line-height:1;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.cp-bt-v span{font-size:14px;font-weight:600;color:var(--ink-3);margin-left:2px;letter-spacing:0}
.cp-bt-wait{font-size:18px;font-weight:600;color:var(--ink-3);line-height:30px}
.cp-bt-chip{align-self:flex-start;margin-top:auto;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--card-3);color:var(--ink-2);max-width:100%}
.cp-bt-chip.ok{background:var(--ok-tint);color:var(--ok)}
.cp-bt-chip.warn{background:var(--wr-tint);color:var(--wr-ink)}
.cp-brief-more{align-self:flex-end;display:inline-flex;align-items:center;gap:8px;border:0;background:none;color:var(--brand);font:inherit;font-weight:600;font-size:14px;cursor:pointer;padding:4px 2px}
.cp-brief-more i{font-style:normal;transition:transform .15s}
.cp-brief-more:hover i{transform:translateX(3px)}
@media (max-width:760px){.cp-brief-tiles{grid-template-columns:1fr}.cp-bt{flex-direction:row;align-items:center;flex-wrap:wrap}.cp-bt-h{flex:1 1 100%}}
/* the full-summary tile: a button that reads as a card */
.cp-bt-more{font:inherit;text-align:left;cursor:pointer;color:inherit;background:var(--brand-tint);border-color:transparent;transition:transform .15s,box-shadow .15s}
.cp-bt-more:hover{transform:translateY(-2px);box-shadow:var(--sh1)}
.cp-bt-more:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.cp-bt-more .cp-bt-ico{background:var(--card);color:var(--brand)}
.cp-bt-more-t{font-size:15px;font-weight:600;line-height:1.35;color:var(--ink)}
.cp-bt-go{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--brand)}
.cp-bt-go i{font-style:normal;transition:transform .15s}
.cp-bt-more:hover .cp-bt-go i{transform:translateX(3px)}

/* the summary: six tiles in two rows, and the next step under the clock */
.cp-hero-brief{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr)}
.cp-hero-brief .cp-hero-l{justify-content:flex-start;gap:10px}
.cp-bt-sub{color:var(--ink-2);font-size:13px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:-4px}
.cp-nextstep{margin-top:auto;display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;background:var(--brand-tint);border:1px solid transparent}
.cp-nextstep small{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}
.cp-nextstep b{display:block;font-size:17px;margin:4px 0 2px;color:var(--ink)}
.cp-nextstep span{display:block;color:var(--ink-2);font-size:13.5px;line-height:1.45}
.cp-nextstep .btn{align-self:flex-start}
@media (max-width:1100px){.cp-hero-brief{grid-template-columns:1fr}.cp-brief-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.cp-brief-tiles{grid-template-columns:1fr}}
/* five tiles: the full-summary one runs across two columns, laid out on its side */
.cp-brief-tiles .cp-bt-more{grid-column:span 2;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;column-gap:16px;align-items:end}
.cp-bt-more .cp-bt-h{grid-column:1 / -1;align-self:start}
.cp-bt-more .cp-bt-go{margin-top:0;padding:8px 14px;border-radius:999px;background:var(--card)}
@media (max-width:760px){.cp-brief-tiles .cp-bt-more{grid-column:auto}}

/* step 1, in brief: the first three problems and the way to the fixes */
.rd-brief{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:6px}
.rd-brief li{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.rd-brief li span:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.rd-brief-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.rd-brief-foot small{color:var(--ink-3)}

/* step 1 summary, after Oftheard's last-check card */
.rd-sum{padding:26px 28px}
.rd-sum-top{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.rd-sum-l{display:flex;align-items:center;gap:26px;min-width:0}
.rd-ring{position:relative;flex:none;display:inline-flex}
.rd-ring small{position:absolute;left:0;right:0;top:66%;text-align:center;font-size:12px;color:var(--ink-3)}
.rd-sum-t{display:flex;flex-direction:column;gap:8px;min-width:0}
.rd-sum-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rd-sum-h h3{margin:0;font-size:26px;letter-spacing:-.01em;color:var(--ink)}
.rd-delta{font-size:13px;font-weight:700;padding:4px 10px;border-radius:8px}
.rd-delta.up{background:var(--ok-tint);color:var(--ok)}
.rd-delta.down{background:var(--er-tint);color:var(--er-ink,var(--er))}
.rd-sum-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--ink-3);font-size:14px}
.rd-sum-meta i{font-style:normal}
.rd-link{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--brand);cursor:pointer}
.rd-link:hover{text-decoration:underline}
.rd-stats{display:grid;grid-template-columns:repeat(4,minmax(72px,auto));gap:8px 34px;text-align:center}
.rd-stat b{display:block;font-size:30px;line-height:1.1;color:var(--ink)}
.rd-stat b.bad{color:var(--er)}
.rd-stat b.warn{color:var(--wr)}
.rd-stat small{color:var(--ink-3);font-size:13px}
.rd-disc{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px 28px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.rd-d-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}
.rd-d-h span{color:var(--ink-2);font-size:14px}
.rd-d-h b{font-size:17px;color:var(--ink)}
.rd-d-h b.na{font-size:14px;color:var(--ink-3);font-weight:600}
.rd-d-bar{display:block;height:6px;border-radius:999px;background:var(--card-3);overflow:hidden}
.rd-d-bar i{display:block;height:100%;border-radius:999px;background:var(--ok)}
.rd-d-bar.mid i{background:var(--wr)}
.rd-d-bar.bad i{background:var(--er)}
.rd-d-bar.na{background:repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 14px)}
@media (max-width:760px){.rd-sum{padding:20px}.rd-sum-l{gap:16px}.rd-stats{grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.rd-stat b{font-size:24px}.rd-sum-h h3{font-size:21px}}
/* step 1 summary, polished: a framed group of counts, each area as its own small card */
.rd-sum{padding:28px 30px;border:1px solid var(--line)}
.rd-sum-l{gap:28px}
.rd-sum-h h3{font-size:28px}
.rd-sum-say{margin:-2px 0 2px;color:var(--ink-2);font-size:15px;line-height:1.45}
.rd-stats{gap:0;padding:6px 0;border-radius:18px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.rd-stat{padding:12px 26px;min-width:96px}
.rd-stat + .rd-stat{border-left:1px solid var(--line)}
.rd-stat b{font-size:32px;letter-spacing:-.02em}
.rd-stat small{display:block;margin-top:2px;font-size:12.5px}
.rd-disc{gap:12px;margin-top:24px;padding-top:0;border-top:0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.rd-d{padding:14px 16px 16px;border-radius:14px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.rd-d-h{align-items:flex-end;margin-bottom:12px}
.rd-d-h span{font-size:13px;line-height:1.3;color:var(--ink-3)}
.rd-d-h b{font-size:22px;line-height:1;letter-spacing:-.01em}
.rd-d-bar{height:5px}
@media (max-width:760px){.rd-stats{width:100%;grid-template-columns:repeat(4,1fr)}.rd-stat{padding:10px 6px;min-width:0}.rd-stat b{font-size:24px}.rd-disc{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* the campaign's flow: four steps, done / now / later */
.cp-flow{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.cp-flow-s{position:relative;display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.cp-flow-s small{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.cp-flow-s b{display:block;font-size:14.5px;margin:2px 0 1px;color:var(--ink)}
.cp-flow-s span:not(.cp-flow-n){display:block;font-size:12.5px;color:var(--ink-3)}
.cp-flow-n{flex:none;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;background:var(--card-3);color:var(--ink-3)}
.cp-flow-s.done .cp-flow-n{background:var(--ok-tint);color:var(--ok)}
.cp-flow-s.now{border-color:var(--brand);background:var(--brand-tint)}
.cp-flow-s.now .cp-flow-n{background:var(--brand);color:#fff}
.cp-flow-s.now small{color:var(--brand)}
.cp-flow-s.later{opacity:.72}
.rd-done{opacity:.92}
.rd-done b{font-size:16px}
.rd-sum-note{margin:10px 0 0}
.rd-again{color:var(--ink-2)}
.rd-again:disabled{cursor:default;text-decoration:none;color:var(--ink-3)}
@media (max-width:900px){.cp-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* step 1 actions: a primary and a secondary button, in their own row */
.rd-sum-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.rd-sum-acts .btn{min-height:40px}
.rd-again:disabled{opacity:.7}
/* area tiles: the label on one line, the score level with it */
.rd-d-h{align-items:center}
.rd-d-h span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.rd-d-h b{flex:none}
/* a done step: a green tick in front, quieter text */
.rd-done{align-items:center}
.rd-done::before{content:'✓';flex:none;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;background:var(--ok-tint);color:var(--ok);margin-right:4px}
.rd-done .cp-ask-t span{color:var(--ink-3)}
/* area tiles: a long label wraps onto two lines instead of being cut; every header the same height */
.rd-d-h{min-height:2.7em}
.rd-d-h span{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3}

/* the flow has five steps now */
.cp-flow{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.cp-flow{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.cp-flow{grid-template-columns:1fr 1fr}}
/* step 2: the crawler sensor */
.cr-sum{margin-top:14px}
.cr-dial{flex:none;width:128px;height:128px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:10px solid var(--card-3);color:var(--ink-3)}
.cr-dial svg{width:34px;height:34px}
.cr-dial small{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.cr-dial.on{border-color:var(--ok);color:var(--ok)}
.cr-setup{margin-bottom:14px}
.cr-start{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px;border-radius:16px;background:var(--brand-tint)}
.cr-start b{display:block;font-size:16px;color:var(--ink)}
.cr-start span{color:var(--ink-2);font-size:14px}
.cr-steps{display:grid;gap:12px;margin-top:6px}
.cr-step{display:flex;gap:14px;padding:16px 18px;border-radius:16px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.cr-n{flex:none;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;background:var(--brand);color:#fff}
.cr-step-b{flex:1;min-width:0}
.cr-step-b h3{margin:3px 0 10px;font-size:16px}
.cr-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cr-opt{font:inherit;text-align:left;cursor:pointer;padding:14px;border-radius:14px;background:var(--card);border:1.5px solid var(--line);color:var(--ink);display:flex;flex-direction:column;gap:4px}
.cr-opt small{color:var(--ink-3);line-height:1.4}
.cr-opt.on{border-color:var(--brand);background:var(--brand-tint)}
.cr-ol{margin:0 0 12px;padding-left:20px;color:var(--ink-2);line-height:1.6}
.cr-ol li{margin-bottom:4px}
.cr-dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;align-items:center;margin:10px 0}
.cr-dl dt{color:var(--ink-3);font-size:13px}
.cr-dl dd{margin:0;display:flex;gap:8px;align-items:center;min-width:0}
.cr-dl code{overflow-wrap:anywhere;font-size:12.5px;padding:4px 8px;border-radius:8px;background:var(--card);min-width:0}
.cr-pat{max-height:3.2em;overflow:hidden}
.cr-test{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cr-test small{color:var(--ink-3)}
.cr-test-res{margin-top:10px;font-size:14px;line-height:1.5}
.cr-test-res.ok{color:var(--ok)}
.cr-test-res.bad{color:var(--er-ink,var(--er))}
.cr-fold{margin-top:8px}
.cr-fold summary{cursor:pointer;font-weight:600;padding:10px 0;color:var(--ok)}
.cr-fold summary small{color:var(--ink-3);font-weight:400}
.cr-keyrow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.cr-keyrow small{color:var(--ink-3);max-width:60ch}
.cr-head{margin:6px 0 12px}
.cr-days{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--card-3)}
.cr-days button{font:inherit;border:0;background:none;padding:6px 14px;border-radius:999px;color:var(--ink-2);cursor:pointer;font-weight:600}
.cr-days button.on{background:var(--card);color:var(--ink);box-shadow:var(--sh1)}
.cr-reads.busy{opacity:.6}
.cr-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.cr-tile{padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.cr-tile small{color:var(--ink-3);font-size:12.5px}
.cr-tile b{font-size:28px;line-height:1;color:var(--ink)}
.cr-tile span{color:var(--ink-3);font-size:12px;line-height:1.35}
.cr-sec{margin-bottom:14px}
.cr-hours{display:grid;grid-template-columns:repeat(24,1fr);gap:4px;height:90px;align-items:end}
.cr-h{display:flex;align-items:flex-end;height:100%;border-radius:4px;background:var(--card-3)}
.cr-h i{display:block;width:100%;border-radius:4px;background:var(--line)}
.cr-h.on i{background:var(--brand)}
.cr-table{display:grid;gap:4px}
.cr-row{display:grid;grid-template-columns:2fr .8fr .6fr .6fr .6fr 1.2fr;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--card-2,var(--card-3))}
.cr-pages .cr-row{grid-template-columns:2.4fr .6fr 1.6fr 1.2fr .6fr}
.cr-pages .cr-row3{grid-template-columns:2.4fr .6fr 1.2fr}
.cr-th{background:none;padding:2px 12px;font-size:12px;color:var(--ink-3);font-weight:600}
.cr-who b{display:block}
.cr-who small{color:var(--ink-3);font-size:12px}
.cr-kind{justify-self:start;font-size:11.5px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.cr-kind.live{background:var(--ok-tint);color:var(--ok)}
.cr-kind.index{background:var(--brand-tint);color:var(--brand)}
.cr-when{color:var(--ink-3);font-size:13px}
.cr-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.cr-by{color:var(--ink-2);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cr-st{font-size:12px;font-weight:700}
.cr-st.ok{color:var(--ok)}
.cr-st.bad{color:var(--er)}
.cr-eng{margin:4px 0 12px}
.cr-empty{padding:18px;border-radius:12px;background:var(--card-2,var(--card-3));text-align:center}
@media (max-width:900px){.cr-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.cr-opts{grid-template-columns:1fr}.cr-row{grid-template-columns:1.6fr .8fr .6fr 1fr}.cr-row > :nth-child(4),.cr-row > :nth-child(5){display:none}.cr-pages .cr-row{grid-template-columns:2fr .6fr 1fr}.cr-pages .cr-row > :nth-child(3),.cr-pages .cr-row > :nth-child(5){display:none}}

.cr-empty-sec{text-align:center;padding:36px 24px}
.cr-empty-sec .cp-acts{justify-content:center;margin-top:14px}

/* ---- the campaign pages, a size smaller: calmer type, tighter cards (10 Oct) ---- */
.cp-head h1{font-size:clamp(24px,2.6vw,32px)}
.cp-head p{font-size:14px}
.cp-hero{padding:20px;gap:20px;border-radius:20px;margin-bottom:12px}
.cp-clock b{font-size:30px}
.cp-clock span{font-size:14px}
.cp-when{font-size:12.5px}
.cp-brief-tiles{gap:8px}
.cp-bt{padding:12px 14px;gap:8px;border-radius:14px}
.cp-bt-ico{width:24px;height:24px;border-radius:7px}
.cp-bt-ico svg{width:14px;height:14px}
.cp-bt-h small{font-size:12px}
.cp-bt-v{font-size:24px}
.cp-bt-v span{font-size:12px}
.cp-bt-wait{font-size:15px;line-height:24px}
.cp-bt-sub{font-size:12px}
.cp-bt-chip{font-size:11px;padding:2px 8px}
.cp-bt-more-t{font-size:13.5px}
.cp-bt-go{font-size:12.5px}
.cp-brief-tiles .cp-bt-more .cp-bt-go{padding:6px 12px}
.cp-nextstep{padding:14px;gap:10px;border-radius:14px}
.cp-nextstep small{font-size:10.5px}
.cp-nextstep b{font-size:15px}
.cp-nextstep span{font-size:13px}
.cp-flow{gap:8px;margin-bottom:12px}
.cp-flow-s{padding:10px 12px;gap:10px;border-radius:14px}
.cp-flow-s small{font-size:10px}
.cp-flow-s b{font-size:13px}
.cp-flow-s span:not(.cp-flow-n){font-size:11.5px}
.cp-flow-n{width:24px;height:24px;font-size:12px}
.rd-sum{padding:20px 22px;margin-bottom:12px}
.rd-sum-l{gap:20px}
.rd-sum-t{gap:6px}
.rd-sum-h h3{font-size:20px}
.rd-sum-say{font-size:13.5px}
.rd-sum-meta{font-size:12.5px}
.rd-sum-acts{margin-top:4px;gap:8px}
.rd-sum-acts .btn{min-height:34px;font-size:13px;padding:6px 14px}
.rd-delta{font-size:12px;padding:3px 8px}
.rd-ring small{font-size:10.5px}
.rd-stats{border-radius:14px;padding:4px 0}
.rd-stat{padding:8px 16px;min-width:72px}
.rd-stat b{font-size:22px}
.rd-stat small{font-size:11.5px}
.rd-disc{gap:8px;margin-top:16px}
.rd-d{padding:12px 14px;border-radius:12px}
.rd-d-h{min-height:2.4em;margin-bottom:8px}
.rd-d-h span{font-size:12px}
.rd-d-h b{font-size:17px}
.rd-d-bar{height:4px}
.cr-dial{width:100px;height:100px;border-width:8px}
.cr-dial svg{width:26px;height:26px}
.cr-dial small{font-size:10.5px}
.cp-ask{padding:14px 18px;border-radius:16px;margin-bottom:12px}
.cp-ask-t b{font-size:14px}
.cp-ask-t span{font-size:13px}
.cp-gate .cp-ask-t b,.cpg-head .cp-ask-t b{font-size:16px}
.rd-done b{font-size:14.5px}
.rd-done::before{width:28px;height:28px;font-size:13px}
.cpf-eyebrow{font-size:10.5px}
.pz-chip{font-size:11px}
.rd-eyebrow{gap:6px}
@media (max-width:760px){.cp-clock b{font-size:26px}.rd-sum{padding:16px}.rd-sum-h h3{font-size:18px}.rd-stat b{font-size:20px}}

/* ---- a running campaign as one checklist ---- */
.sm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin:6px 0 16px}
.sm-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sm-title h1{margin:0;font-size:clamp(22px,2.4vw,28px);letter-spacing:-.02em;color:var(--ink)}
.sm-meta{margin:6px 0 0;color:var(--ink-3);font-size:13.5px}
.sm-head-acts{display:flex;gap:14px;align-items:center}
.sm-prog{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.sm-prog b{font-size:13px;font-weight:600;color:var(--ink-2)}
.sm-bar{flex:1;max-width:240px;height:6px;border-radius:999px;background:var(--card-3);overflow:hidden}
.sm-bar i{display:block;height:100%;border-radius:999px;background:var(--ok)}
.sm-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sm-step{border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden;transition:border-color .15s}
.sm-step summary{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;list-style:none}
.sm-step summary::-webkit-details-marker{display:none}
.sm-step summary:hover .sm-chev{color:var(--ink)}
.sm-n{flex:none;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;background:var(--card-3);color:var(--ink-3)}
.sm-step.done .sm-n{background:var(--ok-tint);color:var(--ok)}
.sm-step.now{border-color:var(--brand);box-shadow:var(--sh1)}
.sm-step.now .sm-n{background:var(--brand);color:#fff}
.sm-t{flex:1;min-width:0;display:flex;justify-content:space-between;align-items:baseline;gap:6px 16px;flex-wrap:wrap}
.sm-t b{font-size:15px;font-weight:600;color:var(--ink)}
.sm-t small{color:var(--ink-3);font-size:13px}
.sm-step.later .sm-t b{color:var(--ink-2)}
.sm-step.done .sm-t small{color:var(--ok)}
.sm-chev{flex:none;color:var(--ink-3);font-size:20px;line-height:1;transition:transform .15s}
.sm-step[open] .sm-chev{transform:rotate(90deg)}
.sm-body{padding:0 18px 18px 60px}
.sm-body .sc-sec{border:0;background:none;box-shadow:none;padding:0;margin:0}
.sm-body .rd-eyebrow,.sm-body .rd-disc,.sm-body .rd-stats{display:none}
.sm-body .rd-sum-top{justify-content:flex-start}
.sm-body .rd-sum-l{gap:16px;align-items:flex-start}
.sm-body .rd-ring svg{width:64px!important;height:64px!important}
.sm-body .rd-ring small{display:none}
.sm-body .cr-dial{width:64px;height:64px;border-width:5px;gap:0}
.sm-body .cr-dial svg{width:22px;height:22px}
.sm-body .cr-dial small{display:none}
.sm-body .rd-sum-h h3{font-size:16px}
.sm-body .rd-sum-say{font-size:13.5px}
.sm-pane p{margin:0 0 12px;color:var(--ink-2);font-size:14px;line-height:1.55;max-width:70ch}
.sm-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}
.sm-row > small{color:var(--ink-3);font-size:12px;min-width:84px}
@media (max-width:640px){.sm-body{padding:0 14px 14px}.sm-step summary{padding:12px 14px}.sm-t{flex-direction:column;align-items:flex-start}}
/* buttons inside a step: one quiet size */
.sm-body .btn{min-height:34px;padding:6px 14px;font-size:13px}
.sm-body .cp-acts{gap:8px}
/* ---- the crawler sensor page, as a short checklist ---- */
.cs-wrap{display:grid;gap:10px;margin-bottom:14px}
.cs-status{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:var(--card)}
.cs-status b{display:block;font-size:15px;color:var(--ink)}
.cs-status small{display:block;margin-top:2px;color:var(--ink-3);font-size:13px}
.cs-dot{flex:none;width:12px;height:12px;border-radius:50%;background:var(--ink-3);box-shadow:0 0 0 5px var(--card-3)}
.cs-status.on{border-color:var(--ok)}
.cs-status.on .cs-dot{background:var(--ok);box-shadow:0 0 0 5px var(--ok-tint)}
.cs-steps .sm-body{padding-left:60px}
.cr-opts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cr-opt{flex-direction:row;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;border-width:1px}
.cr-opt-ico{flex:none;width:30px;height:30px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:var(--card-3);color:var(--ink-2)}
.cr-opt-ico svg{width:16px;height:16px}
.cr-opt-t b{display:block;font-size:14px}
.cr-opt-t small{display:block;font-size:12px;margin-top:2px}
.cr-opt.on .cr-opt-ico{background:var(--brand);color:#fff}
.cr-ol{font-size:13.5px;margin-bottom:10px}
.cr-note{margin:0 0 10px;color:var(--ink-3);font-size:13px;line-height:1.5}
.cs-wrap .rd-snip pre{max-height:220px;font-size:12px}
.cs-wrap .btn{min-height:34px;padding:6px 14px;font-size:13px}
.cr-test-res{font-size:13px}
.cs-key{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:0 18px}
.cs-key summary{cursor:pointer;padding:12px 0;font-size:13.5px;font-weight:600;color:var(--ink-2)}
.cs-key-b{padding:0 0 14px}
.cs-key-b p{margin:0 0 10px;color:var(--ink-3);font-size:13px;line-height:1.5;max-width:70ch}
@media (max-width:760px){.cr-opts{grid-template-columns:1fr}.cs-steps .sm-body{padding-left:14px}}
.rd-snip + .cr-note{margin-top:10px}

/* ---- the crawler sensor page, polished: banner, timeline, side cards ---- */
.cs-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:20px 22px;border-radius:18px;border:1px solid var(--line);background:var(--card)}
.cs-hero.on{border-color:var(--ok)}
.cs-hero-l{display:flex;align-items:center;gap:16px;min-width:0}
.cs-hero-l b{display:block;font-size:17px;color:var(--ink);margin:2px 0}
.cs-hero-l span:not(.cs-pulse){display:block;font-size:13px;color:var(--ink-3)}
.cs-kicker{display:block;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.cs-hero.on .cs-kicker{color:var(--ok)}
.cs-pulse{position:relative;flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--card-3);color:var(--ink-3)}
.cs-pulse svg{width:24px;height:24px}
.cs-hero.on .cs-pulse{background:var(--ok-tint);color:var(--ok)}
.cs-hero.on .cs-pulse::after{content:'';position:absolute;inset:-5px;border-radius:20px;border:2px solid var(--ok);opacity:0;animation:csPing 2.4s ease-out infinite}
@keyframes csPing{0%{opacity:.55;transform:scale(.92)}100%{opacity:0;transform:scale(1.12)}}
@media (prefers-reduced-motion:reduce){.cs-hero.on .cs-pulse::after{animation:none}}
.cs-facts{display:flex;gap:6px}
.cs-fact{padding:8px 16px;border-left:1px solid var(--line);text-align:left}
.cs-fact:first-child{border-left:0}
.cs-fact b{display:block;font-size:17px;color:var(--ink)}
.cs-fact small{display:block;font-size:11.5px;color:var(--ink-3)}
.cs-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}
.cs-main{display:grid;gap:10px;min-width:0}
.cs-redo{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.cs-redo .cr-note{margin:0}
/* the steps, one card, joined by a line */
.cs-tl{gap:0;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:4px 0;overflow:hidden}
.cs-tl > li{position:relative}
.cs-tl > li:not(:last-child)::after{content:'';position:absolute;left:31px;top:44px;bottom:-14px;width:2px;background:var(--line);z-index:0}
.cs-tl > li:not(:last-child):has(.sm-step.done)::after{background:var(--ok)}
.cs-tl .sm-step{border:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
.cs-tl .sm-n{position:relative;z-index:1}
.cs-tl .sm-step.now{background:var(--brand-tint)}
.cs-tl > li + li{border-top:1px solid var(--line)}
.cs-key{border-radius:14px}
/* the options: a tick on the chosen one */
.cr-opt{position:relative;transition:border-color .15s,transform .15s}
.cr-opt:hover{transform:translateY(-1px);border-color:var(--ink-3)}
.cr-opt.on::after{content:'✓';position:absolute;top:8px;right:10px;font-size:12px;font-weight:800;color:var(--brand)}
/* the code: a file bar */
.cs-code{border:1px solid var(--line)}
.cs-file{display:inline-flex;align-items:center;gap:6px}
.cs-file i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.cs-file b{margin-left:6px;font-size:12.5px;font-family:ui-monospace,Menlo,Consolas,monospace;color:var(--ink-2)}
.cs-file small{color:var(--ink-3);font-size:11.5px}
/* the side cards */
.cs-side{display:grid;gap:12px;align-content:start}
.cs-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.cs-card h3{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.cs-card p{margin:0;font-size:13px;line-height:1.55;color:var(--ink-2)}
.cs-card-soft{background:var(--brand-tint);border-color:transparent}
.cs-group + .cs-group{margin-top:12px}
.cs-group-h{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.cs-group-h small{font-size:11.5px;color:var(--ink-3)}
.cs-chips{display:flex;flex-wrap:wrap;gap:6px}
/* the chip only: its brand mark is a span too, and must keep its own box */
.cs-chips>span{font-size:11.5px;line-height:18px;padding:3px 10px;border-radius:999px;background:var(--card-3);color:var(--ink-2);white-space:nowrap}
.cs-chips>span:has(>.bm){padding-left:4px}
.cs-ticks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cs-ticks li{position:relative;padding-left:22px;font-size:13px;line-height:1.45;color:var(--ink-2)}
.cs-ticks li::before{content:'✓';position:absolute;left:0;top:0;font-weight:800;color:var(--ok)}
@media (max-width:1000px){.cs-grid{grid-template-columns:1fr}.cs-side{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}
@media (max-width:640px){.cs-facts{width:100%}.cs-fact{flex:1;padding:6px 10px}}
.cs-file i{background:var(--ink-3);opacity:.45}

/* ---- the campaign checklist, in the sensor page's design ---- */
.sm-hero{margin-bottom:14px}
.sm-hero .cs-hero-l > div{min-width:0;flex:1}
.sm-hero .cs-hero-l{flex:1;min-width:260px}
.sm-bar-hero{display:block;max-width:260px;margin-top:10px;background:var(--card-3)}
.sm-goal{margin:0 0 10px!important;font-size:14px!important;color:var(--ink)!important;font-weight:600;line-height:1.45!important}
.sm-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:12.5px}
.sm-dl dt{color:var(--ink-3)}
.sm-dl dd{margin:0;color:var(--ink-2)}
.sm-rivals{margin-bottom:10px}
.sm-rivals span{font-size:12px;padding:4px 10px}
.sm-side-note{font-size:12px!important;color:var(--ink-3)!important}
.cs-card .cp-acts{margin-top:12px}
.cs-tl .sm-body .rd-sum{padding:0}

/* ---- steps in order: locked, skipped (orange), and the skip ---- */
.sm-step.locked{opacity:.55}
.sm-sum{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:not-allowed}
.sm-step.locked .sm-n{font-size:12px;background:var(--card-3)}
.sm-step.skipped .sm-n{background:var(--wr-tint);color:var(--wr)}
.sm-step.skipped .sm-t small{color:var(--wr)}
.cs-tl > li:not(:last-child):has(.sm-step.skipped)::after{background:var(--wr)}
.cs-tl .sm-step.skipped{background:color-mix(in srgb,var(--wr-tint) 45%,transparent)}
.sm-foot{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);font-size:12.5px;color:var(--ink-3)}
.sm-foot.skipped{color:var(--wr)}
.sm-skip{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--wr);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.sm-skip:hover{color:var(--wr-ink,var(--wr))}
.sk-lose{margin:0 0 12px;padding-left:20px;color:var(--ink-2);line-height:1.55;font-size:14px}
.sk-lose li{margin-bottom:6px}
.sk-lose li::marker{color:var(--wr)}
/* adding a competitor to a running campaign */
.sm-pick{margin-top:12px;padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.sm-pick p{margin:0 0 10px;font-size:13px;color:var(--ink-2)}
.sm-pick-chips{margin-bottom:10px}
.sm-pick-chip{font:inherit;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px dashed var(--brand);background:var(--brand-tint);color:var(--brand);cursor:pointer}
.sm-pick-chip:hover{border-style:solid}
.sm-pick-chip:disabled{opacity:.5}
.sm-pick-foot{margin-bottom:8px;font-size:13px}
.sm-pick-note{display:block;color:var(--ink-3);font-size:12px;line-height:1.45}
.sm-pick-note.bad{color:var(--er)}

/* the site check inside a campaign: every fix open */
.sc-howto{margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--brand-tint)}
.sc-howto b{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);margin-bottom:4px}
.sc-howto p{margin:0;font-size:13px;line-height:1.5;color:var(--ink)}
.sc-howto .rd-snip{margin-top:10px;background:var(--card)}
.sc-clamp2{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sc-howto-more{display:block;margin-top:6px;font-size:11.5px;color:var(--ink-3)}
.sc-howto-none{display:block;margin-top:8px;font-size:12px;color:var(--ink-3)}
.sc-row-b{padding:0 14px 14px 40px}
.sc-row-b p{margin:0 0 8px;font-size:13px;line-height:1.55;color:var(--ink-2)}

/* ---- the campaign's site fixes, simple ---- */
.sf-hero{margin-bottom:18px}
.sf-ring{flex:none;display:inline-flex}
.sf-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cs-fact.bad b{color:var(--er)}
.cs-fact.warn b{color:var(--wr)}
.sf-hero .btn{min-height:34px;padding:6px 14px;font-size:13px}
.sf-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 10px}
.sf-head h2{margin:0;font-size:17px;color:var(--ink)}
.sf-head small{color:var(--ink-3);font-size:12.5px}
.sf-list .sm-step.sf-fail .sf-n{background:var(--er-tint);color:var(--er)}
.sf-list .sm-step.sf-warn .sf-n{background:var(--wr-tint);color:var(--wr)}
.sf-list .sm-step.sf-fail .sm-t small{color:var(--er)}
.sf-list .sm-step.sf-warn .sm-t small{color:var(--wr)}
.sf-list .sm-step[open]{background:var(--card-2,var(--card))}
.sf-body .sf-why{margin:0 0 10px;font-size:13.5px;line-height:1.55;color:var(--ink-2);max-width:75ch}
.sf-body .sc-howto{margin-top:0}
.sf-body .rd-snip{margin-top:10px}
.sf-more{margin:14px 2px 0;font-size:13px;color:var(--ink-3)}
.sf-list,.sf-list > li,.sf-list .sm-step,.sf-head,.sf-hero,.sf-more{width:100%;box-sizing:border-box}
.sf-list .sm-step summary{width:100%;box-sizing:border-box}

/* fix it with your own AI assistant (the MCP server) */
.mc-card{margin-top:16px}
.mc-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.mc-head > div{flex:1;min-width:240px}
.mc-head h3{margin:2px 0 4px;font-size:16px;color:var(--ink)}
.mc-head p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-2);max-width:72ch}
.mc-ico{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand)}
.mc-ico svg{width:20px;height:20px}
.mc-head .btn{min-height:34px;padding:6px 14px;font-size:13px}
.mc-steps{margin:16px 0 0;padding-left:22px;display:grid;gap:16px}
.mc-steps li::marker{color:var(--brand);font-weight:800}
.mc-steps b{display:block;font-size:14px;color:var(--ink);margin-bottom:8px}
.mc-steps p{margin:8px 0;font-size:13px;color:var(--ink-3)}
.mc-tabs{flex-wrap:wrap}
.mc-note{margin:14px 0 0;font-size:12px;color:var(--ink-3)}
.mc-card .cr-keyrow .btn{min-height:30px}
.mc-card{margin:0 0 18px}

/* what starting the campaign means */
.st-list{margin:0 0 14px;padding-left:20px;display:grid;gap:8px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.st-list b{color:var(--ink)}
.st-list .st-lock::marker{content:'🔒  '}
.sd-start{list-style:none;margin:0 0 14px;padding:0;display:block}
.sd-start li{position:relative;padding:0 0 10px 26px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.sd-start li b{color:var(--ink)}
.sd-start li::before{content:'';position:absolute;left:6px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--brand)}
.sd-start li.sd-lock{padding:10px 12px 10px 36px;margin-bottom:10px;border-radius:12px;background:var(--wr-tint)}
.sd-start li.sd-lock::before{content:'🔒';width:auto;height:auto;background:none;left:12px;top:10px;font-size:13px}

/* the warning that has to be ticked */
.cf-ack{display:flex;gap:10px;align-items:flex-start;margin:0 0 4px;padding:12px 14px;border-radius:12px;border:1.5px solid var(--wr);background:var(--wr-tint);cursor:pointer;font-size:13.5px;line-height:1.45;color:var(--ink)}
.cf-ack input{margin-top:2px;width:16px;height:16px;accent-color:var(--brand);flex:none}
.cf-ack.on{border-color:var(--ok);background:var(--ok-tint)}
.cf-acts .btn:disabled{opacity:.45;cursor:not-allowed}
/* the report building, in step 5 */
.mw-prog{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}
.mw-prog li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--card-2,var(--card-3))}
.mw-prog i{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:12px;background:var(--card-3);color:var(--ink-3)}
.mw-prog b{display:block;font-size:13.5px;color:var(--ink)}
.mw-prog small{display:block;font-size:12px;color:var(--ink-3)}
.mw-done i{background:var(--ok-tint);color:var(--ok)}
.mw-run i{background:var(--brand-tint);border:2px solid var(--brand);border-top-color:transparent;animation:mwSpin 1s linear infinite}
.mw-run small{color:var(--brand)}
.mw-bad i{background:var(--er-tint);color:var(--er)}
.mw-bad small{color:var(--er)}
@keyframes mwSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.mw-run i{animation:none}}

/* ---- campaign progress, week by week ---- */
.pg-bar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;margin:0 0 18px}
.pg-seg{height:8px;border-radius:999px;background:var(--card-3)}
.pg-seg.done{background:var(--ok)}
.pg-seg.now{background:var(--brand)}
.pg-weeks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pg-week{padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:var(--card)}
.pg-week.now{border-color:var(--brand);background:var(--brand-tint)}
.pg-week.next{background:transparent;border-style:dashed}
.pg-wk-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.pg-wk-h b{font-size:15px;color:var(--ink)}
.pg-wk-h small{color:var(--ink-3);font-size:12.5px}
.pg-chip{margin-left:auto;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--card-3);color:var(--ink-3)}
.pg-chip.done{background:var(--ok-tint);color:var(--ok)}
.pg-chip.now{background:var(--brand);color:#fff}
.pg-evs{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pg-ev{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;color:var(--ink-2)}
.pg-ev i{flex:none;width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--ink-3)}
.pg-ev.ok i{background:var(--ok)}
.pg-ev.warn i{background:var(--wr)}
.pg-ev.plan{color:var(--ink-3)}
.pg-ev.plan i{background:transparent;border:1.5px solid var(--ink-3)}
.pg-ev.none{color:var(--ink-3);font-style:italic}
.pg-ev.run{color:var(--brand);font-weight:600}
.pg-ev.run i{width:12px;height:12px;margin-top:4px;border:2px solid var(--brand);border-top-color:transparent;background:transparent;animation:mwSpin 1s linear infinite}

/* ---- where buyers ask from: the places and the map ---- */
.mk-row{display:flex;flex-direction:column;gap:6px;min-width:0}
.mk-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mk-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--brand-tint);color:var(--ink);font-size:12.5px;font-weight:600}
.mk-chip i{font-style:normal;color:var(--brand);font-size:11px}
.mk-chip.mk-default{background:var(--card-3);font-weight:500}
.mk-chip.mk-default small{color:var(--ink-3);font-weight:400}
.mk-x{border:0;background:none;color:var(--ink-3);cursor:pointer;font-size:14px;padding:0 0 0 2px}
.mk-x:hover{color:var(--er)}
.mk-sub{font-size:12px;color:var(--ink-3)}
.mk-note{font-size:12px}
.mk-note.bad{color:var(--er)}
.sm-row-top{align-items:flex-start}
.mk-sec{margin-bottom:14px}
.mp-dialog{max-width:min(760px,calc(100vw - 24px))}
.mp-dlg{display:flex;flex-direction:column;gap:10px}
.mp-head{display:flex;align-items:center;justify-content:space-between}
.mp-head h3{margin:0}
.mp-search{display:flex;gap:8px}
.mp-search input{flex:1;min-width:0;padding:9px 12px;border-radius:10px;border:1px solid var(--line);background:var(--card-2,var(--card));color:var(--ink);font:inherit;font-size:14px}
.mp-results{display:grid;gap:4px}
.mp-result{font:inherit;text-align:left;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 12px;border-radius:10px;cursor:pointer}
.mp-result b{display:block;font-size:13.5px}
.mp-result small{color:var(--ink-3);font-size:12px}
.mp-view{position:relative;height:340px;border-radius:14px;overflow:hidden;background:#aad3df;cursor:grab;touch-action:none;user-select:none}
.mp-view:active{cursor:grabbing}
.mp-tiles img{position:absolute;width:256px;height:256px;pointer-events:none}
.mp-pin{position:absolute;width:22px;height:22px;margin:-22px 0 0 -11px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--er,#c2412d);border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.35);pointer-events:none}
.mp-zoom{position:absolute;right:10px;top:10px;display:flex;flex-direction:column;gap:4px}
.mp-z{width:32px;height:32px;border-radius:8px;border:1px solid rgba(0,0,0,.2);background:#fff;color:#111;font-size:18px;font-weight:700;cursor:pointer}
.mp-credit{position:absolute;right:6px;bottom:4px;font-size:10px;color:#333;background:rgba(255,255,255,.75);padding:1px 5px;border-radius:4px}
.mp-card b{display:block;font-size:14px;color:var(--ink);margin-bottom:8px}
.mp-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:6px}
.mp-level{font:inherit;text-align:left;cursor:pointer;padding:9px 12px;border-radius:12px;border:1.5px solid var(--line);background:var(--card);color:var(--ink)}
.mp-level span{display:block;font-size:13px;font-weight:600}
.mp-level small{display:block;font-size:11.5px;color:var(--ink-3)}
.mp-level.on{border-color:var(--brand);background:var(--brand-tint)}
.mp-note{margin:0}

/* ---- the questions page: four parts, and the list to check ---- */
.mk-sec .sc-sec-h{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}
.mk-sec .sc-sec-h p{flex-basis:100%;margin:0}
.qf-sec{margin-top:14px}
.qf-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.qf-row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;background:var(--card-2,var(--card-3));border:1px solid var(--line)}
.qf-n{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--brand-tint);color:var(--brand)}
.qf-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.qf-q{font-size:14px;font-weight:600;color:var(--ink)}
.qf-q .cp-qlabel{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.qf-places{display:flex;flex-wrap:wrap;gap:6px}
.qf-place{font:inherit;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px dashed var(--line);background:transparent;color:var(--ink-3);cursor:pointer}
.qf-place i{font-style:normal;font-size:11px}
.qf-place.on{border-style:solid;border-color:var(--brand);background:var(--brand-tint);color:var(--ink)}
.qf-place.on i{color:var(--brand)}
.qf-x{flex:none;border:0;background:none;color:var(--ink-3);font-size:18px;line-height:1;cursor:pointer;padding:2px 4px}
.qf-x:hover{color:var(--er)}
.qf-empty{padding:16px;border-radius:12px;background:var(--card-2,var(--card-3));color:var(--ink-3);font-size:13px;text-align:center}
.qf-note{display:block;margin-top:8px;color:var(--er);font-size:12px}
.qf-note:empty{display:none}
.mk-sec .sc-sec-h{display:flex;flex-wrap:nowrap}
.mk-sec .sc-sec-h p{flex-basis:auto}

/* ---- the place picker: the world drawn from outlines (no tiles), like Oftheard's India map ---- */
.mw-view{background:var(--card-2,#0e1726);cursor:default;height:360px}
.mw-svg{display:block;width:100%;height:100%}
.mw-c{fill:var(--card-3);stroke:var(--card);stroke-width:.4;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .12s}
.mw-c:hover{fill:color-mix(in srgb,var(--brand) 35%,var(--card-3))}
.mw-c.had{fill:color-mix(in srgb,var(--ok) 30%,var(--card-3))}
.mw-c.on{fill:var(--brand)}
.mw-s{fill:color-mix(in srgb,var(--brand) 55%,var(--card-3));stroke:var(--card);stroke-width:.6;vector-effect:non-scaling-stroke;cursor:pointer}
.mw-s:hover{fill:color-mix(in srgb,var(--brand) 80%,var(--card-3))}
.mw-s.on{fill:var(--amber,#e0a52b)}
.mw-pin{fill:var(--er,#c2412d);stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}
.mw-tip{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:8px;background:var(--card);color:var(--ink);font-size:12.5px;font-weight:600;border:1px solid var(--line);pointer-events:none}
.mw-loading{position:absolute;left:0;right:0;top:45%;text-align:center}
.mw-conts{display:flex;flex-wrap:wrap;gap:6px}
.mw-cont{font:inherit;font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink-2);cursor:pointer}
.mw-cont.on{background:var(--brand);border-color:var(--brand);color:#fff}
.mw-hint{display:block;margin:8px 0 0;color:var(--ink-3);font-size:12px}
.mw-city{margin-top:10px}
/* the countries readable in both themes */
.mw-c{fill:color-mix(in srgb,var(--ink) 16%,var(--card));stroke:color-mix(in srgb,var(--ink) 30%,var(--card))}
.mw-c:hover{fill:color-mix(in srgb,var(--brand) 45%,var(--card))}
.mw-c.had{fill:color-mix(in srgb,var(--ok) 40%,var(--card))}
.mw-c.on{fill:color-mix(in srgb,var(--brand) 70%,var(--card))}
.mw-view{background:color-mix(in srgb,var(--brand) 8%,var(--card-2,var(--card)))}

/* ---- the questions page: sources on the left, the places and the list on the right ---- */
.qg{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:16px;align-items:start}
.qg-main{display:grid;gap:14px;min-width:0}
.qg-main .cp-sec,.qg-side .cp-sec{margin:0}
.qg-side{position:sticky;top:76px;display:grid;gap:12px;max-height:calc(100vh - 170px);overflow:auto;padding-bottom:4px}
.qg-side .mk-sec .cp-no{display:none}
.qg-side .sc-sec{padding:16px 18px}
.qg-side h2{font-size:16px}
.qf-count{margin-left:6px;font-size:12px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--brand-tint);color:var(--brand);vertical-align:middle}
.qf-sec{margin-top:0}
.qf-row{padding:10px 12px}
.qf-q{font-size:13.5px}
.qf-locs{position:relative}
.qf-loc{font:inherit;display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink-2);font-size:12px;font-weight:600;cursor:pointer}
.qf-loc span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qf-loc i{font-style:normal;font-size:11px}
.qf-caret{font-size:10px;color:var(--ink-3)}
.qf-loc:hover{border-color:var(--brand)}
.qf-menu{margin-top:6px;padding:8px;border-radius:12px;border:1px solid var(--line);background:var(--card);box-shadow:var(--sh1);display:grid;gap:4px}
.qf-opt{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--ink)}
.qf-opt:hover{background:var(--card-3)}
.qf-opt input{accent-color:var(--brand)}
.qf-opt small{margin-left:auto;color:var(--ink-3);font-size:11px}
.qf-addplace{font:inherit;text-align:left;border:1px dashed var(--brand);background:var(--brand-tint);color:var(--brand);font-size:12.5px;font-weight:600;padding:7px 10px;border-radius:8px;cursor:pointer}
.qf-menu-note{display:block;padding:4px 8px;color:var(--ink-3);font-size:11.5px;line-height:1.4}
@media (max-width:1000px){.qg{grid-template-columns:1fr}.qg-side{position:static;max-height:none;overflow:visible}}

/* ---- the questions page, calmer: one card on the right, compact rows, one place each ---- */
.qg{grid-template-columns:minmax(0,1fr) minmax(360px,440px)}
.qg-side .qf-sec{padding:18px}
.qf-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.qf-head h2{margin:0;font-size:17px}
.qf-count{margin-left:auto}
.qf-places-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;border-radius:12px;background:var(--card-2,var(--card-3));margin-bottom:12px}
.qf-pl-l{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-right:4px}
.qf-pl{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;background:var(--brand-tint);color:var(--ink);font-size:12px;font-weight:600}
.qf-pl.home{background:var(--card);border:1px solid var(--line)}
.qf-pl-x{border:0;background:none;color:var(--ink-3);cursor:pointer;font-size:13px;padding:0 0 0 2px}
.qf-pl-x:hover{color:var(--er)}
.qf-pl-add{font:inherit;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px dashed var(--brand);background:none;color:var(--brand);cursor:pointer}
.qf-list{gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.qf-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto 22px;align-items:center;gap:10px;padding:9px 12px;border:0;border-radius:0;background:var(--card)}
.qf-row + .qf-row{border-top:1px solid var(--line)}
.qf-row:hover{background:var(--card-2,var(--card-3))}
.qf-n{width:22px;height:22px;font-size:11px}
.qf-q{font-size:13px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qf-pin{display:inline-flex;align-items:center;gap:4px;font-size:11px}
.qf-pin i{font-style:normal}
.qf-sel{font:inherit;font-size:12px;max-width:150px;padding:4px 6px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--ink-2);cursor:pointer}
.qf-sel:focus{outline:2px solid var(--brand);outline-offset:1px}
.qf-x{width:22px;font-size:16px}
.qf-empty{border:0}
.qf-foot{margin:12px 2px 0;font-size:11.5px;line-height:1.45;color:var(--ink-3)}
/* the left column lighter: smaller chips, quieter boxes */
.qg-main .cp-chips label{padding:6px 12px;font-size:13px}
.qg-main .cp-trend{background:transparent;border:0;padding:0}
.qg-main .cp-trend + .cp-trend{margin-top:16px;padding-top:16px;border-top:1px dashed var(--line)}
.qg-main .cp-trend-chip{padding:5px 10px;font-size:12.5px}
@media (max-width:1000px){.qg{grid-template-columns:1fr}}
.qf-q{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}
.qf-sel{max-width:130px}

/* a place where Google or ChatGPT are blocked or not offered */
.mw-warn{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--wr);background:var(--wr-tint);font-size:13px;line-height:1.45;color:var(--ink)}
.mw-warn b{color:var(--wr-ink);font-size:13px}
.mw-c.warn{fill:color-mix(in srgb,var(--wr) 30%,var(--card-3))}
.mw-c.warn.on{fill:var(--wr)}
.qf-pl.warn,.mk-chip.warn{background:var(--wr-tint);box-shadow:inset 0 0 0 1px var(--wr)}
.pl-warn{font-style:normal;color:var(--wr-ink);cursor:help}

/* ---- campaign progress, calmer: tiles, a bar that tells setup from runs, setup folded, one card a week ---- */
.pg-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.pg-tile{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.pg-tile small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.pg-tile b{font-size:22px;line-height:1.2;color:var(--ink);font-variant-numeric:tabular-nums}
.pg-tile span{font-size:12.5px;color:var(--ink-3)}
.pg-tile.warn b{color:var(--wr-ink)}
.pg-bar{gap:5px;margin:0 0 8px}
.pg-seg{height:8px}
.pg-seg.setup{background:repeating-linear-gradient(135deg,var(--card-3) 0 4px,transparent 4px 7px);box-shadow:inset 0 0 0 1px var(--line)}
.pg-seg.next{background:transparent;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--brand) 55%,transparent)}
.pg-seg.later{background:var(--card-3)}
.pg-legend{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 18px;font-size:12px;color:var(--ink-3)}
.pg-legend span{display:inline-flex;align-items:center;gap:6px}
.pg-legend .pg-seg{display:inline-block;width:18px;height:8px;border-radius:999px}
.pg-weeks{gap:8px}
.pg-week{padding:14px 18px}
.pg-wk-h{align-items:center;margin-bottom:6px}
.pg-wk-t{display:flex;align-items:baseline;gap:10px}
.pg-wk-h b{font-size:14.5px}
.pg-run{font-size:11.5px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--brand-tint);color:var(--brand)}
.pg-week.now .pg-run{background:var(--card);}
.pg-lead{margin:0 0 6px;font-size:13.5px;color:var(--ink);font-weight:500}
.pg-week.next .pg-lead{color:var(--ink-2);font-weight:400}
.pg-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pg-tag{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.pg-week.now .pg-tag{background:var(--card)}
.pg-week.next{padding:12px 18px}
.pg-week.next .pg-wk-h{margin-bottom:4px}
.pg-ev-d{margin-left:auto;padding-left:12px;font-size:12px;color:var(--ink-3);white-space:nowrap}
/* the setup weeks, folded */
.pg-week.setupwk{padding:0;background:var(--card);border-style:solid}
.pg-setup>summary{list-style:none;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;cursor:pointer}
.pg-setup>summary::-webkit-details-marker{display:none}
.pg-setup>summary::after{content:'▾';margin-left:4px;color:var(--ink-3);font-size:12px;transition:transform .15s}
.pg-setup[open]>summary::after{transform:rotate(180deg)}
.pg-setup-t{display:flex;align-items:baseline;gap:10px}
.pg-setup-t b{font-size:14.5px;color:var(--ink)}
.pg-setup-t small{font-size:12.5px;color:var(--ink-3)}
.pg-setup-s{font-size:13px;color:var(--ink-3)}
.pg-setup-n{margin-left:auto;font-size:12px;color:var(--ink-3)}
.pg-setup>.pg-evs{padding:0 18px 14px;border-top:1px dashed var(--line);padding-top:12px;margin:0}
.pg-chip.setup{margin-left:0;background:var(--card-3);color:var(--ink-2)}
@media (max-width:760px){.pg-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-setup-n{margin-left:0}}

/* ---- the week's run: a button live in its own week only; weeks to come locked ---- */
.pg-act{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}
.pg-act small{font-size:12px;color:var(--ink-3)}
.pg-act.locked{margin-top:8px;padding-top:8px}
.pg-lock{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px;background:var(--card-3);color:var(--ink-3)}
.pg-lock i{font-style:normal;font-size:11px}
.pg-chip.locked{background:var(--card-3);color:var(--ink-3)}
.pg-chip.missed{background:var(--wr-tint);color:var(--wr-ink)}
.pg-tile.go{border-color:var(--wr);background:var(--wr-tint)}
.pg-tile.go b{color:var(--wr-ink)}

/* ---- campaign progress, v3: setup folded, this week as one card to act on, the rest as short rows ---- */
.pg-card{margin:0 0 14px;padding:16px 18px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.pg-card-h{display:flex;align-items:baseline;gap:10px;margin:0 0 8px}
.pg-card-h h2{margin:0;font-size:15px;color:var(--ink)}
.pg-card-h small{margin-left:auto;font-size:12px;color:var(--ink-3)}
.pg-setupcard{padding:0}
.pg-setupcard .pg-setup>summary{padding:14px 18px}
.pg-rows{list-style:none;margin:0;padding:0}
.pg-row{display:grid;grid-template-columns:28px 120px minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 4px}
.pg-row + .pg-row{border-top:1px solid var(--line)}
.pg-dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--card-3);color:var(--ink-3)}
.pg-row.ok .pg-dot{background:var(--ok-tint);color:var(--ok)}
.pg-row.miss .pg-dot{background:var(--wr-tint);color:var(--wr-ink)}
.pg-row.lock .pg-dot{background:transparent;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--brand) 55%,transparent);color:var(--brand)}
.pg-row-w{display:flex;flex-direction:column;line-height:1.25}
.pg-row-w b{font-size:13.5px;color:var(--ink)}
.pg-row-w small{font-size:12px;color:var(--ink-3)}
.pg-row-m{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0}
.pg-row-t{font-size:13.5px;color:var(--ink-2);min-width:0}
.pg-row-s{flex-basis:100%;font-size:12px;color:var(--ink-3)}
.pg-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px;background:var(--card-3);color:var(--ink-3);white-space:nowrap}
.pg-pill i{font-style:normal;font-size:10.5px}
.pg-pill.ok{background:var(--ok-tint);color:var(--ok)}
.pg-pill.miss{background:var(--wr-tint);color:var(--wr-ink)}
/* this week */
.pg-now{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:0;margin:0 0 14px;border-radius:18px;overflow:hidden;border:1.5px solid var(--brand);background:var(--brand-tint)}
.pg-now-main{padding:18px 20px;min-width:0}
.pg-now-h{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}
.pg-now-h .pg-chip{margin-left:0}
.pg-now-h b{font-size:17px;color:var(--ink)}
.pg-now-h small{font-size:12.5px;color:var(--ink-3)}
.pg-now-lead{margin:0 0 10px;font-size:14px;color:var(--ink);font-weight:500}
.pg-now .pg-tags{margin-top:10px}
.pg-now .pg-tag{background:var(--card)}
.pg-now-act{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;padding:18px 20px;background:var(--card);border-left:1px solid var(--line)}
.pg-now-act b{font-size:15px;color:var(--ink)}
.pg-now-act small{font-size:12px;color:var(--ink-3)}
.pg-now-act .btn{width:100%;justify-content:center;margin:4px 0 2px}
.pg-now-k{font-size:11px!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.pg-now-act.done b{color:var(--ok)}
.pg-big-tick{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ok-tint);color:var(--ok);font-weight:700}
@media (max-width:760px){.pg-now{grid-template-columns:1fr}.pg-now-act{border-left:0;border-top:1px solid var(--line)}.pg-row{grid-template-columns:28px minmax(0,1fr) auto}.pg-row-m{grid-column:2/4}}

/* the first run: the starting point, said plainly */
.pg-first{display:flex;gap:12px;align-items:flex-start;margin:4px 0 12px;padding:12px 14px;border-radius:14px;background:var(--card);border:1.5px solid var(--wr)}
.pg-first-i{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;background:var(--wr);color:#1a1205}
.pg-first b{display:block;font-size:14.5px;color:var(--ink);margin-bottom:2px}
.pg-first span{font-size:13px;line-height:1.45;color:var(--ink-2)}
.pg-first-note{margin:0 0 12px;padding:12px 14px;border-radius:12px;background:var(--wr-tint);border:1.5px solid var(--wr);font-size:13.5px;line-height:1.5;color:var(--ink)}
.pg-first-note b{color:var(--wr-ink)}

.pg-first .pg-first-i{font-size:13px;color:#1a1205;line-height:1}
.pg-first.set{border-color:var(--ok)}
.pg-first.set .pg-first-i{background:var(--ok-tint);color:var(--ok)}

/* ---- a week's summary ---- */
.wk-run{margin:0 0 14px;padding:16px 18px;border-radius:18px;border:1.5px solid var(--brand);background:var(--brand-tint);display:grid;gap:10px}
.wk-run-h{display:flex;align-items:center;gap:10px}
.wk-run-h b{font-size:15px;color:var(--ink)}
.wk-spin{width:16px;height:16px;border-radius:50%;border:2px solid var(--brand);border-top-color:transparent;animation:mwSpin 1s linear infinite}
.wk-run small{font-size:12.5px;color:var(--ink-3)}
.wk-steps{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.wk-steps li{font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px;background:var(--card);color:var(--ink-3)}
.wk-steps li.done{background:var(--ok-tint);color:var(--ok)}
.wk-steps li.now{background:var(--brand);color:#fff}
.wk-empty{text-align:left}
.wk-empty h2{margin:0 0 6px;font-size:16px}
.wk-first{margin:0 0 14px}
.wk-list{padding:16px 18px 8px}
.wk-qs{display:grid;gap:8px}
.wk-q{border:1px solid var(--line);border-radius:14px;background:var(--card);overflow:hidden}
.wk-q[open]{border-color:color-mix(in srgb,var(--brand) 45%,var(--line))}
.wk-q>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer}
.wk-q>summary::-webkit-details-marker{display:none}
.wk-q>summary::after{content:'▾';margin-left:auto;color:var(--ink-3);font-size:12px;transition:transform .15s}
.wk-q[open]>summary::after{transform:rotate(180deg)}
.wk-pos{flex:none;min-width:44px;height:30px;padding:0 8px;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums;background:var(--card-3);color:var(--ink-3)}
.wk-pos.top{background:var(--ok-tint);color:var(--ok)}
.wk-pos.p1{background:var(--brand-tint);color:var(--brand)}
.wk-pos.far{background:var(--wr-tint);color:var(--wr-ink)}
.wk-q-t{display:flex;flex-direction:column;min-width:0}
.wk-q-t b{font-size:14px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-q-t small{font-size:12px;color:var(--ink-3)}
.wk-delta{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px}
.wk-delta.up{background:var(--ok-tint);color:var(--ok)}
.wk-delta.down{background:var(--er-tint);color:var(--er-ink)}
.wk-aio{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.wk-q-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;padding:4px 16px 16px;border-top:1px solid var(--line)}
.wk-col h3{margin:12px 0 8px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.wk-col h4{margin:12px 0 6px;font-size:12.5px;color:var(--ink-2)}
.wk-tops{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.wk-top{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 8px;border-radius:10px}
.wk-top.you{background:var(--brand-tint)}
.wk-top.rival{background:var(--wr-tint)}
.wk-top-n{font-weight:700;font-size:12.5px;color:var(--ink-3);text-align:center}
.wk-top-t{display:flex;flex-direction:column;min-width:0}
.wk-top-t a{font-size:13px;font-weight:600;color:var(--ink);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-top-t a:hover{text-decoration:underline}
.wk-top-t small{font-size:11.5px;color:var(--ink-3)}
.wk-tag{font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--card-3);color:var(--ink-3)}
.wk-tag.you{background:var(--brand);color:#fff}
.wk-tag.rival{background:var(--wr);color:#1a1205}
.wk-gap{list-style:none;text-align:center;color:var(--ink-4);font-size:12px;line-height:1}
.wk-miss{list-style:none;margin-top:6px;padding:8px 10px;border-radius:10px;background:var(--wr-tint);color:var(--wr-ink);font-size:12.5px}
.wk-cmp .sub{font-size:12.5px;margin:0 0 10px}
.wk-bars{display:grid;gap:5px}
.wk-bar{display:grid;grid-template-columns:150px minmax(0,1fr) 92px;align-items:center;gap:8px;font-size:12px}
.wk-bar small{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-bar-t{height:8px;border-radius:999px;background:var(--card-3);overflow:hidden}
.wk-bar-t i{display:block;height:100%;border-radius:999px;background:var(--ink-3)}
.wk-bar.you .wk-bar-t i{background:var(--brand)}
.wk-bar.off{opacity:.5}
.wk-bar b{font-weight:600;color:var(--ink-3);text-align:right}
.wk-chips{display:flex;flex-wrap:wrap;gap:6px}
.wk-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:4px 10px;border-radius:999px;background:var(--card-3);color:var(--ink)}
.wk-chip small{font-size:10.5px;color:var(--ink-3)}
.wk-heads{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.wk-heads li{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--ink-2);padding:4px 0;border-bottom:1px dashed var(--line)}
.wk-heads small{color:var(--ink-3);white-space:nowrap}
.wk-note{display:block;margin-top:10px;font-size:11.5px;color:var(--ink-3)}
.wk-soon{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wk-soon>div{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:12px;border:1px dashed var(--line);font-size:13px;color:var(--ink-3)}
.wk-soon b{font-weight:600;color:var(--ink-2)}
.pg-pill-go{border:0;cursor:pointer;font:inherit;font-size:12px;font-weight:600}
@media (max-width:860px){.wk-q-body{grid-template-columns:1fr}.wk-soon{grid-template-columns:1fr}.wk-bar{grid-template-columns:110px minmax(0,1fr) 80px}}

/* what kind of pages win a search, and the move it means */
.wk-verdict{grid-column:1/-1;margin-top:14px;padding:12px 14px;border-radius:12px;display:grid;gap:4px;background:var(--card-2,var(--card-3));border-left:3px solid var(--ink-3)}
.wk-verdict b{font-size:13.5px;color:var(--ink)}
.wk-verdict span{font-size:13px;line-height:1.45;color:var(--ink-2)}
.wk-verdict.v-list,.wk-verdict.v-directory{border-left-color:var(--wr);background:var(--wr-tint)}
.wk-verdict.v-page{border-left-color:var(--ok);background:var(--ok-tint)}
.wk-targets{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}
.wk-targets small{font-size:12px;color:var(--ink-3);margin-right:2px}
.wk-targets a{font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--card);color:var(--ink);text-decoration:none;border:1px solid var(--line)}
.wk-targets a:hover{border-color:var(--brand)}
.wk-tag.k-list{background:var(--brand-tint);color:var(--brand)}

.wk-later{margin-top:10px;padding:10px 14px;border-radius:12px;border:1px dashed var(--line);display:grid;gap:2px;font-size:13px}
.wk-later b{color:var(--ink)}
.wk-later span{color:var(--ink-3)}

/* ---- week summary v2: question tiles, one open in five steps ---- */
.wk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.wk-tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;font:inherit;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;transition:border-color .12s,box-shadow .12s}
.wk-tile:hover{border-color:color-mix(in srgb,var(--brand) 50%,var(--line))}
.wk-tile.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}
.wk-tile-h{display:flex;align-items:center;gap:6px;width:100%}
.wk-tile-q{font-size:14px;line-height:1.3}
.wk-tile-p{font-size:12px;color:var(--ink-3)}
.wk-tile-v{margin-top:auto;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--card-3);color:var(--ink-2)}
.wk-tile-v.v-list,.wk-tile-v.v-directory{background:var(--wr-tint);color:var(--wr-ink)}
.wk-tile-v.v-page{background:var(--ok-tint);color:var(--ok)}
.wk-flag{margin-left:auto;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--er-tint);color:var(--er-ink)}
.wk-detail{margin:0 0 14px;padding:18px 20px;border-radius:18px;border:1.5px solid var(--brand);background:var(--card);display:grid;gap:14px}
.wk-detail-h small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.wk-detail-h h2{margin:2px 0 0;font-size:20px;color:var(--ink)}
.wk-step{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--line)}
.wk-step-h{display:flex;align-items:center;gap:10px}
.wk-step-h h3{margin:0;font-size:15px;color:var(--ink)}
.wk-step-n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:12.5px;background:var(--brand);color:#fff}
.wk-step.soon .wk-step-n{background:var(--card-3);color:var(--ink-3)}
.wk-step-b{display:grid;gap:10px;padding-left:36px}
.wk-where{display:flex;align-items:center;gap:16px}
.wk-big{flex:none;min-width:84px;padding:10px 14px;border-radius:14px;text-align:center;font-weight:800;font-size:26px;background:var(--card-3);color:var(--ink-3)}
.wk-big.none{font-size:14px;max-width:120px;line-height:1.25}
.wk-big.top{background:var(--ok-tint);color:var(--ok)}
.wk-big.p1{background:var(--brand-tint);color:var(--brand)}
.wk-big.far{background:var(--wr-tint);color:var(--wr-ink)}
.wk-where b{display:block;font-size:14px;color:var(--ink)}
.wk-where small{font-size:12.5px;color:var(--ink-3)}
.wk-where a{color:var(--brand)}
.wk-warn{display:grid;gap:3px;padding:12px 14px;border-radius:12px;background:var(--er-tint);border-left:3px solid var(--er)}
.wk-warn b{font-size:13.5px;color:var(--er-ink)}
.wk-warn span{font-size:13px;line-height:1.45;color:var(--ink-2)}
.wk-searched{font-size:12px;color:var(--ink-3)}
.wk-todo{font-size:13px;padding:10px 12px;border-radius:12px;background:var(--card-2,var(--card-3));color:var(--ink-2)}
.wk-cmp-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;border:1px dashed var(--line)}
.wk-cmp-cta b{display:block;font-size:13.5px;color:var(--ink)}
.wk-cmp-cta span{font-size:12.5px;color:var(--ink-3)}
.wk-cmp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.wk-cmp-grid h4{margin:0 0 8px;font-size:12.5px;color:var(--ink-2)}
.wk-cmp-wide{grid-column:1/-1}
.wk-soon2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wk-soon2 .wk-step{border-top:1px dashed var(--line)}
.wk-soon2 .sub{margin:0;font-size:12.5px}
.wk-detail .wk-verdict{margin-top:0}
@media (max-width:860px){.wk-cmp-grid,.wk-soon2{grid-template-columns:1fr}.wk-step-b{padding-left:0}}

.wk-step-b>.pg-pill{justify-self:start}

/* ===== week summary v3: one summary band; questions on the left, the open one on the right ===== */
.wk-board{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px;align-items:center;margin:0 0 18px;padding:20px 24px;border-radius:20px;background:var(--card);border:1px solid var(--line)}
.wk-board-nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.wk-num b{display:block;font-size:30px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ink)}
.wk-num span{display:block;margin-top:6px;font-size:12.5px;color:var(--ink-3)}
.wk-num.top b{color:var(--ok)}.wk-num.p1 b{color:var(--brand)}.wk-num.far b{color:var(--wr-ink)}.wk-num.none b{color:var(--ink-3)}
.wk-dist{display:flex;gap:4px;height:10px}
.wk-dist-s{border-radius:999px;min-width:10px}
.wk-dist-s.top{background:var(--ok)}.wk-dist-s.p1{background:var(--brand)}.wk-dist-s.far{background:var(--wr)}.wk-dist-s.none{background:var(--card-3)}
.wk-board-side{display:grid;gap:4px;padding-left:24px;border-left:1px solid var(--line)}
.wk-board-side small{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--wr-ink)}
.wk-board-side b{font-size:17px;color:var(--ink)}
.wk-board-side span{font-size:13px;line-height:1.45;color:var(--ink-3)}
.wk-shell{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}
.wk-listcol{position:sticky;top:76px;display:grid;gap:10px;max-height:calc(100vh - 100px);overflow:auto;padding:14px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.wk-listcol-h{display:flex;align-items:baseline;justify-content:space-between;padding:0 4px}
.wk-listcol-h b{font-size:14px;color:var(--ink)}
.wk-listcol-h small{font-size:11.5px;color:var(--ink-3)}
.wk-rows{display:grid;gap:4px}
.wk-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;padding:10px;border:0;border-radius:12px;background:transparent;color:var(--ink);cursor:pointer;transition:background .12s}
.wk-row:hover{background:var(--card-2,var(--card-3))}
.wk-row.on{background:var(--brand-tint)}
.wk-row .wk-pos{min-width:38px;height:38px;border-radius:11px;font-size:15px}
.wk-row-t{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.wk-row-t b{font-size:13.5px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.wk-row-t small{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden}
.wk-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--ink-4)}
.wk-dot.v-list,.wk-dot.v-directory{background:var(--wr)}.wk-dot.v-page{background:var(--ok)}.wk-dot.v-guide{background:var(--brand)}
.wk-row .wk-delta{font-size:11px;padding:2px 6px}
.wk-row .wk-flag{margin-left:0;width:20px;height:20px;padding:0;display:grid;place-items:center;border-radius:50%;font-size:12px}
.wk-listcol .wk-later{margin:4px 0 0;font-size:12px}
.wk-detail{padding:0;border:1px solid var(--line);border-radius:20px;background:var(--card);gap:0;overflow:hidden}
.wk-dh{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:var(--card-2,var(--card-3));border-bottom:1px solid var(--line)}
.wk-dh-t small{font-size:12px;color:var(--ink-3)}
.wk-dh-t h2{margin:4px 0 0;font-size:21px;line-height:1.25;color:var(--ink)}
.wk-dh-pos{flex:none;display:grid;justify-items:center;padding:10px 16px;border-radius:14px;background:var(--card)}
.wk-dh-pos b{font-size:28px;line-height:1;font-weight:800;color:var(--ink-3)}
.wk-dh-pos span{margin-top:4px;font-size:11px;color:var(--ink-3)}
.wk-dh-pos.top b{color:var(--ok)}.wk-dh-pos.p1 b{color:var(--brand)}.wk-dh-pos.far b{color:var(--wr-ink)}
.wk-detail .wk-step{padding:20px 24px;border-top:1px solid var(--line);gap:12px}
.wk-detail .wk-dh + .wk-step{border-top:0}
.wk-step-h h3{font-size:15.5px}
.wk-step-n{width:24px;height:24px;font-size:12px;background:var(--ink);color:var(--card)}
.wk-step-b{padding-left:34px;gap:10px}
.wk-lead{margin:0;font-size:15px;line-height:1.5;color:var(--ink);font-weight:500}
.wk-mute{margin:0;font-size:13px;color:var(--ink-3)}
.wk-mute.small{font-size:12px}
.wk-mute a{color:var(--brand)}
.wk-warn{border-left:0;border-radius:14px;padding:14px 16px}
.wk-tops{gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.wk-top{border-radius:0;padding:10px 14px;background:var(--card)}
.wk-top + .wk-top{border-top:1px solid var(--line)}
.wk-top.rival{background:var(--card);box-shadow:inset 3px 0 0 var(--wr)}
.wk-top.you{background:var(--brand-tint);box-shadow:inset 3px 0 0 var(--brand)}
.wk-top-n{font-variant-numeric:tabular-nums}
.wk-tag{font-size:10.5px;padding:2px 8px}
.wk-tag.rival{background:var(--wr-tint);color:var(--wr-ink)}
.wk-tag.k-list,.wk-tag.k-directory,.wk-tag.k-guide,.wk-tag.k-video,.wk-tag.k-forum{background:transparent;border:1px solid var(--line);color:var(--ink-3)}
.wk-gap{padding:4px 0;background:var(--card)}
.wk-detail .wk-verdict{border-left:0;border-radius:14px;padding:14px 16px;gap:6px}
.wk-verdict.v-mixed,.wk-verdict.v-guide{background:var(--card-2,var(--card-3))}
.wk-targets a{background:var(--card)}
.wk-todo{margin:0}
.wk-panel{padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3))}
.wk-panel h4{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.wk-bar{grid-template-columns:130px minmax(0,1fr) 52px}
.wk-bar-t{background:var(--card)}
.wk-bar b{font-size:12px}
.wk-chip{background:var(--card)}
.wk-secs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.wk-sec small{display:block;font-size:11.5px;font-weight:600;color:var(--ink-3);margin-bottom:6px}
.wk-sec div{display:flex;flex-wrap:wrap;gap:5px}
.wk-sec span{font-size:12.5px;padding:3px 9px;border-radius:8px;background:var(--card);color:var(--ink-2)}
.wk-cmp-cta{border:0;background:var(--card-2,var(--card-3));padding:14px 16px;border-radius:14px}
.wk-next{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 24px 22px;border-top:1px solid var(--line)}
.wk-next-i{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px dashed var(--line)}
.wk-next-i .wk-step-n{background:var(--card-3);color:var(--ink-3)}
.wk-next-i b{display:block;font-size:13.5px;color:var(--ink-2)}
.wk-next-i span{font-size:12px;color:var(--ink-3)}
.wk-next-i .pg-pill{margin-left:auto;white-space:nowrap}
@media (max-width:1000px){.wk-shell{grid-template-columns:1fr}.wk-listcol{position:static;max-height:none}.wk-board{grid-template-columns:1fr}.wk-board-side{padding-left:0;border-left:0}}
@media (max-width:700px){.wk-board-nums{grid-template-columns:repeat(2,1fr)}.wk-next,.wk-cmp-grid{grid-template-columns:1fr}.wk-step-b{padding-left:0}.wk-dh{flex-direction:column;align-items:flex-start}}

/* the page of the site for a search; what to do; the sections checklist */
.wk-page{display:grid;gap:3px;padding:12px 14px;border-radius:14px;background:var(--card-2,var(--card-3))}
.wk-page b{font-size:13.5px;color:var(--ink)}
.wk-page span{font-size:13px;color:var(--ink-2)}
.wk-page a{color:var(--brand);font-weight:600}
.wk-page.ok{background:var(--ok-tint)}
.wk-page.none{background:var(--wr-tint)}
.wk-page code,.wk-todos code{font-size:12.5px;padding:1px 6px;border-radius:6px;background:var(--card);color:var(--ink)}
.wk-warn a{color:var(--brand);font-weight:600}
.wk-loading{display:flex;align-items:center;gap:8px}
.wk-loading .wk-spin{width:12px;height:12px}
.wk-todo-box{padding:16px 18px;border-radius:14px;border:1px solid var(--line);background:var(--card)}
.wk-todo-box h4{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.wk-todos{margin:0;padding:0;list-style:none;counter-reset:td;display:grid;gap:12px}
.wk-todos li{counter-increment:td;display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:10px;row-gap:2px}
.wk-todos li::before{content:counter(td);grid-row:1/3;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11.5px;font-weight:800;background:var(--wr-tint);color:var(--wr-ink)}
.wk-todos b{font-size:13.5px;color:var(--ink)}
.wk-todos span{font-size:13px;line-height:1.5;color:var(--ink-2)}
.wk-todos a{color:var(--brand);font-weight:600}
.wk-check{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 18px}
.wk-check li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);padding:4px 0}
.wk-check i{font-style:normal;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;flex:none}
.wk-check li.have i{background:var(--ok-tint);color:var(--ok)}
.wk-check li.miss i{background:var(--er-tint);color:var(--er-ink)}
.wk-check li.miss span{color:var(--ink)}
.wk-check small{margin-left:auto;font-size:11.5px;color:var(--ink-3);white-space:nowrap}

/* ===== week summary v4: calm detail — one header, one status, one next step, tabs ===== */
.wk-calm{padding:24px 26px;display:grid;gap:16px}
.wk-hero{display:flex;align-items:center;gap:18px}
.wk-hero-pos{flex:none;width:92px;height:92px;border-radius:22px;display:grid;place-content:center;justify-items:center;background:var(--card-2,var(--card-3))}
.wk-hero-pos b{font-size:30px;line-height:1;font-weight:800;color:var(--ink-3);font-variant-numeric:tabular-nums}
.wk-hero-pos span{margin-top:6px;font-size:11.5px;color:var(--ink-3);text-align:center;line-height:1.2;padding:0 6px}
.wk-hero-pos.top{background:var(--ok-tint)}.wk-hero-pos.top b{color:var(--ok)}
.wk-hero-pos.p1{background:var(--brand-tint)}.wk-hero-pos.p1 b{color:var(--brand)}
.wk-hero-pos.far{background:var(--wr-tint)}.wk-hero-pos.far b{color:var(--wr-ink)}
.wk-hero-pos.none b{font-size:24px}
.wk-hero-t{min-width:0}
.wk-hero-t h2{margin:0 0 8px;font-size:22px;line-height:1.25;color:var(--ink)}
.wk-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.wk-chip2{font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--card-2,var(--card-3));color:var(--ink-2)}
.wk-chip2.v-list,.wk-chip2.v-directory{background:var(--wr-tint);color:var(--wr-ink)}
.wk-chip2.v-page{background:var(--ok-tint);color:var(--ok)}
.wk-info{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;font-style:italic;font-family:Georgia,serif;border:1px solid var(--line);color:var(--ink-3);cursor:help}
.wk-status .wk-page,.wk-status .wk-warn{padding:10px 14px;border-radius:12px;gap:2px}
.wk-status b{font-size:13px}
.wk-status span{font-size:12.5px}
.wk-status .wk-loading{margin:0}
.wk-nextstep{display:grid;gap:4px;padding:16px 18px;border-radius:16px;background:var(--card);border:1.5px solid var(--wr);box-shadow:0 1px 0 var(--line)}
.wk-nextstep small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wr-ink)}
.wk-nextstep b{font-size:16px;color:var(--ink)}
.wk-nextstep p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.wk-nextstep a{color:var(--brand);font-weight:600}
.wk-tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--card-2,var(--card-3));width:max-content;max-width:100%}
.wk-tab{font:inherit;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:0;border-radius:9px;background:transparent;color:var(--ink-3);cursor:pointer}
.wk-tab small{font-size:10.5px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--card);color:var(--ink-3)}
.wk-tab.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.wk-tab.on small{background:var(--brand-tint);color:var(--brand)}
.wk-panel2{display:grid;gap:14px;min-height:120px}
.wk-why{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-3)}
.wk-calm .wk-todos{gap:14px}
.wk-calm .wk-todos li::before{background:var(--card-2,var(--card-3));color:var(--ink-3)}
.wk-block{display:grid;gap:10px;padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3))}
.wk-block h4{margin:0;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.wk-calm .wk-check small{min-width:18px;text-align:right}
.wk-empty-cta{display:grid;justify-items:start;gap:8px;padding:20px;border-radius:16px;border:1px dashed var(--line)}
.wk-empty-cta b{font-size:15px;color:var(--ink)}
.wk-empty-cta p{margin:0 0 4px;font-size:13px;color:var(--ink-3);max-width:58ch}
.wk-foot{margin:0;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3);display:flex;align-items:center;gap:8px}
@media (max-width:700px){.wk-calm{padding:18px}.wk-hero{align-items:flex-start}.wk-hero-pos{width:72px;height:72px}.wk-hero-t h2{font-size:18px}}

/* a question Google was not read for this week */
.wk-unread{display:grid;gap:6px;padding:18px 20px;border-radius:14px;border:1px dashed var(--line);background:var(--card-2,var(--card-3))}
.wk-unread b{font-size:14px;color:var(--ink)}
.wk-unread p{margin:0;font-size:13px;line-height:1.5;color:var(--ink-3)}
.wk-dot.v-err{background:var(--er)}
.wk-chip2.v-err{background:var(--er-tint);color:var(--er-ink)}

/* ===== week summary v5: a sentence for the week, grouped questions, one "What to do" card ===== */
.wk-board2{padding:18px 22px}
.wk-headline{margin:0 0 10px;font-size:19px;line-height:1.3;color:var(--ink)}
.wk-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:12px}
.wk-lg{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-3)}
.wk-lg i{width:8px;height:8px;border-radius:50%;background:var(--card-3)}
.wk-lg b{font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}
.wk-lg.top i{background:var(--ok)}.wk-lg.p1 i{background:var(--brand)}.wk-lg.far i{background:var(--wr)}.wk-lg.none i{background:var(--ink-4)}
.wk-lg.zero{opacity:.55}
.wk-board2 .wk-dist{height:8px}
.wk-group{display:grid;gap:4px}
.wk-group + .wk-group{margin-top:10px;padding-top:12px;border-top:1px solid var(--line)}
.wk-group-h{display:flex;align-items:center;justify-content:space-between;padding:0 6px 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.wk-group-h small{font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--card-2,var(--card-3));color:var(--ink-3)}
.wk-pos-off{flex:none;width:8px;height:8px;margin:0 15px;border-radius:50%;background:var(--ink-4);opacity:.6}
.wk-row{padding:9px 10px}
.wk-row .wk-row-t b{font-size:13.5px}
.wk-status2 .wk-page,.wk-status2 .wk-warn{background:transparent;border:0;padding:0 0 0 12px;border-left:3px solid var(--line);border-radius:0;gap:2px}
.wk-status2 .wk-warn{border-left-color:var(--wr)}
.wk-status2 .wk-page.ok{border-left-color:var(--ok)}
.wk-status2 .wk-page.none{border-left-color:var(--wr)}
.wk-status2 b{font-size:13px;color:var(--ink)}
.wk-status2 .wk-warn b{color:var(--wr-ink)}
.wk-status2 span{font-size:12.5px;color:var(--ink-3)}
.wk-plan{display:grid;gap:12px;padding:18px 20px;border-radius:16px;background:var(--card-2,var(--card-3))}
.wk-plan-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.wk-plan-h h3{margin:0;font-size:15px;color:var(--ink)}
.wk-plan-why{font-size:12.5px;color:var(--ink-3)}
.wk-steps2{margin:0;padding:0;list-style:none;counter-reset:st;display:grid;gap:10px}
.wk-steps2 li{counter-increment:st;display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:12px;row-gap:2px;padding:12px 14px;border-radius:12px;background:var(--card)}
.wk-steps2 li::before{content:counter(st);grid-row:1/3;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;background:var(--card-2,var(--card-3));color:var(--ink-3)}
.wk-steps2 li.first{box-shadow:inset 0 0 0 1.5px var(--wr)}
.wk-steps2 li.first::before{background:var(--wr);color:#1a1205}
.wk-steps2 b{font-size:14px;color:var(--ink)}
.wk-steps2 span{font-size:13px;line-height:1.5;color:var(--ink-2)}
.wk-steps2 a{color:var(--brand);font-weight:600}
.wk-plan .wk-targets a{background:var(--card)}

.wk-listcol{overflow-x:hidden}
.wk-row,.wk-rows,.wk-group{min-width:0;max-width:100%}

/* a question searched from a wider area because its exact place failed */
.wk-wider{color:var(--wr-ink);font-weight:600}
.wk-chip2.v-wider{background:var(--wr-tint);color:var(--wr-ink)}
.wk-wider-note{margin-top:6px;font-size:12.5px;color:var(--wr-ink)}

/* a question Google could not be read for: one calm card */
.wk-hero-pos.unread{background:var(--card-2,var(--card-3))}
.wk-hero-pos.unread b{font-size:26px;color:var(--ink-4)}
.wk-unread2{display:flex;gap:16px;align-items:flex-start;padding:22px 24px;border-radius:18px;background:var(--card-2,var(--card-3))}
.wk-unread-i{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:700;background:var(--wr-tint);color:var(--wr-ink)}
.wk-unread-t{display:grid;gap:8px;min-width:0}
.wk-unread-t b{font-size:16px;color:var(--ink)}
.wk-unread-t p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-2);max-width:62ch}
.wk-unread-a{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}
.wk-unread-a small{font-size:12.5px;color:var(--ink-3)}
.wk-unread-err{color:var(--er-ink)!important;font-size:13px!important}

/* ---- kinds of result, each its own colour: lists amber, blogs blue, guides slate, business pages green ---- */
:root{--blog:#3B6BAA;--blog-tint:#E6EEF9;--guide:#5B6B84;--guide-tint:#ECEFF4}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--blog:#8FB3E8;--blog-tint:#16263D;--guide:#A9B4C6;--guide-tint:#1C2230}}
:root[data-theme="dark"]{--blog:#8FB3E8;--blog-tint:#16263D;--guide:#A9B4C6;--guide-tint:#1C2230}
.wk-dot.v-blog{background:var(--blog)}.wk-dot.v-guide{background:var(--guide)}.wk-dot.v-directory{background:#B07A2A}
.wk-chip2.v-blog{background:var(--blog-tint);color:var(--blog)}
.wk-chip2.v-guide{background:var(--guide-tint);color:var(--guide)}
.wk-chip2.v-mixed{background:var(--card-2,var(--card-3));color:var(--ink-2)}
.wk-verdict.v-blog{background:var(--blog-tint)}
.wk-tag.k-blog{background:var(--blog-tint);color:var(--blog);border-color:transparent}
.wk-tag.k-list{background:var(--wr-tint);color:var(--wr-ink);border-color:transparent}
.wk-tag.k-guide{background:var(--guide-tint);color:var(--guide);border-color:transparent}
/* the "searched from a wider area" chip: outlined, so it never reads as the verdict */
.wk-chip2.v-wider{background:transparent;color:var(--wr-ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--wr) 60%,transparent)}
/* ---- a quiet scrollbar for the question list (and the page's other scroll boxes) ---- */
.wk-listcol{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink-3) 45%,transparent) transparent;scrollbar-gutter:stable}
.wk-listcol::-webkit-scrollbar{width:8px;height:8px}
.wk-listcol::-webkit-scrollbar-track{background:transparent}
.wk-listcol::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--ink-3) 35%,transparent);border:2px solid transparent;background-clip:padding-box}
.wk-listcol:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-3) 60%,transparent);background-clip:padding-box}
.wk-listcol::-webkit-scrollbar-button{display:none;width:0;height:0}
.wk-listcol::-webkit-scrollbar-corner{background:transparent}

.wk-reading{display:inline-flex;align-items:center;gap:8px}
.wk-reading .wk-spin{width:12px;height:12px}

/* ---- the page draft ---- */
.wk-keep{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border-radius:16px;background:var(--ok-tint)}
.wk-keep-i{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:var(--card);color:var(--ok)}
.wk-keep b{font-size:15px;color:var(--ink)}.wk-keep p{margin:4px 0 0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.wk-dcta{display:grid;gap:10px;justify-items:start;padding:20px 22px;border-radius:16px;border:1px dashed var(--line);background:var(--card)}
.wk-dcta b{font-size:16px;color:var(--ink)}.wk-dcta p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-2);max-width:64ch}
.wk-dcover{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.wk-dcover small{font-size:12px;color:var(--ink-3);margin-right:4px}
.wk-dcover span{font-size:12.5px;padding:3px 10px;border-radius:999px;background:var(--card-2,var(--card-3));color:var(--ink-2)}
.wk-dact{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.wk-dact small{font-size:12.5px;color:var(--ink-3)}
.wk-dhead{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.wk-dhead-t{display:flex;align-items:center;gap:8px}.wk-dhead-t b{font-size:14.5px;color:var(--ink)}
.wk-dhead small{font-size:12px;color:var(--ink-3)}
.wk-dhead-a{display:flex;gap:6px;flex-wrap:wrap}
.wk-dstatus{font-size:11px;font-weight:800;letter-spacing:.04em;padding:2px 9px;border-radius:999px;background:var(--brand-tint);color:var(--brand)}
.wk-dstatus.approved{background:var(--ok-tint);color:var(--ok)}
.wk-dq{display:grid;gap:4px;padding:12px 14px;border-radius:12px;font-size:13px;color:var(--ink-2)}
.wk-dq.ok{display:flex;align-items:center;gap:8px;background:var(--ok-tint)}.wk-dq.ok i{font-style:normal;font-weight:800;color:var(--ok)}
.wk-dq.warn{background:var(--er-tint)}.wk-dq.warn b{color:var(--er-ink)}
.wk-dq.fill{background:var(--wr-tint)}.wk-dq.fill b{color:var(--wr-ink)}
/* a live page's movement since it went live: update now, or why not yet */
.wk-trend p{margin:0;line-height:1.5}.wk-dq.wk-trend.good{background:var(--ok-tint)}.wk-dq.wk-trend.good b{color:var(--ok)}.wk-dq.wk-trend.calm{background:var(--card-2)}.wk-dq.wk-trend.calm b{color:var(--ink)}
/* a draft published to the client's WordPress, and the button that does it */
/* Settings: connecting WordPress, with the same spacing as the other sections */
/* the facts' "how to write one" examples: wider, and kept on their own lines */
.fx-help{margin:-2px 0 2px}.fx-help .info-label label{font-size:13px;font-weight:600;color:var(--ink-2)}.fx-help .info-pop{width:min(440px,86vw);white-space:pre-line}
.wpc{display:grid;gap:16px;align-items:start}.wpc>.fx-status{margin:0;line-height:1.55}.wpc .st-pair{margin:0}.wpc>.st-fld{margin:0}.wpc>.fx-acts{display:flex;gap:8px;justify-content:flex-start;margin:0}.wpc>.st-note{margin:0}
.wk-wp p{margin:0;line-height:1.5}.wk-dq.wk-wp.good{background:var(--ok-tint)}.wk-dq.wk-wp.good b{color:var(--ok)}.wk-wp a{font-weight:600}.wk-wp-go{margin:4px 0}
.wk-dq ul{margin:2px 0 0;padding-left:18px}
.wk-dpage{display:grid;gap:12px;padding:22px 24px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.wk-dserp{display:grid;gap:2px;padding:12px 14px;border-radius:12px;background:var(--card-2,var(--card-3))}
.wk-dserp small{font-size:12px;color:var(--ink-3)}.wk-dserp b{font-size:16px;font-weight:600;color:var(--brand)}.wk-dserp p{margin:0;font-size:13px;color:var(--ink-2)}
.wk-dh1{margin:6px 0 0;font-size:22px;color:var(--ink)}
.wk-dbody{font-size:14px;line-height:1.65;color:var(--ink-2)}
.wk-dbody p{margin:0 0 8px}.wk-dbody ul,.wk-dbody ol{margin:0 0 8px;padding-left:20px}.wk-dbody a{color:var(--brand)}
.wk-dsec{display:grid;gap:6px;padding:12px 14px 12px 16px;border-radius:12px;border-left:3px solid var(--line)}
.wk-dsec.added{border-left-color:var(--ok);background:color-mix(in srgb,var(--ok-tint) 55%,transparent)}
.wk-dsec.changed{border-left-color:var(--wr);background:color-mix(in srgb,var(--wr-tint) 55%,transparent)}
.wk-dsec-h{display:flex;align-items:center;gap:10px}.wk-dsec-h h3{margin:0;font-size:15.5px;color:var(--ink)}
.wk-dbadge{font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:999px;background:var(--card-2,var(--card-3));color:var(--ink-3)}
.wk-dbadge.added{background:var(--ok-tint);color:var(--ok)}.wk-dbadge.changed{background:var(--wr-tint);color:var(--wr-ink)}.wk-dbadge.schema{background:var(--brand-tint);color:var(--brand)}
.wk-dwhy{font-size:12px;color:var(--ink-3)}
.wk-dfaq b{display:block;font-size:14px;color:var(--ink)}.wk-dfaq p{margin:2px 0 8px;font-size:13.5px;color:var(--ink-2)}
.wk-dchanges summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--ink-2)}.wk-dchanges ul{margin:8px 0 0;padding-left:18px;font-size:13px;color:var(--ink-2)}


/* ---- keywords ---- */
.wk-kw-head{display:grid;gap:2px}.wk-kw-head b{font-size:15px;color:var(--ink)}.wk-kw-head small{font-size:12px;color:var(--ink-3)}
.wk-kws{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.wk-kw{display:grid;grid-template-columns:minmax(0,1fr) 90px 72px 90px;align-items:center;gap:10px;padding:7px 10px;border-radius:10px;background:var(--card)}
.wk-kw-k{font-size:13.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-kw-v{font-size:12.5px;font-weight:700;color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums}
.wk-kw-d{justify-self:start;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--card-2,var(--card-3));color:var(--ink-3)}
.wk-kw-d.easy{background:var(--ok-tint);color:var(--ok)}.wk-kw-d.mid{background:var(--wr-tint);color:var(--wr-ink)}.wk-kw-d.hard{background:var(--er-tint);color:var(--er-ink)}
.wk-kw-i{font-size:11.5px;color:var(--ink-3);text-transform:capitalize}
.wk-asks{margin:0;padding-left:18px;display:grid;gap:4px;font-size:13.5px;color:var(--ink-2)}
@media (max-width:700px){.wk-kw{grid-template-columns:minmax(0,1fr) auto auto}.wk-kw-i{display:none}}

/* ---- where each question stands, in the list ---- */
.wk-st{flex:none;margin-left:auto;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap;background:var(--card-2,var(--card-3));color:var(--ink-3)}
.wk-st.keep{background:var(--ok-tint);color:var(--ok)}
.wk-st.ok{background:var(--ok-tint);color:var(--ok)}
.wk-st.ready{background:var(--brand-tint);color:var(--brand)}
.wk-st.todo{background:transparent;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-3)}
.wk-row .wk-flag + .wk-st{margin-left:6px}
/* steps that jump to their tab */
.wk-go{grid-column:2;justify-self:start;margin-top:6px;font:inherit;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:8px;border:0;background:var(--card-2,var(--card-3));color:var(--brand);cursor:pointer}
.wk-go:hover{background:var(--brand-tint)}
.wk-steps2 li.first .wk-go{background:var(--wr-tint);color:var(--wr-ink)}
/* a shared draft's other questions, as links */
.wk-qlink{font:inherit;font-size:12.5px;padding:3px 10px;border-radius:999px;border:0;background:var(--brand-tint);color:var(--brand);cursor:pointer}
.wk-qlink:hover{text-decoration:underline}
.wk-shared{margin-bottom:-4px}

.wk-dq-act{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}.wk-dq-act small{font-size:12px;color:var(--ink-3)}
.wk-leave-row{margin-top:10px}.wk-leave{flex:1 1 260px;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;font-size:13px}.wk-leave.bad{border-color:var(--bad,#c0392b)}

/* ---- the draft's one summary of changes ---- */
.wk-dsum{border-radius:14px;background:var(--card-2,var(--card-3));padding:16px 18px;display:grid;gap:12px}
.wk-dsum-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.wk-dsum-h h4{margin:0;font-size:14.5px}.wk-dsum-h small{font-size:12px;color:var(--ink-3)}
.wk-dsum-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px}
.wk-dsum-s{border-radius:10px;padding:9px 11px;background:var(--card);display:grid;gap:1px}
.wk-dsum-s b{font-size:20px;line-height:1.1}.wk-dsum-s span{font-size:11.5px;color:var(--ink-3)}
.wk-dsum-s.add b{color:var(--ok)}.wk-dsum-s.chg b{color:var(--wr-ink)}.wk-dsum-s.faq b{color:var(--brand)}.wk-dsum-s.kept b{color:var(--ink-3)}
.wk-dsum-s.cut b{color:var(--er)}.wk-dsum-s.fill b{color:var(--wr-ink)}
.wk-dsum-r{display:grid;grid-template-columns:118px 1fr;gap:10px;padding-top:10px;border-top:1px solid var(--line)}
.wk-dsum-l{font-size:12px;font-weight:700;color:var(--ink-3);padding-top:2px}
.wk-dsum-v{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start;min-width:0}
.wk-dsum-v > ul, .wk-dsum-v > details, .wk-dsum-v > small{flex-basis:100%}
.wk-dsum-v > small{font-size:12px;color:var(--ink-3)}
.wk-dsum-q{font-size:12.5px;padding:3px 10px;border-radius:999px;background:var(--card);color:var(--ink-2,inherit)}
.wk-dsum-q.main{background:var(--brand-tint);color:var(--brand);font-weight:700}
.wk-dsum-k{font-size:12px;padding:2px 9px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line)}
.wk-dsum-list{margin:0;padding-left:18px;font-size:13px;display:grid;gap:3px}
.wk-dsum-list.cut li{text-decoration:line-through;color:var(--ink-3)}
.wk-dsum-list.fill li::marker{color:var(--wr-ink)}
.wk-dsum-more summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--brand);margin-top:4px}
.wk-dsum-more ul{margin-top:4px}
@media (max-width:640px){.wk-dsum-r{grid-template-columns:1fr;gap:4px}}

/* ---- the week's one summary ---- */
.wk-sum{margin:0 0 18px;border-radius:16px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);padding:0}
.wk-sum-h{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px}
.wk-sum-h::-webkit-details-marker{display:none}
.wk-sum-h::before{content:'›';display:inline-block;transition:transform .15s;color:var(--ink-3);font-size:18px;line-height:1}
.wk-sum[open] .wk-sum-h::before{transform:rotate(90deg)}
.wk-sum-h h3{margin:0;font-size:15px}
.wk-sum-chips{display:flex;flex-wrap:wrap;gap:6px}
.wk-sum-chips span{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--card-2,var(--card-3));color:var(--ink-2)}
.wk-sum-chips span.ok,.wk-sum-chips span.keep{background:var(--ok-tint);color:var(--ok)}
.wk-sum-chips span.fix{background:var(--wr-tint);color:var(--wr-ink)}
.wk-sum-rows{display:grid;gap:6px;padding:0 12px 12px}
.wk-sum-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto;gap:14px;align-items:center;width:100%;text-align:left;font:inherit;color:inherit;border:0;border-radius:12px;padding:10px 12px;background:var(--card-2,var(--card-3));cursor:pointer}
.wk-sum-row:hover{box-shadow:inset 0 0 0 1px var(--brand-2,var(--line))}
.wk-sum-p{display:grid;gap:2px;min-width:0}
.wk-sum-p b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-sum-p small,.wk-sum-w{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-sum-row .wk-st{margin-left:0}
.wk-st.fix{background:var(--wr-tint);color:var(--wr-ink)}
.wk-st.hold{background:var(--ok-tint);color:var(--ok)}
.wk-keep-held{margin:8px 0 0;font-size:12.5px;color:var(--ink-3)}
.wk-keep-held a{color:var(--brand);font-weight:700}
@media (max-width:720px){.wk-sum-row{grid-template-columns:1fr auto}.wk-sum-w{grid-column:1/-1;grid-row:2}}

/* ---- the board's next step, folded steps ---- */
.wk-next{display:grid;gap:6px;align-content:center}
.wk-next > small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wr)}
.wk-next > b{font-size:17px;line-height:1.3}
.wk-next > span{font-size:13px;color:var(--ink-3)}
.wk-next-a{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}
.wk-next-a small{font-size:12px;color:var(--ink-3)}
.wk-more-steps{margin-top:8px}
.wk-more-steps > summary{cursor:pointer;list-style:none;font-size:12.5px;color:var(--ink-3);padding:8px 12px;border-radius:10px;background:var(--card-2,var(--card-3));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-more-steps > summary::-webkit-details-marker{display:none}
.wk-more-steps > summary::before{content:'+ ';font-weight:800;color:var(--brand)}
.wk-more-steps[open] > summary::before{content:'– '}
.wk-more-steps .wk-steps2.rest{margin-top:8px;counter-reset:st 1}
.wk-board-side.wk-next{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;grid-template-columns:none}
.wk-board-side.wk-next .wk-next-a small{font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--ink-3)}

/* ---- what each part of the week page is for ---- */
.wk-eyebrow{display:grid;gap:2px;margin-bottom:8px}
.wk-eyebrow b{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.wk-eyebrow span{font-size:12px;color:var(--ink-3)}
.wk-listcol > .wk-eyebrow{padding:0 6px 8px;margin:0;border-bottom:1px solid var(--line)}
.wk-listcol > .wk-eyebrow b{color:var(--ink);font-size:12px}
.wk-sum-title{display:grid;gap:1px}
.wk-sum-title small{font-size:11.5px;color:var(--ink-3);font-weight:400}
.wk-hero-k{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px}
.wk-row-t small{white-space:normal}

.wk-dsum-s.words b{color:var(--ink)}

.wk-dsum-len{font-size:13px}.wk-dsum-len.lost{color:var(--er-ink,var(--er))}
.wk-dsum-s.words.lost b{color:var(--er)}

/* ---- is the approved draft live on the site ---- */
.wk-live{border-radius:12px;padding:12px 14px;display:grid;gap:8px;background:var(--brand-tint);box-shadow:inset 0 0 0 1px var(--line)}
.wk-live.live{background:var(--ok-tint)}.wk-live.partial,.wk-live.old,.wk-live.unreachable{background:var(--wr-tint)}
.wk-live-t{display:grid;gap:2px}.wk-live-t b{font-size:13.5px}.wk-live-t span{font-size:12.5px;color:var(--ink-2)}
.wk-live.live .wk-live-t b{color:var(--ok)}.wk-live.partial .wk-live-t b,.wk-live.old .wk-live-t b,.wk-live.unreachable .wk-live-t b{color:var(--wr-ink)}
.wk-live-a{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.wk-live-in{flex:1;min-width:220px;font:inherit;font-size:13px;padding:7px 10px;border-radius:9px;border:1px solid var(--line-2,var(--line));background:var(--card);color:var(--ink)}
.wk-live-miss{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink-2)}
.wk-live-date{margin:0;font-size:12.5px;color:var(--wr-ink)}
.wk-dstatus.published{background:var(--ok-tint);color:var(--ok)}
.wk-st.live{background:var(--ok-tint);color:var(--ok)}
.wk-st.pub{background:var(--brand-tint);color:var(--brand)}
.wk-st.part{background:var(--wr-tint);color:var(--wr-ink)}

/* ==== week page, calmer: one surface per idea, flat accents, underline tabs ==== */
.wk-board2{padding:22px 24px;gap:22px;align-items:stretch}
.wk-board2 .wk-board-main{align-self:center}
.wk-board2 .wk-headline{font-size:22px;letter-spacing:-.01em;margin-bottom:12px}
.wk-board2 .wk-dist{height:10px;border-radius:999px}
.wk-board-side.wk-next{border:0;padding:18px 20px 18px 22px;border-radius:16px;background:var(--card-2,var(--card-3));box-shadow:inset 3px 0 0 var(--wr)}
.wk-board-side.wk-next > b{font-size:16.5px}
@media (max-width:1000px){.wk-board-side.wk-next{padding:16px 18px}}
/* your pages: plain counts, colour only where it means something */
.wk-sum-chips span:not(.ok):not(.fix):not(.keep){background:transparent;padding:3px 2px;color:var(--ink-3)}
.wk-sum-chips span:not(.ok):not(.fix):not(.keep) + span:not(.ok):not(.fix):not(.keep)::before{content:'·';margin-right:8px;color:var(--ink-4)}
.wk-sum-chips{gap:8px;align-items:center}
/* the question list */
.wk-listcol{padding:16px 12px}
.wk-listcol > .wk-eyebrow{padding:2px 8px 12px}
.wk-row{padding:10px 8px;align-items:flex-start}
.wk-row .wk-pos,.wk-pos-off{flex:none;width:34px;min-width:34px;height:34px;border-radius:10px;font-size:14px}
.wk-pos-off{display:grid;place-items:center;margin:0;opacity:1;background:var(--card-2,var(--card-3));color:var(--ink-4);font-weight:700}
.wk-row-t b{font-size:13.5px;-webkit-line-clamp:2}
.wk-row-t small{flex-wrap:wrap;row-gap:4px;column-gap:6px;margin-top:2px}
.wk-row-t small .wk-st{margin-left:0;font-size:10px;padding:1px 7px}
.wk-row.on .wk-pos-off{background:var(--card)}
/* the open question: no box inside a box */
.wk-calm{gap:22px}
.wk-plan{padding:0;background:transparent;border-radius:0}
.wk-plan-h h3{font-size:15.5px}
.wk-steps2 li{background:var(--card-2,var(--card-3))}
.wk-more-steps > summary{background:transparent;padding:4px 2px}
/* tabs: an underline, not a pill group */
.wk-tabs{width:100%;padding:0;gap:2px;border-radius:0;background:transparent;border-bottom:1px solid var(--line)}
.wk-tab{border-radius:0;padding:10px 14px;margin-bottom:-1px;border-bottom:2px solid transparent}
.wk-tab:hover{color:var(--ink)}
.wk-tab.on{background:transparent;box-shadow:none;color:var(--ink);border-bottom-color:var(--wr)}
.wk-tab small{background:var(--card-2,var(--card-3))}
.wk-board-side.wk-next{box-shadow:none}
.wk-board-side.wk-next > small{display:inline-flex;align-items:center;gap:7px}
.wk-board-side.wk-next > small::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--wr)}

/* ---- the progress page's week, once its run is done ---- */
.pg-ov{display:grid;gap:12px;padding:16px 18px;border-radius:14px;background:var(--card-2,var(--card-3))}
.pg-ov-h{display:grid;gap:3px}
.pg-ov-h b{font-size:18px;line-height:1.3;color:var(--ink)}
.pg-ov-h small{font-size:12.5px;color:var(--ink-3)}
.pg-ov-t{border-radius:10px;padding:9px 11px;background:var(--card);display:grid;gap:1px}
.pg-ov-t b{font-size:20px;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--ink)}
.pg-ov-t span{font-size:11.5px;color:var(--ink-3)}
.pg-ov-t.top b{color:var(--ok)}.pg-ov-t.p1 b{color:var(--brand-2,var(--brand))}.pg-ov-t.far b{color:var(--wr-ink)}
.pg-ov-t.zero{opacity:.55}
.pg-ov-c{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--card);color:var(--ink-2)}
.pg-ov-c.ok{background:var(--ok-tint);color:var(--ok)}.pg-ov-c.wr{background:var(--wr-tint);color:var(--wr-ink)}.pg-ov-c.br{background:var(--brand-tint);color:var(--brand)}
.pg-ov-hist summary{cursor:pointer;font-size:12.5px;color:var(--ink-3);list-style:none;padding:2px 0}
.pg-ov-hist summary::-webkit-details-marker{display:none}
.pg-ov-hist summary::before{content:'+ ';font-weight:800;color:var(--brand)}
.pg-ov-hist[open] summary::before{content:'– '}
.pg-ov-hist .pg-evs{margin-top:8px}
@media (max-width:640px){.pg-ov-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- Bing and the AI answers on the week page ---- */
.wk-also{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3)}
.wk-also span b{color:var(--ink);font-weight:700;margin-right:6px}
.wk-also.none{display:block;font-size:12.5px}
.wk-chip2.v-ok{background:var(--ok-tint);color:var(--ok)}
.wk-ai-sum{display:grid;gap:3px}
.wk-ai-sum b{font-size:15px;color:var(--ink)}.wk-ai-sum small{font-size:12.5px;color:var(--ink-3)}
.wk-ai-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (max-width:820px){.wk-ai-grid{grid-template-columns:1fr}}
.wk-ai-card{display:grid;gap:8px;align-content:start;padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3))}
.wk-ai-h{display:flex;align-items:center;justify-content:space-between;gap:10px}
.wk-ai-h b{font-size:14px;color:var(--ink)}
.wk-ai-st{font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--card);color:var(--ink-3);white-space:nowrap}
.wk-ai-st.ok{background:var(--ok-tint);color:var(--ok)}.wk-ai-st.mid{background:var(--brand-tint);color:var(--brand)}.wk-ai-st.no{background:var(--wr-tint);color:var(--wr-ink)}
.wk-ai-snip{margin:0;font-size:13px;line-height:1.55;color:var(--ink-2)}
.wk-ai-line{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.wk-ai-line small{font-size:11.5px;color:var(--ink-3);margin-right:2px}
.wk-ai-tag{font-size:11.5px;padding:2px 8px;border-radius:999px;background:var(--card);color:var(--ink-2)}
.wk-ai-tag.riv{background:var(--wr-tint);color:var(--wr-ink)}.wk-ai-tag.you{background:var(--ok-tint);color:var(--ok);font-weight:700}
.wk-ai-full summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--brand)}
.wk-ai-full p{margin:6px 0 0;font-size:12.5px;line-height:1.6;color:var(--ink-2);white-space:pre-wrap}
.wk-ai-do{display:grid;gap:6px;padding:14px 16px;border-radius:14px;box-shadow:inset 0 0 0 1px var(--line)}
.wk-ai-do b{font-size:13.5px}.wk-ai-do > span{font-size:12.5px;color:var(--ink-3)}
.wk-serp-sw{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:var(--card-2,var(--card-3));justify-self:start}
.wk-serp-sw button{font:inherit;display:grid;gap:0;text-align:left;padding:6px 14px;border:0;border-radius:9px;background:transparent;color:var(--ink-3);cursor:pointer}
.wk-serp-sw button b{font-size:13px}.wk-serp-sw button small{font-size:11px}
.wk-serp-sw button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}

/* ---- why the answers leave the business out ---- */
.wk-why{display:grid;gap:10px;padding:14px 16px;border-radius:14px;background:var(--wr-tint)}
.wk-why-h{display:grid;gap:2px}
.wk-why-h small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wr-ink)}
.wk-why-h b{font-size:15px;color:var(--ink)}
.wk-why ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:13px;line-height:1.5;color:var(--ink-2)}
.wk-why li.main{color:var(--ink);font-weight:600}
.wk-why a{color:var(--brand);font-weight:600}
.wk-why q{font-style:normal;font-weight:700;color:var(--ink)}
.wk-also-why{flex-basis:100%}

/* ---- you and your competitors in the AI answers ---- */
.wk-vs{display:grid;gap:12px;padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3))}
.wk-vs-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.wk-vs-h b{display:block;font-size:14.5px;color:var(--ink)}.wk-vs-h small{font-size:12px;color:var(--ink-3)}
.wk-board-sw{display:inline-flex;gap:3px;padding:3px;border-radius:10px;background:var(--card)}
.wk-board-sw button{font:inherit;font-size:12px;font-weight:600;padding:5px 10px;border:0;border-radius:8px;background:transparent;color:var(--ink-3);cursor:pointer}
.wk-board-sw button.on{background:var(--brand-tint);color:var(--brand)}
.wk-vs-t{display:grid;gap:2px}
.wk-vs-r{display:grid;grid-template-columns:minmax(0,2.2fr) repeat(4,minmax(52px,.7fr));gap:10px;align-items:center;padding:8px 10px;border-radius:10px;font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.wk-vs-r.head{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding-top:0;padding-bottom:2px}
.wk-vs-r.you{background:var(--brand-tint)}
.wk-vs-r.you b{color:var(--brand)}
.wk-vs-n{display:grid;gap:4px;min-width:0}
.wk-vs-n b{font-size:13px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-vs-bar{display:block;height:5px;border-radius:999px;background:var(--card);overflow:hidden}
.wk-vs-bar i{display:block;height:100%;border-radius:999px;background:var(--wr)}
.wk-vs-r.you .wk-vs-bar i{background:var(--brand)}
@media (max-width:640px){.wk-vs-r{grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(40px,.6fr));gap:6px;font-size:12px}}

.wk-vs-n b small{margin-left:6px;font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--card);color:var(--ink-3)}
.wk-vs-r.other{color:var(--ink-3)}

/* ---- a Bing page that was not about the search ---- */
.wk-bing-off{display:grid;gap:3px;padding:12px 14px;border-radius:12px;background:var(--wr-tint)}
.wk-bing-off b{font-size:13.5px;color:var(--wr-ink)}.wk-bing-off span{font-size:12.5px;color:var(--ink-2);line-height:1.5}
.wk-bing-list summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--ink-3);padding:4px 0}
.wk-bing-list .wk-tops{margin-top:8px;opacity:.7}

/* ---- the draft as the full page, in the site's own design ---- */
.wk-pv{display:grid;gap:10px}
.wk-pv-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wk-pv-seg{display:inline-flex;gap:3px;padding:3px;border-radius:10px;background:var(--card-2,var(--card-3))}
.wk-pv-seg button{font:inherit;font-size:12.5px;font-weight:600;padding:5px 12px;border:0;border-radius:8px;background:transparent;color:var(--ink-3);cursor:pointer}
.wk-pv-seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.wk-pv-marks{font:inherit;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--ink-2);cursor:pointer}
.wk-pv-marks.on{border-color:var(--brand);color:var(--brand)}
.wk-pv-key{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-3)}
.wk-pv-key i{display:inline-block;width:3px;height:14px;border-radius:2px;margin-left:6px}.wk-pv-key i.a{background:#128062}.wk-pv-key i.c{background:#d0901f}
.wk-pv-serp{display:grid;gap:1px;padding:2px 2px 4px}
.wk-pv-serp small{font-size:11px;color:var(--ink-3)}.wk-pv-serp b{font-size:15px;font-weight:500;color:var(--brand-2,var(--brand))}.wk-pv-serp span{font-size:12.5px;color:var(--ink-3)}
.wk-pv-stage{border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line);background:var(--card-2,var(--card-3))}
.wk-pv-stage.phone{display:flex;justify-content:center;padding:14px 0}
.wk-pv-frame{display:block;width:100%;height:860px;border:0;background:#fff}
.wk-pv-stage.phone .wk-pv-frame{width:390px;max-width:100%;height:760px;border-radius:18px;box-shadow:0 0 0 8px var(--card),0 0 0 9px var(--line)}

/* ==== the week, as a catch-up: a few lines, four numbers, one next step ==== */
.wk-catch{display:grid;gap:16px;margin:0 0 18px;padding:22px 24px;border-radius:20px;background:var(--card);border:1px solid var(--line)}
.wk-catch-h{display:flex;align-items:baseline;gap:10px}
.wk-catch-h small{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--wr)}
.wk-catch-h span{font-size:12.5px;color:var(--ink-3)}
.wk-catch-g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}
.wk-catch-l{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.wk-catch-l li{position:relative;padding-left:20px;font-size:15px;line-height:1.55;color:var(--ink)}
.wk-catch-l li::before{content:'';position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--ink-4)}
.wk-catch-l li.c-g::before{background:var(--ok)}.wk-catch-l li.c-a::before{background:var(--brand-2,var(--brand))}.wk-catch-l li.c-b::before{background:var(--wr)}.wk-catch-l li.c-p::before{background:var(--ink-3)}
.wk-catch-t{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.wk-ct{display:grid;gap:1px;align-content:start;padding:12px 14px;border-radius:14px;background:var(--card-2,var(--card-3))}
.wk-ct b{font-size:22px;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--ink)}
.wk-ct span{font-size:12.5px;color:var(--ink-2)}.wk-ct small{font-size:11.5px;color:var(--ink-3)}
.wk-ct.ok b{color:var(--ok)}.wk-ct.wr b{color:var(--wr-ink)}
.wk-catch-next{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:12px 14px;border-radius:14px;background:var(--wr-tint)}
.wk-catch-next > small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wr-ink)}
.wk-catch-next > b{font-size:14.5px;color:var(--ink)}
.wk-catch-next > span{font-size:12.5px;color:var(--ink-3);flex:1 1 220px}
.wk-catch-next .wk-next-a{margin:0}
.wk-catch-next .wk-next-a small{font-size:12px;color:var(--ink-3)}
@media (max-width:900px){.wk-catch-g{grid-template-columns:1fr}}
/* ==== under each question: one brief ==== */
.wk-brief{display:grid;gap:12px;padding:16px 18px;border-radius:16px;background:var(--card-2,var(--card-3))}
.wk-brief-t{display:grid;gap:3px}
.wk-brief-t b{font-size:15px;color:var(--ink)}
.wk-brief-t span{font-size:13px;color:var(--ink-3);line-height:1.5}
.wk-brief .wk-status2{margin:0}
.wk-brief .wk-plan{gap:8px}
.wk-brief .wk-plan-h small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wr-ink)}
.wk-brief .wk-steps2 li{background:var(--card)}
/* ==== the draft: passed checks as a mark, details folded ==== */
.wk-dpass{margin-left:8px;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--ok-tint);color:var(--ok)}
.wk-dsum-det{border-top:1px solid var(--line);padding-top:10px}
.wk-dsum-det > summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--ink-3);list-style:none}
.wk-dsum-det > summary::-webkit-details-marker{display:none}
.wk-dsum-det > summary::before{content:'+ ';color:var(--brand)}
.wk-dsum-det[open] > summary::before{content:'– '}
.wk-dsum-det .wk-dsum-r:first-of-type{margin-top:8px}
@media (max-width:520px){.wk-ct b{font-size:18px}.wk-catch{padding:18px 16px}.wk-catch-l li{font-size:14px}}

/* ---- AI answers: lighter cards, the whole answer in a pop-up ---- */
.wk-ai-card{gap:10px}
.wk-ai-snip{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.wk-ai-tag.more{background:transparent;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-3)}
.wk-ai-read{justify-self:start;font:inherit;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:9px;border:1px solid var(--line);background:var(--card);color:var(--brand);cursor:pointer}
.wk-ai-read:hover{border-color:var(--brand)}
.wk-vs-none{margin:2px 0 0;font-size:12px;color:var(--ink-3)}
.wk-why-pages{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.wk-why-pg{display:inline-grid;gap:0;padding:6px 10px;border-radius:10px;background:var(--card);text-decoration:none;max-width:280px}
.wk-why a.wk-why-pg{font-weight:400}
.wk-why-pg b{font-size:12.5px;color:var(--brand)}.wk-why-pg span{font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ans-dialog{max-width:min(720px,calc(100vw - 32px))}
.ans-dlg{display:grid;gap:14px}
.ans-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.ans-ht{display:grid;gap:6px;min-width:0}
.ans-k{display:flex;align-items:center;gap:8px}.ans-k b{font-size:13px;color:var(--ink-3)}
.ans-h h3{margin:0;font-size:19px;line-height:1.3;color:var(--ink)}
.ans-body{display:grid;gap:10px;max-height:52vh;overflow:auto;padding-right:6px}
.ans-body p{margin:0;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.ans-body p.li-like{padding-left:14px;border-left:2px solid var(--line)}
.ans-body mark{padding:0 3px;border-radius:4px;font-weight:600}
.ans-body mark.you{background:var(--ok-tint);color:var(--ok)}
.ans-body mark.riv{background:var(--wr-tint);color:var(--wr-ink)}
.ans-src{display:grid;gap:6px;padding-top:12px;border-top:1px solid var(--line)}
.ans-src small{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.ans-src ol{margin:0;padding-left:20px;display:grid;gap:3px;font-size:13px}
.ans-src a{color:var(--brand);word-break:break-all}.ans-src li.you a{color:var(--ok);font-weight:700}
.ans-foot{margin:0;font-size:12px;color:var(--ink-3)}

/* ---- the progress page's week: the same catch-up as the week's page ---- */
.pg-ov2{display:grid;gap:16px;padding:4px 0}
.pg-ov2 .wk-catch-l li{font-size:14.5px}
.pg-ov2-t{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pg-now.has-ov .pg-ov2-t .wk-ct{background:var(--card-2,var(--card-3))}
@media (max-width:760px){.pg-ov2-t{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* the pages to be named on: an even grid, every chip the same width */
.wk-why-pages{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;margin-top:10px}
.wk-why-pg{display:grid;max-width:none;min-width:0;padding:8px 12px}
.wk-why-pg b,.wk-why-pg span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.mc-limits{margin:4px 0 0;font-size:12.5px;color:var(--ink-3)}
.pg-mcp{margin-top:18px}

/* ---- the campaign's MCP card: at the top, with what it can be asked ---- */
.pg-mcp{margin:0 0 18px}
.mc-what{margin-top:14px}
.mc-what > summary,.mc-dev > summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--brand);list-style:none}
.mc-what > summary::-webkit-details-marker,.mc-dev > summary::-webkit-details-marker{display:none}
.mc-what > summary::before,.mc-dev > summary::before{content:'+ '}
.mc-what[open] > summary::before,.mc-dev[open] > summary::before{content:'– '}
.mc-asks{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin-top:10px}
.mc-ask{display:grid;gap:6px;align-content:start;padding:12px 14px;border-radius:12px;background:var(--card-2,var(--card-3))}
.mc-ask code{justify-self:start;font-size:12px;font-weight:700;padding:2px 8px;border-radius:6px;background:var(--brand-tint);color:var(--brand)}
.mc-ask > span{font-size:12.5px;color:var(--ink-3);line-height:1.45}
.mc-ask-q{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mc-ask-q q{font-size:13px;color:var(--ink);font-style:normal;line-height:1.4}
.mc-dev{margin-top:10px}
.mc-dev p{font-size:12.5px;color:var(--ink-3);margin:8px 0}

/* ---- the campaign's MCP: a button in the heading, the setup in a pop-up ---- */
.mc-open{display:inline-flex;align-items:center;gap:7px}
.mc-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-4)}.mc-dot.on{background:var(--ok)}
.mc-dialog{max-width:min(980px,calc(100vw - 32px))}
.mc-dlg{position:relative;padding-top:18px}
.mc-dlg-x{position:absolute;top:14px;right:14px;z-index:2}
.mc-dlg .mc-card{margin:0;border:0;background:transparent;padding:0}
.mc-dlg .mc-head{padding-right:40px}

/* ---- the full summary: the campaign to date ---- */
.ctd-hero{display:grid;gap:14px;margin:0 0 18px;padding:20px 22px;border-radius:20px;background:var(--card);border:1px solid var(--line)}
.ctd-h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ctd-h b{font-size:22px;color:var(--ink)}.ctd-h > span:last-child{font-size:13px;color:var(--ink-3)}
.ctd-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.ctd-t{display:grid;gap:2px;align-content:start;padding:12px 14px;border-radius:14px;background:var(--card-2,var(--card-3))}
.ctd-t small{font-size:11.5px;color:var(--ink-3)}.ctd-t b{font-size:21px;line-height:1.2;color:var(--ink);font-variant-numeric:tabular-nums}.ctd-t span{font-size:12px;color:var(--ink-3)}
.ctd-t.ok b{color:var(--ok)}.ctd-t.wr b{color:var(--wr-ink)}
.ctd-t.cp-kpi{border:0}
.ctd-table{display:grid;gap:2px}
.ctd-r{display:grid;gap:10px;align-items:center;padding:10px 12px;border-radius:10px;font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.ctd-r.c5{grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(70px,1fr))}
.ctd-r.c5.q{grid-template-columns:minmax(0,2.2fr) repeat(4,minmax(70px,1fr))}
.ctd-r.head{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding-bottom:2px}
.ctd-r:not(.head){background:var(--card-2,var(--card-3))}
.ctd-r b{color:var(--ink);font-size:13px;overflow:hidden;text-overflow:ellipsis}
.ctd-r span small{display:block;font-size:11px;color:var(--ink-3)}
.ctd-r .ok{color:var(--ok);font-weight:700}.ctd-r .bad{color:var(--er)}.ctd-r .mute{color:var(--ink-3)}
.ctd-r.link{font:inherit;text-align:left;border:0;cursor:pointer;width:100%}
.ctd-r.link:hover{box-shadow:inset 0 0 0 1px var(--brand-2,var(--line))}
.ctd-work{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}
.ctd-w{display:grid;gap:8px;align-content:start;padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3))}
.ctd-w > b{font-size:13.5px;color:var(--ink)}
.ctd-w ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.ctd-w li{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--ink-2)}
.ctd-w li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ctd-st{flex:none;font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:999px;background:var(--card);color:var(--ink-3)}
.ctd-st.ok{background:var(--ok-tint);color:var(--ok)}.ctd-st.wr{background:var(--wr-tint);color:var(--wr-ink)}
.ctd-empty{display:grid;gap:6px;justify-items:start;padding:14px 16px;border-radius:14px;background:var(--card-2,var(--card-3))}
.ctd-empty b{font-size:14px;color:var(--ink)}.ctd-empty span{font-size:13px;color:var(--ink-3)}
.ctd-bars{display:flex;align-items:flex-end;gap:8px;height:120px;padding:10px 4px 0}
.ctd-bar{flex:1;display:grid;grid-template-rows:1fr auto auto;align-items:end;justify-items:center;height:100%;gap:2px}
.ctd-bar i{width:100%;max-width:38px;border-radius:6px 6px 2px 2px;background:var(--brand-2,var(--brand))}
.ctd-bar small{font-size:10.5px;color:var(--ink-3)}.ctd-bar span{font-size:11px;color:var(--ink-2)}
.ctd-tiles.small .ctd-t b{font-size:18px}
@media (max-width:760px){.ctd-r.c5,.ctd-r.c5.q{grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(46px,.8fr));font-size:12px;gap:6px}}

/* ---- the business's AI crawlers page ---- */
.cr-setup + .cr-reads{margin-top:18px}

.ctd-pub{display:grid;gap:8px;margin-top:12px}
.ctd-pub-h{display:grid;gap:2px}.ctd-pub-h b{font-size:13.5px;color:var(--ink)}.ctd-pub-h small{font-size:12px;color:var(--ink-3)}
.ctd-kept{margin:10px 0 0;font-size:12px;color:var(--ink-3)}

/* ---- the full summary: results beside a rail of what is logged and connected ---- */
.sum-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}
.sum-main,.sum-rail{display:grid;gap:14px;align-content:start;min-width:0}
.sum-main>.sc-sec,.sum-rail>.sc-sec{margin:0}
.sum-rail .sc-sec{padding:18px 18px 20px;border-radius:20px}
.sum-rail .sc-sec-h{margin:0 0 12px}
.sum-rail .sc-sec-h h2{font-size:16px}
.sum-rail .sc-sec-h p{font-size:12.5px}
.sum-rail .cp-sec-row{flex-direction:column;align-items:stretch;gap:10px}
.sum-rail .cp-sec-row>.btn{align-self:flex-start}
.sum-rail .cp-log{display:grid;grid-template-columns:minmax(0,1fr) 98px auto;gap:6px}
.sum-rail .cp-log select,.sum-rail .cp-log input{height:36px;width:100%;min-width:0;font-size:13px;padding:0 10px}
.sum-rail .cp-log .btn{padding:6px 14px}
.sum-rail .cp-nochart{padding:12px 14px;border-radius:12px}
.sum-rail .cp-nochart b{font-size:13px}.sum-rail .cp-nochart span{font-size:12px}
.sum-rail .cp-chart{height:140px}
.sum-rail .pay-chips span{font-size:12.5px;padding:4px 10px}
.sum-rail .cp-facts{grid-template-columns:1fr;gap:0}
.sum-rail .cp-facts>div{background:none;border-radius:0;padding:9px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:104px minmax(0,1fr);gap:10px;align-items:baseline}
.sum-rail .cp-facts>div:first-child{border-top:0;padding-top:0}
.sum-rail .cp-facts>div:last-child:nth-child(odd){grid-column:auto}
.sum-rail .cp-facts small{font-size:12px}.sum-rail .cp-facts b{font-size:13px;line-height:1.4}
@media (max-width:1100px){.sum-grid{grid-template-columns:1fr}.sum-rail{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}}
/* the twelve weeks */
.ctd-wk{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px}
.ctd-wk-s{display:grid;grid-template-rows:12px auto;align-items:center;gap:3px;padding:2px 0;border:0;background:none;cursor:pointer;font:inherit;color:var(--ink-3)}
.ctd-wk-s i{width:100%;height:6px;border-radius:3px;background:var(--line-2);transition:height .12s}
.ctd-wk-s.done i{background:var(--brand-2)}
.ctd-wk-s.now i{background:var(--amber,var(--wr))}
.ctd-wk-s small{font-size:10.5px;line-height:1.2;white-space:nowrap}
.ctd-wk-s:hover:not(:disabled) i{height:9px}
.ctd-wk-s.sel i{height:12px}
.ctd-wk-s.sel small{color:var(--ink);font-weight:700}
.ctd-wk-s:disabled{cursor:default;opacity:.6}
.ctd-wk-s:focus-visible{outline:2px solid var(--brand-2);outline-offset:2px;border-radius:4px}
.ctd-wkp{display:grid;gap:10px;padding:14px;border-radius:14px;border:1px solid var(--line-2)}
.ctd-wkp-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ctd-wkp-h b{font-size:15px;color:var(--ink)}
.ctd-wkp-h>span{font-size:12.5px;color:var(--ink-3)}
.ctd-wkp-h .btn{margin-left:auto}
.ctd-wkp .ctd-t span{overflow-wrap:anywhere}
.ctd-lbl{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-bottom:-6px}
.ctd-r.sel{box-shadow:inset 0 0 0 1.5px var(--amber,var(--wr))}
.ctd-bar.sel i{background:var(--amber,var(--wr))}
.ctd-bar.sel small,.ctd-bar.sel span{color:var(--ink);font-weight:700}
@media (max-width:760px){.ctd-wk{gap:2px}.ctd-wk-s small{font-size:9px}}
.ctd-r.c4.q{grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(70px,1fr))}
.ctd-r.q b{font-weight:600}
@media (max-width:760px){.ctd-r.c4.q{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(46px,.8fr));font-size:12px;gap:6px}}
/* the Google card, compact */
.gx .note{margin:0 0 8px}
.gx-acct{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--card-2)}
.gx-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none;box-shadow:0 0 0 3px var(--ok-tint)}
.gx-acct div{display:grid;min-width:0}
.gx-acct b{font-size:13px;color:var(--ink)}
.gx-acct small{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gx-nums{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.gx-t{display:grid;gap:1px;padding:10px 12px;border-radius:12px;background:var(--card-2);min-width:0}
.gx-t small{font-size:11.5px;color:var(--ink-3)}
.gx-t b{font-size:20px;line-height:1.25;color:var(--ink);font-variant-numeric:tabular-nums}
.gx-t span{font-size:12px;color:var(--ink-3)}
.gx-cap{display:block;margin:8px 0 12px;font-size:11.5px;line-height:1.45;color:var(--ink-3)}
.gx-src{display:grid;gap:8px}
.gx-src label{display:grid;gap:4px}
.gx-src small{font-size:11.5px;color:var(--ink-3)}
.gx-src select{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font:inherit;font-size:13px}
.gx-foot{display:flex;gap:8px;margin-top:12px}
@media (max-width:760px){.ctd-hero .ctd-tiles{grid-template-columns:1fr 1fr}.ctd-hero .ctd-t:last-child:nth-child(odd){grid-column:1/-1}}

/* ---- every question, for the week picked: rank pills, a sparkline across the weeks, a dot per AI engine ---- */
.ctd-qs .sc-sec-h{margin-bottom:10px}
.ctd-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 12px;font-size:11.5px;color:var(--ink-3)}
.ctd-leg{display:inline-flex;align-items:center;gap:6px}
.ctd-leg i{width:16px;height:16px;border-radius:50%;display:inline-grid;place-items:center;font-style:normal;font-size:9px;font-weight:700;border:1px solid var(--line-2);color:var(--ink-3)}
.ctd-leg i.band{width:18px;height:10px;border-radius:3px;border:0;background:var(--ok-tint)}
.ctd-leg i.dot{width:8px;height:8px;border:0;background:var(--amber,var(--wr))}
.ctd-leg i.on{background:var(--ok);border-color:var(--ok);color:var(--card)}
.ctd-r.qx.c4{grid-template-columns:minmax(0,1.6fr) minmax(190px,1.2fr) 96px minmax(160px,1fr)}
.ctd-r.qx.c5{grid-template-columns:minmax(0,1.5fr) minmax(190px,1.2fr) 96px minmax(160px,1fr) 84px}
.ctd-r.qx b{font-weight:600}
.ctd-r.qx:not(.head):hover{box-shadow:inset 0 0 0 1px var(--line-2)}
.ctd-g{display:flex;align-items:center;gap:10px}
.rk{display:inline-flex;justify-content:center;min-width:42px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;background:var(--card);color:var(--ink-2);white-space:nowrap}
.rk-top{background:var(--ok-tint);color:var(--ok)}
.rk-p1{background:var(--brand-tint);color:var(--brand-ink)}
.rk-none{color:var(--ink-3);font-weight:600}
.rk-mute{color:var(--ink-4);font-weight:600;text-decoration:line-through;text-decoration-color:var(--ink-4)}
.sp-box{display:inline-flex;line-height:0;flex:none}
.sp-band{fill:var(--ok-tint)}
.sp-slot{fill:var(--line-2)}
.sp-line{fill:none;stroke:var(--brand-2);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.sp-dot{fill:var(--brand-2)}
.sp-dot.sel{fill:var(--amber,var(--wr));stroke:var(--card);stroke-width:1.5}
.sp-miss{fill:none;stroke:var(--ink-4);stroke-width:1.2}
.sp-miss.sel{stroke:var(--amber,var(--wr));stroke-width:1.6}
.ai-dots{display:inline-flex;align-items:center;gap:4px}
.ai-dots i{width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;font-style:normal;font-size:10px;font-weight:700;background:var(--card);color:var(--ink-4);border:1px solid var(--line-2)}
.ai-dots i.on{background:var(--ok);border-color:var(--ok);color:var(--card)}
.ai-dots i.na{opacity:.45;border-style:dashed}
.ai-dots small{margin-left:4px;font-size:12px;font-weight:700;color:var(--ink-3)}
.ai-dots small.ok{color:var(--ok)}
.ctd-ch{font-size:12px;font-weight:700}
@media (max-width:760px){
  .ctd-r.head.qx{display:none}
  .ctd-r.qx.c4,.ctd-r.qx.c5{grid-template-columns:1fr 1fr;gap:8px 12px;padding:12px}
  .ctd-r.qx b{grid-column:1/-1;font-size:13.5px}
  .ctd-r.qx .ctd-g{grid-column:1/-1}
  .ctd-r.qx [data-l]{display:grid;gap:3px;justify-items:start}
  .ctd-r.qx [data-l]::before{content:attr(data-l);font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
  .ctd-r.qx .ctd-g{display:flex;flex-wrap:wrap;align-items:center}
  .ctd-r.qx .ctd-g::before{flex-basis:100%}
}

/* ---- the AI crawlers page: reads over time, by engine, crawler cards, pages with bars ---- */
.crx-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px}
.crx-dot.live,.crx-chart i.live,.crx-bar i.live,.crx-mini i.live{background:var(--ok)}
.crx-dot.index,.crx-chart i.index,.crx-bar i.index,.crx-mini i.index{background:var(--brand-2)}
.crx-dot.train,.crx-chart i.train,.crx-bar i.train,.crx-mini i.train{background:var(--amber,var(--wr))}
.crx-bar i.visit{background:var(--brand-3)}
.crx-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 12px;font-size:12px;color:var(--ink-3)}
.crx-legend span{display:inline-flex;align-items:center}
.crx-chart{display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:170px auto;gap:6px 8px}
.crx-y{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:11px;color:var(--ink-3)}
.crx-y small{font-size:11px;line-height:1}
.crx-cols{display:flex;align-items:stretch;gap:4px;height:170px;border-bottom:1px solid var(--line-2);padding-bottom:1px}
.crx-cols.dense{gap:2px}
.crx-col{flex:1;min-width:2px;display:flex;flex-direction:column-reverse;gap:1px;border-radius:4px 4px 0 0;cursor:default}
.crx-col:hover{background:var(--card-2)}
.crx-col i{display:block;width:100%;border-radius:2px;flex:none}
.crx-x{grid-column:2;display:flex;justify-content:space-between;font-size:11px;color:var(--ink-3)}
.crx-x small{font-size:11px}
.crx-bar-w{display:flex;align-items:center;gap:10px;min-width:0}
.crx-bar-w>b{font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums;min-width:22px}
.crx-bar{flex:1;display:flex;gap:1px;height:8px;border-radius:999px;background:var(--card-2);overflow:hidden;min-width:40px}
.crx-bar i{display:block;height:100%}
.crx-eng,.crx-pages{display:grid;gap:2px}
.crx-th{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding:0 12px 4px}
.crx-er,.crx-pr{display:grid;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;font-size:13px;color:var(--ink-2)}
.crx-er:not(.crx-th),.crx-pr:not(.crx-th){background:var(--card-2,var(--card-3))}
.crx-er{grid-template-columns:minmax(0,1.3fr) minmax(160px,1.6fr) 56px 60px 84px 160px}
.crx-pr{grid-template-columns:minmax(0,1.4fr) minmax(150px,1.2fr) minmax(0,1.2fr) 150px 70px}
.crx-v .crx-pr{grid-template-columns:minmax(0,1fr) 60px 150px}
.crx-th.crx-er,.crx-th.crx-pr{background:none}
.crx-n{font-variant-numeric:tabular-nums;color:var(--ink-4)}
.crx-n.live{color:var(--ok);font-weight:700}.crx-n.index{color:var(--brand-ink);font-weight:700}.crx-n.train{color:var(--wr-ink);font-weight:700}
.crx-path{font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crx-st{justify-self:start;font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:999px}
.crx-st.ok{background:var(--ok-tint);color:var(--ok)}.crx-st.bad{background:var(--er-tint);color:var(--er-ink,var(--er))}
.crx-bots{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.crx-bot{display:grid;gap:10px;align-content:start;padding:14px 16px;border-radius:16px;background:var(--card-2,var(--card-3))}
.crx-bot-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.crx-bot-h div{display:grid;gap:1px}.crx-bot-h b{font-size:14px;color:var(--ink)}.crx-bot-h small{font-size:12px;color:var(--ink-3)}
.crx-bot-n{display:flex;align-items:baseline;gap:8px}
.crx-bot-n b{font-size:26px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.crx-bot-n span{font-size:12px;color:var(--ink-3)}
.crx-mini{display:flex;align-items:flex-end;gap:2px;height:38px;border-bottom:1px solid var(--line-2)}
.crx-mini i{flex:1;min-width:1px;border-radius:2px 2px 0 0}
.crx-bot-f{font-size:11.5px;line-height:1.45;color:var(--ink-3)}
.crx-bot-f.bad{color:var(--er-ink,var(--er))}
.crx-vgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:18px;align-items:start}
.crx-vis{display:grid;gap:10px;padding:14px 16px;border-radius:16px;background:var(--card-2,var(--card-3))}
.crx-cap{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.crx-vr{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:center;font-size:13px}
.crx-vr>b{color:var(--ink);font-weight:600}
@media (max-width:900px){.crx-vgrid{grid-template-columns:1fr}}
@media (max-width:760px){
  .crx-th{display:none}
  .crx-er{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 10px}
  .crx-er .cr-who,.crx-er .crx-bar-w{grid-column:1/-1}
  .crx-er .cr-when{display:none}
  .crx-pr{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px}
  .crx-pr .crx-bar-w{grid-column:1/-1;order:3}
  .crx-pr .cr-by,.crx-pr .cr-when{display:none}
  .crx-v .crx-pr{grid-template-columns:minmax(0,1fr) auto}
  .crx-chart{grid-template-rows:140px auto}.crx-cols{height:140px;gap:2px}
}
@media (max-width:760px){.crx-er>:nth-child(3)::before{content:'Live '}.crx-er>:nth-child(4)::before{content:'Index '}.crx-er>:nth-child(5)::before{content:'Training '}.crx-er>.crx-n::before{font-weight:400;color:var(--ink-3)}}

/* ---- every page on the sitemap ---- */
.crx-covw{display:grid;gap:8px;margin:0 0 14px}
.crx-cov-t{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.crx-cov-t b{font-size:24px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.crx-cov-t span{font-size:13px;color:var(--ink-3)}
.crx-bar.crx-cov{height:10px;flex:none}
.crx-filt{margin:0 0 12px;flex-wrap:wrap}
.crx-all .crx-pr{grid-template-columns:minmax(0,2fr) 110px 160px 70px 124px}
.crx-pg{display:grid;gap:1px;min-width:0}
.crx-pg small{font-size:11.5px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crx-pr .mute{color:var(--ink-4)}
.crx-st.idx{background:var(--brand-tint);color:var(--brand-ink)}
.crx-st.wr{background:var(--wr-tint);color:var(--wr-ink)}
.crx-st.na{background:var(--card);color:var(--ink-3)}
.crx-more{display:flex;justify-content:center;margin-top:10px}
@media (max-width:760px){.crx-all .crx-pr{grid-template-columns:minmax(0,1fr) auto}.crx-all .crx-pr>:nth-child(2),.crx-all .crx-pr>:nth-child(4){display:none}}
.crx-cols.dense{gap:1px}.crx-cols.dense .crx-col{min-width:0}.crx-mini{gap:1px}.crx-mini i{min-width:0}.crx-chart,.crx-cols{min-width:0}

/* ---- the competitor table: sentiment ---- */
.wk-vs-r{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(60px,.7fr)) minmax(110px,1fr) minmax(48px,.5fr)}
.wk-tone{display:inline-flex;align-items:center;gap:8px;min-width:0;cursor:help}
.wk-tone-bar{display:flex;gap:1px;width:64px;height:8px;border-radius:999px;overflow:hidden;background:var(--card-2);flex:none}
.wk-tone-bar i{display:block;height:100%}
.wk-tone-bar .t-favourable{background:var(--ok)}
.wk-tone-bar .t-reserved{background:var(--amber,var(--wr))}
.wk-tone-bar .t-neutral{background:var(--ink-4)}
.wk-tone-bar .t-warning{background:var(--er)}
.wk-tone b{font-size:12.5px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.wk-tone b.ok{color:var(--ok)}.wk-tone b.bad{color:var(--er-ink,var(--er))}
.wk-tone-na{color:var(--ink-4)}
.wk-vs-note{margin:8px 0 0;font-size:11.5px;line-height:1.5;color:var(--ink-3)}
@media (max-width:640px){.wk-vs-r{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(34px,.55fr)) minmax(64px,.9fr) minmax(28px,.4fr);gap:5px}.wk-tone{gap:4px}.wk-tone-bar{width:30px}}
.wk-vs-r>*{min-width:0}
@media (max-width:640px){.wk-vs-r{grid-template-columns:minmax(0,1.2fr) 54px 50px 78px}.wk-vs-r>:nth-child(4),.wk-vs-r>:nth-child(6){display:none}.wk-vs-n b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}}
.wk-detail>*,.wk-panel2,.wk-panel2>*{min-width:0}
.wk-why li,.wk-why-pages,.wk-why-pg{overflow-wrap:anywhere;min-width:0}

/* ---- brand marks, site icons, section heading icons ---- */
.bm{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:9px;background:var(--card);border:1px solid var(--line);overflow:hidden;line-height:1}
.bm svg{width:58%;height:58%}
.bm img{width:62%;height:62%;object-fit:contain;display:block}
.bm-sm{width:24px;height:24px;border-radius:7px}
.bm-xs{width:18px;height:18px;border-radius:5px}
.bm-dot{width:14px;height:14px;border:0;border-radius:0;background:none}
.bm-dot svg{width:100%;height:100%}
.bm-ink svg{fill:var(--ink)}
.bm-mono{background:var(--bm);border-color:transparent;color:#fff;font-size:12px;font-weight:800;letter-spacing:-.02em}
.bm-sm.bm-mono{font-size:10.5px}.bm-xs.bm-mono{font-size:9px}.bm-dot.bm-mono{font-size:8px;border-radius:50%}
.bm-site{background:#fff}
.crx-who{display:inline-flex;align-items:center;gap:10px;min-width:0}
.crx-who>span:not(.bm),.crx-who>div{min-width:0}
.crx-bot-h .crx-who{display:flex}
.crx-vr>b.crx-who{gap:8px}
.wk-top-t small.crx-who,.wk-vs-n b.crx-who,.ctd-w li .crx-who{gap:7px}
.wk-ai-h b.crx-who{gap:8px}
.h-ic{display:flex;align-items:center;gap:10px}
.h-ic-i{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:9px;background:var(--brand-tint);color:var(--brand-ink)}
.h-ic-i svg{width:17px;height:17px}
.who-ic{display:flex;align-items:center;gap:10px;min-width:0}.who-ic>div{display:grid;min-width:0}
.chip-ic{display:inline-flex;align-items:center;gap:6px}
.cs-chips>span{display:inline-flex;align-items:center;gap:6px}
.cs-chips .bm-xs{border-radius:50%}
.ai-dots i .bm-dot{display:inline-grid}
.ai-dots i:not(.on) .bm{filter:grayscale(1);opacity:.5}
.ai-dots i.on{background:var(--ok-tint);border:1.5px solid var(--ok)}
.ctd-leg .bm{margin-right:1px}
.crx-bot-h .crx-who{display:flex;gap:10px;align-items:center}

/* ---- the crawlers page: in short, the jump bar ---- */
.crx-short{display:grid;gap:14px;margin:0 0 14px;padding:20px 22px;border-radius:22px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh1)}
.crx-short-h small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.crx-short-h b{display:block;margin-top:6px;font:600 19px/1.4 var(--disp);letter-spacing:-.01em;color:var(--ink);max-width:68ch}
.crx-short-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px}
.crx-i{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--card-2,var(--card-3));font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.crx-i>div{display:grid;gap:6px;justify-items:start;min-width:0}
.crx-i-ic{flex:none;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%}
.crx-i-ic svg{width:15px;height:15px}
.crx-i.good .crx-i-ic{background:var(--ok-tint);color:var(--ok)}
.crx-i.watch .crx-i-ic{background:var(--brand-tint);color:var(--brand-ink)}
.crx-i.act .crx-i-ic{background:var(--wr-tint);color:var(--wr-ink)}
.crx-tiles .cr-tile small{display:flex;align-items:center}
.crx-jump{position:sticky;top:74px;z-index:6;display:flex;gap:4px;overflow-x:auto;margin:14px 0;padding:5px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh1);scrollbar-width:none}
.crx-jump::-webkit-scrollbar{display:none}
.crx-jump button{flex:none;font:inherit;font-size:13px;font-weight:600;border:0;background:none;color:var(--ink-2);padding:7px 14px;border-radius:999px;cursor:pointer}
.crx-jump button:hover{background:var(--card-2);color:var(--ink)}
.cr-sec .sc-sec-h p{max-width:78ch}
@media (max-width:760px){.crx-short{padding:16px}.crx-short-h b{font-size:16.5px}.crx-jump{top:auto;position:relative;border-radius:14px}}
.crx-jump{width:max-content;max-width:100%;margin-left:auto;margin-right:auto}
.crx-er.crx-th>span:nth-child(3){color:var(--ok)}.crx-er.crx-th>span:nth-child(4){color:var(--brand-ink)}.crx-er.crx-th>span:nth-child(5){color:var(--wr-ink)}
.crx-jump{position:relative;top:auto}

/* ---- the crawlers page, second pass: hover card, spans, in short, cards, problems ---- */
.crx-win{margin-left:4px;padding:3px 10px;border-radius:999px;background:var(--card-2,var(--card-3));font:600 11.5px/1.3 var(--sans,inherit);letter-spacing:0;color:var(--ink-3);white-space:nowrap}
.crx-cols{position:relative}
.crx-col{position:relative;outline:none}
.crx-col:focus-visible{box-shadow:0 0 0 2px var(--brand-2)}
.crx-cols.hov .crx-col:not(.on){opacity:.4}
.crx-col.on{background:var(--card-2)}
.crx-tip{position:absolute;top:-6px;transform:translate(-50%,-100%);z-index:8;display:grid;gap:4px;min-width:170px;padding:10px 12px;border-radius:12px;background:var(--ink);color:var(--card);box-shadow:0 8px 24px rgba(0,0,0,.25);pointer-events:none;font-size:12.5px}
.crx-tip b{font-size:13px}
.crx-tip-t{font-weight:700}
.crx-tip-r{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;opacity:.92}
.crx-tip-r .crx-dot{margin:0}
.crx-chart{grid-template-rows:170px auto;padding-top:8px}
.crx-y{justify-content:space-between}
.crx-i{flex-direction:column;align-items:stretch;gap:8px}
.crx-i-top{display:flex;align-items:center;gap:8px}
.crx-i-tag{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.crx-i.good .crx-i-tag{color:var(--ok)}.crx-i.watch .crx-i-tag{color:var(--brand-ink)}.crx-i.act .crx-i-tag{color:var(--wr-ink)}
.crx-i p{margin:0}
.crx-i .link{margin-top:auto;justify-self:start;align-self:flex-start}
.crx-bot-n{align-items:center;flex-wrap:wrap}
.crx-bot-n .cr-kind{margin-left:auto;white-space:nowrap}
.crx-bot-h{justify-content:flex-start}
.crx-errs .crx-pr{grid-template-columns:minmax(0,1.3fr) minmax(90px,.7fr) minmax(0,1fr) 150px minmax(0,1.6fr)}
.crx-codes{display:flex;flex-wrap:wrap;gap:4px}
.crx-mean{font-size:12.5px;color:var(--ink-2)}
.crx-okline{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--ok-tint);color:var(--ok);font-size:13.5px;font-weight:600}
.crx-okline .crx-i-ic{background:var(--card);color:var(--ok)}
.crx-filt-note{margin:-4px 0 12px;font-size:12.5px;line-height:1.5;color:var(--ink-3)}
.crx-filt-note b{color:var(--ink-2)}
@media (max-width:760px){.crx-errs .crx-pr{grid-template-columns:minmax(0,1fr) auto}.crx-errs .crx-pr .cr-by,.crx-errs .crx-pr .cr-when{display:none}.crx-errs .crx-mean{grid-column:1/-1}.crx-win{display:none}}
.h-ic .crx-win{font-size:11.5px;font-weight:600;line-height:1.3;font-family:inherit;letter-spacing:0;align-self:center}

/* ---- in short: attention first, wins beside ---- */
.crx-short{gap:18px;padding:22px 24px}
.crx-short-head{margin:6px 0 0;font:600 20px/1.45 var(--disp);letter-spacing:-.01em;color:var(--ink);max-width:64ch}
.crx-short-head strong{color:var(--brand-ink);font-weight:800}
.crx-short-cols{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;align-items:start}
.crx-short-cols.solo{grid-template-columns:1fr}
.crx-sub{display:block;margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.crx-att .crx-short-l{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.crx-att .crx-i{min-height:100%;border:1px solid transparent}
.crx-att .crx-i.act{border-color:var(--wr-tint)}
.crx-win-l{list-style:none;margin:0;padding:2px 14px;border-radius:14px;background:var(--card-2,var(--card-3))}
.crx-win-l li{display:flex;align-items:flex-start;gap:10px;padding:11px 0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.crx-win-l li+li{border-top:1px solid var(--line)}
.crx-w-ic{flex:none;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--ok-tint);color:var(--ok);margin-top:1px}
.crx-w-ic svg{width:13px;height:13px}
.crx-none{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;border-radius:14px;background:var(--card-2,var(--card-3));font-size:13.5px;color:var(--ink-2)}
@media (max-width:960px){.crx-short-cols{grid-template-columns:1fr}}
@media (max-width:760px){.crx-short{padding:16px}.crx-short-head{font-size:16.5px}}

/* ---- people AI sent you: two matching panels ---- */
.crx-vgrid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:14px;align-items:stretch}
.crx-vgrid .crx-vis{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border-radius:16px;background:var(--card-2,var(--card-3))}
.crx-vh{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.crx-cap-n{font-size:12px;font-weight:700;color:var(--ink-2)}
.crx-vlist{display:grid;gap:0}
.crx-vgrid .crx-vr{display:grid;grid-template-columns:minmax(96px,auto) minmax(40px,1fr) 28px 40px;gap:12px;align-items:center;padding:9px 0;font-size:13px}
.crx-vgrid .crx-vr+.crx-vr{border-top:1px solid var(--line)}
.crx-vn{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right}
.crx-vp{font-size:12px;color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums}
.crx-vis-f{margin:auto 0 0;padding-top:10px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}
.crx-lr{display:grid;grid-template-columns:minmax(0,1fr) 60px 150px;gap:12px;align-items:center;padding:9px 0;font-size:13px;color:var(--ink-2)}
.crx-lr+.crx-lr{border-top:1px solid var(--line)}
.crx-lr .crx-vn{text-align:center}
.crx-lr-h{padding-top:0;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.crx-lr-h span:nth-child(2){text-align:center}
@media (max-width:900px){.crx-vgrid{grid-template-columns:1fr}}
@media (max-width:760px){.crx-lr{grid-template-columns:minmax(0,1fr) 50px}.crx-lr .cr-when,.crx-lr-h span:nth-child(3){display:none}}

/* ---- questions: tracked in your campaigns, with filters ---- */
.qt{margin:0 0 16px}
.qt-sum{margin:0 0 14px;font:600 15.5px/1.5 var(--disp);color:var(--ink)}
.qt-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.qt-chips{flex-wrap:wrap}
.qt-chips button:disabled{opacity:.4;cursor:default}
.qt-find{margin-left:auto;height:38px;min-width:220px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--card-2,var(--card-3));color:var(--ink);font:inherit;font-size:13px}
.qt-t{display:grid;gap:2px}
.qt-r{display:grid;grid-template-columns:minmax(0,2.2fr) 120px 100px 120px 96px;gap:12px;align-items:center;width:100%;padding:11px 12px;border:0;border-radius:10px;background:var(--card-2,var(--card-3));font:inherit;font-size:13px;color:var(--ink-2);text-align:left;cursor:pointer}
.qt-r[hidden]{display:none}
.qt-r:not(.qt-h):hover{box-shadow:inset 0 0 0 1px var(--line-2)}
.qt-r:focus-visible{outline:2px solid var(--brand-2);outline-offset:1px}
.qt-h{background:none;cursor:default;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding-bottom:4px}
.qt-q{display:grid;gap:4px;min-width:0}
.qt-q b{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis}
.qt-tags{display:flex;flex-wrap:wrap;gap:4px}
.qt-tags span{font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;background:var(--brand-tint);color:var(--brand-ink)}
.qt-g{display:flex;align-items:center;gap:8px}
.qt-mv{font-size:12px;font-weight:700}.qt-mv.up{color:var(--ok)}.qt-mv.down{color:var(--er-ink,var(--er))}
.qt-ai{display:grid;gap:1px}.qt-ai b{color:var(--ink-2)}.qt-ai b.ok{color:var(--ok)}.qt-ai small{font-size:11px;color:var(--ink-3)}
.qt-wait{font-size:12px;color:var(--ink-4)}
.qt-wk{display:flex;align-items:center;justify-content:flex-end;gap:6px;font-weight:600;color:var(--brand-ink)}
.qt-wk i{font-style:normal}
.qt-tracked{display:inline-block;margin-left:8px;font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;background:var(--ok-tint);color:var(--ok);vertical-align:1px}
@media (max-width:760px){.qt-r{grid-template-columns:minmax(0,1fr) auto auto}.qt-r>:nth-child(3),.qt-r>:nth-child(5){display:none}.qt-find{margin-left:0;width:100%}}
.qt-chips{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none}.qt-chips::-webkit-scrollbar{display:none}.qt-chips button{flex:none}

/* ---- questions: all of them in one list ---- */
.qa{margin:0 0 16px}
.qa-tools{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto;align-items:center}
.qa-tools .qt-find{margin-left:0}
.qa-sel{height:38px;padding:0 12px;border-radius:999px;border:1px solid var(--line-2);background:var(--card-2,var(--card-3));color:var(--ink);font:inherit;font-size:13px}
.qa-t,.qa-list{display:grid;gap:2px}
.qa-r{display:grid;grid-template-columns:minmax(0,2.2fr) 112px 110px 90px 108px 92px;gap:12px;align-items:center;width:100%;padding:11px 12px;border:0;border-radius:10px;background:var(--card-2,var(--card-3));font:inherit;font-size:13px;color:var(--ink-2);text-align:left}
.qa-r[hidden]{display:none}
.qa-r.link{cursor:pointer}.qa-r.link:hover{box-shadow:inset 0 0 0 1px var(--line-2)}
.qa-r.link:focus-visible{outline:2px solid var(--brand-2);outline-offset:1px}
.qa-h{background:none;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding-bottom:4px}
.qa-q{display:grid;gap:5px;min-width:0}
.qa-q b{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis}
.qa-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.qa-tag{font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px}
.qa-tag.camp{background:var(--ok-tint);color:var(--ok)}
.qa-tag.found{background:var(--brand-tint);color:var(--brand-ink)}
.qa-tag.own{background:var(--wr-tint);color:var(--wr-ink)}
.qa-fam{font-size:11px;color:var(--ink-3)}
.qa-vol{display:grid;gap:1px}.qa-vol b{color:var(--ink-2);font-variant-numeric:tabular-nums}.qa-vol b.ok{color:var(--ok)}
.qa-vol small{font-size:11px;color:var(--ink-3)}.qa-vol small.ok{color:var(--ok)}.qa-vol small.bad{color:var(--er-ink,var(--er))}
.qa-when{display:flex;align-items:center;justify-content:flex-end;gap:6px;font-weight:600;color:var(--brand-ink)}
.qa-when i{font-style:normal}
.qa-acts{margin-top:14px}
.qa-acts .run-row{margin:0}
.qa-foot{margin:12px 0 0;font-size:12px;line-height:1.5;color:var(--ink-3)}
@media (max-width:760px){.qa-r{grid-template-columns:minmax(0,1fr) auto auto}.qa-r>:nth-child(2),.qa-r>:nth-child(4),.qa-r>:nth-child(6){display:none}.qa-tools{margin-left:0;width:100%}.qa-tools .qt-find{flex:1;min-width:0}}

/* ---- all your questions, second pass ---- */
.qa-r{grid-template-columns:minmax(0,1fr) 96px 92px 80px 112px 76px;gap:14px;padding:12px 14px;border-radius:12px}
.qa-list .qa-r{background:var(--card);border:1px solid var(--line)}
.qa-list .qa-r.link:hover{border-color:var(--line-2);box-shadow:var(--sh1)}
.qa-list{gap:6px}
.qa-q b{font-size:14px;line-height:1.35;white-space:normal}
.qa-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:2px 9px;border-radius:999px;line-height:1.5}
.qa-tag.camp{background:var(--ok-tint);color:var(--ok)}
.qa-tag-dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.qa-ai{display:flex;align-items:center;gap:8px}
.qa-dots{display:inline-flex;gap:3px}
.qa-dots i{width:9px;height:9px;border-radius:50%;background:var(--line-2)}
.qa-dots i.on{background:var(--ok)}
.qa-ai b{font-size:12.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.qa-ai b.ok{color:var(--ok)}
.qa-month{font-weight:600;color:var(--ink-3)}
.qa-h-r{text-align:right}
.qa-h{padding:0 14px 4px}
.qa-vol .qt-wait{font-size:11.5px}
@media (max-width:760px){.qa-r{grid-template-columns:minmax(0,1fr) auto auto;gap:10px}}
.qa-list .rk{background:var(--card-2,var(--card-3))}.qa-list .rk-top{background:var(--ok-tint)}.qa-list .rk-p1{background:var(--brand-tint)}

/* ---- the campaign summary: what AI did during the campaign ---- */
.ctd-sec .qt-sum{margin:0 0 12px}
.ctd-tiles small{display:flex;align-items:center}
.ctd-wk-h{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin:18px 0 8px}
.ctd-wk-h>b{font-size:13.5px;color:var(--ink)}
.ctd-wk-h .crx-legend{margin:0}
.ctd-wk-sel{display:inline-flex;align-items:center;gap:6px}
.ctd-wk-sel i{width:12px;height:12px;border-radius:3px;box-shadow:inset 0 0 0 1.5px var(--amber,var(--wr))}
.ctd-wbars{position:relative;display:flex;align-items:stretch;gap:10px;height:200px;padding-top:6px}
.ctd-wb{flex:1;max-width:140px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 0;border-radius:12px;outline:none;cursor:default}
.ctd-wb-s{flex:1;width:52%;max-width:56px;display:flex;flex-direction:column-reverse;gap:1px}
.ctd-wb-s i{display:block;width:100%;border-radius:3px;flex:none}
.ctd-wb-s i.live{background:var(--ok)}.ctd-wb-s i.index{background:var(--brand-2)}.ctd-wb-s i.train{background:var(--amber,var(--wr))}
.ctd-wb b{font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}
.ctd-wb small{font-size:11px;color:var(--ink-3);white-space:nowrap}
.ctd-wbars.hov .ctd-wb:not(.on){opacity:.45}
.ctd-wb.on{background:var(--card-2,var(--card-3))}
.ctd-wb.sel{box-shadow:inset 0 0 0 1.5px var(--amber,var(--wr))}
.ctd-wb.sel small{color:var(--ink);font-weight:700}
.ctd-wb:focus-visible{box-shadow:0 0 0 2px var(--brand-2)}
.ctd-rows{display:grid}
.ctd-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(40px,1fr) 34px;gap:10px;align-items:center;padding:8px 0;font-size:13px;color:var(--ink-2)}
.ctd-row+.ctd-row{border-top:1px solid var(--line)}
.ctd-row>b{text-align:right;color:var(--ink);font-variant-numeric:tabular-nums}
.ctd-row .crx-who{gap:8px}
.ctd-row .crx-path{font-weight:500}
@media (max-width:760px){.ctd-wbars{gap:4px;height:170px}.ctd-wb small{font-size:10px}.ctd-wk-sel{display:none}}
.ctd-wb.ahead .ctd-wb-s{border-bottom:2px dashed var(--line-2)}.ctd-wb.ahead small{color:var(--ink-4)}.ctd-wbars{gap:6px}
@media (max-width:760px){.ctd-sec .ctd-tiles{grid-template-columns:1fr 1fr}.ctd-sec .ctd-t:last-child:nth-child(odd){grid-column:1/-1}}

/* ---- public profile: details | hours & bookings ---- */
.pp-sw{margin:4px 0 14px}

/* ---- booking requests: summary, filters, export ---- */
.bk-sum{margin:0 0 12px;font:600 14.5px/1.5 var(--disp);color:var(--ink)}
.bk-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.bk-fchips{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none}
.bk-fchips::-webkit-scrollbar{display:none}
.bk-fchips button{flex:none}.bk-fchips button:disabled{opacity:.4;cursor:default}
.bk-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-left:auto}
.bk-tools .qt-find{margin-left:0;min-width:200px}
.bk-flist{display:grid;gap:8px}
@media (max-width:760px){.bk-tools{margin-left:0;width:100%}.bk-tools .qt-find{flex:1;min-width:0}}
.bk-tools .qa-sel{width:auto;min-width:150px;flex:none}
.bk-bar{align-items:center}
@media (max-width:760px){.bk-tools .qt-find{order:3;flex:1 1 100%;min-width:0}.bk-tools .qa-sel{flex:1}}

/* ---- bookings: on or off at the top; all of them in a popup ---- */
.bk-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 14px;padding:20px 22px;border-radius:20px;background:var(--card);border:1.5px solid var(--line)}
.bk-hero.on{border-color:var(--ok)}
.bk-hero-t{display:grid;gap:4px;max-width:62ch}
.bk-hero-k{display:flex;align-items:center;gap:10px}
.bk-hero-k b{font:600 19px/1.3 var(--disp);color:var(--ink)}
.bk-dot{width:12px;height:12px;border-radius:50%;background:var(--ink-4);box-shadow:0 0 0 4px var(--card-2)}
.bk-hero.on .bk-dot{background:var(--ok);box-shadow:0 0 0 4px var(--ok-tint)}
.bk-hero-t p{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-3)}
.bk-hero-msg{font-size:12.5px}.bk-hero-msg.bad{color:var(--er-ink,var(--er))}
.bk-hero-a{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.btn.bk-big{padding:14px 26px;font-size:15.5px;border-radius:14px}
.bk-more{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.bk-dialog{border:0;padding:0;background:transparent;width:min(980px,calc(100vw - 32px));max-width:none;color:var(--ink)}
.bk-dialog::backdrop{background:rgba(8,14,28,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.bk-dlg{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;max-height:calc(100vh - 48px);border-radius:20px;background:var(--card);border:1px solid var(--line);box-shadow:0 24px 60px rgba(0,0,0,.3);overflow:hidden}
.bk-dlg-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;border-bottom:1px solid var(--line)}
.bk-dlg-h h3{margin:0 0 2px;font:600 18px var(--disp);color:var(--ink)}
.bk-dlg-h small{font-size:12.5px;color:var(--ink-3)}
.bk-dlg-h .sc-dlg-x{position:static}
.bk-dlg-f{display:grid;gap:10px;padding:12px 20px;border-bottom:1px solid var(--line)}
.bk-dlg-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.bk-dlg-tools .qt-find{margin-left:0;flex:1;min-width:180px}
.bk-dlg-tools .qa-sel{width:auto;min-width:150px}
.bk-date{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-3)}
.bk-dt{height:38px;padding:0 10px;border-radius:10px;border:1px solid var(--line-2);background:var(--card-2,var(--card-3));color:var(--ink);font:inherit;font-size:13px;color-scheme:light dark}
.bk-dlg-l{overflow:auto;padding:14px 20px;display:grid;gap:8px;align-content:start}
.bk-dlg-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 20px;border-top:1px solid var(--line)}
.bk-dlg-n{font-size:13px;color:var(--ink-3)}
@media (max-width:760px){.bk-hero{padding:16px}.bk-hero-a{width:100%}.bk-hero-a .btn{flex:1;justify-content:center;text-align:center}.bk-dlg{max-height:calc(100vh - 24px)}.bk-dlg-tools .qa-sel,.bk-dlg-tools .qt-find{flex:1 1 100%}}
.bk-dt{color-scheme:light}
:root[data-theme="dark"] .bk-dt{color-scheme:dark}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .bk-dt{color-scheme:dark}}
.bk-dt::-webkit-calendar-picker-indicator{opacity:.8;cursor:pointer}
.bk-dt::-webkit-calendar-picker-indicator:hover{opacity:1}

/* ---- booking lengths as an even grid; the automatic rule as one sentence ---- */
.bk-lens{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}
.bk-lens .bk-chip{width:100%;text-align:center;padding:9px 10px}
.bk-rule{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2)}
.bk-rule select,.bk-rule input{height:38px;padding:0 10px;border-radius:10px;border:1px solid var(--line-2);background:var(--card-2,var(--card-3));color:var(--ink);font:inherit;font-size:13.5px}
.bk-rule input{width:72px}
.bk-rule-rest{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
.bk-rule-rest[hidden]{display:none}
.bk-byrule{font-size:11px;color:var(--ink-3);font-style:italic}
.bk .bk-lens{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:760px){.bk .bk-lens{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bk .bk-rule select{width:auto;min-width:0;flex:none}
.bk .bk-rule input{width:76px;flex:none}
.bk .bk-rule-rest{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
.bk .bk-rule-rest[hidden]{display:none}

/* ---- the extend band ---- */
.ext-band{margin:0 0 16px}
.ext-band.ended{border-color:var(--amber,var(--wr))}
.ext-band.ended .bk-dot{background:var(--amber,var(--wr));box-shadow:0 0 0 4px var(--wr-tint)}
.ext-band:not(.ended):not(.on) .bk-dot{background:var(--brand-2);box-shadow:0 0 0 4px var(--brand-tint)}
.cp-state.cp-ended{background:var(--wr-tint);color:var(--wr-ink)}

/* ---- share of voice, week by week ---- */
.sv-t{display:grid;gap:2px}
.sv-r{display:grid;grid-template-columns:minmax(0,1.4fr) 210px 72px 72px 110px;gap:12px;align-items:center;padding:9px 12px;border-radius:10px;font-size:13px;color:var(--ink-2)}
.sv-r:not(.sv-h){background:var(--card-2,var(--card-3))}
.sv-r.you{box-shadow:inset 0 0 0 1.5px var(--amber,var(--wr))}
.sv-h{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding-bottom:4px}
.sv-r .crx-who b{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sv-spark{display:inline-flex;line-height:0}
.sv-base{stroke:var(--line-2);stroke-width:1}
.sv-line{fill:none;stroke:var(--ink-4);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.sv-line.you{stroke:var(--amber,var(--wr));stroke-width:2.4}
.sv-dot{fill:var(--ink-4)}.sv-dot.you{fill:var(--amber,var(--wr))}
.sv-v{font-variant-numeric:tabular-nums}
b.sv-v{color:var(--ink)}
.sv-d{font-size:12px;font-weight:700}.sv-d.up{color:var(--ok)}.sv-d.down{color:var(--er-ink,var(--er))}.sv-d.mute{color:var(--ink-3);font-weight:600}
.sv-note{margin:10px 0 0;font-size:12px;color:var(--ink-3)}
.ct-note{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--ink-3)}
@media (max-width:760px){.sv-r{grid-template-columns:minmax(0,1fr) 72px auto auto;gap:8px;padding:9px 10px}.sv-r>:nth-child(3){display:none}.sv-spark svg{width:72px;height:30px}}

/* ---- Google Business Profile, read-only ---- */
.gbp-v{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.gbp-v-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.gbp-v-h b{font-size:13px;color:var(--ink)}
.gbp-v-open{font-size:12px;font-weight:600;color:var(--link,var(--navy));text-decoration:none;white-space:nowrap}
.gbp-v-open:hover{text-decoration:underline}
.gbp-v-sub{font-size:12px;line-height:1.45;color:var(--ink-3);overflow-wrap:anywhere}
.gbp-v-nums{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gbp-v-nums>div{display:grid;gap:1px;padding:10px 12px;border-radius:10px;background:var(--card-2,var(--card-3))}
.gbp-v-nums small{font-size:11.5px;color:var(--ink-3)}
.gbp-v-nums b{font-size:18px;color:var(--ink);font-variant-numeric:tabular-nums}
.gbp-v-nums b.ok{color:var(--ok)}
.gbp-v-nums span{font-size:11.5px;color:var(--ink-3)}
.gbp-v-list{display:grid;gap:6px}
.gbp-v-q{display:grid;gap:3px;padding:8px 10px;border-radius:9px;background:var(--card-2,var(--card-3));min-width:0}
.gbp-v-q b{font-size:12.5px;color:var(--ink);font-weight:600}
.gbp-v-q span{display:flex;flex-wrap:wrap;gap:4px 10px}
.gbp-v-q i{font-style:normal;font-size:11.5px;color:var(--ink-3)}
.gbp-v-q i.you{color:var(--ink);font-weight:700;box-shadow:inset 0 -2px 0 var(--amber,var(--wr))}

/* ---- the site check with each weekly run ---- */
.ctd-r.c5.swk{grid-template-columns:minmax(0,1.4fr) repeat(5,minmax(64px,1fr))}
.ctd-r.sw-moved{box-shadow:inset 3px 0 0 var(--wr)}
.ctd-r.sw-moved.up{box-shadow:inset 3px 0 0 var(--ok)}
.sw-cell{display:inline-flex;align-items:baseline;gap:6px}
.sw-cell b{font-size:13px}
.sw-cell i{font-style:normal;font-size:11.5px;font-weight:700}
.sw-cell i.mute{font-weight:500}
.pg-ev.hl span{font-weight:700;color:var(--ink)}
.pg-ev.hl.down i{background:var(--er,var(--wr))}
.pg-ev.hl.up i{background:var(--ok)}
mark.pg-hl{padding:1px 6px;border-radius:6px;font-weight:700;color:var(--ink);background:color-mix(in srgb,var(--wr) 22%,transparent)}
mark.pg-hl.up{background:color-mix(in srgb,var(--ok) 20%,transparent)}
.sw-band{display:flex;align-items:center;gap:18px;margin:0 0 16px;padding:14px 18px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.sw-band.down{border-color:color-mix(in srgb,var(--wr) 60%,var(--line));background:color-mix(in srgb,var(--wr) 9%,var(--card))}
.sw-band.up{border-color:color-mix(in srgb,var(--ok) 55%,var(--line));background:color-mix(in srgb,var(--ok) 8%,var(--card))}
.sw-score{display:grid;gap:2px;flex:none;padding-right:18px;border-right:1px solid var(--line)}
.sw-score>small{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.sw-score b{font-size:24px;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.sw-score b small{font-size:12px;font-weight:600;color:var(--ink-3)}
.sw-was{color:var(--ink-3);font-weight:600}
.sw-what{display:grid;gap:3px;min-width:0;font-size:13px;color:var(--ink-2)}
.sw-what b{color:var(--ink);font-size:14px}
.sw-what .link{justify-self:start}
@media (max-width:760px){.ctd-r.c5.swk{grid-template-columns:minmax(0,1.5fr) repeat(5,minmax(40px,.8fr));font-size:12px;gap:5px}.sw-cell{display:grid;gap:0}.sw-band{flex-direction:column;align-items:flex-start;gap:10px}.sw-score{border-right:0;padding-right:0}}
@media (max-width:760px){.ctd-r.head.c5.swk{font-size:9.5px;letter-spacing:0}.ctd-r.c5.swk>span{min-width:0;overflow-wrap:anywhere}}
.wk-catch-l li.c-s::before{background:var(--ink-3)}
.wk-catch-l li.c-s.hl{margin-left:-8px;padding:6px 10px 6px 28px;border-radius:8px;font-weight:600;background:color-mix(in srgb,var(--wr) 16%,transparent)}
.wk-catch-l li.c-s.hl::before{left:10px;top:calc(6px + .62em);background:var(--wr)}
.wk-catch-l li.c-s.hl.up{background:color-mix(in srgb,var(--ok) 14%,transparent)}.wk-catch-l li.c-s.hl.up::before{background:var(--ok)}

.sw-cell{flex-wrap:wrap}
.sw-auth{flex-basis:100%;font-size:11px;color:var(--ink-3)}
.sw-auth i{font-style:normal;font-weight:700}


/* ---- where the business stands, at the top of the Campaigns list ---- */
.ws-sec{margin-bottom:18px}
.ws-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.ws-t{display:grid;gap:3px;text-align:left;font:inherit;padding:14px 16px;border-radius:12px;border:0;background:var(--card-2,var(--card-3));cursor:pointer;color:var(--ink-2);min-width:0}
.ws-t:hover{box-shadow:inset 0 0 0 1px var(--line-2)}
.ws-t small{font-size:12px;color:var(--ink-3)}
.ws-t b{font-size:22px;color:var(--ink);font-variant-numeric:tabular-nums}
.ws-t span{font-size:12px;color:var(--ink-3);overflow-wrap:anywhere}
.ws-t.ok b{color:var(--ok)}.ws-t.bad b{color:var(--er-ink,var(--er))}.ws-t.wr b{color:var(--wr-ink,var(--wr))}
.cp-share{margin-top:18px}
@media (max-width:760px){.ws-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- tab icons ---- */
.htabs button{display:inline-flex;align-items:center;gap:7px}
.htabs button svg{width:16px;height:16px;flex:none;opacity:.8}
.htabs button[aria-current=page] svg{opacity:1;color:var(--wr-ink,var(--wr))}
@media (max-width:600px){.htabs button svg{width:15px;height:15px}}
.ws-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}

/* Settings: the fact sheet page drafts read first (October 2026) */
.fx{display:flex;flex-direction:column;gap:12px;min-width:0}
.fx-status{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.fx-status.ok{color:var(--ok)}
.fx-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--card);max-height:520px;overflow:auto}
.fx-row{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-top:1px solid var(--line)}
.fx-row:first-child{border-top:0}
.fx-row input[type=checkbox]{margin-top:12px;flex:none;accent-color:var(--brand)}
.fx-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.fx .fx-text{padding:8px 11px;font-size:13.5px}
.fx-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3)}
.fx-kind{font-weight:600;color:var(--ink-2)}
.fx-src{color:var(--ink-3);overflow-wrap:anywhere}
a.fx-src:hover{color:var(--brand)}
.fx-add{display:flex;gap:8px;align-items:center}
.fx-acts{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:640px){.fx-add{flex-direction:column;align-items:stretch}}

/* bills: the dialog shown when a payment is confirmed, and the list on a campaign's progress page */
.bill-dlg-meta{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;margin:14px 0;font-size:14px}
.bill-dlg-meta dt{color:var(--ink-3)}
.bill-dlg-meta dd{margin:0;font-weight:500;overflow-wrap:anywhere}
.bill-dlg-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.bill-dlg-acts a.btn{text-decoration:none}
.bill-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.bill-rows li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.bill-rows li:last-child{border-bottom:0}
.bill-rows li div{display:flex;flex-direction:column}
.bill-rows small{color:var(--ink-3)}
.bill-rows a.link{white-space:nowrap}
.bill-demo-chip{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:6px;font-size:11.5px;font-weight:600;color:var(--wr-ink);background:var(--wr-tint);vertical-align:2px}

/* a campaign's weekly runs: automatic at a chosen day and hour, or by hand */
.pg-auto{margin:16px 0}
.pg-auto-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pg-auto-h h2{margin:0;font-size:17px}
.pg-auto .sub{margin:8px 0 12px}
.pg-auto-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.pg-auto-on{display:inline-flex;align-items:center;gap:8px;font-weight:500;cursor:pointer}
.pg-auto-when{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--ink-2)}
.pg-auto-when select{padding:6px 8px;border:1px solid var(--line-2);border-radius:8px;background:var(--card)}
.pg-auto-when select:disabled{opacity:.5}
.pg-auto-when small,.pg-auto-why{color:var(--ink-3)}
.pg-auto-why{display:block;margin-top:10px}
.pg-auto-note{display:block;margin-top:6px}
/* What AI says about you (claimsCard): one row a claim, the business's own word beside it */
.clm-list{display:grid;gap:0}
.clm-row{padding:14px 0;border-top:1px solid var(--line)}
.clm-row:first-child{border-top:0;padding-top:4px}
.clm-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.clm-top .pill{margin-left:0}
.clm-k{font:600 11.5px/1 var(--disp);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3)}
.clm-v{font-size:16px;color:var(--ink)}
.clm-meta{display:block;margin-top:6px;color:var(--ink-3);font-size:12.5px}
.clm-q{margin:6px 0 0;font-size:13.5px;color:var(--ink-2);overflow-wrap:anywhere}
.clm-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.clm-fix{display:flex;flex:1 1 260px;gap:8px;min-width:0}
.clm-fix.hide{display:none}
.clm-fix input{flex:1 1 160px;min-width:0;padding:7px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--card-2);color:var(--ink);font-size:14px}
.clm-fix input:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none;background:var(--card)}
