/* The management page shares data and actions with the canvas picker, but owns its layout. */
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] { padding:var(--library-page-top) var(--library-page-gutter) 0; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-head { position:static; width:auto; height:auto; overflow:visible; clip-path:none; margin:0 0 28px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-kicker { display:none; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-head h3 { margin:0; font-size:26px; font-weight:650; line-height:1.35; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-tabs { width:100%; min-height:36px; gap:25px; margin:0 0 14px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-tab { min-height:36px; font-size:var(--library-control-font-size); }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-toolbar { display:flex; flex-direction:column; align-items:stretch; gap:0; padding:0; border:0; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row { width:100%; flex-wrap:wrap; gap:10px 8px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row .app-search { display:flex; order:6; flex:0 1 220px; width:220px; height:36px; border-radius:20px; background:#202022; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row input { font-size:var(--library-control-font-size); }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker summary { min-width:105px; height:36px; padding:0 12px; border-radius:18px; font-size:var(--library-control-font-size); background:#202022; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker[data-filter="kind"] { order:1; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker[data-filter="sort"] { order:2; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button { display:flex; order:4; flex:0 0 auto; height:36px; margin-left:auto; padding:6px 12px; border:1px solid #303034; border-radius:18px; background:#202022; color:#d6d6dc; font-size:var(--library-control-font-size); font-weight:500; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button:hover:not(:disabled),
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button:focus-visible { background:#303033; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button:focus-visible { outline:2px solid #c4a3eb; outline-offset:2px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-batch-tools { order:5; min-height:36px; margin-left:0; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"].asset-selecting .asset-upload-button { display:none; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"].asset-selecting .asset-batch-tools { margin-left:auto; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-batch-tools button { min-height:36px; padding:6px 12px; border:1px solid #303034; border-radius:18px; font-size:var(--library-control-font-size); background:#202022; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-batch-tools [data-asset-batch="delete"] { color:#ff777d; border-color:#603038; background:#311c21; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-quota { order:3; align-self:center; flex:0 0 auto; min-height:22px; margin-left:8px; gap:4px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-quota strong { color:#c7c7ce; font-size:var(--library-control-font-size); font-variant-numeric:tabular-nums; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-quota .asset-quota-label { margin-right:0; color:var(--library-meta-color); font-size:var(--library-meta-font-size); }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-quota-reserved span { font-size:var(--library-meta-font-size); }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-quota-meter:not([hidden]) { width:40px; margin:0 2px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-quota-used strong,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-quota-limit strong { min-width:7ch; text-align:right; }
#vjtop-ref .asset-library-quota[data-quota-state="stale"] .asset-quota-label,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-quota[data-quota-state="stale"] .asset-quota-label { color:#b9a67f; text-decoration:underline dotted; text-underline-offset:3px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-panels { padding-top:20px; }
#vjtop-ref .asset-library-capacity-warning { display:none; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-capacity-warning:not([hidden]) { display:block; flex:0 0 auto; margin:12px 0 0; padding:10px 12px; border:1px solid #514637; border-radius:8px; background:#25211b; color:#e0cbaa; font-size:var(--library-meta-font-size); line-height:1.6; overflow-wrap:anywhere; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-section-empty,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-recovery { color:var(--library-meta-color); font-size:var(--library-meta-font-size); line-height:1.5; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-section-empty[data-asset-section="cloud"] { padding:0!important; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-grid { grid-template-columns:repeat(var(--library-grid-columns),minmax(0,1fr)); gap:var(--library-grid-row-gap) var(--library-grid-column-gap); padding-right:0; padding-bottom:70px; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-item { border-radius:12px; background:transparent; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-item > img,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-item > video,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-pending,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-video-poster { aspect-ratio:16/10; border-radius:11px 11px 0 0; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-item > img,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-item > video { object-fit:cover; object-position:center; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-pending,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-video-poster,
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-preview-retry { font-size:var(--library-meta-font-size); }
#vjtop-ref .asset-library-audio-preview { position:relative; display:grid; place-items:center; width:100%; aspect-ratio:16/10; border-radius:11px 11px 0 0; background:#1b1b1d; }
#vjtop-ref .asset-library-audio-toggle { display:grid; place-items:center; width:100%; height:100%; border:0; padding:0; border-radius:inherit; background:transparent; color:#a7a7ae; cursor:pointer; }
#vjtop-ref .asset-library-audio-toggle:hover { background:#222225; }
#vjtop-ref .asset-library-audio-toggle:focus-visible { outline:2px solid #c4a3eb; outline-offset:-4px; }
#vjtop-ref .asset-library-audio-icon { display:block; width:38px; height:38px; background:currentColor; mask:url('/assets/music-node-shortcut.svg') center/contain no-repeat; }
#vjtop-ref .asset-library-audio-preview.is-expanded .asset-library-audio-toggle { padding-bottom:48px; }
#vjtop-ref .asset-library-audio-preview audio { position:absolute; inset:auto 0 8px; width:100%; height:40px; min-height:0; padding:0 8px; }
#vjtop-ref .asset-library-audio-preview audio[hidden] { display:none; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-meta { gap:8px; padding:8px 10px; background:#161618; border-radius:0 0 11px 11px; font-size:var(--library-meta-font-size); }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-name { font-size:var(--library-control-font-size); font-weight:500; color:#c7c7ce; }
#vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-size { color:var(--library-meta-color); font-size:var(--library-meta-font-size); font-variant-numeric:tabular-nums; }
#vjtop-ref .asset-item-menu { position:fixed; z-index:190; min-width:168px; box-sizing:border-box; padding:6px; border:1px solid #353539; border-radius:14px; background:#1b1b1d; box-shadow:0 12px 36px #0008; }
#vjtop-ref .asset-item-menu[hidden] { display:none; }
#vjtop-ref .asset-item-menu button { display:flex; align-items:center; gap:10px; width:100%; min-height:42px; border:0; border-radius:8px; padding:10px 12px; background:none; color:#ff535d; font-size:13px; text-align:left; cursor:pointer; }
#vjtop-ref .asset-item-menu button:hover:not(:disabled),#vjtop-ref .asset-item-menu button:focus-visible { outline:0; background:#372327; color:#ff7981; }
#vjtop-ref .asset-item-menu .ui-icon { width:17px; height:17px; }
#vjtop-ref .asset-selecting .asset-item-more { visibility:hidden; pointer-events:none; }
#vjtop-ref .asset-library-modal[data-asset-mode="page"] .asset-library-panels { position:relative; }
#vjtop-ref .asset-library-modal[data-asset-mode="page"].asset-selecting .asset-library-grid { user-select:none; }
#vjtop-ref .asset-library-grid.asset-selection-dragging { cursor:crosshair; }
#vjtop-ref .asset-selection-marquee { position:absolute; z-index:8; box-sizing:border-box; pointer-events:none; border:1px solid #a35ce7; background:#a35ce726; border-radius:3px; }
#vjtop-ref.assets-mode .asset-delete-decision-card { width:min(440px,calc(100vw - 40px)); padding:30px 28px; border-color:#303033; border-radius:30px; background:#1c1c1e; text-align:center; }
#vjtop-ref.assets-mode .asset-delete-decision-card h3 { margin:0 0 14px; font-size:23px; }
#vjtop-ref.assets-mode .asset-delete-decision-card p { font-size:13px; line-height:1.8; }
#vjtop-ref.assets-mode .asset-delete-decision-actions { grid-template-columns:1fr 1fr; gap:12px; margin-top:25px; }
#vjtop-ref.assets-mode .asset-delete-decision-actions button { min-height:48px; border:0; border-radius:26px; background:#363639; color:#fff; font-size:15px; font-weight:600; }
#vjtop-ref.assets-mode .asset-delete-decision-actions button:hover { background:#424245; }
#vjtop-ref.assets-mode .asset-delete-decision-actions .asset-delete-library-only { background:#ff494f; color:#fff; }
#vjtop-ref.assets-mode .asset-delete-decision-actions .asset-delete-library-only:hover { background:#ff6267; }
#vjtop-ref.assets-mode .asset-delete-decision-actions:has(.asset-delete-library-only[hidden]) { grid-template-columns:1fr; }
@media(max-width:1180px) {
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row .app-search { flex:1 1 160px; }
}
@media(min-width:721px) and (max-width:1050px) {
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row { display:grid; grid-template-columns:auto auto minmax(0,1fr); }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-quota { justify-self:end; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button { margin-left:0; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row .app-search { width:100%; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"].asset-selecting .asset-batch-tools { grid-column:1 / 3; margin-left:0; }
}
@media(max-width:720px) {
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-head { margin-bottom:16px; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-head h3 { font-size:23px; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-tabs { gap:16px; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-management-row .app-search { order:6; grid-column:1 / -1; width:100%; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker[data-filter="kind"] { order:1; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker[data-filter="sort"] { order:2; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button { order:4; grid-column:1; justify-content:center; margin-left:0; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-batch-tools { order:5; grid-column:2; margin-left:0; justify-content:flex-end; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"].asset-selecting .asset-batch-tools { grid-column:1 / -1; margin-left:0; justify-content:flex-start; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker summary { min-width:0; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-library-quota { grid-column:1 / -1; align-self:flex-start; min-width:0; margin-left:0; gap:4px; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-quota-meter:not([hidden]) { width:38px; }
}
@media(max-width:430px) {
  #vjtop-ref.assets-mode .asset-delete-decision-card { padding:24px 18px; border-radius:25px; }
}
@media(pointer:coarse) {
  #vjtop-ref .asset-item-top-actions button,
  #vjtop-ref .asset-library-meta .asset-delete-button { width:44px; height:44px; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-filter-picker summary,
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-batch-tools button,
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .asset-upload-button { min-height:44px; }
  #vjtop-ref.assets-mode .asset-library-modal[data-asset-mode="page"] .app-search input { font-size:16px; }
}
