[hidden]{display:none!important}
button,a,input,select,textarea{font-family:var(--body)}
button.style-card{font:inherit;cursor:pointer;width:100%}
button.style-card:disabled{cursor:default;background:var(--soon-bg);color:var(--soon-ink)}
[aria-disabled=true]{pointer-events:none;opacity:.6}
.opt img,.thumb img{width:100%;height:100%;object-fit:cover}
.thumb{overflow:hidden}
.cs-sw{background:var(--panel);cursor:pointer}
#subject-controls input,#perm{width:auto}
#result-image img{width:100%;height:auto;object-fit:contain}
#studio-error{overflow-wrap:anywhere}
/* The frozen .dd face supplies its dimensions; the native control stays operable. */
[data-studio-page="16"] .filter-bar > .row{white-space:nowrap}
[data-studio-page="16"] .studio-dropdown{position:relative;flex-shrink:0;white-space:nowrap}
[data-studio-page="16"] .studio-dropdown select{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;font:inherit}
[data-studio-page="16"] .studio-dropdown:focus-within{border-color:var(--brand)}

/* Empty runtime-only wrappers must not add spacing to the frozen empty panel. */
[data-studio-page="16"] #concept-gallery:empty,
[data-studio-page="16"] .state-grid:not(:has(> :not([hidden]))){display:none}
