:root{--yellow:#ffe600;--text:#192332;--muted:#666d75;--line:#dedede;--bg:#f3f3f3}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);min-height:100vh;display:flex;flex-direction:column}[hidden]{display:none!important}button,input,select{font:inherit}button{cursor:pointer}.header{height:84px;display:flex;align-items:center;gap:20px;padding:0 40px;background:var(--yellow);box-shadow:0 4px 16px #00000014}.menu-btn,.side-head button{background:none;border:0;color:#142434;font-size:27px;padding:0}.brand{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:900;line-height:13px;color:#17439a}.brand-icon{display:grid;place-items:center;width:48px;height:36px;background:#fff17a;border:2px solid #17439a;border-radius:50%;font-size:23px}.header-title{border-left:1px solid #d4bc00;padding-left:20px;display:flex;gap:12px;align-items:center;font-size:21px}.header-title span{border-left:1px solid #d4bc00;padding-left:12px;font-weight:700}.site-tag{margin-left:auto;border-radius:25px;padding:10px 18px;font-weight:800;font-size:14px;background:#ddc700}.demo-notice{background:#fff5c0;color:#624700;text-align:center;padding:10px 20px;line-height:1.4;font-size:13px;border-bottom:1px solid #ead867}main{width:100%;flex:1;padding:40px 16px 65px}.screen{max-width:840px;margin:auto}.screen.wide{max-width:1290px}.tabs{display:grid;background:white;padding:6px;border:1px solid var(--line);border-radius:17px;box-shadow:0 3px 10px #0000000c;margin-bottom:24px}.tabs-two{grid-template-columns:repeat(2,1fr)}.tabs-three{grid-template-columns:repeat(3,1fr)}.tabs button,.type-tabs button{border:0;border-radius:12px;background:white;color:#61666c;font-size:20px;font-weight:700;min-height:54px}.tabs button.active,.type-tabs button.active{background:var(--yellow);color:var(--text)}.card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 3px 12px #0000000c;overflow:hidden}.consult-card{padding:32px}.section-label{border-left:4px solid var(--yellow);padding-left:10px;color:#5c6470;font-size:15px;letter-spacing:2px;font-weight:800}.search-row{display:grid;grid-template-columns:1fr auto;gap:16px;margin-top:20px}input,select{width:100%;height:60px;border:2px solid #d9d9d9;border-radius:12px;background:white;padding:0 20px;color:var(--text);outline:none;font-size:18px}input:focus,select:focus{border-color:#437bd0;box-shadow:0 0 0 3px #cce0ff}input::placeholder{color:#b4b9bd}.primary{border:0;border-radius:12px;background:var(--yellow);color:var(--text);font-size:19px;font-weight:800;padding:16px 26px}.primary:disabled{opacity:.5}.scan-button{width:100%;border:2px solid #4479c8;border-radius:12px;background:#f1f6ff;color:#3e70bd;font-weight:700;font-size:17px;padding:14px;margin-top:18px}.result{margin-top:20px;padding:16px;background:#fff7d7;border-radius:10px;line-height:1.5}.card-heading{padding:23px 27px;border-bottom:1px solid var(--line);background:#fafafa;font-size:20px;font-weight:800}.card-body{padding:27px}.type-tabs{display:flex;gap:12px;margin-bottom:27px}.type-tabs button{border:2px solid #d1d1d1;padding:0 25px;font-size:18px}.type-tabs button.active{border-color:var(--yellow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}label{display:block;color:#646b73;font-size:15px;letter-spacing:1px;font-weight:800}label input,label select{display:block;margin-top:7px;letter-spacing:normal;font-weight:400}.save{margin-top:21px;min-width:210px}.muted{color:#69737d;font-size:14px;line-height:1.5}.table-scroll{overflow-x:auto;margin-top:20px}table{width:100%;border-collapse:collapse;min-width:600px}th,td{text-align:left;padding:14px;border-bottom:1px solid #e6e6e6;font-size:14px}th{color:#66717e;background:#fafafa}.file-input{display:inline-block;padding:14px 20px;background:#f1f4f8;border:1px solid #d7dce2;border-radius:10px;cursor:pointer;letter-spacing:0;color:#2b3541}.file-input input{height:auto;margin-top:10px;font-size:14px;border:0;padding:0}.inline{display:flex;gap:10px;margin-top:14px}.outline{border:2px solid #d3d8df;border-radius:12px;padding:12px 18px;background:white;color:#263445;font-weight:700;white-space:nowrap}.spaced{margin-top:25px}.seal-list{padding:15px 15px 15px 30px;background:#f8f8f8;border-radius:10px;color:#66717c}.seal-fields{margin-top:22px}.side-menu{position:fixed;top:0;bottom:0;left:0;width:290px;background:white;z-index:12;box-shadow:5px 0 24px #0003;padding:20px}.side-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.side-menu>button{width:100%;border:0;background:transparent;text-align:left;padding:16px;border-radius:10px;color:#273542;font-weight:700}.side-menu>button:hover{background:#fff5aa}.backdrop{position:fixed;inset:0;background:#0008;z-index:11}footer{text-align:center;padding:24px;background:#fafafa;border-top:1px solid #e6e6e6;color:#9aa0a7;font-size:14px}.modal-backdrop{position:fixed;inset:0;background:#0009;z-index:20;display:grid;place-items:center;padding:16px}.camera-card{background:white;border-radius:16px;padding:20px;width:min(600px,100%)}.camera-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.camera-header button{border:0;background:none;font-size:25px}video{width:100%;max-height:55vh;background:#151515;border-radius:10px}#cameraMessage{color:#657080;font-size:14px}
.totals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.totals div{padding:15px;border:1px solid #e4e6e8;border-radius:12px;background:#fafafa}.totals span{display:block;font-size:13px;color:#687078;margin-bottom:6px}.totals strong{font-size:24px;color:#172332}
.adminbar,.list-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.adminbar span{margin-right:auto;font-weight:700}.list-actions:last-child{margin:18px 0 0}.error-text{color:#b42318;min-height:1em}.small-action{padding:7px 10px;margin:2px;border:1px solid #cfd5dd;border-radius:8px;background:#fff}.history-card{width:min(950px,100%);max-height:90vh;overflow:auto}.error-result{background:#fff0ef;color:#9f221c}.good-result{background:#f3f7fc}
.audit-detail{white-space:pre-line;min-width:260px;line-height:1.5;overflow-wrap:anywhere}
.brand img{display:block;width:140px;max-height:45px;object-fit:contain}.result-device{margin-top:14px;border-top:1px solid #dae1e9;padding-top:5px}.result-device p{margin:8px 0}#scannerReader{width:100%;max-height:55vh;overflow:hidden;background:#151515;border-radius:10px}
.scanner-view{position:relative;overflow:hidden;background:#151515;border-radius:10px;line-height:0;min-height:220px;max-height:55vh}.scanner-view video,.scanner-view #scannerReader{width:100%;height:auto;max-height:55vh;border-radius:0;object-fit:contain}.scanner-view #scannerReader video{display:block;width:100%!important;max-height:55vh;object-fit:contain}.scanner-guide{position:absolute;left:14%;right:14%;top:23%;bottom:23%;border:3px solid #ffe600;border-radius:12px;box-shadow:0 0 0 999px #0003;pointer-events:none}.scanner-caption{position:absolute;bottom:0;left:0;right:0;padding:24px 12px 12px;color:#fff;background:linear-gradient(transparent,#000b);line-height:1.3;text-align:center;font-size:14px;font-weight:700;pointer-events:none}.scanner-view:has(video[hidden]) #scannerReader:empty~.scanner-guide{display:none}
@media(max-width:700px){.brand img{width:98px;max-height:35px}}
@media(max-width:700px){.header{height:74px;gap:10px;padding:0 14px}.menu-btn{font-size:23px}.brand{font-size:11px;line-height:10px}.brand-icon{width:37px;height:28px;font-size:18px}.header-title{font-size:14px;gap:5px;padding-left:10px;line-height:1.2;flex-wrap:wrap}.header-title span{padding-left:6px}.site-tag{padding:9px 12px;font-size:11px}.demo-notice{font-size:12px}main{padding:22px 12px 40px}.tabs{gap:4px;margin-bottom:20px}.tabs button{font-size:14px;min-height:48px;padding:5px}.tabs-three button{font-size:12px}.consult-card{padding:22px 20px}.search-row{grid-template-columns:1fr auto;gap:8px}.search-row input{min-width:0}.primary{font-size:15px;padding:12px 16px}input,select{height:55px;font-size:16px;padding:0 12px}.card-body{padding:20px}.card-heading{padding:19px}.form-grid{grid-template-columns:1fr}.type-tabs button{font-size:15px}.inline{flex-wrap:wrap}.inline .outline{width:100%}.save{width:100%}.totals{gap:6px}.totals div{padding:10px}.totals span{font-size:11px}.totals strong{font-size:20px}}
