/* Сторінка входу на токенах і класах CRM (style.css: --f-*, .au-*) — лише розкладка зверху. */
body.lp { display: block; min-height: 100%; height: auto; font-size: 14px; }
.lp-shell { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); min-height: 100vh; }
.lp-pitch { display: flex; flex-direction: column; gap: 26px; padding: 52px clamp(28px, 5vw, 80px); background: rgba(255,255,255,.02); box-shadow: inset -1px 0 0 var(--f-hair); }
.lp-pitch .au-brand { margin: 0; }
.lp-h { margin: 18px 0 0; font-size: clamp(30px, 3.1vw, 44px); line-height: 1.1; font-weight: 700; letter-spacing: -.02em; }
.lp-h span { background: var(--g-cta); -webkit-background-clip: text; background-clip: text; color: transparent; }
.lp-lead { margin: 0; max-width: 560px; color: var(--f-muted); font-size: 16px; line-height: 1.55; }
.lp-feats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; max-width: 640px; }
.lp-f { display: flex; gap: 12px; align-items: flex-start; padding: 14px; border-radius: 18px; background: var(--f-raised); box-shadow: var(--sh-hl); }
.lp-f.wide { grid-column: 1 / -1; }
.lp-f b { display: block; font-size: 14px; font-weight: 600; }
.lp-f small { color: var(--f-muted); font-size: 12.5px; line-height: 1.45; }
.lp-ic { flex: none; width: 34px; height: 34px; border-radius: 11px; display: grid; place-items: center; background: var(--f-overlay); color: var(--f-soft); }
.lp-ic svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.lp-k { font-size: 11.5px; text-transform: uppercase; letter-spacing: .08em; color: var(--f-subtle); font-weight: 600; margin-bottom: 10px; }
.lp-how ol { list-style: none; counter-reset: s; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; max-width: 640px; }
.lp-how li { counter-increment: s; }
.lp-how li::before { content: counter(s); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--f-overlay); color: var(--f-soft); font-weight: 700; font-size: 12px; margin-bottom: 8px; }
.lp-how b { display: block; font-size: 14px; font-weight: 600; }
.lp-how small { color: var(--f-muted); font-size: 12.5px; }
.lp-fine { margin: auto 0 0; color: var(--f-subtle); font-size: 12.5px; max-width: 560px; }
.lp-main { display: flex; align-items: center; justify-content: center; padding: 40px 24px; }
.lp-main .au-card { max-width: 480px; }
.au-pw { position: relative; display: block; }
.au-pw input { width: 100%; box-sizing: border-box; padding-right: 92px; }
.au-eye { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); padding: 6px 12px; font-size: 12px; background: var(--f-overlay); box-shadow: none; }
.au-rules { display: flex; gap: 14px; flex-wrap: wrap; margin-top: -6px; font-size: 12px; color: var(--f-subtle); }
.au-rules span::before { content: '○ '; } .au-rules span.ok { color: var(--f-ok); } .au-rules span.ok::before { content: '✓ '; }
.au-alt { text-align: center; color: var(--f-muted); font-size: 13.5px; margin: 4px 0 0; }
.au-kick { font-size: 11.5px; text-transform: uppercase; letter-spacing: .08em; color: var(--f-subtle); font-weight: 600; margin-bottom: -8px; }
.au-opts { display: grid; gap: 10px; }
.au-opt { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border-radius: 16px; background: var(--f-raised); box-shadow: var(--sh-hl); cursor: pointer; }
.au-opt:has(input:checked) { box-shadow: inset 0 0 0 1.5px var(--f-primary); background: var(--f-overlay); }
.au-opt input { accent-color: var(--f-primary); margin-top: 3px; }
.au-opt b { display: block; font-weight: 600; } .au-opt small { color: var(--f-muted); font-size: 12.5px; line-height: 1.45; }
.au-note { padding: 14px 16px; border-radius: 16px; background: var(--f-raised); box-shadow: var(--sh-hl); color: var(--f-muted); font-size: 13px; line-height: 1.5; }
.au-note b { color: var(--f-text); font-weight: 600; }
#gbtn { display: flex; justify-content: center; min-height: 44px; }
.lp-m { display: none; }
@media (max-width: 960px) {
  .lp-shell { grid-template-columns: 1fr; }
  .lp-main { order: -1; display: block; padding: 28px 16px 36px; }
  .lp-main .au-card { margin: 0 auto; }
  .lp-pitch { padding: 36px 16px; box-shadow: inset 0 1px 0 var(--f-hair); }
  .lp-feats, .lp-how ol { grid-template-columns: 1fr; }
}
.au-form { display: flex; flex-direction: column; gap: 14px; }
.au-form .au-btn { width: 100%; }
.au-f input:not([type=radio]) { width: 100%; box-sizing: border-box; }
.au-sub b { color: var(--f-text); font-weight: 600; }
@media (min-width: 961px) { .lp-main .au-brand { display: none; } }
.au-kick { text-transform: none; letter-spacing: .02em; font-size: 12.5px; }
.au-opt, .au-note { border: 1px solid var(--f-line2); box-shadow: none; }
.au-opt:has(input:checked) { border-color: var(--f-primary); box-shadow: none; }
