/* Native Figma fields and menus. This is the sole model-control stylesheet. */
.model-brand-icon{display:inline-grid;place-items:center;box-sizing:border-box;flex:0 0 20px;width:20px;height:20px;padding:2px;background:#fff;border-radius:6px;line-height:0;vertical-align:middle}
.model-brand-icon img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.model-brand-fallback{font:600 10px/1 var(--ui-font);color:#242424}
.composer-menu{position:relative;min-width:0}
.composer-menu>summary{display:flex;align-items:center;gap:8px;box-sizing:border-box;min-height:var(--ui-control-size);padding:0 12px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-field);background:var(--ui-field-surface);color:var(--ui-ink);font:500 var(--ui-control-text)/var(--ui-control-line) var(--ui-font);list-style:none;cursor:pointer}
.composer-menu>summary::-webkit-details-marker{display:none}
.composer-menu>summary:hover{background:var(--ui-hover)}
.composer-menu>summary[data-disabled]{opacity:.5;cursor:default}
.composer-menu>summary>.ui-icon{width:16px;height:16px;flex:none;color:var(--ui-muted)}
.composer-menu:not([open])>.composer-popover{display:none}
.composer-popover{position:absolute;bottom:calc(100% + 8px);left:0;z-index:35;box-sizing:border-box;width:278px;min-width:0;max-width:calc(100vw - 24px);max-height:min(530px,calc(var(--usable-height,100dvh) - 32px));overflow:auto;overscroll-behavior:contain;padding:12px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-menu);background:var(--ui-menu-surface);color:var(--ui-ink);box-shadow:var(--ui-shadow);font:400 14px/20px var(--ui-font);scrollbar-width:thin;scrollbar-color:var(--ui-input-line) transparent}
.model-menu[data-picker-size=field]{display:block;width:100%}
.model-menu[data-picker-size=field]>summary{width:100%}
.model-menu[data-picker-size=inline]{width:max-content;max-width:min(310px,48vw);flex:0 1 auto}
.model-menu>summary .model-trigger{display:block;flex:1;min-width:0;max-width:none;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:inherit;text-align:left}
.model-menu .model-quick-popover{width:400px;left:auto;right:0;padding:12px;border:0;box-shadow:inset 0 0 0 1px var(--ui-line),var(--ui-shadow)}
.model-menu[data-picker-density=compact] .model-quick-popover{width:280px}
.picker-option{display:flex;align-items:center;gap:12px;box-sizing:border-box;width:100%;min-height:40px;padding:8px 12px;border:0;border-radius:var(--ui-radius-field);background:transparent;color:var(--ui-ink);font:400 14px/20px var(--ui-font);text-align:left;cursor:pointer}
.picker-option>span:not(.model-brand-icon){flex:1;min-width:0}
.picker-option>.ui-icon{width:16px;height:16px;flex:none}
.picker-option:not(:disabled):hover,.picker-option[aria-pressed=true]{background:var(--ui-menu-selected)}
.picker-option:disabled{opacity:.6;cursor:default}
.picker-option:disabled:hover{background:transparent}
.picker-model-row{display:flex;align-items:center;gap:4px;min-width:0}
.picker-model-row+.picker-model-row{margin-top:4px}
.model-choice{min-height:56px;flex:1;min-width:0}
.model-choice>.model-brand-icon{width:28px;height:28px;flex-basis:28px;border-radius:7px}
.model-choice-copy{min-width:0;overflow-wrap:anywhere}
.model-choice-copy>span{display:block;font-size:14px;line-height:20px}
.model-menu .model-choice-copy>span{white-space:normal;overflow-wrap:anywhere}
.model-choice-copy small,.create-image-action small{display:block;margin-top:2px;color:var(--ui-muted);font-size:12px;line-height:18px}
.model-menu[data-picker-density=compact] .model-choice{min-height:36px;padding:6px 8px;gap:8px}
.model-menu[data-picker-density=compact] .model-choice>.model-brand-icon{width:20px;height:20px;flex-basis:20px}
.model-menu[data-picker-density=compact] .model-choice-copy small{display:none}
.menu-label{padding:0 0 10px;color:var(--ui-muted);font:400 12px/18px var(--ui-font)}
.model-all-button{margin-top:8px;min-height:20px;padding:0;border-radius:0;color:var(--ui-muted);font-size:12px;line-height:18px}
.model-all-button:hover{background:transparent;color:var(--ui-ink)}
.model-chat-price{display:inline-flex;flex:none;align-items:center;gap:4px;font-size:12px;color:var(--ui-muted);white-space:nowrap}
.model-chat-price .lutcoin-icon{width:15px;height:15px}
.model-search-empty{margin:8px 0;color:var(--ui-muted);font-size:14px;line-height:22px}
.composer-spacer{flex:1;min-width:0}
.ai-compose-controls .settings-menu,.ai-compose-controls .media-settings{flex:0 0 auto}
.composer-menu>.composer-settings-trigger{position:relative;display:grid;place-items:center;width:var(--ui-control-size);min-width:var(--ui-control-size);padding:8px;border:0;background:transparent}
.composer-settings-trigger:hover{background:var(--glass-hover)}
.composer-settings-trigger>.ui-icon{width:20px;height:20px}
.settings-active-dot{position:absolute;width:4px;height:4px;border-radius:50%;right:7px;top:7px;background:var(--ui-ink)}
.settings-menu .settings-popover,.media-settings .composer-popover{left:0;right:auto;width:278px}
.model-settings-heading{display:flex;align-items:center;gap:8px;padding:0 0 12px;font-size:14px;line-height:20px;font-weight:500}
.menu-field{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;max-width:100%;min-height:44px;padding:6px 10px;font-size:14px;line-height:20px}
.menu-field>span{display:flex;align-items:center;gap:12px;min-width:0;white-space:nowrap}.settings-popover .picker-option{padding-inline:10px;min-height:44px;justify-content:flex-start}.settings-popover .picker-option>.ui-icon{width:16px;height:16px;flex:0 0 16px}.settings-popover .picker-option>.ui-icon:last-child:not(:first-child){margin-left:auto}.settings-popover .menu-field select{font-size:12px;max-width:96px;min-height:32px;padding:5px 8px}.settings-popover .model-cost-row{padding-inline:10px}
.menu-field .ui-icon{width:16px;height:16px}
.menu-field select{width:auto;max-width:124px;min-width:0;padding:6px 8px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-field);background:var(--ui-field-surface);color:var(--ui-ink);font:inherit}
.model-menu-price{color:var(--ui-muted);font-size:12px;line-height:18px}
.model-menu-price>span{color:var(--ui-ink)}
.model-menu-price small{display:block;font-size:12px;margin:5px 0 10px}
.model-menu-price summary{cursor:pointer}
.model-cost-details{border-top:1px solid var(--ui-line);margin-top:8px;padding-top:8px;color:var(--ui-muted);font-size:12px;line-height:18px}
.model-cost-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.model-cost-row .model-menu-price{padding:0;display:inline-flex}
.media-settings .media-options{margin:6px 0 10px;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}
.media-settings .media-reference,.media-settings .attachment-mode{margin:8px 0;font-size:12px}
.media-settings .media-price{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:10px 0;font-size:12px}
.media-settings .media-price>span:not(.info-tip){flex-basis:100%}
.effort-control{margin:8px 0;padding:12px 0;border-block:1px solid var(--ui-line)}
.effort-control output{color:var(--ui-muted)}
.effort-control input{width:100%;margin:18px 0 8px;accent-color:var(--ui-ink);cursor:pointer}
.effort-ticks{display:flex;justify-content:space-between;gap:5px;color:var(--ui-muted);font-size:12px}
/* Native dialog owns the focus boundary, Escape and the top layer. */
dialog.model-catalog{box-sizing:border-box;width:min(560px,calc(100vw - 24px));max-width:none;max-height:min(680px,calc(var(--usable-height,100dvh) - 32px));padding:0;border:1px solid var(--ui-line);border-radius:var(--ui-radius-panel);background:var(--ui-menu-surface);color:var(--ui-ink);font:400 14px/20px var(--ui-font);overflow:hidden}
dialog.model-catalog[open]{display:flex;flex-direction:column;animation:model-catalog-in .18s ease-out}
dialog.model-catalog::backdrop{background:#0007}
.model-catalog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:12px 16px 6px}
.model-catalog h2{margin:0;font:600 20px/28px var(--ui-font)}
.model-catalog-tools{padding:6px 16px 12px;flex:none}
.model-catalog-search input{box-sizing:border-box;width:100%;min-height:var(--ui-control-size);padding:8px 12px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-field);background:var(--ui-field-surface);color:var(--ui-ink);font:inherit}
.model-catalog-filters{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap}
.model-catalog-filters select{width:auto;max-width:100%;padding:6px 8px;font:400 12px/18px var(--ui-font);background:var(--ui-field-surface);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:var(--ui-radius-field)}
.catalog-favorites{display:flex;align-items:center;gap:5px;margin-left:auto;font-size:12px;color:var(--ui-muted)}
.catalog-favorites input{width:16px;height:16px;margin:0;accent-color:var(--ui-ink)}
.model-catalog-results{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ui-input-line) transparent;min-height:100px;padding:0 12px 12px}
.model-catalog-group+.model-catalog-group{margin-top:16px}
.model-catalog-group h3{display:flex;align-items:center;gap:8px;margin:0;padding:8px 12px;color:var(--ui-muted);font:500 12px/18px var(--ui-font)}
.model-catalog-group h3 .model-brand-icon{width:20px;height:20px;flex-basis:20px}
.model-catalog .picker-favorite{display:grid;place-items:center;flex:none;min-width:40px;min-height:40px;padding:8px;border:0;border-radius:var(--ui-radius-control);background:transparent;color:var(--ui-muted);cursor:pointer}
.model-catalog .picker-favorite[aria-pressed=true]{color:var(--ui-accent-text)}
.model-catalog .picker-favorite[aria-pressed=true] .ui-icon{fill:currentColor}
.model-catalog-foot{padding:10px 16px;border-top:1px solid var(--ui-line);flex:none;font-size:12px;line-height:18px;color:var(--ui-muted)}
:is(.model-menu,.settings-menu,.media-settings,.model-catalog) :is(button,input,select,summary):focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
@keyframes model-catalog-in{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px),(pointer:coarse){
 .model-menu[data-picker-size=inline]{width:auto;max-width:none;flex:1 1 160px;min-width:min(160px,100%)}
 .model-menu>summary{min-height:44px;padding-inline:8px;gap:6px}
 .model-catalog .picker-favorite{min-width:44px;min-height:44px}
 .model-menu[data-picker-density=compact] .model-choice{min-height:44px}
 .model-all-button{min-height:44px}
 .composer-menu .composer-popover:not([data-layer]){position:fixed;inset:auto 12px calc(var(--keyboard-inset,0px) + 12px);width:auto;min-width:0;max-width:none;z-index:65}
 .catalog-favorites{margin-left:0}
}
@media(prefers-reduced-motion:reduce){dialog.model-catalog[open]{animation:none}}

/* Info is a separate link so inspecting a model never selects or sends it. */
.model-info-link{display:inline-grid;place-items:center;flex:none;width:34px;height:34px;min-height:34px;padding:0;border:0;border-radius:var(--ui-radius-control);color:var(--ui-muted);background:transparent;text-decoration:none}
.model-info-link>.ui-icon{width:19px;height:19px}.model-info-link:hover,.model-info-link:focus-visible{background:var(--glass-hover);color:var(--ui-ink)}
@media(pointer:coarse){.model-info-link{width:44px;height:44px;min-height:44px}}
