:root{--color-principal:#1a1a1a;--color-acento: #f39c12;--color-texto:#fff;--fuente-menu:"Bebas Neue", sans-serif;--fuente-titulos:"Montserrat", sans-serif;--fuente-general:"Roboto", sans-serif}body{font-family:var(--fuente-general);background:var(--color-principal);color:var(--color-texto);flex-direction:column;min-height:100vh;margin:0;display:flex}.logo-img{object-fit:contain;width:72px;height:72px;transition:transform .3s}.logo-container-reds{vertical-align:middle;justify-content:center;align-items:center;height:auto;padding:0 8px;text-decoration:none;display:inline-flex}.logo-reds{object-fit:contain;width:auto;height:24px;transition:transform .2s}.icon-square{width:48px}.logo-container-reds:hover .logo-reds{transform:scale(1.15)}.logo-container{align-items:center;padding:0;display:flex;position:absolute;top:50%;left:15px;transform:translateY(-50%)}nav{border-bottom:2px solid var(--color-acento);z-index:100;box-sizing:border-box;background-color:#000;background-image:url(https://pub-0a8baa59f2fa41b6bfc734a67448221d.r2.dev/estrellitasF.png);background-position:50%;background-size:contain;justify-content:center;align-items:center;height:70px;padding:.5rem 2rem;display:flex;position:relative;top:0}.nav-links{align-items:center;gap:20px;display:flex}.logo-img:hover{transform:scale(.42)}.band-name{color:#fff;margin-left:10px;font-size:1.2rem;font-weight:700}.nav-links{gap:20px;display:flex}.nav-links a{color:#fff;font-weight:600;text-decoration:none;transition:all .3s;font-family:Geologica,sans-serif!important}.nav-links a:hover{color:var(--color-acento)}.nav-socials{align-items:center;gap:5px;display:flex;position:absolute;top:50%;right:20px;transform:translateY(-50%)}main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:2rem}footer{text-align:center;border-top:2px solid var(--color-acento);color:#fff;background-position:50%;background-size:contain;margin-top:2rem;padding:1rem 2rem;background-color:#000!important;background-image:url(https://pub-0a8baa59f2fa41b6bfc734a67448221d.r2.dev/estrellitasF.png)!important}footer a{color:var(--color-acento);opacity:.6;font-size:.8rem;text-decoration:none;transition:opacity .3s}footer p{margin:2px 0;font-size:.8rem}footer a:hover{opacity:1}.conciertos-header{text-align:center;margin-bottom:3rem}.conciertos-list{flex-direction:column;gap:1rem;display:flex}.concierto-card{border-left:4px solid var(--color-acento);background:#222;border-radius:4px;grid-template-columns:100px 1fr 150px;align-items:center;padding:1.5rem;transition:transform .2s;display:grid}.concierto-card:hover{background:#2a2a2a;transform:scale(1.01)}.fecha-box .fecha{color:var(--color-acento);text-transform:uppercase;font-size:1.2rem;font-weight:700}.info-box h3{margin:0;font-size:1.4rem}.info-box p{color:#aaa;margin:5px 0 0}.ticket-btn{border:1px solid var(--color-acento);color:var(--color-acento);text-align:center;border-radius:20px;padding:8px 15px;font-size:.9rem;display:inline-block}.no-dates{text-align:center;color:#666;font-style:italic}.admin-form{background:#222;border-radius:10px;flex-direction:column;gap:15px;max-width:500px;margin:20px 0;padding:25px;display:flex}.admin-form label{color:var(--color-acento);font-weight:700}.admin-form input{color:#fff;background:#111;border:1px solid #444;border-radius:5px;padding:12px}.buttons{gap:10px;margin-top:10px;display:flex}.btn-save{background:var(--color-acento);cursor:pointer;border:none;border-radius:5px;flex:1;padding:12px;font-weight:700;transition:all .3s}.btn-save:hover{background:#d48a10}.btn-cancel{color:#fff;text-align:center;background:#444;border-radius:5px;flex:1;padding:12px;text-decoration:none}.admin-table{border-collapse:collapse;background:#222;width:100%;margin-top:20px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #333;padding:12px}.admin-table th{color:var(--color-acento)}.admin-card{background:#222;border:1px solid #333;border-radius:10px;padding:20px}.admin-body{color:#fff;background:#111}.admin-nav{background:#222;border-bottom:2px solid #e74c3c;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.admin-nav-links{gap:20px;display:flex}.admin-nav-links a{color:#ccc;font-size:.9rem;text-decoration:none}.admin-nav-links a:hover{color:#fff}.btn-logout{color:#fff;cursor:pointer;background:#e74c3c;border:none;border-radius:4px;padding:5px 12px;font-weight:700}.admin-main{max-width:1000px;margin:0 auto;padding:2rem}.merchan-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-top:20px;display:grid}.producto-card{text-align:center;background:#111;border:1px solid #333;border-radius:12px;flex-direction:column;align-items:center;padding:15px;transition:transform .3s;display:flex}.producto-card:hover{border-color:var(--color-acento);transform:translateY(-5px)}.img-container{background:#222;border-radius:8px;justify-content:center;align-items:center;width:100%;height:180px;margin-bottom:15px;display:flex;overflow:hidden}.img-container img{object-fit:contain;max-width:90%;max-height:90%}.producto-info h3{color:#fff;margin:10px 0;font-size:1.1rem}.precio{color:#fff;margin-bottom:5px;font-size:1.3rem;font-weight:700;display:block}.tallas{color:#888;margin-bottom:10px;font-size:.85rem}.aviso-stock{color:var(--color-acento);text-transform:uppercase;font-size:.8rem;font-weight:700}.admin-header-inline{border-bottom:1px solid #333;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;display:flex}.btn-add-inline{background-color:var(--color-acento);color:#000;border-radius:4px;padding:8px 16px;font-size:.9rem;font-weight:700;text-decoration:none;transition:all .3s}.btn-add-inline:hover{background-color:#e67e22;transform:scale(1.05)}.admin-table{border-collapse:collapse;background:#111;border-radius:8px;width:100%;overflow:hidden}.admin-table th{color:var(--color-acento);text-align:left;background:#222;padding:12px;font-size:.9rem}.admin-table td{vertical-align:middle;border-bottom:1px solid #222;padding:12px}.producto-card-link{color:inherit;width:100%;max-width:250px;text-decoration:none;display:block}.producto-card-link:hover .producto-card{border-color:var(--color-acento);transform:translateY(-5px);box-shadow:0 5px 15px #0000004d}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
