@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#253f3b;background:#f6f8f7;font-synthesis:none;--green:#236a55;--muted:#778580;--border:#e2e9e5;--orange:#e99353}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--border);border-radius:8px;padding:10px 15px;background:white;color:#294c41;font-weight:600}button:hover{background:#edf4f0}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--green);color:white;border-color:var(--green)}button.primary:hover{background:#195540}button.danger{color:#a83232}a{color:var(--green);text-decoration:none}aside{position:fixed;width:235px;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--border);padding:34px 21px;display:flex;flex-direction:column}.brand{font:800 29px Manrope,sans-serif;letter-spacing:-1.2px;display:flex;align-items:center;gap:8px}.brand-icon{font-size:31px}.brand-dot{color:#ed9c61;margin-left:-8px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#9ba59f;margin:45px 14px 16px;font-weight:700}nav{display:grid;gap:6px}nav a{display:flex;gap:13px;padding:13px 12px;color:#718078;border-radius:8px;font-size:13px;font-weight:500}nav a.active{background:#eaf3ed;color:#256649;font-weight:700}nav a:hover{background:#f1f5f2}nav .icon{font-size:17px;width:19px}.aside-bottom{margin-top:auto;font-size:12px;color:#436550;border-top:1px solid var(--border);padding-top:22px}.aside-bottom div{font-size:11px;color:#8d9891;margin-top:7px}.local-dot{display:inline-block;width:7px;height:7px;background:#5b9676;border-radius:50%;margin-right:6px}.workspace{margin-left:235px}header{height:78px;background:#fff;border-bottom:1px solid var(--border);padding:0 40px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#909a94}header b{font-weight:500;color:#45564e}.slash{padding:0 15px;color:#c4cdc7}.header-right{display:flex;align-items:center;gap:22px}.pill{font-size:10px;background:#f0f6f1;color:#61826c;border-radius:20px;padding:7px 11px}.avatar{display:grid;place-items:center;border-radius:50%;background:#e9eee9;width:32px;height:32px;color:#587460;font-size:11px}main{padding:35px 40px;max-width:1510px;margin:auto;min-height:calc(100vh - 138px)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:27px}.kicker{font-size:10px;letter-spacing:1.8px;color:#7d8f83;text-transform:uppercase;font-weight:700;margin-bottom:10px}h1{font-family:Manrope,sans-serif;font-size:28px;line-height:1.3;letter-spacing:-1px;margin:0 0 9px;font-weight:800}h2{font-family:Manrope,sans-serif;font-size:16px;margin:0 0 8px;letter-spacing:-.3px}h3{font-size:14px;margin:0 0 8px}p{font-size:13px;line-height:1.7;margin:0;color:var(--muted)}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.hero{background:#eaf2e9;border:1px solid #dce8da;border-radius:12px;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;overflow:hidden}.hero h2{font-size:23px;max-width:520px;line-height:1.45}.hero p{max-width:510px;margin:9px 0 19px;color:#70816e}.hero-art{width:150px;height:135px;position:relative;margin:0 35px}.sheet{position:absolute;background:#fff;width:96px;height:122px;border-radius:10px;box-shadow:0 9px 20px #24483912;border:1px solid #d8e4d6;transform:rotate(9deg);right:0;top:3px;padding:20px 16px}.sheet span{display:block;border-bottom:5px solid #e6eee3;margin-bottom:12px}.sheet span:first-child{width:70%;border-color:#b5cfaa}.box-art{font-size:48px;position:absolute;bottom:-5px;left:-5px;background:#d2dfc2;border:5px solid #eaf2e9;border-radius:13px;width:77px;height:70px;text-align:center;color:#749368}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:26px}.stat{padding:20px;background:#fff;border:1px solid var(--border);border-radius:10px}.stat-label{font-size:12px;color:#74837a;display:flex;justify-content:space-between}.stat-label i{font-style:normal;color:#81a18a}.stat strong{display:block;font-family:Manrope,sans-serif;font-size:32px;font-weight:700;margin:10px 0 5px}.stat small{color:#98a29b;font-size:11px}.grid2{display:grid;grid-template-columns:1.65fr 1fr;gap:23px}.card{background:white;border:1px solid var(--border);border-radius:11px;overflow:hidden;margin-bottom:22px}.card-top{padding:21px 23px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0ed;gap:10px}.card-top h2{margin:0}.card-body{padding:24px}.empty{padding:42px 20px;text-align:center}.empty-icon{background:#f0f5ef;border-radius:14px;width:55px;height:55px;display:grid;place-items:center;font-size:25px;color:#8ba485;margin:0 auto 16px}.empty h3{font-weight:600}.empty p{max-width:350px;margin:0 auto 17px;font-size:12px}.link{font-size:11px;font-weight:600}.steps{display:grid;gap:22px}.step{display:flex;gap:13px}.step-num{flex:none;border:1px solid #dce8dd;background:#f2f6ef;width:27px;height:27px;display:grid;place-items:center;font-size:11px;border-radius:50%;color:#648059}.step h3{font-size:12px;margin:2px 0 5px}.step p{font-size:11px;line-height:1.6}.note{border:1px solid #e7dfc5;background:#fcf9ef;color:#8b7944;border-radius:8px;padding:13px 16px;font-size:12px;line-height:1.7;margin-bottom:18px}.note.good{background:#eff6f0;border-color:#dce9dc;color:#557958}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:12px}th{background:#fafbf9;font-size:10px;letter-spacing:.4px;color:#859085;font-weight:600;padding:13px 20px}td{padding:16px 20px;border-bottom:1px solid #edf1ed}td small{display:block;color:#89978f;margin-top:4px}.code{font-family:ui-monospace,monospace;font-size:12px;font-weight:600;color:#436650}.tag{display:inline-block;border-radius:5px;padding:5px 8px;font-size:10px;background:#edf4ee;color:#57835c}.tag.warn{background:#fff3df;color:#a77c36}.tag.bad{background:#fcebea;color:#ba625a}.tag.gray{background:#eff1f0;color:#7e8983}.filters{display:flex;justify-content:space-between;gap:12px;padding:17px 22px;border-bottom:1px solid var(--border)}input,select,textarea{border:1px solid #dce4dd;border-radius:7px;background:#fff;padding:10px 12px;color:#304c3e;width:100%;font-size:12px}input:focus,select:focus,textarea:focus{outline:2px solid #9abc9c;outline-offset:1px}input[type=checkbox]{width:auto;accent-color:#286849}.search{max-width:320px}label{display:block;font-size:11px;font-weight:600;color:#62746a}label>input,label>select,label>textarea{margin-top:7px}form .fields,.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.span2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.dropzone{border:1.5px dashed #b9ccb9;border-radius:12px;background:#fafcf8;padding:48px 24px;text-align:center}.dropzone.drag{background:#e2eddb}.dropzone h2{font-size:18px;margin:14px 0 8px}.dropzone input{max-width:330px;margin:20px auto 5px}.upload-symbol{font-size:38px;color:#6f936a}.progress{padding:15px;margin-top:15px;border-radius:8px;background:#eff5ee;font-size:12px}progress{width:100%;accent-color:#347855;height:5px}.review-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px}.source-view{height:590px;width:100%;border:0;background:#e9ede8}.source-image{width:100%;max-height:590px;object-fit:contain}.review-card{padding:21px;border-bottom:1px solid var(--border)}.source-text{white-space:pre-wrap;font-size:11px;line-height:1.6;background:#f5f7f3;border-radius:6px;padding:13px;max-height:160px;overflow:auto;color:#71806e;margin:12px 0}details{font-size:12px;color:#6b7b70}summary{cursor:pointer}.review-card .fields{gap:10px}.review-card .actions{margin-top:12px}.negative{color:#bd5f50;font-weight:700}.summary-bar{display:flex;justify-content:space-between;align-items:center;padding:19px 24px;background:#f1f6ef;gap:15px}.summary-bar p{font-size:12px}footer{padding:20px 40px;font-size:9px;letter-spacing:1px;color:#a0aaa2;display:flex;gap:17px;border-top:1px solid #e7ece5}footer span{letter-spacing:0}footer span:last-child{margin-left:auto}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#294c3d;color:#fff;box-shadow:0 7px 30px #0002;border-radius:10px;padding:14px 22px;font-size:13px;max-width:90%;display:none;z-index:50}dialog{border:1px solid var(--border);border-radius:14px;padding:28px;max-width:600px;width:calc(100% - 30px);color:#304b3d;box-shadow:0 20px 80px #0002}dialog::backdrop{background:#1a332b55}dialog h2{font-size:20px;margin-bottom:7px}dialog form{margin-top:22px}.compact{font-size:10px;padding:6px 9px}.document-choice{max-width:450px}pre.audit{max-width:650px;white-space:pre-wrap;font-size:10px}.error-box{padding:20px;background:#fff0ed;border-radius:10px;color:#9c5149}.check-row{display:flex;align-items:center;gap:9px;font-size:12px;margin-top:15px}.check-row input{width:auto}@media(min-width:1500px){main{padding-top:45px}}@media(max-width:1100px){aside{width:200px;padding:28px 15px}.workspace{margin-left:200px}main{padding:28px 25px}header{padding:0 25px}.grid2{grid-template-columns:1.3fr 1fr}.stats{gap:10px}.stat{padding:15px}.hero-art{margin-right:0}.review-layout{grid-template-columns:1fr}.source-view{height:400px}}@media(max-width:760px){aside{position:static;width:100%;padding:16px;border-right:0;border-bottom:1px solid var(--border)}.brand{font-size:23px}.eyebrow,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:14px;gap:5px}nav a{white-space:nowrap;font-size:11px;padding:10px}nav .icon{display:none}.workspace{margin:0}header{height:53px;padding:0 20px}.header-right .pill{display:none}main{padding:24px 16px}.page-head{align-items:flex-start;flex-direction:column}h1{font-size:25px}.hero{padding:23px}.hero h2{font-size:20px}.hero-art{display:none}.stats{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.span2{grid-column:auto}.filters{flex-wrap:wrap}footer{padding:20px;font-size:8px}footer span:last-child{display:none}.summary-bar{align-items:flex-start;flex-direction:column}.source-view{height:350px}}
@media(max-width:760px){form .fields{grid-template-columns:1fr}.review-card .fields{grid-template-columns:1fr}}
.upload-panel>summary{padding:20px;font-weight:600;font-size:14px}.review-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:20px 0 8px}.review-toolbar>select{max-width:320px}.pager{display:flex;gap:10px;align-items:center;margin-left:auto}.pager label{display:flex;gap:8px;align-items:center;white-space:nowrap}.pager select{width:auto;min-width:60px;margin:0}.swipe-hint{font-size:11px;margin:0 0 16px}.review-layout{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr);touch-action:pan-y}.source-card{position:sticky;top:16px}#source-host{padding:12px;display:flex;justify-content:center;background:#e9eeeb;min-height:250px}#source-host canvas,#source-host img{max-width:100%;height:auto;object-fit:contain;max-height:72vh;box-shadow:0 2px 10px #0001}.review-rows{min-width:0;max-height:80vh;overflow:auto;padding-right:3px}.match-help,.save-hint{font-size:11px;margin:10px 0}.receipt-line{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.restore-line{padding:15px 0;display:flex;gap:15px;justify-content:space-between}.card-top .search{width:240px}.progress{margin-bottom:20px}.review-card h3{margin:0}.review-card details{margin-top:12px}@media(max-width:1100px){.review-layout{grid-template-columns:minmax(0,1fr)}.source-card{position:static}#source-host canvas,#source-host img{max-height:50vh}.review-rows{max-height:none}}@media(max-width:760px){.review-toolbar>select{max-width:none}.pager{margin-left:0;width:100%;justify-content:space-between}.card-top{flex-wrap:wrap}.card-top .search{width:100%}form .fields{min-width:0}.fields label{min-width:0}#source-host{min-height:160px}.review-card .fields{grid-template-columns:1fr 1fr}.review-card{padding:16px}.review-card .fields input{min-width:0;width:100%}.source-card .card-top{padding:15px}.receipt-line{white-space:normal;min-width:240px}}
[hidden]{display:none!important}.stock-color-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:8px;margin:9px 0}.stock-color-row button{height:36px}.stock-color-row label{min-width:0}.color-help,.color-source{font-size:11px;margin:8px 0}.qty-confirm{background:#fff3df;padding:12px;border-radius:8px;line-height:1.6}.receipt-color-field{min-width:0}
