*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Noto Sans Thai,sans-serif;font-size:clamp(1.05rem,1rem + .3vw,1.18rem);line-height:1.6;background:#000;color:#e0e0e0;position:relative;overflow-x:hidden}.modal-form-input,input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],textarea,select{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;background-color:#fff!important;color:#000!important;-webkit-text-fill-color:#000000!important;box-sizing:border-box}.modal-form-input:focus,input:focus,textarea:focus,select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.modal-form-input::placeholder,input::placeholder,textarea::placeholder{color:#9ca3af;-webkit-text-fill-color:#9ca3af}select option{background-color:#fff!important;color:#000!important}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 30%,rgba(102,126,234,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(118,75,162,.15) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.03) 0%,transparent 60%);pointer-events:none;z-index:0;animation:backgroundPulse 15s ease-in-out infinite}@keyframes backgroundPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.5rem}.admin-layout{display:flex;height:100vh;position:relative}.hamburger-menu{position:fixed;top:1rem;left:1rem;z-index:1001;background:linear-gradient(135deg,#667eea,#764ba2);border:none;width:50px;height:50px;border-radius:12px;cursor:pointer;display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;box-shadow:0 4px 12px #667eea66;transition:all .3s ease}.hamburger-menu:hover{transform:scale(1.05);box-shadow:0 6px 16px #667eea99}.hamburger-menu:active{transform:scale(.95)}.hamburger-menu span{width:24px;height:3px;background:#fff;border-radius:2px;transition:all .3s ease}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999}.sidebar{width:280px;background:linear-gradient(180deg,#1e3a5f,#2c3e50);color:#fff;padding:0;display:flex;flex-direction:column;box-shadow:2px 0 10px #0000001a;transition:transform .3s ease;z-index:1000}@media (max-width: 768px){.hamburger-menu{display:flex}.sidebar{position:fixed;left:0;top:0;height:100vh;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:block}.content{margin-left:0!important;width:100%!important}}.sidebar h1{font-size:1.4rem;padding:2rem 1.5rem;text-align:center;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:0;font-weight:600;letter-spacing:.5px}.sidebar ul{list-style:none;flex:1;padding:1.5rem 0}.sidebar li{margin-bottom:.5rem;padding:0 1rem}.sidebar a{color:#ffffffd9;text-decoration:none;padding:.9rem 1.2rem;display:flex;align-items:center;border-radius:8px;transition:all .3s;font-weight:500;font-size:.95rem}.sidebar a:hover{background:#ffffff26;color:#fff;transform:translate(4px)}.sidebar a.active{background:#3498db4d;color:#fff;border-left:3px solid #3498db}.logout-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;border:none;padding:.9rem;margin:1rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 8px #e74c3c4d}.logout-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #e74c3c66}.content{flex:1;padding:2.5rem;overflow-y:auto;background:#000}.page-header{margin-bottom:2.5rem;padding-bottom:1rem;border-bottom:2px solid #e1e8ed}.page-header h2{font-size:2.2rem;margin-bottom:.5rem;color:#fff;font-weight:700}.page-header p{color:#aaa;font-size:1rem}.card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:12px;box-shadow:0 4px 12px #0000004d;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.1);transition:all .3s}.card:hover{box-shadow:0 8px 24px #667eea4d;transform:translateY(-2px);border-color:#667eea4d}.card h3{color:#fff;font-size:1.3rem;font-weight:600;margin-bottom:1rem}.button{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:.8rem 1.8rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 2px 6px #3498db4d}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3498db66}.button:disabled{opacity:.6;cursor:not-allowed}.button.danger{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 2px 6px #e74c3c4d}.button.danger:hover:not(:disabled){box-shadow:0 4px 12px #e74c3c66}.button.success{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 2px 6px #27ae604d}.button.success:hover:not(:disabled){box-shadow:0 4px 12px #27ae6066}.button.warning{background:linear-gradient(135deg,#f39c12,#e67e22);box-shadow:0 2px 6px #f39c124d}.button.warning:hover:not(:disabled){box-shadow:0 4px 12px #f39c1266}table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}table th,table td{padding:1.2rem;text-align:left;border-bottom:1px solid #e1e8ed;color:#1a202c;font-weight:600}table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);font-weight:700;color:#1a202c;text-transform:uppercase;font-size:.9rem;letter-spacing:.5px}table tbody tr{transition:all .2s}table tbody tr:hover{background:#f8f9fa}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.6rem;font-weight:600;color:#fff;font-size:.95rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.9rem;border:2px solid rgba(255,255,255,.2);border-radius:8px;font-size:1rem;transition:all .3s;font-family:inherit;background:#ffffff0d;color:#fff}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33;background:#ffffff14}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.table-form-container .form-group input,.table-form-container .form-group textarea,.table-form-container .form-group select{background:#fff;color:#2d3748;border:2px solid #e2e8f0}.table-form-container .form-group input:focus,.table-form-container .form-group textarea:focus,.table-form-container .form-group select:focus{background:#fff;border-color:#667eea}.table-form-container .form-group input::placeholder,.table-form-container .form-group textarea::placeholder{color:#2d374880}.table-form-container label{color:#2d3748}.status-badge{padding:.4rem .9rem;border-radius:20px;font-size:.85rem;font-weight:600;display:inline-block;text-transform:uppercase;letter-spacing:.5px}.status-badge.draft{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff}.status-badge.submitted{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.status-badge.preparing{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.status-badge.served{background:linear-gradient(135deg,#27ae60,#229954);color:#fff}.status-badge.cancelled{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.menu-grid,.menu-list{display:grid;gap:.8rem;grid-template-columns:repeat(2,1fr);margin-top:1.5rem}@media (min-width: 640px){.menu-grid,.menu-list{grid-template-columns:repeat(3,1fr)}}@media (min-width: 900px){.menu-grid,.menu-list{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1200px){.menu-grid,.menu-list{grid-template-columns:repeat(5,1fr)}}@media (min-width: 1500px){.menu-grid,.menu-list{grid-template-columns:repeat(6,1fr)}}@media (min-width: 1800px){.menu-grid,.menu-list{grid-template-columns:repeat(7,1fr)}}.menu-card{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:.8rem;background:#1e1e23f2;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:24px;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a;border:2px solid rgba(236,72,153,.5);cursor:pointer;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);height:100%}.menu-card:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 12px 45px #ec489980,inset 0 1px #fff3;border-color:#ec4899e6;background:#282832fa}.menu-card-image{width:100%;aspect-ratio:1;border-radius:16px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:2.5rem;flex-shrink:0;box-shadow:0 4px 16px #667eea66;overflow:hidden}.menu-card-image img{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px}.menu-card-body{width:100%;text-align:center;flex:1;display:flex;flex-direction:column}.menu-card-footer{margin-top:auto;width:100%}.menu-card-name,.menu-card-title{font-weight:700;font-size:.95rem;color:#fff;margin-bottom:.3rem;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.3);white-space:normal;text-align:center}.menu-card-description{color:#ffffffb3;font-size:.85rem;margin-bottom:.6rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:center}.menu-card-price{font-weight:700;font-size:1.15rem;background:linear-gradient(135deg,#a78bfa,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 4px rgba(167,139,250,.4));margin-bottom:.5rem}.menu-card-actions{display:flex;gap:.25rem;margin-top:.5rem;flex-wrap:wrap}.menu-card-btn{flex:1;padding:.35rem .5rem;border-radius:6px;border:none;font-weight:500;cursor:pointer;transition:all .2s;font-size:.65rem;min-width:0;white-space:nowrap}.menu-card-btn.edit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.menu-card-btn.delete{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.menu-card-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea80}.menu-card-status{display:inline-block;padding:.4rem .8rem;border-radius:12px;font-size:.85rem;font-weight:600;margin-bottom:.8rem}.menu-card-status.available{background:#2ed57333;color:#2ed573}.menu-card-status.unavailable{background:#ff475733;color:#ff4757}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,#1e1e2dfa,#14141efa);border-radius:16px;padding:2rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff1a;animation:slideUp .3s ease-out;position:relative}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h3{margin-bottom:1.5rem;background:linear-gradient(135deg,#a78bfa,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.5rem}.button-secondary{padding:.75rem 1.5rem;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:all .2s;background:#ffffff1a;color:#e0e0e0;border:1px solid rgba(255,255,255,.2)}.button-secondary:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 12px #ffffff1a}
