.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.login-box{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;max-width:400px;width:100%}.login-box h1{text-align:center;margin-bottom:10px;color:#333;font-size:28px}.login-subtitle{text-align:center;color:#666;margin-bottom:30px;font-size:14px}.pin-display{display:flex;justify-content:center;gap:15px;margin-bottom:30px}.pin-dot{width:20px;height:20px;border-radius:50%;border:2px solid #ddd;transition:all .2s}.pin-dot.filled{background-color:#667eea;border-color:#667eea}.error-message{background-color:#fee;color:#c33;padding:10px;border-radius:8px;text-align:center;margin-bottom:20px;font-size:14px}.numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.numpad-button{padding:20px;font-size:24px;font-weight:600;background:#f5f5f5;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s;color:#333}.numpad-button:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea;transform:translateY(-2px)}.numpad-button:active:not(:disabled){transform:translateY(0)}.numpad-button:disabled{opacity:.5;cursor:not-allowed}.submit-button{background:#4caf50;color:#fff;border-color:#4caf50}.submit-button:hover:not(:disabled){background:#45a049;border-color:#45a049}.dashboard{min-height:100vh;background-color:#f5f5f5}.dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a}.dashboard-header h1{font-size:24px;margin:0}.user-name{font-weight:600;font-size:16px}.user-role{background:#fff3;padding:5px 12px;border-radius:20px;font-size:14px;text-transform:capitalize}.logout-button{background:#fff3;color:#fff;padding:8px 20px;border-radius:8px;font-weight:500;transition:all .2s}.logout-button:hover{background:#ffffff4d}.dashboard-content{max-width:1200px;margin:0 auto;padding:40px 20px}.dashboard-content h2{font-size:28px;margin-bottom:10px;color:#333}.dashboard-content p{color:#666;margin-bottom:30px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:30px}.feature-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d;transition:all .3s;cursor:pointer}.feature-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #0000001a}.feature-card h3{font-size:20px;margin-bottom:10px;color:#667eea}.feature-card p{color:#888;font-size:14px;margin:0}.admin-panel{min-height:100vh;background-color:#f5f5f5}.admin-header{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a}.admin-header-left{display:flex;align-items:center;gap:20px}.admin-header h1{font-size:24px;margin:0}.user-info{display:flex;align-items:center;gap:15px}.user-info span{font-size:14px;opacity:.9}.btn-logout{background:#fff3;color:#fff;padding:8px 16px;border-radius:8px;font-weight:500;font-size:14px;transition:all .2s;border:1px solid rgba(255,255,255,.3)}.btn-logout:hover{background:#ffffff4d;border-color:#ffffff80}.back-button{background:#fff3;color:#fff;padding:8px 16px;border-radius:8px;font-weight:500;font-size:14px;transition:all .2s}.back-button:hover{background:#ffffff4d}.admin-content{max-width:1200px;margin:0 auto;padding:40px 20px}.admin-content h2{font-size:28px;margin-bottom:30px;color:#333}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.admin-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d;transition:all .3s;cursor:pointer}.admin-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #0000001a}.admin-card h3{font-size:20px;margin-bottom:10px;color:#f5576c}.admin-card p{color:#888;font-size:14px;margin:0}.user-form-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d;max-width:800px}.user-form-header{margin-bottom:30px}.user-form-header h2{margin:0;color:#333;font-size:24px}.user-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group label{font-weight:600;color:#333;font-size:14px}.required{color:#d32f2f}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=password],.form-group select{padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}.form-group input:disabled,.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-help{font-size:12px;color:#666;font-style:italic}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label span{font-size:14px;color:#333}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:20px;padding-top:20px;border-top:1px solid #f0f0f0}.btn-cancel,.btn-submit{padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;transition:all .2s}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover:not(:disabled){background:#e0e0e0}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:8px;font-size:14px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}.user-management{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d}.user-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.user-management-header h2{margin:0;color:#333;font-size:24px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 24px;border-radius:8px;font-weight:600;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.filters{display:flex;gap:15px;margin-bottom:20px}.filter-select{padding:10px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.filter-select:hover{border-color:#667eea}.filter-select:focus{outline:none;border-color:#667eea}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px}.loading{text-align:center;padding:40px;color:#666;font-size:16px}.users-table-container{overflow-x:auto;margin-bottom:20px}.users-table{width:100%;border-collapse:collapse}.users-table th{background:#f5f5f5;padding:12px 15px;text-align:left;font-weight:600;color:#555;font-size:14px;border-bottom:2px solid #e0e0e0}.users-table td{padding:15px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333}.users-table tbody tr:hover{background-color:#f9f9f9}.user-name{font-weight:600}.role-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.role-badge.admin{background:#f093fb;color:#fff}.role-badge.waiter{background:#667eea;color:#fff}.role-badge.chef{background:#4caf50;color:#fff}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#ffebee;color:#c62828}.actions{display:flex;gap:8px}.btn-edit,.btn-delete{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;transition:all .2s}.btn-edit{background:#e3f2fd;color:#1976d2}.btn-edit:hover{background:#1976d2;color:#fff}.btn-delete{background:#ffebee;color:#d32f2f}.btn-delete:hover{background:#d32f2f;color:#fff}.no-data{text-align:center;padding:40px;color:#999}.users-summary{text-align:right;color:#666;font-size:14px;padding-top:10px;border-top:1px solid #f0f0f0}
