.btn-socio,.main-header{font-family:var(--fuente-logo)}.eslogan,.logo-orbit{filter:drop-shadow(0 0 20px rgb(255 255 255 / .2))}.acciones-tabla,.tabla-pagos td:last-child{vertical-align:middle}.badge-estado,.event-date,.event-date-large span,.main-eslogan,.section-header h1,.sub-text{text-transform:uppercase}@font-face{font-family:LobsterCustom;src:url(../fonts/Lobster-Regular.otf) format('opentype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ProximaNovaCustom;src:url(../fonts/Proxima-Nova-Bold.otf) format('opentype');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:RobotoCustom;src:url(../fonts/Roboto-Regular.ttf) format('truetype');font-weight:400;font-style:normal;font-display:swap}:root{--color-primario:#9c98b3;--color-secundario:#5ba2a6;--color-oscuro:#1e252b;--color-claro:#F5F5DC;--color-caja:rgba(255, 255, 255, 0.95);--color-comprimario:#a65f5b;--color-comsecundario:#afb398;--color-gradiente:linear-gradient(135deg, #9c98b3 0%, #5ba2a6 100%);--header-height:90px;--color-exito:#27ae60;--color-error:#e74c3c;--color-logout:#e74c3c;--color-logout-hover:#c0392b;--fuente-logo:'LobsterCustom',cursive;--fuente-titulos:'ProximaNovaCustom',sans-serif;--fuente-principal:'RobotoCustom',sans-serif}.header-username,.main-header,.main-nav a,.section-header h1{color:var(--color-claro)}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:var(--fuente-principal);line-height:1.6;background:linear-gradient(rgb(0 0 0 / .2),rgb(0 0 0 / .2)) center/cover no-repeat fixed,url(../img/hero-bg.jpg) center/cover no-repeat fixed;overflow-x:hidden;overflow-y:auto}.container{max-width:1200px;margin:0 auto;padding:0 20px}.main-content{min-height:calc(100vh - var(--header-height))}.main-header{font-size:1.15rem;background-color:#213f60;height:var(--header-height);display:flex;align-items:center;position:sticky;top:0;z-index:1000}.header-flex{display:flex;justify-content:space-between;align-items:center;width:100%}.header-left-group{display:flex;align-items:center}.logo img{height:120px;width:auto;display:block}.user-profile-header{margin-left:20px;padding-left:20px;border-left:1px solid;display:flex;align-items:center;gap:12px}.header-avatar{width:35px;height:35px;border-radius:50%;border:2px solid var(--color-secundario);object-fit:cover}.btn-primary,.btn-socio{border:none;cursor:pointer}.header-username{font-weight:500;font-size:.95rem}.btn-logout-red,.btn-primary{font-weight:700;text-decoration:none}.main-nav ul{list-style:none;display:flex;align-items:center;gap:10px}.main-nav a{text-decoration:none;font-weight:500;transition:color .3s}.main-nav a:hover{color:var(--color-secundario)}.main-nav a.active-link{color:var(--color-primario)!important;border-bottom:2px solid var(--color-primario);padding-bottom:5px}.floating-controls-cancionero,.fullscreen-floating-controls,.menu-toggle,.tab-content{display:none}.btn-socio{background:var(--color-gradiente);color:#fff;padding:6px 12px;border-radius:25px;font-size:1.15rem;transition:transform .2s,box-shadow .2s}.event-card,.info-card{font-family:var(--fuente-principal);box-shadow:0 10px 30px rgb(0 0 0 / .3)}.btn-socio:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgb(142 68 173 / .4)}.btn-logout-red{background-color:var(--color-logout);color:#fff!important;padding:6px 12px;border-radius:25px;transition:background-color .3s,transform .2s;display:inline-block;border:none}.btn-logout-red:hover{background-color:var(--color-logout-hover);transform:translateY(-2px)}.btn-primary{background:var(--color-comprimario);color:#fff;padding:12px;flex:1;border-radius:8px;text-align:center}.event-date-large,.main-eslogan{font-weight:800;text-align:center}.btn-secondary{background:var(--color-comsecundario);color:#333;border:none;padding:12px;flex:1;border-radius:8px;cursor:pointer}.btn-small{padding:5px 12px;font-size:.85rem;display:flex;align-items:center;gap:6px;height:fit-content;width:auto;min-width:unset}.btn-small i{font-size:.8rem}.btn-secundario-admin{background-color:var(--color-secundario)!important;border-color:var(--color-secundario)!important;color:#fff!important}.btn-secundario-admin:hover{filter:brightness(.9)}.btn-cancel{background:var(--color-comsecundario);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer}.hero-section{height:calc(100vh - var(--header-height));display:flex;align-items:center;justify-content:center}.main-eslogan{font-size:clamp(2.5rem, 6vw, 4.5rem);background:linear-gradient(to right,#a55eea,#2ecc71);-webkit-background-clip:text;-webkit-text-fill-color:#fff0}.header-line,.hero-divider{background:var(--color-secundario)}.sub-text{font-size:1.5rem;letter-spacing:5px;color:#fff;text-align:center}.hero-divider{height:4px;width:80px;margin:20px auto}.page-container{padding-top:20px;padding-bottom:20px;min-height:80vh}.section-header{text-align:center;margin-bottom:50px}.section-header h1{font-size:2.5rem}.header-line{height:3px;width:60px;margin:10px auto}.association-grid{display:flex;flex-direction:column;gap:25px;max-width:900px;margin:0 auto}.grid-horizontal{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:15px}.events-grid{display:flex;flex-direction:column;gap:20px;max-width:850px;margin:40px auto}.info-card{background:var(--color-caja);padding:30px;border-radius:15px;width:100%}.info-card h2,.info-card h3{font-family:var(--fuente-titulos);color:var(--color-comprimario);margin-bottom:15px}.seccion-asociacion{padding:20px 0;overflow-x:hidden}.seccion-asociacion .info-card{display:flex;flex-direction:column;gap:10px;border-left:6px solid var(--color-primario)!important;transition:transform .3s,box-shadow .3s,opacity .8s,transform .8s;background:#fff;border-radius:12px;opacity:0;transform:translateY(30px)}.seccion-asociacion .info-card.aparecer{opacity:1;transform:translateY(0)}.seccion-asociacion .card-header{display:flex;align-items:center;gap:15px}.seccion-asociacion .card-header i{font-size:1.5rem;color:var(--color-primario);min-width:30px;text-align:center}.event-highlight-card{background:var(--color-primario);border-left:5px solid var(--color-secundario);display:flex;align-items:center;justify-content:space-between;padding:30px;border-radius:12px;margin-top:-50px;position:relative;z-index:10;box-shadow:0 10px 30px rgb(0 0 0 / .3);color:#fff}.event-date-large{font-size:2.5rem;line-height:1;border-right:1px solid;padding-right:25px;margin-right:25px}.aviso-tag,.badge-afiliacion,.badge-privado,.btn-more,.event-date,.font-bold,.form-group label,.tabla-pagos th{font-weight:700}.event-date-large span{display:block;font-size:1rem;color:var(--color-secundario)}.event-card{display:flex;flex-direction:row;background:var(--color-caja);border-radius:15px;overflow:hidden;min-height:250px;align-items:center;transition:transform .3s}.event-card:hover{transform:translateY(-5px)}.event-image img{width:100%;height:100%;object-fit:cover}.event-info{padding:30px;flex-grow:1;display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden}.event-date{font-size:.85rem;color:var(--color-primario);margin-bottom:10px}.event-title{font-family:var(--fuente-titulos);font-size:1.4rem;margin-bottom:10px;color:var(--color-comprimario)}.event-card.event-past{background-color:#d2c5c5;border:1px solid #e0e0e0;box-shadow:none;position:relative}.event-card.event-past .event-image img{filter:grayscale(40%) brightness(85%)}.event-card.event-past .event-title{color:#555}.event-card.event-past .event-date,.event-card.event-past .event-description-trim{color:#777}.event-card.event-past .event-date span[style*="color: #27ae60"]{color:#95a5a6!important}.event-description-trim{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-size:.95rem;color:#444;line-height:1.5;margin-bottom:5px;width:100%;overflow-wrap:break-word;word-break:break-word}.btn-more{margin-top:auto;text-decoration:none;color:var(--color-primario);border-bottom:2px solid #fff0;align-self:flex-start;transition:.3s}.btn-more:hover{border-color:var(--color-primario)}.event-image{position:relative;cursor:zoom-in;width:160px;height:200px;flex-shrink:0;margin-left:15px;border-radius:10px;overflow:hidden}.badge-privado{position:absolute;bottom:15px;left:15px;background:var(--color-primario);color:#fff;padding:5px 10px;border-radius:5px;font-size:.75rem;z-index:40}.event-social{margin-top:15px;display:flex;gap:15px}.event-social a{color:var(--color-oscuro)!important;font-size:1.4rem}.combos-container{display:flex;flex-direction:column;gap:10px}.combo-card{background:var(--color-caja);border-radius:15px;padding:20px;border-left:6px solid var(--color-primario);box-shadow:0 4px 15px rgb(0 0 0 / .1);transition:.3s}.combo-card:hover{border-color:var(--color-primario);transform:translateY(-2px)}.combo-header{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.combo-img-mini{width:80px;height:80px;border-radius:10px;object-fit:cover;border:2px solid var(--color-primario)}.combo-info h3{margin:0;color:var(--color-comprimario);font-size:1.4rem}.combo-info span{font-size:.85rem;color:#777}.patrocinios-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;margin-top:40px}.patrocinio-card{text-align:center;position:relative;transition:transform .3s,box-shadow .3s;background:rgb(255 255 255 / .2);backdrop-filter:blur(5px);padding:30px;border-radius:15px}.patrocinio-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px rgb(0 0 0 / .2)}.patrocinio-logo{width:100%;aspect-ratio:4/5;object-fit:cover;margin-bottom:15px}.patrocinio-socials{margin-top:15px;display:flex;justify-content:center;gap:20px;font-size:1.5rem}.icon-insta{color:#e1306c}.icon-face{color:#4267b2}.icon-web{color:var(--color-primario)}.aviso-card{background:#fff;border-radius:12px;margin-bottom:20px;display:flex;flex-wrap:wrap;position:relative;box-shadow:0 4px 15px rgb(0 0 0 / .05);border-left:6px solid #ccc;transition:transform .3s;overflow:hidden}.punto-nuevo,.tab-content.active{display:block}.aviso-card.tipo-info{border-left-color:#3498db}.aviso-card.tipo-urgente{border-left-color:#e74c3c;background:#fffcfc}.aviso-card.tipo-exito{border-left-color:#2ecc71}.aviso-card.tipo-alerta{border-left-color:#f1c40f}.aviso-unread{transform:scale(1.01);box-shadow:0 6px 20px rgb(0 0 0 / .1)}.punto-nuevo{width:10px;height:10px;background:#f44;border-radius:50%;margin-bottom:10px;animation:2s infinite pulse-red}.aviso-indicator{padding:20px;background:#fcfcfc;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:80px;color:#999}.aviso-body{padding:20px;flex:1;min-width:300px}.aviso-body h3{margin:0 0 10px;font-size:1.2rem;color:var(--color-comprimario)}.aviso-body p{color:#555;line-height:1.5;margin:0}.aviso-meta{margin-bottom:8px;display:flex;gap:10px;align-items:center}.aviso-tag{font-size:10px;padding:2px 6px;border-radius:4px;background:#eee;color:#666}.aviso-fecha{font-size:11px;color:#999}.aviso-footer{width:100%;padding:10px 20px;background:#f9f9f9;text-align:right;border-top:1px solid #f0f0f0}.btn-leer-mas{background:#fff0;border:1px solid var(--color-principal);color:var(--color-principal);padding:5px 15px;border-radius:20px;cursor:pointer;font-size:.8rem;transition:.3s}.select-admin,.select-custom{appearance:none;background-repeat:no-repeat;background-position:right 1rem center;background-size:1em}.btn-leer-mas:hover{background:var(--color-principal);color:#fff}.form-group{margin-bottom:10px}.form-row{display:grid;gap:15px}.form-row.cols-2{grid-template-columns:1fr 1fr}.form-row.cols-3{grid-template-columns:1.5fr 1fr 1fr}.form-row.cols-4{grid-template-columns:1.5fr 1fr 1fr 1fr}.form-group label{display:block;margin-bottom:3px;color:var(--color-oscuro);font-size:.9rem}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font-family:inherit;font-size:1rem}.form-group textarea{resize:vertical}.form-buttons{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.form-control{width:100%;padding:10px;margin-top:5px;border:1px solid #ddd;border-radius:6px}.readonly-field{background-color:#f5f5f5!important;cursor:not-allowed;color:#888}.select-custom{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")}.select-admin{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:1rem;background-color:#fff;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238e44ad' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");cursor:pointer;transition:border-color .3s}.select-admin:focus{border-color:var(--color-primario);outline:0}.select-admin:invalid{color:#888}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.tabla-pagos{width:100%;border-collapse:collapse;font-size:.85rem;text-align:left;margin-top:20px;background:#fff;border-radius:8px;overflow:hidden;padding-bottom:5px;padding-top:5px}.tabla-pagos thead tr{background:rgb(142 68 173 / .05);color:var(--color-oscuro)}.tabla-pagos td,.tabla-pagos th{padding:12px 15px;text-align:left;border-bottom:1px solid #eee}.tabla-pagos th{border-bottom:2px solid var(--color-primario);background-color:#f8f9fa;color:var(--color-oscuro)}.text-right{text-align:right!important}.no-data-msg{text-align:center;padding:40px;color:#999}.tab-btn,.tabs-menu li a{text-decoration:none;color:rgb(255 255 255 / .7);border-radius:10px 10px 0 0;background:rgb(0 0 0 / .2);transition:.3s;white-space:nowrap}.tabs-menu{list-style:none;display:flex;border-bottom:2px solid;padding-bottom:0;overflow-x:auto;margin-bottom:0;gap:2px}.tabs-menu li a{padding:12px 25px;display:flex;align-items:center;gap:10px}.tab-btn.active,.tabs-menu li.active a{background:var(--color-comprimario);color:#fff;font-weight:700}.tabs-menu li:not(.active) a:hover{background:var(--color-primario);color:#fff}.tabs-menu li button:not(.active):hover{background:var(--color-secundario);color:#fff}.tab-content-wrapper{margin-top:30px;animation:.4s ease-out fadeInTab}.tabs-container{display:flex;justify-content:flex-start;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--color-primario);padding-top:20px}.socio-info-group,.tab-btn{display:flex;align-items:center}.tab-btn{padding:12px 25px;border:0;gap:5px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgb(0 0 0 / .9);display:flex;justify-content:center;align-items:center;z-index:2000;opacity:0;visibility:hidden;transition:.3s}.modal-content,.sat-filter-btn.active .sat-dot{background:#fff}.modal-overlay.active{opacity:1;visibility:visible}.modal-content{width:90%;max-width:500px;padding:20px;border-radius:20px}.carnet-img,.modal-admin-content.modal-small{max-width:400px}#modal-evento .modal-content{max-width:480px;padding:20px 25px}#modal-evento .form-group{margin-bottom:12px}#modal-evento .form-group label{font-size:.85rem;margin-bottom:4px}#modal-evento .form-group input,#modal-evento .form-group select,#modal-evento .form-group textarea{padding:10px;font-size:.95rem}.socio-header-flex{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.socio-info-group{gap:20px}.badge-afiliacion{padding:8px 18px;border-radius:25px;font-size:.85rem;color:#fff;display:inline-block}.badge-afiliacion.activo{background-color:var(--color-exito)}.badge-afiliacion.pendiente{background-color:#f39c12}.carnet-container{background:#f0f0f0;padding:10px;border-radius:12px;border:1px solid #ddd;text-align:center}.carnet-img{width:100%;height:auto;border-radius:8px;box-shadow:0 5px 15px rgb(0 0 0 / .15)}.componentes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.componente-item{display:flex;align-items:center;gap:12px;padding:10px;background:rgb(142 68 173 / .05);border-radius:40px;transition:transform .2s}.btn-cal,.sat-filter-btn,.satellite-item{transition:.3s;text-decoration:none}.componente-item:hover{transform:translateX(5px)}.componente-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid var(--color-primario)}.componente-nombre{font-size:.9rem;font-weight:500;color:var(--color-oscuro);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-constellation{min-height:100vh;width:100%;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px}.main-brand-center{position:relative;margin-bottom:50px;text-align:center;width:100%;max-width:500px;z-index:5}.logo-orbit{width:100%;scale:210%}.eslogan{width:100%;scale:1}.satellites-wrapper{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:20px;width:100%;max-width:1200px;z-index:10}.satellite-item{display:flex;align-items:center;background:rgb(255 255 255 / .08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid;padding:12px 25px;border-radius:50px;color:#fff;min-width:200px}.satellite-item:hover{background:rgb(255 255 255 / .2);transform:translateY(-5px);border-color:#fff}.sat-icon{font-size:1.4rem;margin-right:12px;color:var(--color-secundario)}.sat-text h4{margin:0;font-size:.95rem;color:#fff}.sat-text p{margin:0;font-size:.75rem;color:rgb(255 255 255 / .7)}.filter-satellite-menu{display:flex;justify-content:center;align-items:center;gap:15px;margin:20px 0 40px;flex-wrap:wrap;width:100%}.sat-filter-btn{display:inline-flex;align-items:center;background:#213f60;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid;padding:10px 18px;border-radius:50px;color:var(--color-primario);font-size:.85rem;font-weight:600;white-space:nowrap}.sat-filter-btn:hover{background:rgb(255 255 255 / .2);transform:translateY(-3px)}.sat-filter-btn.active{background:var(--color-comprimario);color:#fff;border-color:var(--color-comprimario);box-shadow:0 4px 12px rgb(0 0 0 / .15)}.sat-dot{width:7px;height:7px;background:var(--color-secundario);border-radius:50%;margin-right:10px}.reservas-container{width:100%}.calendar-header{display:flex;justify-content:space-between;align-items:center;background:var(--color-comprimario);color:#fff;padding:15px 20px;border-radius:8px 8px 0 0;margin-top:20px}.calendar-header h2{margin:0;font-size:1.4rem;text-transform:capitalize}.btn-cal{background:rgb(255 255 255 / .2);color:#fff;border:none;padding:8px 15px;border-radius:4px;font-weight:700}.btn-cal:hover{background:rgb(255 255 255 / .4)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#ccc;border:1px solid #ccc}.calendar-day-head{background:#f4f4f4;padding:10px;text-align:center;font-weight:700;color:var(--color-oscuro)}.calendar-day{background:#fff;min-height:120px;padding:8px;cursor:pointer;transition:.2s;display:flex;flex-direction:column}.calendar-day:hover{background:#f9f9f9}.calendar-day.not-allowed{background-color:#ffebee}.calendar-day.today-cell{background-color:#e8f5e9;border:2px solid var(--color-secundario)}.day-number{font-weight:700;margin-bottom:5px;display:block;color:#555}.reserves-preview{display:flex;flex-wrap:wrap;gap:4px}.combo-mini-img{width:25px;height:25px;border-radius:50%;object-fit:cover;border:1px solid var(--color-primario)}.detalle-reservas{margin-top:25px;display:none}.detalle-reservas h3{border-bottom:2px solid var(--color-primario);padding-bottom:10px;margin-bottom:15px;color:var(--color-oscuro)}#form-reserva .form-group{display:flex;align-items:center;margin-bottom:10px;gap:15px}#form-reserva .form-group label{flex:0 0 100px;margin-bottom:0;font-weight:700;color:var(--color-oscuro)}#form-reserva .form-group select{flex:1;padding:8px;border:1px solid #ccc;min-width:0;box-sizing:border-box;text-overflow:ellipsis;max-width:100%;border-radius:4px}.admin-wrapper{margin:20px auto;padding:0 20px}.admin-actions{position:absolute;top:15px;right:15px;z-index:50;display:flex;gap:10px}#lightbox,.modal-admin-global{top:0;z-index:9999;height:100%}.admin-actions button{width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 5px rgb(0 0 0 / .3)}.btn-edit{background:#f1c40f}.btn-delete{background:#e74c3c}.search-container{background:var(--color-caja);padding:20px;border-radius:8px;box-shadow:0 4px 15px rgb(0 0 0 / .1);border-left:5px solid var(--color-primario)}.search-container-admin{display:flex;gap:10px;background:var(--color-caja);padding:10px;border-radius:10px;box-shadow:0 4px 10px rgb(0 0 0 / .05)}.flex-1,.search-container-admin input{flex:1}.flex-row,.search-buttons{display:flex;gap:10px}.acciones-tabla{display:inline-flex;justify-content:flex-end;align-items:center}.btn-accion{width:35px;height:35px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.3s;color:#fff}.btn-accion.edit{background-color:#3498db}.btn-accion.pass{background-color:#f1c40f}.btn-accion.delete{background-color:var(--color-logout)}.btn-accion-admin:hover,.btn-accion:hover,.patrocinio-card:hover .galeria-portada-contenedor img{transform:scale(1.1)}.badge-activo,.badge-baja{color:#fff;padding:3px 8px;border-radius:4px;font-size:.8rem}.badge-activo{background:var(--color-exito)}.badge-baja,.btn-accion-admin.delete{background:var(--color-error)}.modal-login{display:none;position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;background:rgb(0 0 0 / .6);backdrop-filter:blur(3px)}.modal-login.active{display:flex;justify-content:center;align-items:center}.modal-content-admin{background:#fff;width:90%;max-width:800px;padding:0;border-radius:12px;overflow:hidden}.modal-header-admin{padding:20px 30px;border-bottom:1px solid #eee}.modal-header{text-align:center;margin-bottom:20px}.modal-header h1{font-family:var(--fuente-titulos);color:var(--color-comprimario)}.modal-body-admin{padding:30px}.modal-footer-admin{padding:20px 30px;background:#f8f9fa;display:flex;justify-content:flex-end;gap:10px}#lightbox,#menu-fullscreen-panel,.modal-admin-global{display:none;position:fixed}.badge-estado{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:700}.badge-estado.activo{background:#d4edda;color:#155724}.badge-estado.baja{background:#f8d7da;color:#721c24}.btn-accion-admin{width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;color:#fff;transition:transform .2s;margin-left:5px}.btn-accion-admin.edit{background:#3498db}.btn-accion-admin.pass{background:#f39c12}.modal-admin-global{left:0;width:100%;background:rgb(0 0 0 / .7);backdrop-filter:blur(4px);align-items:center;justify-content:center}.barra-controles-repertorio,.modal-admin-global.active{display:flex}.modal-admin-content{background:#fff;width:90%;max-width:850px;border-radius:15px;box-shadow:0 10px 30px rgb(0 0 0 / .3);overflow:hidden}.modal-admin-header{padding:20px 30px;background:#fdfdfd;border-bottom:1px solid #eee}.modal-admin-header h2,.modal-admin-header h3{color:var(--color-primario);margin:0}.modal-admin-footer{background:#f9f9f9;display:flex;justify-content:flex-end;gap:12px}.paginacion{display:flex;justify-content:center;gap:5px;margin-top:20px}.btn-pag{padding:8px 12px;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px}.btn-pag.active{background:var(--color-comprimario);color:#fff;border-color:var(--color-comprimario)}#vista-editar-socio .info-card{box-shadow:none;border:1px solid #eee}.img-preview-admin{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid #ddd;margin-right:15px}.file-upload-wrapper{display:flex;align-items:center;background:#f9f9f9;padding:10px;border-radius:8px}.card-header-flex{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;border-bottom:2px solid var(--color-primario)}.card-header-flex h3{margin-bottom:0;font-size:1.1rem}.form-footer-admin{margin-top:30px;padding-top:20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}.fila-componentes{background-color:#fcfcfc}.componentes-lista{padding:10px 10px 10px 50px;display:flex;flex-wrap:wrap;gap:10px}.componente-item-badge{display:flex;align-items:center;background:#eee;padding:5px 10px;border-radius:20px;font-size:.85rem;gap:8px;border:1px solid #ddd}.avatar-micro{width:25px;height:25px;border-radius:50%;object-fit:cover}.componente-item-badge i{color:#e74c3c;cursor:pointer;margin-left:5px}.header-actions{display:flex;gap:8px;flex-wrap:wrap}.header-actions .btn-primary,.header-actions .btn-secondary{padding:6px 12px;font-size:.85rem;display:flex;align-items:center;gap:6px;margin:0!important;height:34px;line-height:1}.header-actions i{font-size:.9rem}.tabla-scroll-admin{overflow-x:auto;margin-top:15px}.input-tabla-cuota{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.fila-seleccionada{background-color:rgb(142 68 173 / .1)!important}#tabla-generar-cuotas input[type=radio]{cursor:pointer;transform:scale(1.2)}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:start}.item-config,.modal-header-flex{display:flex;border-bottom:1px solid #eee}.card-config{background:var(--color-claro);padding:20px;border-radius:12px;box-shadow:0 4px 15px rgb(0 0 0 / .1)}.lista-config{list-style:none;margin-top:10px}.item-config{justify-content:space-between;align-items:center;padding:8px 0}.item-config span{font-weight:500;color:var(--color-oscuro)}.item-config:last-child{border:none}.modal-header-flex{justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px}#lightbox{left:0;width:100%;background-color:rgb(0 0 0 / .9);align-items:center;justify-content:center;flex-direction:column}#lightbox-content{position:relative;max-width:90%;max-height:80vh;display:flex;justify-content:center;align-items:center}#lightbox-content img{display:block;max-width:100%;max-height:85vh;width:auto;border-radius:8px;box-shadow:0 0 30px rgb(0 0 0 / .5);object-fit:contain}#lightbox-content iframe{aspect-ratio:16/9;width:100%}.nav-arrow{position:fixed;top:50%;transform:translateY(-50%);z-index:10000;background:rgb(255 255 255 / .1);border:none;color:#fff;font-size:2.5rem;padding:20px;cursor:pointer;transition:.3s}.nav-arrow:hover{background:rgb(255 255 255 / .3)}.nav-arrow.prev{left:10px}.nav-arrow.next{right:10px}.close-lightbox{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;cursor:pointer;z-index:3100}.galeria-portada-contenedor{display:flex;justify-content:center;align-items:center;width:100%!important;height:auto!important;padding:0!important;overflow:hidden}.permiso-item,.tag-chip{align-items:center;cursor:pointer}.galeria-portada-contenedor img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.viewer-img{max-width:90%;max-height:90%;object-fit:contain}.actividad-detalle-doc{background:#fff;padding:30px;border:1px solid #ddd;border-radius:5px;color:#333}.doc-header{display:flex;gap:30px;border-bottom:2px solid #eee;padding-bottom:20px;margin-bottom:20px}.doc-main-img img{width:250px;border-radius:8px;box-shadow:0 4px 10px rgb(0 0 0 / .1)}.doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.btn-link{display:inline-block;padding:10px 15px;background:var(--color-primario);color:#fff;text-decoration:none;border-radius:4px;margin-top:10px;font-size:.9rem}.grid-permisos{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;padding:10px}.permiso-item{display:flex;gap:10px;background:#f4f4f4;padding:10px;border-radius:5px}.tags-container{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.tag-chip{display:inline-flex;padding:8px 15px;border-radius:25px;background:#f8f9fa;transition:.3s;border:1px solid #dee2e6;font-size:.9rem;color:#444;user-select:none}.tag-chip.active{background:var(--color-principal)!important;color:green!important;border-color:var(--color-principal);box-shadow:0 2px 5px rgb(0 0 0 / .15)}.nivel-selector{display:inline-flex;margin-left:12px;padding-left:10px;border-left:1px solid;gap:4px}.nivel-selector span{display:flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:.65rem;font-weight:700;border-radius:50%;background:rgb(0 0 0 / .1);color:#fff;transition:.2s}.nivel-selector span:hover{background:rgb(0 0 0 / .3)}.nivel-selector span.selected{background:#fff!important;color:var(--color-principal)!important;box-shadow:0 2px 4px rgb(0 0 0 / .2);transform:scale(1.1)}.grid-conocimiento{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px;margin-top:15px}.conocimiento-card{border:1px solid #ddd;padding:15px;text-align:center;border-radius:8px;cursor:pointer;transition:.3s}.conocimiento-card i{font-size:1.5rem;display:block;margin-bottom:8px;color:#666}.conocimiento-card.active{border-color:var(--color-principal);background:#fff5ed}.conocimiento-card.active i{color:var(--color-principal)}.badge-notificacion{position:absolute;top:-1px;right:5px;background-color:#f44;color:#fff;border-radius:50%;padding:2px 6px;font-size:10px;font-weight:700;border:2px solid #fff;animation:2s infinite pulse-red}#modal-lectura-content{max-height:70vh;overflow-y:auto;white-space:pre-line}.btn-more-info{background:0 0;border:none;color:var(--color-primario);font-size:.85rem;font-weight:700;cursor:pointer;padding:0;text-decoration:underline}.ayuda-container{position:absolute;top:90px;right:10px;z-index:100}.ayuda-btn{width:200px;height:auto;cursor:pointer;transition:transform .3s;animation:2.5s ease-in-out infinite latidoAyuda}.ayuda-btn:hover{transform:scale(1.1)!important;animation-play-state:paused;filter:brightness(1.1)}.main-footer{font-family:var(--fuente-logo);background-color:#213f60;color:var(--color-claro);font-size:1.15rem;padding:10px 0;text-align:center;border-top:1px solid}.footer-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px}.footer-legal a{color:var(--color-claro)!important;text-decoration:none;font-size:.9rem;margin:0 10px}.footer-legal a:hover{text-decoration:underline;color:var(--color-secundario)}.contenedor-tabla-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:20px;border-radius:8px}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInTab{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-red{0%{transform:scale(1);box-shadow:0 0 0 0 rgb(255 68 68 / .7)}70%{transform:scale(1.1);box-shadow:0 0 0 10px #fff0}100%{transform:scale(1);box-shadow:0 0 0 0 #fff0}}@keyframes latidoAyuda{0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 #fff0)}50%{transform:scale(1.05);filter:drop-shadow(0 0 15px var(--color-secundario))}}@media (min-width:1024px){.seccion-asociacion .info-card:hover{transform:scale(1.01) translateX(5px);box-shadow:0 8px 20px rgb(0 0 0 / .1)}}#visor-partitura-scroll.modo-pantalla-completa{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;max-height:100vh!important;z-index:999999!important;background:#fff;padding:20px!important;margin:0!important;border-radius:0!important;box-sizing:border-box!important}#visor-partitura-scroll.partitura-modo-oscuro{background:#181818!important;border-color:#333!important;color:#e2e8f0!important}#visor-partitura-scroll.partitura-modo-oscuro h1{color:#fff!important}#visor-partitura-scroll.partitura-modo-oscuro .text-muted-dark{color:#a0aec0!important}#visor-partitura-scroll.partitura-modo-oscuro .badge-tono-dark{background:#2d3748!important;color:#e2e8f0!important;border:1px solid #4a5568!important}#visor-partitura-scroll.modo-pantalla-completa .fullscreen-floating-controls{display:flex!important;position:fixed;top:15px;right:15px;z-index:1000002;gap:8px;align-items:center}.btn-fullscreen-circle{width:44px;height:44px;border-radius:50%;border:none;box-shadow:0 4px 12px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:transform .2s,background-color .2s}.btn-fullscreen-circle:hover{transform:scale(1.08)}#menu-fullscreen-panel{top:68px;right:15px;z-index:1000003;width:320px;max-width:calc(100vw - 30px);background:rgba(30,35,43,.97);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.5);padding:16px;color:#fff;animation:.25s ease-out fadeInTab}#menu-fullscreen-panel.activo{display:block!important}mark.resaltado-socio{transition:opacity .2s}mark.resaltado-socio:hover{filter:brightness(.92)}#visor-partitura-scroll.modo-pantalla-completa .floating-controls-cancionero{display:flex!important}@media (max-width:768px){.header-username,.patrocinio-card h3{text-overflow:ellipsis;white-space:nowrap}.ayuda-btn{width:100px}.container{width:100%!important;max-width:100%!important;padding:0 10px}.form-buttons button,.main-header{width:100%}.header-flex{padding:0 5px}.header-left-group{gap:10px}.footer-legal{gap:0;margin-top:0}.footer-legal a{margin:0}.filter-satellite-menu{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:15px 20px;margin:10px -20px 30px;width:calc(100% + 40px);scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.filter-satellite-menu::-webkit-scrollbar{display:none}.sat-filter-btn{flex:0 0 auto}.events-grid{gap:15px;margin:20px auto;padding:0 10px}.event-card{flex-direction:row;min-height:auto;align-items:stretch}.event-image{flex:0 0 30%;max-width:120px;min-width:100px;height:auto;aspect-ratio:4/5;padding:2px;display:flex;align-self:center;align-items:center;justify-content:center;margin-left:15px;border-radius:10px;overflow:hidden}.event-image img{width:100%;height:100%;object-fit:cover;border-radius:5px}.event-info{padding:15px;overflow:hidden}.grid-horizontal .info-card,.nav-arrow{padding:10px}.event-title{font-size:1.1rem;margin-bottom:5px;line-height:1.2}.event-date{font-size:.75rem;margin-bottom:5px}.event-info p{font-size:.85rem!important;line-height:1.3;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.aviso-indicator i,.calendar-header h2,.event-social a{font-size:1.1rem}.nav-arrow{font-size:1.5rem}.calendar-grid{grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:70px;padding:4px}.calendar-day-head{font-size:.7rem;padding:5px}.combo-mini-img{width:18px;height:18px}.day-number{font-size:.8rem}.menu-toggle{display:block;background:0 0;border:none;color:var(--color-claro);font-size:1.8rem;cursor:pointer;z-index:1001}.btn-cal span,.main-nav{display:none}.main-nav{position:absolute;top:var(--header-height);left:0;width:100%;background-color:var(--color-oscuro);padding:20px 0;box-shadow:0 10px 20px rgb(0 0 0 / .5)}.main-nav.active{display:block;animation:.3s fadeIn}.main-nav ul{flex-direction:column;width:100%;gap:0}.main-nav ul li{width:100%;text-align:center}.main-nav ul li a{display:block;padding:5px 8px;border-bottom:1px solid}.header-username{display:inline-block;font-size:.85rem;max-width:100px;overflow:hidden;vertical-align:middle}.user-profile-header{display:flex;align-items:center;gap:5px}.grid-horizontal{grid-template-columns:1fr!important}.info-card{padding:8px;margin-bottom:0}.grid-horizontal h2{font-size:1.2rem;margin-bottom:10px}.carnet-container{padding:5px}.btn-primary{width:100%;padding:12px}.tabla-pagos{font-size:.65rem}.tabla-pagos td,.tabla-pagos th{padding:10px 8px}.tabla-pagos td.font-bold{word-break:break-word;max-width:120px}.patrocinios-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;padding:0 10px}.patrocinio-card{padding:15px 10px;border-radius:12px}.galeria-portada-contenedor,.patrocinio-logo{width:100%!important;height:auto!important;aspect-ratio:4/5!important;margin-bottom:10px!important}.patrocinio-card h3{font-size:.95rem;margin-bottom:8px;overflow:hidden}.patrocinio-socials{margin-top:10px;gap:15px;font-size:1.2rem}.patrocinio-card p{font-size:.8rem!important}.patrocinio-card .admin-actions{top:5px;right:5px;display:flex;gap:5px}.patrocinio-card .admin-actions button{padding:5px;font-size:.8rem}.form-row.cols-2,.form-row.cols-3,.form-row.cols-4{grid-template-columns:1fr;gap:10px}.form-buttons{flex-direction:column}.aviso-card{margin-bottom:12px;border-left-width:4px}.aviso-indicator{padding:15px 10px;min-width:50px;background:#fff0;border-right:1px solid #f0f0f0}.aviso-body{padding:12px 15px;min-width:200px}.aviso-body h3{font-size:1.05rem;margin-bottom:5px}.aviso-body p{font-size:.9rem;line-height:1.4}.aviso-meta{margin-bottom:4px;flex-wrap:wrap;gap:5px}.aviso-tag{font-size:9px;padding:1px 4px}.aviso-footer{padding:8px 15px}.btn-leer-mas{width:100%;text-align:center;padding:8px;font-size:.85rem}.punto-nuevo{width:8px;height:8px;margin-bottom:5px}.calendar-header{padding:10px 15px}.btn-cal{padding:10px;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:50%}.btn-cal i{font-size:1.2rem;margin:0}.search-container-admin{flex-direction:column;align-items:stretch}.search-buttons{display:grid;grid-template-columns:1fr 1fr}.tabla-pagos td strong{display:block;min-width:120px;white-space:normal}.badge-estado{font-size:.7rem;padding:2px 5px}.btn-accion-admin{scale:.7}.card-header-flex{align-items:flex-start;gap:15px;margin-bottom:0}.header-actions{width:100%;flex-wrap:wrap}.header-actions button{flex:1;justify-content:center;min-width:100px}#tabla-generar-cuotas td,#tabla-generar-cuotas th{white-space:nowrap;padding:8px 5px}#tabla-generar-cuotas td:first-child,#tabla-generar-cuotas th:first-child{width:40px;min-width:40px;text-align:center}#tabla-generar-cuotas td:nth-child(2),#tabla-generar-cuotas th:nth-child(2){min-width:180px}#tabla-generar-cuotas td:nth-child(3),#tabla-generar-cuotas th:nth-child(3){min-width:150px}#tabla-generar-cuotas td:nth-child(4),#tabla-generar-cuotas th:nth-child(4){min-width:90px}#tabla-generar-cuotas td:nth-child(5),#tabla-generar-cuotas th:nth-child(5){min-width:130px}#tabla-generar-cuotas input,#tabla-generar-cuotas select{width:100%;padding:8px;font-size:16px!important;border:1px solid #ccc;border-radius:4px}.componentes-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:4px}.componente-item{gap:5px;padding:2px;max-height:45px}.satellites-wrapper{flex-direction:column;align-items:center;gap:15px}.satellite-item{width:100%;max-width:300px}.logo-orbit{scale:1.7}.event-description-trim{-webkit-line-clamp:2}#modal-lectura-content{max-height:70vh;overflow-y:auto;line-height:1.6}.seccion-asociacion .info-card{padding:20px!important;margin-left:10px;margin-right:10px}.seccion-asociacion .card-header h2{font-size:1.25rem}.barra-controles-repertorio{display:none!important}.floating-controls-cancionero{display:flex!important;position:sticky;top:10px;right:10px;margin-left:auto;margin-bottom:-46px;z-index:1000;justify-content:flex-end}#visor-partitura-scroll.modo-pantalla-completa .floating-controls-cancionero{position:fixed!important;top:15px!important;right:15px!important;margin:0!important}#menu-fullscreen-panel{top:60px!important;right:10px!important;width:calc(100vw - 20px)!important;max-width:330px!important}}
/* --- ESTILOS RESPONSIVE Y ASPECT RATIO PARA EL EDITOR DE RIDER --- */

/* Vista Escritorio / PC (Pantallas de más de 768px) */
.rider-layout-cuerpo {
    position: relative;
    padding-left: 220px; /* Reserva 210px para el panel absoluto + 10px de separación */
    width: 100%;
    box-sizing: border-box;
}

#panel-equipos-rider {
    position: absolute;   /* Desvincula el panel del cálculo de altura del contenedor */
    top: 0;
    bottom: 0;            /* Fuerza al panel a tener exactamente la altura del escenario */
    left: 0;
    width: 210px;
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid #cbd5e0;
    border-radius: 6px;
    padding: 8px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#contenedor-grid-equipos {
    flex: 1;
    min-height: 0;        /* Permite reducir su tamaño dentro del flex interno */
    overflow-y: auto;     /* Activa la barra de scroll vertical si hay muchos equipos */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
    align-content: start;
    padding-right: 2px;
}

/* ESCENARIO: Relación de aspecto 3:2 estricta siempre */
#contenedor-stage-canvas {
    width: 100%;
    aspect-ratio: 3 / 2 !important; /* Dicta la altura del contenedor global */
    background: #ffffff;
    border: 2px dashed #a0aec0;
    border-radius: 6px;
    position: relative;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    overflow: hidden;
}

/* Vista Móvil: Panel arriba y escenario 3:2 abajo */
@media (max-width: 768px) {
    .rider-layout-cuerpo {
        position: static;
        padding-left: 0;
        display: flex;
        flex-direction: column;
    }

    #panel-equipos-rider {
        position: static;
        width: 100% !important;
        height: 130px !important;
        max-height: 130px !important;
        margin-bottom: 8px;
        flex-shrink: 0;
    }

    #contenedor-grid-equipos {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* --- BOTONES ESTILO APLICACIÓN DE ESCRITORIO (BARRA DE HERRAMIENTAS) --- */
.rider-toolbar-top {
    display: flex;
    gap: 5px;
    align-items: center;
    background: #f8f9fa;
    padding: 5px 8px;
    border-radius: 6px;
    border: 1px solid #dee2e6;
    margin-bottom: 8px;
    flex-wrap: wrap;
}

.rider-toolbar-top button {
    min-width: 32px !important;
    height: 30px !important;
    padding: 0 8px !important;
    font-size: 0.85rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    border-radius: 4px;
}

.rider-toolbar-top button.btn-icon-only {
    width: 32px !important;
    padding: 0 !important;
	max-width: 32px;
}

/* Separadores verticales discretos entre grupos de herramientas */
.rider-toolbar-sep {
    border-left: 1px solid #cbd5e0;
    height: 22px;
    margin: 0 2px;
}

/* --- TABLAS INFERIORES DEL RIDER --- */
.rider-tablas-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    flex-shrink: 0;
    margin-top: 15px;
    margin-bottom: 10px;
}

.rider-tabla-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.rider-tabla-header {
    background: #f1f5f9;
    padding: 5px 10px;
    font-size: 0.78rem;
    font-weight: bold;
    color: var(--color-primario, #213f60);
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.rider-tabla-scroll {
    max-height: 120px;
    overflow-y: auto;
}

.rider-tabla {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.75rem;
}

.rider-tabla th {
    background: #f8fafc;
    color: #475569;
    font-weight: 600;
    padding: 6px 10px;
    border-bottom: 1px solid #e2e8f0;
    position: sticky;
    top: 0;
    z-index: 1;
}

.rider-tabla td {
    padding: 5px 10px;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: middle;
}

.rider-tabla tr:hover {
    background-color: #f8fafc;
}

@media (max-width: 768px) {
    .rider-tablas-container {
        grid-template-columns: 1fr;
        max-height: 170px;
        overflow-y: auto;
    }
    .rider-tabla-scroll {
        max-height: 85px;
    }
}


/* --- ESTILOS PARA LIBRERÍA DE PERSONAS Y MODO MAESTRO RIDER --- */
#sidebar-librerias-rider {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 210px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

#sidebar-librerias-rider #panel-personas-rider,
#sidebar-librerias-rider #panel-equipos-rider {
    position: static;
    width: 100%;
    flex: 1;
    min-height: 0;
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid #cbd5e0;
    border-radius: 6px;
    padding: 8px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#contenedor-grid-personas {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
    align-content: start;
    padding-right: 2px;
}

@media (max-width: 768px) {
    #sidebar-librerias-rider {
        position: static;
        width: 100% !important;
        display: flex;
        flex-direction: column;
        gap: 6px;
        margin-bottom: 8px;
    }

    #sidebar-librerias-rider #panel-personas-rider,
    #sidebar-librerias-rider #panel-equipos-rider {
        position: static;
        width: 100% !important;
        height: 120px !important;
        max-height: 120px !important;
        margin-bottom: 0;
        flex: none;
        flex-shrink: 0;
    }

    #contenedor-grid-personas {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}
