body {
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.container {
    max-width: 800px;
    padding: 20px;
    width: 100%;
    box-sizing: border-box;
}

h1 {
    color: #003366;
    margin-bottom: 20px;
    text-align: left;
}

h2, h3 {
    color: #003366;
    margin-top: 20px;
    text-align: left;
}

form {
    margin-bottom: 20px;
    text-align: left;
}

input[type="file"] {
    display: none;
}

.upload-btn {
    display: inline-block;
    background-color: #003366;
    color: white;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s ease;
}

.upload-btn:hover {
    background-color: #005587;
}

.method-btn-container {
    text-align: left;
    margin-bottom: 20px;
}

.method-btn {
    display: inline-block;
    background-color: #003366;
    color: white;
    border: none;
    padding: 10px 20px;
    margin: 0 10px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s ease;
}

.method-btn:hover {
    background-color: #005587;
}

ul {
    list-style-type: none;
    padding-left: 0;
}

li {
    margin-bottom: 5px;
}

#showAllButton, #downloadLink {
    margin-top: 10px;
    text-align: left;
}

#hashedEmailList {
    padding-left: 20px;
}

#instructions {
    font-size: 12px;
}

#showAllButton {
    display: none;
}

#downloadLink {
    display: none;
    text-align: left;
}

.upload-message, .progress-container {
    display: none;
    margin-top: 10px;
    text-align: left;
}

.progress-bar {
    width: 0;
    height: 20px;
    background-color: #4CAF50;
}

#scrollTopBtn {
    display: none; /* 기본적으로는 숨겨져있음 */
    position: fixed; /* 고정 위치 */
    bottom: 10px; /* 하단부터 10px 위에 위치 */
    right: 10px; /* 오른쪽부터 10px 왼쪽에 위치 */
    z-index: 1000; /* 다른 요소 위에 표시됨 */
    transition: transform 0.3s, opacity 0.3s; /* 애니메이션 효과 추가 */
    transform: scale(0.95); /* 약간 축소되어 시작 */
}

#scrollTopBtn img {
    width: 55px;
    height: 55px;
}

#scrollTopBtn:hover {
    transform: scale(1); /* 마우스 호버 시 원래 크기로 확장 */
    box-shadow: 0 5px 15px rgba(0,0,0,0.3); /* 그림자 효과 추가 */
}

footer {
    margin-top: auto;
    margin-bottom: 20px;
    color: #666;
    text-align: center;
    width: 100%;
}

footer a {
    color: #003366;
    text-decoration: none;
}
