/* EBIGRAPH working identity v0.1 */
@font-face { font-family: "Liberation Sans"; src: url("fonts/LiberationSans-Regular.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Liberation Sans"; src: url("fonts/LiberationSans-Bold.woff") format("woff"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "DejaVu Sans Mono"; src: url("fonts/DejaVuSansMono.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
:root {
 --ebi-font-body: "Liberation Sans", Arial, sans-serif;
 --ebi-font-display: "Liberation Sans", Arial, sans-serif;
 --ebi-font-meta: "DejaVu Sans Mono", ui-monospace, monospace;
 --ebi-space-1: 4px; --ebi-space-2: 8px; --ebi-space-3: 12px; --ebi-space-4: 16px;
 --ebi-space-6: 24px; --ebi-space-8: 32px; --ebi-space-12: 48px; --ebi-space-16: 64px;
 --ebi-radius: 8px;
 --ebi-bg: #F5F7F9;
 --ebi-surface: #FFFFFF;
 --ebi-text: #132A3C;
 --ebi-muted: #576C7B;
 --ebi-border: #D7E0E7;
 --ebi-control-border: #667D8B;
 --ebi-brand: #00758B;
 --ebi-focus: #00758B;
 --ebi-claim-fg: #805000;
 --ebi-claim-bg: #FFF0D3;
 --ebi-review-fg: #435B70;
 --ebi-review-bg: #E9EFF5;
 --ebi-verified-fg: #145E45;
 --ebi-verified-bg: #E4F4EC;
 --ebi-disputed-fg: #9F2E37;
 --ebi-disputed-bg: #FBE9EB;
 --ebi-sector-space: #4268A1;
 --ebi-sector-ai: #7252A3;
 --ebi-sector-chips: #8A639D;
 --ebi-sector-robotics: #AA563C;
 --ebi-sector-health: #8F536A;
 --ebi-sector-bio: #287E7B;
 --ebi-sector-energy: #4C7346;
 --ebi-sector-quantum: #5360A8;
 --ebi-sector-fusion: #94620E;
 --ebi-sector-materials: #596D7A;
 --ebi-sector-society: #6A655B;
}
[data-ebi-theme="dark"] {
 --ebi-bg: #132A3C;
 --ebi-surface: #1C3549;
 --ebi-text: #E7F0F6;
 --ebi-muted: #B0C2CE;
 --ebi-border: #3B5265;
 --ebi-control-border: #90A7B7;
 --ebi-brand: #79D7E5;
 --ebi-focus: #79D7E5;
 --ebi-claim-fg: #F2C76F;
 --ebi-claim-bg: #382D18;
 --ebi-review-fg: #BBC9D8;
 --ebi-review-bg: #233345;
 --ebi-verified-fg: #89DFC2;
 --ebi-verified-bg: #143A31;
 --ebi-disputed-fg: #FFB9BE;
 --ebi-disputed-bg: #4A222B;
 --ebi-sector-space: #8FB4EE;
 --ebi-sector-ai: #BCA0ED;
 --ebi-sector-chips: #CBABD9;
 --ebi-sector-robotics: #EEAA8F;
 --ebi-sector-health: #DBA0B7;
 --ebi-sector-bio: #81CBC6;
 --ebi-sector-energy: #A7CD9F;
 --ebi-sector-quantum: #A5B1F1;
 --ebi-sector-fusion: #E5BA72;
 --ebi-sector-materials: #ACBFCB;
 --ebi-sector-society: #C8C2B3;
}
.ebi-shell { background: var(--ebi-bg); color: var(--ebi-text); font: 400 1rem/1.5 var(--ebi-font-body); }
.ebi-shell h1 { font: 700 clamp(2rem, 4vw, 3.5rem)/1.08 var(--ebi-font-display); letter-spacing: -.02em; }
.ebi-shell h2 { font: 700 clamp(1.75rem, 3vw, 2.25rem)/1.15 var(--ebi-font-display); }
.ebi-shell h3 { font: 700 1.25rem/1.25 var(--ebi-font-display); }
.ebi-muted { color: var(--ebi-muted); }
.ebi-meta { font: 400 .75rem/1.5 var(--ebi-font-meta); }
.ebi-card { background: var(--ebi-surface); border: 1px solid var(--ebi-border); border-radius: var(--ebi-radius); padding: var(--ebi-space-6); }
.ebi-shell a { color: var(--ebi-brand); text-decoration: underline; text-underline-offset: .15em; }
.ebi-shell :focus-visible { outline: 2px solid var(--ebi-focus); outline-offset: 4px; }
.ebi-badge { display: inline-flex; align-items: center; gap: .4rem; border-radius: 4px; padding: .35rem .6rem; font: 700 .875rem/1.25 var(--ebi-font-body); }
.ebi-badge svg { flex: 0 0 14px; width: 14px; height: 14px; }
.ebi-badge--claim { color: var(--ebi-claim-fg); background: var(--ebi-claim-bg); }
.ebi-badge--review { color: var(--ebi-review-fg); background: var(--ebi-review-bg); }
.ebi-badge--verified { color: var(--ebi-verified-fg); background: var(--ebi-verified-bg); }
.ebi-badge--disputed { color: var(--ebi-disputed-fg); background: var(--ebi-disputed-bg); }
.ebi-badge--held { color: var(--ebi-claim-fg); background: var(--ebi-claim-bg); }
.ebi-badge--retracted { color: var(--ebi-muted); background: var(--ebi-bg); }
.ebi-sector-rule { border-inline-start: 4px solid var(--ebi-sector-accent); padding-inline-start: 1rem; }
/* Sector color is decorative classification; always pair it with a sector label. */
@media (prefers-reduced-motion: reduce) { .ebi-shell *, .ebi-shell *::before, .ebi-shell *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
