/* v0.269: galería pública de temas, limitada a la sección Apps. */
.app-theme-gallery{max-width:980px;margin:24px auto;padding:18px;border:1px solid rgba(51,194,255,.25);border-radius:18px;background:linear-gradient(145deg,rgba(51,194,255,.055),rgba(154,107,255,.055));box-sizing:border-box}
.app-theme-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.app-theme-eyebrow{display:block;margin-bottom:6px;color:var(--cyan,#33c2ff);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.app-theme-heading h3{margin:0;color:var(--txt,#edf5ff);font:900 clamp(16px,2vw,20px) Orbitron,sans-serif}
.app-theme-heading p{max-width:610px;margin:7px 0 0;color:var(--muted,#adbcd3);font-size:12px;line-height:1.55}
.app-theme-nav{display:flex;flex-shrink:0;gap:7px}
.app-theme-nav[hidden],.app-theme-dialog[hidden]{display:none!important}
.app-theme-nav button,.app-theme-dialog button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid rgba(51,194,255,.45);border-radius:10px;background:#11233e;color:#e4f7ff;font:700 24px/1 sans-serif;cursor:pointer}
.app-theme-nav button:disabled{opacity:.35;cursor:default}
.app-theme-nav button:hover:not(:disabled),.app-theme-dialog button:hover{background:#1a395b}
.app-theme-track{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:3px 1px 12px;scrollbar-width:thin;scrollbar-color:#397fa3 transparent}
.app-theme-card{flex:0 0 calc((100% - 36px)/4);min-width:0;margin:0;scroll-snap-align:start;border:1px solid rgba(51,194,255,.2);border-radius:13px;background:#081323;overflow:hidden;box-sizing:border-box}
.app-theme-link{position:relative;display:block;text-decoration:none;color:#e4f7ff;background:#050c17}
.app-theme-link img{display:block;width:100%;height:350px;object-fit:contain;object-position:center;background:#050c17}
.app-theme-zoom{position:absolute;right:8px;bottom:8px;padding:5px 8px;border:1px solid rgba(114,218,255,.45);border-radius:7px;background:rgba(5,12,23,.93);color:#d8f5ff;font-size:10px;font-weight:800}
.app-theme-card figcaption{padding:12px 10px;line-height:1.45}
.app-theme-card figcaption strong{display:block;color:#edf5ff;font-size:12px}
.app-theme-card figcaption span{display:block;margin-top:3px;color:#b0c1d7;font-size:10.5px}
.app-theme-help{margin:10px 0 0;color:var(--muted,#adbcd3);font-size:11px;line-height:1.6}
.app-theme-help b{color:var(--txt,#edf5ff)}
.app-theme-link:focus-visible,.app-theme-track:focus-visible,.app-theme-nav button:focus-visible,.app-theme-dialog button:focus-visible{outline:2px solid #6fddff;outline-offset:-3px}
.app-theme-dialog{width:min(1050px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:0;margin:auto;box-sizing:border-box;overflow:auto;border:1px solid #397fa3;border-radius:16px;background:#071120;color:#edf5ff;box-shadow:0 20px 70px rgba(0,0,0,.5)}
.app-theme-dialog::backdrop{background:rgba(0,4,12,.88)}
.app-theme-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;border-bottom:1px solid #23384f}
.app-theme-dialog-head h3{margin:0;font:800 16px/1.4 Inter,sans-serif}
.app-theme-dialog-head p{margin:4px 0 0;font-size:11px;color:#b0c1d7}
.app-theme-dialog-head form{margin:0;flex-shrink:0}
.app-theme-dialog-image{display:block;max-width:100%;width:auto;height:auto;max-height:calc(100vh - 185px);max-height:calc(100dvh - 185px);object-fit:contain;margin:0 auto;background:#050c17}
.app-theme-dialog-foot{display:flex;align-items:center;justify-content:center;gap:20px;padding:10px}
.app-theme-dialog-foot span{min-width:64px;text-align:center;font-size:12px;color:#bed2e8}
@media(max-width:900px){.app-theme-card{flex-basis:calc((100% - 24px)/3)}}
@media(max-width:760px){.app-theme-card{flex-basis:calc((100% - 12px)/2)}.app-theme-gallery{padding:14px}.app-theme-link img{height:340px}}
@media(max-width:480px){.app-theme-heading{align-items:flex-start;flex-wrap:wrap;gap:10px}.app-theme-nav{margin-left:auto}.app-theme-card{flex-basis:82%}.app-theme-link img{height:370px}.app-theme-dialog-head h3{font-size:14px}}
