:root{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background:#f8fafc}:root[data-theme=dark]{color:#f8fafc;background:#020817}*{box-sizing:border-box}body{margin:0;min-width:320px;background:inherit}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #886af2;outline-offset:2px}.auth-screen{min-height:100dvh;display:grid;place-content:center;gap:26px;padding:28px;background:radial-gradient(circle at 50% 0,#2c1e66 0,transparent 32%),#020817;color:#f8fafc}.auth-screen section{width:min(100%,420px)}.auth-logo{width:134px;color:#f8fafc}.eyebrow{color:#7653ee;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:750}.auth-screen h1{font-size:clamp(2.4rem,7vw,4.6rem);line-height:.94;letter-spacing:-.06em;margin:12px 0}.auth-screen p{color:#aab7cf;line-height:1.6}.auth-screen form{display:grid;gap:8px;margin-top:24px}.auth-screen input,.job-form input,.job-form textarea,.requirements-review input,.requirements-review textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--text);padding:11px 12px}.auth-screen input{--line: #334155;--field: #111c33;--text: #f8fafc}.auth-screen form button,.primary-button{border:0;border-radius:8px;background:#7551e9;color:#fff;padding:11px 14px;font-weight:700}.secondary-button{width:100%;border:0;border-radius:8px;background:#25304a;color:#fff;padding:11px 14px;font-weight:700;margin-top:10px}:root[data-theme=dark] .sidebar-brand img,.auth-logo{filter:invert(1)}.app-shell{--bg: #f8fafc;--surface: #fff;--surface-muted: #f1f5f9;--text: #0f172a;--muted: #64748b;--line: #dbe3ee;--field: #fff;--nav-active: #e9edf5;min-height:100dvh;display:grid;align-items:start;grid-template-columns:254px minmax(0,1fr);background:var(--bg);color:var(--text)}:root[data-theme=dark] .app-shell{--bg: #020817;--surface: #020817;--surface-muted: #1e293b;--text: #f8fafc;--muted: #9fb0c8;--line: #1e2d45;--field: #0d172a;--nav-active: #1e2b40}.sidebar-closed{grid-template-columns:70px minmax(0,1fr)}.sidebar{position:sticky;top:0;align-self:start;height:100dvh;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--surface);overflow:hidden}.sidebar-brand{height:65px;display:flex;align-items:center;gap:10px;padding:0 16px 0 24px;border-bottom:1px solid var(--line)}.sidebar-brand img{width:143px;color:var(--text)}.icon-button{width:36px;height:36px;border:0;border-radius:8px;display:grid;place-items:center;background:transparent;color:var(--muted)}.icon-button:hover{background:var(--surface-muted);color:var(--text)}.icon-button svg,.nav-item svg,.primary-button svg{width:18px;height:18px;stroke-width:1.8}.collapse-button{margin-left:auto;flex:0 0 auto}.sidebar nav{display:grid;gap:4px;padding:16px 9px}.nav-item{min-height:40px;width:100%;display:flex;align-items:center;gap:14px;border:0;border-radius:8px;background:transparent;color:var(--text);padding:0 14px;text-align:left;white-space:nowrap}.nav-item:hover{background:var(--surface-muted)}.nav-item.active{background:var(--nav-active);color:var(--text);font-weight:700}.nav-item small{margin-left:auto;color:var(--muted);font-size:.68rem}.sidebar-footer{margin-top:auto;padding:10px 9px 18px;border-top:1px solid var(--line)}.sidebar-footer svg{color:#7653ee}.sidebar-closed .sidebar-brand{padding-inline:17px}.sidebar-closed .sidebar-brand img,.sidebar-closed .nav-item span,.sidebar-closed .nav-item small{display:none}.sidebar-closed .nav-item{justify-content:center;padding:0}.sidebar-closed .collapse-button{margin:0}.app-main{min-width:0}.topbar{min-height:65px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 26px;border-bottom:1px solid var(--line);background:var(--surface)}.search-placeholder{width:min(100%,300px);min-height:40px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;color:var(--muted);padding:0 11px;font-size:.9rem}.search-placeholder svg{width:17px}.header-actions{display:flex;align-items:center;gap:9px;margin-left:auto}.avatar-menu{position:relative}.avatar-menu summary{width:34px;height:34px;display:grid;place-items:center;list-style:none;border-radius:999px;background:var(--surface-muted);color:var(--text);font-size:.8rem;font-weight:750;cursor:pointer}.avatar-menu summary::-webkit-details-marker{display:none}.avatar-menu div{position:absolute;right:0;top:calc(100% + 10px);z-index:5;width:240px;display:grid;gap:2px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 16px 42px #0f172a2e}.avatar-menu strong{font-size:.9rem}.avatar-menu span{color:var(--muted);font-size:.75rem;margin-bottom:8px;overflow-wrap:anywhere}.avatar-menu button{display:flex;align-items:center;gap:9px;border:0;border-radius:7px;background:transparent;color:var(--text);padding:9px;text-align:left;font-size:.86rem}.avatar-menu button:hover{background:var(--surface-muted)}.avatar-menu button:disabled{opacity:.55;cursor:not-allowed}.avatar-menu svg{width:16px}.avatar-menu small{margin-left:auto;color:var(--muted)}.mobile-menu{display:none}.workspace-content{max-width:1600px;margin:0 auto;padding:28px 26px 48px}.status-message{margin:0 0 18px;padding:11px 14px;border:1px solid #7653ee;border-radius:8px;color:var(--text);background:color-mix(in srgb,#7653ee 10%,var(--surface))}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.page-heading h1{margin:0;font-size:clamp(2rem,4vw,2.55rem);letter-spacing:-.045em;line-height:1.05}.page-heading p{margin:5px 0 0;color:var(--muted)}.primary-button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric,.panel{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.metric{min-height:134px;display:grid;justify-items:center;align-content:center;gap:8px;text-align:center}.metric div{color:#7653ee}.metric strong{font-size:1.85rem;letter-spacing:-.04em}.metric span{color:var(--muted);font-size:.9rem}.dashboard-grid,.job-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.panel{padding:24px}.panel h2{margin:0 0 8px;font-size:1.22rem;letter-spacing:-.025em}.panel ul{list-style:none;padding:0;margin:14px 0 0}.panel li{display:grid;gap:4px;padding:13px 0;border-top:1px solid var(--line)}.panel li span,.saved-list span{color:var(--muted);font-size:.85rem}.empty-state{min-height:180px;display:grid;place-content:center;text-align:center}.empty-state strong{font-size:.95rem}.empty-state p{max-width:310px;margin:7px 0 0;color:var(--muted);line-height:1.5;font-size:.88rem}.job-form{display:grid;gap:8px}.job-form textarea{min-height:220px;resize:vertical}.job-form .primary-button{justify-self:start;margin-top:6px}.saved-list button{width:100%;display:grid;gap:4px;padding:13px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.saved-list button:hover strong,.saved-list button.selected strong{color:#7653ee}.saved-list button:disabled{cursor:wait}.requirements-review{margin-top:24px}.requirements-review>label{display:grid;gap:7px;margin:16px 0;font-size:.85rem;font-weight:700}.requirements-review>p{color:var(--muted);line-height:1.55}.requirements-review article{margin-top:13px;padding:14px;border:1px solid var(--line);border-radius:8px}.requirements-review article label{display:flex;justify-content:space-between;gap:12px;font-size:.84rem;font-weight:700}.requirements-review article label span{color:#7653ee;text-transform:capitalize;font-weight:600}.requirements-review textarea{min-height:78px;margin-top:9px;resize:vertical}.requirements-review blockquote{margin:10px 0 0;color:var(--muted);font-size:.83rem;line-height:1.45}.requirements-review blockquote:before{content:"Source: ";color:var(--text);font-weight:700}.requirements-review>.primary-button{margin-top:18px}@media(max-width:900px){.app-shell,.sidebar-closed{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;z-index:10;width:254px;transform:translate(-100%);transition:transform .2s ease;box-shadow:12px 0 30px #0f172a29}.mobile-nav-open .sidebar{transform:translate(0)}.mobile-menu{display:grid}.collapse-button{display:none}.sidebar-brand img,.nav-item span,.nav-item small{display:initial}.nav-item{justify-content:flex-start;padding:0 14px}.topbar{padding-inline:16px}.workspace-content{padding:24px 16px 42px}.search-placeholder{display:none}.dashboard-grid,.job-layout{grid-template-columns:1fr}}@media(max-width:640px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{min-height:116px}.metric strong{font-size:1.55rem}.metric span{font-size:.8rem}.page-heading{display:grid}.page-heading .primary-button{justify-self:start}.panel{padding:18px}.header-actions>.icon-button:first-child{display:none}}.admin-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding-block:16px}.admin-panel div{display:grid;gap:4px}.admin-panel span{color:var(--muted);font-size:.86rem}.secondary-outline,.rename-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text);padding:9px 13px;font-weight:650}.secondary-outline:hover,.rename-button:hover{background:var(--surface-muted)}.secondary-outline svg,.rename-button svg{width:17px;height:17px}.jobs-panel>div:first-child>p,.requirements-header p{margin:0;color:var(--muted)}.table-toolbar{display:flex;justify-content:flex-end;margin:24px 0 16px}.table-toolbar label{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.86rem}.table-toolbar select,.requirement-dialog select{border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--text);padding:9px 11px}.job-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}.job-table{width:100%;min-width:760px;border-collapse:collapse;text-align:left}.job-table th{color:var(--muted);font-size:.86rem;font-weight:500}.job-table th,.job-table td{padding:15px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.job-table tbody tr:last-child td{border-bottom:0}.job-table tbody tr[tabindex]{cursor:pointer}.job-table tbody tr[tabindex]:hover,.job-table tbody tr[tabindex]:focus{background:var(--surface-muted);outline:0}.job-table tbody td:first-child{font-weight:500}.table-actions{width:92px;white-space:nowrap;text-align:right}.table-icon{width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:var(--text)}.table-icon:hover{background:var(--surface-muted)}.table-icon:disabled{opacity:.4;cursor:not-allowed}.table-icon svg{width:16px;height:16px}.table-icon.danger{color:#ef4444}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px;color:var(--muted);font-size:.86rem}.pagination button{border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:7px 10px}.pagination button:disabled{opacity:.45;cursor:not-allowed}.results-panel{padding:24px}.results-heading,.requirements-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.results-heading h2{margin-bottom:18px}.rename-button{min-height:34px;padding:6px 9px;font-size:.82rem}.tabs{display:inline-flex;gap:2px;padding:4px;border-radius:9px;background:var(--surface-muted)}.tabs button{border:0;border-radius:7px;background:transparent;color:var(--muted);padding:8px 12px;font-weight:600}.tabs button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0f172a26}.requirements-table{margin-top:10px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.requirements-header{padding:18px 17px}.requirements-header h2{margin:0 0 5px;font-size:1.1rem}.requirements-header p{font-size:.8rem}.job-text{margin-top:12px;padding:20px;border:1px solid var(--line);border-radius:10px}.job-text h2{margin:0 0 14px;font-size:1.1rem}.job-text pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;color:var(--muted)}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0208179e}.requirement-dialog{width:min(100%,620px);display:grid;gap:15px;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 24px 64px #02081757}.requirement-dialog h2{margin:0}.requirement-dialog label{display:grid;gap:7px;font-size:.86rem;font-weight:650}.requirement-dialog textarea{min-height:105px;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--text);padding:10px;resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.requirement-dialog input{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--text);padding:10px}.dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.requirement-dialog .checkbox-label{display:flex;align-items:center;gap:9px}.requirement-dialog .checkbox-label input{width:auto}.compact-dialog{width:min(100%,440px)}@media(max-width:640px){.jobs-panel,.results-panel{padding:16px}.table-toolbar{justify-content:flex-start;margin-block:16px}.requirements-header,.results-heading{display:grid}.requirements-header .secondary-outline{justify-self:start}.pagination{justify-content:space-between}.job-table{min-width:620px}.modal-backdrop{align-items:end;padding:0}.requirement-dialog{width:100%;border-radius:14px 14px 0 0}.dialog-actions{display:grid;grid-template-columns:1fr 1fr}}
