.vtx-expanders{font-family:inherit;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;}
.vtx-expanders-hidden{display:none;}
.vtx-expanders-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;}
.vtx-expanders-scroll::-webkit-scrollbar{width:0;height:0;}
.vtx-expanders-group{display:flex;flex-direction:column;overflow:hidden;}
.vtx-expanders-group.vtx-expanders-hidden{display:none;}
.vtx-expanders-header{cursor:pointer;padding:12px 16px;border-bottom:1px solid var(--vtx-expanders-divider,#e0e0e0);
  display:flex;align-items:center;justify-content:space-between;user-select:none;}
.vtx-expanders-header:hover{background:var(--vtx-expanders-hover,rgba(0,0,0,.04));}
.vtx-expanders-header-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 auto;}
.vtx-expanders-header-label{font-size:13px;font-weight:400;color:var(--vtx-expanders-text-primary,#212121);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vtx-expanders-header-selected{font-size:13px;font-weight:600;font-style:italic;color:var(--vtx-expanders-text-primary,#212121);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vtx-expanders-chevron{width:20px;height:20px;transition:transform .125s;flex-shrink:0;color:var(--vtx-expanders-text-primary,#212121);}
.vtx-expanders-chevron.vtx-expanders-open{transform:rotate(180deg);}
.vtx-expanders-content{display:none;flex-direction:column;padding:12px 16px;overflow:hidden;opacity:1;box-sizing:border-box;}
.vtx-expanders-content.vtx-expanders-open{display:flex;}
/* filter sub-expander */
.vtx-expanders-filter-section{margin-bottom:4px;border-radius:4px;overflow:hidden;}
.vtx-expanders-filter-header{display:flex;align-items:center;justify-content:space-between;
  padding:6px 12px;cursor:pointer;background:var(--vtx-expanders-action-hover,rgba(0,0,0,.04));user-select:none;}
.vtx-expanders-filter-header:hover{background:var(--vtx-expanders-action-selected,rgba(0,0,0,.08));}
.vtx-expanders-filter-label{font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.5px;}
.vtx-expanders-filter-actions{display:flex;align-items:center;gap:6px;}
.vtx-expanders-filter-clear{appearance:none;border:none;background:transparent;color:var(--vtx-expanders-text-secondary,#757575);
  font-size:10px;line-height:1.2;text-transform:uppercase;padding:2px 4px;border-radius:4px;cursor:pointer;}
.vtx-expanders-filter-clear:hover{background:var(--vtx-expanders-action-selected,rgba(0,0,0,.08));color:var(--vtx-expanders-text-primary,#212121);}
.vtx-expanders-filter-chevron{width:14px;height:14px;transition:transform .1s;}
.vtx-expanders-filter-chevron.vtx-expanders-open{transform:rotate(180deg);}
.vtx-expanders-filter-body{display:none;overflow:hidden;opacity:1;box-sizing:border-box;}
.vtx-expanders-filter-body.vtx-expanders-open{display:block;}
.vtx-expanders-filter-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;}
.vtx-expanders-filter-empty{font-size:11px;color:var(--vtx-expanders-text-disabled,#9e9e9e);padding:6px 12px;}
.vtx-expanders-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:16px;
  cursor:pointer;font-size:11px;font-weight:500;user-select:none;transition:all .15s;
  border:1px solid var(--vtx-expanders-divider,#e0e0e0);background:transparent;color:var(--vtx-expanders-text-secondary,#757575);}
.vtx-expanders-chip:hover{border-color:var(--vtx-expanders-primary,#1976d2);opacity:.85;}
.vtx-expanders-chip.vtx-expanders-selected{border-color:var(--vtx-expanders-primary,#1976d2);background:var(--vtx-expanders-primary,#1976d2);color:#fff;}
/* options */
.vtx-expanders-option{display:flex;align-items:center;position:relative;padding:4px 0;cursor:pointer;transition:color .15s;}
.vtx-expanders-color-option{display:flex;flex-direction:column;gap:10px;padding:6px 0 2px;}
.vtx-expanders-option-swatch{width:18px;height:18px;border-radius:4px;flex-shrink:0;margin-right:8px;border:1px solid var(--vtx-expanders-divider,#e0e0e0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.vtx-expanders-option-label{font-size:13px;color:var(--vtx-expanders-text-secondary,#757575);transition:color .15s;}
.vtx-expanders-option.vtx-expanders-selected .vtx-expanders-option-label{color:var(--vtx-expanders-text-primary,#212121);}
.vtx-expanders-option:hover .vtx-expanders-option-label{color:var(--vtx-expanders-text-primary,#212121);}
.vtx-expanders-option-check{position:absolute;left:-16px;color:var(--vtx-expanders-primary,#1976d2);display:none;line-height:0;}
.vtx-expanders-option.vtx-expanders-selected .vtx-expanders-option-check{display:flex;}
.vtx-expanders-option-wrap{margin:4px 0 4px 16px;}
.vtx-expanders-option-wrap.vtx-expanders-color-option{margin-left:0;}
.vtx-expanders-color-picker-shell{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;padding:0;background:transparent;}
.vtx-expanders-color-picker-grid{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:0;justify-content:center;align-self:center;width:min(100%,512px);overflow:visible;padding:0;margin:0 auto;}
.vtx-expanders-color-picker-cell{appearance:none;border:none;border-radius:0;padding:0;width:100%;aspect-ratio:16 / 9;cursor:pointer;position:relative;z-index:1;box-shadow:none;background:transparent;transition:z-index .16s ease;}
.vtx-expanders-color-picker-cell::before{content:"";position:absolute;inset:0;background:var(--vtx-color-picker-cell-bg,transparent);transform:scale(1);transform-origin:center;opacity:.96;box-shadow:none;transition:transform .16s ease,opacity .16s ease,box-shadow .16s ease;pointer-events:none;}
.vtx-expanders-color-picker-cell:hover{z-index:4;}
.vtx-expanders-color-picker-cell:hover::before{transform:scale(3);opacity:1;box-shadow:0 2px 8px rgba(0,0,0,.22);}
.vtx-expanders-color-picker-cell.vtx-expanders-selected{z-index:3;}
.vtx-expanders-color-picker-cell.vtx-expanders-selected::before{transform:scale(3);opacity:1;box-shadow:0 2px 8px rgba(0,0,0,.22);}
.vtx-expanders-color-picker-controls{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"input" "slider";gap:10px;align-items:stretch;width:min(100%,512px);margin:0 auto;}
.vtx-expanders-color-picker-input-wrap{grid-area:input;display:flex;justify-content:flex-end;align-items:center;min-height:28px;padding:0;width:100%;}
.vtx-expanders-color-picker-input{width:auto;min-width:92px;box-sizing:border-box;padding:2px 0;font-size:14px;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:none;border-radius:0;outline:none;background:transparent;color:var(--vtx-expanders-text-primary,#212121);text-transform:uppercase;text-align:right;}
.vtx-expanders-color-picker-slider-block{grid-area:slider;display:flex;flex-direction:column;gap:4px;min-width:0;width:100%;}
.vtx-expanders-color-picker-slider-label{font-size:13px;font-weight:700;color:var(--vtx-expanders-text-secondary,#757575);}
.vtx-expanders-color-picker-slider{width:100%;margin:0;accent-color:var(--vtx-expanders-primary,#60a5fa);}
/* shader group */
.vtx-expanders-shader-group-wrap{display:flex;flex-direction:column;align-items:stretch;width:100%;}
.vtx-expanders-shader-group-label{font-size:13px;font-weight:600;margin:8px 0;color:var(--vtx-expanders-text-primary,#212121);}
.vtx-expanders-shader-group-body{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:100%;}
.vtx-expanders-shader-group-shell{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;}
.vtx-expanders-shader-grid{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;justify-content:center;width:100%;}
.vtx-expanders-shader-card{position:relative;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;cursor:pointer;padding:4px;
  background:transparent;border-radius:0;overflow:visible;
  box-shadow:0 1px 3px rgba(0,0,0,.2);transition:box-shadow .15s ease;max-width:120px;
  border:none;outline:none;}
.vtx-expanders-shader-card:hover{box-shadow:0 3px 8px rgba(0,0,0,.24);}
.vtx-expanders-shader-card.vtx-expanders-selected{box-shadow:0 3px 8px rgba(0,0,0,.24);}
.vtx-expanders-shader-img-wrap{display:block;width:100px;height:100px;border-radius:0;overflow:hidden;position:relative;border:1px solid rgba(0,0,0,.12);box-sizing:border-box;}
.vtx-expanders-shader-card img,.vtx-expanders-shader-card .vtx-expanders-swatch{
  width:100%;height:100%;position:absolute;inset:0;
  transform:none;object-fit:cover;display:block;}
.vtx-expanders-swatch{display:block;}
.vtx-expanders-lazy-img{opacity:0;transition:opacity .18s ease;}
.vtx-expanders-lazy-img.vtx-expanders-lazy-img-loaded{opacity:1;}
.vtx-expanders-shader-check{position:absolute;top:0;right:0;transform:translate(50%,-50%);
  width:28px;height:28px;background:var(--vtx-expanders-paper,#fff);border-radius:50%;
  display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.2);
  pointer-events:none;color:var(--vtx-expanders-primary,#1976d2);}
.vtx-expanders-shader-check.vtx-expanders-hidden{display:none;}
.vtx-expanders-shader-no-match{font-size:13px;color:var(--vtx-expanders-text-secondary,#757575);padding:4px 0;}
.vtx-expanders-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0 2px;width:100%;}
.vtx-expanders-pagination-label{font-size:11px;color:var(--vtx-expanders-text-secondary,#757575);white-space:nowrap;}
.vtx-expanders-pagination-btn{appearance:none;border:1px solid var(--vtx-expanders-divider,#e0e0e0);background:transparent;color:var(--vtx-expanders-text-primary,#212121);border-radius:999px;padding:4px 10px;font-size:11px;line-height:1.2;cursor:pointer;transition:border-color .15s,color .15s,opacity .15s;}
.vtx-expanders-pagination-btn:hover{border-color:var(--vtx-expanders-primary,#1976d2);color:var(--vtx-expanders-primary,#1976d2);}
.vtx-expanders-pagination-btn:disabled{opacity:.45;cursor:default;border-color:var(--vtx-expanders-divider,#e0e0e0);color:var(--vtx-expanders-text-secondary,#757575);}
.vtx-expanders-search-wrap{margin:4px 0 4px 16px;}
.vtx-expanders-search-input{width:100%;box-sizing:border-box;padding:6px 10px;font-size:13px;

  border:1px solid var(--vtx-expanders-divider,#e0e0e0);border-radius:4px;outline:none;}
.vtx-expanders-search-input:focus{border-color:var(--vtx-expanders-primary,#1976d2);}
.vtx-expanders-slider-wrap{display:flex;flex-direction:column;gap:4px;margin:4px 0 4px 16px;}
.vtx-expanders-slider-label{font-size:11px;color:var(--vtx-expanders-text-secondary,#757575);}
.vtx-expanders-slider{width:100%;}
.vtx-expanders-skeleton{width:100px;height:100px;background:linear-gradient(90deg,#ececec 0%,#d8d8d8 45%,#ececec 100%);
  background-size:220% 100%;animation:vtx-expanders-shimmer 1.35s linear infinite;}
.vtx-expanders-skeleton--swatch{position:absolute;inset:0;width:100%;height:100%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);}
@keyframes vtx-expanders-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ── expanders panel loading skeleton ── */
.vtx-expanders-loading{display:flex;flex-direction:column;width:100%;}
.vtx-expanders-loading-row{border-bottom:1px solid var(--vtx-expanders-divider,#e0e0e0);padding:12px 16px;
  display:flex;flex-direction:column;gap:8px;}
.vtx-expanders-loading-bar{border-radius:4px;height:12px;
  background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);
  background-size:200% 100%;animation:vtx-expanders-shimmer 1.5s infinite;}
[data-theme="dark"] .vtx-expanders-loading-bar{
  background:linear-gradient(90deg,#1f1f2e 25%,#2a2a3e 50%,#1f1f2e 75%);
  background-size:200% 100%;}

/* ── dark theme overrides ─────────────────────────────────────────────────── */
[data-theme="dark"] .vtx-expanders{
  --vtx-expanders-divider:         #2a2a3e;
  --vtx-expanders-hover:           rgba(255,255,255,.05);
  --vtx-expanders-text-primary:    #e8e8f8;
  --vtx-expanders-text-secondary:  #8080a8;
  --vtx-expanders-primary:         #60a5fa;
  --vtx-expanders-paper:           #16161f;
  --vtx-expanders-action-hover:    rgba(255,255,255,.05);
  --vtx-expanders-action-selected: rgba(255,255,255,.10);
  --vtx-expanders-text-disabled:   #4a4a6a;
}
[data-theme="dark"] .vtx-expanders-search-input{
  background:var(--vtx-expanders-search-bg-dark,#0d0d12);color:var(--vtx-expanders-text,#e8e8f8);
}
[data-theme="dark"] .vtx-expanders-skeleton{
  background:linear-gradient(90deg,#1f1f2e 25%,#2a2a3e 50%,#1f1f2e 75%);
  background-size:200% 100%;
}
[data-theme="dark"] .vtx-expanders-shader-img-wrap,
[data-theme="dark"] .vtx-exp-ctx-sc-img-wrap,
[data-theme="dark"] .vtx-exp-ctx-swatch-thumb{border:1px solid #000;box-sizing:border-box;}
[data-theme="dark"] .vtx-expanders-shader-card{box-shadow:0 1px 3px rgba(0,0,0,.45);}
[data-theme="dark"] .vtx-expanders-shader-card:hover,
[data-theme="dark"] .vtx-expanders-shader-card.vtx-expanders-selected{box-shadow:0 3px 8px rgba(0,0,0,.6);}

/* ── JS shader tooltip (position:fixed — escapes all overflow containers) ── */
.vtx-shader-tip{position:fixed;z-index:10000;pointer-events:none;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:11px;font-weight:400;line-height:1.4;white-space:nowrap;
  padding:4px 8px;border-radius:4px;
  background:var(--vtx-shader-tip-bg,rgba(50,50,50,.92));color:var(--vtx-shader-tip-color,#fff);
  opacity:0;transition:opacity .12s;}
.vtx-shader-tip.vtx-shader-tip-on{opacity:1;}
.vtx-shader-tip::after{content:'';position:absolute;left:50%;transform:translateX(-50%);
  border:5px solid transparent;}
.vtx-shader-tip.vtx-shader-tip-above::after{top:100%;border-top-color:var(--vtx-shader-tip-bg,rgba(50,50,50,.92));}
.vtx-shader-tip.vtx-shader-tip-below::after{bottom:100%;border-bottom-color:var(--vtx-shader-tip-bg,rgba(50,50,50,.92));}

/* ── view mode toggle ── */
.vtx-expanders-view-toggle{display:flex;gap:4px;padding:8px 12px 6px;
  position:sticky;top:0;z-index:2;
  background:var(--vtx-expanders-paper,#fff);
  border-bottom:1px solid var(--vtx-expanders-divider,#e0e0e0);}
.vtx-expanders-view-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;
  padding:5px 8px;border:1px solid var(--vtx-expanders-divider,#e0e0e0);border-radius:20px;
  font-size:11px;font-weight:500;cursor:pointer;background:transparent;
  color:var(--vtx-expanders-text-secondary,#757575);transition:all .15s;}
.vtx-expanders-view-btn:hover{border-color:var(--vtx-expanders-primary,#1976d2);
  color:var(--vtx-expanders-text-primary,#212121);}
.vtx-expanders-view-btn.vtx-expanders-active{
  background:var(--vtx-expanders-primary,#1976d2);
  border-color:var(--vtx-expanders-primary,#1976d2);color:#fff;}
/* titlebar-variant: compact icon-only pills, always pink */
.vtx-expanders-view-toggle--titlebar{display:flex;align-items:center;gap:2px;margin-right:4px;border-bottom:none;padding:0;background:transparent;position:static;}
.vtx-expanders-view-toggle--titlebar .vtx-expanders-view-btn{
  flex:none;width:24px;height:24px;padding:0;border-radius:4px;border:none;
  background:transparent;color:var(--text2,#9e9e9e);}
.vtx-expanders-view-toggle--titlebar .vtx-expanders-view-btn:hover{
  background:rgba(0,0,0,.07);color:var(--text,#333);border:none;}
.vtx-expanders-view-toggle--titlebar .vtx-expanders-view-btn.vtx-expanders-active{
  background:#e91e8c;border-color:#e91e8c;color:#fff;}

/* ── context view rows ── */
.vtx-exp-ctx-row{display:flex;align-items:center;gap:8px;padding:10px 16px;
  border-bottom:1px solid var(--vtx-expanders-divider,#e0e0e0);}
.vtx-exp-ctx-row:hover{background:var(--vtx-expanders-hover,rgba(0,0,0,.04));}
.vtx-exp-ctx-labels{flex:1;min-width:0;}
.vtx-exp-ctx-group-label{font-size:12px;font-weight:500;
  color:var(--vtx-expanders-text-primary,#212121);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vtx-exp-ctx-sel-label{font-size:11px;color:var(--vtx-expanders-text-secondary,#757575);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vtx-exp-ctx-swatch-thumb{width:26px;height:26px;border-radius:4px;flex-shrink:0;
  overflow:hidden;background:var(--vtx-expanders-divider,#e0e0e0);border:1px solid rgba(0,0,0,.12);box-sizing:border-box;}
.vtx-exp-ctx-swatch-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.vtx-exp-ctx-swatch-thumb .vtx-expanders-skeleton--swatch{border-radius:inherit;}
.vtx-exp-ctx-btn{flex-shrink:0;width:26px;height:26px;border:none;padding:0;
  background:transparent;border-radius:6px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:var(--vtx-expanders-text-secondary,#757575);transition:background .15s,color .15s;}
.vtx-exp-ctx-btn:hover{background:var(--vtx-expanders-action-hover,rgba(0,0,0,.06));
  color:var(--vtx-expanders-text-primary,#212121);}

/* ── context popover ── */
.vtx-exp-ctx-pop{position:fixed;z-index:9999;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:13px;line-height:1.5;
  background:var(--vtx-expanders-paper,#fff);
  border:1px solid var(--vtx-expanders-divider,#e0e0e0);border-radius:8px;
  box-shadow:0 2px 12px rgba(0,0,0,.15);min-width:var(--vtx-ctx-pop-min-width,220px);max-width:var(--vtx-ctx-pop-max-width,360px);overflow:hidden;}
.vtx-exp-ctx-pop-hdr{display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;border-bottom:1px solid var(--vtx-expanders-divider,#e0e0e0);}
.vtx-exp-ctx-pop-title{font-size:13px;font-weight:400;color:var(--vtx-expanders-text-primary,#212121);}
.vtx-exp-ctx-pop-close{background:transparent;border:none;cursor:pointer;line-height:1;
  color:var(--vtx-expanders-text-secondary,#757575);font-size:18px;padding:1px 6px;
  border-radius:4px;transition:background .15s;}
.vtx-exp-ctx-pop-close:hover{background:var(--vtx-expanders-action-hover,rgba(0,0,0,.04));}
.vtx-exp-ctx-pop-body{max-height:var(--vtx-ctx-pop-body-max-height,420px);overflow-y:auto;padding:12px 16px;}
/* ── Context popover — search input ── */
.vtx-exp-ctx-pop-search-wrap{
  display:flex;align-items:center;gap:6px;
  border:1px solid var(--vtx-expanders-divider,#e0e0e0);border-radius:5px;
  padding:4px 8px;margin:0 0 8px;background:var(--vtx-ctx-pop-search-bg,transparent);
  transition:border-color .15s;
}
.vtx-exp-ctx-pop-search-wrap:focus-within{border-color:var(--vtx-expanders-primary,#1976d2);}
.vtx-exp-ctx-pop-search-icon{
  flex-shrink:0;display:flex;align-items:center;
  color:var(--vtx-expanders-text-secondary,#9e9e9e);
}
.vtx-exp-ctx-pop-search-input{
  flex:1;min-width:0;border:none;outline:none;background:transparent;
  font-size:12px;line-height:1.5;padding:0;
  color:var(--vtx-expanders-text-primary,#212121);
}
.vtx-exp-ctx-pop-search-input::placeholder{color:var(--vtx-expanders-text-secondary,#9e9e9e);}
/* ── Context popover — filter chips ── */
.vtx-exp-ctx-pop-filter-wrap{
  display:flex;flex-direction:column;gap:6px;
  padding:0 0 8px;margin:0 0 4px;
  border-bottom:1px solid var(--vtx-expanders-divider,#e0e0e0);
}
.vtx-exp-ctx-pop-filter-head{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.vtx-exp-ctx-pop-filter-row{display:flex;flex-direction:column;gap:3px;}
.vtx-exp-ctx-pop-filter-key{
  font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;
  color:var(--vtx-expanders-text-secondary,#757575);
}
.vtx-exp-ctx-pop-filter-chips{display:flex;flex-wrap:wrap;gap:4px;}
/* ── Context popover — shader section / no-match ── */
.vtx-exp-ctx-pop-shader-section{min-height:0;}
.vtx-exp-ctx-pop-no-match{
  padding:16px 0 8px;text-align:center;font-size:12px;
  color:var(--vtx-expanders-text-secondary,#9e9e9e);
}
/* option rows — text-colour transition only, matching .vtx-expanders-option */
.vtx-exp-ctx-opt{display:flex;align-items:center;position:relative;gap:8px;
  padding:4px 0 4px 16px;cursor:pointer;transition:color .15s;}
.vtx-exp-ctx-opt-dot{display:none;}  /* no dot indicator — selection shown via colour+weight */
.vtx-exp-ctx-opt.vtx-expanders-selected .vtx-exp-ctx-opt-dot{display:none;}
.vtx-exp-ctx-opt-swatch{width:18px;height:18px;border-radius:4px;flex-shrink:0;border:1px solid var(--vtx-expanders-divider,#e0e0e0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.vtx-exp-ctx-opt-lbl{font-size:13px;color:var(--vtx-expanders-text-secondary,#757575);transition:color .15s,font-weight .1s;}
.vtx-exp-ctx-opt:hover .vtx-exp-ctx-opt-lbl{color:var(--vtx-expanders-text-primary,#212121);}
.vtx-exp-ctx-opt.vtx-expanders-selected .vtx-exp-ctx-opt-lbl{
  color:var(--vtx-ctx-accent,#e91e8c);font-weight:var(--vtx-ctx-selected-weight,700);}
/* shader swatches — box-shadow matching .vtx-expanders-shader-card */
.vtx-exp-ctx-pop-shader-hd{font-size:11px;font-weight:600;letter-spacing:.5px;
  text-transform:uppercase;color:var(--vtx-expanders-text-secondary,#757575);
  padding:8px 0 4px;margin-top:4px;}
.vtx-exp-ctx-pop-shader-grid{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 8px;}
.vtx-exp-ctx-pop .vtx-expanders-pagination{padding:4px 0 8px;justify-content:flex-start;}
.vtx-exp-ctx-sc{position:relative;cursor:pointer;border-radius:0;overflow:visible;
  background:#fff;padding:5px;border:none;outline:none;
  box-shadow:0 2px 6px rgba(0,0,0,.15);transition:box-shadow .15s;}
.vtx-exp-ctx-sc:hover{box-shadow:0 4px 10px rgba(0,0,0,.25);}
.vtx-exp-ctx-sc.vtx-expanders-selected{box-shadow:0 4px 12px rgba(0,0,0,.3);}
.vtx-exp-ctx-sc-img-wrap{width:100px;height:100px;overflow:hidden;border-radius:0;position:relative;display:block;border:1px solid rgba(0,0,0,.12);box-sizing:border-box;}
.vtx-exp-ctx-sc-img-wrap img{width:240px;height:240px;object-fit:cover;
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(30deg);display:block;}
.vtx-exp-ctx-sc-swatch{width:100px;height:100px;display:block;}
.vtx-exp-ctx-sc-img-wrap .vtx-expanders-skeleton--swatch{position:absolute;inset:0;}
.vtx-exp-ctx-sc-lbl{font-size:11px;text-align:center;padding:2px 3px;
  color:var(--vtx-expanders-text-secondary,#757575);font-weight:300;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;}
.vtx-exp-ctx-sc.vtx-expanders-selected .vtx-exp-ctx-sc-lbl{color:var(--vtx-ctx-accent,#e91e8c);font-weight:600;}
.vtx-exp-ctx-sc-chk{display:none;}  /* removed — selection shown via pink border+label */
.vtx-exp-ctx-sc-chk.vtx-expanders-hidden{display:none;}
/* dark theme */
[data-theme="dark"] .vtx-expanders-view-toggle{background:#16161f;}
[data-theme="dark"] .vtx-exp-ctx-pop{
  --vtx-expanders-paper:#16161f;--vtx-expanders-text-primary:#e8e8f8;
  --vtx-expanders-text-secondary:#8080a8;--vtx-expanders-primary:#60a5fa;
  --vtx-expanders-divider:#2a2a3e;--vtx-expanders-hover:rgba(255,255,255,.05);
  --vtx-expanders-action-hover:rgba(255,255,255,.05);
  box-shadow:0 4px 24px rgba(0,0,0,.55);}
[data-theme="dark"] .vtx-exp-ctx-sc{box-shadow:0 1px 3px rgba(0,0,0,.45);}
[data-theme="dark"] .vtx-exp-ctx-sc:hover{box-shadow:0 3px 8px rgba(0,0,0,.6);}
/* ── Context hint (sidebar when hotspot mode is active) ──────────────────── */
.vtx-exp-ctx-hint{display:flex;flex-direction:column;align-items:center;
  padding:32px 20px 24px;gap:10px;color:var(--vtx-expanders-text2,#9e9e9e);text-align:center;}
.vtx-exp-ctx-hint-icon{opacity:.4;}
.vtx-exp-ctx-hint p{margin:0;font-size:12px;line-height:1.6;}
.vtx-exp-ctx-group-list{width:100%;padding:0 0 8px;}
.vtx-exp-ctx-group-item{display:flex;align-items:center;gap:8px;
  padding:7px 14px;cursor:pointer;user-select:none;
  transition:background .1s;border-radius:0;}
.vtx-exp-ctx-group-item:hover{background:var(--vtx-expanders-hover,rgba(0,0,0,.04));}
.vtx-exp-ctx-group-item-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;
  background:var(--vtx-expanders-divider,#e0e0e0);}
.vtx-exp-ctx-group-item-lbl{font-size:12px;font-weight:500;
  color:var(--vtx-expanders-text,#1a1a2e);flex:1;}
.vtx-exp-ctx-group-item-sel{font-size:11px;
  color:var(--vtx-expanders-text2,#9e9e9e);}
/* ── Multi-Mesh Shader (MMS) expander ───────────────────────────────────── */
.vtx-expanders-mms-wrap{position:relative;display:inline-flex;flex-direction:column;
  align-items:center;justify-content:center;cursor:pointer;padding:5px;
  box-shadow:0 2px 6px rgba(0,0,0,.15);transition:box-shadow .15s;}
.vtx-expanders-mms-wrap:hover{box-shadow:0 4px 10px rgba(0,0,0,.25);}
.vtx-expanders-mms-wrap.vtx-expanders-selected{box-shadow:0 4px 12px rgba(0,0,0,.3);}
.vtx-expanders-mms-label{font-size:11px;text-align:center;padding:2px 3px;
  color:var(--vtx-expanders-text-secondary,#757575);font-weight:300;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px;}
.vtx-expanders-mms-wrap.vtx-expanders-selected .vtx-expanders-mms-label{
  color:var(--vtx-expanders-primary,#e91e8c);font-weight:600;}
.vtx-expanders-mms-wrap .vtx-expanders-shader-check{position:absolute;top:0;right:0;
  transform:translate(50%,-50%);width:28px;height:28px;
  background:var(--vtx-expanders-paper,#fff);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 1px 4px rgba(0,0,0,.2);z-index:2;pointer-events:none;
  color:var(--vtx-expanders-primary,#e91e8c);}
[data-theme="dark"] .vtx-expanders-mms-wrap{box-shadow:0 1px 3px rgba(0,0,0,.45);}
[data-theme="dark"] .vtx-expanders-mms-wrap:hover{box-shadow:0 3px 8px rgba(0,0,0,.6);}
