:root{--gray-0:#ffffff;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--blue-50:#eff4fe;--blue-100:#dbe7fc;--blue-300:#7ea4f2;--blue-500:#3563e0;--blue-600:#1a56db;--blue-700:#123f9e;--blue-900:#16213a;--red-100:#f6d3d3;--red-600:#b3261e;--red-700:#9c2323;--green-100:#d3f0dc;--green-600:#1e7a34;--green-700:#196a35;--amber-100:#f1e9c9;--amber-700:#7a5d00;--color-bg-page:var(--gray-50);--color-bg-surface:var(--gray-0);--color-bg-surface-hover:var(--gray-100);--color-bg-sunken:#fbfbfc;--color-border:var(--gray-200);--color-border-strong:var(--gray-300);--color-text-primary:var(--gray-900);--color-text-secondary:var(--gray-600);--color-text-tertiary:var(--gray-400);--color-link:var(--blue-600);--color-accent:var(--blue-600);--color-accent-hover:var(--blue-700);--color-accent-bg:var(--blue-50);--color-accent-contrast:#ffffff;--color-danger:var(--red-600);--color-danger-bg:var(--red-100);--color-danger-text:var(--red-700);--color-success:var(--green-600);--color-success-bg:var(--green-100);--color-success-text:var(--green-700);--color-warning-bg:var(--amber-100);--color-warning-text:var(--amber-700);--color-focus-ring:var(--blue-500);--color-sidebar-bg:var(--blue-900);--color-sidebar-text:#d6dcea;--color-sidebar-text-active:#ffffff;--color-sidebar-bg-active:rgba(255,255,255,0.08);--color-sidebar-text-muted:#aab4c8;--color-sidebar-border:rgba(255,255,255,0.08);--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:15px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:22px;--font-size-2xl:26px;--line-height-tight:1.25;--line-height-normal:1.5;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-full:999px;--shadow-xs:0 1px 2px rgba(17,24,39,0.05);--shadow-sm:0 1px 3px rgba(17,24,39,0.08),0 1px 2px rgba(17,24,39,0.04);--shadow-md:0 4px 12px rgba(17,24,39,0.1);--sidebar-width:232px;--content-max-width:1080px;--transition-fast:120ms ease}.import-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:12px 20px;gap:12px 20px;margin:16px 0 0}.import-facts div{min-width:0}.import-facts dt{color:var(--color-text-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em}.import-facts dd{margin:3px 0 0;overflow-wrap:anywhere}.import-facts--message{margin:12px 0}.import-actions,.import-message__heading{display:flex;align-items:center;gap:10px}.import-message__heading{justify-content:space-between}.import-message__body{white-space:pre-wrap;background:var(--color-bg-sunken);border-radius:var(--radius-sm);padding:12px}.import-approval{flex-direction:row;align-items:center;color:var(--color-text-primary)}.import-approval input{accent-color:var(--color-accent)}.import-actions{margin:18px 0}.import-resolution-controls{margin-top:14px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-bg-page)}a{color:var(--color-link)}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.container{max-width:var(--content-max-width);margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-12)}.narrow{max-width:480px}h1{font-size:var(--font-size-xl);margin:0 0 var(--space-4)}h1,h2{font-weight:var(--font-weight-semibold)}h2{font-size:var(--font-size-lg);margin:var(--space-6) 0 var(--space-2)}h3{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:var(--space-4) 0 var(--space-2)}.muted{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);gap:var(--space-4)}form{gap:var(--space-3)}form,label{display:flex;flex-direction:column}label{gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}input,select,textarea{font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-primary)}textarea{resize:vertical;min-height:90px;font-family:inherit}button{font:inherit;cursor:pointer;border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-accent-contrast);align-self:flex-start;transition:background var(--transition-fast)}button:hover:not(:disabled){background:var(--color-accent-hover)}button:disabled{background:var(--blue-300);cursor:not-allowed}.card{padding:var(--space-4) var(--space-5);margin-bottom:var(--space-3)}.card,.list-item{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.list-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2);text-decoration:none;color:inherit;transition:border-color var(--transition-fast)}.list-item:hover{border-color:var(--color-accent)}.list-item-title{font-weight:var(--font-weight-semibold)}.empty-state{color:var(--color-text-secondary);padding:var(--space-6) 0;text-align:center}.skeleton-row{height:44px;background:var(--gray-100);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.badge{display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;padding:3px var(--space-2);border-radius:var(--radius-sm)}.badge-pending{background:var(--amber-100);color:var(--amber-700)}.badge-running{background:var(--blue-100);color:var(--blue-700)}.badge-completed{background:var(--green-100);color:var(--green-700)}.badge-failed{background:var(--red-100);color:var(--red-700)}.badge-active{background:var(--gray-200);color:var(--gray-700)}.badge-archived{background:var(--gray-100);color:var(--gray-500)}.report-text{white-space:pre-wrap;line-height:1.5;padding:var(--space-4)}.report-markdown,.report-text{font-size:14px;background:var(--color-bg-sunken);border:1px solid var(--color-border);border-radius:var(--radius-md)}.report-markdown{line-height:1.55;padding:var(--space-5) var(--space-5)}.report-markdown .report-title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);margin:0 0 14px}.report-markdown .report-heading{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);margin:var(--space-5) 0 6px;border-bottom:1px solid var(--color-border);padding-bottom:4px}.report-markdown h3.report-heading:first-child{margin-top:0}.report-markdown p{margin:0 0 10px}.report-markdown ul{margin:0 0 10px;padding-left:20px}.report-markdown li{margin-bottom:var(--space-2)}.report-bullet-lead{display:block}.report-bullet-detail{display:block;color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:2px}.report-actions{display:flex;gap:var(--space-2);margin:var(--space-2) 0}.report-edit-textarea{width:100%;font-family:inherit;font-size:14px;line-height:1.55;color:var(--color-text-primary);background:var(--color-bg-sunken);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);resize:vertical}.report-edit-textarea:focus{outline:2px solid var(--color-accent);outline-offset:-1px}.favorite-toggle{background:none;border:none;padding:0 4px;line-height:1;color:var(--amber-700);cursor:pointer;align-self:auto;display:inline-flex;align-items:center}.favorite-toggle:hover{background:none;color:var(--color-accent-hover)}.activity-feed{list-style:none;margin:0;padding:0}.activity-feed li{padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.activity-feed li:last-child{border-bottom:none}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4);align-items:flex-end}.filter-bar label{min-width:140px}