/* public-boards.css — logged-out "repository of calculations" shell. Uses the
   same tokens as index.html (:root) so it matches the signed-in app. */
#public{min-height:100svh;background:var(--bg,#0a0c10);color:var(--text,#eef2f8);font-family:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif}
#public.hidden{display:none}
.pb-root{max-width:1280px;margin:0 auto;padding:18px 18px 40px}
.pb-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 14px;border-bottom:1px solid var(--line,rgba(148,163,184,.14))}
.pb-brand{font-family:"Barlow Condensed","Barlow",sans-serif;font-weight:800;letter-spacing:.06em;font-size:26px;display:flex;align-items:baseline;gap:6px}
.pb-brand .the{color:var(--dim,#8e97a6)}.pb-brand .edge{color:var(--accent,#ef4444)}
.pb-brand em{font-style:normal;font-family:"Barlow",sans-serif;font-weight:600;font-size:12px;letter-spacing:.04em;color:var(--dim,#8e97a6);margin-left:6px}
.pb-actions{display:flex;gap:8px}
.pb-actions button{font:inherit;font-weight:700;border-radius:10px;padding:9px 14px;cursor:pointer;border:1px solid var(--line,rgba(148,163,184,.14))}
.pb-refresh{background:var(--panel,#12151c);color:var(--text,#eef2f8)}
.pb-signin{background:var(--accent,#ef4444);color:#fff;border-color:transparent}
.pb-intro{padding:18px 0 8px}
.pb-intro h1{font-family:"Barlow Condensed","Barlow",sans-serif;font-weight:800;font-size:34px;line-height:1.05;margin:0 0 8px}
.pb-intro p{margin:0;color:var(--dim,#8e97a6);max-width:900px;font-size:15px;line-height:1.45}
.pb-intro p b{color:var(--text,#eef2f8)}
.pb-fresh{margin-top:10px;font-size:13px;color:var(--lime,#34d27a);font-weight:600}
.pb-chips{display:flex;gap:8px;overflow-x:auto;padding:12px 0 6px;scrollbar-width:none}
.pb-chips::-webkit-scrollbar{display:none}
.pb-chip{flex:0 0 auto;font:inherit;font-weight:700;font-size:13px;letter-spacing:.03em;padding:8px 14px;border-radius:999px;border:1px solid var(--line,rgba(148,163,184,.14));background:var(--panel,#12151c);color:var(--dim,#8e97a6);cursor:pointer}
.pb-chip.live{color:var(--text,#eef2f8)}
.pb-chip.live::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime,#34d27a);margin-right:7px;vertical-align:middle}
.pb-chip.on{background:var(--accent,#ef4444);color:#fff;border-color:transparent}
.pb-tabs{display:flex;gap:6px;padding:6px 0 12px}
.pb-tab{font:inherit;font-weight:700;font-size:13px;padding:8px 12px;border-radius:10px;border:1px solid var(--line,rgba(148,163,184,.14));background:transparent;color:var(--dim,#8e97a6);cursor:pointer}
.pb-tab.on{background:var(--panel-3,#1e232e);color:var(--text,#eef2f8)}
.pb-scroll{overflow-x:auto;border:1px solid var(--line,rgba(148,163,184,.14));border-radius:14px;background:var(--panel,#12151c)}
.pb-table{width:100%;border-collapse:collapse;min-width:920px;font-size:14px}
.pb-table th{position:sticky;top:0;background:var(--panel2,#0f1218);text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim,#8e97a6);padding:10px 12px;border-bottom:1px solid var(--line,rgba(148,163,184,.14));white-space:nowrap}
.pb-table td{padding:9px 12px;border-bottom:1px solid rgba(148,163,184,.08);vertical-align:top;white-space:nowrap}
.pb-table tr:hover td{background:rgba(255,255,255,.02)}
.pb-rank{color:var(--dim,#8e97a6);font-variant-numeric:tabular-nums;width:40px}
.pb-event b{display:block;font-weight:700}
.pb-event small,.pb-num small{display:block;color:var(--dim,#8e97a6);font-size:11px;margin-top:2px;white-space:nowrap}
.pb-sel{font-weight:600}
.pb-num,.pb-table th.pb-num{text-align:right;font-variant-numeric:tabular-nums}
.pb-num.pos{color:var(--lime,#34d27a);font-weight:700}
.pb-num.neg{color:var(--red,#f0566b)}
.pb-grade{display:inline-block;min-width:34px;text-align:center;padding:3px 8px;border-radius:8px;background:var(--violet-soft,rgba(139,92,246,.16));color:#c4b5fd;font-weight:800;font-size:12px}
.pb-grade.dim{background:transparent;color:var(--muted-2,#656f7e);font-weight:600;border:1px dashed var(--line,rgba(148,163,184,.14))}
.pb-empty{padding:34px 18px;text-align:center;border:1px dashed var(--line,rgba(148,163,184,.14));border-radius:14px;background:var(--panel,#12151c)}
.pb-empty b{display:block;font-size:18px;margin-bottom:6px}
.pb-empty span{color:var(--dim,#8e97a6)}
.pb-foot{padding:10px 4px;color:var(--dim,#8e97a6);font-size:12px}
.pb-legal{margin-top:26px;padding-top:14px;border-top:1px solid var(--line,rgba(148,163,184,.14));color:var(--muted-2,#656f7e);font-size:12px;line-height:1.5}
.pb-legal a{color:var(--dim,#8e97a6)}
@media (max-width:720px){
  .pb-root{padding:12px 12px 32px}
  .pb-intro h1{font-size:26px}
  .pb-brand{font-size:22px}.pb-brand em{display:none}
  .pb-table{min-width:820px;font-size:13px}
}

/* ---------- access layer: landing, paywall, pricing (2026-09-04) ---------- */
.ea-root{max-width:1180px;margin:0 auto;padding:18px 18px 40px;color:var(--text,#eef2f8)}
.ea-root.ea-inapp{padding:0 0 24px}
.ea-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 14px;border-bottom:1px solid var(--line,rgba(148,163,184,.14))}
.ea-brand{font-family:"Barlow Condensed","Barlow",sans-serif;font-weight:800;letter-spacing:.06em;font-size:26px;display:flex;align-items:baseline;gap:6px}
.ea-brand .the{color:var(--dim,#8e97a6)}.ea-brand .edge{color:var(--accent,#ef4444)}
.ea-brand em{font-style:normal;font-family:"Barlow",sans-serif;font-weight:600;font-size:12px;color:var(--dim,#8e97a6);margin-left:6px}
.ea-actions{display:flex;gap:8px}
.ea-btn{font:inherit;font-weight:700;border-radius:10px;padding:10px 16px;cursor:pointer;border:1px solid var(--line,rgba(148,163,184,.14));background:var(--panel,#12151c);color:var(--text,#eef2f8)}
.ea-btn.primary{background:var(--accent,#ef4444);border-color:transparent;color:#fff}
.ea-btn.ghost{background:transparent}
.ea-btn.big{padding:14px 22px;font-size:16px}
.ea-btn:disabled{opacity:.6;cursor:default}
.ea-hero{padding:36px 0 18px;max-width:860px}
.ea-hero.compact{padding:18px 0 8px}
.ea-hero h1{font-family:"Barlow Condensed","Barlow",sans-serif;font-weight:800;font-size:44px;line-height:1.02;margin:0 0 12px}
.ea-hero.compact h1{font-size:32px}
.ea-hero p{margin:0;color:var(--dim,#8e97a6);font-size:16px;line-height:1.5}
.ea-hero-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:18px 0 8px;color:var(--dim,#8e97a6);font-size:13px}
.ea-trust{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px;color:var(--text,#eef2f8);font-size:14px}
.ea-trust li::before{content:"✓";color:var(--lime,#34d27a);font-weight:800;margin-right:8px}
.ea-coverage{margin:22px 0 8px;padding:16px;border:1px solid var(--line,rgba(148,163,184,.14));border-radius:14px;background:var(--panel,#12151c)}
.ea-cov-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ea-cov-head h2{font-family:"Barlow Condensed","Barlow",sans-serif;font-size:22px;margin:0}
.ea-cov-head span{color:var(--lime,#34d27a);font-weight:600;font-size:13px}
.ea-cov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:12px}
.ea-cov{padding:10px 12px;border-radius:10px;background:var(--panel2,#0f1218);border:1px solid var(--line,rgba(148,163,184,.14))}
.ea-cov b{display:block;font-size:14px}.ea-cov span{display:block;color:var(--dim,#8e97a6);font-size:12px;margin-top:2px}
.ea-cov.live{border-color:rgba(52,210,122,.4)}.ea-cov.live span{color:var(--lime,#34d27a)}
.ea-cov-note{margin:12px 0 0;color:var(--muted-2,#656f7e);font-size:12px}
.ea-pricing{margin:26px 0 10px}
.ea-pricing-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ea-pricing-head h2{font-family:"Barlow Condensed","Barlow",sans-serif;font-size:30px;margin:0}
.ea-toggle{display:inline-flex;border:1px solid var(--line,rgba(148,163,184,.14));border-radius:999px;padding:3px;background:var(--panel,#12151c)}
.ea-toggle button{font:inherit;font-weight:700;font-size:13px;border:0;background:transparent;color:var(--dim,#8e97a6);padding:8px 14px;border-radius:999px;cursor:pointer}
.ea-toggle button.on{background:var(--panel-3,#1e232e);color:var(--text,#eef2f8)}
.ea-toggle em{font-style:normal;color:var(--lime,#34d27a);font-size:11px;margin-left:6px}
.ea-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:16px}
.ea-plan{position:relative;padding:22px;border-radius:16px;border:1px solid var(--line,rgba(148,163,184,.14));background:var(--panel,#12151c);display:flex;flex-direction:column}
.ea-plan.featured{border-color:var(--accent,#ef4444);box-shadow:0 0 0 1px var(--accent-soft,rgba(239,68,68,.14)),var(--shadow,none)}
.ea-plan.current{border-color:rgba(52,210,122,.5)}
.ea-plan-badge{position:absolute;top:-11px;left:18px;background:var(--accent,#ef4444);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.ea-plan h3{font-family:"Barlow Condensed","Barlow",sans-serif;font-size:26px;margin:4px 0 2px}
.ea-plan-tag{margin:0;color:var(--dim,#8e97a6);font-size:13px}
.ea-plan-price{display:flex;align-items:baseline;gap:4px;margin:14px 0 2px}
.ea-plan-price b{font-family:"Barlow Condensed","Barlow",sans-serif;font-size:44px;line-height:1}
.ea-plan-price span{color:var(--dim,#8e97a6)}
.ea-plan-sub{color:var(--dim,#8e97a6);font-size:12px;margin-bottom:12px}
.ea-plan ul{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:8px;font-size:14px;flex:1}
.ea-plan li::before{content:"•";color:var(--lime,#34d27a);margin-right:8px;font-weight:800}
.ea-plan-current{text-align:center;color:var(--lime,#34d27a);font-weight:700;padding:10px}
.ea-pricing-foot{color:var(--muted-2,#656f7e);font-size:12px;margin:12px 0 0}
.ea-msg{min-height:20px;margin-top:8px;font-size:13px;font-weight:600}
.ea-msg[data-tone="warn"]{color:var(--amber,#f5b544)}.ea-msg[data-tone="info"]{color:var(--lime,#34d27a)}
.ea-faq{margin:28px 0 8px}
.ea-faq h2{font-family:"Barlow Condensed","Barlow",sans-serif;font-size:26px;margin:0 0 8px}
.ea-faq details{border-bottom:1px solid var(--line,rgba(148,163,184,.14));padding:10px 0}
.ea-faq summary{cursor:pointer;font-weight:700}
.ea-faq p{color:var(--dim,#8e97a6);margin:8px 0 0;font-size:14px;line-height:1.5}
.ea-legal{margin-top:26px;padding-top:14px;border-top:1px solid var(--line,rgba(148,163,184,.14));color:var(--muted-2,#656f7e);font-size:12px;line-height:1.5}
.ea-legal a{color:var(--dim,#8e97a6)}
.pb-inline{font:inherit;font-weight:700;background:transparent;border:0;color:var(--lime,#34d27a);cursor:pointer;padding:0}
@media (max-width:720px){.ea-root{padding:12px 12px 32px}.ea-hero h1{font-size:32px}.ea-brand em{display:none}}
