:root{--ink: #2B1F2E;--cream: #FFF6E9;--mint: #7FD8C0;--mint-dark: #58B89E;--bubble: #6EC1F0;--paw: #FF8A5B;--gold: #FFC44D;--gold-dark: #E5A625;--pink: #FF7FA8;--card: #FFFFFF;--shadow: 0 6px 0 rgba(43, 31, 46, .22);--shadow-lg: 0 12px 0 rgba(43, 31, 46, .28)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden;background:#9eb6c4}body{font-family:Nunito,system-ui,-apple-system,sans-serif;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none}[hidden]{display:none!important}#wrap{position:fixed;inset:0}canvas{display:block;width:100%;height:100%}kbd{font-family:Nunito,sans-serif;font-weight:900;font-size:12px;background:#fff;border:2px solid var(--ink);border-bottom-width:3px;border-radius:6px;padding:1px 6px}.hud{position:absolute;pointer-events:none;z-index:5}#top-left{top:14px;left:14px;display:flex;align-items:center;gap:10px}#money{display:flex;align-items:center;gap:10px;background:var(--cream);border:3px solid var(--ink);border-radius:999px;padding:8px 18px 8px 10px;box-shadow:var(--shadow);pointer-events:auto}#money .coin{width:32px;height:32px;border-radius:50%;background:var(--gold);border:3px solid var(--ink);display:grid;place-items:center;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;line-height:1}#money .val{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:26px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.5px}.day-badge{background:var(--cream);border:3px solid var(--ink);border-radius:999px;padding:8px 14px;font-weight:900;font-size:14px;box-shadow:var(--shadow)}.store-status-btn{pointer-events:auto;cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:14px;border:3px solid var(--ink);border-radius:999px;padding:6px 14px;box-shadow:var(--shadow);display:flex;align-items:center;gap:6px;transition:transform .08s,box-shadow .08s}.store-status-btn.open{background:var(--mint);color:var(--ink)}.store-status-btn.closed{background:#ff8a5b;color:#fff}.store-status-btn:hover{transform:translateY(-2px)}.store-status-btn:active{transform:translateY(2px);box-shadow:0 3px #2b1f2e38}#top-right{top:14px;right:14px;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.chips-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.chip{background:var(--cream);border:3px solid var(--ink);border-radius:999px;padding:6px 14px;font-weight:900;font-size:13px;letter-spacing:.6px;text-transform:uppercase;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px}.chip b{font-family:"Baloo 2",sans-serif;font-size:17px;font-variant-numeric:tabular-nums}.chip .dot{width:11px;height:11px;border-radius:50%;border:2px solid var(--ink)}.action-btn-top{pointer-events:auto;cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;background:var(--mint);color:var(--ink);border:3px solid var(--ink);border-radius:999px;padding:7px 18px;box-shadow:var(--shadow);display:flex;align-items:center;gap:7px;transition:transform .08s,box-shadow .08s}.action-btn-top.ghost{background:var(--cream)}.action-btn-top:hover{transform:translateY(-2px);box-shadow:0 8px #2b1f2e38}.action-btn-top:active{transform:translateY(2px);box-shadow:0 3px #2b1f2e38}.hud-note{font:12px system-ui,sans-serif;background:#fffaf0;color:#2b1f2e;padding:5px 9px;border-radius:8px;max-width:240px}.hud-note.warn{background:#fff2d9;color:#3d2410;max-width:260px}.hud-note.error{background:#ffe3dc;color:#8e2a1e}.cloud-status{background:#2b1f2ed1;color:var(--cream);border-radius:999px;padding:5px 14px;font-size:12px;font-weight:800;transition:opacity .3s}.cloud-status.error{background:#c0392b}#hint{left:50%;transform:translate(-50%);bottom:76px;background:var(--ink);color:var(--cream);border-radius:999px;padding:10px 24px;font-weight:700;font-size:15px;text-align:center;max-width:min(600px,88vw);box-shadow:0 6px #00000040;transition:opacity .25s}#hint b{color:var(--gold)}#bottom-actions{left:14px;bottom:18px;display:flex;gap:10px;align-items:center}#carry{display:flex;gap:5px;align-items:center;background:var(--cream);border:3px solid var(--ink);border-radius:999px;padding:7px 14px;box-shadow:var(--shadow)}#carry .lbl{font-weight:900;font-size:11px;letter-spacing:.8px;text-transform:uppercase;margin-right:4px}#carrySlots{display:flex;gap:4px}#carry i{width:12px;height:12px;border-radius:3px;border:2px solid var(--ink);background:transparent;display:block}#carry i.on{background:var(--paw)}#right-actions{right:14px;bottom:18px;display:flex;gap:10px;align-items:center}.hud-btn{pointer-events:auto;cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;line-height:1;background:var(--cream);color:var(--ink);border:3px solid var(--ink);border-radius:999px;padding:10px 20px;box-shadow:var(--shadow);transition:transform .08s,box-shadow .08s}.hud-btn:hover{transform:translateY(-1px)}.hud-btn:active{transform:translateY(3px);box-shadow:0 3px #2b1f2e38}#btn-cashier{background:var(--gold)}#btn-toggle-store{background:var(--mint)}#btn-stock-shelf{background:var(--gold)}#btn-stock-shelf.blocked{background:#ff8a5b;color:#fff}#stick{position:absolute;z-index:6;display:none;width:132px;height:132px;border-radius:50%;border:4px solid rgba(43,31,46,.35);background:#fff6e959;pointer-events:none}#stick div{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:var(--cream);border:4px solid var(--ink)}.modal-overlay{position:absolute;inset:0;z-index:30;display:none;place-items:center;background:#2b1f2eb8;backdrop-filter:blur(4px);padding:16px}.modal-overlay.open{display:grid}.modal-card{width:min(840px,96vw);max-height:92vh;overflow-y:auto;background:var(--cream);border:4px solid var(--ink);border-radius:28px;box-shadow:var(--shadow-lg);padding:24px;display:flex;flex-direction:column;gap:16px;position:relative}.modal-head{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid rgba(43,31,46,.12);padding-bottom:12px}.modal-head h2{font-family:"Baloo 2",sans-serif;font-size:28px;font-weight:800;line-height:1;display:flex;align-items:center;gap:10px}.modal-close{cursor:pointer;width:36px;height:36px;border-radius:50%;background:#ff8a5b;color:#fff;border:3px solid var(--ink);display:grid;place-items:center;font-size:18px;font-weight:900;box-shadow:0 3px 0 var(--ink);transition:transform .08s}.modal-close:active{transform:translateY(2px);box-shadow:none}.btn-mini{cursor:pointer;background:#ddd;border:2px solid var(--ink);border-radius:6px;padding:3px 10px;font-weight:800;font-size:11px}#cashier-modal .modal-card{width:min(920px,96vw);background:#f4eae0}.cashier-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:18px}@media(max-width:760px)and (min-height:541px){.cashier-grid{grid-template-columns:1fr}}.belt-section{background:#fff;border:3px solid var(--ink);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px #2b1f2e1f}.belt-title{font-family:"Baloo 2",sans-serif;font-size:17px;font-weight:800;display:flex;justify-content:space-between;align-items:center}.belt-count{font-size:13px;color:#887}.belt-items{min-height:150px;background:#ece5dc;border:2px dashed #B8AAA0;border-radius:12px;padding:10px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}.belt-item{background:#fff;border:2.5px solid var(--ink);border-radius:12px;padding:10px;text-align:center;cursor:pointer;box-shadow:0 4px 0 var(--ink);transition:transform .1s,background .15s;min-width:95px}.belt-item:hover{transform:scale(1.05) translateY(-2px);background:#fff9ee}.belt-item.scanned{opacity:.45;pointer-events:none;border-color:#7fd8c0}.belt-item .icon{font-size:32px;display:block;margin-bottom:2px}.belt-item .name{font-size:11px;font-weight:800;line-height:1.1}.belt-item .price{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:13px;margin-top:2px}.belt-item .barcode{font-family:Share Tech Mono,monospace;font-size:9px;background:#2b1f2e;color:#fff;padding:2px 4px;border-radius:4px;margin-top:4px;display:block}.scanner-zone{background:#2b1f2e;color:#fff;border-radius:12px;padding:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;overflow:hidden}.scanner-caption{font-size:12px;font-weight:700;opacity:.8}.laser-line{position:absolute;left:10%;right:10%;height:3px;background:#f34;box-shadow:0 0 10px #f34;top:50%;transform:translateY(-50%);animation:laserScan 1.2s infinite ease-in-out alternate}@keyframes laserScan{0%{top:20%}to{top:80%}}@media(prefers-reduced-motion:reduce){.laser-line{animation:none}}.scanner-btn{cursor:pointer;font-family:"Baloo 2",sans-serif;font-size:18px;font-weight:800;background:#f34;color:#fff;border:3px solid #FFF;border-radius:999px;padding:6px 24px;box-shadow:0 4px #900;z-index:2}.scanner-btn:active{transform:translateY(2px);box-shadow:0 2px #900}.pos-section{display:flex;flex-direction:column;gap:14px}.pos-screen{background:#253328;color:#7fd8c0;font-family:Share Tech Mono,monospace;border:3px solid var(--ink);border-radius:14px;padding:14px;box-shadow:inset 0 3px 6px #0009}.pos-header{font-size:12px;border-bottom:1px dashed rgba(127,216,192,.3);padding-bottom:4px;margin-bottom:6px}.pos-list{max-height:80px;overflow-y:auto;font-size:13px;line-height:1.4}.pos-line{display:flex;justify-content:space-between}.pos-total-row{margin-top:8px;border-top:1px dashed rgba(127,216,192,.4);padding-top:6px;display:flex;justify-content:space-between;font-size:18px;font-weight:700;color:#fff}.pay-panel{background:#fff;border:3px solid var(--ink);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:10px}.customer-talk{background:#fff6e9;border:2px solid var(--ink);border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;display:flex;align-items:center;gap:8px}.customer-talk b{color:#ff8a5b}.drawer-tray{display:flex;flex-direction:column;gap:8px}.drawer-tray.locked{opacity:.4;pointer-events:none}.drawer-head{font-size:12px;font-weight:800;display:flex;justify-content:space-between}.drawer-head span:last-child{color:#ff8a5b}.money-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.cash-btn{cursor:pointer;border:2px solid var(--ink);border-radius:8px;padding:6px 2px;text-align:center;font-weight:900;font-size:12px;font-family:"Baloo 2",sans-serif;box-shadow:0 3px 0 var(--ink);transition:transform .05s}.cash-btn:active{transform:translateY(2px);box-shadow:none}.bill-100{background:#6eb1d6;color:#fff}.bill-50{background:#d99b6a;color:#fff}.bill-20{background:#e5c44d;color:#2b1f2e}.bill-10{background:#e06d6d;color:#fff}.bill-5{background:#a076c5;color:#fff}.bill-2{background:#559e87;color:#fff}.coin-btn{background:#d6c29e;color:#2b1f2e}.change-control{display:flex;justify-content:space-between;align-items:center;background:#f0e6d8;border-radius:8px;padding:8px 12px;font-weight:800;font-size:14px}.change-control b{font-size:16px;color:#2b1f2e}.cashier-warn{background:#ffe3dc;border:2px solid #C0392B;color:#8e2a1e;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:800}.btn-submit-change{cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;background:var(--mint);color:var(--ink);border:3px solid var(--ink);border-radius:12px;padding:10px;width:100%;box-shadow:0 4px 0 var(--ink);transition:transform .08s}.btn-submit-change:active{transform:translateY(2px);box-shadow:none}.card-pos-panel{background:#33455c;color:#fff;border-radius:12px;padding:12px;border:3px solid var(--ink);display:flex;flex-direction:column;gap:8px;text-align:center}.card-pos-screen{background:#8dbe98;color:#1e3824;font-family:Share Tech Mono,monospace;padding:8px;border-radius:6px;font-weight:700;font-size:15px;border:2px solid #1E3824}.btn-insert-card{cursor:pointer;font-family:"Baloo 2",sans-serif;font-size:15px;font-weight:800;background:var(--gold);color:var(--ink);border:2px solid var(--ink);border-radius:8px;padding:8px;box-shadow:0 3px 0 var(--ink)}#pc-modal .modal-card{background:#f8f4ee}.pc-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:2px solid #D8CFC0;padding-bottom:8px}.pc-tab{cursor:pointer;font-family:"Baloo 2",sans-serif;font-size:15px;font-weight:800;padding:6px 16px;border-radius:8px;border:2px solid var(--ink);background:#fff;box-shadow:0 2px 0 var(--ink)}.pc-tab.active{background:var(--paw);color:#fff}.wholesale-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.client-summary{grid-column:1 / -1}.stock-cart{grid-column:1 / -1;background:#fff8ee;border:3px solid var(--ink);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:9px}.stock-cart h3,.stock-cart p{margin:0}.stock-cart h3{font-family:"Baloo 2",sans-serif}.stock-cart-line{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.stock-cart-line span{font-weight:700}.stock-cart-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.stock-cart-controls .btn-buy-stock{min-width:32px;font-size:13px;padding:4px 7px}.stock-cart-remove{font-size:12px;padding:4px 8px;background:#fff}.stock-cart-total{font-weight:800}.stock-cart-shortage{color:#a43d2f;font-weight:800}.stock-quantity{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:800}.stock-qty-input{width:70px;border:2px solid var(--ink);border-radius:8px;padding:5px;font:inherit;text-align:center}.wholesale-card{background:#fff;border:3px solid var(--ink);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 4px #2b1f2e1f;text-align:center}.wholesale-card .icon{font-size:38px}.wholesale-card .title{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;line-height:1.1;min-height:2.2em;display:flex;align-items:center;justify-content:center}.wholesale-card .desc{font-size:12px;color:#665;min-height:28px}.wholesale-card .pricing{display:flex;justify-content:space-around;background:#fff6e9;border-radius:8px;padding:6px;font-size:12px;font-weight:800}.wholesale-card .pricing b{color:#ff8a5b}.wholesale-card .pricing b.profit{color:#58b89e}.wholesale-card .price-set{display:flex;flex-direction:column;gap:6px;align-items:stretch;background:#fff;border:2px dashed #E0D6CA;border-radius:10px;padding:8px}.wholesale-card .price-set label{font-size:10px;font-weight:800;color:#9a9086;text-transform:uppercase;letter-spacing:.05em}.wholesale-card .price-row{display:flex;align-items:center;gap:6px;justify-content:center}.wholesale-card .price-row input[type=number]{width:82px;text-align:center;padding:4px;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:17px;border:2px solid var(--ink);border-radius:8px;background:#fff6e9}.wholesale-card .step{cursor:pointer;width:30px;height:30px;flex:none;line-height:1;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:18px;border:2px solid var(--ink);border-radius:8px;background:#fff}.wholesale-card .step:active{transform:translateY(1px)}.wholesale-card input[type=range]{width:100%;accent-color:#58B89E}.wholesale-card .tone{font-size:11px;font-weight:800;border-radius:6px;padding:3px 6px;min-height:2.9em;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.15}.wholesale-card .tone.cheap{background:#e7f3ff;color:#2f7cc0}.wholesale-card .tone.fair{background:#eafbf4;color:#2f8a6e}.wholesale-card .tone.pricey{background:#fff1e2;color:#b06a4a}.wholesale-card .tone.greedy{background:#ffe6e6;color:#c0453f}.wholesale-card .pricing,.wholesale-card .desc+.btn-buy-stock,.wholesale-card .desc+.status,.wholesale-card .desc+.locked-note{margin-top:auto}.wholesale-card.hired{background:#eafbf4}.wholesale-card.locked{opacity:.75}.wholesale-card .status{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:14px;background:#7fd8c0;border:2px solid var(--ink);border-radius:8px;padding:8px}.wholesale-card .locked-note{font-size:12px;font-weight:800;color:#b06a4a}.btn-buy-stock{cursor:pointer;font-family:"Baloo 2",sans-serif;font-size:15px;font-weight:800;background:var(--mint);color:var(--ink);border:2px solid var(--ink);border-radius:8px;padding:8px;box-shadow:0 3px 0 var(--ink);transition:transform .08s}.btn-buy-stock:active{transform:translateY(2px);box-shadow:none}.btn-buy-stock:disabled{background:#e3dcd2;color:#9a9086;cursor:not-allowed;box-shadow:0 3px #b9afa3}.staff-info{background:#fff;border:3px solid var(--ink);border-radius:16px;padding:18px;line-height:1.6;margin-top:14px}.staff-info h3{font-family:"Baloo 2",sans-serif;font-size:20px;margin-bottom:8px}.notice{background:#fff6e9;border:2px dashed #C8B79C;border-radius:12px;padding:14px;font-size:13px;line-height:1.6}.notice code{font-family:Share Tech Mono,monospace;background:#efe4d2;padding:1px 5px;border-radius:4px}.auth-form{display:flex;flex-direction:column;gap:12px;background:#fff;border:3px solid var(--ink);border-radius:16px;padding:18px;box-shadow:0 4px #2b1f2e1f;max-width:420px}.auth-tabs{display:flex;gap:8px}.auth-tab{flex:1;cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:15px;padding:8px;border-radius:8px;border:2px solid var(--ink);background:#fff}.auth-tab.active{background:var(--mint)}.auth-form label{display:flex;flex-direction:column;gap:5px;font-weight:800;font-size:13px}.auth-form input{font-family:Nunito,sans-serif;font-size:15px;font-weight:600;padding:10px 12px;border:2px solid var(--ink);border-radius:10px;background:#fffdf8;color:var(--ink)}.auth-form input:focus{outline:3px solid var(--mint);outline-offset:1px}.btn-primary{cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:16px;background:var(--paw);color:#fff;border:3px solid var(--ink);border-radius:12px;padding:11px;box-shadow:0 4px 0 var(--ink);transition:transform .08s}.btn-primary:active{transform:translateY(2px);box-shadow:none}.btn-primary:disabled{background:#e3dcd2;color:#9a9086;cursor:not-allowed}.btn-ghost{cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:15px;background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:10px;padding:9px 14px;box-shadow:0 3px 0 var(--ink)}.btn-ghost:active{transform:translateY(2px);box-shadow:none}.btn-ghost.danger{background:#ffe3dc;color:#8e2a1e;border-color:#c0392b;box-shadow:0 3px #c0392b}.auth-link{align-self:center;cursor:pointer;background:none;border:none;padding:2px 4px;font-family:Nunito,sans-serif;font-size:13px;font-weight:800;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.auth-link:focus-visible{outline:3px solid var(--mint);border-radius:6px}.auth-msg{font-size:13px;font-weight:800;border-radius:8px;padding:9px 12px;background:#eafbf4;border:2px solid var(--mint-dark);color:#1f5c4a}.auth-msg.error{background:#ffe3dc;border-color:#c0392b;color:#8e2a1e}.profile-box{background:#fff;border:3px solid var(--ink);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:14px;box-shadow:0 4px #2b1f2e1f}.profile-head{display:flex;align-items:center;gap:14px}.avatar{width:54px;height:54px;border-radius:50%;flex:none;background:var(--gold);border:3px solid var(--ink);display:grid;place-items:center;font-size:26px}.profile-name{font-family:"Baloo 2",sans-serif;font-size:22px;font-weight:800;line-height:1.1}.profile-mail{font-size:13px;color:#776}.profile-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.stat-tile{background:#fff6e9;border:2px solid var(--ink);border-radius:12px;padding:10px;text-align:center}.stat-tile .k{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.6px;opacity:.7}.stat-tile .v{font-family:"Baloo 2",sans-serif;font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}.profile-actions{display:flex;flex-wrap:wrap;gap:8px}.rank-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rank-controls .pc-tab[data-range]{cursor:pointer}.rank-list{display:flex;flex-direction:column;gap:6px}.rank-row{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:10px 14px}.rank-row.me{background:#fff6e9;border-color:var(--paw);border-width:3px}.rank-pos{font-family:"Baloo 2",sans-serif;font-size:20px;font-weight:800;text-align:center}.rank-row:nth-child(1) .rank-pos{color:var(--gold-dark)}.rank-name{font-weight:800;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-meta{font-size:11px;font-weight:700;opacity:.65}.rank-score{font-family:"Baloo 2",sans-serif;font-size:19px;font-weight:800;font-variant-numeric:tabular-nums}.rank-empty{text-align:center;padding:24px;font-weight:800;opacity:.6}.ach-card{position:relative}.ach-card.locked{filter:grayscale(1);opacity:.55}.ach-card .badge{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:12px;background:var(--mint);border:2px solid var(--ink);border-radius:999px;padding:3px 10px;align-self:center}.ach-card.locked .badge{background:#e3dcd2}#account-modal{z-index:60}#intro{position:absolute;inset:0;z-index:50;display:grid;place-items:center;background:radial-gradient(120% 90% at 50% 0%,#ffe3ee,#f6e2c8 55%,#e4cda9);padding:20px;overflow-y:auto}#card{width:min(580px,94vw);background:var(--cream);border:4px solid var(--ink);border-radius:28px;box-shadow:var(--shadow-lg);padding:26px 28px;text-align:center}#card h1{font-family:"Baloo 2",sans-serif;font-weight:800;font-size:clamp(30px,6vw,42px);line-height:1;margin:4px 0 6px}#card h1 span{color:var(--paw)}#card .sub{font-weight:800;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;opacity:.7;margin-bottom:16px}#card ol{text-align:left;margin:0 0 18px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.35}#card ol li{display:flex;gap:11px;align-items:flex-start}#card ol li em{flex:none;width:24px;height:24px;border-radius:50%;background:var(--mint);border:2.5px solid var(--ink);font-style:normal;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:13px;display:grid;place-items:center;margin-top:1px}#card .keys{font-size:13px;font-weight:700;opacity:.75;margin-bottom:18px;line-height:1.45}.intro-actions{display:flex;flex-direction:column;gap:10px;align-items:center}#play,#play-new-game{width:min(100%,400px);cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:22px;background:var(--paw);color:var(--cream);border:4px solid var(--ink);border-radius:999px;padding:12px 46px;box-shadow:0 6px 0 var(--ink);transition:transform .08s,box-shadow .08s}#play:hover,#play-new-game:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--ink)}#play:active,#play-new-game:active{transform:translateY(4px);box-shadow:0 2px 0 var(--ink)}.link-btn{margin-top:14px;cursor:pointer;background:none;border:none;font-family:Nunito,sans-serif;font-weight:800;font-size:13px;color:var(--ink);opacity:.65;text-decoration:underline}.link-btn:hover{opacity:1}#play-new-game{width:min(100%,350px);padding:10px 32px;font-size:19px;border-width:2px;background:#fff;color:var(--ink)}#chapter-goal{top:78px;left:14px;max-width:min(450px,calc(100vw - 28px));background:var(--cream);border:2px solid var(--ink);border-radius:12px;padding:5px 10px;box-shadow:var(--shadow);font-size:12px;font-weight:900;line-height:1.25}#chapter-goal[data-trophy-style=gold]{background:#fff1be}#chapter-goal[data-trophy-style=mint]{background:#d8f5e9}#chapter-goal[data-trophy-style=pink]{background:#ffe2ed}#chapter-notice{top:130px;left:50%;transform:translate(-50%);width:max-content;max-width:min(520px,calc(100vw - 28px));background:var(--gold);color:var(--ink);border:3px solid var(--ink);border-radius:14px;padding:9px 16px;text-align:center;font-family:"Baloo 2",sans-serif;font-weight:800;box-shadow:var(--shadow)}.store-status-btn:disabled{cursor:default;opacity:.9}.evolution-intro{background:#fff;border:2px solid var(--ink);border-radius:12px;padding:12px 16px}.evolution-intro h3{font-family:"Baloo 2",sans-serif;font-size:23px}.evolution-intro p{font-size:13px}.evolution-list{display:grid;gap:10px;margin-top:12px}.evolution-step{background:#fff;border:2px solid #bcb2a8;border-radius:12px;padding:12px 16px}.evolution-step.active{border:3px solid var(--ink);background:#fff5e5}.evolution-step.done{background:#e8f9f1;border-color:#58b89e}.evolution-step h4{font-family:"Baloo 2",sans-serif;font-size:18px}.evolution-step p{margin:2px 0 5px;font-weight:800}.evolution-step small{color:#554853}.evolution-status{margin-top:12px;font-size:13px;font-weight:800}.evolution-trophy{margin-top:14px;padding:14px;border:3px solid var(--ink);border-radius:16px}.evolution-trophy[data-style=gold]{background:#fff1be}.evolution-trophy[data-style=mint]{background:#d8f5e9}.evolution-trophy[data-style=pink]{background:#ffe2ed}.evolution-trophy h3{font-family:"Baloo 2",sans-serif}.evolution-trophy p{margin:4px 0 10px}.trophy-colors{display:flex;flex-wrap:wrap;gap:8px}.trophy-colors button{cursor:pointer;background:#fff;border:2px solid var(--ink);border-radius:8px;padding:7px 12px;font:800 13px Nunito,sans-serif}.trophy-colors button[aria-pressed=true]{background:var(--ink);color:#fff}.trophy-colors button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){#chapter-goal{top:112px;font-size:11px;max-width:60vw}#chapter-notice{top:174px;font-size:13px}}.day-summary-card{max-width:540px;width:92vw;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;background:#fffdf9;border:2px solid #5C3D28;border-radius:16px;box-shadow:0 12px 36px #2b1f2e59;padding:24px;color:#2b1f2e;font-family:system-ui,-apple-system,sans-serif;animation:popIn .22s ease-out}@keyframes popIn{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.day-summary-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #EADBCC;padding-bottom:12px;margin-bottom:16px}.day-summary-header h2{margin:0;font-size:1.35rem;color:#5c3d28;display:flex;align-items:center;gap:8px}.day-summary-badge{background:#ffe8a3;color:#5c3d28;padding:4px 10px;border-radius:12px;font-weight:700;font-size:.9rem}.day-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.day-summary-col{background:#f8f3eb;border-radius:10px;padding:12px 14px;border:1px solid #EADBCC}.day-summary-col h3{margin:0 0 8px;font-size:.95rem;color:#7a583a;border-bottom:1px dashed #DBCBB8;padding-bottom:4px}.summary-row{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:4px}.summary-row.total{font-weight:700;border-top:1px solid #DBCBB8;padding-top:4px;margin-top:6px;color:#2b1f2e}.summary-highlight{background:#eaf7ef;border:1px solid #A3D8B3;border-radius:10px;padding:10px 14px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;font-size:.95rem;font-weight:700}.summary-highlight.negative{background:#fdf0ed;border-color:#f1b2a3}.day-summary-feedback{background:#fff9e6;border:1px solid #F3DB94;border-radius:10px;padding:12px;margin-bottom:18px;font-size:.85rem}.day-summary-feedback h4{margin:0 0 6px;font-size:.9rem;color:#7a583a;display:flex;align-items:center;gap:6px}.day-summary-feedback ul{margin:0;padding-left:18px;color:#4a3b32}.day-summary-feedback li{margin-bottom:3px}.day-summary-footer{display:flex;justify-content:flex-end;gap:10px}.btn-start-next-day{background:#2e8b57;color:#fff;border:none;padding:10px 20px;font-size:.95rem;font-weight:700;border-radius:8px;cursor:pointer;box-shadow:0 3px #1e5f3b;transition:transform .1s,background .15s}.btn-start-next-day:hover{background:#257448}.btn-start-next-day:active{transform:translateY(2px);box-shadow:none}.custom-panel{display:flex;flex-direction:column;gap:16px;width:100%}.custom-header{border-bottom:2px solid #EADBCC;padding-bottom:12px}.custom-header h3{margin:0 0 6px;font-size:1.25rem;color:#5c3d28;display:flex;align-items:center;gap:8px}.custom-header p{margin:0;font-size:.9rem;color:#7a5c43}.custom-preview-banner{background:#fff6df;border:2px solid #E5C365;border-radius:12px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;animation:popIn .2s ease-out}.custom-preview-info{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem;color:#614805}.custom-actions{display:flex;gap:8px}.btn-confirm-theme{background:#227a4c;color:#fff;border:none;padding:8px 14px;border-radius:8px;font-weight:700;font-size:.88rem;cursor:pointer;transition:transform .1s ease,filter .15s ease}.btn-confirm-theme:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-confirm-theme:disabled{background:#a99e93;cursor:not-allowed;filter:none;transform:none}.btn-cancel-theme{background:#eadbcc;color:#5c3d28;border:none;padding:8px 14px;border-radius:8px;font-weight:700;font-size:.88rem;cursor:pointer;transition:transform .1s ease}.btn-cancel-theme:hover{background:#d9c4b0;transform:translateY(-1px)}.custom-section-title{margin:12px 0 6px;font-size:1.05rem;color:#5c3d28;font-weight:700;display:flex;align-items:center;gap:6px}.custom-presets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.custom-preset-card{background:#fff;border:2px solid #EADBCC;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;transition:transform .15s ease,border-color .15s ease}.custom-preset-card.active{border-color:#3e9e6b;background:#f4faf7}.custom-preset-card.locked{opacity:.65;background:#f7f5f2}.preset-card-head{display:flex;justify-content:space-between;align-items:center}.preset-card-head .icon{font-size:1.4rem}.preset-badge{font-size:.75rem;padding:2px 8px;border-radius:10px;font-weight:700}.preset-badge.badge-active{background:#cbeed8;color:#1f6b41}.preset-badge.badge-unlocked{background:#eadbcc;color:#5c3d28}.preset-badge.badge-locked{background:#f0d4d4;color:#9c3333}.preset-card-title{font-size:.98rem;font-weight:700;color:#5c3d28}.preset-card-desc{font-size:.82rem;color:#6c5543;flex:1}.preset-lock-reason{font-size:.78rem;color:#9c3333;font-style:italic}.preset-package-contents{margin:0;padding-left:20px;color:#5c3d28;font-size:.78rem}.preset-ownership{display:block;color:#6c5543;font-weight:700}.btn-apply-preset{margin-top:auto;padding:8px 10px;border:none;border-radius:8px;background:#5c3d28;color:#fff;font-weight:700;font-size:.84rem;cursor:pointer;transition:background .15s}.btn-apply-preset:hover:not(:disabled){background:#7a5236}.btn-apply-preset:disabled{background:#c7b9ac;cursor:not-allowed}.custom-slots-list{display:flex;flex-direction:column;gap:12px}.custom-slot-row{background:#fff;border:1px solid #EADBCC;border-radius:10px;padding:10px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.slot-label{display:flex;align-items:center;gap:6px;font-weight:700;color:#5c3d28;font-size:.92rem;min-width:140px}.slot-options{display:flex;gap:8px;flex-wrap:wrap}.btn-slot-option{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #D8C7B5;border-radius:8px;background:#faf7f2;color:#4a3525;font-size:.84rem;cursor:pointer;transition:all .12s ease}.btn-slot-option:hover:not(:disabled){background:#f0e6d8;border-color:#b59e87}.btn-slot-option.selected{background:#236a99;color:#fff;border-color:#1a5378;font-weight:700}.btn-confirm-theme:focus-visible,.btn-cancel-theme:focus-visible,.btn-apply-preset:focus-visible,.btn-slot-option:focus-visible{outline:3px solid #1A5378;outline-offset:3px}.btn-slot-option.locked{opacity:.5;cursor:not-allowed;background:#efece8;border-style:dashed}:root{--sl: env(safe-area-inset-left, 0px);--sr: env(safe-area-inset-right, 0px);--st: env(safe-area-inset-top, 0px);--sb: env(safe-area-inset-bottom, 0px)}.only-touch{display:none}.touch .only-touch{display:inline}.touch .only-desk{display:none}.touch body{-webkit-touch-callout:none}.chip .ico{display:none}.touch #right-actions{flex-direction:column-reverse;align-items:flex-end;gap:10px;right:calc(14px + var(--sr));bottom:calc(14px + var(--sb))}.touch .hud-btn{min-height:52px;min-width:136px;padding:12px 20px;font-size:17px;touch-action:manipulation}.touch #drop{min-width:0}#btn-fullscreen.active{background:var(--mint)}#stick-ghost{position:absolute;z-index:4;pointer-events:none;left:calc(36px + var(--sl));bottom:calc(34px + var(--sb));width:112px;height:112px;border-radius:50%;border:3px dashed rgba(43,31,46,.45);background:#fff6e94d;display:grid;place-items:center;animation:ghostPulse 1.6s ease-in-out infinite}#stick-ghost div{width:46px;height:46px;border-radius:50%;background:#fff6e9d9;border:3px solid var(--ink)}#stick-ghost span{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);white-space:nowrap;font-weight:900;font-size:12px;background:var(--ink);color:var(--cream);border-radius:999px;padding:3px 10px}@keyframes ghostPulse{50%{transform:scale(1.06)}}@media(prefers-reduced-motion:reduce){#stick-ghost{animation:none}}#rotate-hint{display:none;position:fixed;inset:0;z-index:200;place-items:center;padding:24px;background:radial-gradient(120% 90% at 50% 0%,#ffe3ee,#f6e2c8 55%,#e4cda9);text-align:center}.rotate-card{background:var(--cream);border:4px solid var(--ink);border-radius:24px;box-shadow:var(--shadow-lg);padding:26px 22px;max-width:320px;display:flex;flex-direction:column;align-items:center;gap:10px}.rotate-card h2{font-family:"Baloo 2",sans-serif;font-size:28px;line-height:1}.rotate-card p{font-size:15px;line-height:1.4}.rotate-icon{font-size:56px;line-height:1;animation:rotateTurn 2.4s ease-in-out infinite}@keyframes rotateTurn{0%,30%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media(prefers-reduced-motion:reduce){.rotate-icon{animation:none;transform:rotate(-90deg)}}#rotate-fullscreen{margin-top:6px;cursor:pointer;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:18px;background:var(--paw);color:var(--cream);border:3px solid var(--ink);border-radius:999px;padding:10px 24px;box-shadow:0 5px 0 var(--ink)}@media(orientation:portrait)and (max-width:600px){.touch #rotate-hint{display:grid}}@media(max-height:540px){#top-left{top:calc(8px + var(--st));left:calc(10px + var(--sl));gap:6px;flex-wrap:wrap;max-width:52vw}#money{padding:3px 12px 3px 4px;gap:6px;border-width:2px;box-shadow:0 3px #2b1f2e38}#money .coin{width:24px;height:24px;font-size:10px;border-width:2px}#money .val{font-size:19px}.day-badge{padding:4px 10px;font-size:12px;border-width:2px;box-shadow:0 3px #2b1f2e38}.store-status-btn{font-size:12.5px;padding:4px 11px;border-width:2px;box-shadow:0 3px #2b1f2e38}.store-status-btn .sub{display:none}.hud-note{flex-basis:100%;width:max-content;max-width:48vw;font:700 11px/1.3 Nunito,system-ui,sans-serif;border-radius:8px;padding:3px 8px}#local-save-status:not(.error){display:none}#chapter-goal{top:calc(46px + var(--st));left:calc(10px + var(--sl));max-width:min(44vw,360px);font-size:11px;padding:3px 8px;border-radius:9px;box-shadow:0 3px #2b1f2e38;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#chapter-notice{top:calc(52px + var(--st));font-size:13px;padding:6px 12px;max-width:60vw}#bottom-actions{top:calc(88px + var(--st));bottom:auto;left:calc(10px + var(--sl))}#carry{padding:3px 9px;border-width:2px;gap:4px;box-shadow:0 3px #2b1f2e38}#carry .lbl{font-size:9px}#carry i{width:10px;height:10px}#top-right{top:calc(8px + var(--st));right:calc(10px + var(--sr));gap:6px}.chips-row{gap:5px;flex-wrap:nowrap}.chip{padding:3px 9px;gap:4px;border-width:2px;font-size:12px;box-shadow:0 3px #2b1f2e38}.chip .dot,.chip .lbl{display:none}.chip .ico{display:inline;font-size:12px}.chip b{font-size:14px}.action-btn-top{font-size:13.5px;padding:5px 12px;border-width:2px;min-height:34px;box-shadow:0 3px #2b1f2e38}.action-btn-top .lbl-long,#account-label{display:none}.cloud-status{font-size:11px;padding:3px 10px}#hint{bottom:calc(8px + var(--sb));max-width:min(48vw,440px);font-size:12.5px;line-height:1.3;padding:6px 14px;border-radius:14px;box-shadow:0 3px #00000040}#hint kbd{font-size:10px;padding:0 4px}.touch #right-actions{right:calc(10px + var(--sr));bottom:calc(10px + var(--sb));gap:8px}.touch .hud-btn{min-height:48px;min-width:128px;padding:10px 16px;font-size:16px;border-width:2px}#stick-ghost{left:calc(28px + var(--sl));bottom:calc(30px + var(--sb));width:96px;height:96px}.modal-overlay{padding:calc(6px + var(--st)) calc(10px + var(--sr)) calc(6px + var(--sb)) calc(10px + var(--sl))}.modal-card>*{flex-shrink:0}.modal-card{width:min(860px,100%);max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px - var(--st) - var(--sb));padding:12px 16px;gap:10px;border-width:3px;border-radius:18px}.modal-head{padding-bottom:6px;border-bottom-width:2px}.modal-head h2{font-size:20px}.modal-close{width:34px;height:34px;flex:none}.modal-head{position:sticky;z-index:3;background:inherit;top:-12px;margin-top:-12px;padding-top:12px}.pc-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:6px;padding-bottom:6px;margin:0 -16px;padding-left:16px;padding-right:16px;-webkit-overflow-scrolling:touch}.pc-tabs::-webkit-scrollbar{display:none}.pc-tab{flex:none;white-space:nowrap;font-size:14px;padding:6px 12px;min-height:36px}.wholesale-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}#cashier-modal .modal-card{width:min(920px,100%);padding-top:8px;padding-bottom:8px}#cashier-modal .modal-head{top:-8px;margin-top:-8px;padding-top:8px;padding-bottom:4px}#cashier-modal .modal-close{width:30px;height:30px;font-size:15px}.cashier-grid{grid-template-columns:1fr 1.1fr;grid-template-rows:auto 1fr;gap:8px 10px}.belt-section{grid-column:1;grid-row:1}.pos-section{display:contents}.pos-screen{grid-column:1;grid-row:2;align-self:start}.pay-panel{grid-column:2;grid-row:1 / span 2;align-self:start}.belt-section{padding:10px;gap:8px;border-width:2px;border-radius:14px}.belt-title{font-size:14px}.belt-count{font-size:11px}.belt-items{min-height:70px;padding:5px;gap:5px}.belt-item{min-width:0;width:84px;padding:5px 3px;border-width:2px;border-radius:10px;box-shadow:0 3px 0 var(--ink)}.belt-item .icon{font-size:22px}.belt-item .name{font-size:10px}.belt-item .price{font-size:12px}.belt-item .barcode{display:none}.scanner-zone{padding:6px;gap:4px}.scanner-caption{display:none}.scanner-btn{font-size:15px;padding:6px 22px}.pos-section{gap:8px}.pos-screen{padding:8px 10px;border-width:2px}#cashier-modal .modal-head h2{font-size:16px}#cashier-modal .modal-card{gap:8px}.pos-header{display:none}.pos-list{max-height:54px;font-size:12px}.pos-total-row{font-size:15px;margin-top:4px;padding-top:4px}.pay-panel{padding:8px 10px;gap:6px;border-width:2px;border-radius:14px}.customer-talk{padding:4px 8px;font-size:12px;border-width:2px}.drawer-tray{gap:5px}.drawer-head{font-size:11px}.money-grid{gap:5px}.cash-btn{padding:5px 2px;font-size:13px}.change-control{font-size:12px}.btn-submit-change,.btn-insert-card{padding:9px;font-size:15px}.day-summary-card{padding:12px 18px}.day-summary-header{padding-bottom:6px;margin-bottom:8px}.day-summary-header h2{font-size:1.1rem}.day-summary-grid{gap:10px;margin-bottom:10px}#intro{padding:calc(8px + var(--st)) calc(12px + var(--sr)) calc(8px + var(--sb)) calc(12px + var(--sl))}#card{width:min(780px,100%);padding:14px 22px;border-width:3px;border-radius:22px;display:grid;grid-template-columns:1.25fr 1fr;column-gap:24px;align-items:center;text-align:left}#card .sub{display:none}#card h1{grid-column:1 / -1;text-align:center;font-size:30px;margin:0 0 10px}#card ol{grid-column:1;grid-row:2 / span 3;margin:0;gap:7px;font-size:12.5px;line-height:1.3}#card ol li em{width:20px;height:20px;font-size:11px;border-width:2px}#card .keys{grid-column:2;grid-row:2;font-size:12px;margin:0 0 10px;text-align:center}.intro-actions{grid-column:2;grid-row:3}#intro-account{grid-column:2;grid-row:4;justify-self:center;margin-top:8px}#play{font-size:19px;padding:10px 24px;border-width:3px;box-shadow:0 5px 0 var(--ink)}#play-new-game{font-size:15px;padding:7px 18px}}@media(max-height:380px){.pos-list{max-height:36px}#card ol{font-size:11.5px;gap:5px}#card h1{font-size:26px;margin-bottom:6px}.touch .hud-btn{min-height:44px;font-size:15px}}#layout-editor{position:fixed;z-index:100;left:50%;bottom:18px;transform:translate(-50%);width:min(620px,calc(100% - 24px));padding:16px;border-radius:16px;background:#fffaf0f5;color:#2b1f2e;box-shadow:0 6px 30px #0004;font:14px system-ui}#layout-editor[hidden]{display:none}#layout-editor strong{display:flex;justify-content:space-between;font-size:18px}#layout-editor small{font-size:12px;font-weight:400}#layout-editor p{margin:8px 0}#layout-editor button{border:1px solid #dbcdbb;border-radius:8px;padding:9px 12px;background:#fff;color:#2b1f2e;cursor:pointer}#layout-editor button:disabled{opacity:.45;cursor:default}#layout-objects,.layout-actions{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}#layout-confirm{background:#7fd8c0!important}#layout-message{min-height:20px;font-weight:600}.editing-store .hud{visibility:hidden;pointer-events:none}.editing-store #game{touch-action:none;cursor:crosshair}@media(max-height:550px){#layout-editor{bottom:4px;padding:8px}#layout-editor p,#layout-editor>small{display:none}}
