/* Инструменты mediaobs.ru: стили поверх дизайн-системы сайта (tokens.css, components.css, site.css). Префикс sc- — проверка сайта. */
.sc-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sc-hero { align-items: end; }
.sc-checkform { margin-top: var(--space-8); display: flex; flex-wrap: wrap; gap: var(--space-2); padding: 6px; background: var(--surface); border-radius: var(--radius-pill); max-width: 620px; }
.sc-checkform:focus-within { outline: 2px solid var(--rec); outline-offset: 3px; }
.sc-checkform input { flex: 1 1 200px; min-width: 0; border: 0; background: transparent; padding: 12px 18px; font: 500 17px/24px var(--font-text); color: var(--ink); }
.sc-checkform input:focus { outline: none; }
.sc-checkform .mo-btn[disabled] { opacity: .6; cursor: progress; }
.sc-fine { margin: var(--space-3) 0 0; font: 400 13px/19px var(--font-text); opacity: .7; max-width: 60ch; }
.sc-error { margin: var(--space-3) 0 0; padding: var(--space-3) var(--space-4); border-radius: var(--radius-m); background: rgba(226,54,44,.18); color: var(--on-night); font: 500 15px/22px var(--font-text); max-width: 620px; }
.sc-what { background: rgba(247,245,242,.06); border: 1px solid rgba(247,245,242,.14); border-radius: var(--radius-l); padding: var(--space-6); }
.sc-what .kicker { color: var(--on-night); opacity: .7; }
.sc-what ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-4); }
.sc-what li { display: flex; gap: var(--space-3); align-items: baseline; font: 600 16px/22px var(--font-text); }
.sc-what small { display: block; font: 400 13px/19px var(--font-text); opacity: .7; margin-top: 2px; }
.sc-what__k { font: 500 12px/16px var(--font-mono); color: #ff8a80; min-width: 24px; }

.sc-head { display: flex; justify-content: space-between; align-items: end; gap: var(--space-4) var(--space-8); flex-wrap: wrap; margin-bottom: var(--space-8); }
.sc-head .lead { margin: 0; }
.sc-result { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); overflow: hidden; }
.sc-result__top { display: flex; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; align-items: center; padding: var(--space-5, 20px) var(--space-6); border-bottom: 1px solid var(--line); }
.sc-site { font: 500 15px/20px var(--font-mono); overflow-wrap: anywhere; }
.sc-stamp { font: 400 13px/18px var(--font-text); color: var(--ink-subtle); }
.sc-note { margin: 0; padding: var(--space-3) var(--space-6); background: #f8ecd6; color: #6b4000; font: 500 14px/20px var(--font-text); border-bottom: 1px solid var(--line); }
.sc-scores { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--line); }
.sc-score { padding: var(--space-6); display: grid; gap: var(--space-2); border-right: 1px solid var(--line); align-content: start; }
.sc-score:last-child { border-right: 0; }
.sc-score__name { font: 500 12px/16px var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-subtle); }
.sc-score__num { font: 700 40px/1 var(--font-display); font-variant-numeric: tabular-nums; }
.sc-score__num small { font: 500 16px/1 var(--font-text); color: var(--ink-subtle); }
.sc-bar { height: 6px; border-radius: 3px; background: var(--surface-sunken); overflow: hidden; }
.sc-bar i { display: block; height: 100%; border-radius: 3px; }
.sc-v { font: 600 13px/18px var(--font-text); }
.sc-v--bad { color: var(--rec-text); } .sc-v--mid { color: #9a5b00; } .sc-v--good { color: var(--positive); } .sc-v--na { color: var(--ink-subtle); }
.sc-bg--bad { background: var(--rec); } .sc-bg--mid { background: #d9932b; } .sc-bg--good { background: var(--positive); }
.sc-problems { padding: var(--space-6); display: grid; gap: var(--space-3); }
.sc-problems > div { display: grid; gap: var(--space-3); }
.sc-prob { display: grid; grid-template-columns: auto 1fr; gap: 4px var(--space-4); padding: 18px 20px; border: 1px solid var(--line); border-radius: var(--radius-m); }
.sc-prob__n { font: 700 22px/1.2 var(--font-display); color: var(--line-strong); grid-row: span 3; }
.sc-prob__meta { display: flex; gap: var(--space-2); flex-wrap: wrap; align-items: center; }
.sc-sev { font: 500 11px/16px var(--font-mono); letter-spacing: .05em; text-transform: uppercase; padding: 2px 8px; border-radius: var(--radius-pill); }
.sc-sev--crit { background: var(--rec-tint); color: var(--rec-text); }
.sc-sev--imp { background: #f8ecd6; color: #9a5b00; }
.sc-sev--low { background: var(--surface-sunken); color: var(--ink-subtle); }
.sc-blk { font: 400 12px/16px var(--font-text); color: var(--ink-subtle); }
.sc-prob h3 { margin: 0; font: 600 17px/24px var(--font-text); }
.sc-prob p { margin: 0; font: 400 15px/22px var(--font-text); color: var(--ink-muted); }
.sc-prob p b { color: var(--ink); font-weight: 600; }
.sc-locked { margin: 0 var(--space-6) var(--space-6); padding: var(--space-5, 20px); border-radius: var(--radius-m); background: var(--surface-sunken); display: grid; gap: var(--space-4); }
.sc-locked__head { display: flex; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; align-items: baseline; }
.sc-counts { display: flex; gap: var(--space-2); flex-wrap: wrap; }
.sc-counts span { font: 400 13px/18px var(--font-text); background: var(--surface); border-radius: var(--radius-pill); padding: 4px 10px; color: var(--ink-muted); }
.sc-blur { display: grid; gap: var(--space-2); filter: blur(4px); user-select: none; pointer-events: none; }
.sc-blur div { background: var(--surface); border-radius: 8px; padding: 10px 14px; font-size: 14px; color: var(--ink-muted); }
.sc-disclaim { padding: var(--space-4) var(--space-6); border-top: 1px solid var(--line); font: 400 13px/18px var(--font-text); color: var(--ink-subtle); display: flex; gap: var(--space-2) var(--space-6); flex-wrap: wrap; }

.sc-levels { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.sc-level { border-radius: var(--radius-l); padding: var(--space-8); display: grid; gap: var(--space-5, 20px); align-content: start; }
.sc-level--auto { background: var(--night); color: var(--on-night); }
.sc-level--expert { background: var(--surface); border: 1px solid var(--line); }
.sc-level__row { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-3); flex-wrap: wrap; }
.sc-level__price { font: 700 36px/1 var(--font-display); font-variant-numeric: tabular-nums; }
.sc-level__when { font: 500 12px/16px var(--font-mono); letter-spacing: .05em; text-transform: uppercase; opacity: .8; }
.sc-level__when--rec { color: var(--rec-text); opacity: 1; }
.sc-level ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.sc-level li { display: grid; grid-template-columns: 18px 1fr; gap: 10px; font: 400 15px/22px var(--font-text); }
.sc-level li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; margin-top: 7px; background: currentColor; opacity: .45; }
.sc-level--auto li::before, .sc-level li.sc-plus::before { background: var(--rec); opacity: 1; }
.sc-pay { display: grid; gap: 10px; }
.sc-pay label { font: 400 13px/18px var(--font-text); opacity: .85; }
.sc-pay input[type=email] { font: 400 16px/22px var(--font-text); padding: 12px 16px; border-radius: var(--radius-m); border: 1px solid #4a434e; background: #221e24; color: var(--on-night); }
.sc-pay input[type=email]:focus { outline: 2px solid var(--rec); outline-offset: 1px; }
.sc-pay__hint { margin: 0; font: 500 14px/20px var(--font-text); color: #ffb3ab; }
.sc-check { display: flex; gap: 10px; align-items: flex-start; line-height: 1.45; }
.sc-check input { margin-top: 3px; accent-color: var(--rec-fill); }
.sc-check a { color: inherit; }
.sc-pay .mo-btn[disabled] { opacity: .5; cursor: not-allowed; }
.sc-pay .pay-status { margin: 0; font: 400 14px/20px var(--font-text); }

.sc-how { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--space-6); }
.sc-how div { border-top: 2px solid var(--ink); padding-top: var(--space-4); }
.sc-how h3 { margin: 0 0 6px; font: 600 18px/24px var(--font-text); }
.sc-how p { margin: 0; color: var(--ink-muted); font: 400 15px/22px var(--font-text); }
.sc-done { padding-top: var(--space-6); }
.sc-done__box { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); padding: var(--space-6); display: grid; gap: var(--space-3); }
.sc-done__box p { margin: 0; font: 500 17px/26px var(--font-text); }
.sc-done__files a { font-weight: 600; color: var(--rec-text); }

@media (max-width: 900px) {
  .sc-levels { grid-template-columns: 1fr; }
  .sc-scores { grid-template-columns: 1fr; }
  .sc-score { border-right: 0; border-bottom: 1px solid var(--line); }
  .sc-score:last-child { border-bottom: 0; }
}
@media (max-width: 600px) {
  .sc-level { padding: var(--space-6); }
  .sc-checkform { border-radius: var(--radius-m); }
  .sc-checkform .mo-btn { width: 100%; }
  .sc-what { display: none; }
}
@media (prefers-reduced-motion: no-preference) { .sc-bar i { transition: width .6s ease; } }

/* ---------- Генератор КП (kp-) ---------- */
.kp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-8); align-items: start; }
.kp-form { display: grid; gap: var(--space-3); }
.kp-q { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-m); padding: 16px 18px; display: grid; gap: 6px; }
.kp-q > label:not(.kp-logo) { font: 600 15px/22px var(--font-text); display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.kp-q > label:not(.kp-logo) > span { font: 500 12px/16px var(--font-mono); color: var(--rec-text); min-width: 14px; }
.kp-q > label > em { font: 400 12px/16px var(--font-text); font-style: normal; color: var(--ink-subtle); }
.kp-q small { font: 400 13px/18px var(--font-text); color: var(--ink-subtle); }
.kp-q textarea, .kp-row3 input, .kp-hex input { font: 400 15px/22px var(--font-text); border: 1px solid var(--line); border-radius: 10px; padding: 9px 12px; background: var(--paper); color: var(--ink); resize: vertical; width: 100%; min-width: 0; box-sizing: border-box; }
.kp-q textarea:focus, .kp-row3 input:focus, .kp-hex input:focus { outline: 2px solid var(--rec-fill); outline-offset: 1px; }
.kp-sep { background: var(--surface-sunken); border-radius: var(--radius-m); padding: 16px 18px; display: grid; gap: 8px; }
.kp-sep h3 { margin: 0; font: 600 15px/22px var(--font-text); }
.kp-sep h3 span { font: 500 11px/16px var(--font-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--positive); }
.kp-sep p { margin: 0; font: 400 13px/19px var(--font-text); color: var(--ink-muted); }
.kp-row3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 8px; }
.kp-row3 input { background: var(--surface); }
.kp-side { display: grid; gap: var(--space-4); position: sticky; top: 96px; }
.kp-design { gap: 12px; }
.kp-design__h { font: 600 15px/22px var(--font-text); }
.kp-styles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.kp-sty { border: 1px solid var(--line); border-radius: 12px; padding: 10px; background: var(--surface); display: grid; gap: 6px; cursor: pointer; font: inherit; text-align: left; color: var(--ink); }
.kp-sty[aria-pressed="true"] { outline: 2px solid var(--rec-fill); outline-offset: 1px; }
.kp-sty b { font: 600 13px/18px var(--font-text); }
.kp-sty small { font: 400 12px/16px var(--font-text); color: var(--ink-subtle); }
.kp-sw { height: 40px; border-radius: 8px; display: flex; align-items: flex-end; padding: 6px; }
.kp-sw i { display: block; height: 6px; width: 60%; border-radius: 3px; background: currentColor; opacity: .8; }
.kp-sw--strict { background: #eef3f7; color: #1f5f8b; } .kp-sw--bright { background: #1f5f8b; color: #fff; } .kp-sw--minimal { background: #fafafa; color: #888; }
.kp-colors { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; font: 400 13px/18px var(--font-text); color: var(--ink-subtle); }
.kp-colors button { width: 28px; height: 28px; border-radius: 50%; border: 2px solid var(--surface); outline: 1px solid var(--line); cursor: pointer; padding: 0; }
.kp-colors button[aria-pressed="true"] { outline: 2px solid var(--ink); }
.kp-hex { display: flex; gap: 6px; align-items: center; }
.kp-hex input { width: 96px; padding: 5px 9px; font-size: 13px; }
.kp-logo { font-weight: 400; border: 1.5px dashed var(--line-strong); border-radius: 12px; padding: 12px; display: flex; gap: 12px; align-items: center; font: 400 14px/20px var(--font-text); color: var(--ink-muted); background: var(--surface); cursor: pointer; }
.kp-logo input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.kp-logo:focus-within { outline: 2px solid var(--rec-fill); outline-offset: 2px; }
.kp-logo small { color: var(--ink-subtle); font-size: 12px; overflow-wrap: anywhere; }
.kp-logo__mark { flex: none; width: 44px; height: 44px; border-radius: 10px; color: #fff; display: grid; place-items: center; font: 600 11px/1 var(--font-text); background-size: contain; background-repeat: no-repeat; background-position: center; }
.kp-hint { margin: 0; font: 400 13px/19px var(--font-text); color: var(--ink-subtle); }
.kp-error { color: var(--rec-text); background: var(--rec-tint); }
.kp-sheet { --kp-acc: #1f5f8b; background: #fff; color: #1d1d1f; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 2px 4px rgba(34,30,36,.05), 0 14px 32px rgba(34,30,36,.1); overflow: hidden; }
.kp-sheet__top { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 14px 20px; border-bottom: 3px solid var(--kp-acc); }
.kp-sheet__brand { display: flex; gap: 10px; align-items: center; font: 700 14px/20px var(--font-text); min-width: 0; }
.kp-sheet__brand img { height: 28px; width: auto; max-width: 110px; object-fit: contain; }
.kp-sheet__top small { font: 400 11px/16px var(--font-text); color: #6b6b70; }
.kp-sheet__body { padding: 20px; display: grid; gap: 10px; }
.kp-sheet__to { font: 400 12px/16px var(--font-text); color: #6b6b70; }
.kp-sheet__body h3 { margin: 0; font: 700 21px/1.25 var(--font-text); color: #111; text-wrap: balance; }
.kp-sheet__body p { margin: 0; font: 400 14px/1.55 var(--font-text); color: #3a3a40; }
.kp-sheet__chips { display: flex; gap: 8px; flex-wrap: wrap; }
.kp-sheet__chips span { font: 600 12px/16px var(--font-text); padding: 5px 10px; border-radius: 999px; background: color-mix(in srgb, var(--kp-acc) 12%, #fff); color: var(--kp-acc); }
.kp-toc { display: grid; gap: 6px; padding: 0 20px 14px; }
.kp-toc div { display: flex; justify-content: space-between; gap: 10px; font: 400 13px/18px var(--font-text); padding: 8px 12px; border-radius: 8px; background: #f5f5f6; }
.kp-toc div span:last-child { font: 500 11px/16px var(--font-mono); color: #8a8a90; }
.kp-toc div.is-free { background: color-mix(in srgb, var(--kp-acc) 9%, #fff); }
.kp-toc div.is-free span:last-child { color: var(--kp-acc); }
.kp-sheet__note { margin: 0; padding: 0 20px 16px; font: 400 11px/16px var(--font-text); color: #8a8a90; }
.kp-s-bright .kp-sheet__top { background: var(--kp-acc); color: #fff; border-bottom: 0; }
.kp-s-bright .kp-sheet__top small { color: rgba(255,255,255,.82); }
.kp-s-minimal .kp-sheet__top { border-bottom: 1px solid #e6e6e8; }
.kp-s-minimal .kp-sheet__body h3 { font-weight: 500; }
.sc-level__price--s { font-size: 22px; }
@media (max-width: 1000px) { .kp-grid { grid-template-columns: 1fr; } .kp-side { position: static; } }
@media (max-width: 480px) { .kp-styles { grid-template-columns: 1fr; } }

/* Генератор КП: уровни и подробная анкета */
.kp-tier { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: var(--space-6); }
.kp-tier button { font: inherit; text-align: left; cursor: pointer; border: 1px solid var(--line); border-radius: var(--radius-m); background: var(--surface); padding: 16px 18px; display: grid; gap: 4px; color: var(--ink); }
.kp-tier button[aria-pressed="true"] { outline: 2px solid var(--rec-fill); outline-offset: 1px; }
.kp-tier b { font: 600 17px/24px var(--font-display); }
.kp-tier span { font: 700 22px/28px var(--font-display); }
.kp-tier small { font: 400 13px/19px var(--font-text); color: var(--ink-muted); }
.kp-pro { display: grid; gap: var(--space-3); }
.kp-grp { margin: var(--space-3) 0 0; font: 500 12px/16px var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-subtle); }
.kp-q input, .kp-q select { font: 400 15px/22px var(--font-text); border: 1px solid var(--line); border-radius: 10px; padding: 9px 12px; background: var(--paper); color: var(--ink); width: 100%; min-width: 0; box-sizing: border-box; }
.kp-q input:focus, .kp-q select:focus { outline: 2px solid var(--rec-fill); outline-offset: 1px; }
.kp-qh { font: 600 15px/22px var(--font-text); display: flex; gap: 10px; align-items: baseline; }
.kp-qh > span { font: 500 12px/16px var(--font-mono); color: var(--rec-text); min-width: 14px; }
.kp-inline { display: flex; gap: 8px; }
.kp-inline .mo-btn { flex: none; }
.kp-sitebox { margin: 0; padding: 10px 12px; border-radius: 10px; background: #e1f0e7; color: var(--positive); font: 500 13px/19px var(--font-text); }
.kp-sitebox--bad { background: var(--rec-tint); color: var(--rec-text); }
.kp-toggle { display: flex !important; gap: 10px; align-items: center; font: 600 15px/22px var(--font-text); cursor: pointer; }
.kp-toggle input { width: 18px !important; height: 18px; accent-color: var(--rec-fill); flex: none; }
.kp-adbox { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 6px; }
.kp-adbox label { display: grid; gap: 4px; font: 400 13px/18px var(--font-text); color: var(--ink-muted); }
.kp-adbox label:first-child { grid-column: 1 / -1; }
.kp-cases { display: grid; gap: 10px; }
.kp-case { display: grid; grid-template-columns: 1fr 1.3fr 1fr; gap: 6px; }
.kp-logo__mark--client { background-color: #8a838d; }
.kp-sheet--pro .kp-sheet__body { background: var(--kp-acc); color: #fff; }
.kp-sheet--pro .kp-sheet__body h3, .kp-sheet--pro .kp-sheet__body p { color: #fff; }
.kp-sheet--pro .kp-sheet__to { color: rgba(255,255,255,.85); font: 600 14px/20px var(--font-text); }
.kp-sheet--pro .kp-sheet__chips span { background: rgba(255,255,255,.16); color: #fff; }
.kp-sheet__pages { margin: 0; padding: 0 20px 4px; font: 500 12px/16px var(--font-mono); color: var(--kp-acc); }
@media (max-width: 700px) { .kp-tier { grid-template-columns: 1fr; } .kp-case { grid-template-columns: 1fr; } .kp-adbox { grid-template-columns: 1fr; } .kp-inline { flex-wrap: wrap; } }

[data-kp-only][hidden], [data-kp-adbox][hidden], [data-kp-sheet][hidden] { display: none !important; }
.kp-q .kp-logo input[type=file] { position: absolute; width: 1px; height: 1px; padding: 0; border: 0; opacity: 0; }

/* ---------- Аудит Директа (da-) ---------- */
.da-form { margin-top: var(--space-8); display: grid; gap: var(--space-3); max-width: 680px; }
.da-files { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.da-drop { position: relative; display: grid; gap: 4px; padding: 16px 18px; border: 1.5px dashed rgba(247,245,242,.35); border-radius: var(--radius-m); background: rgba(247,245,242,.05); cursor: pointer; color: var(--on-night); }
.da-drop:hover, .da-drop.is-over { border-color: var(--on-night); background: rgba(247,245,242,.1); }
.da-drop:focus-within { outline: 2px solid var(--rec); outline-offset: 3px; }
.da-drop.is-set { border-style: solid; border-color: #78d2a0; }
.da-drop input[type=file] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; font-size: 0; }
.da-drop__k { font: 500 11px/16px var(--font-mono); letter-spacing: .06em; text-transform: uppercase; opacity: .7; }
.da-drop strong { font: 600 16px/22px var(--font-text); }
.da-drop__fn { font: 500 13px/18px var(--font-mono); color: #ffb3ab; overflow-wrap: anywhere; }
.da-drop.is-set .da-drop__fn { color: #78d2a0; }
.da-drop small { font: 400 12px/17px var(--font-text); opacity: .65; }
.da-opts { display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-5, 20px); align-items: end; }
.da-opts label { display: grid; gap: 4px; font: 400 13px/18px var(--font-text); color: var(--on-night); opacity: .9; }
.da-opts input, .da-opts select { font: 400 16px/22px var(--font-text); padding: 10px 14px; border-radius: 10px; border: 1px solid #4a434e; background: #221e24; color: var(--on-night); width: 200px; max-width: 100%; box-sizing: border-box; }
.da-opts input:focus, .da-opts select:focus { outline: 2px solid var(--rec); outline-offset: 1px; }
.da-goals { margin: 0; padding: 0; border: 0; display: grid; gap: 6px; color: var(--on-night); }
.da-goals legend { font: 400 13px/18px var(--font-text); opacity: .9; padding: 0; margin-bottom: 6px; }
.da-goals > div { display: flex; flex-wrap: wrap; gap: 8px; }
.da-goals label { display: flex; gap: 6px; align-items: center; font: 500 14px/20px var(--font-text); border: 1px solid rgba(247,245,242,.25); border-radius: var(--radius-pill); padding: 6px 12px; cursor: pointer; }
.da-goals input { accent-color: var(--rec-fill); margin: 0; }
.da-go { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.da-go .mo-btn[disabled] { opacity: .6; cursor: progress; }
.da-rerun { color: var(--on-night); border-color: rgba(247,245,242,.45); }
.da-rerun:hover { border-color: var(--on-night); }
.da-leak { display: flex; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; align-items: end; padding: var(--space-5, 20px) var(--space-6); border-bottom: 1px solid var(--line); background: var(--rec-tint); }
.da-leak.is-zero { background: var(--surface-sunken); }
.da-leak__k { font: 500 12px/16px var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--rec-text); }
.da-leak.is-zero .da-leak__k { color: var(--ink-subtle); }
.da-leak__num { font: 700 clamp(32px, 5vw, 48px)/1 var(--font-display); color: var(--rec-text); font-variant-numeric: tabular-nums; margin-top: 6px; }
.da-leak.is-zero .da-leak__num { color: var(--ink); }
.da-leak p { margin: 0; max-width: 48ch; font: 400 14px/20px var(--font-text); color: var(--ink-muted); }
.da-scores { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line); }
.da-scores .sc-score { padding: 16px 18px; border-bottom: 1px solid var(--line); }
.da-scores .sc-score:nth-child(4n) { border-right: 0; }
.da-scores .sc-score:nth-last-child(-n+4) { border-bottom: 0; }
.da-scores .sc-score__num { font-size: 30px; }
.da-sum { font: 700 18px/24px var(--font-display); color: var(--rec-text); white-space: nowrap; }
.da-row2 { display: flex; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; align-items: baseline; }
.da-ex { display: block; margin-top: 4px; font: 400 13px/19px var(--font-text); color: var(--ink-subtle); }
.da-nocab { margin: 0; padding: var(--space-4) var(--space-6); border-top: 1px solid var(--line); font: 400 14px/20px var(--font-text); color: var(--ink-muted); }
.da-nocab b { color: var(--ink); }
.da-howlink { margin: 0; font: 500 14px/20px var(--font-text); }
.da-howlink a { color: #ffb3ab; }
.da-tips { margin-top: var(--space-4); display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--space-4); }
.da-tips p { margin: 0; padding: var(--space-4) var(--space-5, 20px); background: var(--surface-sunken); border-radius: var(--radius-m); font: 400 14px/20px var(--font-text); color: var(--ink-muted); }
.da-tips b { color: var(--ink); }
.da-tips a { color: var(--rec-text); }
.da-steps { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.da-steps > div { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); padding: var(--space-6); display: grid; gap: var(--space-3); align-content: start; }
.da-steps .kicker { color: var(--rec-text); }
.da-steps ol { margin: 0; padding-left: 20px; display: grid; gap: 6px; font: 400 15px/22px var(--font-text); color: var(--ink-muted); }
.da-steps b { color: var(--ink); font-weight: 600; }
@media (max-width: 900px) {
  .da-scores { grid-template-columns: 1fr 1fr; }
  .da-scores .sc-score { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  .da-scores .sc-score:nth-child(2n) { border-right: 0; }
  .da-scores .sc-score:nth-last-child(-n+2) { border-bottom: 0; }
  .da-steps { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .da-files { grid-template-columns: 1fr; }
  .da-opts label, .da-opts input, .da-opts select { width: 100%; }
  .da-opts { display: grid; }
  .da-go .mo-btn { width: 100%; }
}

/* ---------- ИИ-система (ii-) ---------- */
.ii-steps { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: var(--space-4); }
.ii-steps button { font: 500 14px/20px var(--font-text); padding: 8px 14px; border-radius: var(--radius-pill); border: 1px solid var(--line-strong); background: transparent; color: var(--ink-muted); cursor: pointer; }
.ii-steps button.is-on { background: var(--night); color: var(--on-night); border-color: var(--night); }
.ii-form { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); padding: var(--space-6); }
.ii-form fieldset { border: 0; margin: 0; padding: 0; display: grid; gap: var(--space-5, 20px); }
.ii-form fieldset[hidden] { display: none; }
.ii-q { display: grid; gap: 6px; }
.ii-q label[for], .ii-l { font: 600 15px/22px var(--font-text); }
.ii-q small { font: 400 13px/18px var(--font-text); color: var(--ink-subtle); }
.ii-q small a { color: var(--rec-text); }
.ii-q input:not([type=checkbox]):not([type=radio]), .ii-q textarea, .ii-q select, .ii-func select { font: 400 15px/22px var(--font-text); border: 1px solid var(--line); border-radius: 10px; padding: 9px 12px; background: var(--paper); color: var(--ink); width: 100%; min-width: 0; box-sizing: border-box; }
.ii-q textarea { resize: vertical; }
.ii-q input:focus, .ii-q textarea:focus, .ii-q select:focus { outline: 2px solid var(--rec-fill); outline-offset: 1px; }
.ii-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.ii-chips label { display: flex; gap: 6px; align-items: center; font: 500 14px/20px var(--font-text); border: 1px solid var(--line-strong); border-radius: var(--radius-pill); padding: 6px 12px; cursor: pointer; }
.ii-chips label:has(input:checked) { background: var(--rec-tint); border-color: var(--rec); color: var(--rec-text); }
.ii-chips input { accent-color: var(--rec-fill); margin: 0; }
.ii-funcs { display: grid; gap: 8px; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.ii-func { display: grid; grid-template-columns: 1fr 160px; gap: 8px; align-items: center; border: 1px solid var(--line); border-radius: var(--radius-m); padding: 8px 10px; }
.ii-func label { display: flex; gap: 8px; align-items: center; font: 500 14px/20px var(--font-text); cursor: pointer; }
.ii-func input { accent-color: var(--rec-fill); }
.ii-func select { padding: 6px 8px; font-size: 13px; }
.ii-func select:disabled { opacity: .4; }
.ii-nav { display: flex; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; }
.ii-error { margin: var(--space-4) 0 0; padding: var(--space-3) var(--space-4); border-radius: var(--radius-m); background: var(--rec-tint); color: var(--rec-text); font: 500 15px/22px var(--font-text); }
.ii-scheme { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; padding: var(--space-6); }
.ii-chat { border: 1px solid var(--line); border-radius: var(--radius-m); padding: 14px 16px; display: grid; gap: 4px; align-content: start; }
.ii-chat b { font: 600 16px/22px var(--font-text); }
.ii-chat small { font: 400 13px/19px var(--font-text); color: var(--ink-muted); }
.ii-chat__when { font: 500 11px/16px var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--rec-text); }
.ii-chat--main { grid-column: 1 / -1; background: var(--night); color: var(--on-night); border-color: var(--night); }
.ii-chat--main small { color: var(--on-night); opacity: .75; }
.ii-chat--main .ii-chat__when { color: #ff8a80; }
.ii-block { padding: 0 var(--space-6) var(--space-6); display: grid; gap: 10px; }
.ii-table { width: 100%; border-collapse: collapse; font: 400 14px/20px var(--font-text); }
.ii-table th, .ii-table td { text-align: left; padding: 9px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.ii-table th { font: 500 11px/16px var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-subtle); }
.ii-day { font: 700 16px/20px var(--font-display); white-space: nowrap; width: 48px; }
.ii-more { margin: 0; font: 400 13px/18px var(--font-text); color: var(--ink-subtle); }
.ii-prompt-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; flex-wrap: wrap; }
.ii-prompt { margin: 0; background: var(--surface-sunken); border-radius: var(--radius-m); padding: 16px 18px; font: 400 13px/1.6 var(--font-mono); white-space: pre-wrap; overflow-wrap: anywhere; color: var(--ink); }
@media (max-width: 700px) {
  .ii-scheme { grid-template-columns: 1fr; }
  .ii-func { grid-template-columns: 1fr; }
  .ii-form { padding: var(--space-4); }
  .ii-nav .mo-btn { flex: 1 1 auto; }
}

/* Сцена продукта сверху в правой колонке первого экрана (набор движения сайта) */
.sc-what .scene--tool { margin: 0 0 var(--space-6, 24px); border-radius: 14px; }
.sc-what .scene--tool.scene--kp { margin-bottom: 32px; }

/* ---------- Генератор контент-плана (kc-) ---------- */
.kc-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.kc-chip { font: 500 14px/20px var(--font-text); padding: 8px 16px; border-radius: var(--radius-pill); border: 1px solid var(--line-strong); background: var(--surface); color: var(--ink); cursor: pointer; }
.kc-chip[aria-pressed="true"] { background: var(--night); color: var(--on-night); border-color: var(--night); }
.kc-chip:focus-visible { outline: 2px solid var(--rec-fill); outline-offset: 2px; }
.kc-fs__h { font: 600 15px/22px var(--font-text); display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.kc-fs__h > span { font: 500 12px/16px var(--font-mono); color: var(--rec-text); min-width: 14px; }
.kc-fs__h > em { font: 400 12px/16px var(--font-text); font-style: normal; color: var(--ink-subtle); }
.kc-sub { margin-top: 6px; }
.kc-two { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.kc-two > div { display: grid; gap: 6px; align-content: start; }
.kc-two label { font: 600 15px/22px var(--font-text); display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.kc-two label > span { font: 500 12px/16px var(--font-mono); color: var(--rec-text); min-width: 14px; }
.kc-two select, .kc-two input { font: 400 15px/22px var(--font-text); border: 1px solid var(--line); border-radius: 10px; padding: 9px 12px; background: var(--paper); color: var(--ink); width: 100%; min-width: 0; box-sizing: border-box; }
.kc-sum { display: flex; gap: 8px; flex-wrap: wrap; }
.kc-sum span { font: 400 14px/20px var(--font-text); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-pill); padding: 6px 14px; color: var(--ink-muted); }
.kc-sum b { color: var(--ink); font-weight: 700; }
.kc-tbl { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius-m); background: var(--surface); max-width: 100%; }
.kc-tbl:focus-visible { outline: 2px solid var(--rec-fill); outline-offset: 2px; }
.kc-table { border-collapse: collapse; width: 100%; min-width: 980px; font: 400 14px/20px var(--font-text); }
.kc-table th { text-align: left; font: 500 11px/16px var(--font-mono); letter-spacing: .05em; text-transform: uppercase; color: var(--ink-subtle); background: var(--surface-sunken); padding: 10px 12px; white-space: nowrap; }
.kc-table td { padding: 12px; border-top: 1px solid var(--line); vertical-align: top; color: var(--ink); }
.kc-table td:nth-child(5), .kc-table td:nth-child(6) { min-width: 200px; }
.kc-nw { white-space: nowrap; font-variant-numeric: tabular-nums; }
.kc-tag { display: inline-block; margin-top: 4px; font: 500 11px/16px var(--font-mono); letter-spacing: .04em; text-transform: uppercase; padding: 2px 8px; border-radius: var(--radius-pill); background: #f8ecd6; color: #9a5b00; }
.kc-lock { position: relative; min-width: 220px; }
.kc-blur { display: block; filter: blur(4px); user-select: none; pointer-events: none; color: var(--ink-muted); }
.kc-lock__l { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); font: 600 12px/16px var(--font-text); background: var(--night); color: var(--on-night); border-radius: var(--radius-pill); padding: 4px 12px; }
@media (max-width: 480px) { .kc-two { grid-template-columns: 1fr; } }
.sc-level .sc-fine { opacity: .7; }
[data-kc-result][hidden] { display: none !important; }
/* Доплаты к КП: блок «Добавить к КП» в карточке оплаты и превью «Что будет в файле» */
.kpa { border: 1px solid #4a434e; border-radius: var(--radius-m); margin: 0; padding: 14px 16px; display: grid; gap: 12px; min-width: 0; }
.kpa legend { padding: 0 6px; font: 600 14px/20px var(--font-text); }
.kpa__lead { font-weight: 400; opacity: .7; }
.kpa__item { display: grid; gap: 6px; }
.kpa__row { display: flex; gap: 10px; align-items: baseline; cursor: pointer; opacity: 1 !important; }
.kpa__row input { accent-color: var(--rec-fill); margin: 0; flex: none; align-self: center; width: 18px; height: 18px; }
.kpa__t { display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; font: 600 15px/22px var(--font-text); }
.kpa__t em { font: 500 13px/18px var(--font-mono); font-style: normal; color: var(--rec); }
.kpa__d { margin: 0 0 0 28px; font: 400 13px/19px var(--font-text); opacity: .75; }
.kpa__more { margin-left: 28px; display: grid; gap: 6px; }
.kpa__more label small { font-weight: 400; opacity: .7; }
.kpa__more textarea { font: 400 15px/22px var(--font-text); padding: 9px 12px; border-radius: 10px; border: 1px solid #4a434e; background: #221e24; color: var(--on-night); resize: vertical; width: 100%; min-width: 0; box-sizing: border-box; }
.kpa__more textarea:focus { outline: 2px solid var(--rec); outline-offset: 1px; }
.kpa__hint { font: 400 12px/17px var(--font-text); opacity: .7; }
.kpa__hint.is-need { color: #ffb3ab; opacity: 1; }
.kpa__bundle { margin: 0; font: 500 13px/18px var(--font-mono); color: #f2c14e; }
.kpa__soon { margin: 0; font: 400 13px/19px var(--font-text); color: #ffb3ab; }
.kpa__item.is-soon { opacity: .55; }
.kpa__item.is-soon .kpa__row { cursor: not-allowed; }
.kpa__item.is-soon .kpa__t em::after { content: " · скоро"; }
.kpa-files { display: grid; gap: 8px; }
.kpa-files__h { font: 500 12px/16px var(--font-mono); letter-spacing: .05em; text-transform: uppercase; opacity: .8; }
.kpa-files__pages { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.kpa-pg { aspect-ratio: 3 / 4; border-radius: 6px; padding: 8px; display: grid; align-content: start; gap: 5px; background: #f7f5f2; color: #221e24; opacity: .28; transition: opacity .2s; }
.kpa-pg.is-on { opacity: 1; }
.kpa-pg b { font: 600 11px/14px var(--font-text); }
.kpa-pg i { display: block; height: 5px; border-radius: 3px; background: #cfc9c4; }
.kpa-pg i.s { width: 60%; }
.kpa-files small { font: 400 12px/17px var(--font-text); opacity: .7; }
@media (prefers-reduced-motion: reduce) { .kpa-pg { transition: none; } }
@media (max-width: 640px) { .kpa-files__pages { grid-template-columns: repeat(2, 1fr); } .kpa__d, .kpa__more { margin-left: 0; } }

/* полоса «Есть уровень про этот инструмент» (build.py, GAME_LEVEL): видна только вместе с результатом — стоит сразу за ним */
.gl-tool { margin-top: 8px; margin-bottom: 24px; }
.gl-tool .gl-blog { margin: 0; }
[hidden] + .gl-tool { display: none; }
.gl-tool a.mo-btn { text-decoration: none; }

/* ожидание с Обсервером (wait.js): пока сервер работает — сканирующий знак, список «что проверяем» и бегущая полоса, без выдуманных процентов */
.tool-wait { display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; margin: 16px 0; padding: 24px; border-radius: 22px; background: var(--night, #17141a); color: #f7f5f2; }
.tool-wait[hidden] { display: none; }
.tw__obs { width: 120px; height: auto; display: block; }
.tw__t { display: grid; gap: 10px; min-width: 0; }
.tw__t b { font: 700 18px/24px var(--font-display); }
.tw__k { font: 500 11px/14px var(--font-mono); letter-spacing: .08em; text-transform: uppercase; color: #b4adb6; }
.tw__t ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; font: 500 14px/20px var(--font-text); color: #d9d3ce; }
.tw__t li { display: flex; gap: 8px; align-items: center; }
.tw__t li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; border: 1px solid #5e5762; flex: none; }
.tw__bar { display: block; height: 4px; border-radius: 2px; background: #3d3640; overflow: hidden; }
.tw__bar i { display: block; width: 30%; height: 100%; background: var(--rec, #e2362c); }
.tw__slow { font-size: 13px; line-height: 19px; color: #f2c14e; }
@media (max-width: 560px) { .tool-wait { grid-template-columns: 1fr; padding: 20px; } .tw__obs { width: 88px; } }
@media (prefers-reduced-motion: no-preference) {
  .tw__bar i { animation: tw-run 1.4s ease-in-out infinite; }
  .tw__eye { animation: tw-scan 1.6s ease-in-out infinite alternate; }
  .tw__ant { animation: tw-blink 2.4s steps(1) infinite; }
  .tw__obs { animation: tw-bob 2s ease-in-out infinite alternate; }
}
@keyframes tw-run { from { transform: translateX(-100%); } to { transform: translateX(340%); } }
@keyframes tw-scan { from { transform: translateX(-28px); } to { transform: translateX(28px); } }
@keyframes tw-blink { 0%, 80% { opacity: 1; } 85%, 100% { opacity: .25; } }
@keyframes tw-bob { from { transform: translateY(-3px); } to { transform: translateY(3px); } }

/* ---------- Креативы (kr-): форма, холст, проверки, пакет, ленты ---------- */
.kr-tool { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.kr-form { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-l); padding: var(--space-6); display: grid; gap: var(--space-4); min-width: 0; }
.kr-f { display: grid; gap: 6px; min-width: 0; border: 0; margin: 0; padding: 0; }
.kr-f[hidden], .kr-grid2[hidden], [data-kr-only][hidden], [data-kr-hide][hidden] { display: none; }
.kr-f label, .kr-l, .kr-promo legend { font: 500 13px/18px var(--font-text); color: var(--ink-muted); }
.kr-f small, .kr-hint { font: 400 12px/17px var(--font-text); color: var(--ink-subtle); }
.kr-form input:not([type=checkbox]):not([type=color]):not([type=file]), .kr-form textarea, .kr-sel select { width: 100%; min-height: 42px; padding: 9px 12px; border: 1.5px solid var(--line); border-radius: var(--radius-m); background: var(--paper); color: var(--ink); font: 400 15px/22px var(--font-text); }
.kr-form textarea { resize: vertical; min-height: 60px; }
.kr-form input[type=file] { font: 400 13px/18px var(--font-text); max-width: 100%; }
.kr-form input:focus-visible, .kr-form textarea:focus-visible, .kr-sel select:focus-visible, .kr-chip:focus-visible, .kr-sw:focus-visible, .kr-focus:focus-visible { outline: 2px solid var(--rec); outline-offset: 2px; }
.kr-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.kr-row--nowrap { flex-wrap: nowrap; }
.kr-row--nowrap .mo-btn { white-space: nowrap; }
.kr-row--between { justify-content: space-between; }
.kr-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.kr-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.kr-chip { border: 1.5px solid var(--line); border-radius: var(--radius-pill); padding: 8px 14px; font: 500 13px/16px var(--font-text); background: var(--paper); color: var(--ink); cursor: pointer; }
.kr-chip[aria-pressed="true"] { border-color: var(--ink); background: var(--ink); color: var(--paper); }
.kr-color { display: grid; gap: 4px; font: 500 13px/18px var(--font-text); color: var(--ink-muted); }
.kr-color input { width: 100%; height: 42px; padding: 2px; border: 1.5px solid var(--line); border-radius: var(--radius-m); background: var(--paper); cursor: pointer; }
.kr-sw { width: 30px; height: 30px; border-radius: 50%; border: 2px solid var(--line-strong, var(--line)); cursor: pointer; padding: 0; }
.kr-sitecolors { display: flex; gap: 8px; align-items: center; font: 400 13px/18px var(--font-text); color: var(--ink-muted); }
.kr-sitecolors div { display: flex; gap: 6px; }
.kr-contrast { margin: 0; font: 400 13px/18px var(--font-text); color: var(--ink-muted); }
.kr-contrast--bad { color: var(--rec-text); font-weight: 500; }
.kr-promo { border: 1px solid var(--line); border-radius: var(--radius-m); padding: 14px 16px; display: grid; gap: 10px; min-width: 0; }
.kr-promo legend { padding: 0 6px; }
.kr-check { display: flex; gap: 10px; align-items: flex-start; font: 400 14px/20px var(--font-text); cursor: pointer; }
.kr-check input { margin-top: 3px; accent-color: var(--rec-fill); }
.kr-plus { border: 1px dashed var(--line); border-radius: var(--radius-m); padding: 10px 14px; display: grid; gap: 10px; }
.kr-plus summary { cursor: pointer; font: 500 14px/20px var(--font-text); }
.kr-fine { margin: 0; font: 400 12px/17px var(--font-text); color: var(--ink-subtle); max-width: 60ch; }
.kr-link { background: none; border: 0; padding: 0; font: inherit; color: var(--rec-text); text-decoration: underline; cursor: pointer; }
.kr-status { margin: 0; font: 500 13px/18px var(--font-text); color: var(--ink-muted); }
.kr-status--bad { color: var(--rec-text); }
.kr-titles { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.kr-titles small { flex-basis: 100%; }
.kr-focus { position: relative; max-width: 260px; border-radius: var(--radius-m); overflow: hidden; touch-action: none; cursor: crosshair; background: var(--surface-sunken); line-height: 0; }
.kr-focus img { width: 100%; height: auto; display: block; -webkit-user-drag: none; user-select: none; }
.kr-focus i { position: absolute; width: 22px; height: 22px; margin: -11px 0 0 -11px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 0 0 1.5px rgba(0,0,0,.6), 0 2px 8px rgba(0,0,0,.4); pointer-events: none; }
.kr-stage { background: var(--surface-sunken); border-radius: var(--radius-l); padding: var(--space-4); display: grid; gap: var(--space-3); min-width: 0; position: sticky; top: calc(var(--header-height, 72px) + 12px); }
.kr-stage__bar { display: flex; gap: var(--space-3); align-items: center; flex-wrap: wrap; }
.kr-sel { flex: 0 1 280px; }
.kr-stage__cv { display: grid; place-items: center; background: repeating-conic-gradient(#e7e3de 0 25%, #f1eeea 0 50%) 0 0 / 16px 16px; border-radius: var(--radius-m); padding: var(--space-3); min-height: 200px; }
.kr-stage__cv canvas { display: block; max-width: 100%; max-height: 62vh; width: auto; height: auto; border-radius: 4px; box-shadow: 0 1px 8px rgba(0,0,0,.18); }
.kr-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.kr-badge { display: inline-block; border-radius: var(--radius-pill); padding: 3px 10px; font: 600 12px/18px var(--font-text); }
.kr-badge--ok { background: #e2f2e9; color: #14573a; }
.kr-badge--warn { background: #f8ecd6; color: #6b4000; }
.kr-note { margin: 0; font: 400 13px/19px var(--font-text); color: var(--ink-muted); }
.kr-note:empty { display: none; }
.kr-disclaim { margin: 0; font: 400 12px/17px var(--font-text); color: var(--ink-subtle); }
.kr-disclaim--wide { margin-top: var(--space-4); }
.kr-unlock__box { background: var(--night); color: var(--on-night); border-radius: var(--radius-l); padding: var(--space-8); display: flex; gap: var(--space-6); justify-content: space-between; align-items: center; flex-wrap: wrap; }
.kr-unlock__box .lead { color: var(--on-night); opacity: .8; max-width: 62ch; margin: 8px 0 0; }
.kr-unlock__act { display: grid; gap: 8px; max-width: 360px; }
.kr-unlock__act .kr-status { color: var(--on-night); }
.kr-group { margin: var(--space-6) 0 2px; font: 600 17px/24px var(--font-text); }
.kr-group__note { margin: 0 0 var(--space-3); font: 400 13px/18px var(--font-text); color: var(--ink-muted); }
.kr-pack__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--space-3); }
.kr-fig { margin: 0; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-m); padding: 12px; display: grid; gap: 10px; align-content: start; min-width: 0; }
.kr-fig__box { height: 180px; display: grid; place-items: center; background: var(--surface-sunken); border-radius: var(--radius-s, 8px); overflow: hidden; }
.kr-fig__box canvas { max-width: 100%; max-height: 180px; width: auto; height: auto; }
.kr-fig figcaption { display: grid; gap: 8px; font: 400 13px/18px var(--font-text); justify-items: start; }
.kr-fig figcaption b { font: 600 14px/20px var(--font-text); }
.kr-feeds { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
.kr-feed { margin: 0; display: grid; gap: 8px; justify-items: center; }
.kr-feed figcaption { font: 400 13px/18px var(--font-text); color: var(--ink-muted); text-align: center; }
.kr-phone { width: 100%; max-width: 300px; background: #fff; color: #222; border: 1px solid var(--line); border-radius: 22px; padding: 14px 12px 18px; display: grid; gap: 10px; box-shadow: 0 4px 18px rgba(0,0,0,.08); }
.kr-phone canvas { width: 100%; height: auto; display: block; border-radius: 6px; }
.kr-post__head { display: flex; align-items: center; gap: 8px; }
.kr-post__head i { width: 30px; height: 30px; border-radius: 50%; background: #d8d3ce; flex: none; }
.kr-post__head b { height: 8px; width: 90px; border-radius: 4px; background: #cfc9c3; display: block; }
.kr-post__head s, .kr-post__lines s, .kr-ya__res s { display: block; height: 7px; border-radius: 4px; background: #e6e2dd; text-decoration: none; }
.kr-post__head s { width: 40px; margin-left: auto; }
.kr-post__lines { display: grid; gap: 6px; }
.kr-post__lines b, .kr-ya__res b { display: block; height: 9px; width: 70%; border-radius: 4px; background: #cfc9c3; }
.kr-post__lines s { width: 90%; }
.kr-phone--ya { background: #f4f2ef; }
.kr-ya__search { height: 30px; border-radius: 15px; background: #fff; border: 1px solid #d8d3ce; display: flex; align-items: center; padding: 0 12px; }
.kr-ya__search i { display: block; width: 55%; height: 7px; border-radius: 4px; background: #cfc9c3; }
.kr-ya__res { display: grid; gap: 6px; padding: 4px 2px; }
.kr-ya__res b { width: 62%; background: #b9b3ad; }
.kr-ya__res s { width: 95%; }
.kr-ya__res s:last-child { width: 70%; }
.kr-ya__ad { position: relative; display: grid; gap: 4px; background: #fff; border-radius: 8px; padding: 6px; }
.kr-ya__ad small { font: 500 11px/14px var(--font-text); color: #777; }
.kr-phone--tg { background: #e7ebef; }
.kr-tg__bubble { background: #fff; border-radius: 14px; padding: 8px; display: grid; gap: 8px; }
.kr-tg__name { height: 8px; width: 80px; border-radius: 4px; background: #9fb4c8; }
.kr-table { overflow-x: auto; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-m); margin-top: var(--space-6); }
.kr-table table { border-collapse: collapse; width: 100%; min-width: 620px; font: 400 14px/20px var(--font-text); }
.kr-table th, .kr-table td { text-align: left; padding: 10px 14px; border-bottom: 1px solid var(--line); vertical-align: top; }
.kr-table th { font: 500 11px/16px var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-subtle); }
@media (max-width: 960px) {
  .kr-tool { grid-template-columns: 1fr; }
  .kr-stage { position: static; }
  .kr-feeds { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .kr-grid2 { grid-template-columns: 1fr; }
  .kr-form { padding: var(--space-4); }
}
/* правки ревью 09.10: ключ цены не сжимается, промокод читается на тёмной карточке, поле файла не вылезает */
.sc-what__k { flex: none; white-space: nowrap; }
.sc-level--auto .promo__toggle, .sc-level--auto .promo__info, .sc-level--auto .promo__info--ok { color: var(--on-night); }
.kr-f input[type="file"] { max-width: 100%; min-width: 0; font: 400 13px/18px var(--font-text); }
.kr-f input[type="file"]::file-selector-button { font: 500 13px/18px var(--font-text); padding: 8px 14px; margin-right: 8px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--paper, #fff); cursor: pointer; }
