/* stylesheet */
:root {
  --clr-bg: hsl(139 22% 9%);
  --clr-surface: hsl(139 20% 13%);
  --clr-surface-2: hsl(139 19% 17%);
  --clr-border: hsl(139 16% 21%);
  --clr-teal: hsl(182 56% 55%);
  --clr-teal-dim: hsl(182 56% 43%);
  --clr-gold: hsl(332 66% 58%);
  --clr-gold-dim: hsl(332 66% 44%);
  --clr-text: hsl(40 22% 93%);
  --clr-text-dim: hsl(40 10% 66%);
  --ff-body: 'Segoe UI', system-ui, -apple-system, sans-serif;
  --ff-ui: system-ui, -apple-system, sans-serif;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--clr-bg); color: var(--clr-text); font-family: var(--ff-body); line-height: 1.75; font-size: 17px; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--clr-teal); }
.et10 { max-width: 780px; margin: 0 auto; padding: 0 20px; }
.hq88 { position: absolute; left: -9999px; }
.hq88:focus { left: 10px; top: 10px; background: var(--clr-teal); color: #1c1200; padding: 8px 14px; z-index: 99; }

.rj70p { border-bottom: 3px double var(--clr-border); background: var(--clr-surface); font-family: var(--ff-ui); }
.im68 { max-width: 980px; margin: 0 auto; padding: 0 20px; display: flex; align-items: center; gap: 24px; height: 60px; }
.cv35 { display: flex; align-items: center; gap: 8px; text-decoration: none; font-weight: 800; font-size: 1.12rem; color: var(--clr-text); }
.hi21o { color: var(--clr-teal); }
.sd55 { color: var(--clr-teal); }
.eb94 { margin-left: auto; }
.eb94 ul { display: flex; gap: 2px; list-style: none; }
.eb94 a { padding: 8px 12px; text-decoration: none; color: var(--clr-text-dim); font-weight: 600; font-size: .92rem; border-bottom: 2px solid transparent; }
.eb94 a:hover { color: var(--clr-teal); border-bottom-color: var(--clr-teal); }
.oy37 { display: none; margin-left: auto; background: none; border: 1px solid var(--clr-border); border-radius: 6px; width: 42px; height: 38px; cursor: pointer; position: relative; }
.mn39, .mn39::before, .mn39::after { content: ''; position: absolute; left: 10px; right: 10px; height: 2px; background: var(--clr-text); }
.mn39 { top: 18px; } .mn39::before { top: -6px; } .mn39::after { top: 6px; }
.wd16 { background: var(--clr-surface); border-bottom: 1px solid var(--clr-border); font-family: var(--ff-ui); }
.wd16 ul { list-style: none; padding: 6px 0; }
.wd16 a { display: block; padding: 11px 22px; color: var(--clr-text); text-decoration: none; }

.cm71w { padding: 54px 0 8px; }
.zn46 { font-family: var(--ff-ui); color: var(--clr-teal); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; margin-bottom: 14px; }
.cm71w h1 { font-size: clamp(1.8rem, 4.5vw, 2.7rem); line-height: 1.18; margin-bottom: 16px; font-weight: 700; }
.sd49p { font-size: 1.12rem; color: var(--clr-text-dim); font-style: italic; margin-bottom: 12px; }
.en16j { font-family: var(--ff-ui); font-size: .85rem; color: var(--clr-gold); margin-bottom: 22px; }
.uc15d { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; font-family: var(--ff-ui); margin-bottom: 30px; }
.dc78 { background: var(--clr-surface); border: 1px solid var(--clr-border); padding: 12px; text-align: center; }
.dc78 a { text-decoration: none; }
.tv62 { display: block; font-size: 1.35rem; font-weight: 900; color: var(--clr-teal); }
.ql88 { font-size: .8rem; color: var(--clr-text-dim); }

.zf49c { border: 1px solid var(--clr-teal); padding: 20px 22px; margin-bottom: 34px; position: relative; }
.mp37 { position: absolute; top: -13px; left: 16px; background: var(--clr-bg); padding: 0 10px; font-family: var(--ff-ui); font-size: .85rem; letter-spacing: .12em; color: var(--clr-teal); }
.yr18 { margin-top: 14px; }

.ph96h { background: var(--clr-surface); border: 1px solid var(--clr-border); padding: 22px 26px; margin-bottom: 40px; font-family: var(--ff-ui); }
.ph96h h2 { font-size: 1.05rem; margin-bottom: 12px; text-transform: uppercase; letter-spacing: .06em; }
.ph96h ol { columns: 2; gap: 28px; margin-left: 20px; }
.ph96h li { margin-bottom: 7px; break-inside: avoid; }
.ph96h a { text-decoration: none; color: var(--clr-text-dim); }
.ph96h a:hover { color: var(--clr-teal); }

.ra87 { padding: 8px 0 30px; border-bottom: 1px solid var(--clr-border); margin-bottom: 30px; }
.ra87 h2 { font-size: 1.5rem; margin-bottom: 16px; display: flex; align-items: baseline; gap: 12px; }
.if78 { font-family: var(--ff-ui); flex: 0 0 auto; background: var(--clr-teal); color: #1c1200; font-size: .95rem; font-weight: 800; width: 30px; height: 30px; display: inline-grid; place-items: center; border-radius: 4px; }
.ra87 h3 { margin: 22px 0 10px; font-size: 1.18rem; }
.ra87 h4 { margin: 18px 0 8px; }
.ra87 p { margin-bottom: 14px; }
.ra87 ul, .ra87 ol { margin: 0 0 16px 24px; }
.ra87 li { margin-bottom: 8px; }
.cg18 { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 18px 0; }
.au13y, .ia18 { list-style: none; margin-left: 0 !important; }
.au13y li, .ia18 li { padding-left: 24px; position: relative; }
.au13y li::before { content: '✓'; position: absolute; left: 0; color: var(--clr-teal); font-weight: 800; }
.ia18 li::before { content: '✕'; position: absolute; left: 0; color: var(--clr-gold); font-weight: 800; }
.pl52g { border-left: 3px solid var(--clr-teal); background: var(--clr-surface); padding: 12px 16px; margin: 14px 0; font-family: var(--ff-ui); font-size: .95rem; }
.ep40w { border-left-color: var(--clr-gold); }
.qd18 { border: 1px dashed var(--clr-border); padding: 16px; margin: 16px 0; }
.cw85a { margin: 18px 0; border: 1px solid var(--clr-border); }
.qp58f { margin-left: 24px; }
.qp58f li { margin-bottom: 12px; }

.ty27 { overflow-x: auto; margin: 14px 0; }
.da56 { width: 100%; border-collapse: collapse; min-width: 520px; font-family: var(--ff-ui); font-size: .95rem; }
.da56 th, .da56 td { text-align: left; padding: 10px 14px; border: 1px solid var(--clr-border); }
.da56 thead th { background: var(--clr-surface-2); font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; }
.da56 th[scope="row"] { background: var(--clr-surface); color: var(--clr-text-dim); font-weight: 600; width: 38%; }
.cq92 { font-size: .84rem; color: var(--clr-text-dim); font-family: var(--ff-ui); }
.hh57 { display: inline-block; padding: 2px 9px; border-radius: 3px; font-size: .76rem; font-weight: 700; }
.jv46 { background: color-mix(in srgb, var(--clr-teal) 25%, transparent); color: var(--clr-teal); }
.ai51 { background: color-mix(in srgb, var(--clr-gold) 25%, transparent); color: var(--clr-gold); }

.zz86m { display: flex; align-items: center; gap: 16px; background: var(--clr-surface); border: 1px solid var(--clr-teal); padding: 16px 20px; margin: 20px 0; font-family: var(--ff-ui); }
.gk89e { font-size: 2.2rem; font-weight: 900; color: var(--clr-teal); }
.gk89e small { font-size: 1rem; color: var(--clr-text-dim); }
.pq24a { font-weight: 700; }
.kt99 { display: inline-block; padding: 12px 24px; font-family: var(--ff-ui); font-weight: 700; text-decoration: none; border: 2px solid var(--clr-teal); }
.pb96 { background: var(--clr-teal); color: #1c1200; }
.pb96:hover { background: transparent; color: var(--clr-teal); }
.pq72c { color: var(--clr-text); border-color: var(--clr-border); }

.pi40 { display: grid; gap: 0; }
.kd26 { border-bottom: 1px solid var(--clr-border); }
.cu34f { width: 100%; text-align: left; background: none; border: 0; color: var(--clr-text); font-family: var(--ff-body); font-size: 1.05rem; font-weight: 700; padding: 16px 44px 16px 0; cursor: pointer; position: relative; }
.vv93l { position: absolute; right: 8px; top: 50%; width: 12px; height: 12px; transform: translateY(-50%); }
.vv93l::before, .vv93l::after { content: ''; position: absolute; background: var(--clr-teal); transition: .2s; }
.vv93l::before { left: 0; right: 0; top: 5px; height: 2px; }
.vv93l::after { top: 0; bottom: 0; left: 5px; width: 2px; }
.cu34f[aria-expanded="true"] .vv93l::after { transform: scaleY(0); }
.mj42h { padding: 0 0 16px; color: var(--clr-text-dim); }

.zw20k { border-top: 3px double var(--clr-border); background: var(--clr-surface); margin-top: 30px; padding: 34px 0 26px; font-family: var(--ff-ui); font-size: .9rem; }
.zw20k .xn27 { max-width: 780px; margin: 0 auto; padding: 0 20px; }
.bs40e { margin-bottom: 12px; }
.na29a { display: flex; gap: 12px; align-items: center; margin-bottom: 14px; flex-wrap: wrap; }
.bv89 { border: 2px solid var(--clr-gold); color: var(--clr-gold); border-radius: 4px; padding: 1px 8px; font-weight: 800; }
.rs13h { color: var(--clr-text-dim); }
.pt87v ul { display: flex; gap: 16px; flex-wrap: wrap; list-style: none; margin-bottom: 14px; }
.pt87v a { color: var(--clr-text-dim); text-decoration: none; }
.nf37, .cy69g { color: var(--clr-text-dim); font-size: .8rem; margin-bottom: 10px; }

.ww18g { padding: 40px 0; }
.go50e { margin: 0 auto; padding: 0 20px; max-width: 780px !important; }
.ss53 ol { display: flex; gap: 8px; list-style: none; font-size: .84rem; color: var(--clr-text-dim); margin-bottom: 16px; font-family: var(--ff-ui); }
.ss53 li + li::before { content: '→'; margin-right: 8px; }
.yr46h { font-size: clamp(1.6rem, 3.4vw, 2.2rem); margin-bottom: 10px; }
.iu42 { color: var(--clr-text-dim); font-size: .88rem; margin-bottom: 20px; font-family: var(--ff-ui); }
.iv81z { border: 1px solid var(--clr-border); background: var(--clr-surface); padding: 22px 24px; margin-bottom: 18px; }
.iv81z h2 { margin-bottom: 10px; font-size: 1.25rem; }
.iv81z p { margin-bottom: 12px; }
.iv81z ul, .iv81z ol { margin: 0 0 12px 22px; }
.xf91e label { display: block; font-weight: 700; font-family: var(--ff-ui); margin-bottom: 6px; }
.xf91e .sv89 { margin-bottom: 15px; }
.xf91e input, .xf91e select, .xf91e textarea { width: 100%; background: var(--clr-surface-2); color: var(--clr-text); border: 1px solid var(--clr-border); padding: 10px 12px; font: inherit; }
.xf91e textarea { min-height: 140px; }
.gt31 { font-size: .82rem; color: var(--clr-text-dim); font-family: var(--ff-ui); }

@media (max-width: 760px) {
  .eb94 { display: none; }
  .oy37 { display: block; }
  .uc15d { grid-template-columns: 1fr 1fr; }
  .cg18 { grid-template-columns: 1fr; }
  .ph96h ol { columns: 1; }
}

.hc86g { padding: 8px 0 30px; border-bottom: 1px solid var(--clr-border); margin-bottom: 30px; }
.ly49q { max-width: 780px; margin: 0 auto; padding: 0 20px; }
.ly49q h2 { font-size: 1.4rem; margin-bottom: 14px; color: var(--clr-teal); }
.ly49q p { margin-bottom: 14px; }
.ly49q ul { margin: 0 0 16px 24px; }
.ly49q li { margin-bottom: 8px; }

/* inner-page layout variants */
.ug12 { max-width: 900px; }
.lt90k { margin-bottom: 26px; }
.lt90k h2 { margin-bottom: 10px; }
.si33 { max-width: 980px; display: grid; grid-template-columns: 1fr 220px; gap: 30px; align-items: start; }
.si33 .ss53, .si33 .yr46h { grid-column: 1 / -1; }
.yr77 { grid-column: 2; grid-row: 3 / span 99; border-left: 2px solid var(--clr-border); padding-left: 16px; }
.kp57 { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--clr-text-dim); }
.gz41o { font-weight: 700; }
.se44 { max-width: 700px; }
.se44 .iv81z { border-left: 3px solid var(--clr-teal); }
@media (max-width: 820px) {
  .si33 { grid-template-columns: 1fr; }
  .yr77 { grid-column: 1; grid-row: auto; border-left: 0; padding-left: 0; }
}

.tg27j { list-style: none; margin: 0 !important; padding: 0; display: grid; gap: 8px; }
.wj83a { padding-left: 0; font-size: .95rem; }
.wj83a time { font-weight: 700; color: var(--clr-teal); margin-right: 6px; }

/* conversion hero */
.si54 { padding: 30px 0 6px; }
.po47 { display: grid; grid-template-columns: 1.05fr 1fr; gap: 30px; align-items: center; }
.si54.cv-solo .po47 { display: block; }
.pv45 { font-size: clamp(1.25rem, 2.5vw, 1.7rem); line-height: 1.2; margin-bottom: 14px; }
.qm28 { list-style: none; margin: 0 0 18px !important; padding: 0; display: grid; gap: 9px; }
.qm28 li { position: relative; padding-left: 30px; font-size: 1.02rem; font-weight: 600; }
.qm28 li::before { content: '✓'; position: absolute; left: 0; top: 1px; width: 21px; height: 21px; border-radius: 50%; background: var(--clr-teal); color: var(--clr-bg); font-size: .78rem; font-weight: 900; display: grid; place-items: center; }
.qx41 { font-size: 1.04rem; padding: 13px 28px; }
.du86i { font-size: .82rem; color: var(--clr-text-dim); margin-top: 10px; }
.pt99g { border-radius: 14px; overflow: hidden; border: 1px solid var(--clr-border); margin: 0; }
.pt99g img { width: 100%; height: auto; display: block; }

/* author */
.ar86i { display: flex; align-items: center; gap: 10px; margin: 14px 0 18px; font-size: .92rem; }
.za26w { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; flex: 0 0 34px; }
.ik87 { color: var(--clr-text-dim); }
.tm72 { padding: 36px 0; border-top: 1px solid var(--clr-border); }
.fj58w { display: flex; gap: 20px; align-items: flex-start; }
.ha11e { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; flex: 0 0 96px; border: 2px solid var(--clr-border); }
.ol89 h2 { font-size: 1.2rem; margin-bottom: 8px; }
.ut34m { font-size: .95rem; color: var(--clr-text-dim); margin-bottom: 10px; }
.ol89 p { margin-bottom: 10px; }

@media (max-width: 860px) {
  .po47 { grid-template-columns: 1fr; }
  .fj58w { flex-direction: column; }
}

/* открытое верхнее меню на узких экранах — запасной путь, если панель #mobile-menu недоступна */
@media (max-width: 1000px) {
  .eb94.ns67z { display: block; position: absolute; top: 100%; left: 0; right: 0;
    background: var(--clr-surface); border-bottom: 1px solid var(--clr-border); z-index: 60; }
  .eb94.ns67z ul { flex-direction: column; gap: 0; }
  .eb94.ns67z a { display: block; padding: 12px 20px; }
}

h1, h2, h3 { font-family: 'Segoe UI', system-ui, sans-serif; }

/* extras.wt62 — appended to the theme stylesheet at build time and renamed with
   the rest of the classes. Only theme variables are used, so the block inherits
   whatever palette and mode the site got. */

/* ── ranked shortlist (rating mode) ─────────────────────────────────────── */
.pi13l { padding: 3rem 0; border-top: 1px solid var(--clr-border); }
.vx58 { max-width: 1100px; margin: 0 auto; padding: 0 1.25rem; }
.pi13l h2 { margin: 0 0 .75rem; }
.nn98r { margin: 1rem 0 1.75rem; padding-left: 1.1rem; }
.nn98r li { margin: .35rem 0; }
.ei32 { display: grid; gap: 1rem; }
.ks48i {
  background: var(--clr-surface);
  border: 1px solid var(--clr-border);
  border-radius: 12px;
  padding: 1.1rem 1.25rem;
}
.hs14l {
  border-color: var(--clr-teal);
  box-shadow: 0 0 0 1px var(--clr-teal) inset;
}
.tn14 { display: flex; align-items: center; gap: .75rem; margin-bottom: .5rem; }
.cc72 {
  flex: 0 0 auto;
  width: 2rem; height: 2rem;
  display: grid; place-items: center;
  border-radius: 50%;
  background: var(--clr-surface-2);
  font-weight: 700;
}
.hs14l .cc72 { background: var(--clr-teal); color: var(--clr-bg); }
.sy65 { margin: 0; font-size: 1.15rem; flex: 1 1 auto; }
.mc37 { font-weight: 700; color: var(--clr-gold); font-size: 1.1rem; }
.ks48i p { margin: .5rem 0; }
.hv12l { font-size: .95rem; opacity: .8; }
.ab74 { margin-top: .9rem; }
.la28d { margin-top: 1.25rem; font-size: .9rem; opacity: .75; }

/* ── affiliate disclosure ───────────────────────────────────────────────── */
.fl70 {
  margin: 0 0 .75rem;
  font-size: .85rem;
  opacity: .75;
}

@media (max-width: 640px) {
  .tn14 { flex-wrap: wrap; }
  .sy65 { flex: 1 1 60%; }
}

/* ── 404 page ───────────────────────────────────────────────────────────── */
.gn82x {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: var(--clr-bg);
  color: var(--clr-text);
  font-family: var(--ff-body);
  margin: 0;
}
.su95 {
  max-width: 560px;
  padding: 2.5rem 1.5rem;
  text-align: center;
}
.zr82u {
  font-size: 3.5rem;
  font-weight: 700;
  margin: 0 0 .25rem;
  color: var(--clr-teal);
  letter-spacing: .05em;
}
.wj49m { margin: 0 0 1rem; font-size: 1.5rem; }
.su95 p { margin: .6rem 0; opacity: .9; }
.oh22 { margin-top: 1.75rem; }

/* ── fallback figure, used when a theme renders no picture of its own ────── */
.we37i { margin: 1.5rem 0; }
.we37i img { width: 100%; height: auto; border-radius: 10px; display: block; }
.ig61 { margin: 1.5rem 0; }
.ig61 img { width: 100%; height: auto; border-radius: 8px; display: block; }
