:root{font-family:Arial,Helvetica,sans-serif;color:#142e50;background:#fff;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app{min-height:100dvh;display:flex;flex-direction:column}.brand-header{height:132px;background:#0f284d;display:flex;justify-content:center;align-items:center}.brand-header img{width:min(600px,85vw);height:126px;object-fit:cover}.status{margin:20px 20px 0;padding:18px 26px;min-height:64px;display:flex;align-items:center;gap:10px;border-radius:12px;font-size:21px}.status-dot{width:16px;height:16px;border-radius:50%;flex:none;background:currentColor;box-shadow:0 0 0 5px #ffffff8a}.status-ready{background:#edf9ee;color:#286f36;border:1px solid #b8e4bd}.status-wait{background:#fff7e7;color:#9a6100;border:1px solid #f4d9a1}.status-alert{background:#fff0eb;color:#a4412c;border:1px solid #efc5ba}.status-payment{background:#eef4ff;color:#24518c;border:1px solid #baccf2}.status-paid{background:#e7f7eb;color:#237c3f;border:1px solid #a7dfb5}.shop{flex:1;min-height:0;padding:24px 20px 20px;display:flex;flex-direction:column}.scan-form{height:76px;min-height:76px;border:1.5px solid #bcc9dc;border-radius:12px;display:flex;align-items:center;gap:16px;padding:0 20px;box-shadow:0 3px 10px #142e5008}.scan-form:focus-within{border-color:#4a79ac;box-shadow:0 0 0 3px #4a79ac25}.scan-form>svg{width:35px;height:35px;fill:none;stroke:#142e50;stroke-width:2;stroke-linecap:round}.scan-form input{flex:1;min-width:0;border:0;outline:0;color:#142e50;font-size:21px;background:transparent}.scan-form input::placeholder{color:#738198}.scan-submit{width:46px;height:46px;border:0;border-radius:10px;background:#eaf0f7;display:grid;place-items:center;color:#142e50}.scan-submit svg{width:25px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.manual-button{margin-top:14px;width:100%;height:64px;border:1px solid #cdd8e6;border-radius:12px;background:#f5f8fc;color:#142e50;font-size:19px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px}.manual-button:hover,.scan-submit:hover{background:#e7eef8}.manual-button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}.empty-state{flex:1;min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-bottom:6vh}.basket{width:118px;height:118px;fill:none;stroke:#77849a;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}.empty-state h1{font-size:clamp(27px,3vw,38px);margin:18px 0 9px;letter-spacing:-.035em}.empty-state p{margin:0;color:#77849a;font-size:20px}.bottom-area{background:#f5f8fc;border-top:1px solid #e4ebf4}.summary{min-height:122px;padding:18px 20px;display:grid;grid-template-columns:1fr 1fr minmax(240px,1.25fr);align-items:center;gap:24px}.item-count{display:flex;align-items:baseline;gap:10px;border-right:1px solid #cbd6e5}.item-count strong{font-size:38px}.item-count span{font-size:19px}.total{display:flex;flex-direction:column;gap:3px}.total span{font-size:17px;color:#75839a}.total strong{font-size:30px;white-space:nowrap}.summary button{height:66px;background:#a2f25c;color:#142e50;border:0;border-radius:11px;font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:15px}.summary button:hover:not(:disabled),.primary-button:hover:not(:disabled){background:#90e347}.summary button:disabled{background:#e3e9f1;color:#8d9aae}.summary button span{font-size:30px;line-height:1}.footer-line{padding:0 20px 18px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:#8490a3;font-size:13px}.footer-line button,.text-button{background:none;border:0;color:#44668e;text-decoration:underline;text-underline-offset:3px}.cart-section{padding:25px 2px;overflow:auto;flex:1}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#6782a2}.section-heading h1{font-size:27px;margin:5px 0 0}.cart-list{border-top:1px solid #e2e9f1}.cart-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:20px;padding:17px 5px;border-bottom:1px solid #e2e9f1}.cart-name{font-weight:700;font-size:18px}.cart-detail{margin-top:5px;color:#73839a;font-size:15px}.cart-price{font-size:19px;font-weight:700;white-space:nowrap}.qty-actions{display:flex;align-items:center;gap:7px}.qty-actions button{min-width:42px;height:42px;border:1px solid #d4dfeb;background:#f5f8fc;border-radius:9px;color:#142e50;font-weight:700}.qty-actions button:hover{background:#e6eef8}.qty-actions span{min-width:28px;text-align:center;font-weight:700}.modal,.operator-modal{border:0;border-radius:18px;box-shadow:0 22px 70px #10284c35;padding:28px;color:#142e50;width:min(680px,calc(100vw - 28px));max-height:88dvh;overflow:auto}.modal::backdrop,.operator-modal::backdrop{background:#071d38a8}.modal-head,.operator-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:22px}.modal h2,.operator-modal h2{font-size:27px;margin:5px 0 0}.icon-button{width:42px;height:42px;border:0;border-radius:50%;background:#eef3f9;color:#142e50;font-size:28px;line-height:1}.field{display:block;width:100%;min-height:52px;border:1px solid #c4d1e0;border-radius:9px;padding:11px 14px;background:white;color:#142e50;font-size:17px;outline-color:#4a79ac}.modal label,.operator-modal label{display:block;font-weight:700;margin:16px 0 8px}.catalog-list{margin-top:15px;max-height:50dvh;overflow:auto}.catalog-row{width:100%;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 4px;border:0;border-bottom:1px solid #e5ebf2;background:#fff;color:#142e50;text-align:left}.catalog-row:hover{background:#f5f8fc}.catalog-row strong{font-size:17px}.catalog-row small{display:block;margin-top:4px;color:#75839a}.catalog-row .catalog-price{white-space:nowrap;font-weight:700}.muted{color:#6e7e93;line-height:1.5}.primary-button{width:100%;min-height:55px;margin-top:20px;border:0;border-radius:10px;background:#a2f25c;color:#142e50;font-size:17px;font-weight:800}.primary-button:disabled{background:#e3e9f1;color:#8d9aae}.payment-total{padding:18px;border-radius:10px;background:#f2f6fb;display:flex;justify-content:space-between;align-items:center;font-size:18px}.payment-total strong{font-size:25px}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.payment-methods button{min-height:64px;border:1px solid #c6d4e4;border-radius:10px;background:white;color:#142e50;font-weight:700}.payment-methods button.selected{border-color:#4ba64d;background:#ecfaea;box-shadow:0 0 0 2px #4ba64d}.operator-modal{width:min(900px,calc(100vw - 28px))}.operator-tabs{display:flex;gap:6px;border-bottom:1px solid #d9e3ee;margin-bottom:20px}.operator-tabs button{padding:14px 18px;border:0;background:none;color:#62758d;font-weight:700;border-bottom:3px solid transparent}.operator-tabs button.active{color:#142e50;border-bottom-color:#79c94a}.operator-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 16px}.operator-toolbar h3{margin:0;font-size:20px}.small-button{min-height:43px;padding:9px 14px;border:0;border-radius:8px;background:#142e50;color:#fff;font-weight:700}.small-button.secondary{background:#eaf0f7;color:#142e50}.operator-table{width:100%;border-collapse:collapse}.operator-table th,.operator-table td{padding:13px 8px;text-align:left;border-bottom:1px solid #e4ebf3}.operator-table th{font-size:12px;letter-spacing:.08em;color:#7b8ba0;text-transform:uppercase}.operator-table td{font-size:15px}.operator-table td:last-child{text-align:right}.operator-table button{border:0;background:#edf3fa;color:#244b78;border-radius:7px;padding:8px 11px}.operator-form{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-bottom:22px;padding:18px;border:1px solid #dce5ef;border-radius:12px}.operator-form h3,.operator-form .form-actions{grid-column:1/-1}.operator-form h3{margin:0 0 8px}.operator-form .form-actions{display:flex;gap:9px;margin-top:18px}.operator-form .form-actions button{flex:1}.operator-form input,.operator-form select{width:100%}.device-row{display:grid;grid-template-columns:1fr 180px;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid #e5ebf2}.device-row strong,.device-row small{display:block}.device-row small{margin-top:5px;color:#78879a;overflow-wrap:anywhere}.device-row select{margin:0}.notice{padding:14px 16px;background:#fff8e9;color:#765724;border:1px solid #f0e1b7;border-radius:9px;font-size:14px;line-height:1.45}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);padding:13px 20px;border-radius:9px;background:#142e50;color:#fff;box-shadow:0 8px 35px #10284c44;opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translate(-50%,0)}:focus-visible{outline:3px solid #5fa7e9;outline-offset:2px}@media(max-width:700px){.brand-header{height:104px}.brand-header img{height:98px;width:min(450px,90vw);object-fit:cover}.status{margin:12px 12px 0;padding:12px 15px;min-height:55px;font-size:15px;gap:7px}.status-dot{width:11px;height:11px}.shop{padding:14px 12px}.scan-form{height:62px;min-height:62px;padding:0 13px;gap:9px}.scan-form>svg{width:26px;height:26px}.scan-form input{font-size:16px}.manual-button{height:54px;font-size:16px}.empty-state{min-height:190px;padding-bottom:0}.basket{width:90px;height:90px}.empty-state h1{font-size:25px}.empty-state p{font-size:16px}.summary{grid-template-columns:1fr 1fr;gap:12px;padding:14px 12px}.item-count strong{font-size:28px}.item-count span{font-size:15px}.total strong{font-size:23px}.summary button{grid-column:1/-1;height:54px;font-size:17px}.footer-line{padding:0 12px 13px;font-size:11px}.cart-row{grid-template-columns:1fr auto;gap:9px}.cart-price{grid-column:1}.qty-actions{grid-column:2;grid-row:1/3}.operator-form{grid-template-columns:1fr}.device-row{grid-template-columns:1fr}.operator-table th:nth-child(2),.operator-table td:nth-child(2){display:none}}@media(max-height:760px){.empty-state .basket{width:74px;height:74px}.empty-state h1{margin:9px 0 4px}.empty-state{min-height:130px}.brand-header{height:90px}.brand-header img{height:82px}}
