/* Archivos: carpetas generales y por proyecto. Mismo estudio claro del mando. */
.ar-top{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;flex:1 1 auto;min-width:0}
.ar-top .search{flex:1 1 0%;min-width:0;width:auto}
.ar-top .btn{min-height:44px;flex:0 0 auto;width:auto}
.ar-tabs{margin-bottom:10px}
.ar-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:2px;max-width:1280px;margin:0 auto 12px;font-size:.9375rem;color:var(--tinta-2);min-height:44px}
.ar-crumbs button{min-height:44px;padding:0 10px;border:0;border-radius:10px;background:transparent;font-weight:600;color:var(--tinta-2);max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-crumbs button:hover{background:var(--tarjeta);color:var(--tinta)}
.ar-crumbs button[aria-current="page"]{color:var(--tinta);cursor:default}
.ar-crumbs .sep{opacity:.5}
.ar-drop{position:relative;max-width:1280px;margin:0 auto;border-radius:18px;transition:box-shadow .15s}
.ar-drop.over{box-shadow:inset 0 0 0 3px var(--tinta);background:rgba(255,255,255,.5)}
.ar-drop.over::after{content:'Suelta aquí para subir';position:absolute;inset:0;display:grid;place-items:center;font-weight:700;font-size:1.25rem;background:rgba(244,241,234,.85);border-radius:18px;pointer-events:none}
.ar-list{display:grid;gap:6px}
.ar-row{display:grid;grid-template-columns:44px 40px minmax(0,1fr) auto auto 44px;align-items:center;gap:8px;min-height:56px;padding:4px 8px 4px 4px;border-radius:14px;background:var(--tarjeta);box-shadow:0 1px 2px rgba(var(--sombra-rgb),.06)}
.ar-row.sel{outline:2px solid var(--tinta);outline-offset:-2px}
.ar-row .ar-chk{display:grid;place-items:center;width:44px;height:44px}
.ar-row .ar-chk input{width:20px;height:20px;min-height:0;margin:0;padding:0;accent-color:var(--tinta)}
.ar-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--papel);font-size:1.25rem}
.ar-ico img{width:40px;height:40px;object-fit:cover;border-radius:10px}
.ar-name{display:flex;flex-direction:column;min-width:0;text-align:left;border:0;background:transparent;padding:6px 4px;border-radius:10px;min-height:44px;justify-content:center}
.ar-name:hover{background:var(--papel)}
.ar-name b{font-weight:600;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-name small{color:var(--tinta-2);font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-meta{color:var(--tinta-2);font-size:.875rem;white-space:nowrap;text-align:right}
.ar-more{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--tinta)}
.ar-more:hover{background:var(--papel)}
.ar-empty{padding:40px 20px;text-align:center;color:var(--tinta-2);background:var(--tarjeta);border-radius:18px}
.ar-empty b{display:block;color:var(--tinta);font-size:1.125rem;margin-bottom:6px}
.ar-menu{position:fixed;z-index:60;min-width:220px;padding:6px;border-radius:14px;background:var(--tarjeta);box-shadow:0 12px 32px -8px rgba(var(--sombra-rgb),.35),0 1px 2px rgba(var(--sombra-rgb),.1);display:grid;gap:2px}
.ar-menu button{min-height:44px;padding:0 14px;border:0;border-radius:10px;background:transparent;text-align:left;font-weight:600}
.ar-menu button:hover{background:var(--papel)}
.ar-menu button.peligro{color:var(--err)}
.ar-menu hr{border:0;border-top:1px solid var(--linea);margin:4px 0}
.ar-sel{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:1280px;margin:12px auto 0;padding:10px 14px;border-radius:16px;background:var(--tinta);color:var(--sobre-tinta)}
.ar-sel b{margin-right:auto}
.ar-sel .btn{border-color:rgba(255,255,255,.35);color:var(--blanco)}
.ar-sel-acts{display:flex;align-items:center;gap:8px;flex:0 0 auto;flex-wrap:nowrap}
.ar-sel-sep{width:1px;align-self:stretch;background:rgba(255,255,255,.25)}
.ar-sel .ibtn{background:transparent;border-color:rgba(255,255,255,.35);color:var(--blanco);flex:0 0 auto}
.ar-sel .ibtn:hover{border-color:var(--tarjeta)}
.ar-sel .btn.danger{border-color:transparent}
.ar-prog{max-width:1280px;margin:0 auto 12px;padding:12px 16px;border-radius:14px;background:var(--tarjeta);box-shadow:0 1px 2px rgba(var(--sombra-rgb),.06)}
.ar-prog p{margin:0 0 8px;font-size:.9375rem;font-weight:600}
.ar-prog .bar{height:8px;border-radius:999px;background:var(--papel-2);overflow:hidden}
.ar-prog .bar i{display:block;height:100%;width:0;background:var(--ok);transition:width .2s}
.ar-prog.err p{color:var(--err)}
.ar-projgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:12px;max-width:1280px;margin:0 auto}
.ar-proj{display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 14px;border:0;border-radius:16px;background:var(--tarjeta);text-align:left;box-shadow:0 1px 2px rgba(var(--sombra-rgb),.06)}
.ar-proj:hover{box-shadow:0 8px 20px -10px rgba(var(--sombra-rgb),.3)}
.ar-proj .dot{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--c,var(--sin-color));color:var(--blanco);font-family:var(--display);font-weight:800}
.ar-proj .dot img{width:100%;height:100%;object-fit:contain;background:var(--logo-fondo);border-radius:10px}
.ar-proj b{display:block;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-proj small{color:var(--tinta-2);font-size:.875rem}
.ar-prev{display:grid;place-items:center;min-height:200px;max-height:65vh;border-radius:14px;background:var(--papel);overflow:auto}
.ar-prev img{max-width:100%;max-height:65vh;object-fit:contain;border-radius:10px}
.ar-prev iframe,.ar-prev video{width:100%;height:65vh;border:0;border-radius:10px;background:var(--tarjeta)}
.ar-prev video{height:auto;max-height:65vh}
.ar-prev audio{width:100%}
.ar-prev pre{width:100%;max-height:65vh;margin:0;padding:14px;overflow:auto;font-size:.875rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}
.ar-prev .ar-nop{padding:30px;text-align:center;color:var(--tinta-2)}
.ar-prev .ar-nop b{display:block;font-size:2.5rem;margin-bottom:8px}
.ar-info{color:var(--tinta-2);font-size:.875rem;margin:10px 0 0;overflow-wrap:anywhere}
.ar-links{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.ar-links li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--papel)}
.ar-links li.off{opacity:.55}
.ar-links code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;overflow-wrap:anywhere}
.ar-links small{display:block;color:var(--tinta-2);font-size:.8125rem}
.ar-links button{min-height:40px;padding:0 12px;border-radius:999px;border:1px solid var(--linea);background:var(--tarjeta);font-weight:600;color:var(--err)}
.ar-qr{display:flex;gap:16px;align-items:center;margin-top:14px;padding:14px;border-radius:16px;background:var(--papel)}
.ar-qr img{flex:none;width:180px;height:180px;border-radius:12px;background:var(--blanco);image-rendering:pixelated}
.ar-qr .url{min-width:0}
.ar-qr code{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem;overflow-wrap:anywhere;margin-bottom:10px}
.ar-copy{display:flex;gap:8px;flex-wrap:wrap}
.ar-pap-head{display:flex;align-items:center;gap:8px;max-width:1280px;margin:0 auto 10px;padding:0 4px}
.ar-pap-head .libcount{margin:0 0 0 auto}
.ar-pap{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-width:1280px;margin:0 auto}
.ar-pap li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--tarjeta);box-shadow:0 1px 2px rgba(var(--sombra-rgb),.06)}
.ar-pap li.sel{outline:2px solid var(--tinta);outline-offset:-2px}
.ar-pap-info{min-width:0}
.ar-pap-info b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-pap-info small{color:var(--tinta-2);font-size:.875rem}
.ar-pap-acts{display:flex;gap:8px;flex-wrap:nowrap}
.ar-pap-acts .btn{min-height:40px;padding:0 12px;font-size:.9375rem}
@media (max-width:700px){
  .ar-row{grid-template-columns:44px 40px minmax(0,1fr) 44px;grid-template-areas:"c i n m" ". . d m"}
  .ar-row .ar-chk{grid-area:c}.ar-row .ar-ico{grid-area:i}.ar-row .ar-name{grid-area:n}.ar-row .ar-more{grid-area:m}
  .ar-row .ar-meta{grid-area:d;text-align:left;font-size:.8125rem}
  .ar-row .ar-meta.fecha{display:none}
  .ar-qr{flex-direction:column;text-align:center}
  .ar-pap li{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"c n" ". a";row-gap:8px}
  .ar-pap li .ar-chk{grid-area:c}
  .ar-pap-info{grid-area:n}
  .ar-pap-acts{grid-area:a;justify-content:flex-end}
}
/* Assets del sitio: galería de solo lectura con lo que el repo del proyecto sirve (tools/assets.py). */
.ar-subtabs{max-width:1280px;margin:0 auto 12px}
.ar-subtabs small{opacity:.7;font-weight:600;margin-left:4px}
.as-bar{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.as-filtros button small{opacity:.7;margin-left:4px}
.as-bar .libcount{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0}
.as-grupo{margin:0 0 22px}
.as-grupo h3{display:flex;align-items:baseline;gap:10px;margin:0 0 10px;font-size:1rem}
.as-grupo h3 code{font-size:.9375rem;font-weight:700;background:var(--tarjeta);padding:3px 8px;border-radius:8px;overflow-wrap:anywhere}
.as-grupo h3 small{color:var(--tinta-2);font-weight:600;font-size:.875rem;white-space:nowrap}
.as-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr));gap:10px}
.as-card{display:flex;flex-direction:column;min-width:0;padding:0;border:0;border-radius:16px;background:var(--tarjeta);box-shadow:0 1px 2px rgba(var(--sombra-rgb),.06);text-align:left;overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s}
.as-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(var(--sombra-rgb),.35)}
.as-card:focus-visible{outline:3px solid var(--tinta);outline-offset:2px}
.as-th{display:grid;place-items:center;aspect-ratio:4/3;background:repeating-conic-gradient(var(--papel-2) 0 25%,var(--hueso) 0 50%) 0 0/18px 18px;overflow:hidden}
.as-th img{width:100%;height:100%;object-fit:cover}
.as-card.ic .as-th img{object-fit:contain;padding:14px}
.as-ph{font-size:2rem;font-weight:800;color:var(--tinta-2)}
.as-txt{display:flex;flex-direction:column;gap:4px;padding:10px 12px 12px;min-width:0}
.as-txt b{font-weight:600;font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.as-txt small{color:var(--tinta-2);font-size:.875rem}
.as-uso{align-self:flex-start;font-size:.875rem;font-weight:700;padding:2px 8px;border-radius:999px}
.as-uso.ok{background:var(--ok-suave);color:var(--ok-tinta)}
.as-uso.din{background:var(--chip-azul-suave);color:var(--chip-azul-tinta)}
.as-uso.nou{background:var(--warn-suave);color:var(--chip-naranja-tinta)}
.as-ruta{overflow-wrap:anywhere}
.as-usos{display:grid;gap:6px;margin:0 0 14px;padding:0;list-style:none}
.as-usos li{font-size:.9375rem;overflow-wrap:anywhere}
.as-usos small{color:var(--tinta-2)}
#dlgAsset .ar-prev img{max-height:60vh;object-fit:contain}
@media (max-width:700px){.as-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.as-grupo h3{flex-direction:column;gap:4px}}
.as-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.as-gen{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0;color:var(--tinta-2);font-size:.875rem}
.ar-empty .as-gen{justify-content:center;margin-top:14px}
.as-medir{min-height:44px}
