.catalog-selector-block {
    container-type: inline-size;
    container-name: catalog-selector;
    min-width: 0;
}
.catalog-selector-block *, .catalog-selector-block *::before, .catalog-selector-block *::after { box-sizing: border-box; }
.catalog-selector-surface {
    --catalog-fit: var(--catalog-desktop-fit, cover);
    --catalog-x: var(--catalog-desktop-x, 50%);
    --catalog-y: var(--catalog-desktop-y, 50%);
    --catalog-zoom: var(--catalog-desktop-zoom, 1);
    --catalog-shade: var(--catalog-desktop-shade, .9);
    --catalog-height: var(--catalog-desktop-height, 0px);
    --catalog-align: var(--catalog-desktop-align, left);
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    border-radius: .75rem;
    background: #f8fafc;
    color: #0f172a;
}
.catalog-selector-background, .catalog-selector-shade { display: none; position: absolute; inset: 0; width: 100%; height: 100%; }
.catalog-selector-background { z-index: -2; object-fit: var(--catalog-fit); object-position: var(--catalog-x) var(--catalog-y); transform: scale(var(--catalog-zoom)); transform-origin: var(--catalog-x) var(--catalog-y); }
.catalog-selector-shade { z-index: -1; background: linear-gradient(to right,rgba(2,6,23,var(--catalog-shade)),rgba(2,6,23,var(--catalog-shade)) 30%,rgba(2,6,23,.3)); }
.catalog-selector-content { position: relative; padding: 2rem; min-width: 0; }
.catalog-selector-heading { margin: 0; font-size: .75rem; font-weight: 900; text-transform: uppercase; letter-spacing: .14em; color: var(--catalog-heading-color,#1d4ed8); overflow-wrap: anywhere; }
.catalog-selector-title { margin: .5rem 0 0; font-size: 2.25rem; line-height: 1.2; font-weight: 900; letter-spacing: -.025em; overflow-wrap: anywhere; }
.catalog-selector-paragraph { margin: .75rem 0 0; max-width: 42rem; font-size: 1rem; line-height: 1.75; color: #475569; overflow-wrap: anywhere; }
.catalog-selector-options { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,14rem),1fr)); gap: 1rem; margin-top: 1.75rem; }
.catalog-selector-option { min-width: 0; overflow: hidden; padding: 0; text-align: left; border: 1px solid #cbd5e1; border-radius: .75rem; background: #fff; color: #0f172a; }
.catalog-selector-option[aria-pressed="true"] { outline: 2px solid #2563eb; outline-offset: 0; }
.catalog-selector-option-cover { display: block; aspect-ratio: 2 / 1; overflow: hidden; background: #e2e8f0; }
.catalog-selector-option-cover img { width: 100%; height: 100%; object-fit: cover; }
.catalog-selector-option-cover > span { display: flex; height: 100%; align-items: center; justify-content: center; font-size: .75rem; color: #475569; }
.catalog-selector-option-copy { display: block; padding: 1rem; min-width: 0; }
.catalog-selector-option-label { display: block; font-weight: 900; overflow-wrap: anywhere; }
.catalog-selector-option-hint { display: block; margin-top: .25rem; font-size: .75rem; color: #475569; }
.catalog-selector-actions { display: flex; align-items: flex-end; gap: .75rem; margin-top: 1.75rem; min-width: 0; }
.catalog-selector-picker { display: block; min-width: 0; flex: 0 1 20rem; }
.catalog-selector-label { display: block; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .025em; overflow-wrap: anywhere; }
.catalog-selector-select { width: 100%; min-width: 0; min-height: 44px; margin-top: .5rem; padding: .5rem 2rem .5rem .75rem; border: 1px solid #cbd5e1; border-radius: .375rem; background-color: #fff; color: #0f172a; font-size: 1rem; font-weight: 600; }
.catalog-selector-block [data-catalog-selector-cta] { display: inline-flex; min-width: 0; min-height: 44px; align-items: center; justify-content: center; gap: .5rem; flex: 0 0 auto; padding: .625rem 1.25rem; border-radius: .375rem; background-color: var(--catalog-button-bg,#2563eb); color: var(--catalog-button-text,#fff); font-size: .875rem; font-weight: 900; text-decoration: none; overflow-wrap: anywhere; }
.catalog-selector-block [data-catalog-selector-cta]:hover, .catalog-selector-block [data-catalog-selector-cta]:focus-visible { background-color: var(--catalog-button-hover-bg,#1d4ed8); color: var(--catalog-button-hover-text,#fff); }
.catalog-selector-noscript { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.catalog-selector-noscript a { color: inherit; text-decoration: underline; overflow-wrap: anywhere; }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-surface { min-height: var(--catalog-height); background: #020617; color: #fff; }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-background:not([hidden]), .catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-shade { display: block; }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-content { max-width: 48rem; padding: 3.5rem 2.5rem; text-align: var(--catalog-align); }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-heading { color: var(--catalog-heading-color,#bfdbfe); }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-paragraph, .catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-label { color: #e2e8f0; }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-options { display: none; }
.catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-actions { text-align: left; }
.catalog-selector-block[data-catalog-selector-style="list"] .catalog-selector-surface { background: #fff; }
.catalog-selector-block[data-catalog-selector-style="list"] .catalog-selector-options { grid-template-columns: minmax(0,1fr); gap: 0; }
.catalog-selector-block[data-catalog-selector-style="list"] .catalog-selector-option { display: flex; align-items: center; gap: 1rem; padding: 1rem; border-radius: 0; }
.catalog-selector-block[data-catalog-selector-style="list"] .catalog-selector-option-cover { width: 5rem; height: 3.5rem; aspect-ratio: auto; flex: 0 0 5rem; border-radius: .5rem; }
.catalog-selector-block[data-catalog-selector-style="list"] .catalog-selector-option-copy { padding: 0; }
.catalog-selector-block:not([data-catalog-selector-style="hero"]) .catalog-selector-picker select { display: none; }
.catalog-selector-block:not([data-catalog-selector-style="hero"]) .catalog-selector-actions { align-items: center; }
.catalog-selector-block:not([data-catalog-selector-style="hero"]) .catalog-selector-picker { flex: 0 1 auto; }

@container catalog-selector (max-width: 639px) {
    .catalog-selector-surface { --catalog-fit:var(--catalog-mobile-fit,cover); --catalog-x:var(--catalog-mobile-x,50%); --catalog-y:var(--catalog-mobile-y,50%); --catalog-zoom:var(--catalog-mobile-zoom,1); --catalog-shade:var(--catalog-mobile-shade,.9); --catalog-height:var(--catalog-mobile-height,0px); --catalog-align:var(--catalog-mobile-align,left); }
    .catalog-selector-content, .catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-content { padding: 2.5rem 1.5rem; }
    .catalog-selector-title { font-size: 1.75rem; }
    .catalog-selector-actions { flex-direction: column; align-items: stretch!important; }
    .catalog-selector-picker { flex: 0 1 auto; width: 100%; }
    .catalog-selector-block [data-catalog-selector-cta] { flex: 0 1 auto; width: 100%; }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-surface, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-surface { min-height:var(--catalog-height); background:#020617; color:#fff; }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-background:not([hidden]), .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-background:not([hidden]), .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-shade, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-shade { display:block; }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-content, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-content { text-align:var(--catalog-align); }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-heading, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-heading { color:var(--catalog-heading-color,#bfdbfe); }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-paragraph, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-paragraph, .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-label, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-label { color:#e2e8f0; }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-options, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-options { display:none; }
    .catalog-selector-block[data-catalog-selector-mobile-style="hero"] .catalog-selector-picker select, .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-picker select { display:block; }
    .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-content { padding:1.5rem 1.125rem; }
    .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-title { font-size:1.5rem; }
    .catalog-selector-block[data-catalog-selector-mobile-style="compact"] .catalog-selector-actions { margin-top:1.25rem; }
}
@container catalog-selector (max-width: 340px) {
    .catalog-selector-content, .catalog-selector-block[data-catalog-selector-style="hero"] .catalog-selector-content { padding:1.5rem 1rem; }
    .catalog-selector-title { font-size:1.5rem; }
}

[data-catalog-detail-dialog] { width:min(42rem,calc(100% - 2rem)); max-height:calc(100dvh - 2rem); overflow-wrap:anywhere; }
[data-catalog-detail-dialog] .flex > div { min-width:0; }
[data-catalog-detail-dialog] [data-catalog-modal-close] { flex-shrink:0; }
@media (max-width:480px) { [data-catalog-detail-dialog] article > .flex { flex-direction:column; } }
