:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:#0f1117;color:#e8e8ec}.app{min-height:100vh;display:flex;flex-direction:column}.menu{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0f1117,#1a1d27);padding:2rem}.menu-content{text-align:center;max-width:400px}.store-icon{font-size:4rem;margin-bottom:.5rem;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.menu-content h1{font-size:2rem;font-weight:700;letter-spacing:-.03em;color:#fbbf24;margin-bottom:.25rem}.menu-subtitle{color:#ffffff8c;font-size:1rem;margin-bottom:1.5rem}.menu-rules{text-align:left;display:flex;flex-direction:column;gap:.6rem;margin-bottom:2rem}.rule{display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:#ffffffbf}.rule-icon{font-size:1.2rem;width:1.6rem;text-align:center}.btn{border:none;border-radius:.5rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-start{background:linear-gradient(135deg,#f59e0b,#d97706);color:#1a1d27;font-size:1.15rem;padding:.85rem 2.5rem;border-radius:.75rem}.btn-start:hover{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.btn-serve{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:.8rem;padding:.45rem 1rem;width:100%}.btn-serve:hover{background:linear-gradient(135deg,#4ade80,#22c55e)}.btn-disabled{background:#374151!important;color:#6b7280!important}.btn-buy{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-size:.9rem;padding:.6rem 1.2rem}.btn-buy:hover{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.btn-start-day{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:1rem;padding:.7rem 1.5rem}.btn-start-day:hover{background:linear-gradient(135deg,#4ade80,#22c55e)}.btn-qty{background:#2a2d3a;color:#e8e8ec;border:1px solid rgba(255,255,255,.1);border-radius:.35rem;width:2rem;height:2rem;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.btn-qty:hover:not(:disabled){background:#3a3d4a}.btn-qty:disabled{opacity:.3;cursor:not-allowed}.store{flex:1;display:flex;flex-direction:column;min-height:100vh;background:#0f1117}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:#161822;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.top-bar-left,.top-bar-right{display:flex;align-items:center;gap:.75rem}.top-bar-center{flex:1;display:flex;justify-content:center}.store-label{font-weight:700;font-size:.95rem;color:#fbbf24}.day-label{font-size:.8rem;color:#ffffff80;background:#ffffff0f;padding:.2rem .55rem;border-radius:.3rem}.timer{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;font-weight:600;color:#4ade80;padding:.25rem .85rem;background:#4ade8014;border-radius:.5rem}.timer-danger{color:#ef4444;background:#ef44441f;animation:pulse .6s infinite alternate}.timer-shopping{color:#60a5fa;background:#60a5fa1a}@keyframes pulse{0%{opacity:1}to{opacity:.6}}.stat{font-size:.85rem;font-weight:600;padding:.2rem .55rem;border-radius:.3rem}.money{color:#4ade80;background:#4ade8014}.rep{color:#fbbf24;background:#fbbf2414}.combo-badge{font-size:.8rem;font-weight:700;color:#f97316;background:#f973161f;padding:.2rem .5rem;border-radius:.3rem;animation:combo-pop .3s ease}@keyframes combo-pop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.toast{position:fixed;top:3.5rem;left:50%;transform:translate(-50%);background:#22c55e;color:#fff;font-weight:600;font-size:.85rem;padding:.45rem 1.2rem;border-radius:.5rem;z-index:100;animation:toast-in .25s ease;box-shadow:0 4px 16px #0000004d}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.main-area{flex:1;overflow-y:auto;padding:1rem}.customer-area{height:100%;min-height:calc(100vh - 10rem);display:flex;flex-direction:column}.no-customers{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ffffff59;font-size:.95rem;gap:.5rem}.no-customers-icon{font-size:2.5rem;animation:ring 1.5s infinite}@keyframes ring{0%,to{transform:rotate(0)}25%{transform:rotate(15deg)}75%{transform:rotate(-15deg)}}.customer-grid{display:flex;gap:.75rem;flex-wrap:wrap;align-content:flex-start}.customer-card{background:#1a1d27;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:.75rem;width:190px;display:flex;flex-direction:column;gap:.45rem;transition:all .25s ease}.customer-card.ready{border-color:#4ade804d;box-shadow:0 0 12px #4ade800f}.customer-card.served{animation:served-anim .5s ease forwards}.customer-card.lost{animation:lost-anim .5s ease forwards}@keyframes served-anim{50%{transform:scale(1.05);border-color:#22c55e}to{opacity:0;transform:translate(40px)}}@keyframes lost-anim{50%{border-color:#ef4444}to{opacity:0;transform:translateY(20px)}}.customer-header{display:flex;align-items:center;gap:.4rem}.customer-avatar{font-size:1.4rem}.customer-name{font-weight:600;font-size:.8rem;color:#ffffffd9}.patience-bar-wrap{height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.patience-bar{height:100%;border-radius:2px;transition:width 1s linear,background-color .5s ease}.customer-requests{display:flex;flex-direction:column;gap:.25rem;flex:1}.request-item{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:#ffffffb3}.request-item.shortage{color:#f87171}.req-emoji{font-size:.9rem}.req-name{flex:1}.req-badge{font-size:.65rem;background:#ef444426;color:#ef4444;padding:.1rem .35rem;border-radius:.2rem}.shopping-area{max-width:680px;margin:0 auto}.section-title{font-size:1.2rem;font-weight:700;margin-bottom:1rem;color:#e8e8ec}.shop-grid{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.shop-item{background:#1a1d27;border:1px solid rgba(255,255,255,.06);border-radius:.6rem;padding:.65rem .85rem;display:flex;align-items:center;justify-content:space-between;transition:border-color .15s}.shop-item:hover{border-color:#ffffff1f}.shop-item-top{display:flex;align-items:center;gap:.65rem;flex:1}.shop-emoji{font-size:1.6rem;width:2.2rem;text-align:center}.shop-item-info{display:flex;flex-direction:column}.shop-item-name{font-weight:600;font-size:.85rem}.shop-item-price{font-size:.72rem;color:#ffffff73}.shop-item-stock{font-size:.72rem;color:#fff6;margin-right:1rem}.shop-item-controls{display:flex;align-items:center;gap:.5rem}.cart-qty{font-weight:600;font-size:.9rem;min-width:1.5rem;text-align:center;color:#60a5fa}.shop-footer{background:#161822;border:1px solid rgba(255,255,255,.06);border-radius:.6rem;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.65rem}.cart-summary{display:flex;justify-content:space-between;font-size:.85rem;color:#fff9}.balance{color:#4ade80}.over-budget{color:#ef4444!important}.shop-actions{display:flex;gap:.65rem;justify-content:flex-end}.day-end{max-width:500px;margin:0 auto}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:1.25rem}.summary-card{background:#1a1d27;border:1px solid rgba(255,255,255,.06);border-radius:.6rem;padding:.85rem;display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.75rem;color:#ffffff73;text-transform:uppercase;letter-spacing:.06em}.summary-value{font-size:1.3rem;font-weight:700}.summary-card.green .summary-value{color:#4ade80}.summary-card.red .summary-value{color:#f87171}.summary-card.blue .summary-value{color:#60a5fa}.summary-card.yellow .summary-value{color:#fbbf24}.summary-note{font-size:.85rem;padding:.55rem .85rem;border-radius:.5rem;margin-bottom:.75rem}.lost-note{background:#ef444414;color:#f87171}.warn-note{background:#fbbf2414;color:#fbbf24}.day-end-actions{display:flex;justify-content:center;margin-top:1rem}.inventory-bar{display:flex;align-items:center;gap:.65rem;padding:.55rem 1rem;background:#161822;border-top:1px solid rgba(255,255,255,.06);overflow-x:auto;flex-shrink:0}.inv-label{font-size:.72rem;color:#ffffff59;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.inv-item{font-size:.78rem;white-space:nowrap;padding:.15rem .4rem;border-radius:.25rem;background:#ffffff0a}.inv-low{color:#ef4444;background:#ef44441a}
