*{box-sizing:border-box}body{font-family:system-ui,sans-serif;margin:0;color:#111;background:#f4f5f7}.login{max-width:320px;margin:80px auto;display:flex;flex-direction:column;gap:10px;background:#fff;padding:24px;border-radius:8px}.login h1{font-size:18px;margin:0 0 8px}.login input{padding:9px;border:1px solid #ccc;border-radius:4px}.login button{padding:10px;background:#1a56db;color:#fff;border:none;border-radius:4px;cursor:pointer}.wrap{max-width:900px;margin:0 auto}header{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#fff;border-bottom:1px solid #e3e3e3}header nav{display:flex;gap:6px;flex:1}header nav button{padding:7px 12px;border:1px solid #ccc;background:#fafafa;border-radius:4px;cursor:pointer}header nav button.on{background:#1a56db;color:#fff;border-color:#1a56db}.logout{padding:7px 12px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer}main{padding:16px}.card{background:#fff;padding:20px;border-radius:8px}.card h2{margin:0 0 16px;font-size:16px}.card label{display:block;font-weight:600;font-size:13px;margin:14px 0 5px}.card input,.card select{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px}.card input[type=file]{padding:6px}button.primary{margin-top:18px;padding:11px 18px;background:#1a56db;color:#fff;border:none;border-radius:4px;cursor:pointer}.preview{background:#f8f9fb;border:1px solid #e3e3e3;border-radius:6px;padding:10px;margin-top:8px;font-size:13px}.preview ol{margin:6px 0 0;padding-left:20px}.filters{display:flex;gap:8px;margin-bottom:12px}.filters input{flex:1}.filters button,.filters select{padding:8px 12px;border:1px solid #ccc;border-radius:4px;background:#fafafa;cursor:pointer}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid #eee}th{color:#555;font-weight:600}.ok{color:#1a7f37;font-size:13px}.err{color:#c0392b;font-size:13px}.muted{color:#888;font-size:13px}.card h3{margin:18px 0 6px;font-size:14px}.scanrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.scanrow input[type=file]{flex:1;min-width:140px}.scanbtn{padding:8px 12px;border:1px solid #1a56db;background:#1a56db;color:#fff;border-radius:4px;cursor:pointer;white-space:nowrap}.modal{position:fixed;inset:0;background:#0009;z-index:80;display:flex;align-items:center;justify-content:center;padding:16px}.modal-card{background:#fff;border-radius:12px;padding:14px;width:min(92vw,360px);box-shadow:0 10px 40px #0006}.modal-head{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:10px}.modal-head button{border:none;background:#eee;border-radius:6px;width:30px;height:30px;cursor:pointer;font-size:15px}.scan-area{position:relative;width:100%;aspect-ratio:1 / 1;background:#000;border-radius:8px;overflow:hidden}.scan-area video{width:100%;height:100%;object-fit:cover}.scan-frame{position:absolute;inset:15%;border:3px solid rgba(255,255,255,.95);border-radius:14px;box-shadow:0 0 0 1000px #00000059}.scan-status{text-align:center;font-size:13px;color:#555;margin-top:10px}.addrow{margin:10px 0}.addform{display:inline-flex;gap:4px;margin-left:8px}.addform input{width:130px;padding:4px 6px}.addform button{padding:4px 10px;cursor:pointer;border:1px solid #1a56db;background:#fff;color:#1a56db;border-radius:4px}.ent{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:5px 0;font-size:13px}.ent code{background:#f0f0f3;padding:1px 6px;border-radius:3px;font-size:12px}.ent button{padding:3px 8px;cursor:pointer;border:1px solid #ccc;background:#fafafa;border-radius:4px}.indent{margin-left:20px;border-left:2px solid #eee;padding-left:12px}.wh{margin:10px 0;padding:8px 0;border-top:1px solid #eee}.print-only{display:none}.cart{margin-top:20px;border-top:1px solid #eee;padding-top:14px}.cart .capt-toggle{display:flex;gap:6px;align-items:center;font-size:13px;margin:8px 0 12px}.cart-row{display:flex;gap:8px;align-items:center;margin:5px 0;font-size:13px}.cart-row code{background:#f0f0f3;padding:1px 6px;border-radius:3px;font-size:12px}.cart-row input{width:60px;padding:4px 6px;margin-left:auto}.cart-row button{border:1px solid #c0392b;color:#c0392b;background:#fff;border-radius:4px;cursor:pointer;padding:2px 9px}.labelsheet{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #000;border-left:1px solid #000;margin-top:14px}.cut-cell{border-right:1px solid #000;border-bottom:1px solid #000;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px;aspect-ratio:1 / 1;break-inside:avoid}.cut-cell img{width:72%;height:auto;image-rendering:pixelated}.cut-cap{font-family:Times New Roman,Times,serif;font-size:12px;text-align:center;margin-top:4px;line-height:1.15}.cut-code{font-family:monospace;font-size:9px;color:#333;margin-top:2px}.labels{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.label{width:150px;text-align:center;border:1px solid #ddd;padding:8px;border-radius:4px}.label img{width:120px;height:120px;image-rendering:pixelated}.label-code{font-size:11px;font-family:monospace;margin-top:4px}@media print{header,.filters,.screen-only{display:none!important}.print-only{display:flex!important}body,.card{background:#fff}.label{page-break-inside:avoid}@page{size:A4;margin:10mm}}
