.tlgdc-modal[hidden] { display: none; }
.tlgdc-modal {
    position: fixed; inset: 0; z-index: 10000;
    display: flex; align-items: center; justify-content: center;
}
.tlgdc-modal__backdrop {
    position: absolute; inset: 0;
    background: rgba(0, 0, 0, 0.55);
}
.tlgdc-modal__dialog {
    position: relative; z-index: 1;
    background: #fff; border-radius: 6px;
    width: 92%; max-width: 480px;
    max-height: 90vh; overflow: auto;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
    color: #666;
}
.tlgdc-modal__header,
.tlgdc-modal__body,
.tlgdc-modal__footer { padding: 16px 20px; }
.tlgdc-modal__header { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #eee; }
.tlgdc-modal__title { margin: 0; font-size: 1.15rem; }
.tlgdc-modal__close {
    background: none; border: 0; font-size: 1.6rem; line-height: 1;
    cursor: pointer; color: #666;
}
.tlgdc-modal__hint { font-size: 0.85rem; color: #666; margin-top: 8px; }
.tlgdc-modal__footer { border-top: 1px solid #eee; text-align: right; }
body.tlgdc-modal-open { overflow: hidden; }

.tlgdc-nav { display: inline-block; }
.tlgdc-nav__btn {
    display: inline-flex; align-items: center; gap: 6px;
    background: transparent; border: 1px solid transparent;
    padding: 4px 10px; cursor: pointer;
    color: inherit; font: inherit; line-height: 1.2;
    border-radius: 3px;
}
.tlgdc-nav__btn:hover,
.tlgdc-nav__btn:focus { border-color: currentColor; outline: none; }
.tlgdc-nav__icon { font-size: 1em; }
.tlgdc-nav__label { white-space: nowrap; }
