:root{--bg: #fafafa;--bg-card: #ffffff;--border: #e5e7eb;--text: #1f2937;--text-secondary: #6b7280;--accent: #f97316;--accent-hover: #ea580c;--success: #16a34a;--danger: #dc2626}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}.app{min-height:100vh;max-width:480px;margin:0 auto}.menu-header{background:var(--accent);color:#fff;padding:1.5rem;text-align:center}.menu-header h1{font-size:1.4rem}.menu-category{padding:0 1rem;margin-top:1.5rem}.menu-category h2{font-size:1.1rem;color:var(--text-secondary);margin-bottom:.75rem}.menu-items{display:flex;flex-direction:column;gap:.75rem}.menu-item-card{display:flex;align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1rem}.item-info{flex:1}.item-info h3{font-size:.95rem;margin-bottom:.25rem}.item-desc{font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem}.item-meta{display:flex;gap:1rem;font-size:.85rem}.item-price{font-weight:700;color:var(--accent)}.item-time{color:var(--text-secondary)}.btn-add{width:36px;height:36px;border:2px solid var(--accent);color:var(--accent);background:none;border-radius:50%;font-size:1.2rem;font-weight:700;cursor:pointer;flex-shrink:0}.btn-add:hover{background:var(--accent);color:#fff}.cart-fab{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;border:none;padding:.75rem 2rem;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #00000026}.cart-fab:hover{background:var(--accent-hover)}.cart-page,.checkout-page,.order-status-page{padding:1.5rem}.cart-page h1,.checkout-page h1,.order-status-page h1{font-size:1.3rem;margin-bottom:1rem}.cart-items{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.cart-item{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1rem}.cart-item-header{display:flex;justify-content:space-between;align-items:center}.cart-item-header h3{font-size:.95rem}.btn-remove{background:none;border:none;color:var(--danger);cursor:pointer;font-weight:700}.cart-item-controls{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.qty-controls{display:flex;align-items:center;gap:.75rem}.qty-controls button{width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:var(--bg);cursor:pointer;font-size:1rem}.cart-item-price{font-weight:700;color:var(--accent)}.cart-notes{width:100%;margin-top:.5rem;padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;font-size:.85rem}.cart-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:700;padding:1rem 0;border-top:1px solid var(--border);margin-bottom:1rem}.btn-primary{width:100%;padding:.75rem;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.form-field{margin-bottom:1rem}.form-field label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.3rem}.form-field input{width:100%;padding:.6rem .75rem;border:1px solid var(--border);border-radius:8px;font-size:.9rem}.checkout-summary{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem}.checkout-summary h3{font-size:.95rem;margin-bottom:.5rem}.checkout-summary ul{list-style:none}.checkout-summary li{font-size:.85rem;color:var(--text-secondary);padding:.15rem 0}.error-msg{color:var(--danger);font-size:.85rem;margin-bottom:.5rem;padding:.5rem;background:#dc262614;border-radius:8px}.status-badge-lg{display:inline-block;padding:.5rem 1.5rem;background:var(--accent);color:#fff;border-radius:50px;font-weight:700;font-size:1.1rem;margin-bottom:1.5rem}.order-details{margin-bottom:1rem}.order-details p{font-size:.9rem;color:var(--text-secondary)}.order-items-list{margin-bottom:1rem}.order-item-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.9rem}.order-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:700;padding:1rem 0}.refresh-note{text-align:center;font-size:.8rem;color:var(--text-secondary);margin-top:1rem}.loading{text-align:center;padding:3rem;color:var(--text-secondary)}.page-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}
