:root{color:#172036;font-synthesis:none;text-rendering:optimizelegibility;--ink:#172036;--muted:#6b758b;--line:#e4e8f1;--surface:#fff;--surface-soft:#f8f9fc;--primary:#4157c8;--primary-dark:#2f419f;--primary-soft:#edf0ff;--green:#16845b;--green-soft:#e9f7f1;--amber:#a8660d;--amber-soft:#fff6df;--red:#be3c50;--red-soft:#fff0f2;--shadow:0 10px 30px #1d284912;background:#f4f6fa;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:#f4f6fa;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:224px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#dce3ff;z-index:10;background:#11172a;flex-direction:column;height:100vh;padding:28px 18px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 8px 30px;display:flex}.brand>div:last-child{flex-direction:column;line-height:1.15;display:flex}.brand strong{color:#fff;letter-spacing:-.02em;font-size:17px}.brand span{color:#8e9bc1;font-size:11px}.brand-mark{color:#fff;background:linear-gradient(145deg,#536be1,#a764d5);border-radius:15px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 12px 30px #5065da47}.brand-mark span{color:#fff;font-family:Georgia,serif;font-size:28px;transform:translateY(-1px)}.brand-mark.small{width:38px;height:38px;box-shadow:none;border-radius:12px}.brand-mark.small span{font-size:22px}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button,.logout{color:#8f9bbb;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;width:100%;padding:11px 12px;transition:all .18s;display:flex}.sidebar nav button:hover,.logout:hover{color:#fff;background:#ffffff0f}.sidebar nav button.active{color:#fff;background:#3549a9;box-shadow:inset 0 0 0 1px #ffffff14}.sidebar-bottom{gap:10px;margin-top:auto;display:grid}.manual-only{color:#91dbb9;background:#1c8b5e1a;border:1px solid #7ad5ad38;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.logout{border-top:1px solid #ffffff12;border-radius:0;padding-top:16px}.content-shell{min-width:0;padding:38px clamp(24px,4vw,62px) 70px}.page-stack{flex-direction:column;gap:22px;max-width:1440px;margin:0 auto;display:flex}.stack{flex-direction:column;gap:14px;display:flex}.stack-large{flex-direction:column;gap:20px;display:flex}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}h1,h2,h3,p{margin-top:0}.page-heading h1{letter-spacing:-.045em;margin:3px 0 8px;font-size:clamp(30px,4vw,42px)}.page-heading p{margin-bottom:0}.eyebrow{color:var(--primary);letter-spacing:.16em;margin-bottom:5px;font-size:10px;font-weight:800}.muted{color:var(--muted)}.small-text{font-size:12px}.button{white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-size:13px;font-weight:700;transition:all .18s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.52;cursor:not-allowed}.button.primary{background:var(--primary);color:#fff;box-shadow:0 8px 18px #4157c82e}.button.primary:hover:not(:disabled){background:var(--primary-dark)}.button.secondary{color:#3d4961;border-color:var(--line);background:#fff}.button.secondary:hover:not(:disabled){background:#fafbfe;border-color:#cbd3e5}.button.small{padding:7px 10px;font-size:12px}.button.full{width:100%}.danger-button{color:var(--red);background:#fff;border:1px solid #f0cad1}.icon-button{border:1px solid var(--line);color:#59657c;background:#fff;border-radius:10px;place-items:center;width:39px;height:39px;display:inline-grid}.text-button{color:var(--primary);background:0 0;border:0;font-weight:700}.back-button{color:#5f6c84;background:0 0;border:0;align-self:flex-start;align-items:center;gap:7px;padding:0;display:flex}input,textarea,select{width:100%;color:var(--ink);background:#fff;border:1px solid #dce1eb;border-radius:9px;outline:0;padding:10px 11px;transition:all .15s}textarea{resize:vertical;line-height:1.55}input:focus,textarea:focus,select:focus{border-color:#8393e5;box-shadow:0 0 0 3px #4157c817}label{color:#4b566d;flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.inline-inputs,.button-row,.form-actions{gap:10px;display:flex}.form-actions{justify-content:flex-end;align-items:center}.form-actions.between{justify-content:space-between}.check-label{flex-direction:row;align-items:center;font-weight:500}.check-label input{width:auto}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:22px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.section-heading h2{letter-spacing:-.02em;margin:0;font-size:17px}.section-heading p{margin-bottom:3px}.heading-with-icon{color:var(--primary);align-items:center;gap:11px;display:flex}.heading-with-icon h2{color:var(--ink)}.notice{border:1px solid;border-radius:10px;padding:11px 13px;font-size:13px}.notice.danger{color:#9c2b3e;background:var(--red-soft);border-color:#f2ccd3}.notice.success{color:#116c4b;background:var(--green-soft);border-color:#c9eadc}.notice.compact{padding:8px 10px;font-size:12px}.empty-state,.inner-empty{color:var(--muted);text-align:center;background:#ffffff8c;border:1px dashed #d5dae6;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:240px;display:flex}.inner-empty{min-height:100px}.sync-history{flex-direction:column;gap:8px;display:flex}.sync-history-heading{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:0 2px;font-size:11px;display:flex}.sync-history-heading strong{color:var(--ink);font-size:13px}.sync-strip{background:var(--green-soft);color:#27634e;border:1px solid #cce8dd;border-radius:12px;grid-template-columns:auto minmax(260px,1fr) minmax(260px,auto);align-items:center;gap:20px;padding:12px 15px;font-size:12px;display:grid}.sync-strip.waiting{background:var(--amber-soft);color:#765017;border-color:#f1dfb5}.sync-strip.failed{background:var(--red-soft);color:#8d3040;border-color:#f2ccd3}.sync-strip>div{align-items:center;gap:9px;display:flex}.sync-metrics{justify-content:center}.sync-result{text-align:right;flex-wrap:wrap;justify-content:flex-end}.status-dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.status-dot.good{background:#24a875;box-shadow:0 0 0 4px #24a8751f}.status-dot.warn{background:#d08a1f;box-shadow:0 0 0 4px #d08a1f1f}.status-dot.bad{background:#d45365;box-shadow:0 0 0 4px #d453651f}.filter-bar{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(130px,.55fr)) auto auto;gap:9px;padding:12px;display:grid}.search-field{position:relative}.search-field svg{color:#8b95a8;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-field input{padding-left:39px}.result-meta{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.job-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.job-card{border:1px solid var(--line);text-align:left;min-height:220px;color:var(--ink);background:#fff;border-radius:15px;flex-direction:column;padding:18px;transition:all .18s;display:flex;box-shadow:0 5px 20px #232d4d0b}.job-card:hover{border-color:#bdc7e7;transform:translateY(-2px);box-shadow:0 12px 30px #232d4d17}.job-card-top,.job-card-footer,.package-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.job-card h2{letter-spacing:-.025em;margin:20px 0 6px;font-size:18px}.job-card .company{color:#657087;margin-bottom:16px;font-size:13px}.job-card-footer{color:#758097;border-top:1px solid #eef0f5;margin-top:auto;padding-top:13px;font-size:12px}.score{color:var(--primary);font-size:23px;font-weight:800}.score small{color:#99a1b1;font-size:10px}.score.blocked{color:var(--red)}.state-pill,.status-badge{color:#647087;background:#eef1f7;border-radius:999px;align-items:center;gap:7px;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.state-ready,.state-analyzed{background:var(--green-soft);color:var(--green)}.state-blocked,.state-failed{background:var(--red-soft);color:var(--red)}.state-waiting_human,.state-generation_pending{background:var(--amber-soft);color:var(--amber)}.tag-row,.tag-picker{flex-wrap:wrap;gap:6px;display:flex}.tag{color:#657086;background:#f7f8fb;border:1px solid #dfe4ef;border-radius:999px;padding:5px 8px;font-size:10px}button.tag{cursor:pointer}.tag.selected{color:#374baf;background:var(--primary-soft);border-color:#cdd4f7}.tag small{opacity:.7;margin-left:5px}.muted-tag{color:#939bad}.detail-hero{justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:4px;display:flex}.detail-hero h1{letter-spacing:-.04em;margin:10px 0 6px;font-size:clamp(27px,3vw,38px)}.detail-hero p{color:#647087;margin-bottom:0}.detail-title-line{align-items:center;gap:10px;display:flex}.detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.detail-grid{grid-template-columns:minmax(0,1.75fr) minmax(310px,.72fr);align-items:start;gap:20px;display:grid}.revision-editor{border-color:#bfc9ef;box-shadow:0 12px 40px #4157c81c}.info-grid{background:var(--line);border:1px solid var(--line);border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.info-grid>div{background:#fafbfe;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.info-grid span{color:#8b94a7;font-size:10px}.info-grid strong{font-size:12px;font-weight:700}.card h3{color:#36435c;margin:20px 0 8px;font-size:13px}.jd-text,.long-text{white-space:pre-wrap;color:#3e495f;font-size:13px;line-height:1.75}.content-list{color:#3e495f;margin:0;padding-left:20px;font-size:13px;line-height:1.7}.score-card{text-align:center}.score-ring{background:radial-gradient(circle at center, #fff 58%, transparent 60%), conic-gradient(var(--primary) 72%, #e7eaf2 0);border-radius:50%;place-content:center;width:116px;height:116px;margin:0 auto 14px;display:grid}.score-ring strong{font-size:31px;line-height:.95}.score-ring span{color:var(--muted);font-size:10px}.score-card h2{margin-bottom:3px;font-size:17px}.breakdown{border-top:1px solid var(--line);margin-top:16px;padding-top:10px}.breakdown>div{justify-content:space-between;padding:6px 2px;font-size:12px;display:flex}.breakdown span{color:var(--muted)}.evidence-list{flex-direction:column;gap:12px;display:flex}.evidence-list article{background:#fafbfe;border:1px solid #e8ebf2;border-radius:10px;padding:12px}.evidence-list article strong{font-size:12px}.evidence-list blockquote{color:#5d687e;border-left:2px solid #9ba9e9;margin:8px 0;padding-left:9px;font-size:11px;line-height:1.5}.evidence-list article p{margin-bottom:6px;font-size:11px;line-height:1.5}.evidence-list article span{color:#7b86a0;word-break:break-all;font-size:9px}.send-card{text-align:center;flex-direction:column;align-items:center;display:flex}.send-card>svg{color:var(--primary)}.send-card h2{margin:10px 0 4px;font-size:17px}.send-card p{font-size:12px;line-height:1.5}.package-list{flex-direction:column;gap:14px;display:flex}.package-card{border:1px solid #e1e5ef;border-radius:12px;overflow:hidden}.package-header{background:#fafbfe;padding:12px 14px}.package-header>div{flex-direction:column;gap:2px;display:flex}.package-header strong{font-size:13px}.package-header span{color:var(--muted);font-size:10px}.greeting{border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5;padding:14px}.greeting p{white-space:pre-wrap;color:#374258;font-size:13px;line-height:1.65}.artifact-row{flex-wrap:wrap;gap:8px;padding:12px 14px;display:flex}.artifact-button{color:#4e5a71;background:#fff;border:1px solid #dfe4ef;border-radius:9px;align-items:center;gap:7px;padding:8px 10px;font-size:11px;display:flex}.artifact-button small{color:var(--muted)}.timeline{flex-direction:column;display:flex;position:relative}.timeline-item{grid-template-columns:20px 1fr;gap:7px;padding-bottom:16px;display:grid;position:relative}.timeline-item:before{content:"";background:#dce1ed;width:1px;position:absolute;top:10px;bottom:-2px;left:5px}.timeline-item:last-child:before{display:none}.timeline-dot{z-index:1;background:#8596e4;border-radius:50%;width:11px;height:11px;margin-top:3px}.timeline-item>div{flex-direction:column;gap:3px;display:flex}.timeline-item strong{font-size:12px}.timeline-item span{color:var(--muted);font-size:10px}.timeline-item p{margin:3px 0 0;font-size:11px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.span-two{grid-column:span 2}.setting-card>p.muted{font-size:12px;line-height:1.6}.status-badge.ok{color:var(--green);background:var(--green-soft)}.status-badge.off{color:var(--red);background:var(--red-soft)}.metric-list{flex-direction:column;display:flex}.metric-list>div{border-bottom:1px solid #eef0f5;justify-content:space-between;gap:15px;padding:9px 0;font-size:12px;display:flex}.metric-list span{color:var(--muted)}.metric-list strong{text-align:right;word-break:break-word}.security-note{background:var(--primary-soft);color:#4454a7;border-radius:9px;align-items:flex-start;gap:7px;margin:14px 0 0;padding:10px;font-size:11px;display:flex}.security-list{color:#4c586e;flex-direction:column;gap:12px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.security-list li{align-items:center;gap:8px;display:flex}.security-list svg{color:var(--green)}.tag-groups{gap:14px;display:grid}.tag-groups>div>strong{color:#66728a;margin-bottom:7px;font-size:11px;display:block}.inline-form{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 160px auto;gap:9px;margin-top:20px;padding-top:18px;display:grid}.login-shell{background:radial-gradient(circle at 50% 20%,#edf0ff 0,#f6f7fb 36%,#eceff6 100%);place-items:center;min-height:100vh;padding:24px;display:grid;position:relative;overflow:hidden}.login-aura{filter:blur(75px);opacity:.8;background:conic-gradient(from 180deg,#485fd22b,#af66ce1c,#485fd22b);border-radius:50%;width:520px;height:520px;position:absolute}.login-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);text-align:center;background:#ffffffdb;border:1px solid #ffffffe6;border-radius:24px;width:min(420px,100%);padding:38px;position:relative;box-shadow:0 30px 80px #26305324}.login-card .brand-mark{margin:0 auto 20px}.login-card h1{letter-spacing:-.04em;margin:4px 0 8px;font-size:29px}.login-intro{margin-bottom:24px;font-size:12px;line-height:1.6}.login-form{text-align:left}.login-button{width:100%;margin-top:3px}.login-button svg:last-child{margin-left:auto}.security-caption{color:#768198;justify-content:center;align-items:center;gap:8px;margin-top:20px;font-size:10px;display:flex}.loading-mark{color:var(--primary);font-family:Georgia,serif;font-size:50px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35;transform:scale(.92)}}@media (width<=1180px){.job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar{grid-template-columns:1fr 1fr 1fr}.search-field{grid-column:span 2}.detail-grid{grid-template-columns:1fr}.side-column{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (width<=760px){.app-shell{display:block}.sidebar{flex-direction:row;align-items:center;height:auto;padding:10px 14px;position:sticky}.brand{padding:0}.brand>div:last-child{display:none}.sidebar nav{flex-direction:row;margin-left:auto}.sidebar nav button{width:auto}.sidebar nav button span{display:none}.sidebar-bottom{margin:0 0 0 8px;display:block}.manual-only,.logout span{display:none}.logout{border:0;padding:10px}.content-shell{padding:26px 16px 50px}.page-heading,.detail-hero{flex-direction:column;align-items:flex-start}.detail-actions{justify-content:flex-start}.filter-bar,.job-grid,.form-grid,.settings-grid,.inline-form,.side-column{grid-template-columns:1fr}.search-field,.span-two{grid-column:span 1}.sync-history-heading{flex-direction:column;align-items:flex-start}.sync-strip{grid-template-columns:1fr}.sync-metrics,.sync-result{text-align:left;flex-wrap:wrap;justify-content:flex-start}.info-grid{grid-template-columns:repeat(2,1fr)}.form-actions.between{flex-direction:column;align-items:flex-start}}@media (width<=430px){.sidebar nav button{padding:10px}.job-grid,.info-grid{grid-template-columns:1fr}.card{padding:17px}.login-card{padding:30px 22px}}
