@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--teal-50:#ecfaf8;--teal-100:#d2f2ee;--teal-200:#a7e5dd;--teal-300:#70d0c7;--teal-400:#38b5ab;--teal-500:#1b9c92;--teal-600:#0f807a;--teal-700:#126763;--teal-800:#14524f;--teal-900:#133e3c;--green-50:#ecfaf1;--green-100:#d2f2df;--green-200:#a6e3bd;--green-300:#6fcd93;--green-400:#3bae68;--green-500:#2e9e5b;--green-600:#228a4c;--green-700:#1b6e3d;--green-800:#175831;--green-900:#134327;--blue-50:#ebf4fb;--blue-100:#d2e6f5;--blue-200:#a6cdea;--blue-300:#6facda;--blue-400:#4290c9;--blue-500:#2e7cb8;--blue-600:#266ba1;--blue-700:#1f5582;--blue-800:#1b4568;--blue-900:#16364f;--neutral-0:#fff;--neutral-50:#f6f9f9;--neutral-100:#eff3f4;--neutral-150:#e7edee;--neutral-200:#dce4e5;--neutral-300:#c7d2d4;--neutral-400:#9aa8ab;--neutral-500:#6b797d;--neutral-600:#4f5c60;--neutral-700:#3a4549;--neutral-800:#283032;--neutral-900:#18201f;--success-bg:var(--green-50);--success-fg:var(--green-700);--success-solid:var(--green-600);--warning-bg:#fdf4e3;--warning-fg:#8a5a09;--warning-solid:#d98a0b;--danger-bg:var(--danger-bg);--danger-fg:#a6322a;--danger-solid:#d6453c;--info-bg:var(--info-bg);--info-fg:var(--blue-700);--info-solid:var(--blue-500);--brand:var(--teal-600);--brand-hover:var(--teal-700);--brand-active:var(--teal-800);--brand-subtle:var(--teal-50);--brand-on:#fff;--accent:var(--green-500);--accent-info:var(--blue-500);--text-strong:var(--neutral-900);--text-body:var(--neutral-700);--text-muted:var(--neutral-500);--text-subtle:var(--neutral-400);--text-on-brand:#fff;--text-link:var(--teal-700);--surface-page:var(--neutral-50);--surface-card:var(--neutral-0);--surface-sunken:var(--neutral-100);--surface-tint:var(--teal-50);--surface-inverse:var(--neutral-900);--border-subtle:var(--neutral-150);--border-default:var(--neutral-200);--border-strong:var(--neutral-300);--border-brand:var(--teal-300);--focus-ring:var(--teal-400);--maroon-50:var(--teal-50);--maroon-100:var(--teal-100);--maroon-200:var(--teal-200);--maroon-300:var(--teal-300);--maroon-400:var(--teal-400);--maroon-500:var(--teal-600);--maroon-600:var(--teal-700);--maroon-700:var(--teal-800);--gold-50:var(--green-50);--gold-100:var(--green-100);--gold-200:var(--green-200);--gold-300:var(--green-300);--gold-400:var(--green-400);--gold-500:var(--green-500);--gold-600:var(--green-600);--gold-700:var(--green-700);--ink-50:var(--neutral-50);--ink-100:var(--neutral-100);--ink-200:var(--neutral-200);--ink-300:var(--neutral-300);--ink-400:var(--neutral-400);--ink-500:var(--neutral-500);--ink-600:var(--neutral-600);--ink-700:var(--neutral-700);--ink-800:var(--neutral-800);--ink-900:var(--neutral-900);--bone-50:var(--neutral-0);--bone-100:var(--neutral-50);--bone-200:var(--neutral-100);--bone-300:var(--neutral-200);--ok:var(--success-solid);--ok-bg:var(--success-bg);--warn:var(--warning-solid);--warn-bg:var(--warning-bg);--danger:var(--danger-solid);--info:var(--info-solid);--font-display:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-sans:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-serif:var(--font-sans);--text-display-lg:3.5rem;--text-display:2.75rem;--text-h1:2.125rem;--text-h2:1.625rem;--text-h3:1.3125rem;--text-h4:1.125rem;--text-lg:1.0625rem;--text-base:.9375rem;--text-sm:.8125rem;--text-xs:.75rem;--leading-tight:1.12;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;--tracking-wide:.04em;--tracking-caps:.08em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extra:800;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:999px;--radius-card:var(--radius-lg);--radius-inner:var(--radius-md);--radius-btn:var(--radius-md);--radius-pill:var(--radius-full);--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--container-max:1200px;--content-max:720px;--sidebar-width:264px;--topbar-height:64px;--pad-page-cozy:36px 44px;--pad-page-compact:24px 32px;--pad-card:24px;--gap-col:20px;--gap-row:18px;--shadow-xs:0 1px 2px #1432300f;--shadow-sm:0 1px 3px #14323014, 0 1px 2px #1432300a;--shadow-md:0 4px 12px #14323014, 0 2px 4px #1432300a;--shadow-lg:0 12px 28px #1432301f, 0 4px 8px #1432300d;--shadow-xl:0 24px 56px #14323029;--ring-brand:0 0 0 3px #0f807a2e;--ring-focus:0 0 0 3px #38b5ab66;--hairline:1px solid var(--border-default);--shadow-btn-primary:inset 0 -1px 0 #0000002e;--shadow-btn-secondary:inset 0 -1px 0 #0000000a;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s}html,body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}.ca-mono{font-family:var(--font-mono)}.ca-serif{font-family:var(--font-serif)}.ca-eyebrow{font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);font-size:10.5px}:root{color:#333;background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}body{margin:0}#root{max-width:100%;margin:0 auto}:focus-visible{outline:2px solid var(--maroon-500);outline-offset:2px;border-radius:4px}button:focus-visible,a:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--maroon-500);outline-offset:2px}.skip-link{background:var(--maroon-500);color:#fff;z-index:9999;border-radius:0 0 6px;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:top .15s;position:absolute;top:-40px;left:0}.skip-link:focus,.skip-link:focus-visible{top:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){button,a,[role=button]{border:1px solid}}.portal-2col{grid-template-columns:1fr 200px;gap:10px;margin-bottom:8px;display:grid}.portal-row{grid-template-columns:160px 1fr;gap:12px;padding:6px 0;font-size:13.5px;display:grid}.portal-btn,.portal-input,.portal-select{min-height:44px}.portal-shell-title{font-size:clamp(15px,4vw,18px)}@media (width<=640px){.portal-2col,.portal-row{grid-template-columns:1fr;gap:6px}.portal-row>:first-child{color:var(--ink-700,#4f5c60);font-weight:600}.portal-shell{padding:16px 0!important}.portal-card{border-left:none!important;border-right:none!important;border-radius:0!important}}*{box-sizing:border-box;margin:0;padding:0}body{color:#1e293b;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss03";background:#f8fafc;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.app{flex-direction:column;min-height:100vh;display:flex}.signin-screen{background:linear-gradient(135deg,#0f807a 0%,#1e293b 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.signin-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:420px;padding:48px 40px;box-shadow:0 20px 60px #0000004d}.signin-logo{height:44px;margin-bottom:16px}.signin-subtitle{color:#64748b;margin-bottom:32px;font-size:.95rem}.signin-button{justify-content:center;align-items:center;width:100%;margin-bottom:16px;padding:12px 24px;font-size:.95rem;font-weight:600;display:inline-flex}.signin-hint{color:#94a3b8;font-size:.8rem}.user-badge{align-items:center;gap:10px;margin-left:16px;display:flex}.user-avatar{color:#fff;letter-spacing:.05em;background:#0f807a;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:.8rem;font-weight:700;display:flex}.user-meta{flex-direction:column;align-items:flex-start;line-height:1.2;display:flex}.user-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.82rem;font-weight:600;overflow:hidden}.user-signout{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0;font-size:.72rem;text-decoration:underline}.user-signout:hover{color:#fff}.app-header{z-index:100;background:#0f807a;justify-content:space-between;align-items:center;height:64px;padding:0 32px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #00000026}.header-left{align-items:center;display:flex}.app-logo{width:auto;height:42px}.header-nav{gap:4px;display:flex}.nav-tab{color:#ffffff8c;cursor:pointer;letter-spacing:.01em;background:0 0;border:none;border-bottom:3px solid #0000;padding:20px;font-size:.9rem;font-weight:500;transition:all .2s}.nav-tab:hover{color:#ffffffd9;background:#ffffff0a}.nav-tab.active{color:#fff;background:#126763;border-top:3px solid #0f807a;border-bottom-color:#0000;padding-top:17px;font-weight:600}.main-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:28px 32px}.content-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:32px 36px;box-shadow:0 1px 2px #0f172a0a,0 1px 3px #0f172a0f}.results-card{margin-top:24px}.error-banner{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:20px;padding:14px 18px;font-size:.9rem;font-weight:500}.search-form-container h2,.upload-container h2{color:#18201f;letter-spacing:-.01em;margin:0 0 24px;font-size:1.35rem;font-weight:700}.search-form{flex-direction:column;gap:18px;display:flex}.form-row{gap:16px;display:flex}.form-group{flex-direction:column;flex:1;gap:6px;display:flex}.form-group label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:.825rem;font-weight:600}.form-group input,.form-group select{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:11px 14px;font-size:.95rem;font-weight:500;transition:border-color .15s,box-shadow .15s}.form-group input::placeholder{color:#94a3b8}.form-group input:focus,.form-group select:focus{border-color:#0f807a;outline:none;box-shadow:0 0 0 3px #0b5e5726}.btn-primary{color:#fff;cursor:pointer;letter-spacing:.01em;background:#0f807a;border:1px solid #0f807a;border-radius:6px;padding:12px 28px;font-size:.92rem;font-weight:700;transition:background .15s,transform .1s,box-shadow .15s,border-color .15s;box-shadow:0 1px 2px #0d94882e}.btn-primary:hover{background:#126763;border-color:#126763;box-shadow:0 4px 12px #0d948852}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{color:#fff;cursor:not-allowed;box-shadow:none;background:#cbd5e1;border-color:#cbd5e1;transform:none}.btn-secondary{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #0f172a0a}.btn-secondary:hover{color:#0f807a;background:#f8fafc;border-color:#94a3b8}.btn-small{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;margin-right:6px;padding:7px 14px;font-size:.8rem;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #0f172a0a}.btn-small:hover{color:#0f807a;background:#f8fafc;border-color:#94a3b8}.btn-link,.btn-link:visited{color:#0f807a;font-weight:500;text-decoration:none;display:inline-block}.btn-link:hover{color:#126763}.btn-small.btn-primary-outline,.btn-small.btn-primary-outline:visited{color:#0f807a;letter-spacing:.01em;background:#fff;border:1.5px solid #0f807a;font-weight:700}.btn-small.btn-primary-outline:hover{color:#fff;background:#0f807a;border-color:#126763;box-shadow:0 2px 4px #0b5e5733}.upload-dropzone{text-align:center;cursor:pointer;background:#fafbfc;border:2px dashed #cbd5e1;border-radius:12px;padding:50px 30px;transition:all .2s}.upload-dropzone:hover{background:#ecfaf8;border-color:#0f807a}.upload-icon{color:#94a3b8;margin-bottom:12px;font-size:2.5rem}.upload-hint{color:#94a3b8;margin-top:8px;font-size:.825rem}.preview-section{margin-top:20px}.preview-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.preview-header h3{color:#18201f;margin:0;font-size:1rem}.preview-actions{gap:10px;display:flex}.preview-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.preview-table{border-collapse:collapse;width:100%;font-size:.875rem}.preview-table th,.preview-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:10px 14px}.preview-table th{color:#64748b;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;font-size:.8rem;font-weight:600}.preview-table tr:last-child td{border-bottom:none}.preview-table tr:hover td{background:#f8fafc}.preview-summary{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.preview-instructions{color:#64748b;margin:0 0 12px;font-size:.85rem}.preview-editable td{vertical-align:middle;padding:6px 10px}.preview-editable input[type=text],.preview-editable select{color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:5px;width:100%;min-width:90px;padding:6px 8px;font-size:.85rem}.preview-editable input[type=text]:focus,.preview-editable select:focus{border-color:#0f807a;outline:none;box-shadow:0 0 0 2px #0b5e572e}.preview-editable .input-error{background:#fef2f2;border-color:#dc2626}.preview-editable tr.row-error td{background:#fef2f2}.preview-editable tr.row-error td:first-child{box-shadow:inset 3px 0 #dc2626}.preview-editable tr.row-warning td{background:#ecfaf8}.preview-editable tr.row-warning td:first-child{box-shadow:inset 3px 0 #b45309}.preview-editable .row-status-cell{max-width:260px}.badge{letter-spacing:.02em;white-space:nowrap;border-radius:12px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-block}.badge-error{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.badge-warning{color:#92400e;background:#ecfaf8;border:1px solid #fcd34d}.badge-ok{color:#065f46;background:#d1fae5;border:1px solid #6ee7b7}.btn-icon{color:#64748b;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:1rem;line-height:1;display:inline-flex}.btn-icon:hover{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.results-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.results-header h2{color:#18201f;margin:0;font-size:1.15rem;font-weight:600}.download-buttons{gap:10px;display:flex}.results-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.results-table{border-collapse:collapse;table-layout:fixed;width:100%}.results-table th:first-child,.results-table td:first-child{width:20%}.results-table th:nth-child(2),.results-table td:nth-child(2){width:15%}.results-table th:nth-child(3),.results-table td:nth-child(3){width:8%}.results-table th:nth-child(4),.results-table td:nth-child(4){width:12%}.results-table th:nth-child(5),.results-table td:nth-child(5){width:18%}.results-table th:nth-child(6),.results-table td:nth-child(6){width:27%}.results-table>thead th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.06em;background:#f8fafc;border-bottom:2px solid #cbd5e1;padding:13px 16px;font-size:.72rem;font-weight:700}.result-row td{text-overflow:ellipsis;color:#1e293b;border-bottom:1px solid #e2e8f0;padding:14px 16px;font-size:.9rem;overflow:hidden}.result-row:hover td{background:#f8fafc}.result-row.multiple-matches td{background:#fffbf0;border-left:3px solid #b45309}.result-row.multiple-matches td:not(:first-child){border-left:none}.status-badge{white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-block}.status-found{color:#047857;background:#ecfdf5;border:1px solid #6ee7b7}.status-not_found{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5}.status-error{color:#b45309;background:#ecfaf8;border:1px solid #fcd34d}.status-unknown{color:#64748b;background:#f8fafc;border:1px solid #cbd5e1}.multiple-alert{color:#b45309;font-size:.875rem;font-weight:600}.match-actions{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:14px;display:flex}.match-alert-text{color:#b45309;font-size:.9rem;font-weight:600}.expanded-row td{background:#f8fafc;border-bottom:1px solid #e2e8f0;border-left:4px solid #0f807a;padding:20px 24px}.matches-detail{flex-direction:column;gap:12px;display:flex}.match-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:flex-start;gap:14px;padding:16px;transition:box-shadow .15s;display:flex}.match-item:hover{box-shadow:0 2px 6px #0000000f}.match-item input[type=checkbox]{accent-color:#0f807a;width:18px;height:18px;margin-top:4px}.match-info{flex:1}.match-info strong{color:#1e293b}.match-name-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.license-status{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;padding:3px 10px;font-size:.7rem;font-weight:600}.license-status-active,.license-status-current{color:#059669;background:#d1fae5}.license-status-inactive,.license-status-expired{color:#dc2626;background:#fef2f2}.license-status-pending{color:#b45309;background:#ecfaf8}.license-details{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 24px;margin-bottom:12px;display:grid}.detail-field{gap:6px;font-size:.875rem;display:flex}.detail-label{color:#64748b;white-space:nowrap;font-weight:600}.detail-value{color:#1e293b}.detail-value-warn{color:#dc2626;font-weight:600}.credential-mismatch-badge{color:#b45309;letter-spacing:.04em;text-transform:uppercase;cursor:help;vertical-align:middle;background:#fef3c7;border:1px solid #fcd34d;border-radius:4px;margin-left:10px;padding:3px 9px;font-size:.7rem;font-weight:700;display:inline-block}.detail-value-clear{color:#047857}.detail-field-actions{grid-column:1/-1}.match-links{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.source-link,.source-link:visited{color:#0f807a;font-size:.825rem;font-weight:500;text-decoration:none}.source-link:hover{color:#126763;text-decoration:underline}.match-info a.source-link-primary,.match-info a.source-link-primary:visited{color:#fff;background:#0f807a;border-radius:6px;padding:6px 14px;font-size:.825rem;font-weight:600}.match-info a.source-link-primary:hover{color:#fff;background:#126763;text-decoration:none}.proof-link{color:#fff;background:#0f807a;border-radius:6px;padding:5px 12px;font-size:.8rem;font-weight:500;transition:background .2s}.proof-link:hover{color:#fff;background:#126763;text-decoration:none}.print-link{color:#fff;background:#0f807a;border-radius:6px;padding:5px 12px;font-size:.8rem;font-weight:500;transition:background .2s}.print-link:hover{color:#fff;background:#1e293b;text-decoration:none}.match-info a{color:#0f807a;word-break:break-all;font-size:.825rem}.match-info a:hover{color:#126763}.searching-status{text-align:center;max-width:520px;margin:0 auto;padding:48px 32px}.progress-headline{color:#18201f;letter-spacing:-.01em;margin-top:20px;font-size:1.05rem;font-weight:700}.progress-track{background:#e2e8f0;border-radius:4px;height:8px;margin:18px auto 12px;overflow:hidden}.progress-bar{background:#0f807a;border-radius:4px;height:100%;transition:width .4s ease-out}.progress-hint{color:#64748b;margin-top:8px;font-size:.85rem;line-height:1.5}.spinner{border:4px solid #e2e8f0;border-top-color:#0f807a;border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.cert-subtitle{color:#64748b;margin:-12px 0 20px;font-size:.9rem}.cert-hint{color:#64748b;background:#f8fafc;border-left:3px solid #0f807a;border-radius:6px;margin:-4px 0 4px;padding:10px 14px;font-size:.825rem}.cert-result{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:24px;padding:20px 24px}.cert-result-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cert-result-header h3{color:#18201f;margin:0;font-size:1.05rem}.cert-status-badge{letter-spacing:.02em;border-radius:20px;padding:5px 14px;font-size:.8rem;font-weight:600}.cert-status-verified{color:#059669;background:#d1fae5}.cert-status-not-found{color:#dc2626;background:#fef2f2}.cert-status-manual{color:#b45309;background:#ecfaf8}.cert-status-pending{color:#64748b;background:#f8fafc}.cert-result-details{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px 24px;margin-bottom:14px;display:grid}.cert-detail-row{gap:8px;font-size:.9rem;display:flex}.cert-message{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin:12px 0 8px;padding:10px 14px;font-size:.875rem}.cert-verify-link{color:#0f807a;margin-top:8px;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-block}.cert-verify-link:hover{color:#126763;text-decoration:underline}.sanctions-results{flex-direction:column;gap:20px;margin-top:24px;display:flex}.sanctions-source-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:20px 24px}.sanctions-source-card.sanctions-hit{background:#fef2f2;border-color:#fca5a5}.sanctions-source-card.sanctions-clear{background:#ecfdf5;border-color:#a7f3d0}.sanctions-source-card.sanctions-warn,.sanctions-source-card.sanctions-error{background:#ecfaf8;border-color:#fde68a}.sanctions-source-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.sanctions-source-header h3{color:#18201f;margin:0;font-size:1.05rem}.sanctions-badge{letter-spacing:.04em;border-radius:20px;padding:5px 14px;font-size:.75rem;font-weight:700}.sanctions-badge.sanctions-clear{color:#059669;background:#d1fae5}.sanctions-badge.sanctions-hit{color:#dc2626;background:#fee2e2}.sanctions-badge.sanctions-warn,.sanctions-badge.sanctions-error{color:#d97706;background:#ecfaf8}.sanctions-message{color:#64748b;margin:0 0 12px;font-size:.9rem}.sanctions-records{flex-direction:column;gap:12px;display:flex}.sanctions-record{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.sanctions-record-name{color:#1e293b;margin-bottom:10px;font-size:1rem;font-weight:600}@media (width<=768px){.app-header{height:56px;padding:0 16px}.app-logo{height:34px}.nav-tab{padding:16px 14px;font-size:.825rem}.main-content{padding:16px}.content-card{border-radius:8px;padding:20px 16px}.form-row{flex-direction:column}.results-header,.preview-header{flex-direction:column;align-items:flex-start}.download-buttons{width:100%}.download-buttons button{flex:1}.results-table{table-layout:auto}}.sites-explorer{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:320px 1fr;gap:0;height:calc(100vh - 200px);min-height:540px;display:grid;overflow:hidden}.sites-tree{background:#f8fafc;border-right:1px solid #e2e8f0;flex-direction:column;display:flex;overflow:hidden}.sites-tree-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.sites-tree-header h3{color:#18201f;letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:14px}.sites-tree-summary{color:#64748b;font-size:12px}.sites-tree-body{padding:6px 0;overflow-y:auto}.tree-row{cursor:default;align-items:center;gap:4px;padding:2px 4px;font-size:13px;display:flex}.tree-row.selected{background:#d5e8e5}.tree-row.archived .tree-name{color:#94a3b8;font-style:italic}.tree-twisty{color:#64748b;cursor:pointer;background:0 0;border:none;width:16px;padding:0;font-size:11px}.tree-twisty:disabled{color:#cbd5e1;cursor:default}.tree-label{text-align:left;cursor:pointer;color:#1e293b;background:0 0;border:none;border-radius:4px;flex:1;align-items:center;gap:6px;padding:4px 6px;font-size:13px;display:flex}.tree-label:hover{background:#e2e8f0}.tree-type{color:#fff;border-radius:3px;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:inline-flex}.tree-type-region,.tree-type-area{background:#0f807a}.tree-type-site{background:#64748b}.tree-name{flex:1}.tree-count{color:#475569;text-align:center;background:#e2e8f0;border-radius:10px;min-width:22px;padding:0 6px;font-size:11px;display:inline-block}.sites-detail{background:#fff;padding:22px 28px;overflow-y:auto}.sites-detail-empty,.sites-loading,.sites-empty{text-align:center;color:#64748b;padding:60px 40px}.sites-empty h3{color:#18201f;margin-bottom:8px}.sites-empty-hint{color:#64748b;font-size:13px}.sites-empty code{background:#f1f5f9;border-radius:3px;padding:1px 6px;font-size:12px}.sites-detail-header{margin-bottom:24px}.sites-detail-header h2{color:#18201f;margin:6px 0}.breadcrumb{color:#64748b;font-size:12px}.breadcrumb-link{color:#0f807a;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-link.active{color:#18201f;cursor:default}.breadcrumb-link.active:hover{text-decoration:none}.breadcrumb-sep{color:#cbd5e1}.detail-tags{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.tag{letter-spacing:.3px;text-transform:uppercase;border-radius:12px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.tag-region,.tag-area{color:#fff;background:#0f807a}.tag-site{color:#fff;background:#475569}.tag-archived{color:#92400e;background:#fbbf24}.tag-meta{color:#475569;background:#e2e8f0}.detail-section{margin-top:28px}.detail-section h4{text-transform:uppercase;letter-spacing:.5px;color:#18201f;border-bottom:1px solid #e2e8f0;margin-bottom:12px;padding-bottom:6px;font-size:13px}.detail-child-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.detail-child-link{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.detail-child-link:hover{background:#fff;border-color:#0f807a}.employee-table{border-collapse:collapse;width:100%;font-size:13px}.employee-table th,.employee-table td{text-align:left;border-bottom:1px solid #f1f5f9;padding:8px 10px}.employee-table th{color:#18201f;letter-spacing:.3px;text-transform:uppercase;background:#f8fafc;font-size:12px;font-weight:600}.employee-table tr:hover{background:#f8fafc}.muted{color:#94a3b8;font-style:italic}.roster-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:6px;display:flex}.roster-header h4{border:none;margin:0;padding:0}.roster-run-btn{white-space:nowrap;padding:8px 14px;font-size:13px}.roster-result{color:#18201f;background:#d5e8e5;border:1px solid #0f807a;border-radius:6px;margin-bottom:10px;padding:8px 12px;font-size:13px}.roster-result-error{color:#991b1b;background:#fee2e2;border-color:#dc2626}.roster-hint{margin:0 0 14px;font-size:12px}.roster-table th{white-space:nowrap}.roster-input{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:4px;width:100%;min-width:70px;padding:4px 6px;font-size:12px}.roster-input:focus{border-color:#0f807a;outline:none}.roster-state{min-width:56px}.roster-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:12px;overflow:hidden}.roster-exclude{text-align:center}.roster-verified{white-space:nowrap;font-size:12px}.row-excluded{opacity:.5}.row-excluded .roster-input{background:#f1f5f9}
