:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#183442;background:#f4f7f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #6cd4c2;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:23px;letter-spacing:-.55px}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:15px;margin-bottom:12px}p{line-height:1.55}.muted{color:#70838e}.small{font-size:12px}.strong{font-weight:750}.boot{height:100vh;display:grid;place-items:center;color:#55717a}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:18px}.auth-card{width:100%;max-width:420px;background:white;border:1px solid #e1eaec;border-radius:22px;box-shadow:0 24px 60px #102d4020;padding:30px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:25px}.auth-brand h1{margin:0}.logo{display:grid;place-items:center;flex:none;background:#0f766e;color:#fff;font-size:17px;font-weight:850;width:47px;height:47px;border-radius:15px;letter-spacing:-.7px}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;flex:none;position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid #e4edee;padding:21px 14px;display:flex;flex-direction:column;gap:22px}.sidebar-header{display:flex;align-items:center;gap:11px;padding:3px 8px}.sidebar-header strong{display:block;font-size:16px}.sidebar-header .small{font-size:11px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{width:100%;background:transparent;color:#58717e;border:0;border-radius:12px;display:flex;align-items:center;text-align:left;gap:11px;padding:12px;font-weight:700;font-size:13px}.nav button.active,.nav button:hover{background:#e9f6f2;color:#0e776b}.nav-ico{width:21px;display:inline-grid;place-items:center;font-size:19px}.nav-group{color:#98a9ae;padding:13px 13px 5px;text-transform:uppercase;font-size:10px;letter-spacing:1px;font-weight:800}.sidebar-bottom{margin-top:auto;padding:9px;font-size:12px;color:#65808b}.main{width:100%;min-width:0;max-width:1600px;margin:0 auto;padding:29px clamp(16px,2.8vw,42px) 80px}.topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:23px}.topline h1{margin:0 0 5px}.top-actions{display:flex;gap:8px;align-items:center}.chip{display:inline-block;font-size:10px;border-radius:999px;padding:5px 9px;background:#dff4ed;color:#106e5d;font-weight:800}.chip.warn{background:#fff0d1;color:#9e6710}.chip.danger{background:#fce7e9;color:#a72e3c}.card{background:#fff;border:1px solid #e3ebed;border-radius:17px;padding:20px;box-shadow:0 2px 9px #15313f06;min-width:0}.card+.card{margin-top:16px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.card-head h2,.card-head h3{margin:0}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.stat{font-size:26px;font-weight:850;letter-spacing:-1px;margin-top:7px}.stat-label{font-size:12px;color:#67808b}.section{margin-top:18px}.btn{border:1px solid #d6e4e6;background:#fff;color:#365664;padding:10px 14px;min-height:42px;border-radius:11px;font-weight:750;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:hover{background:#f3faf9}.btn.primary{background:#0f766e;color:#fff;border-color:#0f766e}.btn.primary:hover{background:#0b625c}.btn.soft{background:#e7f5f1;border-color:#d0eae3;color:#0e7065}.btn.red{background:#fff3f3;color:#b33b43;border-color:#ffd5d7}.btn.sm{padding:7px 10px;min-height:32px;font-size:12px}.btn.full{width:100%}.btn.icon{width:42px;padding:10px}.actions{display:flex;gap:8px;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid .wide{grid-column:1/-1}label.field{font-size:12px;color:#496673;display:block;font-weight:700}.field>span{display:block;margin-bottom:7px}.field input,.field select,.field textarea,.text-input{display:block;min-height:42px;padding:10px 11px;width:100%;border:1px solid #cedde1;border-radius:10px;color:#203e4a;background:#fff;font-size:13px}.field textarea{min-height:75px;resize:vertical}.field input:disabled{background:#f3f6f6}.stack{display:flex;flex-direction:column;gap:12px}.help{font-size:12px;color:#718893;line-height:1.5}.danger-text{color:#b93644}.success-text{color:#0a7766}.table-wrap{overflow:auto;border:1px solid #e5edee;border-radius:12px}.table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.table th{background:#f7fafb;color:#67818d;text-align:left;padding:12px 10px;font-weight:800;border-bottom:1px solid #e3eaec}.table td{padding:11px 10px;border-bottom:1px solid #eef2f3;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tr.clickable:hover{background:#f0f9f7;cursor:pointer}.table td.wrap{white-space:normal;min-width:170px}.right{text-align:right!important}.center{text-align:center!important}.empty{padding:32px 12px;text-align:center;color:#8da0a9}.inline-search{display:flex;gap:8px;align-items:center;width:100%}.inline-search input{flex:1;min-width:0}.pill-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sep{border:0;border-top:1px solid #e7eeef;margin:16px 0}.cart-table .text-input{min-width:80px}.cart-table select{min-width:110px}.cart-table .name-col{min-width:165px}.summary{margin-left:auto;max-width:410px;border-top:1px solid #e8eef0;padding-top:13px}.sum-line{display:flex;justify-content:space-between;gap:20px;padding:5px 0;font-size:13px}.sum-line.grand{font-size:19px;border-top:1px solid #dee8ea;margin-top:8px;padding-top:13px;color:#0e766a;font-weight:850}.alert{padding:12px 15px;border:1px solid #bde6df;background:#ecfaf6;color:#207569;border-radius:11px;margin:10px 0;font-size:12px;line-height:1.5}.alert.error{border-color:#f1cacd;background:#fff4f5;color:#b43d48}.toast{position:fixed;z-index:1000;bottom:25px;right:22px;background:#203b47;color:#fff;padding:13px 18px;border-radius:12px;max-width:360px;box-shadow:0 12px 40px #203b4750;font-size:13px;line-height:1.5}.toast.error{background:#9e3240}.modal-bg{position:fixed;z-index:100;inset:0;background:#1027309c;display:grid;place-items:center;padding:18px}.modal{background:#fff;border-radius:19px;width:min(100%,700px);max-height:92vh;overflow:auto;padding:24px;box-shadow:0 24px 75px #0003}.modal.wide{width:min(100%,940px)}.modal-header{display:flex;align-items:start;justify-content:space-between;gap:15px}.modal-header h2{margin:0 0 5px}.scanning{min-height:270px;background:#101f2c;border-radius:11px;overflow:hidden;margin:12px 0}#reader video{object-fit:cover}.mobile-nav{display:none}.nav-logout{margin-top:auto}.list-choice{border:1px solid #e5edee;border-radius:12px;overflow:hidden}.choice{display:block;border:0;border-bottom:1px solid #e5edee;padding:12px 13px;background:white;text-align:left;width:100%;font-size:13px}.choice:hover{background:#edf8f4}.choice:last-child{border-bottom:0}.choice small{display:block;color:#66808a;margin-top:3px}.mini{font-size:11px}.unit-row{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 36px;gap:8px;align-items:end;padding:8px 0;border-bottom:1px solid #eef3f4}.unit-row .field>span{font-size:11px}.unit-row:last-child{border-bottom:0}.current-row{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.tab-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:17px}.tab-links button.active{border-color:#0f766e;background:#e7f5f1;color:#086d61}.invoice{font-family:Arial,sans-serif;color:#172c36;background:#fff}.invoice h1{text-align:center;font-size:21px;letter-spacing:2px;margin:0 0 12px}.invoice-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:13px;line-height:1.6;font-size:11px}.invoice table{width:100%;border-collapse:collapse;font-size:10px}.invoice table th,.invoice table td{border:1px solid #b8c4c7;padding:6px 5px}.invoice table th{background:#eef2f3}.invoice-summary{width:280px;margin:13px 0 0 auto;font-size:12px}.invoice-summary>div{display:flex;justify-content:space-between;gap:15px;padding:4px}.invoice-summary .total{font-weight:bold;border-top:2px solid #2e5966;font-size:15px}.invoice-footer{margin-top:18px;font-size:11px}.invoice .notes{white-space:pre-wrap}.print-layer{display:none}@media(max-width:980px){.sidebar{width:200px}.main{padding:25px 18px 100px}}@media(max-width:700px){.sidebar{display:none}.main{padding:20px 12px 96px}.topline{align-items:flex-start}.topline h1{font-size:21px}.grid3,.grid2{grid-template-columns:1fr}.card{padding:14px;border-radius:14px}.form-grid{grid-template-columns:1fr}.top-actions{flex-wrap:wrap;justify-content:flex-end}.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e4eeef;display:flex;z-index:30;padding:8px 5px max(9px,env(safe-area-inset-bottom));justify-content:space-around;box-shadow:0 -5px 26px #213c490d}.mobile-nav button{border:0;background:transparent;color:#748993;display:grid;place-items:center;font-size:10px;gap:1px;min-width:51px;padding:4px 2px;font-weight:800}.mobile-nav button.active{color:#0d7769}.mobile-nav button b{font-size:20px}.modal{padding:16px}.unit-row{grid-template-columns:1fr 1fr;gap:8px}.unit-row>button{grid-column:2}.stat{font-size:23px}}@media print{@page{size:215.9mm 330.2mm;margin:10mm}html,body{background:#fff!important;margin:0!important;padding:0!important}.app-shell,.auth-shell,#modal-root,.toast,#app{display:none!important}#print-root,.print-layer{display:block!important}.invoice{width:100%;box-shadow:none;border:0;padding:0}.invoice table thead{display:table-header-group}.invoice table tr{break-inside:avoid;page-break-inside:avoid}.invoice-summary{break-inside:avoid;page-break-inside:avoid}}
