/* Group Images only: other media/import dialogs retain their existing layout. */
.listing-group-backdrop.order-create-backdrop { padding:24px; }
.listing-media-group-modal.listing-group-dialog { width:min(1120px,100%);height:min(800px,calc(var(--listing-group-vh,100dvh) - 48px));max-height:calc(var(--listing-group-vh,100dvh) - 48px);padding:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:0;overflow:hidden;border:1px solid #e2e8f0;border-radius:18px;background:var(--surface,#fff);color:var(--text,#172033);box-shadow:0 24px 80px #0f172a33; }
.listing-group-dialog * { box-sizing:border-box; }
.listing-group-dialog .listing-group-header { display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid #e2e8f0; }
.listing-group-dialog h3 { margin:0;font-size:21px;line-height:1.3;letter-spacing:-.02em; }
.listing-group-dialog .listing-group-header p { margin:6px 0 0;font-size:13px;line-height:1.5;overflow-wrap:anywhere; }
.listing-group-dialog .btn { min-height:44px;line-height:1.3;white-space:normal; }
.listing-group-dialog .listing-group-close { flex:none; }
.listing-group-dialog .listing-group-workspace { display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:0;overflow:hidden; }
.listing-group-dialog .listing-group-photos { display:flex;flex-direction:column;gap:14px;padding:20px;min-height:0;min-width:0; }
.listing-group-dialog .listing-group-groups { display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;min-width:0;min-height:0;padding:20px;border-left:1px solid #e2e8f0;background:#f8fafc;overflow:hidden;overscroll-behavior:contain;scrollbar-gutter:stable; }
.listing-group-dialog .listing-group-pane-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;flex:none; }
.listing-group-dialog .listing-group-pane-heading h4 { font-size:14px;line-height:1.5;margin:0;color:inherit;overflow-wrap:anywhere; }
.listing-group-dialog .listing-group-pane-heading p { font-size:12px;line-height:1.5;margin:3px 0 0; }
.listing-group-dialog .listing-group-photo-toolbar { display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;flex:none; }
.listing-group-dialog .listing-media-group-preview-toolbar { justify-content:flex-end; }
.listing-group-dialog .listing-media-group-preview-toolbar .listing-thumbnail-size-control { gap:10px; }
.listing-group-dialog .listing-media-group-preview-toolbar input[type=range] { width:120px; }
.listing-group-dialog .listing-media-group-selected-preview { flex:1;min-height:0;max-height:none;grid-auto-rows:max-content;align-content:start;align-items:start;gap:12px;padding:4px;overflow:auto;border:0;border-radius:0;background:transparent;overscroll-behavior:contain;scrollbar-gutter:stable; }
.listing-group-dialog .listing-media-group-selected-tile { aspect-ratio:4/3;display:block;height:auto;min-height:0;align-self:start;transform:none;border-radius:10px; }
.listing-group-dialog .listing-media-group-selected-tile::before { display:none; }
.listing-group-dialog .listing-media-group-selected-tile.is-selected { box-shadow:0 0 0 2px #6366f144;border-color:#6366f1; }
.listing-group-dialog .listing-media-group-selected-tile .listing-group-photo-check { position:absolute;inset:8px auto auto 8px;display:grid;place-items:center;width:24px;height:24px;min-height:0;border:1px solid #ffffffdd;border-radius:7px;background:#0f172a66;color:#fff;font-size:15px;box-shadow:0 1px 4px #0002; }
.listing-group-dialog .is-selected .listing-group-photo-check { background:#5557ed;border-color:#5557ed; }
.listing-group-dialog .listing-media-group-selected-tile .listing-group-photo-number { position:absolute;inset:8px 8px auto auto;display:block;min-height:0;border-radius:5px;padding:3px 6px;background:#0f172a99;color:#fff;font-size:10px;line-height:16px; }
.listing-group-dialog .listing-media-group-selected-tile em { bottom:7px;left:7px;right:7px;pointer-events:none; }
.listing-group-dialog .listing-group-search input,.listing-group-dialog .listing-media-group-create input,.listing-group-dialog select { min-width:0;width:100%;min-height:44px;margin:0;font:inherit;font-size:14px;border:1px solid #d8dee8;border-radius:9px;background:#fff;color:#243047;padding:10px 12px; }
.listing-group-dialog .listing-group-search { grid-row:2;display:block;flex:none;margin:0; }
.listing-group-dialog .listing-media-group-options { grid-row:3;display:flex;flex-direction:column;gap:6px;overflow:auto;overscroll-behavior:contain;max-height:none;min-height:0;padding:0;border:0;background:transparent;flex:none; }
.listing-group-dialog .listing-media-group-option { flex:none;min-height:48px;border:1px solid #e2e8f0;border-radius:9px;color:#334155;font-size:13px;font-weight:500;line-height:1.4; }
.listing-group-dialog .listing-media-group-option>span:first-child { min-width:0;overflow-wrap:anywhere;text-align:left; }
.listing-group-dialog .listing-media-group-option-meta { flex:none; }
.listing-group-dialog .listing-media-group-option.is-current { border-color:#c7d2fe;background:#eef2ff;color:#3730a3; }
.listing-group-dialog .listing-media-group-option:hover { border-color:#a5b4fc;background:#f3f5ff; }
.listing-group-dialog .listing-media-group-drag-handle { background:transparent;border:0;color:#64748b; }
.listing-group-dialog [hidden] { display:none!important; }
.listing-group-dialog .listing-group-create-wrap { grid-row:4;padding-top:14px;border-top:1px solid #e2e8f0;flex:none; }
.listing-group-dialog .listing-group-no-results { grid-row:3;grid-column:1;align-self:start; }
.listing-group-dialog .listing-group-create-wrap>label { display:block;font-size:12px;font-weight:600;margin:0 0 8px;color:#475569; }
.listing-group-dialog .listing-media-group-create { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px; }
.listing-group-dialog .listing-media-group-create .btn { width:auto; }
.listing-group-dialog .listing-group-reorder { margin-top:14px;font-size:12px; }
.listing-group-dialog .listing-group-reorder summary { cursor:pointer;padding:8px 0;color:#64748b; }
.listing-group-dialog .listing-group-reorder>div { display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:6px;margin-top:4px; }
.listing-group-dialog .listing-group-reorder .btn { padding:8px; }
.listing-group-dialog .listing-group-footer { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;background:var(--surface,#fff); }
.listing-group-dialog .listing-group-footer-count { font-size:13px;font-weight:600;white-space:nowrap;color:var(--text,#334155); }
.listing-group-dialog .listing-group-footer-actions { display:flex;gap:8px;align-items:center; }
.listing-group-dialog .listing-group-mobile-next,.listing-group-dialog .listing-group-mobile-tabs { display:none; }
.listing-group-dialog .listing-group-ungroup { background:transparent;border-color:transparent;color:#64748b; }
.listing-group-dialog .listing-group-empty { display:grid;align-content:center;gap:8px;flex:1;min-height:120px;text-align:center;padding:20px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc; }
.listing-group-dialog .listing-group-empty p,.listing-group-dialog .listing-group-no-results { font-size:13px;line-height:1.5; }
.listing-group-dialog :is(button,input,select,summary):focus-visible { outline:3px solid #6366f1;outline-offset:3px; }
.listing-group-dialog .sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media (max-width:900px) and (min-width:681px) {
  .listing-group-dialog .listing-group-workspace { grid-template-columns:minmax(0,1fr) 300px; }
  .listing-group-dialog .listing-group-photos,.listing-group-dialog .listing-group-groups { padding:16px; }
}
@media (max-width:680px) {
  .listing-group-backdrop.order-create-backdrop { padding:8px; }
  .listing-media-group-modal.listing-group-dialog { width:100%;height:calc(var(--listing-group-vh,100dvh) - 16px);max-height:calc(var(--listing-group-vh,100dvh) - 16px);border-radius:14px;grid-template-rows:auto auto minmax(0,1fr) auto; }
  .listing-group-dialog .listing-group-header { padding:16px;gap:12px; }
  .listing-group-dialog h3 { font-size:18px; }
  .listing-group-dialog .listing-group-header p { font-size:12px; }
  .listing-group-dialog .listing-group-mobile-tabs { display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:12px 16px 0;padding:4px;border-radius:10px;background:#f1f5f9; }
  .listing-group-dialog .listing-group-mobile-tabs button { min-height:44px;border:0;border-radius:7px;background:transparent;color:#64748b;font:inherit;font-size:13px;font-weight:600; }
  .listing-group-dialog .listing-group-mobile-tabs button[aria-selected=true] { background:#fff;color:#3730a3;box-shadow:0 1px 3px #0f172a15; }
  .listing-group-dialog .listing-group-mobile-tabs span { margin-left:6px;font-size:11px;opacity:.75; }
  .listing-group-dialog .listing-group-workspace { display:block;min-height:0; }
  .listing-group-dialog .listing-group-photos,.listing-group-dialog .listing-group-groups { height:100%;padding:16px; }
  .listing-group-dialog[data-mobile-panel=photos] .listing-group-groups,.listing-group-dialog[data-mobile-panel=groups] .listing-group-photos { display:none; }
  .listing-group-dialog .listing-group-groups { border-left:0;background:var(--surface,#fff); }
  .listing-group-dialog .listing-media-group-selected-preview { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
  .listing-group-dialog .listing-group-photo-toolbar { gap:4px; }
  .listing-group-dialog .listing-group-photos .listing-media-group-preview-toolbar { display:none; }
  .listing-group-dialog :is(input,select) { font-size:16px; }
  .listing-group-dialog .listing-group-footer { display:block;padding:10px 12px max(10px,env(safe-area-inset-bottom)); }
  .listing-group-dialog .listing-group-footer-count { display:block;margin-bottom:7px;font-size:12px; }
  .listing-group-dialog .listing-group-footer-actions { width:100%;gap:6px; }
  .listing-group-dialog .listing-group-footer-actions .btn { font-size:12px;padding:10px; }
  .listing-group-dialog .listing-group-ungroup { margin-right:auto; }
  .listing-group-dialog .listing-group-mobile-next { display:inline-flex; }
  .listing-group-dialog[data-mobile-panel=groups] .listing-group-mobile-next { display:none; }
}
html[data-theme="dark"] .listing-group-dialog { background:#111827;color:#e2e8f0;border-color:#334155; }
html[data-theme="dark"] .listing-group-dialog :is(.listing-group-header,.listing-group-footer,.listing-group-groups,.listing-group-create-wrap) { border-color:#334155;background:#172033; }
html[data-theme="dark"] .listing-group-dialog :is(.listing-group-search input,.listing-media-group-create input,select,.listing-media-group-option,.listing-group-empty) { background:#1e293b;color:#e2e8f0;border-color:#475569; }
html[data-theme="dark"] .listing-group-dialog .listing-group-mobile-tabs { background:#1e293b; }
html[data-theme="dark"] .listing-group-dialog .listing-group-mobile-tabs button[aria-selected=true] { background:#334155;color:#e0e7ff; }
html[data-theme="dark"] .listing-group-dialog .listing-media-group-option.is-current { background:#312e81;color:#eef2ff;border-color:#6366f1; }
@media (prefers-reduced-motion:reduce) { .listing-group-dialog * { transition:none!important; } }

@media (max-height:599px) {
  .listing-group-dialog .listing-group-groups { display:flex;overflow:auto; }
  .listing-group-dialog .listing-media-group-options { overflow:visible;flex:none; }
}

@media (max-width:680px) { body.listing-group-dialog-open .toast { bottom:var(--listing-group-toast-bottom,112px);max-width:calc(100vw - 32px); } }
@media (max-height:599px) {
  .listing-group-backdrop.order-create-backdrop { padding:8px; }
  .listing-media-group-modal.listing-group-dialog { height:calc(var(--listing-group-vh,100dvh) - 16px);max-height:calc(var(--listing-group-vh,100dvh) - 16px); }
  .listing-group-dialog .listing-group-header { padding:10px 16px; }
  .listing-group-dialog h3 { font-size:18px; }
  .listing-group-dialog .listing-group-header p { margin-top:2px;font-size:12px; }
  .listing-group-dialog .listing-group-photos,.listing-group-dialog .listing-group-groups { padding:10px 12px;gap:8px; }
  .listing-group-dialog .listing-group-footer { padding:8px 12px; }
}
