@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--bg-color: #0b0c10;--bg-color-secondary: #12141a;--surface-color: rgba(26, 28, 35, .6);--surface-color-light: rgba(35, 38, 48, .8);--surface-solid: #1c1e26;--text-primary: #ffffff;--text-secondary: #a0aab2;--text-muted: #6b7280;--border-color: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .15);--primary-color: #00d2ff;--primary-hover: #3a7bd5;--secondary-color: #ff007a;--success-color: #10b981;--danger-color: #f43f5e;--danger-hover: #e11d48;--warning-color: #f59e0b;--info-color: #3b82f6;--gradient-primary: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-hover) 100%);--gradient-danger: linear-gradient(135deg, var(--danger-color) 0%, var(--danger-hover) 100%);--gradient-surface: linear-gradient(180deg, rgba(30, 32, 40, .8) 0%, rgba(20, 22, 28, .9) 100%);--gradient-glow: linear-gradient(90deg, #00d2ff, #3a7bd5, #00d2ff);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 8px 16px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-glow: 0 0 20px rgba(0, 210, 255, .3);--shadow-glow-danger: 0 0 20px rgba(244, 63, 94, .3);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.34, 1.56, .64, 1);--transition-slow: .5s ease-out}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:var(--surface-color-light) transparent}body{background-color:var(--bg-color);background-image:radial-gradient(circle at 15% 50%,rgba(0,210,255,.05),transparent 25%),radial-gradient(circle at 85% 30%,rgba(255,0,122,.05),transparent 25%);color:var(--text-primary);font-family:Inter,system-ui,-apple-system,sans-serif;min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;font-weight:700;color:var(--text-primary);margin-bottom:.75rem;letter-spacing:-.02em}h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.2}h2{font-size:clamp(1.5rem,4vw,2.5rem);line-height:1.3}p{color:var(--text-secondary);font-size:1rem}button{border:none;background:none;cursor:pointer;font-family:Inter,sans-serif;color:inherit;outline:none}input,select,textarea{font-family:Inter,sans-serif;outline:none}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:#fff;text-shadow:0 0 8px rgba(0,210,255,.5)}.container{width:100%;max-width:1280px;margin:0 auto;padding:1.5rem}.max-w-md{max-width:32rem}.mx-auto{margin-left:auto;margin-right:auto}.h-screen{height:100vh}.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-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.container{padding:1rem}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.p-2{padding:.5rem}.p-4{padding:1.25rem}.p-6{padding:2rem}.px-4{padding-left:1.25rem;padding-right:1.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:3rem;padding-bottom:3rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1.25rem}.mt-8{margin-top:3rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1.25rem}.mb-8{margin-bottom:3rem}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem;font-family:Outfit,sans-serif}.text-2xl{font-size:1.5rem;font-family:Outfit,sans-serif}.font-bold{font-weight:700}.font-medium{font-weight:500}.text-primary{color:var(--primary-color)}.text-danger{color:var(--danger-color)}.text-warning{color:var(--warning-color)}.text-success{color:var(--success-color)}.text-info{color:var(--info-color)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.card{background:var(--surface-color);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);transition:all var(--transition-normal);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity var(--transition-normal)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg),0 10px 30px #00d2ff0d;border-color:var(--border-light);background:#1e2028b3}.card:hover:before{opacity:1}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;font-family:Outfit,sans-serif;transition:all var(--transition-normal);cursor:pointer;gap:.5rem;overflow:hidden;z-index:1}.btn:after{content:"";position:absolute;inset:0;background:inherit;filter:brightness(1.2);opacity:0;transition:opacity var(--transition-fast);z-index:-1}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn:not(:disabled):hover:after{opacity:1}.btn:active:not(:disabled){transform:scale(.96)}.btn-primary{background:var(--gradient-primary);color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-secondary{background:var(--surface-color-light);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){border-color:#ffffff4d;background:#2d303ce6;color:#fff;transform:translateY(-2px)}.btn-danger{background:#f43f5e1a;color:var(--danger-color);border:1px solid rgba(244,63,94,.3)}.btn-danger:hover:not(:disabled){background:var(--gradient-danger);color:#fff;border-color:#fff3;box-shadow:var(--shadow-glow-danger);transform:translateY(-2px)}.btn-outline{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-light)}.btn-outline:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color);background:#00d2ff0d}.btn-outline.active{background-color:#00d2ff26;border-color:var(--primary-color);color:var(--primary-color);box-shadow:inset 0 0 10px #00d2ff1a}.input{width:100%;background:#0f1115cc;border:1px solid var(--border-color);padding:.85rem 1.25rem;border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all var(--transition-normal);box-shadow:inset 0 2px 4px #0003}.input:focus{border-color:var(--primary-color);box-shadow:inset 0 2px 4px #0003,0 0 0 3px #00d2ff26;background:#14161ce6}.badge{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-family:Outfit,sans-serif;box-shadow:0 2px 5px #0003;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1)}.badge-success{background:linear-gradient(135deg,#10b98133,#10b9810d);color:#10b981;border-color:#10b9814d}.badge-warning{background:linear-gradient(135deg,#f59e0b33,#f59e0b0d);color:#f59e0b;border-color:#f59e0b4d}.badge-danger{background:linear-gradient(135deg,#f43f5e33,#f43f5e0d);color:#f43f5e;border-color:#f43f5e4d}.badge-info{background:linear-gradient(135deg,#3b82f633,#3b82f60d);color:#60a5fa;border-color:#3b82f64d}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:1;box-shadow:0 0 15px #00d2ff66}50%{opacity:.6;box-shadow:0 0 5px #00d2ff1a}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .6s cubic-bezier(.16,1,.3,1) forwards}.animate-pulse{animation:pulseGlow 2.5s ease-in-out infinite}.slide-up{animation:slideUpFade .5s cubic-bezier(.16,1,.3,1) forwards}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2rem;padding:1rem 0}.menu-card{display:flex;flex-direction:column;background:var(--surface-solid);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-normal);position:relative;box-shadow:var(--shadow-md)}.menu-card:after{content:"";position:absolute;inset:0;border-radius:var(--radius-xl);padding:2px;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.menu-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0006,0 0 20px #00d2ff1a;border-color:transparent}.menu-card:hover:after{background:var(--gradient-primary)}.menu-img-wrap{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background-color:var(--bg-color-secondary)}.menu-img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1),filter .6s;will-change:transform}.menu-card:hover .menu-img{transform:scale(1.1);filter:brightness(1.1)}.cart-overlay{position:fixed;bottom:0;left:0;right:0;background:#16181dd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1);padding:1.25rem 2rem;box-shadow:0 -10px 40px #00000080;display:flex;justify-content:space-between;align-items:center;z-index:50;animation:slideUpFade .4s cubic-bezier(.16,1,.3,1) forwards}.cart-overlay:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);opacity:.5}.status-indicator{width:10px;height:10px;border-radius:50%;display:inline-block;position:relative}.status-indicator:after{content:"";position:absolute;inset:-4px;border-radius:50%;background:inherit;opacity:.4;animation:pulseGlow 2s infinite}.status-Tersedia{background-color:#10b981;box-shadow:0 0 10px #10b981}.status-Aktif{background-color:#f43f5e;box-shadow:0 0 10px #f43f5e}.table-card{padding:2rem 1.5rem;border-radius:var(--radius-xl);border:1px solid var(--border-light);background:linear-gradient(145deg,#1e202899,#14161ccc);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;transition:all var(--transition-normal);cursor:pointer}.table-card:hover{transform:translateY(-5px);background:linear-gradient(145deg,#232630cc,#191b22e6);border-color:#fff3;box-shadow:var(--shadow-lg)}.table-card.active{background:linear-gradient(145deg,#f43f5e26,#f43f5e0d);border-color:var(--danger-color);box-shadow:inset 0 0 20px #f43f5e1a,0 10px 20px #f43f5e26}.glass-panel{background:#191b22a6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.qris-box{background:#fff;padding:1.5rem;border-radius:var(--radius-xl);display:inline-block;margin:2rem auto;box-shadow:0 0 0 4px #ffffff1a,0 20px 40px #00000080;transform:scale(1);transition:transform var(--transition-normal)}.qris-box:hover{transform:scale(1.02)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--surface-solid)}table{width:100%;border-collapse:separate;border-spacing:0}th{text-align:left;padding:1rem 1.25rem;background:#0003;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;font-family:Outfit,sans-serif}td{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle;font-size:.95rem;transition:background var(--transition-fast)}tr:last-child td{border-bottom:none}tbody tr{transition:background-color var(--transition-fast)}tbody tr:hover{background-color:#ffffff08}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#fff3}.bg-surface{background-color:var(--surface-color)}.bg-surface-light{background-color:var(--surface-color-light)}.bg-surface\/80{background-color:#1a1c23cc}.bg-primary\/10{background-color:#00d2ff1a}.bg-primary\/20{background-color:#00d2ff33}.bg-danger\/10{background-color:#f43f5e1a}.bg-success\/10{background-color:#10b9811a}.bg-info\/10{background-color:#3b82f61a}.bg-white\/5{background-color:#ffffff0d}.bg-black\/60{background-color:#0009}.border-primary{border-color:var(--primary-color)}.border-danger{border-color:var(--danger-color)}.border-success{border-color:var(--success-color)}.border-info{border-color:var(--info-color)}.border-border{border-color:var(--border-color)}.border-border\/30{border-color:#ffffff0d}.border-border\/50{border-color:#ffffff14}.border-white\/20{border-color:#fff3}.hover\:bg-surface-light:hover{background-color:var(--surface-color-light)}.hover\:bg-primary\/20:hover{background-color:#00d2ff33}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:text-white:hover{color:#fff}.shadow-inner{box-shadow:inset 0 2px 4px #0000000d}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.w-64{width:16rem}.min-h-screen{min-height:100vh}.h-full{height:100%}.w-full{width:100%}.sticky{position:sticky}.top-0{top:0}.z-40{z-index:40}.z-50{z-index:50}.inset-0{inset:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.flex-1{flex:1}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.whitespace-nowrap{white-space:nowrap}.backdrop-blur-md{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.backdrop-blur-sm{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.max-w-4xl{max-width:56rem}.max-w-2xl{max-width:42rem}.pb-24{padding-bottom:6rem}.pt-\[70px\]{padding-top:70px}.h-\[70px\]{height:70px}.w-\[40\%\]{width:40%}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-b{border-bottom-width:1px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.rounded-md{border-radius:var(--radius-md)}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.scale-95{transform:scale(.95)}.scale-100{transform:scale(1)}.scale-\[1\.02\]{transform:scale(1.02)}.hover\:-translate-y-2:hover{transform:translateY(-.5rem)}.bg-gray-900{background-color:#111827}.bg-gray-100{background-color:#f3f4f6}.text-gray-500{color:#6b7280}.text-black{color:#000}.bg-white{background-color:#fff}.border-2{border-width:2px}.border-4{border-width:4px}.border-transparent{border-color:transparent}.border-dashed{border-style:dashed}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-50{opacity:.5}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s}.transition-all{transition-property:all;transition-duration:.15s}.group:hover .group-hover\:translate-y-1{transform:translateY(.25rem)}.gap-8{gap:2rem}.p-8{padding:2rem}.p-0{padding:0}.w-48{width:12rem}.h-48{height:12rem}.w-40{width:10rem}.h-40{height:10rem}.w-24{width:6rem}.h-24{height:6rem}.w-12{width:3rem}.h-12{height:3rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.mb-6{margin-bottom:1.5rem}.mt-6{margin-top:1.5rem}.ml-1{margin-left:.25rem}.last\:border-b-0:last-child{border-bottom-width:0}.sm\:flex-row{flex-direction:row}@media(max-width:640px){.sm\:flex-row{flex-direction:column}.sm\:items-center{align-items:flex-start}}
