*{box-sizing:border-box}body{margin:0;background:#e8eef2;color:#163044;font:16px Arial,sans-serif}.app{max-width:430px;margin:auto;background:#f5f7f9;min-height:100dvh;box-shadow:0 10px 35px #153c6024}header{background:#fff;border-bottom:1px solid #dbe5eb}.brand{display:flex;align-items:center;gap:12px;background:#dc0000;padding:calc(16px + env(safe-area-inset-top,0px)) 20px 16px}.stationFlame{width:34px;height:42px;flex:0 0 34px}.brandText b{display:block;font-size:18px;color:#fff;line-height:1.25}.brandText span{display:block;color:#ffe4e9;font-size:11px;margin-top:4px}.heading{padding:17px 20px 16px}h1{font-size:24px;margin:0 0 4px}.sessionBar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;background:#f5f7f9;border-bottom:1px solid #d9e3e8}.sessionBar .small{font-size:12px;color:#637b89;min-width:0}.sessionBar .badge{flex:none}h2{font-size:17px;margin:0 0 10px}p{margin:10px 0}.small{font-size:13px;color:#677c89;line-height:1.4;overflow-wrap:anywhere}.badge{font-size:12px;color:#17746c;background:#e6f3ef;padding:5px 8px;border-radius:15px}.screen{padding:17px 16px 84px}.panel{padding:17px;background:#fff;border:1px solid #d9e3e8;border-radius:15px;margin:0 0 13px}.primary,.secondary,.methods button,.mainnav button,.product,.quantity button{font:inherit;min-height:46px;border-radius:10px;padding:11px 13px;cursor:pointer}.primary{background:#d73639;color:#fff;border:0;font-weight:700;padding:14px 17px}.secondary{background:#fff;color:#155476;border:1px solid #b8cad4;font-weight:700}.full{width:100%;margin-top:14px}.actions{display:flex;justify-content:center;align-items:center;gap:9px;margin-top:13px}.actions>*{flex:0 1 42%;max-width:190px;min-height:44px;padding:10px 12px;font-size:14px;text-align:center}.mainnav{display:flex;background:#fff;border-top:1px solid #d8e3e8;position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(430px,100%);padding:9px 9px calc(9px + env(safe-area-inset-bottom,0px));z-index:5}.mainnav button{flex:1;border:0;background:none;color:#637985;border-radius:0;padding:8px 4px;font-size:14px;font-weight:700;min-height:40px}.mainnav button.active{color:#153d60;border-bottom:3px solid #d73639}.searchrow{display:flex;gap:8px;align-items:center}.searchrow input,.searchrow select{flex:1;min-width:0}.searchrow button{flex:none}input,select,textarea{font:inherit;color:#163044;width:100%;min-width:0;background:#fff;border:1px solid #bbcad2;border-radius:9px;padding:11px;min-height:45px}label{display:block;font-weight:700;font-size:14px;margin:14px 0 7px}textarea{min-height:76px;resize:vertical}.check{display:flex;align-items:center;gap:10px;font-weight:400}.check input{width:20px;height:20px;min-height:0;flex:none;accent-color:#d73639}.productgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.product{position:relative;background:#fff;border:1px solid #d9e3e8;padding:10px;text-align:left;color:#163044;display:flex;flex-direction:column;gap:6px;min-width:0}.product img{width:100%;height:116px;object-fit:contain;background:#f7fafb;border-radius:8px;padding:6px}.product .noimage{height:116px;display:grid;place-items:center;color:#637985;background:#f7fafb;border-radius:8px}.product strong{font-size:14px;min-height:39px;overflow-wrap:anywhere}.product .small{font-size:12px}.product .qtybadge{position:absolute;right:8px;top:8px;min-width:26px;text-align:center;padding:3px;background:#d73639;color:#fff;border-radius:15px;font-weight:700}.product:disabled{opacity:.65}.cartbar{position:sticky;bottom:calc(58px + env(safe-area-inset-bottom,0px));background:#f5f7f9;padding:12px 0 max(12px,env(safe-area-inset-bottom));z-index:4}.cartbar button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:14px}.pagination button{font-size:14px;min-width:84px;padding:10px}.line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #e6edf0;font-size:14px}.line>*{overflow-wrap:anywhere}.line b{flex:none}.total{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:22px;font-weight:700;padding:20px 0}.methods{display:grid;grid-template-columns:1fr 1fr;gap:10px}.methods button{background:#fff;border:1px solid #b8cad4;color:#155476}.methods .selected{border:2px solid #d73639;background:#fff0ef;color:#a52023}.quantity{display:flex;align-items:center;gap:10px;margin:8px 0}.quantity button{min-width:44px;background:#fff;border:1px solid #b8cad4}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.titlebar{display:flex;align-items:center;justify-content:space-between;gap:10px}.titlebar h2{margin:0}.titlebar .primary{font-size:14px}.menulist{display:grid;gap:12px}.menulist button{text-align:left}.picturepreview{display:block;width:120px;height:120px;object-fit:contain;margin-top:12px}#message{position:sticky;top:0;z-index:10;background:#fff1db;color:#714a0f;padding:12px 16px;border-bottom:1px solid #eacb91;font-size:14px}footer{font-size:12px;color:#637985;text-align:center;padding:15px}#category{margin-top:10px}.receiptbrand{width:100%;margin-bottom:10px}.purchaseitem{padding:10px 0;border-bottom:1px solid #d9e3e8}.receiptentry{width:100%;text-align:left;margin:6px 0}.receiptentry b{display:block}button:disabled{opacity:.55;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #153d60;outline-offset:2px}[hidden]{display:none!important}@media print{body{background:#fff}.app{max-width:58mm}header,.mainnav,#message,footer,.actions,#refundButton,#printStatus{display:none!important}.screen{display:none!important}#receipt{display:block!important;padding:0}#receiptContent{border:0;padding:0}#workspace{display:block!important}.line{font-size:12px}.total{font-size:17px}}

.backbutton{margin-bottom:16px}

.returnmenu{background:#fff4df;color:#80520d;border-color:#dfb45e;margin-bottom:24px}

#saveReturnButton{display:flex;align-items:center;justify-content:center;gap:8px}.returnSavingSpinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:returnSavingSpin .8s linear infinite}@keyframes returnSavingSpin{to{transform:rotate(360deg)}}

/* Banking mobile layout shared by Shop POS. */
.product{border-radius:14px;gap:8px;padding:13px;box-shadow:0 5px 18px #153d6008}.productgrid{gap:12px}.product .noimage,.product img{border-radius:10px}.product strong{line-height:1.4}.menulist{gap:10px}.menulist button{border-radius:14px;padding:17px;min-height:60px}.total{border-radius:10px;background:#e9f1f4;padding:16px;margin:14px 0;font-size:22px}.line:last-child{border-bottom:0}.titlebar{margin-bottom:14px;flex-wrap:wrap}footer{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}#login{max-width:430px;margin:auto;padding:26px 22px}#login .panel{border-radius:18px;padding:26px 22px;box-shadow:0 12px 32px #153d6014}#login h2{text-align:center;font-size:23px;color:#153d60}#managementLogin{border:1px solid #d9e3e8;background:#fff;border-radius:18px;padding:16px;margin:13px 0}#managementLogin summary{font-size:14px;font-weight:700;color:#153d60;cursor:pointer}#managementLogin .panel{box-shadow:none;border:0;padding:14px 0 0;margin:0}#pinSetupHelp{line-height:1.5}.screen>h2{margin-bottom:16px}.backbutton{font-size:14px}.mainnav button:focus-visible{outline-offset:-2px}
@media(max-width:430px){.app{box-shadow:none}}
@media(max-width:350px){.brand{padding-left:16px;padding-right:16px;gap:9px}.brandText b{font-size:16px}.two{gap:8px}.pagination button{min-width:0;padding:10px 8px}.actions>*{flex:1;max-width:none}.cartbar button{font-size:14px}}
@media print{.sessionBar{display:none!important}.cartbar{display:none!important}footer{padding:0}.total{background:#fff}}
