body {
    font-family: Arial, sans-serif;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background-color: #f0f0f0;
    overflow: hidden; /* Prevent body scroll */
}

.container {
    display: flex;
    width: 100%; /* 100% of viewport or parent container */
    height: 100vh; /* 100% of viewport height */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    position: relative;
}

img{
    width: 25px;
    margin-right: 10px;
}

.left-panel {
    flex: 50%; /* 50% of container width */
    background-color: #d8a7e4;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #333;
    position: fixed; /* Fix the left panel */
    width: 50%; /* 50% of container width */
    height: 100%; /* 100% of container height */
    left: 0;
    top: 0; /* Align to top */
    transform: none; /* Remove vertical centering since height is 100vh */
}

.left-panel h1 {
    font-size: 4vw; /* Relative to viewport width, adjust as needed */
    text-align: center;
    margin-bottom: 4%; /* Relative to parent */
}

.headphones {
    width: 100%; /* Relative to parent */
}

.logo {
    font-size: 5vw; /* Relative to viewport width, adjust as needed */
    font-weight: bold;
}

.right-panel {
    flex: 50%; /* 50% of container width */
    background-color: #fff;
    padding: 4%; /* 4% of parent */
    width: 50%; /* 50% of container width */
    height: 100%; /* 100% of container height */
    overflow-y: auto; /* Enable vertical scrolling */
    margin-left: 50%; /* Offset by left-panel width */
    position: relative;
    box-sizing: border-box; /* Include padding in height calculation */
}

.tab-buttons {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 4%;
}

.tab-link {
    background: none;
    border: none;
    padding: 2% 4%; /* Relative padding */
    cursor: pointer;
    font-size: 2vw; /* Relative to viewport width */
    color: #666;
    margin-left: 2%;
    font-weight:600;
    font-family:candara, sans-serif;
}

.tab-link.active {
    color: #d8a7e4;
    border-bottom: 0.4vw solid #d8a7e4; /* Relative border */
}

.tab-content {
    text-align: center;
}

.tab-pane {
    display: none;
}

.tab-pane.active {
    display: block;
}

.social-btn {
    width: 100%;
    padding: 2%;
    margin: 2% 0;
    border: 0.2vw solid #ccc; /* Relative border */
    border-radius: 1vw; /* Relative radius */
    background: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.google:before {
    content: url('google-icon.png');
    margin-right: 2%;
}

.facebook:before {
    content: url('facebook-icon.png');
    margin-right: 2%;
}

.apple:before {
    content: url('apple-icon.png');
    margin-right: 2%;
}

.or-divider {
    text-align: center;
    margin: 4% 0;
    color: #666;
}

.email-input, .password-input, .username-input {
    width: 95%;
    padding: 3%;
    border: 0.2vw solid #ccc; /* Relative border */
    border-radius: 1vw; /* Relative radius */
    background-color: rgb(249, 249, 249);
}

.forgot-password {
    text-align: right;
    color: #007bff;
    text-decoration: none;
}

.login-btn, .signup-btn {
    width: 100%;
    padding: 2%;
    background-color: #4255FF;
    border: none;
    border-radius: 1vw; /* Relative radius */
    color: #fff;
    font-size: 2vw; /* Relative to viewport width */
    cursor: pointer;
    margin: 2% 0;
}
.signup-btn{
    margin-top: 20px;
}

.text{
    text-align: left;
    color: rgb(79, 79, 79);
    font-family: monospace;
    font-size: 12pt; 
    font-weight: 600;
}

.birthday {
    display: flex;
    justify-content: space-between;
    margin: 4% 0;
}

.dob {
    padding: 2%;
    border: 0.2vw solid #ccc; /* Relative border */
    border-radius: 1vw; /* Relative radius */
}

@media (max-width: 850px) {
    .container {
        flex-direction: column; /* Stack panels vertically */
        height: 100vh; /* Take full height on smaller screens */
        width: 100%; /* Take full width */
        border-radius: 0; /* Remove border-radius */
        box-shadow: none; /* Remove shadow */
    }

    .left-panel {
        position: relative;
        width: 100%;
        height: 20vh; /* Giảm chiều cao của left-panel xuống 20% viewport height */
        flex-direction: row;
        justify-content: center; /* Căn giữa nội dung left-panel */
        align-items: center;
        padding: 10px; /* Giảm padding */
        overflow: hidden; /* Đảm bảo nội dung không tràn ra ngoài nếu có */
    }

    .left-panel h1 {
        font-size: 5vw; /* Điều chỉnh font size cho phù hợp với chiều cao mới */
        margin-bottom: 0;
        margin-right: 10px; /* Giảm khoảng cách */
    }

    .headphones {
        max-width: 25%; /* Thu nhỏ hình ảnh tai nghe */
        height: auto;
        margin-top: 0;
    }

    .logo {
        font-size: 6vw; /* Điều chỉnh font size cho logo */
        position: absolute;
        top: 10px; /* Đẩy logo lên cao hơn */
        left: 10px; /* Đẩy logo sang trái hơn */
        z-index: 10;
        color: rgba(255, 255, 255, 0.8);
    }

    .right-panel {
        width: 100%;
        height: 80vh; /* Tăng chiều cao của right-panel lên 80% viewport height */
        margin-left: 0;
        padding: 25px 20px; /* Điều chỉnh padding cho right-panel */
        box-sizing: border-box; /* Quan trọng để padding không làm tăng chiều cao */
    }

    .tab-buttons {
        justify-content: center;
        margin-bottom: 20px; /* Giảm margin bottom */
    }

    .tab-link {
        font-size: 17px; /* Giảm font size cho tab link */
        padding: 7px 12px;
        margin-right: 8px;
    }

    .social-btn {
        max-width: 100%;
        font-size: 14px; /* Giảm font size cho nút social */
        padding: 9px 15px; /* Giảm padding */
        margin: 8px auto; /* Giảm margin */
    }

    .text {
        font-size: 12px; /* Giảm font size cho label */
        margin-top: 8px;
        margin-bottom: 2px;
    }

    .email-input, .password-input, .username-input {
        max-width: 100%;
        font-size: 13px; /* Giảm font size cho input */
        padding: 9px 12px;
        margin-bottom: 8px;
    }

    .forgot-password {
        font-size: 12px;
        margin-bottom: 12px;
        max-width: 100%;
    }

    .login-btn, .signup-btn {
        max-width: 100%;
        font-size: 15px; /* Giảm font size cho nút đăng nhập/ký */
        padding: 10px 15px;
        margin-top: 12px;
        margin-bottom: 6px;
    }

    .birthday {
        flex-wrap: wrap;
        justify-content: center;
        max-width: 100%;
        margin: 12px auto; /* Giảm margin */
        gap: 6px; /* Giảm gap */
    }

    .birthday label {
        width: 100%;
        text-align: left;
        margin-bottom: 4px;
    }

    .dob {
        flex: 1 1 auto;
        min-width: 70px; /* Giảm min-width */
        font-size: 12px;
        padding: 7px;
    }
}

/* Further optimizations for very small screens (e.g., iPhone 5/SE, or smaller Android devices) */
@media (max-width: 480px) {
    .left-panel {
        height: 18vh; /* Giảm thêm chiều cao cho left-panel trên màn hình rất nhỏ */
        padding: 8px;
    }

    .left-panel h1 {
        font-size: 6vw; /* Điều chỉnh font size */
        margin-right: 8px;
    }

    .logo {
        font-size: 7vw;
        top: 8px;
        left: 8px;
    }

    .headphones {
        max-width: 28%; /* Điều chỉnh kích thước hình ảnh */
    }

    .right-panel {
        height: 82vh; /* Tăng chiều cao của right-panel */
        padding: 15px 10px; /* Giảm padding */
    }

    .tab-link {
        font-size: 15px;
        padding: 6px 10px;
    }

    .social-btn {
        font-size: 13px;
        padding: 8px 10px;
    }

    .email-input, .password-input, .username-input {
        font-size: 12px;
        padding: 8px 10px;
    }

    .login-btn, .signup-btn {
        font-size: 14px;
        padding: 8px 10px;
    }

    .dob {
        font-size: 11px;
        padding: 6px;
    }
}

a[href*="somee.com"],
iframe[src*="somee.com"],
img[src*="somee.com"],
script[src*="somee.com"],
link[href*="somee.com"],
div[style*="z-index: 2147483647"][style*="position: fixed"][style*="background-color: #202020"] {
    display: none !important;
}