:root{--bg:#f8fafc;--surface:#fff;--ink:#0f172a;--muted:#64748b;--line:#dbe4ef;--blue:#2563eb;--blue-soft:#eff6ff;--green:#059669;--green-soft:#ecfdf5;--shadow:0 1px 2px #0f172a0a, 0 8px 20px #0f172a06}*{box-sizing:border-box}html{background:var(--bg)}body{color:var(--ink);background:var(--bg);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:20;background:var(--surface);border-right:1px solid var(--line);flex-direction:column;width:232px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid var(--line);align-items:center;gap:10px;height:58px;padding:0 15px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#3b82f6,#1d4ed8);border-radius:7px;place-items:center;width:29px;height:29px;display:grid;box-shadow:0 5px 10px #2563eb2e}.brand strong{letter-spacing:-.4px;font-size:17px;display:block}.brand small{color:#7290b2;letter-spacing:.8px;margin-top:1px;font-size:9px;display:block}.nav-label{color:#879bb4;letter-spacing:1.2px;text-transform:uppercase;margin:24px 17px 9px;font-size:10px}.sidebar nav{gap:4px;padding:0 10px;display:grid}.nav-item{color:#233653;border:1px solid #0000;border-radius:8px;grid-template-columns:24px 1fr auto;align-items:center;min-height:39px;padding:0 10px;font-weight:550;display:grid}.nav-item:hover,.nav-item:focus-visible{background:var(--blue-soft);color:#144fd0;border-color:#d4e4ff;outline:none}.nav-icon{color:#7992b1;font-size:17px}.nav-count{color:#047857;text-align:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:4px;min-width:21px;padding:2px 5px;font-size:10px}.coming-soon{color:#52647e;background:#f8fafc;border:1px dashed #d7e0eb;border-radius:8px;align-items:center;gap:10px;margin:auto 10px 16px;padding:12px;display:flex}.coming-soon small{color:#94a3b8;letter-spacing:.7px;font-size:10px;display:block}.app-column{grid-column:2;min-width:0}.topbar{z-index:15;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;justify-content:space-between;align-items:center;gap:16px;height:58px;padding:0 24px;display:flex;position:sticky;top:0}.search-status{color:#047857;background:var(--green-soft);white-space:nowrap;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-size:12px;display:inline-flex}.search-status i,.page-intro small i{background:#10b981;border-radius:50%;width:7px;height:7px}.topbar-actions{align-items:center;gap:12px;display:flex}.button{color:#233653;cursor:pointer;background:#fff;border:1px solid #d7e0eb;border-radius:8px;justify-content:center;align-items:center;gap:4px;min-height:36px;padding:0 14px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.button:hover:not(:disabled),.button:focus-visible{border-color:#9bbafa;outline:none;box-shadow:0 0 0 3px #2563eb1a}.button:disabled{cursor:not-allowed;opacity:.62}.button.primary{color:#fff;background:var(--blue);border-color:#1d4ed8}.button.danger{color:#e11d48;background:snow;border-color:#fecdd3}.notification{color:#607795;padding:7px;font-size:18px;position:relative}.notification i{background:var(--blue);border-radius:50%;width:7px;height:7px;position:absolute;top:3px;right:3px}.avatar{color:#fff;background:linear-gradient(145deg,#334155,#0f172a);border-radius:50%;place-items:center;width:31px;height:31px;font-size:10px;font-weight:800;display:grid}.candidate{line-height:1.15}.candidate strong{font-size:12px;display:block}.candidate small{color:var(--green);font-size:10px}.page-wrap{width:min(100%,1240px);margin:0 auto;padding:20px 24px 42px}.prototype-banner{color:#5a4a12;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:12px;padding:9px 12px;font-size:11px}.page-intro{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:16px;display:flex}.page-intro h1{letter-spacing:-1.2px;margin:4px 0 3px;font-size:clamp(25px,3vw,34px);line-height:1.08}.dashboard-intro h1{letter-spacing:-.8px;font-size:24px}.page-intro>div>p:not(.eyebrow){color:#475569;margin:0}.page-intro small{color:#71839c;align-items:center;margin-top:8px;font-size:10px;display:flex}.eyebrow{color:#2256d9;letter-spacing:1.2px;text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.button-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.metric-card{border:1px solid var(--line);border-left:3px solid var(--tone);min-height:105px;box-shadow:var(--shadow);background:#fff;border-radius:11px;padding:14px 16px 18px;position:relative;overflow:hidden}.metric-card p{color:#60718b;letter-spacing:.7px;text-transform:uppercase;margin:0 0 8px;font-size:10px}.metric-card>div{align-items:baseline;gap:7px;display:flex}.metric-card strong{font-size:23px;line-height:1}.metric-card div span{color:var(--tone);font-size:10px;font-weight:650}.metric-card small{color:#71839c;margin-top:6px;font-size:10px;display:block}.metric-card>i{background:#eef2f7;border-radius:4px;height:3px;position:absolute;bottom:9px;left:14px;right:14px}.metric-card>i b{border-radius:inherit;background:var(--tone);width:53%;height:100%;display:block}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.panel,.profile-card,.profile-footer,.planned-page,.loading-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px}.panel{min-width:0;padding:20px}.panel-heading{border-bottom:1px solid #edf1f6;justify-content:space-between;margin-bottom:15px;padding-bottom:13px;display:flex}.panel-heading h2,.profile-card h2{letter-spacing:-.35px;margin:0;font-size:17px}.panel-heading p{color:#71839c;margin:3px 0 0;font-size:10px}.panel-heading>span{color:#8ba0ba;font-size:20px}.status-layout{grid-template-columns:46% 1fr;align-items:center;gap:16px;min-height:230px;display:grid}.donut{aspect-ratio:1;background:conic-gradient(#2563eb 0 63.6%, #14b8a6 63.6% 80.3%, #a855f7 80.3% 89.4%, #6366f1 89.4% 95.5%, #f59e0b 95.5% 97%, #ef4444 97%);border-radius:50%;place-items:center;width:156px;margin:auto;display:grid}.donut:before{content:"";aspect-ratio:1;background:#fff;border-radius:50%;width:116px}.donut span{text-align:center;position:absolute}.donut strong{font-size:20px;display:block}.donut small{color:#94a3b8;text-transform:uppercase;font-size:9px;display:block}.legend-list{gap:10px;display:grid}.legend-list>div{grid-template-columns:8px 1fr auto auto;align-items:center;gap:7px;font-size:10px;display:grid}.legend-list i{border-radius:2px;width:7px;height:7px}.legend-list small{color:#8ba0ba}.bar-list{gap:16px;display:grid}.bar-list p{justify-content:space-between;align-items:center;gap:12px;margin:0 0 7px;font-size:10px;display:flex}.bar-list p>span:last-child{align-items:center;gap:6px;display:flex}.bar-list>div>i{background:#eef2f7;border-radius:99px;height:7px;display:block;overflow:hidden}.bar-list>div>i b{border-radius:inherit;height:100%;display:block}.pill{white-space:nowrap;border:1px solid;border-radius:5px;align-items:center;padding:3px 7px;font-size:9px;line-height:1;display:inline-flex}.pill-blue{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.pill-green{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.pill-amber{color:#b45309;background:#fffbeb;border-color:#fde68a}.pill-purple{color:#7e22ce;background:#faf5ff;border-color:#e9d5ff}.pill-red{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.pill-slate{color:#475569;background:#f8fafc;border-color:#dbe4ef}.platform-list{gap:13px}.platform-list p span{align-items:center}.platform-list em{border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.funnel-list{gap:11px;display:grid}.funnel-list>div{grid-template-columns:95px 1fr;align-items:center;gap:8px;font-size:10px;display:grid}.funnel-list i{background:#eef2f7;border-radius:5px;height:24px;display:block;overflow:hidden}.funnel-list b{color:#fff;border-radius:5px;justify-content:space-between;align-items:center;gap:5px;min-width:64px;height:100%;padding:0 6px;font-style:normal;display:flex}.funnel-list em{white-space:nowrap;font-style:normal;font-weight:600}.matches-panel{margin-top:14px;padding:0;overflow:hidden}.matches-panel .panel-heading{margin:0;padding:17px 20px 12px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:860px}th{color:#61738d;text-align:left;letter-spacing:.7px;text-transform:uppercase;background:#f8fafc;padding:12px 15px;font-size:9px}td{color:#50627d;border-top:1px solid #edf1f6;padding:14px 15px;font-size:10px}td strong{color:var(--ink)}.table-footer{color:#71839c;border-top:1px solid #edf1f6;justify-content:space-between;padding:13px 15px;font-size:10px;display:flex}.profile-wrap{max-width:1100px}.profile-intro{border-bottom:1px solid var(--line);align-items:flex-end;padding-bottom:16px}.profile-intro>div:first-child{max-width:490px}.profile-intro>div:first-child>p:not(.eyebrow){max-width:480px;line-height:1.55}.profile-grid{grid-template-columns:minmax(0,1.45fr) minmax(330px,1fr);align-items:start;gap:20px;display:grid}.profile-column{gap:18px;display:grid}.profile-card{padding:23px;position:relative;overflow:hidden}.profile-card:before{content:"";background:var(--green);border-radius:0 4px 4px 0;width:3px;position:absolute;inset:22px auto 22px 0}.profile-card.blue:before{background:var(--blue)}.section-label{color:var(--green);letter-spacing:.8px;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:800}.profile-card.blue .section-label{color:var(--blue)}.profile-card h2{margin-bottom:16px;font-size:20px}.profile-card>p:not(.section-label):not(.micro-heading){color:#50627d;line-height:1.5}.empty-upload{text-align:center;background:#fbfdff;border:2px dashed #cbd8e8;border-radius:10px;padding:25px}.empty-upload>span{width:38px;height:38px;color:var(--blue);background:#eff6ff;border-radius:50%;place-items:center;margin:0 auto 10px;font-size:20px;display:grid}.empty-upload strong{display:block}.empty-upload p{color:#71839c;margin:5px 0 14px;font-size:11px}.micro-heading{color:#516681;letter-spacing:.6px;text-transform:uppercase;margin:16px 0 9px;font-size:10px}.tags{flex-wrap:wrap;gap:8px;display:flex}.tags span{background:#f8fafc;border:1px solid #dbe4ef;border-radius:7px;padding:8px 11px;font-size:11px}.tags.muted span{color:#71839c}.tags .suggestion{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.notice{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;grid-template-columns:auto 1fr;gap:4px 8px;margin-bottom:13px;padding:11px 12px;font-size:11px;display:grid}.notice span{color:#315b52}.choice-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.choice-grid>span{background:#f8fafc;border:1px solid #dbe4ef;border-radius:8px;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;min-height:48px;padding:0 12px;font-size:11px;display:grid}.choice-grid i{background:var(--blue);border-radius:50%;width:6px;height:6px}.choice-grid b{color:#a7b7ca;font-size:16px;font-weight:400}.add-row{grid-template-columns:1fr auto;gap:8px;margin-top:9px;display:grid}.add-row>span{color:#94a3b8;background:#f8fafc;border:1px solid #dbe4ef;border-radius:8px;align-items:center;padding:0 11px;font-size:10px;display:flex}.engagement-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.engagement-grid label{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:9px;min-height:57px;padding:10px;display:flex}.engagement-grid label.selected{color:#17233a;border-color:#93c5fd;border-left:3px solid var(--blue);background:#eff6ff}.engagement-grid input{accent-color:var(--blue)}.engagement-grid strong,.engagement-grid small{display:block}.engagement-grid small{color:#94a3b8;letter-spacing:.5px;font-size:9px}.engagement-grid .selected small{color:#047857}.availability,.location-box,.governance-row{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;align-items:flex-start;gap:12px;margin-top:14px;padding:13px;display:flex}.availability>span,.governance-row>span{color:#047857;background:#d1fae5;border-radius:7px;flex:0 0 34px;place-items:center;height:34px;display:grid}.availability small,.availability strong,.availability p,.location-box strong,.location-box small{display:block}.availability small{letter-spacing:.5px;text-transform:uppercase;font-size:9px}.availability p,.governance-row p{color:#50627d;margin:4px 0 0;font-size:10px}.location-box{background:#f8fafc;border-color:#dbe4ef;margin-top:0}.location-box>span{color:var(--blue);font-size:20px}.location-box small{color:#71839c;margin-top:4px;font-size:10px}.rate-grid{border-top:1px solid #edf1f6;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:13px;padding-top:13px;display:grid}.rate-grid>div{background:#f8fafc;border:1px solid #dbe4ef;border-radius:8px;padding:13px}.rate-grid small{color:#71839c;text-transform:uppercase;font-size:9px}.rate-grid strong{margin:7px 0 5px;font-size:14px;display:block}.rate-grid p{color:#94a3b8;margin:0;font-size:9px}.governance-row{background:#f8fafc;border-color:#dbe4ef}.governance-row strong{font-size:11px}.profile-footer{justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding:15px;display:flex}.profile-footer>span{align-items:center;gap:10px;display:flex}.profile-footer i{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:50%;place-items:center;width:30px;height:30px;font-style:normal;display:grid}.profile-footer strong,.profile-footer small{display:block}.profile-footer small{color:#71839c;font-size:10px}.planned-page{text-align:center;max-width:700px;margin:10vh auto;padding:48px}.planned-page>span{color:var(--blue);letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700}.planned-page h1{letter-spacing:-1.5px;margin:12px 0;font-size:40px}.planned-page p{color:#64748b;line-height:1.65}.planned-page .button{margin-top:12px}.loading-card{align-items:center;gap:12px;max-width:360px;margin:15vh auto;padding:30px;display:flex}.loading-card i{border:2px solid #bfdbfe;border-top-color:var(--blue);border-radius:50%;width:18px;height:18px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:980px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.sidebar{width:76px}.brand{justify-content:center;padding:0}.brand>span:last-child,.nav-label,.nav-item>span:nth-child(2),.nav-count,.coming-soon span:last-child{display:none}.sidebar nav{padding:8px}.nav-item{justify-content:center;padding:0;display:flex}.nav-icon{font-size:20px}.coming-soon{justify-content:center}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{grid-template-columns:1fr}}@media (max-width:720px){.app-shell{padding-bottom:66px;display:block}.app-column{display:block}.sidebar{border:0;border-top:1px solid var(--line);flex-direction:row;width:auto;height:66px;position:fixed;inset:auto 0 0}.brand,.nav-label,.coming-soon{display:none}.sidebar nav{grid-template-columns:repeat(6,1fr);gap:0;width:100%;padding:5px;display:grid}.nav-item{min-height:54px}.topbar{height:54px;padding:0 13px}.search-status{text-overflow:ellipsis;max-width:50vw;overflow:hidden}.candidate,.notification,.topbar .danger{display:none}.page-wrap{padding:14px 12px 28px}.page-intro{display:block}.button-row{justify-content:flex-start;margin-top:14px}.button-row .button{flex:auto}.metrics-grid,.dashboard-grid,.status-layout{grid-template-columns:1fr}.legend-list{width:100%;max-width:280px;margin:auto}.profile-card{padding:18px}.choice-grid,.engagement-grid,.rate-grid{grid-template-columns:1fr}.profile-footer{flex-direction:column;align-items:stretch}.planned-page{padding:30px 20px}}.login-wrap{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.login-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:100%;max-width:420px;padding:32px;box-shadow:0 18px 40px #0f172a14}.login-card h1{margin:20px 0 8px;font-size:22px}.login-intro{color:#475569;margin-bottom:22px;font-size:14px;line-height:1.5}.login-footnote{color:#64748b;margin-top:20px;font-size:12px}.login-form{gap:16px;display:grid}.login-form .button{width:100%}.login-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.field{margin-bottom:14px;display:block}.field>span{color:#475569;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.field input:not([type=checkbox]),.field select,.field textarea{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:9px 11px;font-family:inherit;font-size:14px}.field textarea{resize:vertical;line-height:1.5}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:#2563eb;outline:2px solid #bfdbfe}.field.inline{align-items:center;gap:8px;margin-bottom:0;display:flex}.field.inline>strong{font-size:14px}.tags label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.documents-wrap{max-width:1100px}.documents-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.upload-form{gap:12px;margin-top:18px;display:grid}.upload-form .field{margin-bottom:0}.upload-form input[type=file]{background:#f8fafc;border:1px dashed #b9c8da;border-radius:8px;width:100%;padding:12px}.consent-row{color:#475569;align-items:flex-start;gap:9px;font-size:12px;line-height:1.45;display:flex}.consent-row input{margin-top:3px}.document-help{color:#64748b;margin:14px 0 0;font-size:11px;line-height:1.5}.document-policy{margin-bottom:18px}.policy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.policy-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;padding:14px}.policy-grid strong{margin-bottom:5px;font-size:12px;display:block}.policy-grid p{color:#64748b;margin:0;font-size:11px;line-height:1.5}.source-group+.source-group{border-top:1px solid #edf1f6;margin-top:18px;padding-top:18px}.source-group h3{margin:0 0 9px;font-size:13px}.source-group ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.source-group li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.source-group strong,.source-group small{display:block}.source-group small,.empty-row{color:#64748b;margin-top:4px;font-size:10px}.source-actions{align-items:center;gap:8px;display:flex}.source-actions form{margin:0}.source-actions .button{padding:5px 9px;font-size:10px}.extract-panel{margin-bottom:18px}.extract-preview{margin-top:12px}.extract-preview summary{color:#2563eb;cursor:pointer;font-size:11px}.extract-preview pre{color:#0f172a;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;max-height:460px;margin:10px 0 0;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.6;overflow:auto}@media (max-width:720px){.documents-grid,.policy-grid{grid-template-columns:1fr}.source-group li{flex-direction:column;align-items:flex-start}}
