:root{--bg-app:#f4f3ef;--bg-surface:#fff;--bg-card:#fff;--bg-subtle:#eae8e1;--bg-hover:#f0eee8;--border-color:#ded9cd;--border-subtle:#e8e5dc;--border-focus:#1e293b;--text-main:#1c1917;--text-muted:#57534e;--text-light:#78716c;--brand-primary:#1e293b;--brand-primary-hover:#0f172a;--brand-accent:#0f766e;--status-safe:#166534;--status-safe-bg:#f0fdf4;--status-safe-border:#bbf7d0;--status-warn:#9a3412;--status-warn-bg:#fffbeb;--status-warn-border:#fef3c7;--status-danger:#991b1b;--status-danger-bg:#fef2f2;--status-danger-border:#fecaca;--status-info:#1e40af;--status-info-bg:#eff6ff;--status-info-border:#dbeafe;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 12px #0000000f}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-app);color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-app)}::-webkit-scrollbar-thumb{background:#d6d0c4;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b5ad9e}h1,h2,h3,h4,h5{font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.015em;font-weight:700}.bi-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:20px}.badge{border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-safe{background:var(--status-safe-bg);color:var(--status-safe);border:1px solid var(--status-safe-border)}.badge-warn{background:var(--status-warn-bg);color:var(--status-warn);border:1px solid var(--status-warn-border)}.badge-danger{background:var(--status-danger-bg);color:var(--status-danger);border:1px solid var(--status-danger-border)}.badge-neutral{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-color)}.bi-table{border-collapse:collapse;width:100%;font-size:.85rem}.bi-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);text-align:left;background:#f7f6f2;padding:10px 14px;font-size:.75rem;font-weight:600}.bi-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-main);padding:11px 14px}.bi-table tr:hover td{background:#faf9f6}.btn-primary{background:var(--brand-primary);color:#fff;border:1px solid var(--brand-primary);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:background .15s;display:inline-flex}.btn-primary:hover{background:var(--brand-primary-hover)}.btn-secondary{background:var(--bg-surface);color:var(--text-main);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:background .15s;display:inline-flex}.btn-secondary:hover{background:var(--bg-hover)}.markdown-container{color:var(--text-main);line-height:1.6}.markdown-container .section-card{border:1px solid var(--border-color);border-left:4px solid var(--brand-primary);border-radius:var(--radius-sm);background:#faf9f5;margin-bottom:14px;padding:14px 18px}.markdown-container .section-title{color:var(--brand-primary);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:8px;margin-bottom:8px;font-size:.95rem;font-weight:700;display:flex}.markdown-container .action-step{border:1px solid var(--border-subtle);background:#fff;border-radius:6px;align-items:flex-start;gap:10px;margin:6px 0;padding:10px 14px;display:flex}.markdown-container .action-num{background:var(--brand-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;font-size:.75rem;font-weight:700;display:flex}.markdown-container .citation-callout{color:#0f766e;background:#f0f7f6;border:1px solid #cce3e1;border-radius:6px;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;font-size:.85rem;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}
