@tailwind base;@tailwind components;@tailwind utilities;.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.mobile-scroll{-webkit-overflow-scrolling:touch}.custom-scrollbar::-webkit-scrollbar{width:4px;height:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e180;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}@layer base{:root{--color-primary: 79 70 229;--color-secondary: 100 116 139;--color-culinary-gold: 212 175 55;--color-culinary-burgundy: 128 0 32;--color-culinary-cream: 255 253 245;--color-culinary-warm: 245 235 220;--ios-grouped-bg: #f2f2f7;--ios-surface: #ffffff;--ios-surface-elevated: #ffffff;--ios-separator: #e4e4e9;--ios-label: #1c1c1e;--ios-secondary-label: #6c6c72;--ios-tertiary-label: #aeaeb4;--ios-fill: #eeeef0;--ios-fill-strong: #e4e4e9;--ios-bar-material: rgba(249, 249, 251, .82);--ios-success: #34c759;--ios-destructive: #ff3b30;--ios-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", Roboto, system-ui, sans-serif;--ios-ease: cubic-bezier(.32, .72, 0, 1)}html{scroll-behavior:smooth}}@layer components{.glass-card{background:#ffffffb8;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 12px #00000008,0 1px 1px #00000005}.glass-card-opaque{background:#fffcf7fa;backdrop-filter:blur(12px) saturate(170%);-webkit-backdrop-filter:blur(12px) saturate(170%);border:1px solid rgba(0,0,0,.05);box-shadow:0 1px 2px #0000000a}.booking-form-shell{background:var(--ios-grouped-bg);font-family:var(--ios-font);border:none;box-shadow:0 10px 40px #0000000f}.ios-group{background:var(--ios-surface);border:.5px solid var(--ios-separator);border-radius:16px;box-shadow:0 1px 2px #00000008}.ios-section-header{font-size:13px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--ios-secondary-label)}.ios-bar{background:var(--ios-bar-material);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.booking-form-section{background:var(--ios-surface);border:.5px solid var(--ios-separator);border-radius:16px;box-shadow:0 1px 2px #00000008;transition:box-shadow .3s var(--ios-ease)}.admin-card{background:var(--ios-surface);border:.5px solid var(--ios-separator);border-radius:14px;box-shadow:0 1px 2px #0000000a}.admin-toolbar{background:var(--ios-surface);border-bottom:.5px solid var(--ios-separator)}.admin-thead{background:var(--ios-grouped-bg)}.admin-field{background:var(--ios-fill);border:.5px solid var(--ios-separator);border-radius:10px;color:var(--ios-label);transition:border-color .2s var(--ios-ease),box-shadow .2s var(--ios-ease),background .2s var(--ios-ease)}.admin-field:hover{background:var(--ios-fill-strong)}.admin-field:focus,.admin-field:focus-within,.admin-field:focus-visible{outline:none;background:#fff;border-color:var(--brand-color, #4f46e5);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-color, #4f46e5) 14%,transparent)}.admin-field::placeholder{color:var(--ios-tertiary-label)}.admin-btn-secondary{background:var(--ios-fill);color:var(--ios-label);border-radius:10px;transition:background .2s var(--ios-ease),transform .12s var(--ios-ease)}.admin-btn-secondary:hover{background:var(--ios-fill-strong)}.admin-btn-secondary:active{transform:scale(.97)}.admin-modal{background:var(--ios-surface);border-radius:20px;box-shadow:0 20px 60px #00000047}.glass-card-dark{background:#00000040;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.12)}.glass-header{background:#fffcf7fa;backdrop-filter:blur(12px) saturate(170%);-webkit-backdrop-filter:blur(12px) saturate(170%);border-bottom:1px solid rgba(0,0,0,.09)}.culinary-divider{position:relative;display:flex;align-items:center;justify-content:center;gap:12px}.culinary-divider:before,.culinary-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.4),transparent)}.ios-input{transition:border-color .2s var(--ios-ease),box-shadow .2s var(--ios-ease),background .2s var(--ios-ease);border:.5px solid var(--ios-separator);border-radius:12px;background:var(--ios-fill);color:var(--ios-label)}.ios-input::placeholder{color:var(--ios-tertiary-label)}.ios-input:focus,.ios-input:focus-visible{outline:none;border-color:var(--brand-color, #800020);box-shadow:0 0 0 3.5px color-mix(in srgb,var(--brand-color, #800020) 14%,transparent);background:#fff}[data-brand-scope]:focus-visible{outline:2px solid var(--brand-color, #800020);outline-offset:2px;border-radius:6px}.ios-segment{background:#76768014;border-radius:6px;padding:2px}.ios-segment-btn{border-radius:4px;font-weight:600;font-size:13px;padding:4px 12px;transition:all .25s cubic-bezier(.25,.46,.45,.94)}.ios-segment-btn.active{background:#fff;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f}.shadow-inner-sm{box-shadow:inset 0 2px 4px #0000000d}.backdrop-blur-xl{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.culinary-btn{transition:all .4s cubic-bezier(.25,.46,.45,.94)}.culinary-btn:active{transform:translateY(0) scale(.98)}}@layer utilities{@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{animation:shimmer 2s ease-in-out infinite}@keyframes restaurant-switch-in{0%{opacity:0}to{opacity:1}}.animate-restaurant-switch{animation:restaurant-switch-in .4s cubic-bezier(.22,1,.36,1) forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .6s cubic-bezier(.22,1,.36,1) both}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInLeft .5s cubic-bezier(.22,1,.36,1) both}.animate-slide-in-right{animation:slideInRight .5s cubic-bezier(.22,1,.36,1) both}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-8px) rotate(2deg)}66%{transform:translateY(4px) rotate(-1deg)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-delayed{animation:float 8s ease-in-out 2s infinite}@keyframes pulseGlow{0%,to{box-shadow:0 0 #d4af3766}50%{box-shadow:0 0 20px 4px #d4af3726}}.animate-pulse-glow{animation:pulseGlow 2.5s ease-in-out infinite}@keyframes pulseSubtle{0%,to{opacity:.1}50%{opacity:.2}}.animate-pulse-subtle{animation:pulseSubtle 3s ease-in-out infinite}@keyframes celebrationBounce{0%{transform:scale(0) rotate(-10deg);opacity:0}50%{transform:scale(1.15) rotate(3deg);opacity:1}70%{transform:scale(.95) rotate(-1deg)}to{transform:scale(1) rotate(0);opacity:1}}.animate-celebration{animation:celebrationBounce .8s cubic-bezier(.34,1.56,.64,1) both}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.animate-confetti{animation:confettiFall 3s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes breathe{0%,to{box-shadow:0 4px 15px #0000000d}50%{box-shadow:0 8px 30px #00000014}}.animate-breathe{animation:breathe 4s ease-in-out infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-gradient{background-size:200% 200%;animation:gradientShift 8s ease infinite}@keyframes stepFlow{0%{width:0}to{width:100%}}.animate-step-flow{animation:stepFlow .6s cubic-bezier(.22,1,.36,1) both}@keyframes steam{0%{transform:translateY(0) scaleX(1);opacity:.3}50%{transform:translateY(-15px) scaleX(1.2);opacity:.15}to{transform:translateY(-30px) scaleX(.8);opacity:0}}.animate-steam{animation:steam 3s ease-out infinite}.animate-steam-delayed{animation:steam 3s ease-out 1s infinite}.tap-scale{transition:transform .15s cubic-bezier(.25,.46,.45,.94)}.tap-scale:active{transform:scale(.97)}.culinary-text-gradient{background:linear-gradient(135deg,#8b6914,#d4af37,#8b6914);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes botanicalBloom{0%{transform:scale(0) rotate(-12deg);opacity:0}55%{transform:scale(1.18) rotate(3deg);opacity:1}72%{transform:scale(.92) rotate(-1.5deg);opacity:1}87%{transform:scale(1.05) rotate(.5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes botanicalSway{0%,to{transform:rotate(-4deg) translateY(0)}35%{transform:rotate(3deg) translateY(-3px)}65%{transform:rotate(-2deg) translateY(1.5px)}}@keyframes particleRise{0%{transform:translateY(0) translate(0) rotate(0) scale(1);opacity:.85}25%{transform:translateY(-22px) translate(5px) rotate(18deg) scale(.95);opacity:.75}55%{transform:translateY(-52px) translate(-4px) rotate(-12deg) scale(.82);opacity:.42}to{transform:translateY(-88px) translate(7px) rotate(28deg) scale(.6);opacity:0}}@keyframes culinaryBorderPulse{0%,to{box-shadow:0 0 0 1px #d4af3733,0 25px 50px #00000038}50%{box-shadow:0 0 0 1.5px #d4af3780,0 0 28px #d4af3717,0 25px 50px #00000038}}.botanical-bloom{animation:botanicalBloom .75s cubic-bezier(.34,1.56,.64,1) both}.botanical-sway{animation:botanicalSway 5s ease-in-out infinite}.culinary-modal-glow{animation:culinaryBorderPulse 3s ease-in-out .5s infinite}@media(prefers-reduced-motion:reduce){.animate-restaurant-switch,.animate-shimmer,.animate-fade-in-up,.animate-scale-in,.animate-slide-in-left,.animate-slide-in-right,.animate-float,.animate-float-delayed,.animate-pulse-glow,.animate-celebration,.animate-confetti,.animate-breathe,.animate-gradient,.animate-step-flow,.animate-steam,.animate-steam-delayed,.botanical-bloom,.botanical-sway,.culinary-modal-glow{animation:none!important}.tap-scale:active{transform:none}}}@media(max-width:639.98px){input,select,textarea{font-size:16px!important}}
