/* Learnaroo Policies — front-end styles (scoped). Fonts (Fredoka/Nunito) come from the active theme. */

.lh-policy-shell{--ink:#1A1A2E;--muted:#4A4A6A;--line:#E5E7EB;--accent:#6B2FA0;--accent2:#C2185B;
  --accent-soft:#F3E5F5;--note:#FFF6E9;--note-line:#EAC54F;
  display:flex;gap:28px;align-items:flex-start;max-width:1200px;margin:0 auto;padding:24px 16px}

/* ---------- Sidebar ---------- */
.lh-sidebar{flex:0 0 250px;position:sticky;top:20px;font-family:'Nunito',sans-serif}
.lh-search{margin:0 0 16px}
.lh-search input{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:999px;
  font-size:15px;font-family:inherit;outline:none;background:#fff}
.lh-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.lh-ql{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px 8px;
  box-shadow:0 4px 12px rgba(26,26,46,.06)}
.lh-ql-head{margin:10px 12px 4px;font-family:'Fredoka','Nunito',sans-serif;font-size:12px;
  text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.lh-ql a{display:block;padding:8px 12px;border-radius:10px;color:var(--ink);text-decoration:none;
  font-size:14.5px;line-height:1.35}
.lh-ql a:hover{background:var(--accent-soft);color:var(--accent)}
.lh-ql a[aria-current="page"]{background:var(--accent-soft);color:var(--accent);font-weight:700}
.lh-ql a.lh-hide{display:none}
.lh-ql-note{font-size:13px;color:var(--muted);margin:14px 6px 0}
.lh-ql-note a{color:var(--accent2)}

/* ---------- Policy card ---------- */
.lh-policy{flex:1;min-width:0}
.lh-policy .wrap{background:#fff;border-radius:18px;overflow:hidden;
  box-shadow:0 1px 30px rgba(20,30,50,.07);color:var(--ink);
  font-family:'Nunito',sans-serif;line-height:1.62;font-size:17px}
.lh-policy header.doc{background:linear-gradient(135deg,#4A148C 0%,#6B2FA0 45%,#B5179E 80%,#E91E63 100%);
  color:#fff;padding:48px 48px 36px}
.lh-policy header.doc .eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;
  color:#F4CFE6;margin:0 0 12px;font-weight:700}
.lh-policy header.doc h1{margin:0;font-family:'Fredoka','Nunito',sans-serif;font-size:32px;
  line-height:1.2;font-weight:700;color:#fff}
.lh-policy header.doc p{margin:14px 0 0;color:#F0DCF4;font-size:16px;max-width:70ch}
.lh-policy header.doc .meta{margin-top:18px;font-size:14px;color:#EEDCF4;display:flex;flex-wrap:wrap;gap:6px 26px}
.lh-policy header.doc .meta b{color:#fff;font-weight:700}
.lh-policy main{padding:40px 48px 8px}
.lh-policy .lead{font-size:18px;color:var(--muted)}
.lh-policy h2.sec{font-family:'Fredoka','Nunito',sans-serif;font-size:21px;margin:44px 0 6px;
  padding-top:12px;font-weight:700;color:var(--accent);scroll-margin-top:20px}
.lh-policy h2.sec .num{color:#9B4DFF;font-weight:700;margin-right:10px}
.lh-policy h3{font-family:'Fredoka','Nunito',sans-serif;font-size:17px;margin:24px 0 4px;font-weight:600}
.lh-policy p{margin:12px 0}
.lh-policy ul,.lh-policy ol.body{margin:12px 0;padding-left:24px}
.lh-policy li{margin:7px 0}
.lh-policy a{color:var(--accent2)}
.lh-policy table{border-collapse:collapse;width:100%;margin:18px 0;font-size:14.5px;
  border-radius:14px;overflow:hidden}
.lh-policy th,.lh-policy td{border:1px solid #EADFF0;padding:10px 14px;text-align:left;vertical-align:top}
.lh-policy th{background:var(--accent-soft);color:var(--accent);font-weight:700}
.lh-policy .note{background:var(--note);border:1px solid var(--note-line);border-radius:14px;
  padding:16px 20px;font-size:14.5px;color:#5d4d1f;margin:0 0 30px}
.lh-policy .toc{background:var(--accent-soft);border-radius:16px;padding:20px 26px;margin:0 0 36px}
.lh-policy .toc h2{margin:0 0 10px;font-family:'Fredoka','Nunito',sans-serif;font-size:13px;
  text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.lh-policy .toc ol{margin:0;padding-left:22px;columns:2;column-gap:34px;font-size:15px}
.lh-policy .toc li{margin:5px 0;break-inside:avoid}
.lh-policy .toc a{color:var(--ink);text-decoration:none}
.lh-policy .toc a:hover{color:var(--accent2);text-decoration:underline}
.lh-policy .callout{border-left:4px solid var(--accent);background:var(--accent-soft);
  padding:14px 20px;border-radius:0 14px 14px 0;margin:20px 0}
.lh-policy .callout.blue{border-left-color:var(--accent);background:var(--accent-soft)}
.lh-policy code{background:var(--accent-soft);color:var(--accent);padding:1px 6px;border-radius:5px;
  font-size:13.5px;font-family:ui-monospace,Menlo,Consolas,monospace}
.lh-policy .divider{height:1px;background:var(--line);margin:38px 0}
.lh-policy footer.doc{padding:28px 48px 40px;color:var(--muted);font-size:14px}
.lh-policy .tag{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:999px}
.lh-policy .tag.ess{background:#E2F0E6;color:#1f6b3b}
.lh-policy .tag.opt{background:#FDE7D6;color:#9a5a1a}
/* legal hub cards */
.lh-policy .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lh-policy .card{border:1px solid var(--line);border-radius:16px;padding:20px 22px;
  text-decoration:none;color:inherit;display:block;transition:box-shadow .15s,border-color .15s}
.lh-policy .card:hover{border-color:#D6B8E8;box-shadow:0 8px 24px rgba(233,30,99,.15)}
.lh-policy .card h2{margin:0 0 6px;font-family:'Fredoka','Nunito',sans-serif;font-size:18px;color:var(--accent)}

/* Filled placeholder values render as normal text (was a red marker in the source). */
.lh-policy .ph{background:none;color:inherit;padding:0;font-weight:inherit;border-radius:0}
/* Unfilled values: subtle amber chip so a page never shows a blank or a raw token. */
.lh-policy .lh-tbc{background:#FFF3CD;color:#7a5b00;padding:1px 7px;border-radius:6px;
  font-size:.92em;font-weight:600}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .lh-policy-shell{flex-direction:column;gap:18px}
  .lh-sidebar{position:static;flex:1 1 auto;width:100%}
  .lh-policy header.doc,.lh-policy main,.lh-policy footer.doc{padding-left:24px;padding-right:24px}
  .lh-policy .toc ol{columns:1}
}
