@keyframes slideDown{0%{opacity:0;transform:translateY(-200px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes logoFloat{0%{transform:translateX(-100px)}50%{transform:translateX(100px)}to{transform:translateX(-100px)}}.login-bg{background:linear-gradient(135deg,#ef7d00,#ef630f);background-attachment:fixed;background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;flex-direction:column;min-height:100vh;position:relative}.login-header{align-items:center;display:flex;justify-content:center;padding:20px 0;width:100%;z-index:10}.login-title{margin:20px 0 30px;text-align:center;z-index:10}.login-title h1{animation:slideDown 1s ease-out;color:#fff;font-size:2.5rem;font-weight:700;letter-spacing:1px;margin:0;text-shadow:2px 2px 4px #0000004d}.logo-container{display:flex;justify-content:center;max-width:600px;width:100%}.logo-container img{animation:logoFloat 8s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));height:auto;max-width:500px;transition:all .3s ease;width:100%}.login-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:20px}.login-form{animation:slideDown 2s cubic-bezier(.68,-.55,.27,1.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #ef7d004d;flex-direction:column;max-width:90vw;padding:2rem;width:320px;z-index:5}.login-form,.login-logo{align-items:center;display:flex;position:relative}.login-logo{background:#ccc;border-radius:50%;color:#1d1d1b;font-size:1.5rem;font-weight:700;height:150px;justify-content:center;margin-bottom:1.5rem;width:150px;z-index:1}.logo-image{border-radius:50%;height:120%;object-fit:cover;width:120%}.login-input{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;border:2px solid grey;border-radius:8px;color:#1d1d1b;font-size:1rem;margin-bottom:1rem;padding:.75rem;transition:all .3s ease;width:100%}.login-input:focus{background:#fff;border-color:#ef7d00;box-shadow:0 0 0 3px #ef7d001a;outline:none}.login-input::placeholder{color:grey}.login-captcha-row{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem;width:100%}.login-captcha{background:#ccc;border-radius:4px;color:#1d1d1b;flex:1 1;font-family:monospace;font-size:1.2rem;font-weight:700;letter-spacing:3px;padding:.5rem 1rem;text-align:center;-webkit-user-select:none;user-select:none}.login-captcha-timer{align-items:center;background:conic-gradient(#ef7d00 0,#ccc 0);border-radius:50%;display:flex;flex-shrink:0;height:36px;justify-content:center;position:relative;width:36px}.login-captcha-timer:after{background:#fff;border-radius:50%;content:"";height:28px;position:absolute;width:28px}.login-captcha-timer-text{color:#ef7d00;font-size:.8rem;font-weight:700;position:relative;z-index:2}.login-btn{background:#ef7d00;border:none;border-radius:8px;box-shadow:0 4px 15px #ef7d004d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem;transition:all .3s ease;width:100%}.login-btn:hover{background:#ef630f;box-shadow:0 6px 20px #ef7d0066;transform:translateY(-2px)}.login-msg{background:#ef630f1a;border:1px solid #ef630f33;border-radius:4px;color:#ef630f;margin-top:1rem;padding:.5rem;text-align:center}@media (max-width:480px){.login-header{padding:15px 0}.logo-container img{max-width:300px}.login-container{padding:15px}.login-form{max-width:320px;padding:1.5rem;width:90vw}.login-logo{font-size:1.2rem;height:120px;width:120px}}@media (min-width:481px) and (max-width:768px){.login-header{padding:20px 0}.logo-container img{max-width:400px}.login-form{width:400px}}@media (min-width:769px){.login-header{padding:25px 0}.logo-container img{max-width:500px}.login-form{width:400px}}@media (min-width:1200px){.logo-container img{max-width:600px}.login-form{width:450px}}@media (max-height:500px) and (orientation:landscape){.login-header{padding:10px 0}.logo-container img{max-width:250px}.login-container{padding:10px}.login-form{padding:1rem}.login-logo{height:100px;margin-bottom:1rem;width:100px}}.reserva-container{background:linear-gradient(135deg,#ef7d00,#ef630f);min-height:100vh;padding:20px}.reserva-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #ef7d00;border-radius:16px;box-shadow:0 8px 32px #ef7d001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem 2rem}.header-buttons{align-items:center;display:flex;gap:1rem}.admin-button{background-color:#1d1d1b;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .3s}.admin-button:hover{background:#ef7d00;box-shadow:0 4px 15px #ef7d0066;transform:translateY(-2px)}.reserva-header h1{color:#1d1d1b;font-size:1.8rem;font-weight:700;margin:0}.logout-btn{background:#1d1d1b;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.logout-btn:hover{background:#ef7d00;box-shadow:0 4px 15px #ef7d0066;transform:translateY(-2px)}.reserva-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr;margin:0 auto;max-width:1400px}.reserva-form-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #ef7d00;border-radius:16px;box-shadow:0 8px 32px #ef7d001a;padding:2rem}.reserva-form-container h2{color:#1d1d1b;font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-align:center}.fecha-solicitud{align-items:center;background:#ef7d001a;border-left:4px solid #ef7d00;border-radius:8px;display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem;padding:1rem}.fecha-solicitud label{color:#ef7d00;font-weight:600}.fecha-actual{color:#1d1d1b;font-weight:500}.hora-info{color:grey;display:block;font-size:.8rem;font-style:italic;margin-top:.25rem}.fecha-info{background:#ef7d001a;border-left:3px solid #ef7d00;border-radius:6px;color:#ef7d00;display:block;font-size:.85rem;font-weight:500;margin-top:.5rem;padding:.5rem}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.date-input-no-sundays{position:relative}.date-input-no-sundays::-webkit-calendar-picker-indicator{cursor:pointer}.date-input-no-sundays:invalid{border-color:#ff6b6b}.date-input-no-sundays:focus{border-color:#ef7d00;box-shadow:0 0 0 3px #ef7d001a;outline:none}.form-section{background:#cccccc4d;border:1px solid #ccc;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.form-section h3{color:#ef7d00;font-size:1.2rem;font-weight:700;margin-bottom:1rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{color:#1d1d1b;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:#ffffffe6;border:2px solid grey;border-radius:8px;color:#1d1d1b;font-size:1rem;padding:.75rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#ef7d00;box-shadow:0 0 0 3px #ef7d001a;outline:none}.form-group input[readonly]{background-color:#f5f5f5;color:#666;cursor:not-allowed}.form-group textarea{min-height:80px;resize:vertical}.equipos-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.equipo-checkbox{align-items:center;background:#ffffffb3;border:1px solid #ccc;border-radius:8px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem;transition:all .3s ease}.equipo-checkbox:hover{background:#ffffffe6;border-color:#ef7d00}.equipo-checkbox input[type=checkbox]{accent-color:#ef7d00;height:18px;width:18px}.opcionales-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.opcionales-checkbox{align-items:center;background:#ffffffb3;border:1px solid #ccc;border-radius:8px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem;transition:all .3s ease}.opcionales-checkbox:hover{background:#ffffffe6;border-color:#ef7d00}.opcionales-checkbox input[type=checkbox]{accent-color:#ef7d00;height:18px;width:18px}.submit-btn{background:#1d1d1b;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:15px 30px;transition:all .3s ease}.submit-btn:hover:not(:disabled){background:#ef7d00;box-shadow:0 4px 15px #ef7d0066;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.submit-section{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-top:20px;padding:20px 0}.condiciones-checkbox-container{margin-bottom:1rem;text-align:center;width:100%}.condiciones-checkbox{align-items:center;cursor:pointer;display:flex;gap:.5rem;justify-content:center}.condiciones-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.condiciones-checkbox span{color:#1d1d1b;font-size:.9rem}.condiciones-checkbox a{color:#ef7d00;font-weight:700;text-decoration:underline}.popup-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.popup-content{animation:slideIn .3s ease;background:#fff;border-radius:15px;box-shadow:0 10px 30px #0000004d;max-width:400px;padding:30px;text-align:center;width:90%}.popup-icon{font-size:48px;margin-bottom:15px}.popup-message{color:#333;font-size:16px;line-height:1.5;margin-bottom:20px;white-space:pre-line}.popup-close{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .3s ease}.popup-close:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c!important;box-shadow:0 0 5px #e74c3c4d}.error-message{color:#e74c3c;display:block;font-size:12px;font-weight:500;margin-top:5px}.mensaje{border-radius:8px;font-weight:500;margin-top:1rem;padding:1rem;text-align:center}.mensaje.exito{background:#ffab1b1a;border:1px solid #ffab1b33;color:#ef630f}.mensaje.error{background:#ef630f1a;border:1px solid #ef630f33;color:#ef630f}.reserva-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #ef7d00;border-radius:16px;box-shadow:0 8px 32px #ef7d001a;height:-webkit-fit-content;height:fit-content;padding:2rem;position:-webkit-sticky;position:sticky;top:20px}.reserva-info h3{color:#1d1d1b;font-size:1.3rem;font-weight:700;margin-bottom:1.5rem}.auditorio-details{background:#ef7d001a;border-left:4px solid #ef7d00;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.auditorio-details h4{color:#ef7d00;font-size:1.2rem;font-weight:700;margin-bottom:1rem}.auditorio-details p{color:#1d1d1b;margin:.5rem 0}.reserva-tips{background:#ffab1b1a;border-left:4px solid #ffab1b;border-radius:12px;padding:1.5rem}.reserva-tips h4{color:#ef630f;font-size:1.1rem;font-weight:700;margin-bottom:1rem}.reserva-tips ul{color:#1d1d1b;margin:0;padding-left:1.5rem}.reserva-tips li{margin-bottom:.5rem}@media (max-width:1024px){.reserva-content{grid-template-columns:1fr}.reserva-info{position:static}}@media (max-width:768px){.reserva-header{flex-direction:column;gap:1rem;text-align:center}.reserva-header h1{font-size:1.5rem}.equipos-grid,.form-row{grid-template-columns:1fr}.reserva-container{padding:10px}.reserva-form-container,.reserva-info{padding:1.5rem}}@media (max-width:480px){.form-section,.reserva-form-container,.reserva-header,.reserva-info{padding:1rem}}.admin-reporte-container{background-color:#f5f5f5;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}.admin-header{align-items:center;background-color:#036;box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem 2rem}.admin-header h1{font-size:1.5rem;margin:0}.admin-nav{display:flex;gap:1rem}.logout-button,.nav-button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .3s}.nav-button{background-color:#059;color:#fff}.nav-button:hover{background-color:#06c}.logout-button{background-color:#c00;color:#fff}.logout-button:hover{background-color:red}.admin-content{display:flex;flex:1 1;flex-direction:column;gap:2rem;padding:2rem}.filtros-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem}.filtros-container h2{color:#036;font-size:1.2rem;margin-bottom:1rem;margin-top:0}.filtro-grupo{align-items:center;display:flex;margin-bottom:1rem;position:relative}.filtro-grupo label{font-weight:500;width:80px}.filtro-grupo input,.filtro-grupo select{border:1px solid #ccc;border-radius:4px;flex:1 1;max-width:200px;padding:.5rem}.limpiar-filtro{background:none;border:none;color:#666;cursor:pointer;font-size:1.2rem;margin-left:.5rem}.refresh-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;margin-top:1rem;padding:.5rem 1rem;transition:background-color .3s}.refresh-button:hover{background-color:#45a049}.refresh-button:disabled{background-color:#ccc;cursor:not-allowed}.tabla-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow-x:auto;padding:1.5rem}.tabla-container h2{color:#036;font-size:1.2rem;margin-bottom:1rem;margin-top:0}.error-mensaje{background-color:#fee;border-radius:4px;color:#c00;margin-bottom:1rem;padding:.5rem}.cargando,.sin-resultados{color:#666;padding:2rem;text-align:center}.tabla-reservas{border-collapse:collapse;margin-top:1rem;width:100%}.tabla-reservas td,.tabla-reservas th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.tabla-reservas th{background-color:#f8f8f8;color:#333;font-weight:600}.tabla-reservas tr:hover{background-color:#f5f5f5}.ver-detalles-btn{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.25rem .5rem;transition:background-color .3s}.ver-detalles-btn:hover{background-color:#0d8aee}@media (max-width:1024px){.admin-header{align-items:flex-start;flex-direction:column;gap:1rem}.admin-nav{justify-content:flex-end;width:100%}}@media (max-width:768px){.tabla-reservas td,.tabla-reservas th{font-size:.9rem;padding:.5rem}.admin-header h1{font-size:1.2rem}.admin-nav{flex-wrap:wrap}}
/*# sourceMappingURL=main.f4858613.css.map*/