/* WallstDaily site theme.
   Loaded last, after the page's own styles and the ones sl-extra.js injects, so it sets the
   final look: a light, print-like page with serif headings, sentence-case labels, hairline
   rules and one ink-blue accent. Dark mode is opt-in from the header toggle. */

/* ── tokens ─────────────────────────────────────────────────────────────── */
:root,:root:not([data-theme="dark"]){
  --bg:#f6f6f3;--card:#ffffff;--tx:#1c2026;--mu:#5f6670;--fa:#868c95;--bd:#e3e3df;--bd2:#cdcfd2;
  --ac:#1d4a72;--ach:#163a5a;--acb:#edf2f7;--btn:#1d4a72;--btnh:#163a5a;
  --g:#1c7444;--gb:#eaf4ee;--r:#b1291f;--rb:#fbeceb;--a:#8a5800;--ab:#faf2e1;
  --hdr:#ffffff;--hdrtx:#1c2026;--hdrmu:#5f6670;--hdrbd:#e3e3df;
  --grad:var(--ac);--rad:6px;
  --serif:"Source Serif 4","Iowan Old Style","Georgia",serif;
  --sans:"Source Sans 3","Segoe UI",-apple-system,system-ui,sans-serif;
  --mono:var(--sans);
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#121417;--card:#191c20;--tx:#e7e8ea;--mu:#9da3ab;--fa:#7c828b;--bd:#2a2e34;--bd2:#3a3f46;
  --ac:#8db3dc;--ach:#a9c6e6;--acb:#1d2833;--btn:#2f6194;--btnh:#3a70a6;
  --g:#5bb985;--gb:#16261d;--r:#e8746a;--rb:#2c1a19;--a:#d8a74a;--ab:#2a2216;
  --hdr:#191c20;--hdrtx:#e7e8ea;--hdrmu:#9da3ab;--hdrbd:#2a2e34;
  color-scheme:dark;
}
/* the sector map and trendline desk pick darker or lighter series colours from the system
   setting; follow the page's own theme instead */
@media(prefers-color-scheme:dark){
  :root:not([data-theme="dark"]) .rrg{--c-XLK:#4a74c9;--c-XLF:#2a9384;--c-XLV:#c25a95;--c-XLE:#c9773a;--c-XLI:#7a8597;--c-XLY:#8b67c7;--c-XLP:#4a9a55;--c-XLU:#b8962a;--c-XLB:#a07650;--c-XLRE:#c95a5a;--c-XLC:#3a9cbf}
  :root:not([data-theme="dark"]) .td{--sup:#3358d4;--res:#de7b1f;--level:#8b67d6;--ema20:#16a3b5;--ema50:#d4a32a;--sma200:#8a94a0;--wema:#c4479d;--bb:#6b89b0;--rsi:#7a5dd8;--macd:#3358d4;--signal:#de7b1f}
}

/* ── base ───────────────────────────────────────────────────────────────── */
html{scroll-padding-top:90px}
body{background:var(--bg);color:var(--tx);font:15px/1.55 var(--sans);letter-spacing:0;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
.w{max-width:1200px;padding-left:24px;padding-right:24px}
@media(max-width:640px){.w{padding-left:16px;padding-right:16px}}
h1,h2,h3,h4,h5{color:var(--tx);letter-spacing:-.005em}
h1,h2,.hero h1,.az h1,.head h2,.hero2 .head h2,.sec2 h2,.band h2{font-family:var(--serif);font-weight:600}
a{color:var(--ac)}
::selection{background:var(--acb)}
.fine{font-size:13px;color:var(--mu)}
.mu,.tvs{color:var(--mu)}

/* ── header ─────────────────────────────────────────────────────────────── */
.top{background:var(--hdr);border-bottom:1px solid var(--hdrbd);backdrop-filter:none;color:var(--hdrtx)}
.top .w{padding-top:0;padding-bottom:0;min-height:60px;gap:20px}
.brand,a.brand{font-family:var(--serif);font-size:21px;font-weight:600;letter-spacing:-.01em;text-transform:none;color:var(--hdrtx);gap:0}
.brand:before{content:"";width:18px;height:18px;flex:none;margin:0 10px 0 0;background:none;border:2px solid var(--ac);border-radius:50%;box-shadow:inset 0 0 0 3px var(--hdr),inset 0 0 0 9px var(--ac)}
.brand span{color:inherit}
.menu{gap:2px;margin-left:8px;align-self:stretch}
.menu a{display:flex;align-items:center;padding:0 11px;font-size:14.5px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--hdrmu);border-radius:0;box-shadow:none}
.menu a:hover{color:var(--hdrtx)}
.menu a.on{color:var(--hdrtx);background:none;box-shadow:inset 0 -2px 0 var(--ac)}
.top input{background:var(--bg);border-color:var(--bd);color:var(--tx)}
.top button.gh{background:transparent;color:var(--hdrmu);border-color:var(--hdrbd)}
.top button.gh:hover{color:var(--hdrtx);border-color:var(--bd2)}
#th{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:var(--rad)}
#th svg{width:16px;height:16px}
#sf{max-width:380px}
#sf button{padding:8px 16px}
@media (max-width:1300px){header.top .w{flex-wrap:wrap}header.top #sf{margin-left:auto}header.top .menu{order:10;width:calc(100% + 48px);overflow-x:auto;white-space:nowrap;scrollbar-width:none;min-height:42px;border-top:1px solid var(--hdrbd);margin:0 -24px;padding:0 13px}}
@media (max-width:640px){header.top .menu{width:calc(100% + 32px);margin:0 -16px;padding:0 5px}.top .w{gap:10px 12px;padding-top:10px}}

/* ── controls ───────────────────────────────────────────────────────────── */
input{font-family:var(--sans);font-size:15px;letter-spacing:0;text-transform:none;border-radius:var(--rad);padding:9px 12px;border:1px solid var(--bd2);background:var(--card);color:var(--tx)}
input::placeholder{color:var(--fa);text-transform:none;letter-spacing:0}
input:focus{outline:0;border-color:var(--ac);box-shadow:0 0 0 3px var(--acb)}
input[type=range]{border:0;padding:0;background:transparent;box-shadow:none}
#t,#t2{text-transform:uppercase}#t::placeholder,#t2::placeholder{text-transform:none}
button,.btn{font-family:var(--sans);background:var(--btn);color:#fff;border-radius:var(--rad);font-size:14.5px;font-weight:600;letter-spacing:0;text-transform:none;filter:none}
button:hover,.btn:hover{background:var(--btnh);filter:none}
.btn{padding:11px 20px}
.btn.gh2,button.gh,.star{background:var(--card);color:var(--tx);border:1px solid var(--bd2);border-radius:var(--rad)}
.btn.gh2:hover,button.gh:hover,.star:hover{background:var(--card);border-color:var(--tx)}
.star{font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;padding:4px 12px}
.star.on{color:var(--ac);border-color:var(--ac)}
.chip{font-family:var(--sans);font-size:14px;font-weight:600;border-radius:var(--rad);padding:6px 12px;background:var(--card);color:var(--tx);border:1px solid var(--bd2)}
.chip:hover{color:var(--ac);border-color:var(--ac);box-shadow:none}
.tabs button,.tvt button,.petab button,.slx-lt button{font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;border-radius:var(--rad);padding:5px 12px}
.tabs button,.petab button,.tvt button,.slx-lt button{background:var(--card);color:var(--mu);border:1px solid var(--bd2)}
.tabs button:hover,.petab button:hover,.tvt button:hover,.slx-lt button:hover{background:var(--card);color:var(--tx)}
.tabs button.on,.petab button.on,.tvt button.on,.slx-lt button.on{background:var(--tx);color:var(--card);border-color:var(--tx)}
button.otog{font-size:13.5px;text-transform:none;letter-spacing:0;font-weight:600;background:var(--card)}
.slx-in,select.slx-in{font-family:var(--sans);border-radius:var(--rad);border-color:var(--bd2)}
select{font-family:var(--sans)}
.slx-dd{border-radius:var(--rad);border-color:var(--bd2);box-shadow:0 8px 24px rgba(20,24,30,.12)}
.slx-dd b{font-weight:700}
.slx-link{color:var(--ac)}

/* ── surfaces ───────────────────────────────────────────────────────────── */
.box,.mc,.gcard,.k,.wc,.hero2,.band,.hc,.score,.note2,.gbn,button.scn,.sform,.ochip,.rrg-card,.td-card,.slx-mbox{border-radius:var(--rad)!important;box-shadow:none}
.box,.k,.wc,.hc,.gcard,.ochip{background:var(--card);border:1px solid var(--bd)}
.box h4{font-size:16px;font-weight:600;margin:0 0 8px}
.box h5{font-size:13px;text-transform:none;letter-spacing:0;font-weight:600;color:var(--mu)}
.slx-modal{background:rgba(20,24,30,.45)}
.slx-modal>.slx-mbox{background:var(--card);box-shadow:0 20px 60px rgba(0,0,0,.25)}
.tip,.slx-tip,.rrg-tip{font-family:var(--sans);font-weight:500;font-size:13px;border-radius:4px}

/* ── section headings ───────────────────────────────────────────────────── */
.sec{border-bottom:1px solid var(--bd);padding-bottom:10px;margin:40px 0 16px;align-items:baseline}
.sec h3{font-family:var(--serif);font-size:21px;font-weight:600;text-transform:none;letter-spacing:-.005em}
.sec h3:before{display:none}
.sec span{font-size:13.5px;color:var(--mu);letter-spacing:0}
.tag{display:none}

/* ── small labels: sentence case, no tracking ───────────────────────────── */
.mh,.k small,.gl,.ochip small,.peh,.td-label,.rrg-gh b,.stitle,.rl,.tb th,.td th,.slx-cmp tr.grp td{text-transform:none!important;letter-spacing:0!important}
.mh{font-size:13px;font-weight:600;color:var(--mu)}
.k small{font-size:12.5px;font-weight:500;color:var(--mu)}
.k b{font-size:19px;font-weight:600;font-family:var(--sans)}
.ochip small,.peh,.td-label{font-size:12.5px;font-weight:600;color:var(--mu)}
.rrg-gh b{font-size:13px}
.slx-cmp tr.grp td{font-size:13px;background:var(--bg)}

/* ── stock report ───────────────────────────────────────────────────────── */
.hero2{background:var(--card);border:1px solid var(--bd);padding:28px}
.hero2 .head h2{font-size:32px;line-height:1.15}
.head small{font-size:14px}
.px b,.hero2 .px b{font-family:var(--serif);font-weight:600;font-size:34px;letter-spacing:-.01em}
.src{font-family:var(--sans);text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:600;border:0;background:none;color:var(--g);padding:0}
.pill2,.pill,.pl,.slab,.st,.slx-pill{font-family:var(--sans);border-radius:4px;font-size:13px;font-weight:600;letter-spacing:0;text-transform:none}
.pill2{padding:4px 10px;border:1px solid var(--bd);background:var(--bg);color:var(--tx)}
.pill2.g{background:var(--gb);border-color:transparent;color:var(--g)}
.pill2.a{background:var(--ab);border-color:transparent;color:var(--a)}
.pill2.r{background:var(--rb);border-color:transparent;color:var(--r)}
.pl.g,.pl.a,.pl.r{padding:4px 10px}
.rng{height:4px;background:var(--bd);border-radius:2px}.rng i{width:4px;height:12px;top:-4px;border-radius:1px;background:var(--tx)}
/* side navigation */
nav.sn{border-right:1px solid var(--bd)}
nav.sn a{font-size:14px;font-weight:500;letter-spacing:0;color:var(--mu);padding:6px 12px}
nav.sn a.on{color:var(--tx);font-weight:600;border-left-color:var(--ac)}
@media(max-width:900px){nav.sn{border-right:0}}
/* score */
.score{background:var(--card);border:1px solid var(--bd);padding:26px 28px}
.stitle{font-family:var(--serif);font-size:22px;font-weight:600}
.slab{font-size:12.5px;padding:2px 9px;border:0}
.sbig{font-family:var(--serif);font-weight:600;font-size:58px}
.of{font-family:var(--sans)}
.rtrk,.rfil{stroke-width:8}
.srow{font-size:14px}.srow b{font-family:var(--sans);font-weight:600}.srow .pts{font-family:var(--sans)}
.sform{font-family:var(--sans);background:var(--bg)}
.rc{font-family:var(--serif);font-weight:600}
.rl{font-size:12px;font-weight:600}.rl .rv{font-family:var(--sans);font-weight:700}
.rpoly{fill:var(--ac);fill-opacity:.12;stroke:var(--ac);stroke-width:1.5}
.rd{fill:var(--card);stroke:var(--ac)}
/* checklist cards */
.grid{gap:12px}
.mc{background:var(--card);border:1px solid var(--bd);border-left:1px solid var(--bd);padding:14px 16px}
.mc.g,.mc.a,.mc.r{background:var(--card);border-color:var(--bd);border-left-color:var(--bd)}
.mh em{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;border:0;border-radius:3px;padding:1px 7px}
.mc.g em{background:var(--gb);color:var(--g)}.mc.a em{background:var(--ab);color:var(--a)}.mc.r em{background:var(--rb);color:var(--r)}
.mv{font-family:var(--sans);font-size:24px;font-weight:600;margin:4px 0 2px}
.mr,.mt{font-size:13px}
#cl .mc:hover{border-color:var(--bd2)}
button.scn,button.scn.g,button.scn.a,button.scn.r{background:var(--card);border:1px solid var(--bd);border-top:3px solid var(--bd2)}
button.scn.g{border-top-color:var(--g)}button.scn.a{border-top-color:var(--a)}button.scn.r{border-top-color:var(--r)}
button.scn b{font-family:var(--sans);font-weight:600}button.scn em{font-family:var(--sans)}
.box.bull,.box.bear{border-left-width:3px}
.note2{background:var(--ab);border:1px solid transparent;border-left:3px solid var(--a)}
.ptbig{font-family:var(--serif);font-weight:600}.ptup{font-family:var(--sans)}
.ochip b{font-family:var(--sans);font-weight:600}
.tr{height:6px;border-radius:3px}.tr i{border-radius:3px}
.slx-big{font-family:var(--serif);font-weight:600}

/* ── tables ─────────────────────────────────────────────────────────────── */
.tb{font-size:14px}
.tb th{font-size:12.5px;font-weight:600;color:var(--mu);border-bottom:1px solid var(--bd2);padding:8px 10px}
.tb td{padding:8px 10px;border-bottom:1px solid var(--bd)}
.tb tr:not(.tot):hover td{background:var(--bg)}
.tb.chain td,.tb.chain th{font-family:var(--sans);font-size:13px}
.tb.chain tr.spot td{text-transform:none;letter-spacing:0;font-size:12px}
.slx-lb li{font-size:14.5px}.slx-lb li a b{font-weight:700}
.td th{font-size:12.5px;font-weight:600}
.td-sc,.td-tag{border-radius:3px;font-family:var(--sans)}
.td-rrow:hover,.td tbody tr:hover,.rrg-row:hover{background:var(--bg)}
.td-dot,.rrg-dot{animation:none}

/* ── page headers on the tool pages ─────────────────────────────────────── */
.az{margin:48px auto 40px}
.az h1,.hero h1{font-size:clamp(30px,4vw,44px);line-height:1.12;letter-spacing:-.015em;margin:0 0 12px;font-weight:600}
.az>p,.az .az-p{font-size:17px;color:var(--mu);max-width:680px}
.az[style*="text-align:left"]{margin:40px 0 28px;padding-bottom:24px;border-bottom:1px solid var(--bd)}
.az[style*="text-align:left"] h1{font-size:clamp(28px,3.4vw,38px)}
.az[style*="text-align:left"]>p{margin:0}
.afm input.big{font-family:var(--sans);font-size:18px;padding:14px 18px;border-radius:var(--rad)}
.afm .btn{padding:14px 24px}
.gbn{background:var(--card);border:1px solid var(--bd)}

/* ── home ───────────────────────────────────────────────────────────────── */
.hero{padding:0}
.hh{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:56px;padding:64px 0 56px;align-items:start;border-bottom:1px solid var(--bd)}
.hero h1{font-size:clamp(34px,4.6vw,52px);line-height:1.08;max-width:17ch;margin:0 0 20px}
.hero h1 em{font-style:italic;color:inherit}
.hero .lede{font-size:18.5px;line-height:1.55;color:var(--mu);max-width:560px;margin:0 0 28px}
.cta{gap:12px}
.hfacts{display:flex;flex-wrap:wrap;gap:12px 32px;margin:36px 0 0;padding:20px 0 0;border-top:1px solid var(--bd);list-style:none}
.hfacts li{font-size:14px;color:var(--mu)}.hfacts b{display:block;font-family:var(--serif);font-size:24px;font-weight:600;color:var(--tx)}
.hc{padding:22px 24px;background:var(--card)}
.hc h3{font-family:var(--serif);font-size:20px;font-weight:600}
.sec2{margin:64px 0 0}
.sec2 h2{font-size:28px;margin:0 0 8px}
.sec2>p{font-size:16px;max-width:680px}
.feat{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:24px;border-top:1px solid var(--tx)}
.feat div{background:none;border:0;border-radius:0!important;padding:18px 24px 0 0}
.feat div+div{padding-left:24px;border-left:1px solid var(--bd)}
.feat b{font-family:var(--serif);font-size:18px;font-weight:600;text-transform:none;letter-spacing:0;margin-bottom:8px;color:var(--tx)}
.feat span{font-size:14.5px;line-height:1.55}
.band{grid-template-columns:minmax(0,1fr) 340px;gap:48px;margin:64px 0 0;padding:36px 40px;background:var(--card);border:1px solid var(--bd);border-left:1px solid var(--bd)}
.band h2{font-size:28px}
.band p{font-size:16px;line-height:1.6}
.band ol{margin:0 0 22px;padding-left:20px;color:var(--mu);font-size:15px}.band ol li{margin:6px 0}.band ol b{color:var(--tx);font-weight:600}
#slxlb{margin-top:56px}
@media(max-width:1000px){.feat{grid-template-columns:repeat(2,minmax(0,1fr))}.feat div:nth-child(3){padding-left:0;border-left:0}.feat div:nth-child(n+3){margin-top:12px}}
@media(max-width:900px){.hh{grid-template-columns:1fr;gap:32px;padding:40px 0}.band{grid-template-columns:1fr;padding:28px 24px}.band #lr{max-width:320px}}
@media(max-width:560px){.feat{grid-template-columns:1fr}.feat div,.feat div+div{padding:16px 0 0;border-left:0}.hero .lede{font-size:17px}}

/* ── footer ─────────────────────────────────────────────────────────────── */
.foot{border-top:1px solid var(--bd);margin-top:24px;padding-top:28px;padding-bottom:40px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 40px;font-size:13.5px;color:var(--mu)}
.foot b{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--tx)}
.foot p{margin:6px 0 0;max-width:620px}
.foot nav{display:flex;flex-wrap:wrap;gap:6px 18px;align-content:start}
.foot nav a{color:var(--mu);text-decoration:none}.foot nav a:hover{color:var(--tx)}
@media(max-width:700px){.foot{grid-template-columns:1fr}}

/* ── motion: keep it to what helps reading ──────────────────────────────── */
.mc,.k,.gcard,.chip,.btn,button.scn{transition:border-color .12s,background-color .12s,color .12s}
.mc:hover,.k:hover,.gcard:hover,button.scn:hover,.wc:hover,.btn:hover{transform:none;box-shadow:none}

/* the header search is useful on the home page too */
body[data-r=home] #sf{display:flex}body[data-r=home] #acct{margin-left:0}

/* loading and empty states */
.msg{font-size:15px}
.msg b{font-family:var(--sans);font-size:16px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--tx)}
.steps li{font-family:var(--sans);font-size:14px}
/* the radar's centre score sits over the shape: give its text a halo so it stays readable */
.rc,.rs{paint-order:stroke;stroke:var(--card);stroke-width:5px;stroke-linejoin:round}
.rs{stroke-width:3px;fill:var(--mu)}

/* phones: theme button at the right of the logo row, facts in a 2 x 2 grid */
@media(max-width:640px){
  .top #th{order:2;margin-left:auto}
  .hfacts{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
}

/* P/E bars: peers in light grey with dark labels, the stock itself in the accent with white */
.pb.cp{background:var(--bd2);opacity:1}
.pt2 .pv[style*="right:8px"]{color:var(--tx)!important;background:var(--card);padding:1px 5px;border-radius:3px;box-shadow:0 0 0 1px var(--bd)}
/* the price-target marker shares the "av" class with the avatar style; undo the avatar look */
.mk.av{display:block;width:auto;height:auto;border-radius:0;background:none;font-size:inherit}
/* EMA50 gold is too faint on white */
:root:not([data-theme="dark"]) .td{--ema50:#a87d12}

/* signed-in account in the header: initials button with a small menu */
#acct{position:relative}
.acm summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--acb);color:var(--ac);font-size:13px;font-weight:700;letter-spacing:.02em;cursor:pointer;border:1px solid var(--bd);user-select:none}
.acm summary::-webkit-details-marker{display:none}
.acm summary:hover,.acm[open] summary{border-color:var(--ac)}
.acm summary:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.acp{position:absolute;right:0;top:calc(100% + 8px);z-index:60;min-width:240px;max-width:300px;background:var(--card);border:1px solid var(--bd2);border-radius:var(--rad);box-shadow:0 10px 28px rgba(20,24,30,.14);padding:14px 16px;display:grid;gap:2px}
.acp b{font-size:14.5px;color:var(--tx)}
.acp span{font-size:13.5px;color:var(--mu);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px}
.acp button{width:100%;padding:8px 12px}
@media(max-width:640px){body header.top #acct{order:1;margin-left:auto}body header.top #th{margin-left:0}}

/* ── plans: account menu, upgrade window, paywall, pricing ── */
.acp #acplan:not(:empty){border-top:1px solid var(--bd);margin:0 -16px 12px;padding:12px 16px 0}
.apl{display:grid;gap:4px}
.acp .apl span{margin:0;white-space:normal}
.acp .apl .apl-t{font-size:13px;font-weight:600;color:var(--tx);text-transform:uppercase;letter-spacing:.06em}
.acp .apl .apl-w{color:var(--r)}
.acp .apl .swm-e:empty{display:none}
.apl-m{display:block;height:4px;border-radius:2px;background:var(--bd);margin:4px 0 8px;overflow:hidden}
.apl-m i{display:block;height:100%;background:var(--ac)}
.apl .btn{padding:8px 12px;font-size:13.5px}
.pro-t{display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ac);border:1px solid currentColor;border-radius:3px;padding:0 4px;margin-left:3px;vertical-align:1px;line-height:15px}
.swm{border:1px solid var(--bd2);border-radius:var(--rad);padding:0;background:var(--card);color:var(--tx);width:min(460px,calc(100vw - 32px));box-shadow:0 24px 60px rgba(20,24,30,.25)}
.swm::backdrop{background:rgba(15,18,24,.45)}
.swm-b{position:relative;padding:28px 28px 22px}
.swm-x{position:absolute;right:10px;top:10px;background:transparent;border:0;color:var(--mu);font-size:22px;line-height:1;padding:6px 10px}
.swm-x:hover{background:transparent;color:var(--tx)}
.swm-k{font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ac);margin:0 0 8px}
.swm h2,.pw-card h2{font-family:var(--serif);font-size:24px;line-height:1.25;margin:0 0 10px;padding-right:20px}
.swm-p{margin:0 0 14px;color:var(--mu)}.swm-p b{color:var(--tx);font-size:18px}
.swm-l{margin:0 0 16px;padding:0;list-style:none;display:grid;gap:7px}
.swm-l li,.prc-c li{position:relative;padding-left:22px;font-size:14.5px}
.swm-l li::before,.prc-c li::before{content:"";position:absolute;left:3px;top:6px;width:9px;height:5px;border-left:2px solid var(--g);border-bottom:2px solid var(--g);transform:rotate(-45deg)}
.swm-n{font-size:13.5px;color:var(--mu);margin:0 0 14px}
.swm-e{color:var(--r);font-size:14px;margin:0 0 10px}.swm-e:empty{display:none}
.swm-a{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.swm-a .gh{padding:10px 16px;text-decoration:none;display:inline-flex;align-items:center}
.swm-f{font-size:12.5px;color:var(--fa);margin:16px 0 0}
.pw-card{max-width:620px;margin:32px 0;background:var(--card);border:1px solid var(--bd);border-radius:var(--rad);padding:28px}
.pw-card p{color:var(--mu);margin:0 0 14px;line-height:1.55}.pw-card p b{color:var(--tx)}
.pw-card .pw-u a{color:var(--ac);font-weight:600}
.prc-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:820px;margin-top:20px}
.prc-c{background:var(--card);border:1px solid var(--bd);border-radius:var(--rad);padding:24px;display:flex;flex-direction:column}
.prc-c.cur{border-color:var(--ac);box-shadow:inset 0 0 0 1px var(--ac)}
.prc-c h3{font-family:var(--serif);font-size:21px;margin:0 0 6px}
.prc-p{margin:0 0 16px;color:var(--mu)}.prc-p b{font-size:28px;color:var(--tx);font-family:var(--serif);font-weight:600}
.prc-c ul{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px;flex:1}
.prc-n{font-size:13.5px;color:var(--mu);margin:0;font-weight:600}
.prc-c .btn{align-self:flex-start}
.swt{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:100;max-width:calc(100vw - 32px);background:var(--tx);color:var(--card);padding:12px 18px;border-radius:var(--rad);font-size:14.5px;box-shadow:0 10px 30px rgba(0,0,0,.2);transition:opacity .5s}
.swt.ok{border-left:4px solid var(--g)}.swt.out{opacity:0}
@media (max-width:640px){.prc-g{grid-template-columns:1fr}.swm-b{padding:24px 20px 18px}.pw-card{padding:22px 18px}}

/* the payment window: room for Stripe's form */
.swm.pay{width:min(560px,calc(100vw - 24px));max-height:calc(100vh - 24px)}
.swm.pay .swm-b{padding:24px 20px 18px}
.swm.pay h2{margin-bottom:14px}
#swm-pay{min-height:120px;margin:0 -4px}
@media (max-width:640px){.swm.pay .swm-b{padding:20px 12px 14px}}

/* renewal terms next to the upgrade buttons */
.swm-t{font-size:13px;color:var(--mu);line-height:1.5;margin:0 0 14px}.swm-t a{color:var(--mu)}
.prc-c .swm-t{margin:10px 0 0}
