/* Copyright (c) 2026 Dismo Industries LLC. Proprietary - all rights reserved. */
/* Archives > Listings table and the full-window listing editor. */
.lst-total { font:bold 11px var(--review-mono); color:#68e1fd; background:#12283a; border-radius:10px; padding:1px 7px; margin-left:6px; vertical-align:middle; }
#listings-card > p { max-width:62ch; color:#b9a8dd; line-height:1.5; }
.lst-tools { display:flex; gap:10px; align-items:center; margin:14px 0 4px; }
.lst-tools input[type="search"] { flex:1; min-width:0; }
.lst-sort { display:inline-flex; gap:8px; align-items:center; color:#8f80a8; font-size:13px; white-space:nowrap; }
.lst-list { display:flex; flex-direction:column; }
.lst-row { display:grid; grid-template-columns:62px minmax(170px,2.2fr) minmax(90px,1fr) minmax(80px,.9fr) 74px 70px 84px 46px minmax(140px,1.4fr); align-items:center; gap:12px; width:100%; }
.lst-head { padding:6px 8px; font:11px var(--review-mono); color:#736486; text-transform:uppercase; letter-spacing:.5px; }
.lst-head .num, .lst-row .num { text-align:right; }
.cf-admin-panel .lst-row:not(.lst-head) { text-align:left; background:transparent; border:0; border-top:1px solid #2b223a; border-radius:0; padding:12px 8px; color:#b4a5ce; font-weight:400; font-size:14px; cursor:pointer; }
.cf-admin-panel .lst-row:not(.lst-head):hover, .cf-admin-panel .lst-row:not(.lst-head):focus-visible { background:#24102e; outline:1px solid #ff26c4; }
.lst-row.dimmed .lst-app strong { color:#8f80a8; }
.lst-face { display:grid; place-items:center; width:52px; height:26px; background:#000; border:1px solid #302639; border-radius:3px; overflow:hidden; flex-shrink:0; }
.lst-face img { width:100%; height:100%; object-fit:contain; image-rendering:pixelated; }
.lst-face span { font:bold 7px var(--review-mono); color:#b8f1ff; text-transform:uppercase; white-space:nowrap; overflow:hidden; max-width:48px; }
.lst-app { display:flex; flex-direction:column; gap:3px; min-width:0; }
.lst-app strong { color:#eee7fb; font-size:15px; overflow-wrap:anywhere; }
.lst-pills, .lst-health { display:flex; flex-wrap:wrap; gap:4px; }
.lst-sm { display:none; color:#8f80a8; font-size:12px; line-height:1.4; }
.lst-cell { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lst-cell.bad { color:#ff577b; }
.lst-official { color:#c48aff; font-weight:700; }
.lst-muted { color:#736486; }
.hchip { font:bold 9.5px var(--review-mono); letter-spacing:.5px; text-transform:uppercase; padding:2px 6px; border-radius:3px; white-space:nowrap; }
.hchip.ok { color:#45ffc5; background:#0f2a22; }
.hchip.warn { color:#ffdd34; background:#2d2710; }
.hchip.bad { color:#ff577b; background:#3a1422; }
.hchip.core { color:#c48aff; background:#302044; }
.hchip.dim { color:#b9a8dd; background:#241b33; }
.lst-empty { padding:10px 8px; color:#8f80a8; }
.lst-foot { color:#8f80a8; font-size:13px; margin:12px 0 4px; }
.lst-legend { color:#b9a8dd; font-size:13px; }
.lst-legend summary { color:#68e1fd; cursor:pointer; text-decoration:underline; width:max-content; max-width:100%; }
.lst-legend ul { margin:8px 0; padding-left:18px; line-height:1.6; }
@media (max-width: 1100px) {
  .lst-row { grid-template-columns:62px minmax(0,1fr); }
  .lst-head, .lst-cell { display:none; }
  .lst-sm { display:block; }
  .lst-health { grid-column:2; }
}
@media (max-width: 620px) {
  .lst-tools { flex-direction:column; align-items:stretch; }
}

/* Full-window editor */
body.admin-page.listing-editor-open { overflow:hidden; }
.listing-editor-open > .admin-header, .listing-editor-open > .admin-content { visibility:hidden; }
.listing-editor[hidden] { display:none; }
.listing-editor { position:fixed; inset:0; z-index:100; display:flex; flex-direction:column; background:#0c0718; color:#eee7fb; font:14px/1.45 Inter,system-ui,sans-serif; }
.listing-editor * { box-sizing:border-box; }
.listing-editor button, .le-button { font:inherit; border:1px solid #3a304b; border-radius:8px; background:transparent; color:#baa9dc; padding:6px 12px; cursor:pointer; text-decoration:none; display:inline-block; }
.listing-editor button:focus-visible, .le-button:focus-visible, .listing-editor input:focus-visible, .listing-editor textarea:focus-visible, .listing-editor select:focus-visible { outline:2px solid #68e1fd; outline-offset:2px; }
.le-head { display:flex; align-items:center; gap:16px; padding:12px 16px; border-bottom:1px solid #241b33; min-height:72px; flex-shrink:0; }
.le-face { width:52px; height:26px; }
.le-title { min-width:0; }
.le-head h1 { font-size:18px; line-height:1.2; margin:0 0 3px; overflow-wrap:anywhere; text-transform:uppercase; letter-spacing:.5px; }
.le-head p { margin:0; color:#b9a8dd; font-size:13px; }
.le-mode { font:bold 10px var(--review-mono); letter-spacing:.6px; text-transform:uppercase; color:#ff26c4; background:#351032; padding:3px 6px; border-radius:3px; margin-left:6px; white-space:nowrap; }
.le-banner { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:10px 16px; background:#1b1526; border-bottom:1px solid #3a304b; color:#d8cdef; flex-shrink:0; }
.le-loading { padding:20px 16px; color:#b9a8dd; }
.le-phone-tabs { display:none; }
.le-body { display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,540px); flex:1; min-height:0; }
.le-prev { overflow:auto; padding:18px 16px 28px; border-right:1px solid #241b33; background:#0a0614; min-width:0; }
.le-note { color:#8f80a8; font-size:13px; margin:0 0 14px; }
.le-note strong { color:#ffdd34; font-weight:600; }
.le-hidden-note { color:#ffdd34; font-size:13px; margin:0 0 14px; }
.le-hidden-note[hidden] { display:none; }
.le-cap { font:11px var(--review-mono); letter-spacing:2px; text-transform:uppercase; color:#8f80a8; margin:4px 0 10px; }
.le-card { width:250px; max-width:100%; margin-bottom:22px; }
.le-side { display:flex; flex-direction:column; min-height:0; min-width:0; background:#110a20; }
.le-side-tabs { display:flex; gap:4px; padding:8px 12px 0; border-bottom:1px solid #241b33; flex-shrink:0; }
.listing-editor .le-side-tabs button { border:0; border-bottom:2px solid transparent; border-radius:0; color:#b9a8dd; font-weight:bold; padding:8px 10px; }
.listing-editor .le-side-tabs button[aria-selected="true"] { border-bottom-color:#68e1fd; color:#fff; }
.le-badge { font:bold 11px var(--review-mono); background:#2a2140; color:#b9a8dd; border-radius:10px; padding:1px 7px; margin-left:4px; }
.le-pane { flex:1; min-height:0; overflow:auto; padding:14px 16px 20px; }
.le-last { display:flex; flex-direction:column; gap:6px; border:1px solid #30263d; border-radius:8px; padding:10px 12px; margin-bottom:12px; color:#b9a8dd; font-size:13px; }
.le-last strong { color:#eee7fb; }
.le-role { font:bold 9px var(--review-mono); text-transform:uppercase; letter-spacing:.6px; color:#68e1fd; background:#12283a; padding:1px 5px; border-radius:3px; }
.listing-editor .le-link { border:0; padding:0; color:#68e1fd; text-decoration:underline; align-self:flex-start; }
.le-tips { border:1px solid #6b5a1b; background:#231d18; border-radius:8px; padding:10px 14px; margin-bottom:16px; }
.le-tips.good { border-color:#1f5a45; background:#0f1d19; }
.le-tips h4 { font:bold 11px var(--review-mono); letter-spacing:1px; text-transform:uppercase; margin:0 0 6px; }
.le-tips ul { margin:0; padding-left:18px; line-height:1.55; }
.le-tips p { margin:0; }
.le-field { margin-bottom:16px; }
.le-field label { display:flex; justify-content:space-between; align-items:baseline; font-weight:700; margin-bottom:6px; }
.le-count { font:bold 11px var(--review-mono); color:#8f80a8; }
.listing-editor input, .listing-editor textarea, .listing-editor select { width:100%; font:inherit; color:#eee7fb; background:#0c0718; border:1px solid #3a304b; border-radius:6px; padding:8px 10px; }
.listing-editor textarea { resize:vertical; min-height:120px; }
.le-meter-row { display:flex; align-items:center; gap:10px; margin-top:8px; font:12px var(--review-mono); color:#8f80a8; }
.le-meter { flex:1; height:6px; background:#241b33; border-radius:3px; overflow:hidden; }
.le-meter i { display:block; height:100%; background:#ffdd34; }
.le-meter.good i { background:#45ffc5; }
.le-meter.long i { background:#ff577b; }
.le-help { color:#8f80a8; font-size:12px; margin:6px 0 0; }
.le-tags { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.le-tags:empty { display:none; }
.le-tag { display:inline-flex; align-items:center; gap:6px; border:1px solid #3a304b; border-radius:14px; padding:2px 4px 2px 10px; }
.listing-editor .le-tag button { border:0; padding:0 6px; color:#8f80a8; }
.le-tag-add { display:flex; gap:8px; }
.le-foot { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:10px 16px; border-top:1px solid #241b33; background:#110a20; flex-shrink:0; }
.le-foot[hidden] { display:none; }
.listing-editor .le-save { border:0; color:#fff; font-weight:700; background:linear-gradient(90deg,#ff26c4,#b16cff); }
.listing-editor .le-save:disabled { opacity:.6; }
.le-foot [role="status"] { font-size:13px; color:#8f80a8; }
.le-dirty { color:#ffdd34; }
.le-status { color:#45ffc5; }
.le-history { list-style:none; margin:0; padding:0; }
.le-hist { border:1px solid #30263d; border-radius:8px; padding:10px 12px; margin-bottom:10px; }
.le-hist-head { margin:0 0 6px; display:flex; flex-wrap:wrap; gap:6px; align-items:center; font-size:13px; color:#8f80a8; }
.le-hist-head strong { color:#eee7fb; }
.le-hist-row { display:grid; grid-template-columns:110px minmax(0,1fr); gap:10px; padding:4px 0; border-top:1px dashed #2b223a; font-size:13px; overflow-wrap:anywhere; }
.le-hist-field { color:#b9a8dd; font-weight:700; }
.le-old { color:#8f80a8; text-decoration:line-through; }
.le-arrow { color:#736486; font-family:var(--review-mono); }
.le-new { color:#eee7fb; }
.le-marker, .le-empty { color:#8f80a8; border-top:1px dashed #3a304b; border-bottom:1px dashed #3a304b; padding:6px 0; font-size:13px; }
.le-block { border:1px solid #30263d; border-radius:8px; padding:12px 14px; margin-bottom:12px; }
.le-block h4 { margin:0 0 6px; font-size:14px; }
.le-block p { margin:0 0 8px; color:#b9a8dd; font-size:13px; }
.le-row { display:flex; gap:8px; flex-wrap:wrap; }
.le-vis { font:bold 11px var(--review-mono); text-transform:uppercase; padding:2px 6px; border-radius:3px; color:#45ffc5; background:#0f2a22; }
.le-vis.unlisted, .le-vis.archived { color:#b9a8dd; background:#241b33; }
.listing-editor .le-warn { color:#ffdd34; border-color:#6b5a1b; }
.listing-editor .le-bad { color:#ff577b; border-color:#5a2230; }
.listing-editor .le-good { color:#45ffc5; border-color:#1f5a45; }
.le-button { color:#68e1fd; border-color:#2c4c63; }
.le-admin-state:empty { display:none; }
.le-admin-state { color:#ff577b; }
.le-dialog { background:#161027; color:#eee7fb; border:1px solid #3a304b; border-radius:10px; padding:16px 18px; max-width:min(420px, calc(100vw - 32px)); }
.le-dialog::backdrop { background:rgba(2,1,6,.6); }
.le-dialog p { margin:0 0 14px; line-height:1.5; }
.le-dialog .le-row { justify-content:flex-end; }
@media (max-width: 899px) {
  .le-head { flex-wrap:wrap; gap:10px; }
  .le-phone-tabs { display:flex; border-bottom:1px solid #241b33; flex-shrink:0; }
  .listing-editor .le-phone-tabs button { flex:1; border:0; border-bottom:2px solid transparent; border-radius:0; padding:10px 4px; font:bold 11px var(--review-mono); text-transform:uppercase; letter-spacing:.5px; color:#b9a8dd; }
  .listing-editor .le-phone-tabs button[aria-selected="true"] { border-bottom-color:#68e1fd; color:#fff; }
  .le-body { grid-template-columns:minmax(0,1fr); }
  .le-side-tabs { display:none; }
  .listing-editor[data-pane="preview"] .le-side { display:none; }
  .listing-editor:not([data-pane="preview"]) .le-prev { display:none; }
  .le-prev { border-right:0; }
  .le-hist-row { grid-template-columns:minmax(0,1fr); gap:2px; }
}

/* Listing editor, slice 2: author mode, pictures, admin-only box, history filter */
.lst-tagline { color:#b9a8dd; font-size:12px; overflow-wrap:anywhere; }
.hchip.new { color:#ff26c4; background:#351032; }
.le-head .le-view { margin-left:auto; }
.le-mine { color:#c48aff; background:#2a1d40; }
.le-checks { font:bold 9px var(--review-mono); letter-spacing:.5px; text-transform:uppercase; color:#ffdd34; background:#2d2710; padding:2px 5px; border-radius:3px; margin-left:6px; }
.le-src { font:bold 9px var(--review-mono); letter-spacing:.5px; text-transform:uppercase; color:#8f80a8; border:1px solid #3a304b; padding:1px 5px; border-radius:3px; }
.le-waiting { color:#ff26c4; }
.le-pending { background:#24102e; border-bottom-color:#5a1f52; }
.listing-editor textarea.le-short { min-height:80px; }
.le-shots { list-style:none; margin:0 0 8px; padding:0; display:flex; flex-direction:column; gap:8px; }
.le-shot { display:grid; grid-template-columns:96px minmax(0,1fr) auto; gap:10px; align-items:center; border:1px solid #30263d; border-radius:8px; padding:6px 8px; }
.le-shot.face { border-color:#2c6c80; }
.le-shot img { width:96px; height:48px; object-fit:contain; background:#000; image-rendering:pixelated; border-radius:3px; }
.le-shot-name { font-size:13px; color:#b9a8dd; display:flex; flex-direction:column; gap:2px; align-items:flex-start; }
.le-shot-name strong { color:#68e1fd; }
.le-shot-moves { display:flex; gap:4px; }
.listing-editor .le-shot-moves button { padding:3px 8px; }
.listing-editor .le-shot-moves button:disabled { opacity:.35; cursor:default; }
.listing-editor .le-cyan, .le-file { color:#68e1fd; border-color:#2c4c63; background:#0f2230; }
.le-file { cursor:pointer; }
.le-media-actions { margin-top:4px; }
.le-emu[hidden] { display:none; }
.le-emu { margin:10px 0 4px; display:flex; flex-direction:column; gap:8px; }
.le-emu-stage { max-width:360px; }
.le-loop { display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:13px; color:#b9a8dd; }
.le-loop img { width:96px; height:48px; background:#000; image-rendering:pixelated; border-radius:3px; }
.le-chips { display:flex; flex-wrap:wrap; gap:6px; margin:0; }
.le-pill { display:inline-block; font:bold 10px var(--review-mono); letter-spacing:.5px; text-transform:uppercase; padding:2px 7px; border-radius:3px; border:1px solid currentColor; }
.le-pill.ok { color:#45ffc5; } .le-pill.warn { color:#ffdd34; } .le-pill.info { color:#68e1fd; } .le-pill.bad { color:#ff577b; } .le-pill.dim { color:#b9a8dd; }
.le-shared { border:1px solid #30263d; border-radius:8px; padding:10px 12px; }
.le-shared p { margin:0 0 6px; display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.le-admin-only { border:1px dashed #ff26c4; border-radius:10px; padding:12px; background:rgba(255,38,196,.04); }
.le-admin-only > p { color:#b9a8dd; font-size:13px; margin:0 0 10px; }
.le-only { font:bold 12px var(--review-mono); letter-spacing:1.5px; text-transform:uppercase; color:#ff26c4; margin:0 0 6px; }
.le-perm { font:bold 9px var(--review-mono); letter-spacing:.5px; text-transform:uppercase; color:#b9a8dd; background:#241b33; padding:2px 5px; border-radius:3px; margin-left:4px; vertical-align:middle; }
.le-admin-state { color:#45ffc5; }
.le-switch { display:flex; align-items:center; gap:8px; font-weight:600; }
.listing-editor .le-switch input { width:auto; }
.le-modes { display:flex; flex-direction:column; gap:6px; margin:8px 0; }
.le-mode-opt { display:flex; gap:10px; align-items:flex-start; border:1px solid #30263d; border-radius:8px; padding:8px 10px; cursor:pointer; }
.le-mode-opt:has(input:checked) { border-color:#68e1fd; background:#0f2230; }
.listing-editor .le-mode-opt input { width:auto; margin-top:3px; }
.le-mode-opt span { display:flex; flex-direction:column; gap:2px; }
.le-mode-opt small { color:#8f80a8; }
.listing-editor select:disabled, .listing-editor input:disabled, .listing-editor button:disabled { opacity:.5; cursor:not-allowed; }
.le-people { margin:0 0 10px; }
.listing-editor .le-people button[aria-pressed="true"] { background:#68e1fd; color:#0c0718; border-color:#68e1fd; }
.le-outcome { font:bold 9px var(--review-mono); letter-spacing:.5px; text-transform:uppercase; padding:2px 6px; border-radius:3px; color:#b9a8dd; background:#241b33; }
.le-outcome.waiting { color:#ff26c4; background:#351032; }
.le-outcome.approved { color:#45ffc5; background:#0f2a22; }
.le-outcome.declined { color:#ff577b; background:#3a1422; }
.le-from { font-size:12px; color:#8f80a8; font-style:italic; }
.le-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:12px; }
.le-tile { border:1px solid #30263d; border-radius:8px; padding:10px 12px; display:flex; flex-direction:column; gap:2px; }
.le-tile .k { font:bold 10px var(--review-mono); letter-spacing:1px; text-transform:uppercase; color:#8f80a8; }
.le-tile .v { font:bold 24px var(--review-mono); color:#eee7fb; }
.le-tile .v.cool { color:#68e1fd; } .le-tile .v.ok { color:#45ffc5; } .le-tile .v.hot { color:#ff26c4; }
.le-tile .s { font-size:12px; color:#8f80a8; }
.le-reports { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.le-reports li { border:1px solid #30263d; border-radius:8px; padding:8px 10px; }
.le-reports p { margin:6px 0 0; color:#eee7fb; }
/* My listing: the editor sits in the page instead of covering it. */
.listing-editor.le-inline { position:relative; inset:auto; z-index:auto; min-height:calc(100vh - 140px); border:1px solid #241b33; border-radius:10px; overflow:hidden; --review-mono:var(--cf-font-mono, monospace); margin:12px 0 32px; }
.le-inline .le-body { min-height:70vh; }
.le-inline .le-prev, .le-inline .le-pane { max-height:calc(100vh - 220px); }
.cf-my-listing-list { list-style:none; padding:0; display:flex; flex-direction:column; gap:8px; }
.cf-my-listing-item { display:flex; flex-direction:column; gap:2px; border:1px solid #30263d; border-radius:8px; padding:10px 12px; text-decoration:none; color:inherit; }
.cf-my-listing-item small { color:#68e1fd; }
@media (max-width: 899px) {
  .le-head .le-view { margin-left:0; }
  .le-tiles { grid-template-columns:minmax(0,1fr); }
  .le-shot { grid-template-columns:72px minmax(0,1fr); }
  .le-shot img { width:72px; height:36px; }
  .le-shot-moves { grid-column:1 / -1; justify-content:flex-end; }
  .le-inline .le-prev, .le-inline .le-pane { max-height:none; }
}
