/* 0.6: the shop is the screen. Floating tools leave the floor in view. */
html,body.play-mode{width:100%;height:100%;overflow:hidden;margin:0}body.play-mode{background:#dce2d5}.play-mode main{padding:0;margin:0;max-width:none}.play-mode .workspace{display:block;margin:0}.play-mode .store-panel{border:0;border-radius:0;overflow:visible;background:none}.play-mode #scene{position:fixed;inset:0;width:100vw;height:100dvh!important;min-height:0;max-height:none;border-radius:0}.play-mode #world{width:100%;height:100%;display:block;touch-action:none}.play-mode .topbar{position:fixed;inset:0 0 auto;height:60px;z-index:20;padding:8px 22px;background:#233f35ed;backdrop-filter:blur(18px);box-sizing:border-box}.play-mode .topbar .brandmark{height:34px;width:34px}.play-mode .brand small{display:none}.play-mode .version{font-size:9px}.play-mode .heading{position:fixed;z-index:5;left:24px;top:79px;margin:0;display:flex;gap:25px;align-items:center}.play-mode .heading .eyebrow{display:none}.play-mode .heading h1{font-size:22px;margin:0}.play-mode .day-controls>div{padding:7px 11px;background:#fffdf0dc;gap:10px}.play-mode .stats{position:fixed;z-index:5;right:24px;top:76px;width:auto;display:flex;margin:0;padding:9px 4px;background:#fffdf0eb;box-shadow:0 6px 25px #223c3510;border-radius:12px}.play-mode .stats>div{padding:0 17px;min-width:90px}.play-mode .stats .stat-icon,.play-mode .stats em{display:none}.play-mode .stats p{font-size:9px;margin:0}.play-mode .stats strong{font-size:18px;margin-top:2px}.play-mode .panel-top{position:fixed;z-index:6;left:24px;top:130px;display:flex;padding:0;background:none;border:0;gap:12px}.play-mode .panel-title{background:#fffdf0e8;padding:9px 12px;border-radius:9px;font-size:11px}.play-mode #store-sub{display:none}.play-mode .view-controls{gap:4px;padding:5px;background:#fffdf0e8;border-radius:9px}.play-mode .view-controls button{padding:5px 8px;min-width:30px;height:29px}.play-mode .view-controls #follow-camera[aria-pressed=true]{background:#315f4d;color:#fff7de}.play-mode .camera-toolbar{position:fixed;top:179px;left:24px;z-index:6;padding:5px;background:#fffdf0e0;border:0;border-radius:9px;box-shadow:none;gap:4px}.play-mode .camera-toolbar>span{display:none}.play-mode .trading-bar{position:fixed;bottom:101px;left:24px;z-index:6;background:#fffdf0ed;border:1px solid #b9c5aa;border-radius:12px;padding:10px;box-shadow:0 6px 28px #213d3520;gap:12px}.play-mode .trading-bar>div{max-width:220px}.play-mode .trading-bar b{font-size:12px}.play-mode .trading-bar span{font-size:10px}.play-mode .trading-bar button{padding:10px 15px}.play-mode .floor-actions{position:fixed;z-index:15;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:6px;padding:9px;background:#233f35ef;backdrop-filter:blur(15px);border-radius:17px;box-shadow:0 8px 35px #132d3533;border:1px solid #8b9d7944;white-space:nowrap}.play-mode .floor-actions>button{background:#f7f4e5;color:#244639;border:0;border-radius:9px;min-width:93px;padding:13px 12px;font-size:11px;font-weight:650}.play-mode .floor-actions #phone{background:#d7b579;color:#263f32;min-width:100px}.phone-icon{font-size:22px;vertical-align:middle;margin-right:5px}.play-mode .floor-actions #checkout{background:#588568;color:#fff7e6}.play-mode .floor-actions b{background:#e4c991;color:#2e4837}.play-mode .floor-actions .reset-dock{background:transparent;color:#ddd9c8;min-width:75px}.play-mode footer{position:fixed;z-index:6;right:20px;bottom:102px;padding:0;margin:0;border:0;display:flex;gap:8px;font-size:9px}.play-mode footer>span:first-child{display:none}.play-mode #save-status{max-width:170px;font-size:9px;color:#547060}.play-mode footer button{background:#fffdf0e8;padding:8px;border-radius:7px}.play-mode .scene-hint{bottom:10px;left:22px;transform:none;background:transparent;font-size:9px;pointer-events:none;max-width:none}.play-mode .scene-tag{display:none}.play-mode #pause-overlay{z-index:12;backdrop-filter:blur(3px)}.play-mode #toast{bottom:100px;z-index:100;font-size:12px;max-width:min(450px,90vw)}.play-mode .world-tooltip{bottom:167px}.play-mode .touch-move{bottom:180px;left:20px;z-index:7}
.play-mode #layout-tools{position:fixed;z-index:9;left:24px;top:227px;width:290px;box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;background:#fffdf0f5;border-radius:14px;padding:15px;box-shadow:0 9px 30px #243f3520;border:1px solid #bec8b1;gap:10px}.play-mode #layout-tools[hidden]{display:none}.play-mode #layout-tools label:first-child,.play-mode #layout-tools small,.play-mode #layout-tools #finish-layout{grid-column:1/-1}.play-mode #layout-tools label{display:flex;flex-direction:column;gap:5px;font-size:10px}.play-mode #layout-tools select,.play-mode #layout-tools input{width:100%;box-sizing:border-box}.play-mode #layout-tools small{line-height:1.6;font-size:10px}.play-mode #finish-layout{background:#315f4d;color:#fff5df}.play-mode #layout-tools button{font-size:10px;padding:10px}
.play-mode .sidebar{position:fixed;z-index:30;right:22px;top:132px;bottom:99px;width:374px;box-sizing:border-box;display:flex;flex-direction:column;border:7px solid #29483c;background:#faf8eb;border-radius:32px;box-shadow:0 18px 65px #173a3545;overflow:hidden}.play-mode .sidebar[hidden]{display:none}.phone-speaker{width:65px;height:5px;border-radius:5px;background:#2b483b;margin:8px auto 0;flex-shrink:0}.play-mode .side-heading{display:flex;justify-content:space-between;align-items:center;padding:14px 17px 12px}.play-mode .side-heading .eyebrow{margin:0 0 5px;font-size:9px}.play-mode .side-heading h2{font-size:21px;margin:0}.play-mode #close-phone{font-size:20px;width:32px;height:32px;padding:0;border-radius:50%}.play-mode .tabs{padding:0 15px;flex-shrink:0}.play-mode .tabs button{flex:1;padding:12px}.play-mode #desk{padding:16px;overflow:auto;flex:1;max-height:none;min-height:0;overscroll-behavior:contain}.phone-delivery-status{border:0;border-radius:0;background:#e6ecd8;padding:10px 16px;text-align:left;font-size:11px;display:flex;justify-content:space-between;gap:10px;flex-shrink:0}.phone-delivery-status span{font-size:10px;color:#6b805f}.play-mode .product-row{gap:9px;grid-template-columns:52px 1fr auto;padding:12px 0}.play-mode .product-row .product-art{width:50px;height:64px}.play-mode .product-row h3{font-size:12px}.play-mode .product-row small{font-size:10px;line-height:1.6}.play-mode .product-row button{font-size:10px;padding:9px}.play-mode .welcome-card{padding:16px}.play-mode .welcome-card h3{font-size:23px}.play-mode .upgrade{background:#fffdf4;border:1px solid #d8dfc9;border-radius:12px;padding:14px;margin-bottom:12px}.play-mode .upgrade h3{font-size:15px}.play-mode .upgrade p{font-size:12px}.play-mode .filter-row{gap:4px}.play-mode .filter-row button{padding:6px 8px;font-size:10px}
/* Checkout is a playable counter, with a conveyor, scanner and physical till. */
#modal[data-type=checkout]{width:min(1120px,95vw);max-width:1120px;border-radius:23px;background:#f9f6e8}#modal[data-type=checkout] .modal-header{padding:19px 24px;background:#244637;color:#fff4d9}#modal[data-type=checkout] .modal-header h2{color:#fff4d9;font-size:23px}#modal[data-type=checkout] .modal-header .eyebrow{color:#c5cfb0}#modal[data-type=checkout] #modal-content{padding:20px}#modal[data-type=checkout] .modal-header button{background:#f8f4e8;color:#345447}.checkout-customer{display:flex;align-items:center;gap:12px;margin-bottom:18px}.checkout-customer strong{display:block;font-size:18px}.checkout-customer small{display:block;font-size:11px;color:#6b7a62;margin-top:5px}.checkout-step{margin-left:auto;font-size:10px;letter-spacing:2px;color:#5d725c}.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22px}.checkout-station{min-width:0}.scan-instructions{padding:16px 0 25px;display:flex;flex-direction:column;gap:8px}.scan-instructions b{font-size:24px}.scan-instructions span{font-size:12px;color:#748068}.scan-worktop{display:grid;grid-template-columns:minmax(170px,1.4fr) 135px 110px;align-items:center;gap:17px;background:#dbc295;border:8px solid #c1a16c;border-radius:16px;min-height:320px;padding:22px 13px;box-shadow:0 6px 0 #a48657}.conveyor{min-height:262px;align-self:stretch;border:7px solid #52645b;border-radius:9px;background:repeating-linear-gradient(0deg,#263c34 0 17px,#31483e 18px 20px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;position:relative;overflow:visible}.scan-product{position:relative;z-index:3;border:0;background:#f6edda;border-radius:11px;box-shadow:0 6px 16px #122c3555;display:flex;flex-direction:column;align-items:center;width:140px;padding:10px;cursor:grab;touch-action:none;user-select:none;transition:box-shadow .15s}.scan-product .product-art{width:90px;height:119px;pointer-events:none}.scan-product b{font-size:11px;text-align:center}.scan-product small{font-size:8px;letter-spacing:1px;color:#7d896c;margin-top:5px}.in-hand{z-index:50!important;cursor:grabbing;box-shadow:0 18px 30px #17372b66}.belt-next{display:flex;gap:1px;justify-content:center;opacity:.72;margin-top:15px}.belt-next .product-art{width:32px;height:44px;pointer-events:none}.scanner-pad{text-align:center;align-self:center}.scanner-pad b,.scanner-pad small{display:block;font-size:10px;letter-spacing:1px;margin-top:11px}.scanner-glass{height:136px;border:10px solid #68786d;background:linear-gradient(145deg,#19392f,#355848);border-radius:12px;display:flex;justify-content:center;align-items:center;position:relative;box-shadow:0 5px 0 #3b5043}.scanner-glass span{font-size:52px;color:#9cb19b}.scanner-glass i{position:absolute;left:6px;right:6px;top:50%;height:3px;background:#f36957;box-shadow:0 0 14px #ff534a}.scan-flash .scanner-glass i{background:#99f18b;box-shadow:0 0 25px #aaff8b}.scanning{animation:scan-away .18s forwards}.shopping-bag{border:2px solid #b08a51;border-radius:0 0 12px 12px;background:linear-gradient(95deg,#c99f66,#e6c78d 15% 85%,#c99f66);height:165px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#537050;box-shadow:0 5px 0 #b18b55;position:relative}.shopping-bag:before{content:'';position:absolute;top:-31px;height:39px;width:47px;border:5px solid #b59768;border-bottom:0;border-radius:30px 30px 0 0}.shopping-bag>span{font-size:39px}.shopping-bag b{font-size:9px;margin:12px 0}.shopping-bag small{font-size:9px}.till-receipt{border:1px solid #d5d9c5;background:#fffef5;border-radius:4px;padding:17px;align-self:start;box-shadow:0 5px 16px #31493609}.till-receipt h3{font-size:18px;margin:8px 0 17px}.till-receipt>.eyebrow{font-size:8px}.receipt-items>div{display:grid;grid-template-columns:27px 1fr auto;gap:7px;align-items:center;border-bottom:1px dashed #d9dec9;padding:9px 0;font-size:10px}.receipt-items .product-art{width:25px;height:36px}.receipt-items p,.till-receipt>small{font-size:10px;color:#89917b;line-height:1.6}.till-total{display:flex;justify-content:space-between;align-items:center;border-top:2px solid #355643;margin:18px 0 12px;padding-top:14px;font-size:11px}.till-total strong{font-size:24px}.cash-received{padding:15px;background:#e7ebd8;border-radius:12px;display:flex;gap:15px;align-items:center}.cash-received strong{display:block;font-size:25px}.cash-received .eyebrow{font-size:9px}.received-pieces{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.money-piece{position:relative;min-width:0;padding:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#365944;box-shadow:0 3px 0 #8b9470;border:2px solid #76926b}.money-piece.note{width:116px;height:54px;background:repeating-linear-gradient(25deg,#d1dfb6 0 3px,#c9d8ac 3px 4px);border-radius:4px}.money-piece.note:before{content:'';position:absolute;inset:4px;border:1px solid #648761}.money-piece.note .denomination{font-size:21px;font-family:Georgia,serif;margin-right:30px;font-weight:bold}.money-piece.note i{position:absolute;bottom:6px;left:9px;font-size:5px;font-style:normal;letter-spacing:1px}.note-seal{position:absolute;right:13px;top:10px;border:1px solid #739167;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-size:17px}.money-piece.coin{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,#e4e3d1 55%,#b6b9a3 56% 61%,#e8e7d6 63%);border:2px solid #a9ad97;color:#6e755e}.money-piece.coin[data-denomination="1"]{background:#d3a97d;border-color:#a98566}.money-piece.coin .denomination{font-family:Georgia,serif;font-size:15px;font-weight:bold}.money-piece:disabled{opacity:1;cursor:default}.piece-count{position:absolute;right:-5px;top:-7px;background:#2e523d;color:#f8f0d4;border-radius:12px;font-size:9px;padding:3px 5px}.change-summary{display:flex;justify-content:space-between;gap:10px;padding:18px 0;font-size:11px}.change-summary strong{display:block;font-size:23px;margin-top:6px}.change-tray{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:77px;border:2px dashed #bfc8ac;border-radius:11px;background:#edeedc;padding:15px;margin-bottom:17px}.change-tray>span{font-size:12px;color:#7b896b;margin:auto}.physical-drawer{display:grid;grid-template-columns:repeat(4,1fr);justify-items:center;align-items:center;gap:15px;background:#3c5043;border:7px solid #586b57;border-radius:12px;padding:17px 8px;margin-bottom:17px}.physical-drawer .note{width:100%}.physical-drawer .coin{justify-self:center}.cash-stage .notice{font-size:10px}.card-stage{display:flex;align-items:center;justify-content:center;gap:35px;flex-wrap:wrap;padding:20px 5px}.payment-terminal{width:225px;min-height:305px;background:linear-gradient(135deg,#50675d,#263e33);padding:21px;border:5px solid #688070;border-radius:24px;box-shadow:0 9px 0 #263b30;position:relative;box-sizing:border-box}.terminal-display{background:#d0ddbc;border:5px solid #253e30;padding:16px 8px;text-align:center;display:flex;flex-direction:column;gap:12px;border-radius:7px}.terminal-display>span{font-size:9px;letter-spacing:1px}.terminal-display strong{font-size:27px}.terminal-display small{font-size:9px;line-height:1.6}.contactless{display:block;font-size:36px;text-align:center;color:#dbe2c7;margin:10px 0}.terminal-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.terminal-keys i{height:13px;border-radius:3px;background:#8b9b87}.terminal-keys i:last-child{background:#99b382}.bank-card{display:flex;flex-direction:column;align-items:flex-start;width:215px;height:131px;box-sizing:border-box;flex-shrink:0;border-radius:12px;border:1px solid #daa872;padding:17px;background:linear-gradient(115deg,#d8bd86,#eddca5 48%,#c4a269);box-shadow:0 7px 18px #35533a33;transform:rotate(-6deg);touch-action:none;user-select:none;color:#334f3c}.bank-card>span{font-size:10px;letter-spacing:2px}.card-chip{background:linear-gradient(30deg,#ac934b,#e5d789);border:1px solid #958a4e;width:30px;height:21px;border-radius:4px;margin:12px 0 5px}.bank-card b{font-size:10px;letter-spacing:2px}.bank-card small{font-size:8px;margin-top:8px}.card-stage>p{width:100%;text-align:center;font-size:12px;color:#7c896d}.card-approved-pending{font-size:19px;color:#50734d;width:200px;text-align:center}.card-approved-pending small{display:block;font-size:11px;line-height:1.6;margin-top:15px}.payment-progress{height:5px;background:#20382e;margin-top:13px;border-radius:3px;overflow:hidden}.payment-progress i{display:block;width:45%;height:100%;background:#d9df9a;animation:terminal-wait 1s infinite alternate}.sale-complete{text-align:center;padding:32px 20px;display:flex;align-items:center;flex-direction:column;gap:15px}.paid-seal{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#e4ebcf;color:#53744c;font-size:40px}.sale-complete h3{font-size:53px;margin:0}.sale-complete p{margin:0}.sale-complete button{margin:15px 0 0;min-width:220px;padding:15px}.sale-complete small,.sale-complete>span{font-size:12px;color:#849070}.counter-empty{text-align:center;padding:60px 15px}.empty-scanner{display:block;font-size:65px;color:#758b65}.counter-empty h3{font-size:26px}.counter-empty p{font-size:13px;color:#7b886c}.counter-empty button{margin-top:20px}.phone-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.phone-summary button{padding:14px 8px;background:#e5ecd6;border-radius:11px;font-size:12px}.expansion-note{padding:15px;background:#e7ebd6;border-radius:11px;font-size:12px;line-height:1.7;margin-bottom:15px}
@keyframes scan-away{to{opacity:.1;transform:translateX(50px) scale(.6)}}@keyframes terminal-wait{to{transform:translateX(135%)}}@media(prefers-reduced-motion:reduce){.scanning,.payment-progress i{animation:none}}
@media(max-width:1100px){.play-mode .heading{top:77px;gap:12px}.play-mode .heading h1{font-size:17px}.play-mode .stats>div{padding:0 10px;min-width:65px}.play-mode .floor-actions>button{min-width:75px;padding:12px 9px;font-size:10px}.play-mode .floor-actions #phone{min-width:85px}.play-mode .topbar .version{display:none}.checkout-layout{grid-template-columns:minmax(0,1fr) 200px}.scan-worktop{grid-template-columns:minmax(135px,1fr) 110px 80px;gap:10px;padding:16px 8px}.scan-product{width:122px}.shopping-bag b{font-size:7px}}
@media(max-width:760px){.play-mode .topbar{height:50px;padding:6px 10px}.play-mode .brand{font-size:11px;gap:7px}.play-mode .brandmark{width:27px!important;height:27px!important}.play-mode .top-actions{gap:4px}.play-mode .top-actions button{width:30px;height:30px;font-size:11px;padding:0}.play-mode .heading{top:64px;left:12px;gap:13px}.play-mode .heading h1{font-size:17px}.play-mode .day-controls>div{padding:5px 7px;font-size:9px}.play-mode .stats{left:12px;right:12px;top:100px;padding:8px 0;justify-content:space-between}.play-mode .stats>div{min-width:0;padding:0 9px}.play-mode .stats p{font-size:8px}.play-mode .stats strong{font-size:14px}.play-mode .panel-top{left:12px;top:155px;gap:5px;right:12px;justify-content:space-between}.play-mode .panel-title{font-size:9px;padding:8px}.play-mode .panel-title .dot{display:none}.play-mode .view-controls{gap:2px;padding:3px}.play-mode .view-controls button{padding:4px 6px;height:26px;min-width:24px;font-size:9px}.play-mode #focus-player{display:none}.play-mode #zoom-label{font-size:9px}.play-mode .camera-toolbar{left:12px;top:194px;padding:3px;gap:3px}.play-mode .camera-toolbar button{padding:6px 8px;font-size:9px;min-height:27px}.play-mode .floor-actions{left:8px;right:8px;bottom:9px;transform:none;flex-wrap:wrap;gap:5px;padding:7px;justify-content:center;border-radius:13px}.play-mode .floor-actions>button,.play-mode .floor-actions #phone,.play-mode .floor-actions .reset-dock{font-size:9px;padding:10px 5px;min-width:0;flex:1 1 21%;height:37px}.play-mode .phone-icon{font-size:15px;margin:0 2px}.play-mode .floor-actions #phone{order:-2}.play-mode .floor-actions #checkout{order:-1}.play-mode .trading-bar{left:12px;right:auto;bottom:112px;padding:7px;gap:6px;max-width:calc(100vw - 24px)}.play-mode .trading-bar>div{display:none}.play-mode .trading-bar button{padding:9px 11px;font-size:10px;margin:0}.play-mode .scene-hint{display:none}.play-mode footer{bottom:113px;right:12px}.play-mode #save-status{display:none}.play-mode footer button{font-size:9px;padding:9px}.play-mode .touch-move{bottom:172px;left:12px}.play-mode .touch-move button{width:30px;height:30px;font-size:13px}.play-mode .sidebar{left:10px;right:10px;top:65px;bottom:109px;width:auto;max-width:410px;margin-left:auto;border-width:5px;border-radius:25px}.play-mode .side-heading{padding:10px 14px}.play-mode .side-heading h2{font-size:20px}.play-mode #desk{padding:12px}.play-mode #layout-tools{left:12px;top:235px;width:245px;max-height:calc(100dvh - 400px);overflow:auto;gap:7px;padding:11px}.play-mode #layout-tools small{font-size:9px}.play-mode #layout-tools button{padding:7px}.play-mode #layout-tools label{font-size:9px}.play-mode #layout-tools input,.play-mode #layout-tools select{padding:6px;font-size:11px}.play-mode #toast{bottom:115px;font-size:11px}.play-mode .world-tooltip{bottom:163px}#modal[data-type=checkout]{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:16px}#modal[data-type=checkout] .modal-header{padding:14px}#modal[data-type=checkout] .modal-header h2{font-size:20px}#modal[data-type=checkout] #modal-content{padding:13px}.checkout-layout{display:flex;flex-direction:column;gap:15px}.checkout-customer{margin-bottom:9px}.checkout-customer strong{font-size:15px}.checkout-step{font-size:8px;letter-spacing:1px}.scan-instructions{padding:8px 0 15px;gap:5px}.scan-instructions b{font-size:21px}.scan-instructions span{font-size:10px}.scan-worktop{min-height:245px;grid-template-columns:minmax(100px,1fr) 87px 57px;gap:8px;padding:13px 7px;border-width:5px}.conveyor{min-height:210px;border-width:4px;padding:5px}.scan-product{width:105px;padding:7px}.scan-product .product-art{width:64px;height:89px}.scan-product b{font-size:9px}.scan-product small{font-size:7px}.belt-next .product-art{width:22px;height:32px}.scanner-glass{height:115px;border-width:7px}.scanner-pad b,.scanner-pad small{font-size:8px;letter-spacing:0}.shopping-bag{height:130px}.shopping-bag:before{width:30px;height:26px;top:-24px}.shopping-bag>span{font-size:29px}.shopping-bag b{font-size:5px}.shopping-bag small{font-size:7px}.till-receipt{padding:13px;align-self:stretch}.till-receipt h3,.till-receipt>.eyebrow,.till-receipt>small{display:none}.receipt-items{max-height:125px;overflow:auto}.till-total{margin:9px 0 0;padding-top:9px}.cash-received{padding:10px;gap:8px}.cash-received strong{font-size:22px}.received-pieces{gap:5px}.received-pieces .note{width:84px;height:44px}.money-piece.note .denomination{font-size:17px;margin-right:22px}.note-seal{width:20px;height:20px;right:9px}.money-piece.note i{font-size:4px}.change-summary{font-size:10px;padding:14px 0}.change-summary strong{font-size:21px}.physical-drawer{gap:13px 6px;padding:13px 6px;border-width:5px}.physical-drawer .note{height:46px}.physical-drawer .note .denomination{font-size:16px;margin:0}.physical-drawer .note-seal,.physical-drawer .note i{display:none}.change-tray{gap:8px;padding:10px;min-height:65px}.change-tray .note{width:80px;height:43px}.money-piece.coin{width:38px;height:38px}.money-piece.coin .denomination{font-size:12px}.card-stage{gap:22px 15px;padding:10px 0}.payment-terminal{width:172px;min-height:258px;padding:12px;border-width:4px}.terminal-display{padding:12px 6px;gap:8px}.terminal-display strong{font-size:23px}.bank-card{width:141px;height:101px;padding:10px}.bank-card>span{font-size:8px}.bank-card b{font-size:6px;letter-spacing:1px}.card-chip{margin:7px 0;width:22px;height:17px}.bank-card small{font-size:7px;margin-top:5px}.card-approved-pending{width:110px;font-size:16px}.card-stage>p{font-size:10px}.sale-complete{padding:20px 10px}.sale-complete h3{font-size:45px}}
@media(max-height:650px) and (min-width:761px){.play-mode #layout-tools{top:178px;left:24px;max-height:calc(100dvh - 310px);overflow:auto}.play-mode .camera-toolbar{left:auto;right:24px;top:134px}.play-mode .sidebar{top:69px;bottom:91px}.play-mode .heading{top:73px}.play-mode .stats{top:71px}.play-mode .panel-top{top:119px}.play-mode .trading-bar{bottom:88px}.play-mode footer{bottom:88px}.play-mode .floor-actions{bottom:10px}#modal[data-type=checkout]{max-height:96dvh}}
@media(min-width:761px){.play-mode .floor-actions{width:max-content;max-width:calc(100vw - 32px)}.play-mode .floor-actions>button{width:auto;flex:none;min-width:90px}.play-mode .floor-actions #stockroom{min-width:155px}.play-mode .floor-actions #layout{min-width:125px}}.play-mode .world-tooltip{top:auto;height:auto}.play-mode .floor-actions b:empty{display:none}
.play-mode .day-controls>div{flex-direction:row;align-items:center}.play-mode .floor-actions>button{white-space:normal;line-height:1.2}.play-mode .floor-actions>button>span{margin:0 3px 0 0;font-size:inherit}.play-mode .floor-actions #stockroom{min-width:90px}@media(max-width:760px){.play-mode .floor-actions #stockroom{min-width:0}.play-mode .floor-actions>button>span{display:none}.play-mode .floor-actions>button{font-size:9px}.play-mode #layout-tools{top:auto;bottom:167px;left:12px;right:12px;width:auto;max-height:190px;grid-template-columns:repeat(4,1fr)}.play-mode #layout-tools label:first-child{grid-column:1/4}.play-mode #layout-tools #rotate-shelf{grid-column:4;grid-row:1;font-size:8px}.play-mode #layout-tools small{display:none}.play-mode #layout-tools #finish-layout{grid-column:4;grid-row:2;font-size:9px}.play-mode #layout-tools #pack-layout{grid-column:3;grid-row:3}.play-mode #layout-tools #place-shelf{grid-column:3;grid-row:2}.play-mode #layout-tools label{grid-row:2}.play-mode .heading .day-controls{margin-left:3px}.play-mode .day-controls>div>span,.play-mode .day-controls b{font-size:9px}}
@media(max-width:760px){.play-mode #layout-tools label:first-child{grid-row:1;grid-column:1/4}.play-mode #layout-tools label:nth-of-type(2){grid-row:2;grid-column:1}.play-mode #layout-tools label:nth-of-type(3){grid-row:2;grid-column:2}.play-mode #layout-tools #pack-layout{grid-column:1/3}.play-mode #layout-tools select{width:100%;min-width:0}}

.cart-summary{position:sticky;top:-24px;z-index:2;background:#f6f2e3;border:1px solid #d7ddca;border-radius:14px;padding:14px;display:grid;gap:12px;margin-bottom:18px;box-shadow:0 5px 16px #233f3510}.cart-summary small{display:block;margin-top:4px;color:#758371}.cart-quantity{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.cart-quantity button{min-width:32px;padding:6px 9px}.batch-total{display:grid;gap:10px;padding:18px;background:#eef0e3;border-radius:14px;margin:18px 0}.batch-total>span,.batch-total>strong{display:flex;justify-content:space-between}.batch-total>strong{padding-top:10px;border-top:1px solid #cbd2bd;font-size:20px}@media(max-width:540px){.cart-summary{top:-16px;padding:11px}.cart-quantity{gap:5px}.cart-quantity button{font-size:11px}.product-row>div{min-width:0}}

/* Camera buttons size to their labels, instead of inherited icon widths. */
.play-mode .view-controls{display:flex;align-items:center;flex-wrap:nowrap;gap:6px}
.play-mode .view-controls button{width:auto;flex:0 0 auto;white-space:nowrap;min-width:34px;padding:6px 10px}
.play-mode .view-controls #follow-camera{min-width:62px}
.play-mode #zoom-label{display:block;min-width:42px;text-align:center;flex:0 0 auto}
.play-mode #pause{width:auto;min-width:86px;padding:6px 10px;font-size:12px;white-space:nowrap}
.phone-summary{display:flex;flex-wrap:wrap;gap:8px}.play-mode .heading{gap:16px}.play-mode .day-controls>div{white-space:nowrap}
@media(max-width:760px){.play-mode .panel-top{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.play-mode .view-controls{gap:5px}.play-mode .view-controls button{padding:5px 9px;min-width:30px;width:auto}.play-mode .view-controls #follow-camera{min-width:57px}.play-mode .camera-toolbar{top:231px}.play-mode #layout-tools{top:272px;max-height:calc(100dvh - 430px)}.play-mode #pause{min-width:66px;font-size:10px;padding:4px 7px}.play-mode .topbar .brand{font-size:10px}.play-mode .topbar .brandmark{display:none}.play-mode .day-controls>div{font-size:8px}.play-mode .heading{gap:8px}}

#pause-modal{margin-left:auto;white-space:nowrap;font-size:11px;padding:8px 10px}.modal-header{gap:10px}

/* Compact renovation controls on narrow screens. */
@media(max-width:760px){
.play-mode #layout-tools{bottom:auto;height:auto;align-content:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"fixture fixture" "kind kind" "refit buy" "x y" "rotate place" "pack finish";gap:8px;max-height:calc(100dvh - 430px)}
.play-mode #layout-tools label:first-child{grid-area:fixture}
.play-mode #layout-tools label:nth-of-type(2){grid-area:kind}
.play-mode #layout-tools label:nth-of-type(3){grid-area:x}
.play-mode #layout-tools label:nth-of-type(4){grid-area:y}
.play-mode #layout-tools #refit-display{grid-area:refit}
.play-mode #layout-tools #buy-display{grid-area:buy}
.play-mode #layout-tools #rotate-shelf{grid-area:rotate}
.play-mode #layout-tools #place-shelf{grid-area:place}
.play-mode #layout-tools #pack-layout{grid-area:pack}
.play-mode #layout-tools #finish-layout{grid-area:finish}
.play-mode #layout-tools button{font-size:10px;min-height:32px}
}

/* Direct choose-and-place builder. */
.play-mode #layout-tools{display:block;width:330px;max-height:calc(100dvh - 365px);overflow:auto;top:227px;bottom:auto;padding:16px}
.play-mode #layout-tools[hidden],.play-mode #layout-tools [hidden]{display:none!important}
.build-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:17px}.play-mode #layout-tools .build-heading button{width:auto;min-width:65px;font-size:12px}
.build-intro,#build-hint{font-size:11px;line-height:1.55;margin:12px 0;color:#697969}
.build-catalog{display:grid;grid-template-columns:1fr 1fr;gap:8px}.play-mode #layout-tools .fixture-choice{padding:12px 9px;text-align:left;min-height:65px;white-space:normal}.fixture-choice b,.fixture-choice span{display:block}.fixture-choice b{font-size:12px;margin-bottom:6px}.fixture-choice span{font-size:10px;color:#71826f}.fixture-choice:disabled{opacity:.5}.fixture-choice.selected{border-color:#315f4d;background:#e5eddd}
#layout-tools details{border-top:1px solid #dce2d3;margin-top:12px;padding-top:10px}#layout-tools summary{cursor:pointer;font-size:11px;font-weight:600}#build-owned{display:grid;gap:6px;padding-top:10px}#build-owned button{text-align:left}#build-owned small{display:block!important}
#placement-summary{background:#e5eddd;border-radius:8px;padding:12px;font-weight:700;font-size:13px;margin:14px 0}.placement-buttons{display:flex;gap:6px;flex-wrap:wrap}.placement-buttons button{flex:1}.coordinate-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}#place-shelf{width:100%}.play-mode #layout-tools label{margin-top:10px}.play-mode #layout-tools #refit-display{margin-top:8px;width:100%}.play-mode footer{display:none}.play-mode #settings{font-size:20px}
@media(max-width:760px){.play-mode #layout-tools{top:272px;left:12px;right:12px;width:auto;max-height:calc(100dvh - 425px);padding:12px}.build-heading{font-size:15px}.play-mode #layout-tools .fixture-choice{min-height:54px;padding:8px}.fixture-choice b{font-size:11px}.fixture-choice span{font-size:9px}.build-intro,#build-hint{font-size:10px;margin:8px 0}#placement-summary{margin:10px 0;padding:10px}.play-mode #settings{font-size:17px}}

.coordinate-fields label{grid-area:auto!important}

.play-mode:has(#layout-tools:not([hidden])) .trading-bar{display:none}

/* Orders and manual mixed-product stocking. */
.play-mode .floor-actions #layout{order:0}.play-mode .floor-actions #phone{order:1}.play-mode .floor-actions #stockroom{order:2}.play-mode .floor-actions #deliveries{order:3}.play-mode .floor-actions #expand{order:4}.play-mode .floor-actions #reset-store{order:5}
.play-mode #phone-panel{border:1px solid #c8d1bd;border-radius:18px;box-shadow:0 18px 45px #183a2d24}.play-mode #phone-panel .side-heading{padding:20px}.play-mode #phone-panel .eyebrow{display:none}
#delivery-tracker{position:fixed;z-index:8;right:24px;top:140px;width:360px;max-width:calc(100vw - 24px);border-radius:13px;background:#fcfaeeef;border:1px solid #c7d1bc;box-shadow:0 8px 24px #203e3014;overflow:hidden}
#delivery-toggle{width:100%;text-align:left;border:0;background:transparent;padding:10px 14px;font-weight:700}#incoming-orders{max-height:240px;overflow:auto;padding:0 14px 10px}.incoming-order{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #e2e5d6}.incoming-order small,.stock-line small{display:block;font-size:11px;opacity:.7}.incoming-order b{white-space:nowrap}
body:has(#phone-panel:not([hidden])) #delivery-tracker{display:none}
.display-contents{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.stock-line{display:flex;align-items:center;gap:10px;text-align:left;padding:8px;flex:1 1 180px}.stock-line.selected{background:#e5ecd9;border-color:#47765d}.stock-line .product-art{width:36px;height:45px;object-fit:contain}.shelf-card b{font-size:12px}
@media(max-width:700px){#delivery-tracker{right:12px;top:153px;width:195px;font-size:11px}#incoming-orders{max-height:175px}.play-mode #phone-panel{top:65px;bottom:110px}.play-mode .floor-actions{grid-template-columns:repeat(3,1fr)}.play-mode .floor-actions button{grid-column:auto!important}.play-mode #phone-panel .side-heading{padding:14px}}

#modal[data-type="stock"] .shelf-card{min-height:0;height:auto;padding:12px}#modal[data-type="stock"] .empty{padding:12px;margin:0}#modal[data-type="stock"] .shelf-list{margin:12px 0}.change-tray{max-height:160px;overflow:auto}

@media(max-width:700px){#delivery-tracker{overflow:visible}#incoming-orders{position:absolute;top:116px;right:0;width:195px;box-sizing:border-box;padding:10px 12px;background:#fcfaeef5;border:1px solid #c7d1bc;border-radius:13px;box-shadow:0 8px 24px #203e3022}body:has(#layout-tools:not([hidden])) #delivery-tracker{display:none}}

/* Stock actions remain above the display inventory, regardless of store size. */
#modal[data-type="stock"]{width:min(920px,calc(100vw - 24px));padding:20px;box-sizing:border-box}
#modal[data-type="stock"] #pause-modal,#modal[data-type="stock"] #modal-kicker{display:none}
#modal[data-type="stock"] .modal-header{margin-bottom:12px;align-items:center}
#modal[data-type="stock"] .modal-header h2{margin:0;font-size:23px}
#modal[data-type="stock"] #close-modal{margin-left:auto}
#modal[data-type="stock"] .field{margin:0 0 8px}
#modal[data-type="stock"] .field input,#modal[data-type="stock"] .field select{padding:10px;min-height:42px}
.stock-workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(170px,1fr);gap:20px}
.stock-entry{display:grid;grid-template-columns:minmax(0,1fr) 85px;gap:10px}
.stock-summary{margin:0 0 8px;font-size:12px;color:#647b69}
.stock-pricing{border-left:1px solid #dce2d1;padding-left:20px;display:grid;align-content:start;gap:5px}
.stock-pricing small{font-size:11px}.stock-pricing button{padding:9px}
#modal[data-type="stock"] .stock-contents-title{font-size:14px;margin:12px 0 6px}
#modal[data-type="stock"] .display-contents{margin:0;max-height:140px;overflow:auto}
#modal[data-type="stock"] .stock-line{flex:1 1 160px;padding:6px;font-size:12px}
#modal[data-type="stock"] .stock-line .product-art{height:32px;width:27px}
#modal[data-type="stock"] .button-row{margin:0;gap:8px}
#modal[data-type="stock"] .button-row button{padding:12px 8px}
@media(max-width:600px){#modal[data-type="stock"]{padding:14px}.stock-workspace{grid-template-columns:1fr;gap:10px}.stock-pricing{border-left:0;border-top:1px solid #dce2d1;padding:10px 0 0;grid-template-columns:1fr auto;align-items:end;gap:4px 10px}.stock-pricing .field{grid-row:1/3}.stock-pricing small{grid-column:2}.stock-pricing button{grid-column:2}#modal[data-type="stock"] .display-contents{max-height:120px}#modal[data-type="stock"] .modal-header h2{font-size:20px}}

/* Stable money artwork follows denomination, never a tray position. */
body.play-mode #pause,#modal #pause-modal{position:fixed;right:16px;bottom:16px;z-index:100;margin:0;display:block;border:1px solid #829a80;background:#284c3c;color:#fff8e7;border-radius:10px;padding:12px 16px;font-size:12px;min-height:42px}
#modal[data-type="stock"] #pause-modal{display:block}
#modal{max-height:calc(100dvh - 110px)}
#modal[data-type="checkout"]{padding:14px;width:min(1080px,calc(100vw - 24px));box-sizing:border-box;max-height:calc(100dvh - 110px)}
#modal[data-type="checkout"] .modal-header{padding:10px 14px;margin-bottom:8px;border-radius:10px}
#modal[data-type="checkout"] .modal-header h2{margin:0;font-size:21px}
#modal[data-type="checkout"] #modal-kicker{display:none}
#modal[data-type="checkout"] #modal-content{padding:0}
#modal[data-type="checkout"] #close-modal{margin-left:auto}
#modal[data-type="checkout"] #modal-feedback:not(:empty){padding:6px 10px;margin:4px 0;font-size:11px;max-height:32px;overflow:auto}
#modal[data-type="checkout"] .checkout-customer{margin:8px 0;gap:8px}
#modal[data-type="checkout"] .checkout-customer strong{font-size:15px}
#modal[data-type="checkout"] .checkout-customer svg{width:30px;height:34px}
#modal[data-type="checkout"] .checkout-layout{gap:14px;grid-template-columns:minmax(0,1fr) 220px}
#modal[data-type="checkout"] .cash-received{padding:8px 10px}
#modal[data-type="checkout"] .cash-received strong{font-size:21px}
#modal[data-type="checkout"] .cash-received .note{height:38px;width:95px}
#modal[data-type="checkout"] .change-summary{padding:9px 0}
#modal[data-type="checkout"] .change-summary strong{font-size:21px;margin-top:3px}
#modal[data-type="checkout"] .change-tray{min-height:58px;max-height:84px;box-sizing:border-box;padding:8px;gap:8px;margin-bottom:8px}
#modal[data-type="checkout"] .change-tray .note{height:42px;width:95px}
#modal[data-type="checkout"] .money-piece.coin{height:38px;width:38px}
#modal[data-type="checkout"] .physical-drawer{gap:9px;padding:10px 7px;border-width:5px;margin-bottom:8px}
#modal[data-type="checkout"] .physical-drawer .note{height:42px}
#modal[data-type="checkout"] .cash-stage .button-row{margin:0}
#modal[data-type="checkout"] .cash-stage .button-row button{padding:11px}
#modal[data-type="checkout"] .cash-stage .notice{margin:5px 0 0;padding:4px 0;background:none;font-size:10px}
#modal[data-type="checkout"] .till-receipt{padding:12px}
#modal[data-type="checkout"] .receipt-items{max-height:210px;overflow:auto}
#modal[data-type="checkout"] .till-receipt h3{margin:4px 0 8px}
#modal[data-type="checkout"] .till-total{padding-top:8px;margin:10px 0 5px}
@media(max-width:760px){body.play-mode #pause{bottom:106px;right:12px}#modal #pause-modal{bottom:12px;right:12px}#modal[data-type="checkout"]{padding:10px}#modal[data-type="checkout"] .checkout-layout{display:flex;gap:7px}#modal[data-type="checkout"] .receipt-items{max-height:60px}#modal[data-type="checkout"] .till-receipt{padding:7px}#modal[data-type="checkout"] .till-total{margin:4px 0 0;padding-top:4px}#modal[data-type="checkout"] .cash-stage .notice{display:none}}
