body.h3-assets-open .main-stage{visibility:hidden}
#h3-assets-panel{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  left:274px;
  z-index:8;
  overflow:auto;
  background:var(--canvas);
  padding:34px clamp(26px,3.2vw,58px) 48px;
}
#h3-assets-panel[hidden]{display:none!important}
.h3-asset-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}
.h3-asset-head h2{margin:0;font-size:28px;letter-spacing:-.03em}
.h3-asset-head p{margin:6px 0 0;color:var(--muted);font-size:13px;max-width:620px}
.h3-asset-counts{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:var(--ink-soft);font-size:12px}
.h3-asset-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;flex-shrink:0}
.h3-asset-btn.danger{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,var(--line));min-height:40px}
.h3-asset-btn:disabled{opacity:.5;cursor:not-allowed}
.h3-asset-btn:focus-visible,.h3-assets-clear-dialog button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#h3-asset-clear-result{padding:12px 16px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--success);font-size:13px}
.h3-assets-clear-dialog{width:min(540px,calc(100vw - 32px));max-height:85dvh;overflow:auto;padding:0;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface);color:var(--ink);font:14px/1.8 var(--h3-font-sans)}
.h3-assets-clear-dialog::backdrop{background:#0008}
.h3-assets-clear-dialog header,.h3-assets-clear-dialog footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}
.h3-assets-clear-dialog header h2{font-size:20px;margin:0}.h3-assets-clear-dialog footer{justify-content:flex-end;border-bottom:0;border-top:1px solid var(--line);flex-wrap:wrap}
.h3-assets-clear-body{padding:8px 22px 16px}.h3-assets-clear-body p{color:var(--ink-soft)}.h3-assets-clear-body [data-error]{color:var(--danger)}
.h3-assets-clear-dialog button{min-height:40px;border:1px solid var(--line-strong);border-radius:9px;padding:8px 14px;background:var(--field);color:var(--ink);font:inherit;cursor:pointer}.h3-assets-clear-dialog button.danger{background:var(--danger);color:var(--accent-ink);border-color:var(--danger)}
.h3-assets-clear-dialog button:disabled{opacity:.6;cursor:wait}
@media(max-width:700px){.h3-asset-head{align-items:flex-start;flex-direction:column}.h3-asset-head-actions{justify-content:flex-start;width:100%}}
.h3-asset-drop{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:168px;
  border:1.5px dashed var(--line-strong, #3a404a);
  border-radius:20px;
  background:var(--surface);
  color:var(--muted);
  text-align:center;
  padding:28px 18px;
}
.h3-asset-drop.over{border-color:var(--accent, #7c8cff);background:color-mix(in srgb, var(--accent, #7c8cff) 8%, var(--surface))}
.h3-asset-drop strong{color:var(--ink);font-size:16px}
.h3-asset-drop-actions{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap;justify-content:center}
button.h3-asset-btn{font:inherit}
.h3-asset-btn,.h3-asset-pending-head button,.h3-asset-actions button{
  border:0;
  border-radius:10px;
  padding:8px 14px;
  background:var(--accent-soft, #7c8cff24);
  color:var(--ink);
  cursor:pointer;
  font-size:13px;
}
.h3-asset-btn.ghost,.h3-asset-pending-head .ghost,.h3-asset-actions .ghost{
  background:transparent;
  border:1px solid var(--line);
}
.h3-asset-actions .danger{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}
.h3-asset-pending{margin:16px 0;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 16px}
.h3-asset-pending-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.h3-asset-pending-row{display:grid;grid-template-columns:64px minmax(140px,220px) 1fr auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}
.h3-asset-pending-row input{height:34px;border:1px solid var(--line);background:var(--field);color:var(--ink);border-radius:10px;padding:0 10px}
.h3-asset-pending-row span{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.h3-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:18px}
.h3-asset-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px}
.h3-asset-thumb{height:140px;border-radius:12px;overflow:hidden;background:var(--field);display:grid;place-items:center}
.h3-asset-thumb img,.h3-asset-thumb video{width:100%;height:100%;object-fit:cover}
.h3-asset-copy{display:flex;flex-direction:column;gap:3px}
.h3-asset-copy small{color:var(--muted);font-size:11px}
.h3-asset-copy span{color:var(--faint);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.h3-asset-actions{display:flex;flex-wrap:wrap;gap:8px}
.h3-asset-empty{margin-top:18px;background:var(--surface);border:1px dashed var(--line-strong);border-radius:20px;padding:48px 24px;text-align:center;color:var(--muted)}
@media (max-width:900px){
  #h3-assets-panel{left:0}
  .h3-asset-pending-row{grid-template-columns:1fr}
}
