/* 기본 폰트 및 스크롤 설정 */
html {
    scroll-behavior: smooth;
    /* 모바일 헤더 높이만큼 스크롤 보정 */
    scroll-padding-top: 5rem; 
}

body {
    /* 한글 단어 중간에 끊기지 않도록 설정 */
    word-break: keep-all; 
    overflow-x: hidden;
}

/* 고령자 접근성: 탭 이동 시 노란색 테두리 강조 */
:focus-visible {
    outline: 4px solid #FFB300;
    outline-offset: 2px;
    z-index: 9999;
}

::selection {
    background: #FFB300;
    color: #003366;
}

/* 모바일 메뉴 열렸을 때 스크롤 잠금 */
body.menu-open {
    overflow: hidden;
}

/* 모바일 푸터 아코디언 삼각형 제거 */
details > summary {
    list-style: none;
}
details > summary::-webkit-details-marker {
    display: none;
}

/* 아이폰 하단 노치 영역 대응 */
.safe-area-bottom {
    padding-bottom: env(safe-area-inset-bottom);
    height: calc(4rem + env(safe-area-inset-bottom));
}