:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#f6f7f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}input,select,textarea{color:#172033;border:1px solid #c9d5dc;border-radius:6px;width:100%;min-height:38px;padding:7px 9px}textarea{resize:vertical}input:disabled,select:disabled,textarea:disabled{color:#71808c;background:#eef2f5}button{color:#fff;cursor:pointer;background:#1f6f8f;border:1px solid #1f6f8f;border-radius:6px;min-height:38px;padding:8px 14px;font-weight:650;line-height:1.2}button.secondary{color:#1f5269;background:#fff;border-color:#b8ccd5}button.void-btn{background:#b93333;border-color:#b93333}button:disabled{color:#71808c;cursor:not-allowed;background:#d6dde2;border-color:#d6dde2}a{color:#176987}.app{min-height:100vh}.topbar{background:#fff;border-bottom:1px solid #dbe3e8;justify-content:space-between;align-items:center;gap:18px;min-height:64px;padding:0 24px;display:flex}.brand{align-items:baseline;gap:12px;min-width:0;display:flex}.brand h1{margin:0;font-size:18px;line-height:1.2}.badge{color:#17613f;white-space:nowrap;background:#e8f4ef;border:1px solid #b9d8c9;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.meta{color:#5e6b75;flex-wrap:wrap;justify-content:flex-end;gap:12px;font-size:13px;display:flex}.run-context{border-bottom:1px solid #dbe3e8;gap:12px;padding:14px 24px;display:grid}.warning-list{color:#624616;background:#fff8eb;border:1px solid #ead2a9;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px;font-size:13px;display:grid}.warning-list div{overflow-wrap:anywhere;min-width:0}.native-warning{color:#64440b;background:#fff4df;border:1px solid #e2bd74;border-radius:8px;padding:10px 12px;font-size:13px}.saas-shell{grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:10px;display:grid}.auth-placeholder,.product-rule-copy,.package-metric,.company-management{background:#fff;border:1px solid #dbe3e8;border-radius:8px}.auth-placeholder,.product-rule-copy{min-height:84px;padding:12px}.auth-placeholder span,.auth-placeholder em,.product-rule-copy span{color:#65727c;overflow-wrap:anywhere;font-size:12px;font-style:normal;display:block}.auth-placeholder strong,.product-rule-copy strong{overflow-wrap:anywhere;margin:6px 0;font-size:15px;display:block}.auth-actions,.signer-auth-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.signer-auth-form input{min-width:0}.package-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.package-metric{min-height:82px;padding:12px}.package-metric span,.package-metric em{color:#65727c;overflow-wrap:anywhere;font-size:12px;font-style:normal;display:block}.package-metric strong{margin:6px 0;font-size:20px;display:block}.company-selector{background:#fff;border:1px solid #dbe3e8;border-radius:8px;padding:10px}.company-selector label{gap:6px;display:grid}.company-selector span{color:#65727c;font-size:12px}.company-management{gap:12px;padding:12px;display:grid}.customer-workspace,.product-workspace,.draft-composer{background:#fff;border:1px solid #dbe3e8;border-radius:8px;gap:12px;padding:12px;display:grid}.company-management-header{grid-template-columns:minmax(0,1fr) minmax(260px,420px);align-items:end;gap:14px;display:grid}.customer-workspace-header,.product-workspace-header,.draft-composer-header,.draft-lines-header{grid-template-columns:minmax(0,1fr) minmax(260px,460px);align-items:end;gap:14px;display:grid}.company-management h2,.company-management p,.customer-workspace h2,.customer-workspace p,.product-workspace h2,.product-workspace p,.draft-composer h2,.draft-composer h3,.draft-composer p{margin:0}.company-management h2,.customer-workspace h2,.product-workspace h2,.draft-composer h2{font-size:15px}.draft-composer h3{font-size:14px}.company-management p,.customer-workspace p,.product-workspace p,.draft-composer p{color:#65727c;overflow-wrap:anywhere;margin-top:5px;font-size:13px}.customer-selector,.product-selector,.draft-selector{grid-template-columns:minmax(0,1fr) max-content max-content;align-items:end;gap:10px;display:grid}.customer-selector label,.product-selector label,.draft-selector label{gap:5px;display:grid}.customer-selector span,.product-selector span,.draft-selector span{color:#65727c;font-size:12px}.add-company-form{grid-template-columns:minmax(0,1fr) max-content;align-items:end;gap:10px;display:grid}.add-company-form label{gap:5px;display:grid}.add-company-form span{color:#65727c;font-size:12px}.company-list{gap:8px;display:grid}.customer-form,.product-form,.draft-form,.draft-line-form{border:1px solid #e2e8ed;border-radius:6px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:10px;display:grid}.customer-form label,.product-form label,.draft-form label,.draft-line-form label{gap:5px;display:grid}.customer-form span,.product-form span,.draft-form span,.draft-line-form span{color:#65727c;font-size:12px}.customer-form-wide,.product-form-wide,.draft-form-wide{grid-column:span 2}.customer-form-actions,.product-form-actions,.draft-form-actions,.draft-line-form-actions{grid-template-columns:repeat(2,minmax(0,max-content));align-items:end;gap:8px;display:grid}.product-import{border:1px solid #e2e8ed;border-radius:6px;gap:10px;padding:10px;display:grid}.product-import-controls{grid-template-columns:minmax(0,1fr) max-content;align-items:end;gap:10px;display:grid}.product-import-controls label,.product-import-state{gap:5px;display:grid}.product-import-controls span,.product-import-state span{color:#65727c;font-size:12px}.product-import-state strong{overflow-wrap:anywhere;font-size:13px}.customer-lookup-state,.locked-note{background:#f8fafb;border:1px solid #e2e8ed;border-radius:6px;gap:4px;padding:8px 10px;display:grid}.customer-lookup-state span,.customer-lookup-state em{color:#65727c;overflow-wrap:anywhere;font-size:12px;font-style:normal;display:block}.customer-lookup-state strong,.locked-note{overflow-wrap:anywhere;font-size:13px}.checkbox-field{grid-template-columns:max-content 1fr;align-content:end;display:grid}.checkbox-field input{width:auto;min-height:auto}.checkbox-field span{align-self:center}.customer-list,.product-list{gap:8px;display:grid}.draft-lines{gap:10px;display:grid}.draft-total-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.draft-total-strip div{background:#f8fafb;border:1px solid #e2e8ed;border-radius:6px;min-width:0;padding:8px}.draft-total-strip span{color:#65727c;font-size:11px;display:block}.draft-total-strip strong{overflow-wrap:anywhere;margin-top:3px;font-size:14px;display:block}.company-row,.customer-row,.product-row{border:1px solid #e2e8ed;border-radius:6px;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px;padding:10px;display:grid}.company-row-main{grid-template-columns:88px minmax(0,1fr);align-items:start;gap:10px;display:grid}.customer-row-main{grid-template-columns:98px minmax(0,1fr);align-items:start;gap:10px;display:grid}.product-row-main{grid-template-columns:92px minmax(0,1fr);align-items:start;gap:10px;display:grid}.company-row-main strong,.company-row-main span,.company-row-main em,.customer-row-main strong,.customer-row-main span,.customer-row-main em,.product-row-main strong,.product-row-main span,.product-row-main em{overflow-wrap:anywhere;display:block}.company-row-main strong,.customer-row-main strong,.product-row-main strong{font-size:14px}.company-row-main span,.company-row-main em,.customer-row-main span,.customer-row-main em,.product-row-main span,.product-row-main em{color:#65727c;margin-top:3px;font-size:12px;font-style:normal}.status-pill{color:#fff;text-transform:uppercase;border-radius:999px;justify-content:center;padding:6px 8px;font-size:11px;font-weight:750;line-height:1;display:inline-flex}.status-active{background:#16845b}.status-pending{background:#c98219}.status-rejected{background:#c33d3d}.status-disabled{background:#7a8791}.status-service{background:#1f6f8f}.status-goods{background:#7357a4}.company-row-actions,.customer-row-actions,.product-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.config-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.config-cell{background:#fff;border:1px solid #dbe3e8;border-radius:8px;min-height:76px;padding:10px}.config-cell span,.config-cell em{color:#65727c;overflow-wrap:anywhere;font-size:12px;font-style:normal;display:block}.config-cell strong{overflow-wrap:anywhere;margin:5px 0;font-size:15px;display:block}.content{grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:16px;padding:18px 24px 24px;display:grid}.panel,.card{background:#fff;border:1px solid #dbe3e8;border-radius:8px}.panel{align-self:start;padding:16px}.panel h2,.card h2{margin:0 0 12px;font-size:15px}.section-title{margin-top:18px!important}.actions{gap:10px;display:grid}.date-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.single-date{gap:8px;display:grid}.action-divider{color:#53616b;border-top:1px solid #e2e8ed;margin-top:2px;padding-top:10px;font-size:12px;font-weight:750;display:block}.date-range label,.single-date label{gap:5px;display:grid}.date-range span,.single-date span,.card-meta{color:#65727c;font-size:12px}.status-list{gap:8px;margin-top:16px;display:grid}.status-row{border:1px solid #e2e8ed;border-radius:6px;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:8px;min-height:42px;padding:8px 10px;display:grid}.dot{border-radius:999px;width:10px;height:10px}.idle{background:#a6b0b8}.ok{background:#16845b}.warn{background:#c98219}.bad{background:#c33d3d}.status-row strong{font-size:13px;display:block}.status-row span{color:#66737d;overflow-wrap:anywhere;font-size:12px;display:block}.check-list{gap:8px;display:grid}.check-row{border:1px solid #e2e8ed;border-radius:6px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px;min-height:48px;padding:8px 10px;display:grid}.check-row strong,.check-row span{overflow-wrap:anywhere;display:block}.check-row strong{font-size:13px}.check-row span{color:#66737d;font-size:12px}.check-state{text-transform:uppercase;border-radius:999px;justify-content:center;padding:5px 7px;font-weight:750;line-height:1;color:#fff!important;font-size:11px!important;display:inline-flex!important}.check-pass .check-state{background:#16845b}.check-pending .check-state{background:#7a8791}.check-fail .check-state{background:#c33d3d}.main-grid{gap:16px;display:grid}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.metric{background:#f7f9fb;border:1px solid #e2e8ed;border-radius:6px;min-height:72px;padding:10px}.metric span{color:#65727c;font-size:12px;display:block}.metric strong{overflow-wrap:anywhere;margin-top:8px;font-size:18px;display:block}.card{padding:16px}.success-card{background:#f4fbf7;border-color:#b9d8c9}.card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.card-header h2{margin:0}.card-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.change-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.change-feed-section{gap:10px;min-width:0;display:grid}.change-feed-section h3{margin:0;font-size:13px}.feed-meta{color:#65727c;overflow-wrap:anywhere;margin-bottom:10px;font-size:12px}.transition-list{border:1px solid #e2e8ed;border-radius:6px;overflow:hidden}.transition-row{grid-template-columns:minmax(180px,1.2fr) minmax(160px,.8fr) minmax(190px,1fr);gap:10px;padding:10px;display:grid}.transition-row+.transition-row{border-top:1px solid #e2e8ed}.transition-main,.transition-meta,.transition-reasons{min-width:0}.transition-main strong,.transition-main span{overflow-wrap:anywhere;display:block}.transition-main span{color:#65727c;margin-top:5px;font-size:12px}.payload-export-actions button{min-height:32px;padding:6px 10px}.json-box,.log-box{color:#e8f1f8;white-space:pre-wrap;background:#101923;border-radius:6px;margin:0;padding:12px;font:12px/1.45 Cascadia Code,Consolas,monospace;overflow:auto}.json-box{max-height:56vh}.log-box{max-height:190px}.result{gap:8px;display:grid}.result-row{grid-template-columns:140px minmax(0,1fr);gap:8px;display:grid}.result-row span:first-child{color:#65727c}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:1180px;font-size:13px}.data-table th,.data-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e2e8ed;padding:9px 8px}.data-table th{color:#53616b;font-size:12px;font-weight:750}.data-table td{overflow-wrap:anywhere}.cell-stack{gap:3px;min-width:120px;display:grid}.cell-stack span,.cell-stack strong{overflow-wrap:anywhere;display:block}.cell-stack em{color:#65727c;font-style:normal;font-weight:650}.current-status-cell{min-width:220px}.table-action{min-height:30px;padding:5px 10px}.row-checkbox{cursor:pointer;width:16px;min-height:16px;padding:0}.row-checkbox:disabled{cursor:not-allowed}.row-actions{flex-wrap:wrap;gap:6px;min-width:300px;display:flex}.empty{color:#65727c;margin:0}.error-banner{color:#96372d;background:#fff4f2;border:1px solid #efc7c0;border-radius:6px;margin-bottom:12px;padding:10px 12px;display:none}.error-banner.visible{display:block}.modal-backdrop{z-index:20;background:#0f18227a;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modal{background:#fff;border:1px solid #dbe3e8;border-radius:8px;width:min(100%,560px);max-width:560px;max-height:calc(100vh - 36px);display:grid;overflow:auto;box-shadow:0 18px 48px #0f18223d}.modal-header{border-bottom:1px solid #e2e8ed;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-header h2{margin:0;font-size:16px}.icon-button{color:#172033;background:#fff;border-color:#c9d5dc;justify-content:center;align-items:center;width:34px;height:34px;min-height:34px;padding:0;font-size:20px;display:inline-flex}.modal-body{gap:12px;padding:16px;display:grid}.modal-summary,.confirm-box{background:#f7f9fb;border:1px solid #e2e8ed;border-radius:6px;gap:8px;padding:12px;display:grid}.field{gap:6px;display:grid}.field span{color:#65727c;font-size:12px}.modal-error{color:#96372d;background:#fff4f2;border:1px solid #efc7c0;border-radius:6px;padding:9px 10px}.confirm-box strong,.confirm-box span,.confirm-box p{overflow-wrap:anywhere}.confirm-box strong{font-size:14px}.confirm-box span,.confirm-box p{color:#65727c;margin:0;font-size:13px}.modal-actions{border-top:1px solid #e2e8ed;justify-content:flex-end;gap:10px;padding:14px 16px;display:flex}.admin-layout{grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:16px;padding:18px 24px 24px;display:grid}.admin-panel,.admin-main{gap:16px;min-width:0;display:grid}.admin-toolbar{background:#fff;border:1px solid #dbe3e8;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.admin-toolbar h2{margin:0 0 4px;font-size:15px}.admin-toolbar span,.admin-session span,.admin-table td span{color:#65727c;overflow-wrap:anywhere;font-size:12px;display:block}.admin-session{grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:10px;display:grid}.admin-session strong{overflow-wrap:anywhere}.admin-form{gap:10px;display:grid}.admin-form label{gap:5px;display:grid}.admin-form span{color:#65727c;font-size:12px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-table{min-width:1120px}.admin-table td strong{overflow-wrap:anywhere;display:block}.admin-row-form{gap:6px;min-width:220px;display:grid}.admin-row-form.compact{min-width:190px}@media (width<=980px){.admin-form-grid,.admin-layout,.content,.config-grid,.company-management-header,.customer-workspace-header,.product-workspace-header,.draft-composer-header,.draft-lines-header,.customer-form,.product-form,.draft-form,.draft-line-form,.draft-total-strip,.change-feed-grid,.transition-row,.company-row,.customer-row,.product-row,.package-grid,.saas-shell,.warning-list,.summary-grid{grid-template-columns:1fr}.add-company-form,.auth-actions,.signer-auth-form,.company-row-actions,.customer-selector,.product-selector,.draft-selector,.product-import-controls,.customer-row-actions,.product-row-actions,.customer-form-actions,.product-form-actions,.draft-form-actions,.draft-line-form-actions{grid-template-columns:1fr;display:grid}.customer-form-wide,.product-form-wide,.draft-form-wide{grid-column:auto}.topbar{flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px}.meta{justify-content:flex-start}.content{padding:16px}.run-context{padding:14px 16px}.modal-actions{display:grid}}
