/* Legal pages shared stylesheet (CSP #224: extracted from pages.py _LEGAL_PAGE_STYLE). */
*{box-sizing:border-box}
html,body{margin:0;padding:0;min-height:100%;
  font-family:"Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,sans-serif;
  background:var(--bg-0);color:var(--text);-webkit-font-smoothing:antialiased}
:root{
  --bg-0:#1c1410;--bg-1:#261c14;--bg-2:#322519;
  --accent:#d4b896;--text:#f1e3c8;--text-dim:#b89a78;--text-faint:#8a7660;
}
.lp-wrap{max-width:720px;margin:0 auto;padding:2.5rem 1.5rem 4rem}
.lp-back{display:inline-block;margin-bottom:1.5rem;color:var(--text-dim);
  text-decoration:none;font-size:.875rem}
.lp-back:hover{color:var(--accent)}
h1{font-size:1.6rem;margin:0 0 .25rem;color:var(--accent)}
.lp-meta{font-size:.8rem;color:var(--text-faint);margin-bottom:2rem}
h2{font-size:1.1rem;margin:2rem 0 .5rem;color:var(--text-dim)}
p,li{font-size:.925rem;line-height:1.65;color:var(--text)}
ul{padding-left:1.25rem}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
hr{border:none;border-top:1px solid var(--bg-2);margin:2rem 0}

/* Table styles: extracted from inline style= attrs on legal page tables. */
.lp-table{width:100%;border-collapse:collapse;font-size:.9rem;margin:.5rem 0 1rem}
.lp-table thead tr{border-bottom:1px solid var(--bg-2);text-align:left}
.lp-table tbody tr{border-bottom:1px solid var(--bg-2)}
.lp-table th,.lp-table td{padding:.4rem .5rem}
.lp-small{font-size:.78rem;color:var(--text-faint)}
.lp-caption{font-size:.8rem;color:var(--text-faint)}
.lp-center{text-align:center}

/* Pricing-page specific styles (extracted from _PRICING_HTML <style> block). */
.pr-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:1rem;margin:1.5rem 0 2rem}
.pr-tier{border:1px solid var(--bg-2);border-radius:.75rem;padding:1.25rem;
  background:var(--bg-1);display:flex;flex-direction:column}
.pr-tier.featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.pr-name{font-size:1.15rem;color:var(--accent);margin:0 0 .25rem;font-weight:600}
.pr-price{font-size:1.5rem;color:var(--text);margin:.25rem 0}
.pr-price small{font-size:.8rem;color:var(--text-faint);font-weight:400}
.pr-annual{font-size:.8rem;color:var(--text-dim);margin:0 0 .75rem}
.pr-tier ul{margin:.5rem 0 0;padding-left:1.1rem}
.pr-tier li{font-size:.85rem;line-height:1.5}
.pr-cta{display:inline-block;margin:1.5rem 0 0;padding:.75rem 1.5rem;
  background:var(--accent);color:var(--bg-0);border-radius:.5rem;
  font-weight:600;text-decoration:none}
.pr-cta:hover{filter:brightness(1.1);text-decoration:none}
.pr-matrix{width:100%;border-collapse:collapse;margin:1rem 0 2rem;font-size:.875rem}
.pr-matrix th,.pr-matrix td{padding:.5rem .75rem;border-bottom:1px solid var(--bg-2);
  text-align:left;vertical-align:top}
.pr-matrix th{color:var(--text-dim);font-weight:600}
.pr-matrix th:first-child{width:38%}
.pr-matrix td.pr-check{color:var(--accent)}
