@import url('https://fonts.googleapis.com/css2?family=Sarabun:wght@300;400;500;600;700&display=swap'); body { font-family: 'Sarabun', sans-serif; background-color: #f4f6f9; margin: 0; padding: 0; color: #333; display: flex; min-height: 100vh; } /* Sidebar */ .sidebar { width: 250px; background: #343a40; color: #c2c7d0; display: flex; flex-direction: column; position: fixed; top: 0; left: 0; height: 100vh; box-shadow: 2px 0 10px rgba(0,0,0,0.1); } .sidebar-header { padding: 20px; text-align: center; border-bottom: 1px solid #4f5962; background: #23272b; } .sidebar-header h3 { margin: 0; color: #fff; font-size: 20px; font-weight: 600; } .sidebar-nav { flex: 1; padding-top: 20px; } .sidebar-nav a { display: block; padding: 12px 20px; color: #c2c7d0; text-decoration: none; font-size: 16px; transition: 0.2s; } .sidebar-nav a:hover, .sidebar-nav a.active { background: #007bff; color: #fff; } .sidebar-nav a i { width: 25px; text-align: center; margin-right: 10px; } /* Main Content */ .main-content { flex: 1; margin-left: 250px; display: flex; flex-direction: column; } .top-navbar { background: #fff; padding: 15px 30px; border-bottom: 1px solid #dee2e6; display: flex; justify-content: space-between; align-items: center; box-shadow: 0 1px 5px rgba(0,0,0,0.05); } .top-navbar h4 { margin: 0; font-size: 18px; color: #495057; } .content-wrapper { padding: 30px; flex: 1; } /* Cards */ .card { background: #fff; border-radius: 8px; padding: 25px; box-shadow: 0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2); margin-bottom: 20px; } .card h3 { margin-top: 0; color: #343a40; border-bottom: 1px solid #eee; padding-bottom: 15px; margin-bottom: 20px; } /* Buttons */ .btn-primary { background: #007bff; color: #fff; border: none; padding: 8px 16px; border-radius: 4px; cursor: pointer; text-decoration: none; transition: 0.2s; font-family: inherit; font-size: 15px; } .btn-primary:hover { background: #0056b3; } .btn-danger { background: #dc3545; color: #fff; border: none; padding: 6px 12px; border-radius: 4px; cursor: pointer; text-decoration: none; font-size: 14px;} .btn-warning { background: #ffc107; color: #212529; border: none; padding: 6px 12px; border-radius: 4px; cursor: pointer; text-decoration: none; font-size: 14px;} /* Inputs */ .form-control { width: 100%; padding: 10px; border: 1px solid #ced4da; border-radius: 4px; font-family: inherit; box-sizing: border-box; } /* 2FA 6-digit Inputs (Login & Setup) */ .otp-wrapper { display: flex; justify-content: center; gap: 10px; margin: 20px 0; } .otp-wrapper input { width: 45px; height: 55px; text-align: center; font-size: 24px; font-weight: 700; border: 2px solid #ddd; border-radius: 8px; background: #fdfdfd; transition: 0.3s; font-family: inherit; } .otp-wrapper input:focus { border-color: #007bff; box-shadow: 0 0 8px rgba(0,123,255,0.2); outline: none; }