/* BugRunner landing stylesheet. One file: tokens, shared components, home sections, inner pages.
   Accent is the dashboard's signal green (web/dashboard/src/app/globals.css --color-signal). */
:root{
  --ink:#0a0d14; --body:#343b4a; --muted:#545c6e; --bg:#fff; --surface:#fff; --tint:#f6f8f3;
  --line:#e4e8de; --line-strong:#7f8a74;
  --accent:#a8f438; --accent-hover:#bff55e; --accent-press:#8fd61f; --accent-ink:#0a0d14;
  --accent-dk:#3a6600; --soft:#f1fadf; --soft-line:#cfe8a0;
  --wa-btn:#25d366;
  --d0:#0a0d14; --d1:#10151f; --d2:#171d2b; --dline:rgba(255,255,255,.1);
  --dtext2:rgba(255,255,255,.72);
  --crit:#ff4d5e; --high:#ff9c41; --med:#f2d04b; --low:#6ba6ff;
  --warn-ink:#6b4400; --warn-bg:#fff7e0; --warn-line:#f0d68a;
  --radius-lg:18px; --maxw:1200px; --ease:cubic-bezier(.2,.7,.2,1);
  --display:"Plus Jakarta Sans","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px;background:var(--d0);}
body{margin:0;color:var(--ink);background:var(--bg);font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0;padding:0;}
h1,h2,h3{font-family:var(--display);font-weight:700;}
ul,ol{list-style:none;}
a{color:inherit;text-decoration:none;}
img,svg{display:block;}
::selection{background:var(--accent);color:var(--accent-ink);}
:focus-visible{outline:3px solid var(--accent-dk);outline-offset:3px;border-radius:4px;}
.dark :focus-visible,.nav :focus-visible,.ft :focus-visible,.hero :focus-visible,.phd :focus-visible{outline-color:var(--accent);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
@media(min-width:900px){.wrap{padding:0 40px;}}
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:#fff;padding:12px 16px;}
.skip:focus{left:0;}
.ul{background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .2s var(--ease);padding-bottom:2px;}
.ul:hover,.ul:focus-visible{background-size:100% 2px;}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-weight:600;font-size:16px;line-height:1;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s var(--ease);}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none;}
.btn svg.wa{fill:currentColor;stroke:none;width:19px;height:19px;}
.btn-wa{background:var(--wa-btn);color:#04170f;border-color:#1aa953;box-shadow:inset 0 -2px 0 rgba(4,23,15,.22);}
.btn-wa:hover{background:#2fe173;border-color:#128a40;}
.btn-wa:active{background:#1fbd5b;box-shadow:inset 0 2px 0 rgba(4,23,15,.22);}
.btn-line{background:transparent;color:var(--ink);border-color:var(--line-strong);}
.btn-line:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.dark .btn-line,.hero .btn-line,.phd .btn-line{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.04);}
.dark .btn-line:hover,.hero .btn-line:hover,.phd .btn-line:hover{background:#fff;color:var(--ink);border-color:#fff;}
.btn-block{display:flex;width:100%;}
@media(max-width:520px){.actions .btn{width:100%;white-space:normal;text-align:center;line-height:1.25;padding-top:12px;padding-bottom:12px;}}

/* nav: floating rounded bar, wordmark only */
.nav{position:sticky;top:12px;z-index:40;height:0;}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px;width:calc(100% - 24px);max-width:1120px;margin:0 auto;padding:0 10px 0 22px;border-radius:999px;background:rgba(14,18,28,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);color:#fff;}
.brand{display:flex;align-items:center;min-height:44px;color:#fff;font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.035em;}
.brand b{color:var(--accent);font-weight:800;}
.nav-links{display:flex;align-items:center;gap:26px;font-size:15px;font-weight:500;}
.nav-links a.ul{display:flex;align-items:center;min-height:44px;padding-bottom:0;background-position:0 calc(100% - 9px);color:rgba(255,255,255,.84);}
.nav-links a.ul:hover{color:#fff;}
.nav-links .btn{min-height:44px;padding:0 20px;font-size:15px;}
.nav-toggle{display:none;position:absolute;top:10px;right:22px;width:44px;height:44px;margin:0;opacity:0;z-index:3;cursor:pointer;}
.nav-burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:999px;color:#fff;}
.nav-burger .x{display:none;}
.nav-drawer{display:none;position:absolute;top:72px;left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:1120px;flex-direction:column;padding:8px 20px 18px;border-radius:22px;background:#0e121c;border:1px solid rgba(255,255,255,.12);color:#fff;}
.nav-drawer a{display:flex;align-items:center;min-height:48px;font-size:16px;font-weight:500;border-top:1px solid var(--dline);}
.nav-drawer a:first-child{border-top:0;}
.nav-drawer .btn{margin-top:16px;}
@media(max-width:900px){
  .nav-links a.ul.hide-sm,.nav-links > .btn{display:none;}
  .nav-toggle{display:block;} .nav-burger{display:inline-flex;}
  .nav-toggle:checked ~ .nav-in .nav-burger .bars{display:none;}
  .nav-toggle:checked ~ .nav-in .nav-burger .x{display:inline;}
  .nav-toggle:checked ~ .nav-drawer{display:flex;}
  .nav-toggle:focus-visible ~ .nav-in .nav-burger{outline:3px solid var(--accent);outline-offset:-3px;}
}

/* sections */
.sec{padding:72px 0;}
@media(min-width:900px){.sec{padding:112px 0;}}
.sec.alt{background:var(--tint);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.dark{background:var(--d0);color:#fff;position:relative;overflow:hidden;}
.label{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;line-height:1;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dk);background:var(--soft);border:1px solid var(--soft-line);border-radius:999px;padding:8px 14px;margin-bottom:18px;}
.label::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-dk);}
.dark .label{color:var(--accent);background:rgba(168,244,56,.1);border-color:rgba(168,244,56,.3);}
.dark .label::before{background:var(--accent);}
h2.title{font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-.03em;font-weight:800;max-width:22ch;text-wrap:balance;}
.sub{margin-top:16px;max-width:58ch;font-size:17px;line-height:1.6;color:var(--muted);}
.dark .sub{color:var(--dtext2);}
@media(min-width:900px){.sub{font-size:18px;}}
.head{margin-bottom:48px;}
@media(min-width:900px){.head{margin-bottom:64px;}}

/* hero */
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--d0);color:#fff;padding:150px 0 90px;}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(70% 46% at 50% -4%,rgba(168,244,56,.26),rgba(168,244,56,.07) 52%,transparent 74%);}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0,transparent 47px,rgba(168,244,56,.07) 47px,rgba(168,244,56,.07) 48px),repeating-linear-gradient(0deg,transparent 0,transparent 47px,rgba(168,244,56,.07) 47px,rgba(168,244,56,.07) 48px);-webkit-mask:linear-gradient(180deg,#000 0,rgba(0,0,0,.6) 35%,transparent 70%);mask:linear-gradient(180deg,#000 0,rgba(0,0,0,.6) 35%,transparent 70%);}
.hero .copy{max-width:940px;margin:0 auto;text-align:center;}
.hero h1{font-size:clamp(34px,8.6vw,60px);line-height:1.1;letter-spacing:-.03em;font-weight:800;text-wrap:balance;}
.hero .lead{margin:24px auto 0;max-width:62ch;font-size:18px;line-height:1.6;color:var(--dtext2);}
.hero .actions{margin-top:32px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.kw{display:inline-block;font-weight:600;line-height:1.25;padding:1px 8px 2px;margin:0 1px;border-radius:7px;border:1px solid transparent;}
.kw-g{color:var(--accent);background:rgba(168,244,56,.13);border-color:rgba(168,244,56,.32);}
.kw-b{color:#9cc4ff;background:rgba(107,166,255,.16);border-color:rgba(156,196,255,.3);}
.kw-o{color:#ffbd7d;background:rgba(255,156,65,.15);border-color:rgba(255,189,125,.3);}
.pills{margin-top:28px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;}
.pill{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);font-size:13px;font-weight:500;color:rgba(255,255,255,.84);}
.pill svg{width:15px;height:15px;fill:none;stroke:var(--accent);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
/* inline UI objects inside the h1: decorative, text supplied by CSS */
.ob{display:inline-block;vertical-align:.08em;margin:0 .12em;font-family:var(--mono);font-weight:700;font-size:.42em;letter-spacing:.08em;line-height:1;padding:.5em .75em;border-radius:.5em;white-space:nowrap;}
.ob-sev{color:#1a0a00;background:var(--high);box-shadow:0 0 1.4em rgba(255,156,65,.45);}
.ob-sev::before{content:"HIGH";}
.ob-issue{color:var(--accent);background:rgba(168,244,56,.12);border:1px solid rgba(168,244,56,.5);box-shadow:0 0 1.4em rgba(168,244,56,.22);}
.ob-issue::before{content:"bug \00b7  bugrunner";}

/* product demo frame */
.hframe{margin:56px auto 0;max-width:1060px;padding:6px;border-radius:26px;background:linear-gradient(180deg,rgba(168,244,56,.28),rgba(255,255,255,.06));}
.hframe-in{border-radius:21px;overflow:hidden;background:linear-gradient(180deg,#121a14,#0b100c);text-align:left;}
.hframe-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:14px 18px;border-bottom:1px solid var(--dline);}
.hframe-bar .pill{min-height:30px;padding:0 12px;font-size:12px;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#fff;}
.hframe-bar .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px rgba(168,244,56,.22);}
.hframe-bar .caption{font-size:12.5px;color:rgba(255,255,255,.72);}
.hframe-body{display:grid;gap:16px;padding:16px;}
@media(min-width:860px){.hframe-body{grid-template-columns:1.1fr .9fr;gap:22px;padding:26px;align-items:stretch;}}
.pane{border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#0d130e;padding:16px;min-width:0;}
.pane .k{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.62);margin-bottom:12px;}
.log{display:grid;gap:8px;font-family:var(--mono);font-size:12.5px;line-height:1.45;color:rgba(255,255,255,.86);}
.log li{display:flex;gap:10px;align-items:baseline;padding:7px 10px;border-radius:8px;background:rgba(255,255,255,.04);overflow-wrap:anywhere;}
.log .n{color:rgba(255,255,255,.55);flex:none;width:2ch;}
.log .bad{color:#ff8b97;background:rgba(255,77,94,.12);}
.log .ok{color:var(--accent);}
.cursor{display:inline-block;width:8px;height:15px;background:var(--accent);vertical-align:-2px;margin-left:2px;}
.rep{display:grid;gap:12px;}
.rep-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.rep-title{font-family:var(--display);font-weight:700;font-size:16px;line-height:1.3;color:#fff;}
.sev{flex:none;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 9px;border-radius:6px;border:1px solid;}
.sev-high{color:var(--high);border-color:rgba(255,156,65,.5);background:rgba(255,156,65,.1);}
.sev-crit{color:var(--crit);border-color:rgba(255,77,94,.5);background:rgba(255,77,94,.1);}
.sev-med{color:var(--med);border-color:rgba(242,208,75,.5);background:rgba(242,208,75,.1);}
.shot{height:84px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,#1a221b 0 22%,#0f1510 22%);position:relative;overflow:hidden;}
.shot::before{content:"";position:absolute;left:12px;top:36px;width:46%;height:8px;border-radius:4px;background:rgba(255,255,255,.18);box-shadow:0 16px 0 rgba(255,255,255,.1),0 32px 0 rgba(255,255,255,.1);}
.shot::after{content:"500";position:absolute;right:14px;bottom:12px;font-family:var(--mono);font-weight:700;font-size:20px;color:#ff8b97;}
.chips{display:flex;flex-wrap:wrap;gap:8px;}
.chip{font-family:var(--mono);font-size:11.5px;padding:5px 9px;border-radius:6px;border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.86);background:rgba(255,255,255,.05);}
.chip-g{color:var(--accent);border-color:rgba(168,244,56,.45);background:rgba(168,244,56,.1);}
.filed{font-family:var(--mono);font-size:12px;color:rgba(255,255,255,.8);padding-top:10px;border-top:1px dashed rgba(255,255,255,.18);}
.filed b{color:var(--accent);font-weight:600;}
@keyframes rise{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
@keyframes blink{50%{opacity:0;}}
@keyframes cycle{0%{opacity:0;transform:translateY(8px);}6%,90%{opacity:1;transform:none;}97%,100%{opacity:0;transform:translateY(-4px);}}
@media(prefers-reduced-motion:no-preference){
  .anim .log li,.anim .rep{opacity:0;animation:cycle 16s var(--ease) infinite;}
  .anim .log li:nth-child(1){animation-delay:.4s;} .anim .log li:nth-child(2){animation-delay:1.6s;}
  .anim .log li:nth-child(3){animation-delay:2.8s;} .anim .log li:nth-child(4){animation-delay:4s;}
  .anim .log li:nth-child(5){animation-delay:5s;} .anim .rep{animation-delay:6.4s;}
  .cursor{animation:blink 1s steps(1) infinite;}
}

/* problem: the buyer's words, large type on light */
.problem .says{display:grid;gap:0;margin-top:8px;}
.says p{font-family:var(--display);font-weight:700;font-size:clamp(22px,3vw,32px);line-height:1.2;letter-spacing:-.025em;padding:20px 0;border-top:1px solid var(--line);max-width:28ch;}
.says p:last-child{border-bottom:1px solid var(--line);}
.problem .split{display:grid;gap:32px;}
@media(min-width:900px){.problem .split{grid-template-columns:1fr 1fr;gap:72px;align-items:start;}}

/* steps */
.steps{display:grid;gap:0;counter-reset:s;}
.steps li{display:grid;grid-template-columns:44px 1fr;gap:4px 18px;padding:24px 0;border-top:1px solid var(--dline);counter-increment:s;}
.steps li::before{content:counter(s);grid-row:1 / span 2;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;font-family:var(--mono);font-weight:700;color:var(--accent);border:1px solid rgba(168,244,56,.4);background:rgba(168,244,56,.08);}
.steps h3{font-size:20px;letter-spacing:-.02em;}
.steps p{color:var(--dtext2);max-width:60ch;}
.steps code,.rd code,.defs code{font-family:var(--mono);font-size:.88em;}
.steps code{color:var(--accent);}
.how{display:grid;gap:40px;}
@media(min-width:960px){.how{grid-template-columns:1fr 1fr;gap:72px;align-items:start;}}
.term{border-radius:16px;background:#080b09;border:1px solid rgba(255,255,255,.12);overflow:hidden;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:rgba(255,255,255,.88);}
.term-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--dline);color:rgba(255,255,255,.66);font-size:11.5px;}
.term pre{margin:0;padding:16px;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;}
.term .p{color:var(--accent);} .term .d{color:rgba(255,255,255,.62);} .term .r{color:#ff8b97;} .term .o{color:var(--high);}

/* feature rows: definition list, two columns, no cards */
.defs{display:grid;gap:0;}
.defs > div{display:grid;gap:8px;padding:26px 0;border-top:1px solid var(--line);}
.defs > div:last-child{border-bottom:1px solid var(--line);}
@media(min-width:900px){.defs > div{grid-template-columns:.8fr 1.2fr;gap:48px;}}
.defs dt{font-family:var(--display);font-weight:800;font-size:21px;line-height:1.2;letter-spacing:-.025em;}
.defs dd{color:var(--body);max-width:62ch;}
.defs dd small{display:block;margin-top:8px;font-size:13.5px;color:var(--muted);}

/* audience */
.who{display:grid;gap:36px;}
@media(min-width:900px){.who{grid-template-columns:1fr 1fr;gap:72px;}}
.who h3{font-size:22px;letter-spacing:-.025em;margin-bottom:10px;}
.who p{color:var(--body);}

/* pricing table */
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--surface);}
.tw:focus-visible{outline:3px solid var(--accent-dk);outline-offset:2px;}
table.plans{border-collapse:collapse;width:100%;min-width:640px;font-size:15px;line-height:1.45;}
.plans th,.plans td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top;}
.plans thead th{background:var(--ink);color:#fff;font-family:var(--display);font-size:15px;vertical-align:bottom;}
.plans thead th .px{display:block;font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--accent);margin-top:4px;}
.plans thead th .px small{font-size:13px;font-weight:500;color:rgba(255,255,255,.72);letter-spacing:0;}
.plans tbody th{font-weight:600;color:var(--ink);background:var(--tint);}
.plans tr:last-child td,.plans tr:last-child th{border-bottom:0;}
.plans td.y{color:var(--accent-dk);font-weight:700;}
.plans td.n{color:var(--muted);}
.note{margin-top:16px;font-size:13.5px;line-height:1.55;color:var(--muted);max-width:76ch;}

/* faq */
.faq{display:grid;gap:0;max-width:820px;}
.faq details{border-top:1px solid var(--line);}
.faq details:last-child{border-bottom:1px solid var(--line);}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:14px 0;cursor:pointer;font-family:var(--display);font-weight:700;font-size:18px;line-height:1.3;list-style:none;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";flex:none;font-family:var(--mono);font-size:22px;color:var(--accent-dk);}
.faq details[open] summary::after{content:"\2212";}
.faq .a{padding:0 0 22px;color:var(--body);max-width:68ch;}
.faq .a p+p{margin-top:10px;}

/* closing band */
.final{text-align:center;padding:88px 0;}
.final h2{font-size:clamp(30px,5vw,46px);line-height:1.1;letter-spacing:-.03em;font-weight:800;max-width:20ch;margin:0 auto;text-wrap:balance;}
.final p{margin:16px auto 0;max-width:56ch;color:var(--dtext2);font-size:17px;}
.final .actions{margin-top:28px;display:flex;justify-content:center;flex-wrap:wrap;gap:12px;}

/* footer */
.ft{padding:56px 0 32px;border-top:1px solid var(--dline);background:#070a0e;font-size:14px;color:rgba(255,255,255,.78);}
.ft-in{display:grid;gap:32px;}
@media(min-width:760px){.ft-in{grid-template-columns:1fr auto;gap:64px;}.ft .right{justify-items:end;text-align:right;}}
.ft .brand{font-size:22px;}
.ft small{display:block;margin-top:12px;font-size:14px;color:rgba(255,255,255,.68);line-height:1.5;max-width:46ch;}
.ft .right{display:grid;justify-items:start;}
.ft .right a{display:flex;align-items:center;min-height:44px;}
.ft .right a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}

/* inner pages */
.phd{position:relative;isolation:isolate;overflow:hidden;background:var(--d0);color:#fff;padding:108px 0 48px;}
@media(min-width:900px){.phd{padding:136px 0 64px;}}
.phd::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 90% at 50% -20%,rgba(168,244,56,.24),rgba(168,244,56,.06) 55%,transparent 78%);}
.crumb{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:32px;padding:6px 14px;margin-bottom:20px;border-radius:999px;border:1px solid rgba(168,244,56,.3);background:rgba(168,244,56,.08);font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--accent);}
.crumb a{position:relative;} .crumb a::after{content:"";position:absolute;inset:-12px -6px;}
.crumb a:hover{text-decoration:underline;text-underline-offset:3px;}
.crumb [aria-current]{color:#fff;}
.phd h1{font-size:clamp(32px,6vw,48px);line-height:1.08;letter-spacing:-.03em;font-weight:800;max-width:24ch;text-wrap:balance;}
.phd-lead{margin-top:16px;max-width:62ch;font-size:18px;line-height:1.6;color:var(--dtext2);}
.phd .actions{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px;}
.pg .body{padding:48px 0 80px;}
@media(min-width:900px){.pg .body{padding:72px 0 112px;}}
.wrap.narrow{max-width:860px;}
.rd{max-width:760px;color:var(--body);font-size:16px;line-height:1.7;}
.rd h2{font-family:var(--display);font-size:clamp(22px,2.6vw,28px);line-height:1.2;letter-spacing:-.025em;font-weight:800;color:var(--ink);margin:48px 0 14px;padding-top:28px;border-top:1px solid var(--line);}
.rd h2:first-child{margin-top:0;padding-top:0;border-top:0;}
.rd h3{font-size:18px;color:var(--ink);margin:28px 0 8px;}
.rd p{margin:0 0 14px;}
.rd ul,.rd ol{margin:0 0 16px;padding-left:22px;list-style:revert;}
.rd li{margin:6px 0;padding-left:2px;}
.rd li::marker{color:var(--accent-dk);}
.rd strong{color:var(--ink);font-weight:650;}
.rd a:not(.btn){color:var(--accent-dk);text-decoration:underline;text-underline-offset:3px;}
.rd code{font-family:var(--mono);font-size:.88em;background:var(--tint);border:1px solid var(--line);border-radius:6px;padding:1px 6px;}
.rd pre{margin:0 0 18px;padding:16px;border-radius:12px;background:#080b09;color:rgba(255,255,255,.9);font-family:var(--mono);font-size:13px;line-height:1.6;overflow-x:auto;}
.rd pre code{background:none;border:0;padding:0;color:inherit;font-size:inherit;}
.rd .meta{color:var(--muted);font-size:14px;}
.draft{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-ink);border-radius:14px;padding:14px 18px;font-size:14px;margin:0 0 28px;}
.callout{background:var(--soft);border:1px solid var(--soft-line);border-left:4px solid var(--accent-dk);border-radius:14px;padding:16px 20px;margin:0 0 20px;}
.callout p:last-child{margin-bottom:0;}
.rd table{border-collapse:collapse;width:100%;min-width:0;font-size:14.5px;line-height:1.5;}
.rd th,.rd td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top;}
.rd th{background:var(--tint);color:var(--ink);font-family:var(--display);font-weight:700;font-size:13.5px;}
.rd tr:last-child td{border-bottom:0;}
.rd .tw{margin:0 0 20px;}
.cta-row{margin-top:32px;display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;}
.phd.nf{min-height:min(70vh,640px);display:flex;align-items:center;padding-bottom:72px;}
.phd.nf .wrap{width:100%;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.btn,.ul{transition:none;}}

.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.rd .tw table.plans{min-width:640px;}
.rd td:first-child code{white-space:nowrap;}

/* narrow screens: keep the row label visible while the plan columns scroll sideways */
@media(max-width:700px){
  table.plans{min-width:600px;font-size:14px;}
  .plans th,.plans td{padding:12px 12px;}
  .plans th:first-child{position:sticky;left:0;z-index:1;width:104px;min-width:104px;max-width:104px;}
  .plans thead th:first-child{background:var(--ink);}
}
