.stepper{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-2xl);padding:0 var(--spacing-md)}.stepper-wrapper{display:flex;align-items:center}.stepper-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.stepper-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;max-width:70px;display:none}.stepper-item.active .stepper-label,.stepper-item.completed .stepper-label{color:var(--color-text-secondary)}@media (min-width: 768px){.stepper-label{display:block}}.btn-icon-wrapper{display:flex;align-items:center;justify-content:center}.restaurant-header{position:relative;padding:var(--spacing-2xl) var(--spacing-lg);text-align:center;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);background-size:cover;background-position:center;overflow:hidden}.restaurant-header.minimal{padding:var(--spacing-md) var(--spacing-lg);border-bottom:none}.header-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(248,246,246,.4) 0%,var(--color-bg-primary) 100%);z-index:0}.header-content{position:relative;z-index:1;max-width:600px;margin:0 auto}.brand-identity{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.brand-logo{width:80px;height:80px;border-radius:var(--radius-xl);object-fit:cover;box-shadow:var(--shadow-lg);border:3px solid rgba(255,255,255,.2)}.brand-logo.small{width:40px;height:40px;border-radius:var(--radius-md);border-width:2px}.brand-logo-placeholder{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:var(--radius-xl);font-size:var(--font-size-3xl);font-weight:700;color:#fff;box-shadow:var(--shadow-lg),var(--shadow-glow)}.brand-logo-placeholder.small{width:40px;height:40px;font-size:var(--font-size-lg);border-radius:var(--radius-md)}.brand-text{text-align:center}.brand-name{font-size:var(--font-size-3xl);font-weight:700;margin:0;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.minimal .brand-name{font-size:var(--font-size-lg);background:none;-webkit-text-fill-color:var(--color-text-primary)}.brand-slogan{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:var(--spacing-sm) 0 0 0;font-weight:300;letter-spacing:.02em}.reservation-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:#ea2a3314;border:1px solid rgba(234,42,51,.2);border-radius:var(--radius-full);font-size:var(--font-size-sm);color:var(--color-primary)}.badge-icon{font-size:var(--font-size-base)}.badge-text{font-weight:500}.header-info-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.info-chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:#ffffff0d;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.hidden-mobile{display:none}@media (min-width: 640px){.hidden-mobile{display:inline-flex}}.header-brand{display:flex;align-items:center;gap:var(--spacing-md)}@media (min-width: 768px){.brand-identity{flex-direction:row;text-align:left}.brand-text{text-align:left}.brand-logo,.brand-logo-placeholder{width:100px;height:100px;font-size:var(--font-size-4xl)}.brand-name{font-size:var(--font-size-4xl)}}.form-input-error{border-color:var(--color-error)}.form-input-error:focus{box-shadow:0 0 0 3px #ef444433}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.modal-title{font-size:var(--font-size-xl);font-weight:600}.modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-sm{max-width:400px}.modal-lg{max-width:700px}.modal-body{color:var(--color-text-secondary)}.step-content{max-width:500px;margin:0 auto}.step-header{text-align:center;margin-bottom:var(--spacing-2xl)}.step-header h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.step-header p{color:var(--color-text-muted);margin-bottom:0}.customer-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.consent-selection{margin-top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.consent-item{display:flex;align-items:flex-start;gap:var(--spacing-md);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.consent-item input[type=checkbox]{margin-top:4px;width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}.consent-item.error{color:var(--color-error)}.kvkk-link{background:none;border:none;padding:0;color:var(--color-primary-light);text-decoration:underline;font-weight:500;cursor:pointer;font-size:inherit;font-family:inherit;transition:color var(--transition-fast)}.kvkk-link:hover{color:var(--color-primary)}.kvkk-content{max-height:60vh;overflow-y:auto;padding-right:var(--spacing-md)}.kvkk-content h4{color:var(--color-text-primary);margin:var(--spacing-lg) 0 var(--spacing-sm);font-size:var(--font-size-base)}.kvkk-content h4:first-child{margin-top:0}.kvkk-content p{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.6;margin-bottom:var(--spacing-md)}@media (max-width: 480px){.form-row{grid-template-columns:1fr}}.datetime-step{max-width:600px}.datetime-section{margin-bottom:var(--spacing-2xl)}.section-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.section-title svg{color:var(--color-primary-light)}.date-scroll{overflow-x:auto;margin:0 calc(var(--spacing-lg) * -1);padding:0 var(--spacing-lg);scrollbar-width:none;-ms-overflow-style:none}.date-scroll::-webkit-scrollbar{display:none}.date-list{display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.date-card{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);min-width:80px;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);position:relative}.date-card:hover{border-color:var(--color-primary);background:#ea2a330d}.date-card.selected{background:var(--gradient-primary);border-color:transparent}.date-card.today{border-color:var(--color-secondary)}.date-day{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase}.date-card.selected .date-day{color:#fffc}.date-number{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary)}.date-card.selected .date-number{color:#fff}.date-month{font-size:var(--font-size-xs);color:var(--color-text-muted)}.date-card.selected .date-month{color:#fffc}.date-badge{position:absolute;top:-8px;right:-8px;padding:2px 8px;font-size:10px;font-weight:600;background:var(--color-secondary);color:#fff;border-radius:var(--radius-full)}.time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--spacing-sm)}.time-slot{padding:var(--spacing-md);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:500;text-align:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.time-slot:hover:not(.disabled){border-color:var(--color-primary);background:#ea2a330d}.time-slot.selected{background:var(--gradient-primary);color:#fff;border-color:transparent}.time-slot.disabled{opacity:.3;cursor:not-allowed}.empty-time-slots{grid-column:1 / -1;padding:var(--spacing-xl);background:var(--color-bg-secondary);border:1px dashed var(--color-border);border-radius:var(--radius-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.guest-step{text-align:center}.guest-selector{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.guest-btn{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast)}.guest-btn:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);transform:scale(1.1)}.guest-btn:disabled{opacity:.3;cursor:not-allowed}.guest-display{display:flex;flex-direction:column;align-items:center}.guest-count{font-size:72px;font-weight:700;line-height:1;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.guest-label{font-size:var(--font-size-lg);color:var(--color-text-muted);margin-top:var(--spacing-xs)}.guest-icons{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl);min-height:40px}.guest-icon{color:var(--color-primary-light)}.guest-note{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-muted)}.table-step{max-width:700px}.table-legend{display:flex;justify-content:center;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.legend-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-muted)}.legend-dot{width:12px;height:12px;border-radius:var(--radius-full)}.legend-dot.available{background:var(--color-success)}.legend-dot.occupied{background:var(--color-text-muted)}.legend-dot.selected{background:var(--color-primary)}.table-section{margin-bottom:var(--spacing-2xl)}.table-type-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.table-type-icon{font-size:24px}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-md)}.table-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xl) var(--spacing-md);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-base);text-align:center;overflow:hidden}.table-status-bar{position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-border);transition:background var(--transition-base)}.table-card.available{border-color:#10b9814d}.table-card.available .table-status-bar{background:var(--color-success)}.table-card.available:hover{border-color:var(--color-success);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.table-card.occupied{background:var(--color-bg-tertiary);border-color:var(--color-border);opacity:.7;cursor:not-allowed;filter:grayscale(1)}.table-card.occupied .table-status-bar{background:var(--color-text-muted)}.table-card.selected{border-color:var(--color-primary);background:#ea2a330a;box-shadow:var(--shadow-glow)}.table-card.selected .table-status-bar{background:var(--color-primary)}.table-icon{font-size:36px;margin-top:var(--spacing-xs)}.table-name{font-weight:600;color:var(--color-text-primary)}.table-capacity{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-muted)}.table-location{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.table-status-label{margin-top:auto;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:var(--radius-sm)}.table-status-label.available{color:var(--color-success);background:#10b9811a}.table-status-label.occupied{color:var(--color-text-muted);background:#0000000d}.table-status-label.selected{color:var(--color-primary);background:#ea2a331a}.table-check-badge{position:absolute;top:12px;right:12px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;border-radius:var(--radius-full);box-shadow:0 2px 4px #ea2a334d;animation:fadeIn .2s ease-out}.menu-step{max-width:700px}.menu-summary{padding:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);font-weight:600}.summary-total{font-size:var(--font-size-xl);color:var(--color-secondary)}.summary-items{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.summary-item{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:var(--color-bg-tertiary);border-radius:var(--radius-full);color:var(--color-text-secondary)}.menu-section{margin-bottom:var(--spacing-2xl)}.menu-category-title{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.menu-card{position:relative;display:block;width:100%;padding:var(--spacing-lg);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left;height:100%}.menu-card:hover{border-color:var(--color-primary);background:#ea2a3305;transform:translateY(-2px);box-shadow:var(--shadow-md)}.menu-card.selected{border-color:var(--color-primary);background:#ea2a330d;box-shadow:0 0 0 2px #ea2a331a}.menu-card-content{display:flex;align-items:center;gap:var(--spacing-md);height:100%}.menu-emoji{font-size:32px;flex-shrink:0}.menu-info{flex:1;min-width:0;padding-right:var(--spacing-sm)}.menu-name{display:block;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.menu-description{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.menu-price-wrapper{flex-shrink:0}.menu-price-tag{display:inline-block;padding:4px 12px;background:#ea2a330d;border:1px solid rgba(234,42,51,.1);border-radius:var(--radius-sm);font-weight:700;color:var(--color-primary);font-size:var(--font-size-sm);white-space:nowrap}.menu-card.selected .menu-price-tag{background:var(--color-secondary);color:#fff;border-color:transparent}.menu-check{position:absolute;top:-8px;right:-8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;border-radius:var(--radius-full);border:2px solid var(--color-bg-primary);z-index:2;animation:scaleIn .2s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.menu-note{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center}@media (max-width: 640px){.menu-grid{grid-template-columns:1fr}}.consent-step{max-width:550px}.consent-cards{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.consent-card{display:block;padding:var(--spacing-lg);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast)}.consent-card:hover{border-color:var(--color-primary)}.consent-card.checked{border-color:var(--color-primary);background:#6366f11a}.consent-card.error{border-color:var(--color-error)}.consent-checkbox{position:absolute;opacity:0;pointer-events:none}.consent-content{display:flex;gap:var(--spacing-md);align-items:flex-start}.consent-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border-radius:var(--radius-lg);color:var(--color-primary-light)}.consent-icon.marketing{color:var(--color-secondary)}.consent-text{flex:1}.consent-title{display:block;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.consent-title .required{color:var(--color-error);margin-left:2px}.consent-description{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.consent-check{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:var(--radius-md);color:transparent;transition:all var(--transition-fast)}.consent-card.checked .consent-check{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.consent-info{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:#3b82f61a;border-radius:var(--radius-lg);font-size:var(--font-size-sm);color:var(--color-info)}.consent-info svg{flex-shrink:0;margin-top:2px}.confirmation-step{max-width:550px}.success-icon{width:80px;height:80px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:#22c55e1a;border-radius:var(--radius-full);color:var(--color-success)}.summary-card{padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.summary-section{padding:var(--spacing-lg) 0;border-bottom:1px solid var(--color-border-light)}.summary-section:last-child{border-bottom:none;padding-bottom:0}.summary-section:first-child{padding-top:0}.restaurant-info{text-align:center}.restaurant-name{font-size:var(--font-size-xl);font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.summary-row{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.summary-row:last-child{margin-bottom:0}.summary-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border-radius:var(--radius-md);color:var(--color-primary-light)}.summary-info{flex:1}.summary-label{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:2px}.summary-value{display:block;font-weight:500;color:var(--color-text-primary)}.menu-section .section-title{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.menu-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.menu-item{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.menu-item-price{color:var(--color-secondary)}.menu-total{display:flex;justify-content:space-between;padding-top:var(--spacing-sm);margin-top:var(--spacing-sm);border-top:1px solid var(--color-border);font-weight:600}.menu-total span:last-child{color:var(--color-secondary)}.confirmation-actions{text-align:center;margin-bottom:var(--spacing-lg)}.confirmation-actions .btn{width:100%}.confirmation-footer{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex;flex-direction:column;gap:var(--spacing-xs)}.confirmation-footer p{margin:0}.confirmation-note{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.reservation-page{min-height:100vh;display:flex;flex-direction:column}.reservation-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);color:var(--color-text-muted)}.reservation-header{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.restaurant-title{font-size:var(--font-size-3xl);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-xs)}.restaurant-subtitle{color:var(--color-text-muted);font-size:var(--font-size-lg);margin:0}.reservation-main{flex:1;padding:var(--spacing-2xl) var(--spacing-lg)}.reservation-container{max-width:800px;margin:0 auto}.step-wrapper{margin-bottom:var(--spacing-2xl)}.step-navigation{display:flex;justify-content:center;gap:var(--spacing-md);max-width:400px;margin:0 auto}.step-navigation .btn{flex:1}.reservation-footer{padding:var(--spacing-lg);text-align:center;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm)}.reservation-footer p{margin:0}.success-page{text-align:center;padding:var(--spacing-2xl)}.success-icon-large{width:100px;height:100px;margin:0 auto var(--spacing-xl);display:flex;align-items:center;justify-content:center;background:#22c55e26;border-radius:var(--radius-full);color:var(--color-success)}.success-page h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-md)}.success-page>p{color:var(--color-text-muted);max-width:400px;margin:0 auto var(--spacing-xl)}.success-details{padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);text-align:left;max-width:400px;margin-left:auto;margin-right:auto}.success-details p{margin-bottom:var(--spacing-sm);color:var(--color-text-secondary)}.success-details p:last-child{margin-bottom:0}.success-details strong{color:var(--color-text-primary)}@media (max-width: 480px){.restaurant-title{font-size:var(--font-size-2xl)}.reservation-main{padding:var(--spacing-xl) var(--spacing-md)}.step-navigation{flex-direction:column-reverse}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.login-container{width:100%;max-width:420px}.login-card{padding:var(--spacing-2xl)}.login-header{text-align:center;margin-bottom:var(--spacing-2xl)}.login-logo{width:80px;height:80px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:var(--radius-xl);color:#fff}.login-header h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm)}.login-header p{color:var(--color-text-muted);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.login-error{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.login-button{width:100%;margin-top:var(--spacing-md)}.login-demo{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border);text-align:center}.login-demo p{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.login-demo code{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-secondary)}.login-footer{margin-top:var(--spacing-lg);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.login-footer a{color:var(--color-primary);font-weight:500}.login-footer a:hover{text-decoration:underline}.restaurant-info-manager{max-width:800px;margin:0 auto}.info-card{padding:var(--spacing-xl);margin-top:var(--spacing-xl)}.restaurant-info-manager .settings-header{margin-bottom:var(--spacing-2xl);border-bottom:2px solid var(--color-border-light);padding-bottom:var(--spacing-lg)}.restaurant-info-manager h2{font-size:var(--font-size-2xl);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.restaurant-info-manager p{color:var(--color-text-muted)}.save-btn{min-width:200px}.logo-upload-section{display:flex;align-items:center;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px dashed var(--color-border)}.logo-preview-container{position:relative;width:100px;height:100px;border-radius:var(--radius-xl);overflow:hidden;background:var(--color-bg-tertiary);border:2px solid var(--color-border);cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.logo-preview-container:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.logo-preview-img{width:100%;height:100%;object-fit:cover}.logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);background:var(--color-bg-secondary)}.logo-upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--font-size-xs);font-weight:600;opacity:0;transition:opacity var(--transition-base);cursor:pointer}.logo-preview-container:hover .logo-upload-overlay{opacity:1}.logo-info h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs);color:var(--color-text-primary)}.logo-info p{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:300px}.reservation-link-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:0 4px 12px #0000000d;border-left:4px solid var(--color-success)}.reservation-link-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.reservation-link-header h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0}.link-badge{background:#def7ec;color:#03543f;font-size:var(--font-size-xs);font-weight:600;padding:4px 10px;border-radius:var(--radius-full)}.link-display-box{display:flex;gap:var(--spacing-md);align-items:center;background:var(--color-bg-secondary);padding:var(--spacing-sm);border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.link-input{flex:1;border:none;background:transparent;font-family:monospace;font-size:var(--font-size-sm);color:var(--color-text-primary);outline:none;width:100%}.copy-btn{white-space:nowrap}.skeleton-loader p{color:var(--color-text-muted);font-style:italic}.menu-management{display:flex;flex-direction:column;gap:var(--spacing-2xl)}.menu-management .settings-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--color-border-light);padding-bottom:var(--spacing-xl)}.menu-categories-bar{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);overflow-x:auto;background:#fff}.category-tab{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:none;border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--transition-base)}.category-tab:hover{background:var(--color-bg-secondary);color:var(--color-primary)}.category-tab.active{background:#ea2a3314;border-color:#ea2a3333;color:var(--color-primary)}.item-count{font-size:var(--font-size-xs);background:var(--color-bg-primary);padding:2px 8px;border-radius:var(--radius-full);border:1px solid var(--color-border-light);color:var(--color-text-muted)}.category-tab.active .item-count{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.menu-items-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.menu-list-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background:#fff;transition:all var(--transition-base)}.menu-list-item:hover{transform:translate(4px);box-shadow:var(--shadow-md)}.item-main-info{display:flex;align-items:center;gap:var(--spacing-xl);flex:1}.item-image-mini{width:80px;height:80px;background:var(--color-bg-tertiary);border-radius:var(--radius-md);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid var(--color-border-light)}.item-image-mini img{width:100%;height:100%;object-fit:cover}.item-text-info{display:flex;flex-direction:column;gap:6px}.item-title-row{display:flex;align-items:center;gap:var(--spacing-md)}.item-title-row h3{font-size:var(--font-size-md);margin:0;color:var(--color-text-primary)}.item-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;max-width:450px;line-height:1.5;opacity:.9}.item-stats{display:flex;gap:var(--spacing-2xl);padding:0 var(--spacing-2xl);border-right:1px solid var(--color-border-light);border-left:1px solid var(--color-border-light)}.stat-group{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:10px;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.stat-value{font-weight:700;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.stat-value.prep-time{color:#f59e0b}.stat-value.price{color:var(--color-primary)}.item-list-actions{display:flex;gap:var(--spacing-sm);padding-left:var(--spacing-xl)}.action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary)}.action-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#ea2a330d}.action-btn.delete:hover{border-color:var(--color-error);color:var(--color-error);background:#ef44440d}.empty-menu-state{text-align:center;padding:var(--spacing-3xl);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.empty-icon{font-size:48px;margin-bottom:var(--spacing-sm)}.menu-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.image-upload-area{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.image-preview-large{width:100%;height:200px;background:var(--color-bg-secondary);border:2px dashed var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center}.image-preview-large img{width:100%;height:100%;object-fit:cover}.upload-placeholder{color:var(--color-text-muted)}.hidden-input{display:none}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.reservation-settings{display:flex;flex-direction:column;gap:var(--spacing-2xl)}.settings-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:var(--spacing-xl)}@media (max-width: 1024px){.settings-grid{grid-template-columns:1fr}}.settings-card{padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);height:fit-content}.card-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border-light);color:var(--color-text-primary)}.rule-notice{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:#ea2a330a;border-left:3px solid var(--color-primary);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);animation:fadeInSlide .4s ease-out}.rule-notice svg{color:var(--color-primary);flex-shrink:0;margin-top:2px}.rule-notice p{font-size:var(--font-size-xs);line-height:1.5;color:var(--color-text-secondary);margin:0}.rule-notice strong{color:var(--color-primary);font-weight:700}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.hours-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.hour-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;transition:opacity var(--transition-base)}.hour-row.closed{opacity:.6}.day-info{display:flex;align-items:center;gap:var(--spacing-md);min-width:250px}.day-name{font-weight:600;color:var(--color-text-secondary);min-width:100px}.status-text{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;color:var(--color-text-muted)}.hour-row.closed .status-text{color:var(--color-error)}.hour-inputs{display:flex;align-items:center;gap:var(--spacing-sm)}.time-input{padding:8px 12px;width:100px;text-align:center}.hour-sep{color:var(--color-text-muted);font-weight:700}.switch{position:relative;display:inline-block;width:40px;height:20px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-border);transition:.4s}.slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:var(--color-primary)}input:focus+.slider{box-shadow:0 0 1px var(--color-primary)}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.special-days-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.special-day-item{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.special-day-info{display:flex;justify-content:space-between;align-items:center}.special-day-header{display:flex;flex-direction:column}.special-day-header strong{color:var(--color-text-primary)}.special-day-header span{font-size:var(--font-size-xs);color:var(--color-text-muted)}.special-day-actions{display:flex;align-items:center;gap:var(--spacing-lg)}.time-input-mini{padding:4px 8px;width:75px;font-size:var(--font-size-xs);text-align:center}.toggle-link{background:none;border:none;color:var(--color-primary);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);background:#ea2a330d}.toggle-link.closed{color:var(--color-error);background:#ef44440d}.delete-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:16px;transition:color var(--transition-fast)}.delete-btn:hover{color:var(--color-error)}.empty-special-days{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);border:1px dashed var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.holiday-picker h4{font-size:var(--font-size-sm);margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}.holiday-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.holiday-badge{background:var(--color-bg-tertiary);border:1px solid var(--color-border);padding:6px 12px;border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.holiday-badge:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:#ea2a330d}.holiday-badge:disabled{opacity:.5;cursor:not-allowed;text-decoration:line-through}.interval-selector{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.interval-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-xl);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);position:relative;text-align:left;width:100%}.interval-card:hover{border-color:var(--color-primary);transform:translate(4px);background:#fff}.interval-card.active{background:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-md);border-width:2px}.interval-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-bg-tertiary);border-radius:var(--radius-md);color:var(--color-text-muted);transition:all var(--transition-base)}.interval-card.active .interval-icon{background:#ea2a331a;color:var(--color-primary)}.interval-content{display:flex;flex-direction:column}.interval-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-primary);line-height:1.2}.interval-unit{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:600}.active-badge{position:absolute;right:20px;width:24px;height:24px;background:var(--color-primary);color:#fff;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:var(--shadow-glow);animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.info-tip{background:#6366f10d;border-left:4px solid var(--color-primary)}.info-tip h4{color:var(--color-primary);margin-bottom:var(--spacing-xs)}.info-tip p{font-size:var(--font-size-xs);line-height:1.6}.settings-message{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;margin-bottom:var(--spacing-lg)}.settings-message.success{background:#10b9811a;color:var(--color-success);border:1px solid rgba(16,185,129,.2)}.settings-message.error{background:#ef44441a;color:var(--color-error);border:1px solid rgba(239,68,68,.2)}.dashboard-sidebar{width:260px;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:1000}.sidebar-header{padding:var(--spacing-xl);border-bottom:1px solid var(--color-border);text-align:center}.sidebar-logo{width:64px;height:64px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);border-radius:var(--radius-xl);color:#fff;box-shadow:var(--shadow-glow)}.sidebar-header h2{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs)}.sidebar-email{font-size:var(--font-size-sm);color:var(--color-text-muted)}.sidebar-nav{flex:1;padding:var(--spacing-lg)}.nav-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast);background:transparent;border:none;width:100%;font-family:inherit;font-size:inherit;cursor:pointer;text-align:left}.nav-item:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.nav-item.active{background:#ea2a3314;color:var(--color-primary);font-weight:600}.nav-item svg,.nav-item span{pointer-events:none}.nav-divider{height:1px;background:var(--color-border);margin:var(--spacing-sm) 0;opacity:.5}.stat-card{background:var(--color-bg-card);padding:var(--spacing-lg);border-radius:var(--radius-xl);border:1px solid var(--color-border);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:var(--shadow-md);transition:transform var(--transition-base)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.sidebar-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-md)}.last-update{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.pulse-dot{width:8px;height:8px;background:var(--color-success);border-radius:var(--radius-full);animation:pulse 2s infinite}.logout-btn{width:100%;justify-content:center}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-2xl)}.dashboard-header h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-xs)}.header-date{color:var(--color-text-muted);margin:0}.header-actions{display:flex;gap:var(--spacing-md);align-items:center}.date-picker{max-width:200px}.refresh-btn{display:flex;align-items:center;gap:var(--spacing-sm)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.stat-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.stat-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg)}.stat-icon.red{background:#ea2a331a;color:var(--color-primary)}.stat-icon.red-light{background:#ea2a330d;color:var(--color-primary-light)}.stat-icon.red-dark{background:#ea2a3326;color:var(--color-primary-dark)}.stat-icon.green{background:#10b9811a;color:var(--color-success)}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.stat-sublabel{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.occupancy-card{flex-direction:column;text-align:center;padding:var(--spacing-lg)}.occupancy-gauge{width:100px;height:100px;margin:0 auto var(--spacing-md)}.circular-chart{display:block;max-width:100%}.circle-bg{fill:none;stroke:var(--color-bg-tertiary);stroke-width:3.8}.circle{fill:none;stroke-width:3.8;stroke:url(#gradient) var(--color-primary);stroke-linecap:round;animation:progress 1s ease-out forwards}@keyframes progress{0%{stroke-dasharray:0 100}}.percentage{fill:var(--color-text-primary);font-size:.5em;font-weight:700;text-anchor:middle}.dashboard-section{margin-bottom:var(--spacing-2xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.section-header h2{font-size:var(--font-size-xl);margin:0;display:flex;align-items:center;gap:var(--spacing-md)}.filter-badge{font-size:var(--font-size-sm);font-weight:500;padding:var(--spacing-xs) var(--spacing-md);background:var(--color-primary);color:#fff;border-radius:var(--radius-full)}.filter-controls{display:flex;gap:var(--spacing-md)}.filter-select{min-width:150px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.table-status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.table-status-card{position:relative;padding:var(--spacing-lg);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.table-status-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.table-status-card.filtered{border-color:var(--color-primary);box-shadow:var(--shadow-glow)}.table-status-card.available{border-color:#22c55e66}.table-status-card.reserved{border-color:#f59e0b66;background:#f59e0b0d}.table-status-card.occupied{border-color:#ef444466;background:#ef444414}.table-status-card .table-name{display:block;font-weight:600;font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs)}.table-status-card .table-capacity{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted)}.table-status-card .table-location{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--spacing-xs)}.table-status-card .table-time{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-warning);margin-top:var(--spacing-sm)}.status-indicator{display:block;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full)}.status-indicator.available{background:#22c55e33;color:var(--color-success)}.status-indicator.reserved{background:#f59e0b33;color:var(--color-warning)}.status-indicator.occupied{background:#ef444433;color:var(--color-error)}.status-dot{display:inline-block;width:10px;height:10px;border-radius:var(--radius-full)}.status-dot.available{background:var(--color-success)}.status-dot.reserved{background:var(--color-warning)}.status-dot.occupied{background:var(--color-error)}.status-legend{display:flex;gap:var(--spacing-xl);font-size:var(--font-size-sm);color:var(--color-text-muted)}.status-legend span{display:flex;align-items:center;gap:var(--spacing-sm)}.customer-info{display:flex;flex-direction:column}.customer-name{font-weight:500}.customer-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.guest-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);font-size:var(--font-size-sm)}.table-link{color:var(--color-primary-light);cursor:pointer;transition:color var(--transition-fast)}.table-link:hover{color:var(--color-primary);text-decoration:underline}.action-cell{display:flex;gap:var(--spacing-sm)}.cancelled-row{opacity:.5}.cancelled-row td{text-decoration:line-through}.cancelled-row .badge,.cancelled-row .action-cell{text-decoration:none}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:var(--radius-xl);color:var(--color-text-muted);text-align:center}.empty-state svg{margin-bottom:var(--spacing-md);opacity:.5}.empty-state p{margin:0}.reservation-detail{display:flex;flex-direction:column;gap:var(--spacing-md)}.detail-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border-light)}.detail-row:last-of-type{border-bottom:none}.detail-label{color:var(--color-text-muted);font-size:var(--font-size-sm)}.detail-value{color:var(--color-text-primary);font-weight:500}.detail-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.detail-actions h4{font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.action-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}@media (max-width: 768px){.dashboard-layout{flex-direction:column}.dashboard-sidebar{width:100%;height:auto;position:relative}.dashboard-header{flex-direction:column;gap:var(--spacing-md)}.header-actions{width:100%;flex-wrap:wrap}.date-picker{flex:1;max-width:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.filter-controls{width:100%}.filter-select{flex:1}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.table-status-grid{grid-template-columns:repeat(2,1fr)}}:root{--color-primary: #ea2a33;--color-primary-light: #f1595f;--color-primary-dark: #c11f26;--color-secondary: #ea2a33;--color-secondary-light: #f1595f;--color-secondary-dark: #c11f26;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--color-bg-primary: #f8f6f6;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f3e7e8;--color-bg-card: #ffffff;--color-text-primary: #1b0e0e;--color-text-secondary: #4a3a3a;--color-text-muted: #8a7a7a;--color-border: #e7d0d1;--color-border-light: #f3e7e8;--gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, #ff5252 100%);--gradient-bg: linear-gradient(180deg, var(--color-bg-primary) 0%, #f0eded 100%);--gradient-card: linear-gradient(145deg, #ffffff 0%, #fdfbfb 100%);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3.3rem;--spacing-3xl: 4rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 2px 4px rgba(27, 14, 14, .05);--shadow-md: 0 8px 16px rgba(27, 14, 14, .08);--shadow-lg: 0 16px 32px rgba(27, 14, 14, .12);--shadow-xl: 0 24px 48px rgba(27, 14, 14, .15);--shadow-glow: 0 0 20px rgba(234, 42, 51, .2);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 100;--z-modal: 200;--z-toast: 300}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text-primary);background:var(--gradient-bg);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--color-text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}a{color:var(--color-primary-light);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}.glass-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:500;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md),var(--shadow-glow)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 30px #ea2a3366}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-primary)}.btn-outline{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn-outline:hover:not(:disabled){background:#ea2a330d;border-color:var(--color-primary-dark)}.btn-icon{width:44px;height:44px;padding:0;border-radius:var(--radius-md)}.btn-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.btn-lg{padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-lg)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.form-input{width:100%;padding:12px 16px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.form-input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #ea2a331a}.form-input::placeholder{color:var(--color-text-muted)}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-error{font-size:var(--font-size-sm);color:var(--color-error);margin-top:var(--spacing-xs)}.checkbox-wrapper{display:flex;align-items:flex-start;gap:var(--spacing-md);cursor:pointer}.checkbox-input{width:20px;height:20px;margin-top:2px;accent-color:var(--color-primary);cursor:pointer}.checkbox-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.stepper{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl)}.stepper-item{display:flex;align-items:center;gap:var(--spacing-sm)}.stepper-circle{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;border-radius:var(--radius-full);background:var(--color-bg-secondary);color:var(--color-text-muted);border:2px solid var(--color-border);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.stepper-item.active .stepper-circle{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-glow)}.stepper-item.completed .stepper-circle{background:var(--color-success);color:#fff;border-color:var(--color-success)}.stepper-line{flex:1;height:2px;background:var(--color-border);min-width:30px}.stepper-item.completed+.stepper-line,.stepper-item.active+.stepper-line{background:var(--color-primary)}.stepper-item.completed+.stepper-line,.stepper-line.completed{background:var(--color-success)}.card{background:var(--color-bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);transition:all var(--transition-base)}.card-selectable{cursor:pointer}.card-selectable:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card-selectable.selected{border-color:var(--color-primary);background:#6366f11a;box-shadow:var(--shadow-glow)}.card-selectable.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full)}.badge-success{background:#22c55e33;color:var(--color-success)}.badge-warning{background:#f59e0b33;color:var(--color-warning)}.badge-error{background:#ef444433;color:var(--color-error)}.badge-info{background:#3b82f633;color:var(--color-info)}.table-wrapper{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-border)}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:var(--spacing-md) var(--spacing-lg);text-align:left;border-bottom:1px solid var(--color-border-light)}.table th{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);background:var(--color-bg-tertiary);text-transform:uppercase;letter-spacing:.05em}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:#6366f10d}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.container-sm{max-width:600px}.container-md{max-width:800px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fadeIn{animation:fadeIn var(--transition-base)}.animate-slideUp{animation:slideUp var(--transition-slow)}.animate-slideIn{animation:slideIn var(--transition-slow)}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.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)}.spinner{width:24px;height:24px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:spin .8s linear infinite}.spinner-lg{width:48px;height:48px;border-width:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);z-index:var(--z-modal);animation:fadeIn var(--transition-fast)}.modal-content{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp var(--transition-base)}.dashboard-layout{display:flex;min-height:100vh}.dashboard-sidebar{width:260px;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);padding:var(--spacing-xl);display:flex;flex-direction:column}.sidebar-brand-img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-md)}.dashboard-main{flex:1;padding:var(--spacing-xl);overflow-y:auto}@media (max-width: 768px){.dashboard-layout{flex-direction:column}.dashboard-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--color-border)}}.stat-card{background:var(--gradient-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl)}.stat-value{font-size:var(--font-size-3xl);font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--spacing-xs)}.datetime-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--spacing-sm)}.datetime-slot{padding:var(--spacing-md);text-align:center;font-size:var(--font-size-sm);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.datetime-slot:hover:not(.disabled){border-color:var(--color-primary);background:#6366f11a}.datetime-slot.selected{background:var(--gradient-primary);color:#fff;border-color:transparent}.datetime-slot.disabled{opacity:.3;cursor:not-allowed}.guest-selector{display:flex;align-items:center;gap:var(--spacing-lg);justify-content:center}.guest-count{font-size:var(--font-size-4xl);font-weight:700;min-width:80px;text-align:center;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-lg)}.table-card{position:relative;padding:var(--spacing-xl);text-align:center}.table-icon{font-size:48px;margin-bottom:var(--spacing-md)}.table-name{font-weight:600;margin-bottom:var(--spacing-xs)}.table-capacity{font-size:var(--font-size-sm);color:var(--color-text-muted)}.table-status{position:absolute;top:var(--spacing-md);right:var(--spacing-md)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.menu-card{display:flex;gap:var(--spacing-md)}.menu-image{width:80px;height:80px;border-radius:var(--radius-lg);object-fit:cover;background:var(--color-bg-tertiary)}.menu-info{flex:1}.menu-name{font-weight:600;margin-bottom:var(--spacing-xs)}.menu-description{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.menu-price{font-weight:600;color:var(--color-secondary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}
