:root{color:#111827;background:#f5f5f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,rgba(120,180,255,.22),transparent 34rem),radial-gradient(circle at top right,rgba(0,0,0,.06),transparent 28rem),#f5f5f7}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;padding:22px 28px 40px}.topbar{display:flex;align-items:center;justify-content:space-between;max-width:1360px;margin:0 auto 28px;padding:10px 12px 10px 10px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#ffffff9e;box-shadow:0 18px 60px #0f172a14;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#111827,#4b5563);font-size:13px;font-weight:800}.topbar nav{display:flex;gap:4px}.topbar button{border-radius:999px;padding:9px 14px;color:#4b5563;background:transparent;box-shadow:none;font-size:14px;font-weight:700}.topbar button:hover:not(:disabled),.topbar button.active{transform:none;color:#111827;background:#1118270f;box-shadow:none}.workspace{display:grid;grid-template-columns:minmax(320px,430px) minmax(0,1fr);gap:28px;max-width:1360px;margin:0 auto;align-items:start}.person-create-view{display:grid;gap:24px;max-width:1360px;margin:0 auto}.person-create-heading{max-width:760px}.person-create-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:24px;align-items:start}.person-create-panel{border:1px solid rgba(255,255,255,.8);border-radius:30px;padding:28px;background:#ffffffd1;box-shadow:0 30px 90px #0f172a1a;-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}.person-create-panel.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.person-create-panel .wide,.person-create-panel button,.upload-panel .panel-heading,.upload-panel .file-drop{grid-column:1 / -1}.panel-heading.compact{grid-column:1 / -1;margin-bottom:8px}.panel-heading.compact h2{margin-bottom:8px;font-size:22px}.panel-heading.compact p{margin-bottom:0;color:#6b7280;font-size:14px;line-height:1.5}.upload-panel{display:grid;gap:18px}.file-drop{min-height:180px;place-items:center;border:1px dashed rgba(0,113,227,.35);border-radius:24px;padding:28px;color:#005bb5;background:#f3f8ff;text-align:center;cursor:pointer}.file-drop input{display:none}.file-drop span{font-weight:900}.input-pane,.preview-pane{border:1px solid rgba(255,255,255,.8);border-radius:30px;background:#ffffffc2;box-shadow:0 30px 90px #0f172a1a;-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}.input-pane{position:sticky;top:24px;padding:28px}.panel-heading{margin-bottom:26px}.eyebrow{margin:0 0 12px;color:#0071e3;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:11em;margin-bottom:14px;font-size:clamp(30px,3.4vw,46px);line-height:1.06;letter-spacing:0}h2{margin-bottom:0;font-size:clamp(24px,2.3vw,34px);line-height:1.1;letter-spacing:0}h3{margin-bottom:14px;font-size:15px;letter-spacing:0}.lead{max-width:34ch;margin-bottom:0;color:#6b7280;font-size:15px;line-height:1.45}.form-grid{display:grid;gap:14px}label{display:grid;gap:8px;color:#4b5563;font-size:13px;font-weight:700}input,select,textarea{width:100%;border:1px solid rgba(209,213,219,.9);border-radius:18px;padding:14px 16px;color:#111827;background:#ffffffdb;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.person-picker{position:relative}.person-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;border:1px solid rgba(209,213,219,.9);border-radius:18px;padding:14px 16px;color:#111827;background:#ffffffdb;box-shadow:none;text-align:left}.person-trigger:hover:not(:disabled){transform:none;background:#fff;box-shadow:0 0 0 5px #0071e31a}.chevron{color:#6b7280;font-size:18px;line-height:1}.person-menu{position:absolute;z-index:20;top:calc(100% + 8px);left:0;right:0;display:grid;gap:10px;border:1px solid rgba(229,231,235,.9);border-radius:22px;padding:10px;background:#fffffff5;box-shadow:0 24px 60px #0f172a29;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.person-menu input{border-radius:14px;padding:11px 12px}.person-options{display:grid;gap:4px;max-height:230px;overflow:auto}.person-option{display:grid;gap:3px;border-radius:14px;padding:10px 12px;color:#111827;background:transparent;box-shadow:none;text-align:left}.person-option:hover:not(:disabled),.person-option.selected{transform:none;color:#111827;background:#f0f7ff;box-shadow:none}.person-option small{color:#6b7280;font-size:12px;font-weight:600}.person-empty{margin:8px 4px;color:#8a93a3;font-size:14px}input:focus,select:focus,textarea:focus{border-color:#0071e39e;background:#fff;box-shadow:0 0 0 5px #0071e31f}textarea{resize:vertical;min-height:240px;line-height:1.55}button{border:0;border-radius:999px;padding:15px 18px;color:#fff;background:#0071e3;box-shadow:0 16px 34px #0071e342;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}button:hover:not(:disabled){transform:translateY(-1px);background:#0077ed;box-shadow:0 20px 42px #0071e352}button:disabled{cursor:wait;opacity:.7}.secondary-button{color:#111827;background:#fff;box-shadow:inset 0 0 0 1px #1118271f,0 12px 26px #0f172a14}.secondary-button:hover:not(:disabled){background:#f9fafb;box-shadow:inset 0 0 0 1px #11182729,0 16px 34px #0f172a1f}.preview-pane{padding:34px;min-height:calc(100vh - 64px);background:#ffffffe6}.empty-state{display:grid;place-content:center;color:#6b7280;text-align:center}.preview-placeholder{display:grid;justify-items:center;gap:16px;max-width:520px}.document-icon{display:grid;width:86px;height:108px;place-items:center;border-radius:20px;color:#0071e3;background:linear-gradient(180deg,#fff,#eef6ff);box-shadow:inset 0 0 0 1px #0071e31f,0 22px 50px #0f172a1f;font-weight:900}.preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:26px;border-bottom:1px solid #e5e7eb}.preview-actions{display:flex;flex:0 0 auto;align-items:center;gap:10px}.document-label{margin-bottom:10px;color:#0071e3;font-size:13px;font-weight:800;text-transform:uppercase}.status-pill{border-radius:999px;padding:8px 12px;color:#047857;background:#ecfdf5;font-size:13px;font-weight:800}.download-button{border-radius:999px;padding:10px 14px;color:#fff;background:#111827;font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 12px 26px #11182729}.download-button:hover{background:#000}.docx-preview-shell{margin-top:26px;overflow:auto;border-radius:18px;background:#e5e7eb;padding:18px}.docx-preview-container{display:grid;justify-content:center;min-height:540px}.docx-preview-container .docx-wrapper{background:transparent;padding:0}.docx-preview-container .docx{box-shadow:0 18px 44px #0f172a2e}.matching-panel{display:grid;gap:22px;border-bottom:1px solid #e5e7eb;padding-bottom:28px;margin-bottom:28px}.matching-panel.loading-panel{grid-template-columns:auto 1fr;align-items:center;border:1px solid rgba(0,113,227,.14);border-radius:22px;padding:22px;background:linear-gradient(180deg,#fff,#f3f8ff)}.matching-loader{width:46px;height:46px;border:4px solid #dbeafe;border-top-color:#0071e3;border-radius:50%;animation:spin 1s linear infinite}.matching-loader.small{width:18px;height:18px;border-width:3px}.process-inline{display:flex;align-items:center;gap:10px;border:1px solid rgba(0,113,227,.14);border-radius:16px;padding:12px 14px;color:#005bb5;background:#f3f8ff;font-size:14px;font-weight:800}.optimization-timeline{display:grid;gap:10px;border:1px solid #e5e7eb;border-radius:18px;padding:12px;background:#fff}.optimization-step{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:start;padding:10px;border-radius:14px;background:#f9fafb}.optimization-step>span{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border-radius:999px;background:#e8f2ff;color:#005bb5;font-size:13px;font-weight:900}.optimization-step strong{display:block;color:#111827;font-size:13px;line-height:1.35}.optimization-step p{margin:4px 0 0;color:#6b7280;font-size:12px;line-height:1.4}.low-score-warning{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;border:1px solid rgba(180,35,24,.18);border-radius:18px;padding:16px;background:#fff7ed}.low-score-warning strong{color:#9a3412;font-size:15px}.low-score-warning p{margin:6px 0 0;color:#7c2d12;font-size:14px;line-height:1.45}.warning-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.warning-actions button{padding:11px 14px;font-size:13px}.matching-score-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.score-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;flex:1 1 0}.score-summary.featured{border:1px solid rgba(0,113,227,.14);border-radius:20px;padding:16px;background:#f3f8ff}.score-ring{display:grid;flex:0 0 auto;width:124px;height:124px;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#ffffff 0 56%,transparent 57%),conic-gradient(#0071e3 var(--score),#e5e7eb 0);box-shadow:0 20px 44px #0f172a1f}.score-ring span{color:#111827;font-size:30px;font-weight:900}.recommendation-row{display:flex;flex-wrap:wrap;gap:10px}.confidence-pill{border-radius:999px;padding:8px 12px;color:#374151;background:#f3f4f6;font-size:13px;font-weight:800}.score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.score-item{display:grid;gap:8px;border:1px solid #e5e7eb;border-radius:18px;padding:14px;background:#fff}.score-item div:first-child{display:flex;justify-content:space-between;gap:12px;color:#4b5563;font-size:13px;font-weight:800}.score-item strong{color:#111827}.score-bar{overflow:hidden;height:8px;border-radius:999px;background:#e5e7eb}.score-bar span{display:block;height:100%;border-radius:inherit;background:#0071e3}.matching-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.matching-columns .preview-section{border-top:0;margin-top:0;padding-top:0}.skill-cloud.compact{gap:8px}.requirement-list{display:grid;gap:10px}.requirement-item{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;border:1px solid #e5e7eb;border-radius:18px;padding:14px;background:#fff}.requirement-item strong{color:#111827;font-size:14px}.requirement-item p{margin:6px 0 0;color:#6b7280;font-size:13px;line-height:1.45}.match-level{border-radius:999px;padding:6px 10px;color:#111827;background:#f3f4f6;font-size:13px;font-weight:900}.match-level.full{color:#047857;background:#ecfdf5}.match-level.partial{color:#92400e;background:#fffbeb}.match-level.weak,.match-level.none{color:#b42318;background:#fef3f2}.matching-empty-copy{padding-top:4px}@keyframes spin{to{transform:rotate(360deg)}}.summary{max-width:74ch;margin:22px 0 4px;color:#374151;font-size:16px;line-height:1.65}.preview-section{border-top:1px solid #e5e7eb;padding-top:20px;margin-top:22px}.preview-section ul{margin:0;padding-left:0;list-style:none}.preview-section li{position:relative;margin:10px 0;padding-left:20px;color:#374151;font-size:15px;line-height:1.55}.preview-section li:before{position:absolute;left:0;top:.68em;width:6px;height:6px;border-radius:50%;background:#0071e3;content:""}.skill-cloud{display:flex;flex-wrap:wrap;gap:10px}.skill-cloud span{border:1px solid rgba(0,113,227,.18);border-radius:999px;padding:9px 13px;color:#005bb5;background:#f0f7ff;font-size:13px;font-weight:800}.muted{color:#8a93a3}.error{margin:16px 0 0;color:#b42318;font-weight:700}.success{margin:0;border:1px solid rgba(22,163,74,.18);border-radius:16px;padding:14px 16px;color:#166534;background:#f0fdf4;font-weight:800}@media (max-width: 900px){.app-shell{padding:14px}.topbar{margin-bottom:16px}.workspace{grid-template-columns:1fr;gap:16px}.person-create-grid,.person-create-panel.form-grid{grid-template-columns:1fr}.input-pane{position:static;padding:22px}.preview-pane{padding:24px;min-height:420px}.preview-header{display:grid}.preview-actions{flex-wrap:wrap}.matching-panel.loading-panel,.matching-score-header,.score-summary,.matching-columns,.score-grid,.requirement-item,.low-score-warning{grid-template-columns:1fr}.warning-actions{justify-content:stretch}.warning-actions button{width:100%}}
