.nsT3AiBlock {
  height: 100%;
  padding: 20px;
}

.nsT3AiBlock .d-none {
  display: none;
}

#ns-custom-tooltip {
  display: none;
  margin-left: 2px;
  padding: 5px 12px;
  background-color: rgba(0, 0, 0, 0.8);
  border-radius: 4px;
  color: #fff;
}

.nsOpenSidebarHeaderBlock {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 10px 20px;
  background-color: var(--typo3-state-primary-bg, var(--typo3-link-color, #0078e6));
}

.nsOpenSidebarHeaderBlock .nsT3Aiheader {
  margin: 0;
  color: #fff;
  display: flex;
  align-items: center;
}

.nsOpenSidebarHeaderBlock .nsT3Aiheader .t3js-icon {
  margin-right: 8px;
}

@keyframes chq-chatgpt-lnline-tag-animation {
  0% { left: -40%; } 50% { left: 20%; width: 80%; } 100% { left: 100%; width: 100%; }
}

/*Modal Style*/
.ns_t3aa--modal-full .modal-content,
.ns_t3aa--modal-large .modal-content,
.ns_t3aa--modal-medium .modal-content,
.ns_t3aa--modal-default .modal-content,
.ns_t3aa--modal-small .modal-content {
  width: 100%;
}

.ns_t3aa--modal.modal-severity-notice .modal-header {
  background-color: var(--typo3-badge-primary-bg, light-dark(#f2f2f2, #181818));
  color: var(--typo3-badge-primary-color, light-dark(#000000, #ffffff));
  border-bottom-color: var(--typo3-component-border-color, light-dark(#c6c6c6, #4b4b4b));
}

.ns_t3aa--modal.modal-severity-info .modal-header {
  background-color: #333;
  color: #fff;
  border-bottom-color: #2e2e2e;
}

.ns_t3aa--modal .modal-dialog {
  padding: 0 5%;
}

.ns_t3aa--modal .modal-content {
  border: 0;
}
.ns_t3aa--modal.ns_t3aa--modal-full .modal-content {
  height: 100vh;
  max-width: 100%;
  width: 100%;
}

.ns_t3aa--modal.ns_t3aa--modal-large .modal-content {
  height: 90vh;
  max-width: 1600px;
  width: 100%;
}

.ns_t3aa--modal.ns_t3aa--modal-medium .modal-content {
  height: 73vh;
  max-width: 1000px;
  width: 100%;
}

.t3-ai-video-modal.ns_t3aa--modal.ns_t3aa--modal-medium .modal-content {
  height: 675px;
}

.ns_t3aa--modal.ns_t3aa--modal-default .modal-content {
  height: 500vh;
  max-width: 800px;
  width: 100%;
}

.ns_t3aa--modal.ns_t3aa--modal-small .modal-content {
  max-width: 600px;
  min-height: 400px;
  width: 100%;
}

/* TYPO3 v14+: native <dialog class="modal"> (no .modal-dialog / .modal-content) */
.ns_t3aa--modal.modal.ns_t3aa--modal-full {
  --typo3-modal-width: 100%;
  --typo3-modal-height: 100dvh;
}

.ns_t3aa--modal.modal.ns_t3aa--modal-large {
  --typo3-modal-height: 90dvh;
  --typo3-modal-width: min(1600px, calc(100dvw - 3rem));
}

.ns_t3aa--modal.modal.ns_t3aa--modal-medium {
  --typo3-modal-height: 73dvh;
  --typo3-modal-width: min(1000px, calc(100dvw - 3rem));
}

.t3-ai-video-modal.ns_t3aa--modal.modal.ns_t3aa--modal-medium {
  --typo3-modal-height: 675px;
}

.ns_t3aa--modal.modal.ns_t3aa--modal-default {
  --typo3-modal-height: 500px;
  --typo3-modal-width: min(800px, calc(100dvw - 3rem));
}

.ns_t3aa--modal.modal.ns_t3aa--modal-small {
  --typo3-modal-height: fit-content;
  --typo3-modal-width: min(600px, calc(100dvw - 3rem));
  min-height: 400px;
}

/* Parent-page iframe modals: ensure body + iframe fill the dialog (v13 + v14) */
.ns_t3aa--modal.modal-type-iframe .modal-body,
.ns_t3aa--modal.modal-type-iframe .t3js-modal-body,
.ns-accesstive-modal.modal-type-iframe .modal-body,
.ns-accesstive-modal.modal-type-iframe .t3js-modal-body,
.feature-configuration-modal.modal-type-iframe .modal-body,
.feature-configuration-modal.modal-type-iframe .t3js-modal-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  position: relative;
}

.ns_t3aa--modal.modal-type-iframe .modal-iframe,
.ns_t3aa--modal.modal-type-iframe .t3js-modal-iframe,
.ns-accesstive-modal.modal-type-iframe .modal-iframe,
.ns-accesstive-modal.modal-type-iframe .t3js-modal-iframe,
.feature-configuration-modal.modal-type-iframe .modal-iframe,
.feature-configuration-modal.modal-type-iframe .t3js-modal-iframe {
  border: 0;
  display: block;
  height: 100%;
  inset-inline-start: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.nst3aa-dropdown-menu {
  .icon-action-alttext,
  .icon-action-media-aa-images {
    background-color: #fff;
  }
}