@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=ZCOOL+KuaiLe&display=swap";:root{--bg: #FFF9E6;--surface: #FFFFFF;--primary: #C73670;--primary-dark: #A02555;--accent: #D4A500;--text: #1F0B2E;--text-muted: #5A4870;--border: #FFE0E9;--success: #2A9290;--warning: #A87C00;--danger: #D03A3A;--radius: 20px;--shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04)}body{margin:0;padding:0;background:radial-gradient(circle at 10% 20%,#D4A50033 0%,transparent 40%),radial-gradient(circle at 90% 80%,#C7367022 0%,transparent 40%),var(--bg);color:var(--text);font-family:Quicksand,ZCOOL KuaiLe,Nunito,sans-serif;min-height:100vh}.loading{text-align:center;padding:2rem;color:var(--text-muted)}.start-page,.gameover-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.game-title{font-family:ZCOOL KuaiLe,sans-serif;font-size:2.5rem;color:var(--primary);margin:0}.subtitle{color:var(--text-muted);margin:.5rem 0 2rem}.btn-primary{background:var(--primary);color:#fff;border:none;border-radius:var(--radius);padding:.8rem 2.5rem;font-size:1rem;cursor:pointer;transition:background .2s,transform .1s}.btn-primary:hover{background:var(--primary-dark);transform:scale(1.02)}.cloud-badge{margin-top:1.5rem;font-size:.8rem;color:var(--text-muted)}.game-screen{max-width:800px;margin:0 auto;padding:1rem}.cloud-toast{position:fixed;top:.5rem;left:50%;transform:translate(-50%);background:var(--success);color:#fff;padding:.4rem 1rem;border-radius:12px;font-size:.8rem;z-index:100}.top-bar{display:flex;align-items:center;gap:.8rem;justify-content:center;padding:.5rem;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:.5rem;flex-wrap:wrap}.stat-item{font-weight:600;color:var(--text);font-size:.9rem}.btn-small{padding:.3rem .8rem;border:none;border-radius:10px;cursor:pointer;font-size:.75rem;transition:.2s}.danger{background:var(--danger);color:#fff}.success{background:var(--success);color:#fff}.panel{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:.8rem;margin-bottom:1rem}.panel-title{font-size:1.1rem;font-weight:700;color:var(--primary);margin-top:0;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.6rem}.ingredient-card,.machine-card,.product-card{background:var(--bg);border:1px solid var(--border);border-radius:14px;padding:.5rem;display:flex;flex-direction:column;align-items:center;gap:.3rem}.svg-icon{line-height:0}.fallback-emoji{font-size:1.8rem}.item-label{font-weight:600;font-size:.85rem}.item-count{font-size:1rem;font-weight:700;color:var(--primary)}.btn-tiny{padding:.2rem .6rem;border:none;border-radius:8px;cursor:pointer;font-size:.7rem;transition:.2s}.btn-tiny.success{background:var(--success);color:#fff}.btn-tiny.warning{background:var(--warning);color:#fff}.btn-tiny.primary{background:var(--primary);color:#fff}.btn-tiny:disabled{opacity:.4;cursor:default}.machine-icon{line-height:0}.machine-info{display:flex;flex-direction:column;align-items:center;gap:.2rem}.item-type{font-size:.7rem;color:var(--text-muted)}.product-card{min-height:70px;justify-content:center}.product-label{font-weight:600;font-size:.85rem}.fav-bar-bg{width:100%;height:8px;background:#e0e0e0;border-radius:4px;margin-bottom:.5rem}.fav-bar-fill{height:100%;background:linear-gradient(90deg,#ff4081,#ff80ab);border-radius:4px;transition:width .3s}.counter-panel{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:2px solid #FFB74D}.customer-card{display:flex;align-items:center;gap:1rem;background:#fff;border-radius:16px;padding:.8rem}.customer-info{flex:1}.customer-name{font-weight:700;font-size:1.1rem}.customer-want,.customer-patience,.customer-reward{font-size:.85rem;color:var(--text-muted)}.customer-actions{display:flex;flex-direction:column;gap:.3rem}.no-customer{text-align:center;color:var(--text-muted);padding:1rem}.spin-fly{animation:flySpin .6s ease-out}@keyframes flySpin{0%{transform:rotate(0) translateY(0)}50%{transform:rotate(360deg) translateY(-20px)}to{transform:rotate(720deg) translateY(0)}}@media (max-width:480px){.item-grid{grid-template-columns:repeat(2,1fr)}}
