/* Shared compatibility primitives for public information and stored reports. */
.container{width:min(100%,1384px);padding-inline:var(--gutter);margin-inline:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:600;line-height:1.4;cursor:pointer}
.btn--primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.btn--primary:hover{background:var(--accent-hover)}.btn--secondary{background:transparent;color:var(--ink)}
.btn--sm{min-height:44px;padding:10px 16px;font-size:14px}.btn--full{width:100%}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;min-width:0}
.pillar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:24px}
.status-pill{display:inline-flex;gap:8px;align-items:center;padding:4px 10px;border:1px solid currentColor;border-radius:999px;font-size:12px;line-height:1.5}
.status-pill--observed{color:var(--spruce)}.status-pill--unavailable,.status-pill--blocked{color:var(--accent)}.status-pill--not-checked{color:var(--muted)}
.code-block{padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--soft);overflow:auto}
.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;margin-bottom:8px;font-weight:600}
.form-input,.form-textarea,.form-select{width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}
.alert{border:1px solid var(--line);border-radius:8px;padding:20px}.alert--error{border-color:var(--accent)}
.page-intro{padding-block:64px 32px}.page-intro h1{font:400 clamp(36px,5vw,56px)/1.12 var(--serif)}
.readable-content,.legal-content{max-width:75ch;margin-inline:auto}.readable-content h2,.legal-content h2{margin-block:32px 16px}
/* Informational routes only; preserve the homepage's split editorial composition. */
.section>.wrap:not(.split)>.editorial-copy{max-width:72ch;color:var(--ink)}
.section>.wrap:not(.split)>.editorial-copy>section{margin-bottom:32px}
.section>.wrap:not(.split)>.editorial-copy h2{font:400 clamp(25px,3vw,32px)/1.2 var(--serif);margin-block:32px 16px}
.section>.wrap:not(.split)>.editorial-copy p,.section>.wrap:not(.split)>.editorial-copy li{color:var(--muted)}
.section>.wrap:not(.split)>.editorial-copy ul{padding-left:24px}.section>.wrap:not(.split)>.editorial-copy li+li{margin-top:8px}
