:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #15201d; background: #f6f7f2; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: linear-gradient(135deg, #f7f8f3, #e8efe8); }
body.high-contrast { background: #101715; color: #f4fff9; }
button, a { font: inherit; }
.topbar { width: min(1180px, calc(100% - 32px)); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0; }
.brand { display: flex; gap: 10px; align-items: center; font-weight: 900; }
.mark { width: 42px; height: 42px; border-radius: 8px; background: #245f57; color: white; display: grid; place-items: center; }
nav { display: flex; gap: 12px; flex-wrap: wrap; }
a { color: inherit; text-decoration: none; font-weight: 750; }
.ghost, .secondary { background: transparent; color: inherit; border: 1px solid #b9c8bd; }
button, .button { border: 0; border-radius: 8px; padding: 12px 15px; min-height: 44px; background: #245f57; color: white; font-weight: 850; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.hero { width: min(1180px, calc(100% - 32px)); margin: 0 auto; display: grid; grid-template-columns: 1fr 320px; gap: 24px; align-items: end; padding: 44px 0 30px; }
.eyebrow { color: #60746b; font-weight: 850; }
h1 { font-size: clamp(2rem, 5vw, 4.2rem); line-height: 1; margin: 0; letter-spacing: 0; }
p { line-height: 1.65; color: #4f5d57; }
.toolbar { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; }
main { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 12px 0 36px; }
.panel, .card, .metric { background: rgba(255,255,255,.9); border: 1px solid #d7dfd7; border-radius: 8px; box-shadow: 0 16px 45px rgba(28,45,37,.08); }
.panel { padding: 22px; }
.grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.grid.two { grid-template-columns: 1.2fr .8fr; margin-top: 24px; }
.card { padding: 16px; min-height: 130px; display: grid; align-content: space-between; }
.card strong { color: #245f57; }
.metric { padding: 14px; margin: 8px 0; display: grid; gap: 4px; }
.metric strong { font-size: 1.6rem; }
.lab-surface { min-height: 300px; border-radius: 8px; border: 1px dashed #9fb7aa; background: repeating-linear-gradient(135deg, #f0f5ef 0 18px, #e8efe8 18px 36px); padding: 18px; display: grid; gap: 12px; }
.pill { display: inline-flex; padding: 8px 10px; border-radius: 999px; background: #dfeae3; margin: 4px; font-weight: 800; }
footer { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 24px 0; color: #60746b; }
body.high-contrast p, body.high-contrast footer, body.high-contrast .eyebrow { color: #c9ddd4; }
body.high-contrast .panel, body.high-contrast .card, body.high-contrast .metric { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.18); box-shadow: none; }
body.high-contrast .lab-surface { background: rgba(255,255,255,.08); }
@media (max-width: 860px) { .topbar, .hero, .grid.two { grid-template-columns: 1fr; display: grid; } .grid { grid-template-columns: 1fr; } nav { order: 3; } }
