:root{--brand:#0d7c5a;--info:#2563eb;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--warning:#b45309;--ai:#7c3aed;--error:#b42318;--text-primary:#171a1c;--text-secondary:#5f666d;--border:#e5e7e7;--page:#f7f8f7;--surface:#fff;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--type-page-size:32px;--type-page-line:40px;--type-section-size:24px;--type-section-line:32px;--type-card-size:18px;--type-card-line:26px;--type-body-size:16px;--type-body-line:26px;--type-meta-size:14px;--type-meta-line:20px;--type-eyebrow-size:12px;--type-eyebrow-line:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--layout-section-gap:32px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 2px #171a1c0f;--shadow-md:0 4px 12px #171a1c14;--status-obtained:var(--brand);--status-obtained-bg:#e7f3ee;--status-partial:var(--warning);--status-partial-bg:#f9efe3;--status-awaiting:var(--error);--status-awaiting-bg:#f9e9e7;--status-estimated:#0e7490;--status-estimated-bg:#e6f2f5;--status-review:var(--info);--status-review-bg:#e9effc;--status-na:var(--text-secondary);--status-na-bg:#f0f1f1}
*{box-sizing:border-box}html{background:var(--page)}body{color:var(--text-primary);background:var(--page);margin:0;font-family:Inter,Noto Sans SC,system-ui,sans-serif}.app-shell-mobile-header{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-3) var(--space-4);background:var(--surface);border-bottom:1px solid var(--border);display:flex}.app-shell-logo{min-height:44px;color:var(--text-primary);font-size:var(--text-xl);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.app-shell-drawer{z-index:10;padding:var(--space-4);background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);position:absolute;top:56px;left:0;right:0}.app-shell-drawer ul{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.app-shell-drawer a{min-height:44px;color:var(--text-primary);align-items:center;display:flex}.app-shell-footer{gap:var(--space-4);padding:var(--space-6);color:var(--text-secondary);border-top:1px solid var(--border);display:grid}.app-shell-footer-info{gap:var(--space-4);flex-wrap:wrap;display:flex}.app-shell-newsletter{gap:var(--space-2);max-width:320px;font-size:var(--text-sm);opacity:.65;display:grid}@media (min-width:1280px){.app-shell-mobile-header{display:none}}.primary-nav ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}a.primary-nav-link{padding:var(--space-2) var(--space-3);color:var(--text-primary);border-radius:var(--radius-sm);text-decoration:none;display:block}a.primary-nav-link:hover{background:var(--page)}a.primary-nav-link:focus-visible{outline:2px solid var(--info);outline-offset:2px}a.primary-nav-link:active{background:var(--border)}a.primary-nav-link[aria-current=page]{color:var(--brand);background:#0d7c5a14;font-weight:600}.ui-button-ghost{min-width:44px;min-height:44px;padding:var(--space-2) var(--space-3);color:var(--text-primary);font:inherit;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.ui-button-ghost:hover:not(:disabled){background:var(--page)}.ui-button-ghost:focus-visible{outline:2px solid var(--info);outline-offset:2px}.ui-button-ghost:active:not(:disabled){background:var(--border)}.ui-button-ghost:disabled{cursor:not-allowed;opacity:.5}.ui-button{padding:var(--space-2) var(--space-3);color:var(--surface);background:var(--brand);border:1px solid var(--brand);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.ui-button:hover:not(:disabled){background:#0a684d;border-color:#0a684d}.ui-button:focus-visible{outline:2px solid var(--info);outline-offset:2px}.ui-button:active:not(:disabled){background:#08563f;border-color:#08563f}.ui-button:disabled{cursor:not-allowed;opacity:.5}.ui-card{padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.ui-tag{gap:var(--space-1);padding:var(--space-1) var(--space-2);color:var(--text-secondary);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-sm);display:inline-flex}.ui-tag[data-tone=brand]{color:var(--brand)}.ui-tag[data-tone=info]{color:var(--info)}.ui-tag[data-tone=warning]{color:var(--warning)}.ui-tag[data-tone=ai]{color:var(--ai)}.ui-tag[data-tone=error]{color:var(--error)}
