/* LEGADO ANTIGUO — Catálogo dinámico (V2) */
:root{--bg:#070a0f;--panel:rgba(16,22,32,.72);--panel2:rgba(16,22,32,.92);--stroke:rgba(255,255,255,.08);--text:#e7eef7;--muted:#a9b7c7;--muted2:#7f8ea0;--shadow:0 12px 40px rgba(0,0,0,.45);--r2:26px}
*{box-sizing:border-box}html,body{height:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:radial-gradient(1200px 600px at 20% 0%,rgba(255,255,255,.06),transparent 60%),radial-gradient(800px 500px at 90% 10%,rgba(255,255,255,.04),transparent 60%),var(--bg);color:var(--text)}
.bg-orb{position:fixed;width:520px;height:520px;filter:blur(80px);opacity:.55;pointer-events:none;z-index:0}
.orb-1{left:-160px;top:-160px;background:rgba(255,255,255,.08)}.orb-2{right:-200px;bottom:-180px;background:rgba(255,255,255,.06)}
.header{position:sticky;top:0;z-index:10;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:linear-gradient(to bottom,rgba(7,10,15,.92),rgba(7,10,15,.55));border-bottom:1px solid var(--stroke);padding:18px 18px 14px}
.brand{display:flex;align-items:center;gap:14px;max-width:1180px;margin:0 auto 14px}
.brand__logo{width:54px;height:54px;border-radius:14px;background:#fff;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.brand__name{font-weight:900;letter-spacing:.14em;font-size:18px}
.brand__sub{margin-top:2px;color:var(--muted);font-size:13px}
.controls{max-width:1180px;margin:0 auto;display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.search{flex:1 1 420px;display:flex;gap:8px;align-items:center;background:var(--panel);border:1px solid var(--stroke);border-radius:999px;padding:10px 10px 10px 14px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.input{width:100%;background:transparent;border:none;outline:none;color:var(--text);font-size:14px}
.input::placeholder{color:rgba(231,238,247,.55)}
.icon-btn{border:none;cursor:pointer;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.06);color:var(--text);transition:transform .12s ease,background .12s ease}
.icon-btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.10)}
.select{flex:0 0 auto;background:var(--panel);border:1px solid var(--stroke);border-radius:999px;padding:10px 14px;display:flex;align-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25)}
select.input{appearance:none;-webkit-appearance:none;padding-right:16px;cursor:pointer}
.pill{flex:0 0 auto;display:flex;align-items:center;gap:10px;border:1px solid var(--stroke);background:rgba(255,255,255,.06);border-radius:999px;padding:10px 14px;color:var(--text);cursor:pointer;transition:transform .12s ease,background .12s ease;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.pill:hover{transform:translateY(-1px);background:rgba(255,255,255,.09)}.pill__dot{width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.65)}
.main{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:18px}
.meta{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:6px 0 14px}
.chip{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--stroke);color:var(--muted);font-size:13px}
.hint{color:var(--muted2);font-size:13px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;padding-bottom:26px}
.grid.list{grid-template-columns:1fr}
.card{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--r2);overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transform:translateY(0);transition:transform .16s ease,border-color .16s ease,background .16s ease}
.card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.16);background:rgba(16,22,32,.86)}
.card__media{width:100%;aspect-ratio:4/3;background:rgba(255,255,255,.04);position:relative}
.card__img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform .22s ease}
.card:hover .card__img{transform:scale(1.06)}
.card__badge{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.12);font-size:12px;letter-spacing:.08em;backdrop-filter:blur(10px)}
.card__body{padding:12px 14px 14px}
.card__num{font-weight:900;letter-spacing:.12em;font-size:13px;color:rgba(231,238,247,.92)}
.card__des{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.35}
.grid.list .card{display:grid;grid-template-columns:220px 1fr;gap:12px;align-items:stretch}
.grid.list .card__media{aspect-ratio:auto;height:140px;border-right:1px solid var(--stroke)}
.grid.list .card__body{padding:14px 16px}
.empty{margin:24px auto 34px;text-align:center;padding:28px 18px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.14);border-radius:var(--r2)}
.empty__title{font-size:18px;font-weight:900;letter-spacing:.06em}.empty__sub{margin-top:8px;color:var(--muted);font-size:13px}
.btn{margin-top:14px;border:none;border-radius:999px;padding:10px 14px;cursor:pointer;background:rgba(255,255,255,.10);color:var(--text);border:1px solid rgba(255,255,255,.14)}
.btn:hover{background:rgba(255,255,255,.14)}
.footer{border-top:1px solid var(--stroke);padding:18px;background:rgba(7,10,15,.65);backdrop-filter:blur(10px)}
.footer__inner{max-width:1180px;margin:0 auto;text-align:center;color:var(--muted);font-size:13px;line-height:1.55}
.footer__copy{margin-top:10px;color:rgba(231,238,247,.70);font-size:12px}
.hidden{display:none!important}
.modal{position:fixed;inset:0;z-index:50}
.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(8px)}
.modal__panel{position:relative;max-width:980px;margin:5vh auto;background:var(--panel2);border:1px solid rgba(255,255,255,.12);border-radius:26px;box-shadow:0 24px 80px rgba(0,0,0,.60);overflow:hidden;transform:translateY(10px);animation:pop .18s ease forwards}
@keyframes pop{to{transform:translateY(0)}}
.modal__close{position:absolute;top:12px;right:12px;width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:var(--text);cursor:pointer}
.modal__body{display:grid;grid-template-columns:1.3fr .9fr;min-height:520px}
.modal__img{width:100%;height:100%;object-fit:contain;background:rgba(0,0,0,.25)}
.modal__info{padding:18px 18px 20px}.modal__num{font-weight:900;letter-spacing:.16em;font-size:14px}.modal__des{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.45}
@media (max-width:860px){.modal__body{grid-template-columns:1fr}.modal__panel{margin:2.5vh 12px}.grid.list .card{grid-template-columns:1fr}.grid.list .card__media{height:220px;border-right:none;border-bottom:1px solid var(--stroke)}}
