*{box-sizing:border-box;margin:0;padding:0}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;--primary-color: #0056b3;--secondary-color: #f8f9fa;--text-color: #212529;--border-color: #dee2e6}body{background-color:var(--secondary-color);color:var(--text-color);min-height:100vh;-webkit-font-smoothing:antialiased}#root{width:100%;min-height:100vh;display:flex;flex-direction:column}a{text-decoration:none;color:inherit;transition:opacity .2s}a:hover{opacity:.8}button{font-family:inherit;cursor:pointer}button,a,input,select,.card,.menu-item{transition:all .3s cubic-bezier(.4,0,.2,1)}button:hover,.card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}button:active{transform:translateY(0)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-animation{animation:fadeInUp .6s ease-out forwards}.navbar{display:flex;justify-content:space-between;align-items:center;background-color:#343a40;padding:15px 30px;color:#fff;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}.navbar-logo{font-size:1.5rem;margin:0;font-weight:700}.navbar-logo a{color:#fff;text-decoration:none}.navbar-menu{display:flex;list-style:none;margin:0;padding:0;align-items:center;gap:20px}.navbar-link{color:#f8f9fa;text-decoration:none;font-size:1rem;transition:color .2s}.navbar-link:hover{color:#ffc107}.user-menu-container{position:relative;margin-left:10px}.avatar-btn{width:38px;height:38px;border-radius:50%;background-color:#007bff;color:#fff;border:2px solid white;font-weight:700;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.avatar-btn:hover{background-color:#0056b3;transform:scale(1.1)}.dropdown-menu{position:absolute;top:50px;right:0;background-color:#fff;min-width:160px;border-radius:8px;box-shadow:0 4px 15px #0003;overflow:hidden;display:flex;flex-direction:column;z-index:1000;animation:fadeIn .2s ease-in-out;border:1px solid #ddd}.dropdown-header{padding:12px 16px;border-bottom:1px solid #eee;color:#666;font-size:.85rem;background-color:#f9f9f9}.dropdown-item{padding:12px 16px;border:none;background:none;text-align:left;cursor:pointer;font-size:.95rem;color:#333;width:100%}.dropdown-item:hover{background-color:#f1f1f1;color:#dc3545}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.home-container{text-align:center;padding:50px;font-family:Arial,sans-serif}.hero-section{background-color:#f4f4f4;padding:4rem;border-radius:10px;max-width:800px;margin:0 auto}.hero-section h1{margin-bottom:20px;color:#333}.book-btn{padding:10px 20px;font-size:1.2rem;background-color:#007bff;color:#fff;border:none;border-radius:5px;cursor:pointer;margin-top:20px;transition:background-color .2s}.book-btn:hover{background-color:#0056b3}.reservation-container{max-width:500px;margin:40px auto;padding:30px;background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a}.reservation-container h2{text-align:center;margin-bottom:20px;color:#333}.reservation-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column;text-align:left}.form-row{display:flex;gap:15px}.form-input{padding:10px;font-size:1rem;border-radius:4px;border:1px solid #ccc}.submit-btn{padding:12px;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:1.1rem;cursor:pointer;margin-top:10px}.submit-btn:hover{background-color:#218838}.orders-container{max-width:900px;margin:40px auto;padding:20px}.login-box{max-width:400px;margin:50px auto;text-align:center;padding:30px;background-color:#fff;border-radius:10px;box-shadow:0 4px 15px #0000001a}.login-form{display:flex;gap:10px;margin-top:20px}.login-input{flex:1;padding:10px;border-radius:5px;border:1px solid #ddd}.login-btn{padding:10px 20px;background-color:#0056b3;color:#fff;border:none;border-radius:5px;cursor:pointer}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.room-badge{background-color:#e9ecef;padding:5px 10px;border-radius:15px;font-size:.9rem;font-weight:700}.logout-btn{padding:5px 10px;border:1px solid #dc3545;color:#dc3545;background:none;border-radius:4px;cursor:pointer}.orders-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.card{background-color:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 10px #0000000d}.menu-list,.history-list{list-style:none;padding:0}.menu-item,.history-item{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid #eee}.item-price{font-weight:700;margin-right:15px;color:#555}.order-btn{padding:6px 12px;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer}.total-row{display:flex;justify-content:space-between;margin-top:15px;font-size:1.2rem;border-top:2px solid #333;padding-top:10px}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-card{background-color:#fff;padding:40px;border-radius:10px;box-shadow:0 8px 20px #0000001a;width:100%;max-width:400px;text-align:center}.login-card h2{margin-bottom:20px;color:#333}.login-form{display:flex;flex-direction:column;gap:15px}.input-group{text-align:left}.input-group label{display:block;margin-bottom:5px;font-size:.9rem;color:#666}.login-input{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:1rem}.login-btn{width:100%;padding:12px;background-color:#0056b3;color:#fff;border:none;border-radius:5px;font-size:1.1rem;font-weight:700;cursor:pointer;margin-top:10px}.login-btn:hover{background-color:#004494}.admin-container{max-width:1000px;margin:40px auto;padding:20px}.admin-table{width:100%;border-collapse:collapse;background-color:#fff;box-shadow:0 2px 10px #0000001a;border-radius:8px;overflow:hidden}.admin-table th,.admin-table td{padding:15px;text-align:left;border-bottom:1px solid #eee}.admin-table th{background-color:#343a40;color:#fff;font-weight:600}.admin-table tr:hover{background-color:#f8f9fa}.status-badge{padding:4px 8px;border-radius:4px;font-size:.85rem;font-weight:700}.status-booked{background-color:#cce5ff;color:#004085}.action-btn{padding:5px 10px;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;background-color:#dc3545;color:#fff}.action-btn:hover{background-color:#c82333}
