@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.header{position:sticky;top:0;background:var(--bg-primary);box-shadow:var(--shadow-md);z-index:var(--z-sticky);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--bg-tertiary)}.header-content{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md) 0}.logo{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.5rem;font-weight:800;text-decoration:none;color:var(--text-primary);white-space:nowrap}.logo-icon{font-size:2rem}.logo-text{display:flex;gap:.25rem}.location-selector{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.location-selector:hover{background:var(--bg-tertiary)}.location-text{display:flex;flex-direction:column;line-height:1.2}.location-label{font-size:.75rem;color:var(--text-secondary)}.location-value{font-weight:600;color:var(--text-primary)}.search-bar{flex:1;max-width:600px;position:relative;display:flex;align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:2px solid transparent;transition:all var(--transition-base)}.search-bar:focus-within{border-color:var(--primary);background:var(--bg-primary);box-shadow:var(--shadow-md)}.search-icon{color:var(--text-tertiary)}.search-input{flex:1;padding:.75rem 0;border:none;background:transparent;font-size:1rem;color:var(--text-primary);outline:none}.search-input::placeholder{color:var(--text-tertiary)}.nav-links{display:flex;align-items:center;gap:var(--spacing-lg)}.nav-link{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-weight:600;color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-base);white-space:nowrap;background:transparent;border:none;cursor:pointer;font-size:1rem}.nav-link:hover{background:var(--bg-secondary);color:var(--primary)}.cart-button{position:relative}.cart-badge{position:absolute;top:-4px;right:-4px;background:var(--gradient-primary);color:#fff;font-size:.75rem;font-weight:700;padding:.125rem .375rem;border-radius:var(--radius-full);min-width:20px;text-align:center}.profile-link{background:var(--gradient-primary);color:#fff}.profile-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.signup-link{background:var(--gradient-primary);color:#fff}.signup-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);color:#fff}.mobile-menu-toggle{display:none;background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:var(--spacing-sm)}.mobile-search,.mobile-menu{display:none}@media(max-width:1024px){.location-selector{display:none}.search-bar{max-width:400px}}@media(max-width:768px){.header-content{gap:var(--spacing-md)}.search-bar{display:none}.mobile-search{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);margin-top:var(--spacing-sm);border:2px solid transparent;transition:all var(--transition-base)}.mobile-search:focus-within{border-color:var(--primary);background:var(--bg-primary)}.nav-links{display:none}.mobile-menu-toggle{display:block}.mobile-menu{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md) 0;border-top:1px solid var(--bg-tertiary);margin-top:var(--spacing-md)}.mobile-menu-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-base);background:transparent;border:none;cursor:pointer;font-size:1rem;font-weight:600;text-align:left}.mobile-menu-link:hover{background:var(--bg-secondary)}.logo-text{font-size:1.25rem}}@media(max-width:640px){.logo-text{font-size:1rem}.logo-icon{font-size:1.5rem}}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:450px;background:var(--bg-primary);box-shadow:var(--shadow-xl);z-index:var(--z-modal);display:flex;flex-direction:column;animation:slideInRight .3s ease}.cart-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--bg-tertiary);background:var(--bg-secondary)}.cart-title{display:flex;align-items:center;gap:var(--spacing-sm)}.cart-title h2{margin:0;font-size:1.5rem;font-weight:700}.cart-count{color:var(--text-secondary);font-size:1rem}.cart-close{background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-base)}.cart-close:hover{background:var(--bg-tertiary)}.cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;gap:var(--spacing-md)}.cart-empty h3{margin:0;font-size:1.5rem;color:var(--text-primary)}.cart-empty p{margin:0;color:var(--text-secondary)}.cart-items{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.cart-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--bg-tertiary);transition:all var(--transition-base)}.cart-item:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.cart-item-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.cart-item-header{display:flex;align-items:flex-start;gap:var(--spacing-xs)}.cart-item-name{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.cart-item-restaurant{margin:0;font-size:.75rem;color:var(--text-tertiary)}.cart-item-price{font-weight:700;color:var(--text-primary);margin-top:.25rem}.cart-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-sm)}.quantity-controls{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--bg-primary);border:2px solid var(--primary);border-radius:var(--radius-md);padding:.125rem}.quantity-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.quantity-value{min-width:28px;text-align:center;font-weight:700;color:var(--primary)}.remove-btn{background:transparent;border:none;color:var(--error);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-base)}.remove-btn:hover{background:#e74c3c1a;transform:scale(1.1)}.cart-summary{padding:var(--spacing-lg);background:var(--bg-secondary);border-top:1px solid var(--bg-tertiary)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;color:var(--text-secondary);font-size:.9375rem}.summary-row.total{font-size:1.25rem;font-weight:700;color:var(--text-primary);padding-top:var(--spacing-md)}.cart-footer{padding:var(--spacing-lg);border-top:1px solid var(--bg-tertiary)}.cart-footer .btn{width:100%}@media(max-width:640px){.cart-drawer{max-width:100%}}.restaurant-card{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-base);height:100%;display:flex;flex-direction:column}.restaurant-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.restaurant-image-container{position:relative;width:100%;height:200px;overflow:hidden}.restaurant-image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.restaurant-card:hover .restaurant-image{transform:scale(1.1)}.restaurant-offer{position:absolute;bottom:0;left:0;right:0;background:var(--gradient-primary);color:#fff;padding:var(--spacing-sm) var(--spacing-md);font-weight:700;font-size:.875rem;text-align:center;text-transform:uppercase;letter-spacing:.5px}.restaurant-info{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1}.restaurant-name{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.restaurant-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap}.rating{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--success);color:#fff;font-weight:700;font-size:.875rem;border-radius:var(--radius-sm)}.reviews{color:#ffffffe6;font-weight:500}.restaurant-cuisine{color:var(--text-secondary);font-size:.875rem;flex:1;text-align:right}.restaurant-details{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.detail-item{display:flex;align-items:center;gap:.25rem;color:var(--text-secondary);font-size:.875rem}.detail-item svg{color:var(--text-tertiary)}.restaurant-location{color:var(--text-secondary);font-size:.875rem;padding-top:var(--spacing-xs);border-top:1px solid var(--bg-tertiary);margin-top:auto}@media(max-width:640px){.restaurant-image-container{height:160px}.restaurant-name{font-size:1.125rem}}.home-page{min-height:100vh;padding-bottom:var(--spacing-3xl)}.hero-section{background:var(--gradient-primary);padding:var(--spacing-3xl) 0;text-align:center;color:#fff}.hero-title{font-size:3rem;font-weight:800;margin-bottom:var(--spacing-md);color:#fff}.hero-subtitle{font-size:1.25rem;opacity:.95;margin:0}.categories-section{padding:var(--spacing-2xl) 0}.section-title{font-size:1.75rem;font-weight:700;margin-bottom:var(--spacing-xl);color:var(--text-primary)}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-lg)}.category-card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base)}.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.category-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;border-radius:var(--radius-xl);transition:all var(--transition-base)}.category-card:hover .category-icon{transform:scale(1.1)}.category-name{font-weight:600;color:var(--text-primary);text-align:center}.offers-section{padding:var(--spacing-2xl) 0;background:var(--bg-secondary)}.offers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.offer-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-base)}.offer-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.offer-image{width:100%;height:180px;object-fit:cover}.offer-content{padding:var(--spacing-lg);background:var(--bg-primary)}.offer-title{font-size:1.5rem;font-weight:700;margin:0 0 var(--spacing-xs) 0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.offer-description{color:var(--text-secondary);margin:0 0 var(--spacing-md) 0}.offer-code{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:2px dashed var(--primary);border-radius:var(--radius-md);font-weight:700;color:var(--primary);font-family:Courier New,monospace}.restaurants-section{padding:var(--spacing-2xl) 0}.restaurants-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.filter-toggle{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-secondary);border:2px solid var(--bg-tertiary);border-radius:var(--radius-md);font-weight:600;color:var(--text-primary);cursor:pointer;transition:all var(--transition-base)}.filter-toggle:hover{border-color:var(--primary);color:var(--primary)}.filters-panel{background:var(--bg-secondary);padding:var(--spacing-xl);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg)}.filter-group h4{margin:0 0 var(--spacing-md) 0;font-size:1rem;font-weight:600;color:var(--text-primary)}.filter-options{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.cuisine-options{max-height:200px;overflow-y:auto}.filter-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:2px solid var(--bg-tertiary);border-radius:var(--radius-md);font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base)}.filter-btn:hover{border-color:var(--primary);color:var(--primary)}.filter-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.clear-filters-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--error);border:none;border-radius:var(--radius-md);color:#fff;font-weight:600;cursor:pointer;transition:all var(--transition-base);align-self:flex-start}.clear-filters-btn:hover{background:#c0392b;transform:translateY(-2px);box-shadow:var(--shadow-md)}.restaurants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl)}.no-results{text-align:center;padding:var(--spacing-3xl)}.no-results-icon{font-size:5rem;opacity:.5;margin-bottom:var(--spacing-lg)}.no-results h3{font-size:1.5rem;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.no-results p{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}@media(max-width:768px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.categories-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-md)}.category-icon{width:60px;height:60px;font-size:2rem}.offers-grid,.restaurants-grid{grid-template-columns:1fr}.filters-panel{padding:var(--spacing-md)}}@media(max-width:640px){.hero-section{padding:var(--spacing-xl) 0}.section-title{font-size:1.5rem}.categories-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.food-item-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base);border:1px solid var(--bg-tertiary)}.food-item-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary)}.food-item-content{display:flex;gap:var(--spacing-lg);justify-content:space-between}.food-item-details{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm)}.food-item-header{display:flex;align-items:center;gap:var(--spacing-sm)}.veg-indicator{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:2px solid;border-radius:2px}.veg-indicator.veg{border-color:#22c55e}.veg-indicator.non-veg{border-color:#ef4444}.veg-dot{width:8px;height:8px;border-radius:50%;background-color:currentColor}.veg-indicator.veg .veg-dot{color:#22c55e}.veg-indicator.non-veg .veg-dot{color:#ef4444}.bestseller-badge{font-size:.75rem;font-weight:600;color:var(--warning);display:flex;align-items:center;gap:.25rem}.food-item-name{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.food-item-price{font-size:1rem;font-weight:700;color:var(--text-primary)}.food-item-rating{display:inline-flex;align-items:center;gap:.25rem;color:var(--success);font-weight:600;font-size:.875rem}.food-item-description{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}.food-item-image-section{position:relative;flex-shrink:0}.food-item-image{width:140px;height:140px;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.food-item-image-placeholder{width:140px;height:140px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:var(--radius-md);font-size:3rem}.food-item-actions{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:100%;display:flex;justify-content:center}.btn-add{display:flex;align-items:center;gap:var(--spacing-xs);padding:.5rem 1.5rem;background:#fff;color:var(--primary);border:2px solid var(--primary);border-radius:var(--radius-md);font-weight:700;font-size:1rem;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md);text-transform:uppercase;letter-spacing:.5px}.btn-add:hover{background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.quantity-controls{display:flex;align-items:center;gap:var(--spacing-sm);background:#fff;border:2px solid var(--primary);border-radius:var(--radius-md);padding:.25rem;box-shadow:var(--shadow-md)}.quantity-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.quantity-btn:hover{background:var(--primary-dark);transform:scale(1.1)}.quantity-value{min-width:32px;text-align:center;font-weight:700;color:var(--primary);font-size:1rem}@media(max-width:640px){.food-item-content{flex-direction:column}.food-item-image-section{align-self:center}.food-item-image,.food-item-image-placeholder{width:120px;height:120px}}.restaurant-page{min-height:100vh;padding-bottom:var(--spacing-3xl)}.back-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-lg) 0;background:var(--bg-secondary);border:none;border-radius:var(--radius-md);font-weight:600;color:var(--text-primary);cursor:pointer;transition:all var(--transition-base)}.back-button:hover{background:var(--bg-tertiary);transform:translate(-4px)}.restaurant-header{position:relative;height:400px;margin-bottom:var(--spacing-2xl)}.restaurant-banner{width:100%;height:100%;object-fit:cover}.restaurant-header-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);padding:var(--spacing-2xl) 0}.restaurant-header-content{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--spacing-xl);color:#fff}.restaurant-title{font-size:2.5rem;font-weight:800;margin:0 0 var(--spacing-sm) 0;color:#fff}.restaurant-description{font-size:1.125rem;margin:0 0 var(--spacing-sm) 0;opacity:.95}.restaurant-cuisines{font-size:1rem;opacity:.85;margin-bottom:var(--spacing-sm)}.restaurant-location-info{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.9375rem;opacity:.85}.restaurant-stats{display:flex;gap:var(--spacing-lg)}.stat-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--spacing-md);border-radius:var(--radius-lg);text-align:center;min-width:120px}.rating-large{display:flex;align-items:center;justify-content:center;gap:.25rem;font-size:1.5rem;font-weight:700;color:gold;margin-bottom:var(--spacing-xs)}.stat-value{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-xs)}.stat-label{font-size:.875rem;opacity:.85}.offer-banner{background:var(--gradient-primary);padding:var(--spacing-md) 0;margin-bottom:var(--spacing-2xl)}.offer-banner-content{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);color:#fff;font-weight:700;font-size:1.125rem}.offer-icon{font-size:1.5rem}.restaurant-menu{padding:var(--spacing-xl) 0}.menu-title{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-2xl);color:var(--text-primary)}.menu-category{margin-bottom:var(--spacing-3xl)}.category-title{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-xl);color:var(--text-primary);padding-bottom:var(--spacing-sm);border-bottom:3px solid var(--primary);display:inline-block}.menu-items{display:flex;flex-direction:column;gap:var(--spacing-lg)}.no-menu{text-align:center;padding:var(--spacing-3xl);color:var(--text-secondary)}@media(max-width:1024px){.restaurant-header-content{flex-direction:column;align-items:flex-start}.restaurant-stats{width:100%;justify-content:space-between}.stat-card{min-width:auto;flex:1}}@media(max-width:768px){.restaurant-header{height:300px}.restaurant-title{font-size:2rem}.restaurant-description{font-size:1rem}.restaurant-stats{flex-wrap:wrap;gap:var(--spacing-sm)}.stat-card{padding:var(--spacing-sm)}.menu-title{font-size:1.5rem}.category-title{font-size:1.25rem}}@media(max-width:640px){.restaurant-header{height:250px}.restaurant-title{font-size:1.5rem}.offer-banner-content{font-size:1rem}}.checkout-page{min-height:100vh;padding:var(--spacing-2xl) 0;background:var(--bg-secondary)}.page-title{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-2xl);color:var(--text-primary)}.checkout-grid{display:grid;grid-template-columns:1fr 400px;gap:var(--spacing-2xl)}.checkout-forms{display:flex;flex-direction:column;gap:var(--spacing-xl)}.checkout-section{background:var(--bg-primary);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.section-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--bg-tertiary)}.address-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-weight:600;color:var(--text-primary);font-size:.9375rem}.form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.payment-methods{display:flex;flex-direction:column;gap:var(--spacing-md)}.payment-option{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-secondary);border:2px solid var(--bg-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base)}.payment-option:hover{border-color:var(--primary);background:var(--bg-primary)}.payment-option.active{border-color:var(--primary);background:var(--bg-primary);box-shadow:var(--shadow-sm)}.payment-option input[type=radio]{width:20px;height:20px;cursor:pointer}.payment-option span{font-weight:600;color:var(--text-primary)}.order-summary-section{position:sticky;top:100px;height:fit-content}.order-summary-card{background:var(--bg-primary);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.order-summary-card h2{margin:0 0 var(--spacing-lg) 0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.order-items{display:flex;flex-direction:column;gap:var(--spacing-md);max-height:300px;overflow-y:auto;margin-bottom:var(--spacing-md)}.summary-item{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.item-details{display:flex;align-items:flex-start;gap:var(--spacing-sm);flex:1}.item-name{font-weight:600;color:var(--text-primary);font-size:.9375rem}.item-quantity{font-size:.875rem;color:var(--text-secondary)}.item-price{font-weight:700;color:var(--text-primary);white-space:nowrap}.price-breakdown{display:flex;flex-direction:column;gap:var(--spacing-sm)}.price-row{display:flex;justify-content:space-between;align-items:center;color:var(--text-secondary);font-size:.9375rem}.price-row.total{font-size:1.25rem;font-weight:700;color:var(--text-primary);padding-top:var(--spacing-sm)}.place-order-btn{width:100%;margin-top:var(--spacing-lg)}@media(max-width:1024px){.checkout-grid{grid-template-columns:1fr}.order-summary-section{position:static}}@media(max-width:640px){.form-row{grid-template-columns:1fr}.checkout-section{padding:var(--spacing-md)}.page-title{font-size:1.5rem}}.orders-page{min-height:100vh;padding:var(--spacing-2xl) 0;background:var(--bg-secondary)}.empty-orders{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.empty-icon{font-size:5rem;opacity:.5}.orders-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.order-card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.order-card:hover{box-shadow:var(--shadow-lg)}.order-header{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);cursor:pointer;transition:all var(--transition-base)}.order-header:hover{background:var(--bg-secondary)}.order-info{flex:1}.order-id{font-weight:700;font-size:1.125rem;color:var(--text-primary);margin-bottom:.25rem}.order-date{font-size:.875rem;color:var(--text-secondary)}.order-status{display:flex;align-items:center;gap:var(--spacing-xs);font-weight:700;font-size:.9375rem}.status-text{white-space:nowrap}.order-total{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.expand-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-base)}.expand-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.order-details{padding:0 var(--spacing-lg) var(--spacing-lg);animation:fadeIn .3s ease}.order-details h4{margin:0 0 var(--spacing-md) 0;font-size:1rem;font-weight:700;color:var(--text-primary)}.order-items{margin-bottom:var(--spacing-lg)}.order-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.item-info{display:flex;align-items:flex-start;gap:var(--spacing-sm);flex:1}.item-name{font-weight:600;color:var(--text-primary)}.item-restaurant{font-size:.875rem;color:var(--text-secondary)}.item-quantity{color:var(--text-secondary);font-weight:600}.item-price{font-weight:700;color:var(--text-primary);min-width:80px;text-align:right}.order-address,.order-payment{margin-bottom:var(--spacing-lg)}.order-address p,.order-payment p{margin:0;color:var(--text-secondary);line-height:1.6}.payment-method-text{font-weight:600;font-size:1rem}@media(max-width:768px){.order-header{flex-wrap:wrap;gap:var(--spacing-md)}.order-info{flex-basis:100%}.order-status{flex:1}.order-total{font-size:1.125rem}}@media(max-width:640px){.order-item{flex-wrap:wrap}.item-info{flex-basis:100%}.item-quantity,.item-price{flex:1}}.order-success-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl) 0;background:var(--gradient-primary)}.success-card{background:var(--bg-primary);padding:var(--spacing-3xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);text-align:center;max-width:600px;animation:fadeIn .5s ease}.success-icon{color:var(--success);margin-bottom:var(--spacing-xl);animation:pulse 2s ease infinite}.success-title{font-size:2rem;font-weight:800;margin-bottom:var(--spacing-md);color:var(--text-primary)}.success-message{font-size:1.125rem;color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.order-id-display{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-2xl)}.order-id-label{font-weight:600;color:var(--text-secondary)}.order-id-value{font-weight:700;font-size:1.25rem;color:var(--primary);font-family:Courier New,monospace}.success-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-2xl);flex-wrap:wrap}.delivery-info{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);padding-top:var(--spacing-xl);border-top:2px solid var(--bg-tertiary)}.info-item{display:flex;align-items:center;gap:var(--spacing-md);text-align:left}.info-icon{font-size:2.5rem}.info-content h4{margin:0 0 .25rem;font-size:1rem;font-weight:700;color:var(--text-primary)}.info-content p{margin:0;color:var(--text-secondary);font-size:.9375rem}@media(max-width:640px){.success-card{padding:var(--spacing-2xl) var(--spacing-lg)}.success-title{font-size:1.5rem}.success-actions{flex-direction:column}.success-actions .btn{width:100%}.delivery-info{grid-template-columns:1fr}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl) var(--spacing-md);background:var(--gradient-primary)}.auth-container{width:100%;max-width:480px}.auth-card{background:var(--bg-primary);padding:var(--spacing-3xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);animation:fadeIn .5s ease}.auth-header{text-align:center;margin-bottom:var(--spacing-2xl)}.auth-logo{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.auth-logo h1{font-size:2rem;font-weight:800;margin:0}.auth-header h2{font-size:1.75rem;font-weight:700;margin:0 0 var(--spacing-sm) 0;color:var(--text-primary)}.auth-header p{color:var(--text-secondary);margin:0}.error-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#e74c3c1a;border:1px solid var(--error);border-radius:var(--radius-md);color:var(--error);margin-bottom:var(--spacing-lg);font-size:.9375rem}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--text-primary)}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon svg{position:absolute;left:var(--spacing-md);color:var(--text-tertiary);pointer-events:none}.input-with-icon .input{padding-left:3rem}.auth-submit{width:100%;margin-top:var(--spacing-md)}.auth-footer{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--bg-tertiary)}.auth-footer p{margin:0;color:var(--text-secondary)}.auth-link{color:var(--primary);font-weight:600;text-decoration:none;transition:color var(--transition-base)}.auth-link:hover{color:var(--primary-dark);text-decoration:underline}.demo-credentials{margin-top:var(--spacing-xl);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:4px solid var(--primary)}.demo-title{font-weight:700;color:var(--text-primary);margin:0 0 var(--spacing-xs) 0}.demo-credentials p{margin:.25rem 0;font-size:.875rem;color:var(--text-secondary);font-family:Courier New,monospace}@media(max-width:640px){.auth-card{padding:var(--spacing-2xl) var(--spacing-lg)}.auth-logo h1,.auth-header h2{font-size:1.5rem}}.profile-page{min-height:100vh;padding:var(--spacing-2xl) 0;background:var(--bg-secondary)}.profile-container{max-width:800px;margin:0 auto}.profile-header{text-align:center;margin-bottom:var(--spacing-2xl)}.profile-avatar{width:120px;height:120px;margin:0 auto var(--spacing-lg);background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-lg)}.profile-header h1{font-size:2rem;font-weight:700;margin:0;color:var(--text-primary)}.profile-card{background:var(--bg-primary);padding:var(--spacing-2xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.profile-section{margin-bottom:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.section-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.edit-actions{display:flex;gap:var(--spacing-sm)}.profile-info{display:flex;flex-direction:column;gap:var(--spacing-xl)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-item label{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.info-item p{margin:0;font-size:1.125rem;color:var(--text-primary);font-weight:500}.info-note{font-size:.75rem;color:var(--text-tertiary);font-style:italic}.profile-actions{display:flex;flex-direction:column;gap:var(--spacing-md)}.logout-btn{background:var(--error);color:#fff;border-color:var(--error)}.logout-btn:hover{background:#c0392b;border-color:#c0392b}@media(max-width:640px){.profile-card{padding:var(--spacing-lg)}.profile-avatar{width:100px;height:100px}.profile-header h1{font-size:1.5rem}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.edit-actions{width:100%}.edit-actions button{flex:1}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1}.footer{background:var(--dark-bg-secondary);color:var(--dark-text-primary);padding:var(--spacing-3xl) 0 var(--spacing-lg);margin-top:var(--spacing-3xl)}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.footer-section h3,.footer-section h4{margin-bottom:var(--spacing-md);color:#fff}.footer-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.5rem;font-weight:800}.footer-description{color:var(--dark-text-secondary);line-height:1.6}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-links a{color:var(--dark-text-secondary);text-decoration:none;transition:color var(--transition-base)}.footer-links a:hover{color:var(--primary)}.social-links{display:flex;gap:var(--spacing-md)}.social-link{font-size:1.5rem;text-decoration:none;transition:transform var(--transition-base)}.social-link:hover{transform:scale(1.2)}.footer-bottom{padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1);text-align:center;color:var(--dark-text-secondary)}@media(max-width:1024px){.footer-content{grid-template-columns:1fr 1fr}}@media(max-width:640px){.footer-content{grid-template-columns:1fr;gap:var(--spacing-xl)}.footer{padding:var(--spacing-2xl) 0 var(--spacing-lg)}}:root{--primary: #ff6b35;--primary-dark: #e85a2a;--primary-light: #ff8c66;--secondary: #4ecdc4;--accent: #f7b731;--gradient-primary: linear-gradient(135deg, #ff6b35 0%, #f7b731 100%);--gradient-secondary: linear-gradient(135deg, #4ecdc4 0%, #44a3f7 100%);--gradient-dark: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #e9ecef;--text-primary: #1a1a1a;--text-secondary: #6c757d;--text-tertiary: #adb5bd;--dark-bg-primary: #0f0f1e;--dark-bg-secondary: #1a1a2e;--dark-bg-tertiary: #252541;--dark-text-primary: #ffffff;--dark-text-secondary: #b8b8d1;--dark-text-tertiary: #7575a3;--success: #2ecc71;--warning: #f39c12;--error: #e74c3c;--info: #3498db;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .2);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}.dark-mode{--bg-primary: var(--dark-bg-primary);--bg-secondary: var(--dark-bg-secondary);--bg-tertiary: var(--dark-bg-tertiary);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--text-tertiary: var(--dark-text-tertiary)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:var(--spacing-md)}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);text-decoration:none;white-space:nowrap}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-secondary)}.btn-outline{background:transparent;border:2px solid var(--primary);color:var(--primary)}.btn-outline:hover{background:var(--primary);color:#fff}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.card-glass{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.input{width:100%;padding:.75rem 1rem;font-size:1rem;font-family:inherit;background:var(--bg-secondary);border:2px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-base)}.input:focus{outline:none;border-color:var(--primary);background:var(--bg-primary)}.input::placeholder{color:var(--text-tertiary)}.badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.25rem .75rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-full);white-space:nowrap}.badge-primary{background:var(--primary);color:#fff}.badge-success{background:var(--success);color:#fff}.badge-warning{background:var(--warning);color:#fff}.badge-veg{background:#22c55e;color:#fff}.badge-non-veg{background:#ef4444;color:#fff}.rating{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--success);color:#fff;font-weight:600;font-size:.875rem;border-radius:var(--radius-sm)}.rating-star{width:14px;height:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .5s ease}.slide-in-right{animation:slideInRight .3s ease}.slide-in-left{animation:slideInLeft .3s ease}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.spin{animation:spin 1s linear infinite}@media(max-width:1024px){.container{padding:0 var(--spacing-md)}.grid-cols-4{grid-template-columns:repeat(3,1fr)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}}@media(max-width:768px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media(max-width:640px){.container{padding:0 var(--spacing-sm)}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}h1{font-size:1.5rem}h2{font-size:1.25rem}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);animation:fadeIn .2s ease}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.divider{height:1px;background:var(--bg-tertiary);margin:var(--spacing-lg) 0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
