/* Free books review + thanks — built from the anchor's components (form fields follow 01_BRAND_COLORS) */
.review-split{padding-top:24px}
.review-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:40px;align-items:start}
.rform{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:30px;display:grid;gap:18px}
.rform-title{font:600 19px var(--head);letter-spacing:-.02em}
.rform-err{border:1px solid var(--olive);background:var(--lime-soft);color:var(--olive);border-radius:12px;padding:12px 14px;font-weight:600;font-size:15px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.field{display:grid;gap:6px;border:0;min-width:0}
.field label,.field legend{font:600 14px var(--text);color:var(--ink)}
.field legend{margin-bottom:8px}
.field small{font-size:13px;color:var(--muted)}
.field .opt{font-weight:400;color:var(--muted)}
.rform input[type=text],.rform input[type=email],.rform input[type=url],.rform select,.rform textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font:400 16px var(--text);color:var(--ink);background:#fff}
.rform textarea{min-height:96px;resize:vertical}
.rform select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%230E0F0C' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") right 12px center/16px no-repeat;padding-right:36px}
.rform input:focus-visible,.rform select:focus-visible,.rform textarea:focus-visible{outline:3px solid var(--olive);outline-offset:1px;border-color:var(--olive)}
.rform input:user-invalid,.rform select:user-invalid{border-color:var(--olive);background:var(--lime-soft)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.chips-in{display:flex;flex-wrap:wrap;gap:8px}
.chip-in{position:relative;cursor:pointer}
.chip-in input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chip-in span{display:inline-flex;align-items:center;gap:6px;font:600 14px var(--head);letter-spacing:-.01em;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;transition:border-color .2s,background .2s}
.chip-in input:checked+span{border-color:var(--ink);background:var(--lime-soft)}
.chip-in input:checked+span:before{content:"✓";color:var(--olive);font-weight:700}
.chip-in input:focus-visible+span{outline:3px solid var(--olive);outline-offset:2px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--body);cursor:pointer}
.consent input{width:18px;height:18px;margin-top:2px;accent-color:var(--ink);flex:none}
.consent a{text-decoration:underline;text-underline-offset:3px}
.rform-btn{justify-content:center;width:100%}
.rform-note{display:flex;gap:10px;align-items:center;background:var(--lime-soft);border:1px solid #DCEFAE;border-radius:12px;padding:12px 14px;font-size:14px;color:var(--ink)}
.rform-note svg{color:var(--olive);flex:none}
.review-mock{margin:0;max-width:none;min-width:0}
.review-mock .float-l{display:none}

.rv{font-size:14px}
.rv thead th{font:500 13px var(--text);color:var(--muted)}
.rv tbody th{font-weight:600}
.rv td{color:var(--body)}
.st-chip{display:inline-block;font:600 12.5px var(--text);border-radius:6px;padding:4px 8px;white-space:nowrap}
.st-chip.todo{color:var(--olive);background:var(--lime-soft)}
.st-chip.ok{color:var(--pos);background:#fff;border:1px solid var(--pos)}
.rv-tot{border-top:2px solid var(--ink);margin-top:2px;padding-top:12px;display:grid;gap:6px;font:500 13px var(--text);color:var(--olive);font-variant-numeric:tabular-nums}
.rv-tot span{color:var(--muted)}
.pack-one{grid-template-columns:minmax(0,760px);justify-content:center}
.steps-3{grid-template-columns:repeat(3,1fr)}
.tag-ok .dot{background:var(--pos)}
.svc-2{grid-template-columns:repeat(2,1fr);margin-top:20px}
@media (max-width:1060px){.float-l{display:none}}
@media (max-width:1080px){.review-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:880px){.steps-3,.svc-2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){
  .rform{padding:20px}
  .field-row{grid-template-columns:minmax(0,1fr)}
  .rv thead{display:none}
  .rv tr{display:grid;grid-template-columns:minmax(0,1fr);padding:10px 0;border-bottom:1px dashed var(--line)}
  .rv th,.rv td{border:0!important;padding:2px 0!important}
}
.rform [aria-invalid=true]{border-color:var(--olive)!important;background:var(--lime-soft)!important}
.thanks-mock{max-width:720px;margin:40px auto 0}
.thanks-mock .pnl-flat{max-width:none}
.thanks-mock .bar b{background:var(--lime-soft);color:var(--olive)}

/* QA 13 Oct: channel chips reach a 44px tap target on phones */
.chip-in span{min-height:44px}
