:root{--ink2:#55586b;--ink3:#686b7c;--line:#dfe1ea}
html{background:#f4f5f9}body{background:#f4f5f9}body::before{display:none}
:focus-visible{outline:3px solid #635dca;outline-offset:2px}
.login-shell{min-height:88vh;display:grid;place-items:center;padding:22px}
.login-panel{width:min(100%,370px);background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue2);border-radius:12px;padding:32px;box-shadow:0 8px 30px #20234a0a}
.login-line{font-weight:650;color:var(--blue2);font-size:14px}
.login-panel h1{font-size:30px;margin:3px 0 26px;color:#191a30}
.login-panel input,.login-panel #lb{width:100%;min-height:44px;font-size:16px}
.login-panel #lb{justify-content:center}.login-error{color:var(--red);min-height:1em;margin:0 0 6px}.switch-client{display:block;text-align:center;margin:14px 0 0}
.demo-users{border-top:1px solid var(--line);margin-top:20px;padding-top:16px;color:var(--ink2);font-size:13px}
.demo-users div{display:flex;gap:6px;margin-top:8px}.demo-users button{background:#f4f4fa;color:var(--blue);border:1px solid var(--line);padding:8px 12px;cursor:pointer;border-radius:6px}
.demo-label{color:#614a12;background:#fff1cc;border:1px solid #ead89c;border-radius:4px;padding:2px 6px;font-size:12px;white-space:nowrap}
.glass{background:white;border:1px solid var(--line);box-shadow:0 2px 7px #20234a07;border-radius:12px;backdrop-filter:none}
.btn:disabled{opacity:.55;cursor:wait}
body.phone{max-width:680px;padding-bottom:calc(82px + env(safe-area-inset-bottom))}
.phone header{min-height:60px;gap:8px;background:#fff}.phone header b{color:#20213f}.phone .wrap{padding:14px}
.phone .tabbar{max-width:680px;background:#fff;border-top:1px solid var(--line)}
.phone .tabbar a{position:relative;min-height:52px;display:grid;place-items:center;padding:8px 2px}
.phone .tabbar a.on:before{content:"";position:absolute;top:0;width:24px;height:3px;border-radius:0 0 4px 4px;background:var(--blue2)}
.phone h1{font-size:23px;color:#20213f}.phone .card{padding:16px}.phone .row>*{min-width:0}
.phone input:not([type=checkbox]):not([type=file]),.phone textarea,.phone select,.delivery input:not([type=file]){font-size:16px;min-height:42px;min-width:0}
.phone .btn,.delivery .btn{justify-content:center;min-height:40px}.phone .small{font-size:13px}
.phone .stage-head{display:flex;gap:8px;align-items:center;justify-content:space-between;margin:6px 0 14px}
.phone .stock-search{width:100%;margin:0 0 14px}.phone .stock-row{padding:13px 0;border-top:1px solid var(--line)}
.stock-row strong,.queue-row strong{display:block;overflow-wrap:anywhere;color:var(--ink)}
.qty-grid{display:flex;gap:12px;flex-wrap:wrap;margin-top:5px;font-size:13px;color:var(--ink2)}.qty-grid b{font-variant-numeric:tabular-nums;color:var(--blue)}
.phone .queue-row{padding:14px;background:#fff;border:1px solid var(--line);border-radius:10px;margin:0 0 10px}
.queue-row .dispatch-fields{display:grid;gap:8px;margin-top:10px}.queue-row .dispatch-fields input,.queue-row .dispatch-fields select{width:100%}
.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-actions .btn{flex:1}
.queue-row small{color:var(--ink2)}.notice{color:var(--amber);font-weight:650}
.item input[type=file]{max-width:100%}.item .sn-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.item .sn-controls input{grid-column:1/-1;width:100%}
.phone .mask{padding:16px 8px}.phone .modal{padding:18px}.phone .photo-in{cursor:pointer}
.phone .preview-file{display:inline-grid;position:relative}.preview-file button{position:absolute;right:2px;top:2px;background:#252633;color:white;border-radius:50%;border:0;padding:5px 8px;cursor:pointer}
@media(min-width:800px){.phone .wrap{padding:20px 0}.phone header{border-radius:0 0 10px 10px;padding:14px 18px}.phone .tabbar{border-radius:12px 12px 0 0}}
