:root{--primary:#155e75;--primary-dark:#0f3f4d;--bg:#f3f6f8;--ink:#17212b;--muted:#607080;--border:#dbe3e8;--danger:#b42318;--success:#047857;--warning:#b45309}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Cairo,Tahoma,Arial,sans-serif;font-size:14px}.topbar{min-height:68px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:10px max(4vw,20px);gap:20px}.brand{font-weight:700;color:var(--primary-dark);text-decoration:none;font-size:17px}.topbar nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.topbar nav a{color:var(--ink);padding:8px 10px;text-decoration:none;border-radius:7px}.topbar nav a:hover{background:#e6f4f6}.danger-link{color:var(--danger)!important}.container{max-width:1500px;margin:0 auto;padding:24px}.narrow{max-width:580px;padding-top:60px}.card,.scan-box{background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px;box-shadow:0 1px 3px #00111a0a}.card+ .card{margin-top:18px}h1,h2,h3{margin:0 0 14px;line-height:1.5}h1{font-size:24px}h2{font-size:19px}h3{font-size:16px}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:10px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:6px;font-weight:600}input,select,textarea,button,.button{font:inherit;border-radius:7px;min-height:42px;padding:8px 11px}input,select,textarea{width:100%;background:#fff;border:1px solid #b9c6cf;color:var(--ink)}textarea{min-height:86px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid #bfe6ea;border-color:var(--primary)}button,.button{border:0;background:var(--primary);color:#fff;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:700}button:hover,.button:hover{background:var(--primary-dark)}button.secondary,.button.secondary{background:#eaf0f3;color:#1d3442}button.danger,.button.danger{background:var(--danger)}button.outline,.button.outline{background:#fff;border:1px solid var(--primary);color:var(--primary)}.wide{width:100%;margin-top:18px}.form-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.alert{padding:12px 14px;border-radius:8px;margin-bottom:16px}.alert.success{background:#dff7ed;color:#065f46}.alert.error{background:#ffe8e7;color:#991b1b}.muted{color:var(--muted)}.actions{display:flex;gap:8px;flex-wrap:wrap}.scan-box{margin-bottom:18px}.scan-line{display:flex;gap:10px}.scan-line input{font-size:17px}.scan-result{margin-top:15px}.result-grid{display:grid;grid-template-columns:100px 1fr;gap:15px}.result-grid img{width:100px;height:100px;object-fit:cover;border-radius:8px}.filters{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:10px;margin-bottom:16px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:9px}table{width:100%;border-collapse:collapse;background:#fff;white-space:nowrap}th,td{text-align:right;padding:10px;border-bottom:1px solid var(--border);vertical-align:middle}th{background:#f6f9fa;font-size:12px}tr:last-child td{border-bottom:0}.thumb{width:40px;height:40px;object-fit:cover;border-radius:5px}.status{display:inline-block;padding:3px 8px;border-radius:99px;background:#e6f4f6;color:#0f5c68;font-size:12px}.pagination{display:flex;gap:6px;justify-content:center;margin-top:18px;flex-wrap:wrap}.pagination a,.pagination span{padding:7px 11px;background:white;border:1px solid var(--border);border-radius:6px;text-decoration:none;color:var(--ink)}.tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:18px;gap:8px}.tab{border-radius:8px 8px 0 0;background:#eef4f5;color:#1a4853}.tab.active{background:var(--primary);color:#fff}.tab-panel{display:none}.tab-panel.active{display:block}.barcode-preview{min-height:76px;background:#fff;border:1px dashed #9fb4bd;padding:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.barcode-preview svg{max-width:100%;height:auto}.barcode-fallback{font-family:monospace;font-size:20px;letter-spacing:3px}.bulk-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:15px}.bulk-table input,.bulk-table select{min-width:110px;min-height:36px;padding:5px}.summary{padding:10px;background:#eaf6f7;border-radius:7px;margin:12px 0}.asset-image{width:170px;max-height:170px;object-fit:contain;border-radius:8px;border:1px solid var(--border)}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.details div{padding:11px;border-bottom:1px solid var(--border)}.details strong{display:block;color:var(--muted);font-size:12px;margin-bottom:3px}.label-preview{width:500px;height:250px;max-width:100%;background:white;border:1px solid #222;display:flex;align-items:center;justify-content:center;overflow:hidden}.label{width:50mm;height:25mm;background:white;color:#000;padding:1.5mm 2mm;display:grid;grid-template-columns:10mm 1fr;grid-template-rows:6mm 13mm 4mm;gap:0 2mm;overflow:hidden}.label-logo{grid-row:1/4;width:10mm;max-height:10mm;object-fit:contain;align-self:start}.label-name{font-size:8pt;font-weight:bold;overflow:hidden;white-space:nowrap}.label-barcode{grid-column:2;display:flex;align-items:center;justify-content:center;overflow:hidden}.label-barcode svg{max-width:34mm;height:12mm}.label-code{grid-column:2;text-align:center;font:7pt monospace;font-weight:bold}.print-note{margin-top:16px;background:#fff6dd;padding:12px;border-radius:7px;color:#6b4e00}.hidden{display:none!important}.login-card label{margin-top:13px}.camera{margin-top:12px;max-width:500px}.camera video{width:100%;border-radius:8px;background:#111}@media(max-width:900px){.form-grid,.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(2,1fr)}.filters button{grid-column:span 2}.details{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.container{padding:14px}.topbar{padding:10px 14px;align-items:flex-start;flex-direction:column}.form-grid,.form-grid.two,.filters{grid-template-columns:1fr}.filters button{grid-column:auto}.page-head{align-items:flex-start;flex-direction:column}.scan-line{flex-wrap:wrap}.scan-line input{width:100%}.result-grid{grid-template-columns:1fr}.details{grid-template-columns:1fr}.label-preview{transform-origin:top right;overflow:auto}}
