/* Compact counter: visible order, comfortable touch targets. */
.pos-workspace{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}
.pos-menu{min-width:0}.pos-menu .shop-search{max-width:none;margin:0 0 10px}.pos-menu .shop-search input{min-height:44px;padding:11px 14px}
.pos-menu .category-tabs{gap:6px;margin:0 0 14px;flex-wrap:wrap}.pos-menu .category-tabs button{min-height:44px;padding:9px 14px;font-size:12px}
.pos-menu .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pos-menu .product-card{min-height:154px;padding:14px;gap:7px;display:flex;flex-direction:column;justify-content:flex-start;border-radius:14px;background:#fffdf7;border:1px solid #dbe2d7;box-shadow:0 2px 4px #12334505}
.pos-menu .product-card>small{font-size:10px;letter-spacing:.03em}.pos-menu .product-card>strong{font-size:16px;line-height:1.3;padding:0;margin:0}
.pos-menu .product-card>span{font-size:15px;margin-top:auto}.pos-menu .product-card>span small{font-size:10px;display:inline}
.pos-menu .product-card .pos-item-badge{position:static;align-self:flex-start;font-size:11px;font-weight:750;background:#eef2e9;border-radius:6px;padding:4px 7px;margin-top:4px;color:#345140}
.pos-menu .product-card.in-order{border-color:#237267;background:#f1f8ef;box-shadow:inset 0 0 0 1px #237267}
.pos-menu .product-card.in-order .pos-item-badge{background:#146257;color:white}.pos-menu .product-card:active{background:#dbeed5}.pos-menu-note{margin:12px 0}
.pos-order{position:sticky;top:16px;background:white;border:1px solid #d6e0d9;border-radius:18px;overflow:hidden;box-shadow:0 7px 24px #1233450a}
.pos-order-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#123345;color:white;padding:15px 16px}
.pos-order-heading h2{font-size:17px;margin:0}.pos-order-heading>span{font-size:12px;white-space:nowrap}
.pos-order-lines{padding:0 14px;max-height:48vh;min-height:110px;overflow:auto;overscroll-behavior:contain;position:relative}
.pos-running-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:12px 0;border-bottom:1px solid #e7ece6;align-items:center}
.pos-running-line>div:first-child{min-width:0}.pos-running-line strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere}.pos-running-line small{display:block;font-size:11px;color:#52706e;margin-top:4px}
.pos-running-line>.quantity{grid-row:1/3;grid-column:2;gap:5px}.pos-running-line>.quantity span{font-size:12px;min-width:16px;text-align:center}
.pos-running-line>.quantity button,.cart-dialog .quantity button{min-width:44px;min-height:44px}.pos-running-line>strong{font-size:12px;grid-row:2}.pos-running-line.just-added{background:#edf7e8}
.pos-order-footer{padding:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #d6e0d9;background:#fffdf7}
.pos-order-footer small{display:block;font-size:11px}.pos-order-footer strong{font-size:24px;display:block}.pos-order-footer .button{font-size:13px;min-height:44px;padding:13px 17px}
.pos-empty{font-size:14px;color:#52706e;padding:20px 0;margin:0}.pos-empty small{font-size:12px}
.pos-feedback{position:fixed;top:max(12px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);max-width:540px;width:calc(100% - 24px);box-sizing:border-box;z-index:90;display:flex;align-items:center;gap:8px;background:#143b35;color:#fff;padding:7px 8px 7px 16px;border-radius:12px;box-shadow:0 6px 28px #12334540}
.pos-feedback span{font-size:14px;line-height:1.5;flex:1;overflow-wrap:anywhere}.pos-feedback button{border:0;background:#ffffff18;color:#fff;border-radius:8px;min-width:44px;min-height:44px;font-size:24px;cursor:pointer}
.shop-switcher{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border:1px solid #d7e1d8;border-radius:12px;background:#fffdf7;margin:0 0 14px}
.shop-switcher form{display:flex;align-items:center;gap:8px;flex:1;min-width:0;margin:0}.shop-switcher label{font-size:12px;white-space:nowrap}.shop-switcher select{min-width:0;max-width:360px;min-height:44px;padding:8px;flex:1}.shop-switcher .quiet{min-height:44px;padding:8px 12px}
.shop-switcher a{font-size:12px;color:#146257;min-height:44px;display:inline-flex;align-items:center}
.template-preview-banner{border:1px solid #e3c98d;background:#fff4d9;border-radius:12px;padding:12px 16px;margin-bottom:12px;font-size:13px;line-height:1.5}.template-preview-banner strong{color:#704e14}.template-preview-banner a{color:#123345;font-weight:650}
.template-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.template-preview-grid .panel{padding:20px!important}.template-preview-grid h2{font-size:19px;margin:8px 0}.template-preview-grid p{font-size:13px;line-height:1.6}.template-preview-grid .button{min-height:44px;font-size:13px;padding:12px}
@media(max-width:1100px){.pos-workspace{grid-template-columns:minmax(0,1fr) 320px;gap:14px}.pos-menu .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .shop-main:has(.pos-workspace){padding-bottom:290px}.pos-workspace{display:block}.pos-menu .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pos-order{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:35;border-radius:16px 16px 0 0;border-bottom:0;box-shadow:0 -5px 25px #12334518}
 .pos-order-heading{padding:8px 16px}.pos-order-heading h2{font-size:14px}.pos-order-heading>span{font-size:11px}
 .pos-order-lines{max-height:20vh;min-height:55px;padding:0 16px}
 .pos-running-line{grid-template-columns:minmax(0,1fr) auto auto;padding:5px 0;gap:6px}.pos-running-line>.quantity{grid-row:1;grid-column:2;gap:3px}
 .pos-running-line>strong{grid-row:1;grid-column:3;min-width:55px;text-align:right;font-size:12px}.pos-running-line small{font-size:10px;margin-top:2px}
 .pos-running-line>.quantity button{min-width:44px;min-height:44px;width:44px;height:44px}
 .pos-order-footer{padding:9px 16px max(9px,env(safe-area-inset-bottom));gap:12px}.pos-order-footer strong{font-size:22px}.pos-order-footer .button{min-height:44px;padding:10px 15px}
 .pos-empty{padding:12px 0;font-size:12px}.pos-empty br{display:none}.pos-empty small{margin-left:5px}
 .pos-menu .product-card{min-height:134px;padding:12px;gap:5px}.pos-menu .product-card>strong{font-size:14px}.pos-menu .product-card>span{font-size:14px}
 .pos-menu .product-card .pos-item-badge{font-size:10px}.pos-menu .product-card>small{font-size:9px}
 .shop-main:has(.pos-workspace) .shop-title h1{font-size:25px}.shop-main:has(.pos-workspace) .shop-title>p:last-child{font-size:12px}
 .shop-switcher{padding:8px 10px;gap:4px 10px}.shop-switcher form{flex-basis:100%}.shop-switcher select{font-size:13px;max-width:none}
 .template-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:450px){.pos-menu .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pos-running-line>.quantity{gap:1px}.pos-running-line>.quantity span{min-width:12px}.template-preview-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.pos-workspace *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.pos-feedback,.shop-switcher,.pos-order{display:none!important}}
.qr-sharing{display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);gap:32px;align-items:center}.qr-poster{text-align:center;border:1px solid #dbe2d7;background:white;border-radius:14px;padding:22px}.qr-poster h2{font-size:25px;overflow-wrap:anywhere}.qr-poster svg{display:block;width:100%;height:auto;max-width:290px;margin:auto}.qr-poster p{font-size:14px;line-height:1.6}.qr-poster small{font-size:11px}.qr-instructions{min-width:0}.qr-instructions p{font-size:14px;line-height:1.7}.qr-instructions input{width:100%;min-width:0}
.shop-order-alert{position:fixed;right:16px;top:16px;z-index:95;max-width:400px;width:calc(100% - 32px);box-sizing:border-box;background:#fff8dc;border:2px solid #b38128;border-radius:14px;padding:14px 16px;box-shadow:0 6px 25px #12334530;color:#123345}
.shop-order-alert[hidden]{display:none}.shop-order-alert p{font:600 14px/1.5 Arial,sans-serif;margin:0 0 8px}.shop-order-alert a,.shop-order-alert button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;box-sizing:border-box;border-radius:8px;font:600 13px Arial,sans-serif}.shop-order-alert a{background:#123345;color:white;text-decoration:none;margin-right:8px}.shop-order-alert button{border:1px solid #c7b586;background:transparent;color:#123345;cursor:pointer}.shop-order-alert :focus-visible{outline:3px solid #d35611;outline-offset:3px}
.order-ticket{display:flex;align-items:center;gap:18px;padding:18px 22px;background:#123345;color:white;border-radius:16px;margin:16px 0}.order-ticket strong{font-size:48px;line-height:1;font-variant-numeric:tabular-nums}.order-ticket small{display:block;font-size:12px}.order-ticket span{font-size:14px;line-height:1.5}.counter-payment{padding:14px 16px;border-radius:12px;background:#edf5e9;margin-top:18px}.counter-payment strong{display:block}.counter-payment p{font-size:13px;line-height:1.5;margin:6px 0 0}
.order-record .order-ticket small{color:#d8e9e5}.order-record .order-ticket span{color:white}
@media(max-width:700px){.qr-sharing{grid-template-columns:1fr;gap:20px}.qr-poster{max-width:330px;margin:auto}.order-ticket{padding:15px}.order-ticket strong{font-size:42px}}
@media print{.shop-order-alert{display:none!important}}
