:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--surface:#fff;--ink:#111;--muted:#737373;--line:#e8e8e8;--fill:#f5f5f5;--accent:#111;--accent-hover:#333;--danger:#c62828;--warn:#b78103;--ok:#2e7d32;--radius:12px;color:var(--ink);background:var(--bg);font-family:PingFang SC,Hiragino Sans GB,Noto Sans SC,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;margin:0}.page-shell{flex-direction:column;justify-content:safe center;width:min(920px,100% - 64px);min-height:100dvh;margin:0 auto;padding:clamp(40px,8vh,72px) 0 clamp(48px,8vh,80px);display:flex}.home-resume-status{padding-top:40vh}.home-resume-hint{margin:16px 20px 0}.requirement-form.requirement-card{background:var(--surface);box-sizing:border-box;border:0;border-radius:0;flex-direction:column;justify-content:safe center;align-items:center;gap:0;width:100%;min-height:100dvh;margin:0;padding:clamp(28px,5vh,64px) 0;display:flex}.requirement-main{justify-content:center;width:100%;padding:0 clamp(24px,6vw,80px) 28px;display:flex}.requirement-panel{align-content:start;gap:28px;width:min(560px,100%);display:grid}.requirement-fields{gap:28px;width:100%;display:grid}.requirement-form{gap:0}.field{gap:8px;display:grid}.field label{color:var(--muted);font-size:13px;font-weight:500}.field-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.field-label-row label{color:var(--muted)}.field-primary input{padding:16px 18px;font-size:17px}.count-input{font-variant-numeric:tabular-nums;width:140px}input{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--bg);font:inherit;border-radius:8px;outline:none;padding:14px 16px;font-size:15px;line-height:1.5;transition:border-color .12s}input:focus{border-color:var(--ink)}input[aria-invalid=true]{border-color:var(--danger)}input:disabled{opacity:.55;background:var(--fill)}button{font:inherit;cursor:pointer;border:0;border-radius:8px;padding:12px 18px;font-size:14px;font-weight:500}button:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}.primary-button{color:#fff;background:var(--accent);min-width:160px}.primary-button:hover:not(:disabled){background:var(--accent-hover)}.secondary-button{color:var(--ink);background:var(--fill)}.secondary-button:hover:not(:disabled){background:#ececec}.text-button{color:var(--muted);background:0 0;padding-inline:10px}.text-button:hover:not(:disabled){color:var(--ink)}.field-error,.form-error{color:var(--danger)}.field-error{min-height:0;margin:0;font-size:13px}.field-error:empty{display:none}.form-footer{border-top:1px solid var(--line);background:var(--surface);width:100%;padding:20px clamp(24px,6vw,80px) 0}.form-footer-inner{gap:10px;width:min(560px,100%);margin:0 auto;display:grid}.submit-button{width:100%;min-height:48px;font-size:15px}.count,.form-error{margin:0;font-size:13px}.count{text-align:left;width:100%;color:var(--muted)}.form-footer .form-error{text-align:left;width:100%}.count.over{color:var(--danger);font-weight:600}.hero{margin-bottom:24px}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:500}h1{letter-spacing:-.02em;margin:0;font-size:clamp(28px,4vw,36px);font-weight:600;line-height:1.25}.hero.compact{margin-bottom:24px}.run-card,.alert,.progress-panel,.download-panel,.preview-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.run-shell{justify-content:flex-start;width:min(1280px,100% - 48px);padding-top:clamp(40px,7vh,64px);padding-bottom:clamp(40px,7vh,64px)}.run-layout{gap:16px;width:100%;min-width:0;display:grid}.run-card{padding:28px 32px}.status-heading{align-items:center;gap:10px;display:inline-flex}.status-heading.completed{color:var(--ok)}.status-dot{background:#b0b0b0;border-radius:999px;flex-shrink:0;width:8px;height:8px}.status-dot.running{background:var(--ink);animation:1.5s ease-in-out infinite status-breathe}.status-dot.paused{background:var(--warn)}.status-dot.failed{background:var(--danger)}.status-dot.completed{background:var(--ok)}.requirement-grid{grid-template-columns:minmax(0,1.6fr) minmax(140px,.4fr);gap:24px;margin:0;display:grid}.requirement-grid>div{min-width:0}.requirement-grid dt{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:500}.requirement-grid dd{white-space:pre-wrap;margin:0;font-size:15px;line-height:1.6}.run-card .form-error{margin-bottom:16px}.download-panel{background:var(--fill);justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding:18px 20px;display:flex}.download-title{margin:0 0 4px;font-size:15px;font-weight:600}.download-meta{color:var(--muted);word-break:break-all;margin:0;font-size:13px;line-height:1.5}.preview-panel{min-width:0;margin-top:0;padding:18px 20px 20px}.preview-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.preview-title{margin:0;font-size:15px;font-weight:600}.preview-meta{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.preview-table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:8px;max-width:100%;height:min(82vh,920px);overflow:scroll auto}.preview-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;min-width:1280px;font-size:12px;line-height:1.35}.preview-col-name{width:16%;min-width:180px}.preview-col-patent-meta{width:24%;min-width:260px}.preview-col-direction{width:14%;min-width:140px}.preview-col-occupation{width:12%;min-width:120px}.preview-col-work{width:22%;min-width:220px}.preview-col-education{width:12%;min-width:120px}.preview-col-linkedin{width:9%;min-width:100px}.preview-col-links{width:10%;min-width:110px}.preview-col-flex{width:auto}.preview-table th,.preview-table td{box-sizing:border-box;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:left;vertical-align:top;background:var(--surface);padding:6px 8px;overflow:visible}.preview-table th:last-child,.preview-table td:last-child{border-right:none}.preview-table th{z-index:2;background:var(--fill);color:var(--ink);font-weight:600;line-height:1.35;position:sticky;top:0}.preview-table th:first-child{z-index:4;background:var(--fill);position:sticky;top:0;left:0}.preview-table td.preview-cell-name{z-index:1;background:var(--surface);position:sticky;left:0}.preview-cell-content{overflow-wrap:break-word;word-break:break-word;max-width:100%;display:block;overflow:hidden}.preview-table th .preview-cell-content{white-space:nowrap;text-overflow:ellipsis}.preview-table td.preview-cell-name .preview-cell-content{white-space:pre-line;text-overflow:unset;word-break:break-word;overflow-wrap:anywhere;font-weight:600;overflow:visible}.preview-cell-plain{white-space:pre-line;line-height:1.45}.preview-cell-structured{flex-direction:column;gap:0;display:flex}.preview-entry{border-bottom:1px solid color-mix(in srgb, var(--line) 85%, transparent);padding:7px 0 8px;position:relative}.preview-entry:first-child{padding-top:0}.preview-entry:last-child{border-bottom:none;padding-bottom:0}.preview-badge{border:1px solid color-mix(in srgb, var(--muted) 35%, var(--line));color:var(--muted);letter-spacing:.02em;border-radius:3px;margin-bottom:3px;padding:0 5px;font-size:10px;font-weight:600;line-height:1.6;display:inline-block}.preview-line{overflow-wrap:break-word;word-break:break-word;max-width:100%;margin:0}.preview-line+.preview-line{margin-top:2px}.preview-line-primary{color:var(--ink);font-weight:600;line-height:1.4}.preview-line-meta{color:var(--muted);font-size:11px;line-height:1.4}.preview-line-body{color:var(--ink);opacity:.88;font-size:11.5px;line-height:1.45}.preview-linkedin{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 45%, transparent);text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all}.preview-linkedin:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.preview-table td.preview-cell-stack .preview-cell-content,.preview-table td.preview-cell-medium .preview-cell-content,.preview-table td.preview-cell-long .preview-cell-content{overflow-wrap:break-word;word-break:break-word}.preview-table tbody tr:last-child td{border-bottom:none}.run-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:24px;display:flex}.progress-panel{padding:20px 24px 22px}.progress-header{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:13px;font-weight:500;display:flex}.progress-detail{color:var(--ink);margin:0 0 18px;font-size:14px;line-height:1.5}.progress-detail.is-alert{color:var(--danger)}.progress-live,.progress-meta{color:var(--ink);align-items:center;gap:8px;display:inline-flex}.progress-meta.is-failed{color:var(--danger)}.progress-meta.is-done{color:var(--ok)}.progress-pulse{background:var(--ink);border-radius:999px;width:7px;height:7px;animation:1.2s ease-in-out infinite status-breathe}.progress-rail{position:relative}.progress-track{background:var(--fill);border-radius:999px;height:4px;position:absolute;top:4px;left:4px;right:4px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--ink);height:100%;transition:width .45s}.progress-track.is-animating .progress-fill{background-image:linear-gradient(90deg, transparent, #fff6, transparent), linear-gradient(var(--ink), var(--ink));background-repeat:no-repeat;background-size:40% 100%,100% 100%;animation:1.3s linear infinite progress-shimmer}.progress-track.is-paused .progress-fill{background:var(--warn);animation:none}.progress-track.is-failed .progress-fill{background:var(--danger);animation:none}.progress-track.is-completed .progress-fill{background:var(--ok);animation:none}.progress-steps{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.progress-step{gap:10px;min-width:0;display:grid}.progress-step:first-child{text-align:left;justify-items:start}.progress-step:nth-child(2){text-align:center;justify-items:center}.progress-step:nth-child(3){text-align:right;justify-items:end}.progress-step-mark{width:8px;height:8px;box-shadow:0 0 0 3px var(--surface);background:#d4d4d4;border-radius:999px}.progress-step-label{color:var(--muted);font-size:13px;font-weight:500;line-height:1.35}.progress-step.done .progress-step-mark,.progress-step.active .progress-step-mark{background:var(--ink)}.progress-rail:has(.is-completed) .progress-step.done .progress-step-mark{background:var(--ok)}.progress-step.done .progress-step-label,.progress-step.active .progress-step-label{color:var(--ink)}.progress-step.active .progress-step-mark{animation:1.4s ease-in-out infinite status-breathe}.progress-step.paused .progress-step-mark{background:var(--warn);animation:none}.progress-step.failed .progress-step-mark{background:var(--danger);animation:none}.progress-step.failed .progress-step-label{color:var(--danger)}.alert{color:var(--danger);background:#fff8f8;border-color:#f0cfcf;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;padding:14px 16px;display:flex}.alert p,.loading-text{margin:0}.alert button{color:var(--danger);background:#fce8e8;flex-shrink:0}.loading-text{color:var(--muted);text-align:center}@keyframes status-breathe{0%,to{opacity:1}50%{opacity:.35}}@keyframes progress-shimmer{0%{background-position:-40% 0,0 0}to{background-position:140% 0,0 0}}@media (max-width:720px){.page-shell{justify-content:flex-start;width:min(100% - 32px,920px);padding:32px 0 48px}.requirement-form.requirement-card{justify-content:flex-start;padding:28px 0 32px}.requirement-main{padding:0 20px 20px}.requirement-panel,.requirement-fields{gap:24px}.form-footer{padding:16px 20px 0}.run-card,.progress-panel,.preview-panel{padding:20px}.count-input{width:100%}.requirement-grid{grid-template-columns:1fr;gap:16px}.download-panel,.run-actions{flex-direction:column;align-items:stretch}.primary-button,.secondary-button,.text-button{width:100%}.progress-step-label{font-size:12px}.page-shell.run-shell{width:min(100% - 32px,1280px)}.preview-table{min-width:1480px;font-size:12px}.preview-table th,.preview-table td{padding:8px 10px}.preview-table td.preview-cell-long .preview-cell-content{max-height:10em}}@media (max-height:640px){.requirement-form.requirement-card,.page-shell:not(.run-shell){justify-content:flex-start}}.login-shell{background:var(--bg);justify-content:center;align-items:safe center;min-height:100dvh;padding:clamp(24px,6vh,48px) 20px;display:flex}.login-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:12px;width:min(400px,100%);padding:32px 28px;display:grid}.login-title{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:650}.login-subtitle{color:var(--muted);margin:0 0 8px;font-size:14px}.login-label{color:var(--muted);font-size:13px}.login-input{border:1px solid var(--line);width:100%;font:inherit;background:var(--fill);border-radius:8px;padding:12px 14px}.login-input:focus{border-color:var(--ink);outline:2px solid #1113}.login-error{color:var(--danger);margin:0;font-size:13px}.login-submit{background:var(--accent);color:#fff;width:100%;font:inherit;cursor:pointer;border:0;border-radius:8px;margin-top:8px;padding:12px 16px;font-weight:600}.login-submit:disabled{opacity:.6;cursor:default}.login-submit:not(:disabled):hover{background:var(--accent-hover)}
