:root{--ink:#102a43;--muted:#4f6377;--paper:#f6f9fc;--panel:#fff;--milrose-navy:#002855;--milrose-navy-deep:#001d3d;--milrose-accent:#006fd0;--milrose-blue:#0a4f87;--milrose-blue-deep:#073761;--milrose-blue-soft:#2c79b2;--brand:#e84a5f;--brand-ink:#7f1d1d;--border:#dbe4ee;--focus:#17a2b8;--radius:16px;--fisp-column-group-height:48px;--shadow:0 20px 48px #102a431f}*{box-sizing:border-box}body{color:var(--ink);background:radial-gradient(circle at 12% -8%, #0a4f8738, transparent 42%), radial-gradient(circle at 88% 18%, #2c79b22e, transparent 48%), var(--paper);min-height:100vh;margin:0;font-family:Manrope,Segoe UI,Tahoma,sans-serif}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,p{margin:0}a{color:inherit}.page-shell{flex:1;align-content:start;gap:1.5rem;width:min(1000px,100% - 2rem);margin:2rem auto;animation:.6s ease-out rise-in;display:grid}.page-shell.is-job-filings-detail-view{width:min(1380px,100% - 1rem)}.page-shell.is-violation-report-view,.page-shell.is-fisp-view{width:min(1420px,100% - 1rem)}.topbar{background:var(--milrose-navy);padding:0 clamp(1rem,4vw,2.5rem)}.topbar-inner{justify-content:space-between;align-items:center;gap:clamp(1.25rem,3vw,3rem);width:min(1420px,100%);min-height:84px;margin:0 auto;display:flex}.topbar-brand{align-items:center;gap:.9rem;text-decoration:none;display:flex}.topbar-brand img{width:auto;height:44px;display:block}.topbar-brand-divider{background:#ffffff47;width:1px;height:28px}.topbar-brand-app{color:#fff;font-size:1.05rem;font-weight:600}.auth-strip{color:#ffffffc7;align-items:center;gap:1rem;font-size:.9rem;display:flex}.auth-link{color:var(--milrose-navy);white-space:nowrap;background:#fff;border:1px solid #fff;border-radius:0;padding:8px 23px;font-size:11px;font-weight:700;line-height:1.4;text-decoration:none;transition:background-color .3s,color .3s}.auth-link:hover,.auth-link:focus-visible{background:var(--milrose-navy);color:#fff}.lookup-card{background:var(--panel);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);gap:1rem;padding:1.5rem;display:grid}.page-shell.is-job-filings-detail-view .lookup-card{padding:1.75rem}.topbar-nav{flex-wrap:wrap;align-items:center;gap:clamp(1rem,2vw,2rem);margin-right:auto;display:flex}.topbar-nav-link{color:#ffffffd9;white-space:nowrap;border-bottom:2px solid #0000;padding:.35rem 0;font-size:.875rem;font-weight:600;text-decoration:none;position:relative}.topbar-nav-link:hover{color:#fff}.topbar-nav-link.is-active{color:#fff;border-bottom-color:var(--milrose-accent)}.dashboard-table-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.dashboard-table{border-collapse:collapse;background:#fff;width:100%}.dashboard-table th,.dashboard-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.75rem .9rem}.page-shell.is-job-filings-detail-view .dashboard-table th,.page-shell.is-job-filings-detail-view .dashboard-table td{padding-left:1rem;padding-right:1rem}.dashboard-table thead th{color:var(--muted);letter-spacing:.02em;font-size:.92rem}.fisp-table-scroll-wrap{max-height:70vh;overflow-y:auto}.fisp-table-scroll-wrap thead th{z-index:2;box-shadow:inset 0 -1px 0 var(--border);background:#fff;position:sticky;top:0}.fisp-table-scroll-wrap thead tr:first-child th{top:0}.fisp-table-scroll-wrap thead tr:nth-child(2) th{top:var(--fisp-column-group-height)}.fisp-table-scroll-wrap thead th.fisp-column-group{height:var(--fisp-column-group-height);text-align:center;vertical-align:middle;letter-spacing:.06em;text-transform:uppercase;color:var(--milrose-navy);border-bottom:1px solid var(--border);padding-top:0;padding-bottom:0;font-size:1rem;font-weight:800}.fisp-table-scroll-wrap thead th.fisp-column-group+th.fisp-column-group{border-left:1px solid var(--border)}.fisp-column-group-label{will-change:transform;display:inline-block}.fisp-filter-form{gap:1rem}.fisp-filter-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.fisp-filter-field{gap:.3rem;display:grid}.fisp-filter-field label{color:var(--muted);font-size:.82rem;font-weight:600}.fisp-filter-field input{border:1px solid var(--border);border-radius:8px;padding:.5rem .65rem;font-size:.92rem}.fisp-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1rem;display:flex}.fisp-pagination button{border:1px solid var(--milrose-accent);background:var(--milrose-accent);color:#fff;cursor:pointer;border-radius:0;padding:8px 23px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.4;transition:background-color .3s,color .3s}.fisp-pagination button:hover:not(:disabled),.fisp-pagination button:focus-visible:not(:disabled){color:var(--milrose-accent);background:#f3f3f3}.fisp-pagination button:disabled{opacity:.6;cursor:not-allowed}.dashboard-table td.fisp-dob-column,.dashboard-table th.fisp-dob-column{background:#e3e8ee}.fisp-table-scroll-wrap thead th.fisp-dob-column{background:#d3dae3}.dashboard-table td.fisp-ajera-column,.dashboard-table th.fisp-ajera-column{background:#eef4fb}.fisp-table-scroll-wrap thead th.fisp-ajera-column{background:#e2ecf8}.fisp-section-description{max-width:78ch;color:var(--muted);margin:.6rem 0 0;font-size:.92rem;line-height:1.5}.fisp-missing-match{color:#b42318;text-align:center;font-weight:700}.fisp-section-tabs{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.fisp-section-tab{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:999px;padding:.45rem .85rem;font-weight:700;line-height:1.2;text-decoration:none}.fisp-section-tab.is-active{border-color:var(--milrose-navy);color:var(--milrose-navy);background:#00285514}.fisp-section-tab:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.fee-loading-indicator{justify-content:center;align-items:center;min-height:1rem;margin-left:.5rem;display:inline-flex}.fee-loading-spinner{border:2px solid #0f1e3233;border-top-color:var(--milrose-accent);border-radius:50%;width:.9rem;height:.9rem;animation:.8s linear infinite fee-spin}.job-description-column{white-space:normal;overflow-wrap:anywhere;word-break:break-word;width:32%}.representative-name-with-tooltip{display:inline-block;position:relative}.representative-name-with-tooltip.is-focusable{cursor:help;text-underline-offset:.12rem;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.representative-name-with-tooltip.is-focusable:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.representative-tooltip{z-index:5;border:1px solid var(--border);background:#fff;border-radius:8px;min-width:240px;max-width:420px;max-height:200px;padding:.45rem .55rem;display:none;position:absolute;top:calc(100% + .35rem);left:0;overflow:auto;box-shadow:0 10px 24px #102a4329}.representative-tooltip-line{white-space:nowrap;color:var(--ink);font-size:.86rem;line-height:1.4;display:block}.representative-name-with-tooltip:hover .representative-tooltip,.representative-name-with-tooltip:focus-within .representative-tooltip{display:block}.dashboard-controls{align-items:center;gap:.65rem;display:flex}.violation-report-filter{justify-content:flex-start;margin:0;display:flex}.violation-report-header{justify-content:space-between;align-items:center;gap:1rem;margin:.25rem 0 .35rem;display:flex}.violation-report-header h3{margin:0}.violation-report-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.violation-report-tab{border:1px solid var(--border);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:.45rem .85rem;font-weight:700}.violation-report-tab.is-active{border-color:var(--milrose-navy);color:var(--milrose-navy);background:#00285514}.violation-report-tab:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.dashboard-controls label{font-weight:700}.dashboard-controls select{border:1px solid var(--border);background:#fff;border-radius:8px;padding:.45rem .6rem}.dashboard-link-button{color:#0f5ea8;font:inherit;text-underline-offset:.12rem;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.dashboard-link-button:hover{color:#0a4a84}.dashboard-link-button:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}.import-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:.55rem;min-width:0;padding:1rem;display:grid}.import-card h3{margin:0}.import-card-meta{color:var(--muted);overflow-wrap:anywhere;margin:0}.import-card-meta a{overflow-wrap:anywhere}.import-card-progress{font-style:italic}.import-card-button{border:1px solid var(--milrose-accent);background:var(--milrose-accent);color:#fff;cursor:pointer;border-radius:0;justify-self:start;padding:8px 23px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.4;transition:background-color .3s,color .3s}.import-card-button:hover:not(:disabled),.import-card-button:focus-visible:not(:disabled){color:var(--milrose-accent);background:#f3f3f3}.import-card-button:disabled{opacity:.7;cursor:not-allowed}.import-card-success{color:#166534;background:#1665341a;border:1px solid #1665344d;border-radius:8px;margin:0;padding:.6rem .7rem}.admin-import-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.lookup-form{gap:.75rem;display:grid}.violation-report-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.violation-report-input-panel{gap:.75rem;display:grid}.lookup-form label{font-weight:700}.multi-line-input{resize:none;border:1px solid var(--border);border-radius:10px;width:100%;min-height:130px;padding:.75rem .9rem;font-family:inherit;font-size:1rem}.multi-line-input:focus{outline:2px solid var(--focus);outline-offset:1px}.input-row{gap:.75rem;display:flex}.violation-report-input-panel .input-row{justify-content:center}.input-row input{border:1px solid var(--border);border-radius:10px;flex:1;padding:.75rem .9rem;font-size:1rem}.input-row input:focus{outline:2px solid var(--focus);outline-offset:1px}.input-row button{border:1px solid var(--milrose-accent);background:var(--milrose-accent);color:#fff;cursor:pointer;border-radius:0;padding:8px 23px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.4;transition:background-color .3s,color .3s}.input-row button:hover:not(:disabled),.input-row button:focus-visible:not(:disabled){color:var(--milrose-accent);background:#f3f3f3}.input-row button:disabled{opacity:.6;cursor:not-allowed}.hint{color:var(--muted);font-size:.92rem}.report-steps-log{border:1px solid var(--border);height:130px;color:var(--muted);background:#00000008;border-radius:10px;grid-area:1/2;margin-top:2rem;padding:.5rem .75rem;font-size:.85rem;overflow-y:auto}.report-steps-log ol{margin:0;padding-left:1.1rem}.report-steps-log li{padding:.1rem 0}.report-step-error{color:#b42318;font-weight:700}.report-step-warning{color:#c25a00;font-weight:700}.report-issues-summary{gap:.25rem;display:grid}.report-issues-summary p{margin:0}.error-box{color:var(--brand-ink);background:#e84a5f1f;border:1px solid #e84a5f66;border-radius:10px;padding:.75rem}.success-box{color:#166534;background:#22c55e1f;border:1px solid #22c55e66;border-radius:10px;padding:.75rem}.results-panel h2{margin-bottom:.25rem}.source-line{color:var(--muted);margin-bottom:1rem}.data-grid{gap:.5rem;margin:0;padding:0;display:grid}.data-row{border-bottom:1px solid var(--border);grid-template-columns:fit-content(420px) minmax(0,1fr);align-items:start;gap:.75rem;padding-bottom:.5rem;display:grid}.data-row dt{font-weight:700}.data-row dd{margin:0}.json-pretty-value{border:1px solid var(--border);white-space:pre-wrap;background:#f8fafc;border-radius:8px;margin:0;padding:.6rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.86rem;line-height:1.4;overflow-x:auto}.section-view-header{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.section-view-header h2{margin:0}@media (width<=1100px){.topbar-inner{flex-wrap:wrap;padding:1rem 0}.topbar-nav{order:3;gap:1.25rem;width:100%;margin-right:0}}@media (width<=760px){.topbar-inner{flex-direction:column;align-items:flex-start;padding:1rem 0}.auth-strip{align-items:flex-start}.input-row{flex-direction:column}.violation-report-form{grid-template-columns:1fr}.report-steps-log{grid-area:auto/1;margin-top:0}.data-row{grid-template-columns:1fr}.section-view-header{flex-direction:column;align-items:flex-start}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fee-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.site-footer{background:var(--milrose-navy);margin-top:2rem;padding:0 clamp(1rem,4vw,2.5rem)}.site-footer-inner{width:min(1420px,100%);margin:0 auto;padding:76px 0 90px}.site-footer-logo{width:auto;height:72px;display:block}.site-footer-social{align-items:center;gap:1.5rem;margin:3.5rem 0 0;padding:0;list-style:none;display:flex}.site-footer-social a{color:#ffffffb3;transition:color .3s;display:block}.site-footer-social a:hover,.site-footer-social a:focus-visible{color:#fff}.site-footer-social svg{fill:currentColor;width:19px;height:19px;display:block}.site-footer-legal{color:#ffffffb3;letter-spacing:1.32px;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.75rem 1.1rem;margin-top:2.5rem;font-size:11px;font-weight:700;display:flex}.site-footer-legal a{color:inherit;text-decoration:none;transition:color .3s}.site-footer-legal a:hover,.site-footer-legal a:focus-visible{color:#fff}.site-footer-legal-divider{background:#ffffff59;width:1px;height:12px}@media (width<=760px){.site-footer-inner{padding:48px 0 56px}.site-footer-social{margin-top:2.5rem}}
