.itd-ut-gdl {
    --itd-gdl-border: #c9cdd2;
    --itd-gdl-muted: #f4f5f6;
    --itd-gdl-header: #e7eaee;
    --itd-gdl-header-strong: #d6dbe1;
    --itd-gdl-text: #252a30;
    --itd-gdl-accent: #3155df;
    color: var(--itd-gdl-text);
    container-type: inline-size;
    margin-block: 1.5rem;
    max-width: 100%;
    min-width: 0;
}

.itd-ut-gdl *, .itd-ut-gdl *::before, .itd-ut-gdl *::after { box-sizing: border-box; }
.itd-ut-gdl :where(p, ol, dl) { overflow-wrap: break-word; }
.itd-ut-gdl__heading, .itd-ut-gdl__state-heading { margin-block: 0 1rem; }
.itd-ut-gdl__message { background: var(--itd-gdl-muted); padding: .8rem 1rem; }
.itd-ut-gdl__message--error { border-inline-start: .25rem solid #b32d2e; }

.itd-ut-gdl__selector form, .itd-ut-gdl__fallback-controls form, .itd-ut-gdl__search { margin-block-end: 1.25rem; }
.itd-ut-gdl :where(label) { display: block; font-weight: 600; margin-block-end: .45rem; }
.itd-ut-gdl__selector-controls, .itd-ut-gdl__search > div, .itd-ut-gdl__lookup-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.itd-ut-gdl :where(select, input[type="search"], input[type="text"], button) { font: inherit; min-height: 2.75rem; }
.itd-ut-gdl :where(select, input[type="search"], input[type="text"]) { border: 1px solid var(--itd-gdl-border); border-radius: .2rem; max-width: 100%; min-width: min(18rem, 100%); padding: .55rem .65rem; }
.itd-ut-gdl button { cursor: pointer; }
.itd-ut-gdl button:disabled { cursor: not-allowed; opacity: .55; }
.itd-ut-gdl :where(button, select, input, [tabindex="0"]):focus-visible { outline: 3px solid #146c94; outline-offset: 3px; }

.itd-ut-gdl__scroll-instruction { font-size: .9em; margin-block: .5rem; }
.itd-ut-gdl__table-region { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; padding: 3px; }
.itd-ut-gdl__table { border-collapse: collapse; inline-size: 100%; min-inline-size: 85rem; table-layout: fixed; }
.itd-ut-gdl__col-state { width: 4.5rem; }
.itd-ut-gdl__col-learner-age { width: 7rem; }
.itd-ut-gdl__col-holding { width: 8.5rem; }
.itd-ut-gdl__col-supervised { width: 12rem; }
.itd-ut-gdl__col-intermediate-age { width: 7rem; }
.itd-ut-gdl__col-night { width: 10rem; }
.itd-ut-gdl__col-passenger { width: 18rem; }
.itd-ut-gdl__col-unrestricted { width: 18rem; }
.itd-ut-gdl__table caption { font-weight: 700; padding: .5rem; text-align: start; }
.itd-ut-gdl__table :where(th, td) { border: 1px solid var(--itd-gdl-border); hyphens: none; overflow-wrap: normal; padding: .7rem; text-align: start; vertical-align: top; white-space: normal; word-break: normal; }
.itd-ut-gdl__table td { overflow-wrap: break-word; }
.itd-ut-gdl__table :where(th, td) * { hyphens: none; word-break: normal; }
.itd-ut-gdl__table thead tr:first-child th { background: var(--itd-gdl-header-strong); text-align: center; }
.itd-ut-gdl__table thead tr:nth-child(2) th { background: var(--itd-gdl-header); }
.itd-ut-gdl__table tbody th[scope="row"] { background: var(--itd-gdl-muted); font-weight: 700; white-space: nowrap; }
.itd-ut-gdl__table tbody tr:nth-child(4n + 3) td { background: #fafbfc; }
.itd-ut-gdl__table tr[hidden] { display: none !important; }
.itd-ut-gdl__results { margin: .45rem 0 0; }

.itd-ut-gdl__unrestricted { display: grid; gap: .65rem; margin: 0; }
.itd-ut-gdl__unrestricted div { display: grid; gap: .15rem; }
.itd-ut-gdl__unrestricted dt { font-weight: 700; }
.itd-ut-gdl__unrestricted dd { margin: 0; }
.itd-ut-gdl__footnote-row th, .itd-ut-gdl__footnote-row td { background: #fafbfc; border-block-start: 0; font-size: .94em; }
.itd-ut-gdl__footnote-row ol { margin: 0; padding-inline-start: 1.4rem; }
.itd-ut-gdl__footnote-row p { margin: 0; }
.itd-ut-gdl__metadata { background: var(--itd-gdl-muted); display: grid; gap: .4rem; margin-block: 1.5rem .75rem; padding: 1rem; }
.itd-ut-gdl__metadata > div { display: grid; gap: .5rem; grid-template-columns: minmax(9rem, auto) 1fr; }
.itd-ut-gdl__metadata dt { font-weight: 700; }
.itd-ut-gdl__metadata dd { margin: 0; }
.itd-ut-gdl__disclaimer { font-size: .92em; }

.itd-ut-gdl__combobox { max-width: 36rem; position: relative; }
.itd-ut-gdl__combobox > input { inline-size: 100%; }
.itd-ut-gdl__listbox { background: #fff; border: 1px solid var(--itd-gdl-border); box-shadow: 0 .5rem 1.5rem rgba(20, 25, 35, .16); inset: calc(100% + 2px) 0 auto; max-height: 18rem; overflow-y: auto; position: absolute; z-index: 4; }
.itd-ut-gdl__listbox [role="option"] { background: #fff; border: 0; border-radius: 0; color: var(--itd-gdl-text); display: block; inline-size: 100%; min-height: 2.5rem; padding: .55rem 1rem; text-align: start; }
.itd-ut-gdl__listbox [role="option"]:hover, .itd-ut-gdl__listbox [role="option"][aria-selected="true"] { background: var(--itd-gdl-header); }
.itd-ut-gdl__lookup-actions { margin-block-start: .75rem; }
.itd-ut-gdl__lookup-status { min-height: 1.4em; }

.itd-ut-gdl__button-form { margin: 0; }
.itd-ut-gdl__button-form::after, .itd-ut-gdl__button-shell::after { clear: both; content: ""; display: table; }
.itd-ut-gdl__button-mode { min-width: 0; }
.itd-ut-gdl__button-shell { max-width: 100%; }
.itd-ut-gdl__button-shell.gem-button-position-inline { display: inline-block; vertical-align: top; }
.itd-ut-gdl__button-shell.gem-button-position-left { float: left; }
.itd-ut-gdl__button-shell.gem-button-position-right { float: right; }
.itd-ut-gdl__button-shell.gem-button-position-center { clear: both; display: block; text-align: center; }
.itd-ut-gdl__button-shell.gem-button-position-fullwidth { clear: both; display: block; }
.itd-ut-gdl__button-shell.gem-button-position-fullwidth .itd-ut-gdl__action { inline-size: 100%; margin-inline: 0; }
.itd-ut-gdl__button-shell.gem-button-position-left .itd-ut-gdl__action { margin-left: 0; margin-top: 0; }
.itd-ut-gdl__button-shell.gem-button-position-right .itd-ut-gdl__action { margin-right: 0; margin-top: 0; }
.itd-ut-gdl__button-shell.gem-button-position-center .itd-ut-gdl__action { margin-left: 0; margin-right: 0; margin-top: 0; }
.itd-ut-gdl__button-shell.gem-button-position-fullwidth .itd-ut-gdl__action { margin-left: 0; margin-right: 0; margin-top: 0; }
.itd-ut-gdl__action.gem-button {
    appearance: none;
    align-items: center;
    display: inline-flex;
    gap: .5rem;
    justify-content: center;
    text-decoration: none;
}
.itd-ut-gdl__action svg { block-size: 1em; inline-size: 1em; }
.itd-ut-gdl__action .gem-print-icon { flex: 0 0 auto; }
.itd-ut-gdl__action[style*="--itd-gdl-button-letter-spacing:"] { letter-spacing: var(--itd-gdl-button-letter-spacing) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-text-transform:"] { text-transform: var(--itd-gdl-button-text-transform) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-text-size:"] { font-size: var(--itd-gdl-button-text-size) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-custom-height:"] { block-size: var(--itd-gdl-button-custom-height) !important; line-height: normal !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-gradient:"] { background-image: var(--itd-gdl-button-gradient) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-hover-gradient:"]:hover, .itd-ut-gdl__action[style*="--itd-gdl-button-hover-gradient:"]:focus-visible { background-image: var(--itd-gdl-button-hover-gradient) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-padding-left:"] { padding-left: var(--itd-gdl-button-padding-left) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-padding-right:"] { padding-right: var(--itd-gdl-button-padding-right) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-padding-top:"] { padding-top: var(--itd-gdl-button-padding-top) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-padding-bottom:"] { padding-bottom: var(--itd-gdl-button-padding-bottom) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-text:"] { color: var(--itd-gdl-button-text) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-bg:"] { background-color: var(--itd-gdl-button-bg) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-border:"] { border-color: var(--itd-gdl-button-border) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-hover-text:"]:hover, .itd-ut-gdl__action[style*="--itd-gdl-button-hover-text:"]:focus-visible { color: var(--itd-gdl-button-hover-text) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-hover-bg:"]:hover, .itd-ut-gdl__action[style*="--itd-gdl-button-hover-bg:"]:focus-visible { background-color: var(--itd-gdl-button-hover-bg) !important; }
.itd-ut-gdl__action[style*="--itd-gdl-button-hover-border:"]:hover, .itd-ut-gdl__action[style*="--itd-gdl-button-hover-border:"]:focus-visible { border-color: var(--itd-gdl-button-hover-border) !important; }

.itd-ut-gdl__button-shell.thegem-button-animated .itd-ut-gdl__action {
    animation-delay: var(--itd-gdl-animation-delay, 0ms) !important;
    animation-duration: var(--itd-gdl-animation-duration, 500ms) !important;
    animation-fill-mode: both;
    animation-timing-function: var(--itd-gdl-animation-timing, ease) !important;
}
.itd-ut-gdl__button-shell.thegem-button-animation-slide-up .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-up; }
.itd-ut-gdl__button-shell.thegem-button-animation-slide-down .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-down; }
.itd-ut-gdl__button-shell.thegem-button-animation-slide-left .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-left; }
.itd-ut-gdl__button-shell.thegem-button-animation-slide-right .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-right; }
.itd-ut-gdl__button-shell.thegem-button-animation-fade .itd-ut-gdl__action { animation-name: itd-ut-gdl-fade; }
.itd-ut-gdl__button-shell.thegem-button-animation-fade-up .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-up; }
.itd-ut-gdl__button-shell.thegem-button-animation-fade-down .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-down; }
.itd-ut-gdl__button-shell.thegem-button-animation-fade-left .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-left; }
.itd-ut-gdl__button-shell.thegem-button-animation-fade-right .itd-ut-gdl__action { animation-name: itd-ut-gdl-slide-right; }
@keyframes itd-ut-gdl-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes itd-ut-gdl-slide-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes itd-ut-gdl-slide-down { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes itd-ut-gdl-slide-left { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: translateX(0); } }
@keyframes itd-ut-gdl-slide-right { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } }

.itd-ut-gdl__accordion-list { display: grid; gap: .75rem; grid-template-columns: minmax(0, 1fr); }
.itd-ut-gdl__accordion-item { border: 1px solid var(--itd-gdl-border); min-width: 0; }
.itd-ut-gdl__accordion-item.is-open { grid-column: 1 / -1; }
.itd-ut-gdl__accordion-heading { margin: 0; }
.itd-ut-gdl__accordion-trigger { align-items: center; background: var(--itd-gdl-muted); border: 0; color: var(--itd-gdl-text); display: flex; font-weight: 700; inline-size: 100%; justify-content: space-between; padding: .8rem 1rem; text-align: start; }
.itd-ut-gdl__accordion-trigger:hover { background: var(--itd-gdl-header); }
.itd-ut-gdl__accordion-icon::before { content: "+"; font-size: 1.35em; line-height: 1; }
.itd-ut-gdl__accordion-trigger[aria-expanded="true"] .itd-ut-gdl__accordion-icon::before { content: "−"; }
.itd-ut-gdl__accordion-panel { border-block-start: 1px solid var(--itd-gdl-border); padding: .75rem; }
.itd-ut-gdl__accordion-panel[hidden], .itd-ut-gdl__accordion-item[hidden] { display: none !important; }

.itd-ut-gdl__dialog { background: transparent; border: 0; color: var(--itd-gdl-text); inline-size: min(98vw, 96rem); max-block-size: 94vh; max-inline-size: 98vw; padding: 0; }
.itd-ut-gdl__dialog::backdrop { background: rgba(15, 20, 28, .68); }
.itd-ut-gdl__dialog-frame { background: #fff; border-radius: .35rem; display: flex; flex-direction: column; max-block-size: 94vh; overflow: hidden; }
.itd-ut-gdl__dialog-header { align-items: flex-start; border-block-end: 1px solid var(--itd-gdl-border); display: flex; gap: 1rem; justify-content: space-between; padding: 1rem; }
.itd-ut-gdl__dialog-title { margin: 0; }
.itd-ut-gdl__dialog-content { overflow-y: auto; padding: .75rem; }
.itd-ut-gdl__dialog-lookup { margin-block-end: 1rem; }
.itd-ut-gdl__dialog--theme { color: var(--thegem-to-body-color, var(--thegem-body-color, #3c3950)); }
.itd-ut-gdl__dialog--theme::backdrop { background: var(--thegem-to-popup-overlay-color, rgba(33, 39, 55, .78)); }
.itd-ut-gdl__dialog--theme .itd-ut-gdl__dialog-frame {
    background: var(--thegem-to-main-bg-color, var(--thegem-main-bg-color, #fff));
    border: 1px solid var(--thegem-to-divider-color, var(--thegem-divider-color, #dfe5e8));
    border-radius: var(--thegem-to-popup-border-radius, 3px);
    box-shadow: 0 20px 60px rgba(25, 31, 46, .28);
}
.itd-ut-gdl__dialog--theme .itd-ut-gdl__dialog-header { border-block-end-color: var(--thegem-to-divider-color, var(--thegem-divider-color, #dfe5e8)); }
.itd-ut-gdl__dialog--theme .itd-ut-gdl__dialog-title { color: var(--thegem-to-h2-color, var(--thegem-h2-color, #3c3950)); font-family: inherit; }
body.itd-ut-gdl-dialog-open { overflow: hidden; position: fixed; inset: var(--itd-ut-gdl-scroll-y, 0) 0 auto; inline-size: 100%; }

@container (min-width: 48rem) {
    .itd-ut-gdl__directory--two .itd-ut-gdl__accordion-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@container (min-width: 64rem) {
    .itd-ut-gdl__directory--auto .itd-ut-gdl__accordion-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@container (max-width: 34rem) {
    .itd-ut-gdl__metadata > div { grid-template-columns: 1fr; }
    .itd-ut-gdl__selector-controls > *, .itd-ut-gdl__search > div > *, .itd-ut-gdl__lookup-actions > * { width: 100%; }
    .itd-ut-gdl__dialog { block-size: 96vh; inline-size: 98vw; max-block-size: 96vh; max-inline-size: 98vw; }
    .itd-ut-gdl__dialog-frame { block-size: 100%; max-block-size: 100%; }
}

@media (max-width: 991px) {
    .itd-ut-gdl__action[style*="--itd-gdl-button-text-size-tablet:"] { font-size: var(--itd-gdl-button-text-size-tablet) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-custom-height-tablet:"] { block-size: var(--itd-gdl-button-custom-height-tablet) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-left-tablet:"] { padding-left: var(--itd-gdl-button-padding-left-tablet) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-right-tablet:"] { padding-right: var(--itd-gdl-button-padding-right-tablet) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-top-tablet:"] { padding-top: var(--itd-gdl-button-padding-top-tablet) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-bottom-tablet:"] { padding-bottom: var(--itd-gdl-button-padding-bottom-tablet) !important; }
}

@media (max-width: 767px) {
    .itd-ut-gdl__action[style*="--itd-gdl-button-text-size-mobile:"] { font-size: var(--itd-gdl-button-text-size-mobile) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-custom-height-mobile:"] { block-size: var(--itd-gdl-button-custom-height-mobile) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-left-mobile:"] { padding-left: var(--itd-gdl-button-padding-left-mobile) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-right-mobile:"] { padding-right: var(--itd-gdl-button-padding-right-mobile) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-top-mobile:"] { padding-top: var(--itd-gdl-button-padding-top-mobile) !important; }
    .itd-ut-gdl__action[style*="--itd-gdl-button-padding-bottom-mobile:"] { padding-bottom: var(--itd-gdl-button-padding-bottom-mobile) !important; }
}

@media (prefers-reduced-motion: reduce) {
    .itd-ut-gdl *, .itd-ut-gdl__dialog { animation-duration: .01ms !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
