/* esc-trust.css (Phase 0 trust fixes, additive). Theme variables only. */
#loading.esc-splash{cursor:pointer}
#loading .esc-skip{margin-top:10px;font:500 12px/1 Oswald,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:transparent;border:1px solid var(--border);border-radius:999px;padding:8px 14px;cursor:pointer}
#escBootSkel{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 96px);transform:translateX(-50%);z-index:40;pointer-events:none;display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:var(--panel);border:1px solid var(--border);color:var(--muted);font:500 12px/1 Oswald,sans-serif;letter-spacing:.12em;text-transform:uppercase}
#escBootSkel i{display:block;width:64px;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--border) 0%,var(--gold-dim) 50%,var(--border) 100%);background-size:200% 100%;animation:escSk 1.2s linear infinite}
body.globe-ready #escBootSkel{display:none}
@keyframes escSk{0%{background-position:200% 0}100%{background-position:-200% 0}}
/* skeleton placeholders: any of these panels while still empty (data not in yet) */
#artistList:empty,#stats:empty,#detailBody:empty,#shelfBody:empty,#scenePane .sc-body:empty,#partnersBody:empty{min-height:120px;position:relative}
#artistList:empty::before,#detailBody:empty::before,#shelfBody:empty::before,#scenePane .sc-body:empty::before,#partnersBody:empty::before{content:"";position:absolute;inset:8px;border-radius:10px;
  background:
   linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--gold) 14%,transparent) 50%,transparent 100%) 0 0/200% 100%,
   repeating-linear-gradient(180deg,color-mix(in srgb,var(--text) 7%,transparent) 0 44px,transparent 44px 58px);
  animation:escSk 1.4s linear infinite}
#stats:empty{min-height:14px}
#stats:empty::before{content:"";display:block;height:10px;width:60%;border-radius:6px;background:color-mix(in srgb,var(--text) 8%,transparent)}
@media (prefers-reduced-motion:reduce){#escBootSkel i,#artistList:empty::before,#detailBody:empty::before,#shelfBody:empty::before,#scenePane .sc-body:empty::before,#partnersBody:empty::before{animation:none}}
/* needs-city contribution prompts */
.esc-tellus{margin:8px 0;padding:10px 12px;border:1px dashed var(--gold-dim);border-radius:10px;background:color-mix(in srgb,var(--gold) 6%,transparent)}
.esc-tellus button{all:unset;cursor:pointer;color:var(--gold);font:500 14px/1.35 Oswald,sans-serif}
.esc-tellus button:hover,.esc-tellus button:focus-visible{text-decoration:underline}
.esc-tellus small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.esc-tellus-chip{display:inline-block;margin-left:6px;color:var(--gold);text-decoration:underline;cursor:pointer;font-size:.95em}
