:root{--primary: #0b6b4f;--primary-dark: #084a37;--primary-tint: #e4f1ea;--background: #f7f3ea;--surface: #ffffff;--surface-alt: #fbf9f3;--text: #20241d;--text-muted: #63684f;--text-faint: #9a9c84;--border: #e4dcc6;--border-strong: #d3c7a5;--accent: #b96a22;--accent-tint: #f5e7d2;--danger: #a8382c;--danger-tint: #f5e1dd;--warning: #93690b;--warning-tint: #f7edd3;--success: #1e7a4c;--success-tint: #e1f1e7;--shadow-sm: 0 1px 2px rgba(32, 36, 29, .07);--shadow-md: 0 8px 24px rgba(32, 36, 29, .1);--radius-lg: 20px;--radius-md: 12px;--radius-sm: 8px;--font-display: "Lexend", system-ui, sans-serif;--font-body: "Karla", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", monospace;color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--background);color:var(--text)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700}a{color:inherit}button{font-family:inherit;cursor:pointer}input,select{font-family:inherit;font-size:14px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px}th{color:var(--text-muted);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.03em}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.btn{background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);padding:10px 18px;font-size:14px;font-family:var(--font-body);font-weight:700}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong)}.input{border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;width:100%;background:var(--surface-alt);color:var(--text)}.label{font-size:12px;font-weight:700;color:var(--text-muted);display:block;margin-bottom:4px}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.02em;background:var(--primary-tint);color:var(--primary-dark)}.badge--ok{background:var(--success-tint);color:var(--success)}.badge--warn{background:var(--warning-tint);color:var(--warning)}.badge--danger{background:var(--danger-tint);color:var(--danger)}.badge--muted{background:var(--surface-alt);color:var(--text-muted);border:1px solid var(--border)}.badge--tint{background:var(--primary-tint);color:var(--primary-dark)}
