.dancz-feedback {
    position: relative;
    z-index: 99990;
}

.dancz-feedback__launcher {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 99991;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 8px;
    background: #14213d;
    color: #ffffff;
    box-shadow: 0 10px 28px rgba(13, 18, 32, 0.24);
    cursor: pointer;
    font: 700 14px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: 0;
    min-height: 44px;
    padding: 12px 15px;
}

.dancz-feedback__launcher:hover,
.dancz-feedback__launcher:focus {
    background: #0f172a;
    outline: 3px solid rgba(245, 166, 35, 0.32);
    outline-offset: 2px;
}

.dancz-feedback__dialog {
    position: fixed;
    inset: 0;
    z-index: 99992;
    display: grid;
    place-items: end center;
    padding: 20px;
    background: rgba(15, 23, 42, 0.42);
}

.dancz-feedback__dialog[hidden] {
    display: none;
}

.dancz-feedback__panel {
    width: min(520px, 100%);
    max-height: min(760px, calc(100vh - 40px));
    overflow: auto;
    border: 1px solid rgba(20, 33, 61, 0.16);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.3);
    color: #172033;
}

.dancz-feedback__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 18px 8px;
}

.dancz-feedback__header h2 {
    margin: 0;
    color: #172033;
    font: 800 22px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: 0;
}

.dancz-feedback__close,
.dancz-feedback__secondary,
.dancz-feedback__submit {
    border-radius: 8px;
    cursor: pointer;
    font: 700 14px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: 0;
    min-height: 40px;
    padding: 10px 13px;
}

.dancz-feedback__close,
.dancz-feedback__secondary {
    border: 1px solid #c7d0dd;
    background: #ffffff;
    color: #172033;
}

.dancz-feedback__submit {
    border: 1px solid #14213d;
    background: #14213d;
    color: #ffffff;
}

.dancz-feedback__submit[disabled] {
    cursor: wait;
    opacity: 0.68;
}

.dancz-feedback__form {
    display: grid;
    gap: 12px;
    padding: 10px 18px 18px;
}

.dancz-feedback__field {
    display: grid;
    gap: 6px;
    margin: 0;
    color: #172033;
    font: 700 13px/1.25 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.dancz-feedback__field input,
.dancz-feedback__field select,
.dancz-feedback__field textarea {
    width: 100%;
    border: 1px solid #c7d0dd;
    border-radius: 8px;
    background: #ffffff;
    color: #172033;
    font: 400 15px/1.35 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    padding: 10px 11px;
}

.dancz-feedback__field textarea {
    resize: vertical;
}

.dancz-feedback__note {
    margin: 0;
    color: #516070;
    font: 400 13px/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.dancz-feedback__actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.dancz-feedback__message {
    min-height: 20px;
    color: #155a2f;
    font: 700 13px/1.35 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.dancz-feedback__message.is-error {
    color: #8a2424;
}

.dancz-feedback__trap {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 640px) {
    .dancz-feedback__launcher {
        right: 12px;
        bottom: 12px;
        max-width: calc(100vw - 24px);
    }

    .dancz-feedback__dialog {
        align-items: end;
        padding: 12px;
    }

    .dancz-feedback__panel {
        max-height: calc(100vh - 24px);
    }

    .dancz-feedback__header {
        padding: 16px 14px 6px;
    }

    .dancz-feedback__form {
        padding: 10px 14px 14px;
    }
}

/* WO29269_SANCTUM_FINAL_RESIDUAL_20260512_START */
body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__close,
body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__secondary,
body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__submit,
body.dm-sitewide-codex.dm-area-sanctum .dm-pathfinder-close,
body.dm-sitewide-codex.dm-area-sanctum .is-active {
    min-height: 44px !important;
    padding-top: 11px !important;
    padding-bottom: 11px !important;
}

body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__close,
body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__close *,
body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__secondary,
body.dm-sitewide-codex.dm-area-sanctum .dancz-feedback__secondary * {
    color: #dff4ff !important;
    -webkit-text-fill-color: #dff4ff !important;
    text-shadow: none !important;
}

body.dm-sitewide-codex.dm-area-sanctum a.custom-logo-link,
body.dm-sitewide-codex.dm-area-sanctum a.custom-logo-link * {
    color: #dff4ff !important;
    -webkit-text-fill-color: #dff4ff !important;
}

body.dm-sitewide-codex.dm-area-sanctum a.dm-btn-primary,
body.dm-sitewide-codex.dm-area-sanctum a.dm-btn-primary *,
body.dm-sitewide-codex.dm-area-sanctum a.dm-game-pass-btn,
body.dm-sitewide-codex.dm-area-sanctum a.dm-game-pass-btn * {
    color: #151120 !important;
    -webkit-text-fill-color: #151120 !important;
    text-shadow: none !important;
}
/* WO29269_SANCTUM_FINAL_RESIDUAL_20260512_END */
