:root{color-scheme:light;--ink:#172c3d;--muted:#647586;--blue:#176fb2;--line:#dbe4eb;--paper:#fff;--bg:#f2f6f9;--red:#a83434;--green:#247157}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Segoe UI,Arial,sans-serif;color:var(--ink);font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button{border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:white;font-weight:600;min-height:40px;padding:9px 15px;cursor:pointer}button:hover{filter:brightness(.95)}button:disabled{opacity:.45;cursor:default}button.secondary{color:var(--ink);background:#f6f9fb;border-color:var(--line)}button.text-button{background:transparent;border-color:transparent;color:var(--blue);padding:7px 9px}button:focus-visible,input:focus,select:focus,textarea:focus{outline:3px solid #96c5e9;outline-offset:2px}input:not([type=checkbox]),select,textarea{width:100%;padding:10px 12px;border:1px solid #cbd7e0;border-radius:7px;background:white;color:var(--ink);min-height:42px}textarea{resize:vertical}input[type=checkbox]{accent-color:var(--blue);width:17px;height:17px;margin:0}label{display:block;font-weight:600;margin:12px 0 5px}h1,h2,h3,p{margin-top:0}h1{font-size:24px;line-height:1.2;margin-bottom:4px}h2{font-size:20px;line-height:1.3;margin-bottom:0}h3{font-size:16px;margin-bottom:8px}p{margin-bottom:12px}.muted{color:var(--muted)}.small{font-size:12px}.hidden{display:none!important}main{max-width:1240px;margin:0 auto;padding:26px 26px 60px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.brand{display:flex;align-items:center;gap:13px}.brand p{margin:0;color:var(--muted)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#e0effb;color:var(--blue);font-weight:800;font-size:24px}.user-bar{display:flex;align-items:center;gap:10px;font-size:12px}.steps{display:flex;list-style:none;margin:0 0 22px;padding:0;gap:28px;color:var(--muted);font-weight:600}.steps li{display:flex;align-items:center;gap:8px}.steps span{border:1px solid #c8d5df;background:white;display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;color:var(--blue)}.workspace{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(280px,1fr);gap:22px;align-items:start}form{min-width:0}.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 3px 14px #20344905;margin-bottom:20px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.eyebrow{color:var(--muted);letter-spacing:1.3px;font-size:10px;font-weight:700;margin-bottom:5px}.pill{border:1px solid var(--line);border-radius:30px;font-size:11px;white-space:nowrap;padding:4px 9px;background:#f7fafc;color:var(--muted)}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-action{display:flex;gap:7px;align-items:center}.field-action select,.field-action input{min-width:0}.field-action button{flex-shrink:0}.button-row{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:14px}.inline-note{margin:10px 0 0;font-size:13px;white-space:pre-line}.inline-note.error,.auth-message{color:var(--red)}.inline-error{background:#fff3f1;border-left:3px solid #d58f85;border-radius:5px;padding:10px 12px;color:var(--red);margin-top:12px}.template-row{display:flex;align-items:end;gap:9px;margin-top:-10px;margin-bottom:12px}.template-row>div{flex:1}.start-row{display:flex;align-items:center;gap:15px;margin-top:20px;flex-wrap:wrap}.start-row button{min-width:235px}details{border-top:1px solid var(--line);padding-top:13px;margin-top:16px}summary{font-weight:600;color:var(--blue);cursor:pointer;padding:3px 0}.checkbox-label{display:flex;gap:10px;align-items:center;font-weight:500}.upload{margin-top:14px;padding:14px;background:#f5f9fc;border-radius:9px}.upload button{margin-top:8px}.upload p{margin:10px 0 0}.image-preview{display:block;max-height:90px;max-width:100%;margin-top:10px}.jobs-card{position:sticky;top:20px}.jobs-card h2{font-size:19px}.job-info{border-top:1px solid var(--line);padding-top:17px;margin-top:18px}progress{display:block;width:100%;height:10px;margin:14px 0;accent-color:var(--blue)}.technical-log pre{font:11px/1.6 Consolas,monospace;white-space:pre-wrap;overflow:auto;max-height:180px;color:var(--muted)}.preview-panel{margin-top:6px}.metrics{display:flex;gap:20px;margin-bottom:18px}.metrics>div{padding:14px 18px;border-radius:9px;background:#f4f8fb;min-width:150px}.metrics span{font-size:12px;color:var(--muted);display:block}.metrics strong{font-size:27px;font-weight:600}.warnings p{background:#fff7e4;padding:10px 14px;border-radius:7px;color:#806023;font-size:13px}.table-wrap{overflow:auto;margin-top:17px;border:1px solid var(--line);border-radius:9px;max-height:520px}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;min-width:120px;max-width:270px;overflow-wrap:anywhere;vertical-align:top}th{position:sticky;top:0;z-index:1;background:#edf4f9;font-weight:600;white-space:nowrap}td:first-child,th:first-child{min-width:100px;position:sticky;left:0;background:#f7fafc}td.empty-cell{color:#97a5b1}tr.duplicate-row td{background:#fffbec}tr.ai-row td:first-child{border-left:3px solid #659ebc}.review-badge{display:block;font-size:10px;color:#8c6926;margin-top:4px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:18px}.row-details{padding:16px;background:#f4f8fb;border-radius:9px;margin-top:17px;white-space:pre-wrap;font-size:13px}.admin-users{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-card{border:1px solid var(--line);border-radius:10px;padding:18px}.admin-card textarea{min-height:90px}.auth-gate{display:flex;min-height:100vh;align-items:center;justify-content:center;padding:28px}.auth-panel{width:440px;background:white;border:1px solid var(--line);border-radius:16px;padding:34px;box-shadow:0 16px 60px #263c4b12}.auth-panel .brand-mark{margin-bottom:20px}.auth-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}.auth-message{margin:18px 0 0;font-size:13px}.auth-panel label{margin-top:16px}#passwordRecovery button{margin-top:18px}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.jobs-card{position:static}.topbar{align-items:flex-start;flex-direction:column}.admin-users{grid-template-columns:1fr}.steps{gap:12px;font-size:12px}}@media(max-width:580px){main{padding:18px 12px 40px}.card{padding:18px}.two-fields{grid-template-columns:1fr;gap:0}.steps{gap:8px;align-items:flex-start}.steps li{flex:1;flex-direction:column;align-items:flex-start}.card-heading{align-items:flex-start}.user-bar{flex-wrap:wrap}.metrics{gap:8px}.metrics>div{min-width:0;flex:1;padding:10px}.metrics strong{font-size:23px}.template-save .field-action{flex-wrap:wrap}.field-action input{flex-basis:100%}.preview-panel .card-heading{flex-wrap:wrap}.auth-panel{padding:24px}}
