:root { --ink: #10233b; --accent: #166d64; }
.tabs { display:flex; flex-wrap:wrap; gap:24px; padding:0 0 20px; border-bottom:1px solid var(--line); margin-bottom:32px; }
.tabs a { text-decoration:none; font-weight:600; }
.tabs a { padding:8px 4px; border-bottom:3px solid transparent; }
.tabs a[aria-current] { border-bottom-color:var(--accent); color:var(--ink); }
.product-hero { gap:48px; padding:40px 0 64px; }
.product-hero .intro h1 { font-size:clamp(34px,4.2vw,56px); letter-spacing:-1.8px; }
.workflow-card { border-top:4px solid var(--accent); }
.workflow-card .public-steps li::marker { color:var(--accent); font-weight:750; }
.evidence-principle { padding:32px 0 40px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-bottom:40px; }
.evidence-principle h2 { font-size:clamp(28px,3vw,40px); letter-spacing:-1px; }
@media(max-width:800px) { .product-hero { padding:8px 0 32px; gap:24px; } }
.split { display:grid; grid-template-columns:1.1fr 1fr; gap:28px; align-items:start; }
.section { margin-top:24px; }
.section:first-child { margin-top:0; }
.metric { display:flex; flex-direction:column; text-decoration:none; gap:10px; }
.metric strong { font-size:42px; font-weight:600; }
.excerpt { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; line-height:1.7; }
code { overflow-wrap:anywhere; font-size:12px; }
summary { cursor:pointer; font-weight:600; }
details[open] > summary { margin-bottom:20px; }
.table-wrap { overflow-x:auto; background:white; border:1px solid var(--line); border-radius:12px; margin-top:24px; }
table { border-collapse:collapse; width:100%; text-align:left; }
td,th { padding:15px 18px; border-bottom:1px solid var(--line); vertical-align:top; }
th { background:#ebf1ee; font-size:13px; }
td { font-size:14px; overflow-wrap:anywhere; }
td:first-child { width:60px; }
input[type=checkbox] { width:auto; }
input[type=hidden] { display:none; }
textarea { min-height:180px; }
.danger { background:#943737; border-color:#943737; }
dt { color:var(--muted); font-size:13px; }
dd { margin:0 0 14px; }
@media(max-width:800px) { .split { grid-template-columns:1fr; } .tabs { gap:16px; } }
.public-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:20px; }
.public-steps { padding-left:24px; }.public-steps li { margin:18px 0; padding-left:4px; }
.public-cta { display:inline-block; background:var(--accent); color:white; padding:12px 20px; border-radius:8px; text-decoration:none; font-weight:600; }
.public-cta:hover { background:#104b3d; }.topbar nav { flex-wrap:wrap; gap:12px; }
/* Visible boundaries and keyboard focus against both white and paper surfaces. */
input, select, textarea { border-color:#64796e; }
input:focus, textarea:focus, select:focus, a:focus-visible, button:focus-visible,
summary:focus-visible, main:focus-visible { outline:3px solid #166d64; outline-offset:3px; }
.subtle { border-color:#64796e; }
.container, .card, .topbar nav { min-width:0; }
.container, footer { overflow-wrap:anywhere; }
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; }
}
