/* Menu Section */
.menu-section { flex: 1; padding: clamp(10px, 3vw, 16px) clamp(16px, 5vw, 24px) clamp(20px, 5vw, 40px); overflow-y: auto; overflow-x: hidden; }
.menu-category { margin-bottom: clamp(16px, 4vw, 24px); }
.menu-category:last-child { margin-bottom: 0; }
.category-title { font-size: 16px; font-weight: 700; color: #1a1a1a; margin-bottom: clamp(10px, 3vw, 14px); display: flex; align-items: center; gap: clamp(8px, 2vw, 12px); }
.category-icon { width: clamp(20px, 5vw, 24px); height: clamp(20px, 5vw, 24px); border-radius: clamp(4px, 1vw, 6px); display: flex; align-items: center; justify-content: center; font-size: clamp(10px, 2.5vw, 14px); }
.icon-lms { background: linear-gradient(45deg, #4facfe, #00f2fe); }
.icon-partner { background: linear-gradient(45deg, #fa709a, #fee140); }
.icon-support { background: linear-gradient(45deg, #a8edea, #fed6e3); }
.icon-content { background: linear-gradient(45deg, #43e97b, #38f9d7); }

/* Standard 2x2 Grid Menu */
.menu-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(6px, 2vw, 10px); }
.menu-item { padding: clamp(12px, 3vw, 16px); background: white; border-radius: clamp(10px, 3vw, 16px); border: 1px solid rgba(0,0,0,0.06); text-decoration: none; color: #333; transition: all 0.3s ease; display: flex; align-items: center; gap: clamp(8px, 2vw, 12px); box-shadow: 0 2px 12px rgba(0,0,0,0.04); min-height: clamp(50px, 12vw, 70px); }
.menu-item:hover { transform: translateY(-3px); box-shadow: 0 6px 24px rgba(0,0,0,0.12); border-color: #ff9500; }
.menu-item-icon { font-size: clamp(16px, 4vw, 20px); flex-shrink: 0; }
.menu-item-text { font-size: 14px; font-weight: 600; line-height: 1.3; /* 한국어 어절 단위 줄바꿈 */ word-break: keep-all; overflow-wrap: break-word; white-space: normal; hyphens: none; }

/* Horizontal Content Menu for 영어콘텐츠 */
.content-menu-grid { display: flex; gap: clamp(4px, 1vw, 8px); overflow-x: auto; padding-bottom: 4px; }
.content-menu-item { flex: 1; min-width: clamp(55px, 18vw, 75px); padding: clamp(10px, 2.5vw, 14px) clamp(4px, 1vw, 8px); background: white; border-radius: clamp(10px, 3vw, 14px); border: 1px solid rgba(0,0,0,0.06); text-decoration: none; color: #333; transition: all 0.3s ease; display: flex; flex-direction: column; align-items: center; text-align: center; box-shadow: 0 2px 12px rgba(0,0,0,0.04); position: relative; overflow: hidden; }
.content-menu-item::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, #43e97b 0%, #38f9d7 100%); transform: translateX(-100%); transition: transform 0.3s ease; }
.content-menu-item:hover::before { transform: translateX(0); }
.content-menu-item:hover { transform: translateY(-3px); box-shadow: 0 6px 20px rgba(0,0,0,0.12); border-color: #43e97b; }
.content-menu-item-icon { font-size: clamp(16px, 4vw, 20px); margin-bottom: clamp(4px, 1vw, 6px); }
.content-menu-item-text { font-size: 12px; font-weight: 500; line-height: 1.2; /* 한국어 어절 단위 줄바꿈 */ word-break: keep-all; overflow-wrap: break-word; white-space: normal; hyphens: none; }

/* 애니메이션 */
@keyframes slideInUp { 
	from { opacity: 0; transform: translateY(20px); }
	to { opacity: 1; transform: translateY(0); }
}
.menu-category { animation: slideInUp 0.5s ease forwards; opacity: 0; }
.menu-category:nth-child(1) { animation-delay: 0.1s; }
.menu-category:nth-child(2) { animation-delay: 0.2s; }
.menu-category:nth-child(3) { animation-delay: 0.3s; }
.menu-category:nth-child(4) { animation-delay: 0.4s; }

/* 스크롤바 스타일링 */
.content-menu-grid::-webkit-scrollbar { height: 4px; }
.content-menu-grid::-webkit-scrollbar-track { background: rgba(0,0,0,0.05); border-radius: 2px; }
.content-menu-grid::-webkit-scrollbar-thumb { background: rgba(67, 233, 123, 0.3); border-radius: 2px; }
.menu-section::-webkit-scrollbar { width: 4px; }
.menu-section::-webkit-scrollbar-track { background: rgba(0,0,0,0.05); }
.menu-section::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.2); border-radius: 2px; }