.container > #title {
    margin-bottom: 0.5rem;
}


.container > #dh-login {
    margin-bottom: 3rem;
}


.container > #dh-login,
.container > #lb-login {

}

.container > #dh-login > div,
.container > #lb-login > div {
    margin-bottom: 1rem;
}

.container > #dh-login > div > #label,
.container > #lb-login > div > #label {
    font-size: 0.7rem;
}

.container > #dh-login > div > input,
.container > #lb-login > div > input {
    width: 100%;
    max-width: 15rem;
}

.container > #lb-login > div > #label > span {
    font-size: 0.67rem;
    color: #777;
    font-style: italic;
}

.container > #dh-login > #description {
    font-size: 0.67rem;
    color: #777;
    margin-top: 0.35rem;
    font-style: italic;
}
.container > #dh-login > #description > a {
    color: #3355FF;
    text-decoration: underline;
}
.container > #dh-login > #description > a:hover {
    color: #5588FF;
    text-decoration: underline;
}

.container > #dh-login > #dh-save-button,
.container > #lb-login > #lb-save-button {
    padding: .2rem .7rem .3rem;
    display: inline-block;
    background-color: #fff;
    color: #805ad5;
    border-radius: .3rem;
    border: 1px solid;
    font-weight: 700;
    cursor: pointer;
    font-size: 0.77rem;
    margin-bottom: 0.35rem;
}
.container > #dh-login > #dh-save-button:hover,
.container > #lb-login > #lb-save-button:hover {
    background-color: #805ad5;
    color: #fff !important;
}


.container > #dh-login > #dh-save-at {
    font-size: 0.8rem;
    color: #777;
}


/* 알림 설정 */
.container > #alert-setting {
    margin-bottom: 0.5rem;
}

.container > #alert-setting > .toggle-container {
    margin-bottom: 1rem;
    display: flex;
    max-width: 15rem;
}

.container > #alert-setting > .toggle-container > #label {
    font-size: 0.8rem;
    min-width: 5.5rem;
}

.container > #alert-setting > #alert-save-button {
    padding: .2rem .7rem .3rem;
    display: inline-block;
    background-color: #fff;
    color: #805ad5;
    border-radius: .3rem;
    border: 1px solid;
    font-weight: 700;
    cursor: pointer;
    font-size: 0.77rem;
    margin-bottom: 0.35rem;
}

.container > #alert-setting > #alert-save-button:hover {
    background-color: #805ad5;
    color: #fff !important;
}


/* 알림 기기 설정 */
.container > #alert-device-list {
    margin-bottom: 3rem;
}

.container > #alert-device-list > #list {
    margin-bottom: 0.5rem;
    width: 100%;
    max-width: 20rem;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    overflow: hidden;
    background: #fff;
}
.container > #alert-device-list > #list:empty::after{
    content: '등록된 기기가 없습니다';
    display: block;
    text-align: center;
    font-style: italic;
    margin: 0.5rem;
    font-size: 0.67rem;
}

.container > #alert-device-list > #list > #item {
    padding: 0.7rem 0.9rem;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    transition: background 0.2s ease;
}

.container > #alert-device-list > #list > #item:hover {
    background: #f7fafc;
}

.container > #alert-device-list > #list > #item:last-child {
    border-bottom: none;
}


.container > #alert-device-list > #list > #item > #info {
    display: grid;
    grid-template-columns: 1fr auto auto;
    align-items: center;
    gap: 0.5rem;
}

.container > #alert-device-list > #list > #item > #info > #name {
    font-size: 0.9rem;
    font-weight: 600;
    color: #2d3748;
    letter-spacing: -0.01em;
}

.container > #alert-device-list > #list > #item > #info > #time {
    font-size: 0.8rem;
    color: #718096;
    white-space: nowrap;
}

.container > #alert-device-list > #list > #item > #info > #delete {
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.35rem;
    background-color: #f7fafc;
    color: #a0aec0;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.container > #alert-device-list > #list > #item > #info > #delete:hover {
    background-color: #ffecec;
    color: #e53e3e;
}

.container > #alert-device-list > #list > #item > #info > #delete:active {
    transform: scale(0.97);
}

.container > #alert-device-list > #list > #item > #info > #delete > i {
    font-size: 0.85rem;
}

.container > #alert-device-list > #list > #item > #sub-info > #isExpired {
    font-size: 0.8rem;
    color: #e53e3e;
    white-space: nowrap;
    font-style: italic;
}


.container > #alert-device-list > #add-device-button {
    padding: .2rem .7rem .3rem;
    display: inline-block;
    width: 100%;
    max-width: 20rem;
    text-align: center;
    background-color: #fff;
    color: #805ad5;
    border-radius: .3rem;
    border: 1px solid;
    font-weight: 700;
    cursor: pointer;
    font-size: 0.77rem;
    margin-bottom: 0.35rem;
    transition: all 0.2s ease;
    box-sizing: border-box;
}
.container > #alert-device-list > #add-device-button:hover {
    background-color: #805ad5;
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(128, 90, 213, 0.3);
}
