:root{--bg-main:#ebf1f7;--bg-card:#fff;--bg-header:#06103b;--bg-header-text:#fff;--bg-input:#f1f5f9;--bg-input-border:#cbd5e1;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-inverse:#fff;--color-brand-blue:#0a194f;--color-accent-blue:#3b82f6;--color-accent-blue-hover:#2563eb;--color-orange:#f97316;--color-orange-light:#ff8a00;--color-green:#16a34a;--color-red:#ef4444;--border-card:#e2e8f0;--shadow-card:0 4px 20px #0000000f;--shadow-dropdown:0 10px 25px -5px #00000026;--radius-lg:24px;--radius-md:16px;--radius-sm:10px;--radius-pill:9999px;--font-family:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=dark]{--bg-main:#090e1a;--bg-card:#131c31;--bg-header:#050b24;--bg-header-text:#f8fafc;--bg-input:#1e293b;--bg-input-border:#334155;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--border-card:#1e293b;--shadow-card:0 4px 20px #0000004d;--shadow-dropdown:0 10px 25px -5px #00000080}*{box-sizing:border-box;font-family:var(--font-family);margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);flex-direction:column;min-height:100vh;transition:background-color .3s,color .3s;display:flex}.hidden{display:none!important}.navbar-app{background-color:var(--bg-header);color:var(--bg-header-text);z-index:100;justify-content:space-between;align-items:center;padding:.85rem 1.5rem;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #00000026}.brand-logo{color:#fff;letter-spacing:-.5px;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;text-decoration:none;display:flex}.brand-logo span.dot{color:var(--color-orange-light)}.header-right{align-items:center;gap:1rem;display:flex;position:relative}.welcome-user-text{color:#ffffffe6;text-align:right;font-size:.95rem}.welcome-user-text strong{color:#fff;font-weight:600}.profile-avatar-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:0;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.profile-avatar-btn:hover{border-color:#fff;transform:scale(1.05)}.profile-avatar-btn svg{stroke:#fff;width:22px;height:22px}.profile-avatar-btn .profile-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.dropdown-menu{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);opacity:0;visibility:hidden;z-index:1000;flex-direction:column;gap:.25rem;width:220px;padding:.5rem;transition:opacity .2s,transform .2s,visibility .2s;display:flex;position:absolute;top:120%;right:0;transform:translateY(-10px)}.dropdown-menu.active{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{border-radius:var(--radius-sm);color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.7rem .85rem;font-size:.9rem;font-weight:500;transition:background-color .15s;display:flex}.dropdown-item:hover{background-color:var(--bg-input)}.dropdown-item.danger{color:var(--color-red)}.dropdown-divider{background-color:var(--border-card);height:1px;margin:.25rem 0}.icon-btn-nav{color:#fff;cursor:pointer;background:0 0;border:2px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:background .2s,border-color .2s;display:flex;position:relative}.icon-btn-nav:hover{background:#ffffff1f;border-color:#fff6}.icon-btn-nav svg{stroke:#fff;width:22px;height:22px}.notif-badge{background:var(--color-red);color:#fff;border-radius:var(--radius-pill);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:2px;right:2px;box-shadow:0 2px 6px #ef444466}.notif-dropdown{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);opacity:0;visibility:hidden;z-index:1000;flex-direction:column;width:300px;transition:opacity .2s,transform .2s,visibility .2s;display:flex;position:absolute;top:120%;right:0;transform:translateY(-10px)}.notif-dropdown.active,.notif-dropdown[style*=block]{opacity:1;visibility:visible;transform:translateY(0)}.notif-dropdown-content{flex-direction:column;padding:.5rem;display:flex}.notif-dropdown-header{border-bottom:1px solid var(--border-card);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.5rem .75rem;display:flex}.notif-dropdown-header h4{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:600}.btn-text{color:var(--color-accent-blue);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.25rem .5rem;font-size:.8rem;font-weight:600}.btn-text:hover{background:#3b82f61a}.notif-dropdown-body{color:var(--text-secondary);padding:.5rem .75rem;font-size:.85rem}.notif-empty{text-align:center;color:var(--text-muted);padding:1rem 0}.main-container{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1.5rem 1rem}.tabs-nav{border-bottom:2px solid var(--border-card);gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.tab-btn{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.tab-btn:hover{color:var(--text-primary);background:#3b82f614}.tab-btn.active{background-color:var(--color-accent-blue);color:#fff;box-shadow:0 4px 12px #3b82f64d}.tab-btn svg{width:18px;height:18px}.estugira-card{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border-card);flex-direction:column;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .2s;display:flex;overflow:hidden}.estugira-card:hover{border-color:#3b82f64d;transform:translateY(-4px);box-shadow:0 12px 32px #0000001f}.card-cover{object-fit:cover;background:var(--bg-input);width:100%;height:180px;display:block}.dash-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (width<=900px){.dash-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.dash-grid{grid-template-columns:1fr}}.dash-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:.3rem;padding:1.1rem 1.25rem;display:flex}.dash-card-head{align-items:center;gap:.5rem;display:flex}.dash-icon{font-size:1.4rem;line-height:1}.dash-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:.8rem;font-weight:600}.dash-value{color:var(--text-primary);font-size:2rem;font-weight:800;line-height:1.1}.dash-sub{color:var(--text-muted);font-size:.85rem;line-height:1.5}.dash-sub strong{color:var(--text-primary)}.dash-bar{border-radius:var(--radius-pill);background-color:#80808033;height:10px;margin:.35rem 0;overflow:hidden}.dash-bar span{border-radius:var(--radius-pill);background:linear-gradient(90deg,#16a34a,#4ade80);height:100%;transition:width .4s;display:block}.badge-estado{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;align-items:center;gap:.3rem;margin-left:auto;padding:.15rem .55rem;font-size:.7rem;font-weight:700;display:inline-flex}.badge-estado.planificacion{color:#64748b;background:#94a3b833}.badge-estado.confirmada{color:#2563eb;background:#2563eb26}.badge-estado.en_curso{color:#16a34a;background:#16a34a26}.badge-estado.finalizada{color:#475569;background:#64748b26}.badge-estado.cancelada{color:#dc2626;background:#dc262626}.badge-asistencia{border-radius:var(--radius-pill);align-items:center;padding:.1rem .5rem;font-size:.72rem;font-weight:700;display:inline-flex}.badge-asistencia.presente{color:#16a34a;background:#16a34a26}.badge-asistencia.ausente{color:#dc2626;background:#dc262626}.badge-asistencia.sin_registro{color:#64748b;background:#94a3b833}.dash-actividad{border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border-card);margin-top:.4rem;padding:.55rem .75rem;font-size:.85rem;line-height:1.5}.dash-actividad-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-right:.45rem;font-size:.68rem;font-weight:700}.dash-actividad-hora{color:var(--text-muted);margin-left:.4rem;font-size:.8rem}.dash-actividad-vacio{color:var(--text-muted);font-style:italic}.dash-actividad-proxima{color:var(--text-muted);margin-top:.25rem;font-size:.78rem}.dash-gira-nombre{color:var(--text-primary);font-size:1.02rem;font-weight:700}.dash-asistencia{margin-top:.35rem}.dash-sin-dato{margin-top:.35rem;font-style:italic}.dash-titulo-seccion{text-transform:uppercase;letter-spacing:.4px;margin-top:.5rem;font-size:.72rem;font-weight:700}.dash-actividad-card{margin-top:1rem}.dash-chips{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.dash-chip{border-radius:var(--radius-pill);background:var(--bg-card);border:1px solid var(--border-card);color:var(--text-muted);padding:.3rem .75rem;font-size:.8rem}.dash-chip strong{color:var(--text-primary)}.dash-posts-mini{flex-direction:column;gap:.15rem;margin-top:.4rem;display:flex}.dash-post-item{border-bottom:1px solid var(--border-card);align-items:center;gap:.75rem;padding:.5rem .2rem;display:flex}.dash-post-item:last-child{border-bottom:none}.dash-post-thumb{object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;width:52px;height:52px}.dash-post-info{min-width:0}.dash-post-info strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;display:block;overflow:hidden}.dash-historial{flex-direction:column;margin-top:.4rem;display:flex}.dash-historial-item{border-bottom:1px solid var(--border-card);grid-template-columns:140px 1fr auto;align-items:center;gap:.6rem;padding:.45rem .2rem;font-size:.85rem;display:grid}.dash-historial-item:last-child{border-bottom:none}.dash-historial-fecha{color:var(--text-muted);font-size:.78rem}.dash-historial-actividad{color:var(--text-primary);font-weight:600}@media (width<=600px){.dash-historial-item{grid-template-columns:1fr auto}.dash-historial-fecha{grid-column:1/-1}}.iti-list{flex-direction:column;gap:.625rem;display:flex}.iti-row{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:.85rem;padding:.7rem .9rem;display:flex}.iti-row.programada{border-left:4px solid #16a34a}.iti-foto{object-fit:cover;border-radius:var(--radius-md);flex-shrink:0;width:52px;height:52px}.iti-avatar{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-weight:700;display:flex}.iti-main{flex-direction:column;flex:200px;gap:.1rem;min-width:0;display:flex}.iti-main strong{color:var(--text-primary);font-size:.95rem}.iti-main small{color:var(--text-muted);font-size:.78rem}.iti-main .iti-cuando{color:#15803d;font-weight:700}.iti-campos{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.iti-campos .form-control{width:auto;padding:.4rem .55rem;font-size:.85rem}.iti-campos input[type=date]{min-width:135px}.iti-campos input[type=time]{min-width:95px}@media (width<=640px){.iti-row{align-items:stretch}.iti-campos{width:100%}.iti-campos .form-control{flex:1 1 0}}.tour-header-banner{background:linear-gradient(135deg, var(--color-brand-blue) 0%, #0c2069 100%);color:#fff;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;display:flex}.tour-header-text h3{letter-spacing:-.3px;font-size:1.15rem;font-weight:700;line-height:1.2}.tour-header-text .tour-subtitle{color:#fffc;margin-top:.25rem;font-size:.85rem}.badge-orange{background-color:var(--color-orange);color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;white-space:nowrap;padding:.35rem .75rem;font-size:.75rem;font-weight:700;box-shadow:0 2px 6px #f973164d}.estugira-card-body{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.card-row{align-items:center;gap:1rem;display:flex}.icon-wrap{width:32px;height:32px;color:var(--color-brand-blue);flex-shrink:0;justify-content:center;align-items:center;display:flex}[data-theme=dark] .icon-wrap{color:#38bdf8}.flat-icon{width:22px;height:22px}.info-group{flex-direction:column;display:flex}.info-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.info-val{color:var(--text-primary);font-size:.95rem;font-weight:600}.info-val.highlight-title{font-size:1.05rem;font-weight:700}.card-footer-action{border-top:1px dashed var(--border-card);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:1rem;display:flex}.status-text{font-size:.95rem;font-weight:700}.status-text.success{color:var(--color-green)}.status-text.warning{color:var(--color-orange)}.btn-primary-pill{background-color:var(--color-accent-blue);color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:none;padding:.6rem 1.25rem;font-size:.85rem;font-weight:600;transition:background-color .2s,transform .15s;box-shadow:0 4px 10px #3b82f640}.btn-primary-pill:hover{background-color:var(--color-accent-blue-hover);transform:scale(1.02)}.kpi-mini-grid{background:var(--bg-input);border-radius:var(--radius-md);grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.5rem;padding:.75rem;display:grid}.kpi-item{text-align:center;flex-direction:column;align-items:center;display:flex}.kpi-lbl{color:var(--text-muted);font-size:.7rem}.kpi-num{font-size:.85rem;font-weight:700}.kpi-num.success{color:var(--color-green)}.kpi-num.warning{color:var(--color-orange)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background-color:#0f172a99;justify-content:center;align-items:center;width:100vw;height:100dvh;padding:1rem;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.modal-backdrop--nested{z-index:2100}.modal-card{background-color:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);flex-direction:column;flex-shrink:0;width:100%;max-width:550px;min-height:0;max-height:calc(100dvh - 2rem);margin:auto;animation:.25s ease-out modalSlideUp;display:flex;overflow:hidden}.modal-card.modal-lg,.modal-card--large{max-width:900px;max-height:calc(100vh - 2rem)}.modal-form{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{background-color:var(--bg-header);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-header h3{font-size:1.1rem;font-weight:700}.btn-close-modal{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;font-size:1.25rem}.btn-close-modal:hover{opacity:1}.modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;flex:auto;min-height:0;padding:1.5rem;overflow-y:auto}.modal-footer{background-color:var(--bg-input);border-top:1px solid var(--border-card);flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.modal-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (width>=768px){.modal-grid{grid-template-columns:1fr 1fr}}.form-group--full{grid-column:1/-1}.roles-list{background:var(--bg-input);border-radius:var(--radius-md);border:1px solid var(--border-card);grid-template-columns:1fr;gap:.4rem;max-height:240px;padding:1rem;display:grid;overflow-y:auto}@media (width>=768px){.roles-list{grid-template-columns:1fr 1fr;max-height:320px}}.role-checkbox{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.75rem;padding:.5rem .75rem;transition:background-color .15s;display:flex}.role-checkbox:hover{background-color:var(--bg-card)}.role-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent-blue);cursor:pointer;flex-shrink:0}.role-name{color:var(--text-primary);flex:1;font-size:.9rem;font-weight:500}.role-code{color:var(--text-muted);background:var(--bg-card);border-radius:var(--radius-pill);padding:.15rem .5rem;font-size:.75rem;font-weight:500}.selected-roles-count{color:var(--text-muted);text-align:right;margin-top:.75rem;font-size:.85rem}.modal-grid-2col{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=768px){.modal-grid-2col{grid-template-columns:1fr 1fr}}.modal-data-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.profile-photo-section{flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.profile-photo-preview{color:#fff;border:2px solid var(--border-card);background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;font-size:2rem;font-weight:700;display:flex;overflow:hidden}.profile-photo-preview img{object-fit:cover;width:100%;height:100%}.profile-photo-actions{gap:.5rem;display:flex}.profile-photo-error{color:var(--color-red);text-align:center;font-size:.8rem}.data-box{background:var(--bg-input);border-radius:var(--radius-md);flex-direction:column;padding:.75rem 1rem;display:flex}.data-box.full-width{grid-column:1/-1}.data-box .label{color:var(--text-muted);font-size:.75rem;font-weight:500}.data-box .value{color:var(--text-primary);margin-top:.2rem;font-size:.95rem;font-weight:600}.modal-card.modal-fullscreen,.modal-card--fullscreen{border:none;border-radius:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh}.gira-summary{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.gira-summary-title h4{color:var(--text-primary);margin:0;font-size:1.25rem}.gira-summary-subtitle{color:var(--text-muted);font-size:.85rem}.gira-summary-badges{flex-wrap:wrap;gap:.5rem;display:flex}.gira-section-title{color:var(--color-blue);border-bottom:1px solid var(--border-card);margin:1.75rem 0 1rem;padding-bottom:.35rem;font-size:.95rem;font-weight:700}.gira-section-title:first-of-type{margin-top:0}.pago-stats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.pago-stat{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-md);flex-direction:column;padding:.75rem 1rem;display:flex}.pago-stat .label{color:var(--text-muted);font-size:.75rem;font-weight:500}.pago-stat .value{color:var(--text-primary);margin-top:.2rem;font-size:1.1rem;font-weight:700}.pasajeros-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=900px){.pasajeros-grid{grid-template-columns:1fr 1fr}}.pasajero-card{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:1rem 1.25rem}.pasajero-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.pasajero-nombre{flex-direction:column;display:flex}.pasajero-nombre strong{color:var(--text-primary)}.pasajero-rut{color:var(--text-muted);font-size:.75rem}.pasajero-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}@media (width<=600px){.pasajero-grid{grid-template-columns:1fr 1fr}}.pasajero-grid .label{color:var(--text-muted);font-size:.7rem;display:block}.pasajero-grid .value{color:var(--text-primary);font-size:.85rem;font-weight:600}.apoderado-info{border-top:1px dashed var(--border-card);margin-top:.75rem;padding-top:.75rem}.apoderado-info .label{color:var(--color-blue);text-transform:uppercase;margin-bottom:.25rem;font-size:.7rem;font-weight:700;display:block}.apoderado-extra{color:var(--text-muted);margin-left:.75rem;font-size:.8rem}.pasajeros-table-wrap{margin-top:.5rem}.pasajeros-table td{vertical-align:middle}.pasajeros-table td strong{color:var(--text-primary)}.pct-cell{align-items:center;gap:.5rem;min-width:120px;display:flex}.pct-bar{border-radius:var(--radius-pill);background-color:#80808033;flex:1;height:8px;overflow:hidden}.pct-bar span{background-color:var(--color-accent-blue);border-radius:var(--radius-pill);height:100%;transition:width .3s;display:block}.pct-label{color:var(--text-primary);text-align:right;min-width:34px;font-size:.75rem;font-weight:700}.btn-small{border-radius:var(--radius-md);white-space:nowrap;padding:.3rem .75rem;font-size:.75rem}.cuotas-table-wrap{margin-top:.75rem;overflow-x:auto}.cuotas-table{border-collapse:collapse;width:100%;font-size:.8rem}.cuotas-table th,.cuotas-table td{text-align:left;border-bottom:1px solid var(--border-card);padding:.4rem .5rem}.cuotas-table th{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.cuota-tag{border-radius:var(--radius-pill);color:#fff;padding:.1rem .5rem;font-size:.7rem;font-weight:700}.cuota-tag.tag-pagada{background-color:#16a34a}.cuota-tag.tag-parcial{background-color:#d97706}.cuota-tag.tag-pendiente{background-color:#dc2626}.login-container{background:radial-gradient(circle at top,#0a194f 0%,#06103b 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:var(--bg-card);border-radius:var(--radius-lg);width:100%;max-width:420px;padding:2.5rem;box-shadow:0 20px 40px #0000004d}.login-header{text-align:center;margin-bottom:1.75rem}.login-header h1{color:var(--color-brand-blue);font-size:1.75rem;font-weight:700}[data-theme=dark] .login-header h1{color:#fff}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--text-primary);margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}.form-control{border-radius:var(--radius-md);border:1px solid var(--bg-input-border);background-color:var(--bg-input);width:100%;color:var(--text-primary);padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s}.form-control:focus{border-color:var(--color-accent-blue);outline:none}select.form-control{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748B' 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");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}select.form-control option{text-overflow:ellipsis;white-space:nowrap;max-width:100vw;padding:.5rem;overflow:hidden}@media (width<=640px){select.form-control{max-width:100%;font-size:16px}select.form-control option{max-width:90vw}}.btn{border-radius:var(--radius-md);cursor:pointer;border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.btn-primary{background-color:var(--color-accent-blue);color:#fff;width:100%}.btn-primary:hover{background-color:var(--color-accent-blue-hover)}.btn-secondary{background-color:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-card)}.alert-danger{color:var(--color-red);border-radius:var(--radius-md);background-color:#ef44441a;border:1px solid #ef444433;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem}.table-responsive{border-radius:var(--radius-md);border:1px solid var(--border-card);overflow-x:auto}table{border-collapse:collapse;background-color:var(--bg-card);text-align:left;width:100%;font-size:.9rem}th,td{border-bottom:1px solid var(--border-card);padding:.85rem 1rem}th{background-color:var(--bg-input);color:var(--text-muted);font-weight:600}.panel-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.tree-container{flex-direction:column;gap:.75rem;display:flex}.tree-node-apo{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:border-color .2s;overflow:hidden}.tree-node-apo:hover{border-color:var(--color-accent-blue)}.tree-header-apo{background:var(--bg-card);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.9rem 1.25rem;transition:background-color .15s;display:flex}.tree-header-apo:hover{background:var(--bg-input)}.tree-header-left{align-items:center;gap:.75rem;display:flex}.tree-toggle-icon{width:20px;height:20px;color:var(--text-muted);justify-content:center;align-items:center;transition:transform .2s;display:flex}.tree-node-apo.expanded>.tree-header-apo .tree-toggle-icon,.tree-node-gira.expanded>.tree-header-gira .tree-toggle-icon{transform:rotate(90deg)}.tree-title-text{color:var(--text-primary);font-size:.95rem;font-weight:600}.tree-subtitle-text{color:var(--text-muted);font-size:.8rem}.tree-content-apo{border-top:1px solid var(--border-card);flex-direction:column;gap:.6rem;padding:.5rem 1rem 1rem 2.25rem;display:flex}.tree-node-gira{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-sm);overflow:hidden}.tree-header-gira{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.65rem 1rem;font-size:.88rem;display:flex}.tree-header-gira:hover{background:#3b82f614}.tree-content-gira{border-top:1px dashed var(--border-card);flex-direction:column;gap:.5rem;padding:.5rem .75rem .75rem 1.75rem;display:flex}.tree-passenger-item{background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-card);cursor:pointer;justify-content:space-between;align-items:center;padding:.55rem .85rem;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.tree-passenger-item:hover{border-color:var(--color-accent-blue);box-shadow:var(--shadow-card);transform:translate(4px)}.tree-badge{border-radius:var(--radius-pill);padding:.2rem .55rem;font-size:.75rem;font-weight:600}.tree-badge-blue{color:var(--color-accent-blue);background:#3b82f626}.tree-badge-green{color:var(--color-green);background:#16a34a26}.tree-badge-orange{color:var(--color-orange);background:#f9731626}.card-table-container{border-radius:var(--radius-sm);border:1px solid var(--border-card);margin-top:.75rem;overflow-x:auto}.card-table{border-collapse:collapse;text-align:left;width:100%;font-size:.8rem}.card-table th,.card-table td{border-bottom:1px solid var(--border-card);white-space:nowrap;padding:.45rem .6rem}.card-table th{background-color:var(--bg-input);color:var(--text-muted);font-weight:600}.badge-status{border-radius:var(--radius-pill);padding:.15rem .4rem;font-size:.7rem;font-weight:600;display:inline-block}.badge-status.pagada{color:var(--color-green);background-color:#16a34a26}.badge-status.parcial{color:var(--color-orange);background-color:#f9731626}.badge-status.pendiente{color:var(--color-red);background-color:#ef444426}.posts-panel{flex-direction:column;gap:1.5rem;max-width:760px;margin:0 auto;display:flex}.post-composer{background-color:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.post-composer-header{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.post-composer-header>div:nth-child(2){flex-direction:column;margin-right:auto;display:flex}.post-composer-subtitle{color:var(--text-muted);font-size:.78rem}.post-avatar{background:linear-gradient(135deg, var(--color-accent-blue) 0%, var(--color-brand-blue) 100%);color:#fff;letter-spacing:.5px;text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;width:46px;min-width:46px;height:46px;font-size:1rem;font-weight:700;display:flex}.post-avatar-sm{width:36px;min-width:36px;height:36px;font-size:.8rem}.post-composer-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.post-composer-actions{justify-content:flex-end;display:flex}.post-photo-upload{flex-direction:column;gap:.6rem;display:flex}.post-photo-preview{border-radius:var(--radius-sm);border:1px solid var(--border-card);max-width:180px;display:inline-flex;position:relative;overflow:hidden}.post-photo-preview img{object-fit:cover;width:100%;max-height:120px;display:block}.post-photo-preview .btn-close-modal{color:#fff;background:#0009;font-size:.8rem;position:absolute;top:6px;right:6px}.posts-feed{flex-direction:column;gap:1.5rem;display:flex}.post-card{background-color:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:border-color .2s;overflow:hidden}.post-unread{border-color:var(--color-accent-blue);box-shadow:0 0 0 1px var(--color-accent-blue), var(--shadow-card)}.post-card-header{align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.post-meta{flex-direction:column;margin-right:auto;display:flex}.post-meta strong{color:var(--text-primary);font-size:.95rem}.post-meta-sub{color:var(--text-muted);font-size:.78rem}.post-new-badge{padding:.25rem .6rem;font-size:.7rem}.post-card-body{padding:0 1.25rem 1rem}.post-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.15rem;font-weight:700;line-height:1.3}.post-text{color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;font-size:.92rem;line-height:1.6}.post-image{border-radius:var(--radius-md);border:1px solid var(--border-card);margin-top:.9rem;overflow:hidden}.post-image img{object-fit:cover;width:100%;max-height:420px;display:block}.post-card-footer{border-top:1px solid var(--border-card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem 1.25rem;display:flex}.post-visto-info{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.post-eye{font-size:.9rem}.post-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.btn-danger-ghost{color:var(--color-red);background:0 0;border:1px solid #ef444459}.btn-danger-ghost:hover{background:#ef44441a}.post-vistos-list{flex-direction:column;gap:.6rem;margin-top:.5rem;list-style:none;display:flex}.post-vistos-list li{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);align-items:center;gap:.75rem;padding:.6rem .9rem;display:flex}.post-vistos-list li>div:last-child{flex-direction:column;display:flex}.post-vistos-list li strong{font-size:.9rem}.post-vistos-list li span{color:var(--text-muted);font-size:.75rem}@media (width<=640px){.post-composer-row{grid-template-columns:1fr}.post-card-footer{flex-direction:column;align-items:flex-start}}.posts-panel{max-width:680px}.fb-composer{background-color:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:.85rem;padding:1rem 1.25rem;animation:.3s both fadeInUp;display:flex}.fb-composer-top{align-items:center;gap:.75rem;display:flex}.fb-composer-trigger{background:var(--bg-input);border:1px solid var(--bg-input-border);border-radius:var(--radius-pill);min-width:0;color:var(--text-muted);text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;flex:1;padding:.7rem 1.1rem;font-size:.95rem;transition:background .2s,color .2s,border-color .2s;overflow:hidden}.fb-composer-trigger:hover{background:var(--border-card);color:var(--text-secondary);border-color:var(--color-accent-blue)}.fb-composer-actions{border-top:1px solid var(--border-card);align-items:center;gap:.5rem;padding-top:.7rem;display:flex}.fb-composer-actions button{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.45rem;padding:.55rem .75rem;font-size:.88rem;font-weight:600;transition:background .2s,color .2s;display:flex}.fb-composer-actions button:hover{background:var(--bg-input);color:var(--text-primary)}.fb-composer-actions button svg{color:var(--color-accent-blue)}.fb-composer-actions .fb-composer-send svg{color:var(--color-green)}.fb-modal-card{flex-direction:column;width:min(560px,100%);max-height:calc(100vh - 2rem);display:flex;overflow:hidden}.fb-modal-card .modal-body{flex-direction:column;gap:1rem;display:flex}.fb-modal-author{align-items:center;gap:.7rem;display:flex}.fb-modal-author>div:last-child{flex-direction:column;gap:.15rem;display:flex}.fb-modal-author strong{font-size:.95rem}.fb-modal-audience{color:var(--text-muted);align-items:center;gap:.3rem;font-size:.78rem;display:inline-flex}.fb-composer-inputs{flex-direction:column;gap:.4rem;display:flex}.fb-title-input{color:var(--text-primary);border:none;border-bottom:1px solid var(--border-card);background:0 0;outline:none;padding:.2rem 0;font-size:1.12rem;font-weight:700}.fb-title-input::placeholder{color:var(--text-muted);font-weight:500}.fb-textarea{color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;min-height:96px;max-height:320px;padding:.35rem 0;font-size:1.02rem;line-height:1.55}.fb-textarea::placeholder{color:var(--text-muted)}.fb-photo-preview{border-radius:var(--radius-md);border:1px solid var(--border-card);position:relative;overflow:hidden}.fb-photo-preview img{object-fit:cover;width:100%;max-height:320px;display:block}.fb-photo-preview>button{color:#fff;cursor:pointer;background:#000000a6;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;transition:background .2s;display:flex;position:absolute;top:8px;right:8px}.fb-photo-preview>button:hover{background:#000000d9}.fb-attach-row{border:1px solid var(--border-card);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .9rem;display:flex}.fb-attach-label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.fb-attach-actions{align-items:center;gap:.3rem;display:flex}.fb-attach-icon{width:38px;height:38px;color:var(--color-green);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:flex}.fb-attach-icon:hover{background:var(--bg-input)}.fb-gira-row{flex-direction:column;gap:.45rem;display:flex}.fb-gira-row>label{color:var(--text-secondary);font-size:.82rem;font-weight:600}.fb-gira-select-wrap{position:relative}.fb-gira-select{background:var(--bg-input);border:1px solid var(--bg-input-border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;align-items:center;gap:.55rem;padding:.65rem .9rem;font-size:.9rem;transition:border-color .2s;display:flex}.fb-gira-select:hover{border-color:var(--color-accent-blue)}.fb-gira-select svg:first-child{color:var(--color-orange-light);flex-shrink:0}.fb-gira-select svg:last-child{color:var(--text-muted);flex-shrink:0;margin-left:auto}.fb-gira-select span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fb-gira-dropdown{z-index:30;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);max-height:260px;padding:.35rem;animation:.15s ease-out dropdownFade;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.fb-gira-dropdown button{border-radius:var(--radius-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.6rem;width:100%;padding:.55rem .6rem;display:flex}.fb-gira-dropdown button:hover,.fb-gira-dropdown button.selected{background:var(--bg-input)}.fb-gira-dropdown button>div{flex-direction:column;flex:1;min-width:0;display:flex}.fb-gira-dropdown button strong{color:var(--text-primary);font-size:.9rem}.fb-gira-dropdown button span{color:var(--text-muted);font-size:.75rem}.fb-gira-dropdown button svg{color:var(--color-accent-blue);flex-shrink:0}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.post-meta-sub{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.post-meta-sub svg{color:var(--text-muted);flex-shrink:0}.post-meta-sub .sep{opacity:.6}.post-card{animation:.35s both fadeInUp}.post-image{cursor:pointer}.post-image img{transition:transform .3s}.post-image:hover img{transform:scale(1.01)}.post-card-footer{padding:0}.post-actionbar{border-top:1px solid var(--border-card);background:0 0;align-items:stretch;display:flex}.post-action-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:0;flex:1;justify-content:center;align-items:center;gap:.45rem;padding:.7rem .4rem;font-size:.86rem;font-weight:600;transition:background .2s,color .2s;display:flex}.post-action-btn+.post-action-btn{border-left:1px solid var(--border-card)}.post-action-btn:hover{background:var(--bg-input);color:var(--text-primary)}.post-action-btn.active,.post-action-btn.active:hover{color:var(--color-accent-blue)}.post-action-btn.danger:hover{color:var(--color-red)}.post-menu-wrap{position:relative}.post-menu-btn{width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.post-menu-btn:hover{background:var(--bg-input);color:var(--text-primary)}.post-menu{z-index:30;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);flex-direction:column;min-width:180px;padding:.35rem;animation:.15s ease-out dropdownFade;display:flex;position:absolute;top:calc(100% + 6px);right:0}.post-menu button{border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.55rem;padding:.55rem .7rem;font-size:.9rem;font-weight:500;transition:background .2s;display:flex}.post-menu button:hover{background:var(--bg-input)}.post-menu button.danger{color:var(--color-red)}.post-menu button.danger:hover{background:#ef44441a}.fb-detail-card{box-shadow:none;border-radius:var(--radius-md)}.fb-lightbox{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:zoom-out;background:#000000e0}.fb-lightbox img{border-radius:var(--radius-md);max-width:92vw;max-height:86vh;animation:.25s both fadeInUp;box-shadow:0 12px 48px #0009}.fb-lightbox-close{opacity:1;background:#ffffff29;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:background .2s;display:flex;position:fixed;top:1.2rem;right:1.2rem}.fb-lightbox-close:hover{background:#ffffff52}@media (width<=640px){.fb-composer-actions button{flex-direction:column;gap:.2rem;font-size:.78rem}.post-action-btn span{font-size:.78rem}.post-action-btn{gap:.3rem;padding:.65rem .25rem}.fb-modal-card{width:100%}}.dashboard-layout{align-items:stretch;width:100%;min-height:100vh;display:flex}.dashboard-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-sidebar{background:linear-gradient(180deg, var(--bg-header) 0%, #071033 100%);width:270px;color:var(--bg-header-text);z-index:60;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar-brand{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:.5rem;padding:1.1rem 1.25rem;display:flex}.app-sidebar-brand .brand-logo{font-size:1.25rem}.sidebar-close-btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#ffffff1a;border:none;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s;display:none}.sidebar-close-btn:hover{background:#fff3}.app-sidebar-nav{flex-direction:column;gap:.2rem;padding:.9rem .75rem;display:flex}.app-sidebar-item{border-radius:var(--radius-md);color:#ffffffc7;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.7rem;width:100%;padding:.68rem .85rem;font-size:.92rem;font-weight:600;transition:background .2s,color .2s;display:flex}.app-sidebar-item:hover{color:#fff;background:#ffffff14}.app-sidebar-item.active{background:var(--color-accent-blue);color:#fff;box-shadow:0 4px 14px #3b82f659}.app-sidebar-section{border-top:1px solid #ffffff1a;flex-direction:column;flex:1;min-height:0;padding:.6rem .75rem 1rem;display:flex}.app-sidebar-section-title{text-transform:uppercase;letter-spacing:.6px;color:#ffffff73;align-items:center;gap:.4rem;padding:.4rem .85rem .5rem;font-size:.72rem;font-weight:700;display:flex}.app-sidebar-search{border-radius:var(--radius-md);color:#fff9;background:#ffffff1a;border:1px solid #ffffff1f;flex-shrink:0;align-items:center;gap:.5rem;margin:0 .85rem .55rem;padding:.45rem .7rem;display:flex}.app-sidebar-search input{color:#fff;background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.app-sidebar-search input::placeholder{color:#ffffff73}.app-sidebar-empty{color:#ffffff80;padding:.6rem .85rem;font-size:.8rem}.app-sidebar-giras{flex-direction:column;gap:.2rem;min-height:0;display:flex;overflow-y:auto}.app-sidebar-item.gira .gira-label{flex-direction:column;min-width:0;line-height:1.2;display:flex}.app-sidebar-item.gira .gira-label strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.app-sidebar-item.gira .gira-label small{opacity:.65;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:400;overflow:hidden}.hamburger-btn{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--bg-header-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .2s;display:none}.hamburger-btn:hover{background:#ffffff1f}.navbar-left{align-items:center;gap:.5rem;display:flex}.sidebar-overlay{display:none}.posts-filter-badge{background-color:var(--bg-card);border:1px solid var(--border-card);border-left:4px solid var(--color-accent-blue);border-radius:var(--radius-md);box-shadow:var(--shadow-card);color:var(--text-secondary);align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.88rem;display:flex}.posts-filter-badge svg{color:var(--color-accent-blue);flex-shrink:0}.posts-filter-badge span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.posts-filter-badge button{color:var(--color-accent-blue);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;padding:.25rem .5rem;font-size:.82rem;font-weight:600}.posts-filter-badge button:hover{background:#3b82f61a}.posts-filter-bar{background-color:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);color:var(--color-accent-blue);align-items:center;gap:.6rem;margin-bottom:1rem;padding:.6rem .9rem;display:flex}.posts-filter-bar>svg{flex-shrink:0}.posts-filter-select{min-width:0;color:var(--text-primary);cursor:pointer;appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748B' 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") 100% no-repeat;border:none;outline:none;flex:1;padding:.25rem 2rem .25rem 0;font-size:.9rem;font-weight:600}.posts-filter-select option{color:#111;text-overflow:ellipsis;white-space:nowrap;max-width:100vw;font-weight:400;overflow:hidden}@media (width<=640px){.posts-filter-select{max-width:100%;font-size:16px}.posts-filter-select option{max-width:90vw}}.posts-filter-bar .btn-small{flex-shrink:0}.fb-gira-chip{background:var(--bg-input);border:1px solid var(--bg-input-border);border-radius:var(--radius-md);color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem .9rem;font-size:.9rem;display:flex}.fb-gira-chip svg{color:var(--color-orange-light);flex-shrink:0}.fb-gira-chip span{font-weight:600}.fb-gira-chip small{width:100%;color:var(--text-muted);font-size:.72rem}@media (width<=991px){.app-sidebar{z-index:1300;height:100vh;transition:transform .28s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 0 48px #00000059}.app-sidebar.open{transform:translate(0)}.sidebar-close-btn{display:flex}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1290;background:#06103b8c;display:block;position:fixed;inset:0}.hamburger-btn{display:flex}.navbar-app{padding-left:1rem}.navbar-app .brand-logo{font-size:1.15rem}}@media (width>=992px){.app-sidebar{display:flex}.navbar-app .brand-logo{display:none}}.chat-panel{background:var(--bg-card);border-left:1px solid var(--border-card);z-index:50;flex-direction:column;flex-shrink:0;width:380px;height:100vh;display:flex;position:sticky;top:0;box-shadow:-4px 0 20px #0000000a}@keyframes chatPanelIn{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:translate(0)}}@keyframes chatPanelOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(48px)}}.chat-panel-anim{animation:.28s chatPanelIn}.chat-panel.closing{pointer-events:none;animation:.26s forwards chatPanelOut}@media (width<=768px){.chat-panel{z-index:150;border-left:none;width:100vw;max-width:430px;height:100dvh;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px #00000040}}.chat-panel-header{border-bottom:1px solid var(--border-card);background:var(--bg-header);color:var(--bg-header-text);flex-shrink:0;justify-content:space-between;align-items:center;padding:.9rem 1rem;display:flex}.chat-panel-title{align-items:center;gap:.5rem;font-size:1rem;font-weight:700;display:flex}.chat-collapse-btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#ffffff1f;border:none;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:flex}.chat-collapse-btn:hover{background:#ffffff38}.chat-unread-total{background:var(--color-orange);color:#fff;border-radius:var(--radius-pill);padding:.1rem .5rem;font-size:.72rem;font-weight:700}.chat-panel-body{flex-direction:column;flex:1;min-height:0;display:flex}.chat-thread-list{flex-direction:column;flex:1;gap:.3rem;padding:.5rem;display:flex;overflow-y:auto}.chat-thread{border-radius:var(--radius-md);cursor:pointer;text-align:left;width:100%;color:var(--text-primary);background:0 0;border:none;align-items:flex-start;gap:.7rem;padding:.7rem .8rem;transition:background .15s;display:flex}.chat-thread:hover{background:var(--bg-input);transform:translate(2px)}@keyframes chatThreadIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.chat-thread.active{background:#3b82f61f}.chat-thread-avatar{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:.85rem;font-weight:700;display:flex}.chat-avatar-img{object-fit:cover}.chat-thread-header .chat-thread-avatar{width:40px;height:40px;font-size:.8rem}.chat-avatar-group{flex-shrink:0;width:42px;height:42px;position:relative}.chat-thread-header .chat-avatar-group{width:40px;height:40px}.chat-avatar-stack{border:2px solid var(--bg-card);color:#fff;object-fit:cover;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.6rem;font-weight:700;display:flex;position:absolute;box-shadow:0 1px 4px #00000026}.chat-thread-header .chat-avatar-stack{width:26px;height:26px;font-size:.55rem}.chat-avatar-stack:first-child{z-index:1;top:0;left:0}.chat-avatar-stack:last-child{bottom:0;right:0}.chat-thread-main{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.chat-thread-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.chat-thread-top strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.chat-thread-time{color:var(--text-muted);flex-shrink:0;font-size:.7rem}.chat-thread-sub{color:var(--text-secondary);gap:.3rem;min-width:0;font-size:.82rem;display:flex}.chat-thread-who{color:var(--text-primary);flex-shrink:0;font-weight:600}.chat-thread-preview{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.chat-thread-bottom{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.chat-thread-subtag{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.3rem;min-width:0;font-size:.72rem;display:flex;overflow:hidden}.chat-thread-badge{background:var(--color-orange);color:#fff;border-radius:var(--radius-pill);flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.7rem;font-weight:700;display:flex}.chat-thread-view{flex-direction:column;flex:1;min-height:0;animation:.25s chatThreadIn;display:flex}.chat-thread-header{border-bottom:1px solid var(--border-card);background:var(--bg-input);flex-shrink:0;align-items:center;gap:.6rem;padding:.7rem .9rem;display:flex}.chat-back-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.2rem}.chat-back-btn:hover{color:var(--color-accent-blue);background:#3b82f61a}.chat-thread-header-info{flex-direction:column;min-width:0;display:flex}.chat-thread-header-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.chat-thread-header-info small{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.chat-thread-header-info .chat-interlocutor-rol{color:var(--color-accent-blue);text-transform:uppercase;letter-spacing:.3px;font-size:.72rem;font-weight:700}.gira-paq-block{border-top:1px dashed var(--border-card);flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:flex}.gira-paq-block .info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:.75rem;font-weight:600}.gira-paq{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-md);flex-direction:column;gap:.3rem;padding:.55rem .75rem;display:flex}.gira-paq>strong{color:var(--text-primary);font-size:.88rem}.gira-act{color:var(--text-primary);flex-direction:column;padding-left:.25rem;font-size:.84rem;display:flex}.gira-act-dur{color:var(--text-muted)}.gira-act-horario{color:#15803d;font-size:.78rem;font-weight:600}.chat-messages{background:var(--bg-main);flex-direction:column;flex:1;gap:.8rem;padding:.9rem;display:flex;overflow-y:auto}.chat-bubble-row{align-items:flex-start;gap:.5rem;display:flex}.chat-bubble-row.own{justify-content:flex-end}.chat-bubble-avatar{color:#fff;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.7rem;font-weight:700;display:flex}.chat-bubble-row.own .chat-bubble-avatar{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.chat-bubble-content{flex-direction:column;gap:.15rem;max-width:78%;display:flex}.chat-bubble-row.own .chat-bubble-content{align-items:flex-end}.chat-bubble-meta{align-items:center;gap:.4rem;font-size:.74rem;display:flex}.chat-bubble-meta strong{color:var(--text-primary)}.chat-bubble-time{color:var(--text-muted)}.chat-rol-tag{text-transform:uppercase;letter-spacing:.3px;border-radius:var(--radius-pill);color:var(--color-orange);background:#f9731626;padding:.05rem .45rem;font-size:.65rem;font-weight:700}.chat-rol-tag.own{color:var(--color-accent-blue);background:#3b82f626}.chat-bubble{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md) var(--radius-md) var(--radius-md) 4px;box-shadow:var(--shadow-card);padding:.6rem .8rem;font-size:.88rem}.chat-bubble p{word-break:break-word}.chat-bubble-row.own .chat-bubble{background:var(--color-accent-blue);border-color:var(--color-accent-blue);color:#fff;border-radius:var(--radius-md) var(--radius-md) 4px var(--radius-md)}.chat-note{color:var(--text-secondary);border-radius:var(--radius-sm);background:#f9731614;border:1px dashed #f9731666;flex-shrink:0;margin:.5rem .9rem;padding:.5rem .75rem;font-size:.75rem}.chat-alert{flex-shrink:0;margin:0 .9rem .5rem}.chat-typing{background:var(--bg-card);border-top:1px solid var(--border-card);flex-shrink:0;align-items:center;gap:.5rem;padding:.45rem .9rem;display:flex}.chat-typing-text{color:var(--color-accent-blue);white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;font-weight:600;overflow:hidden}.typing-dots{flex-shrink:0;align-items:center;gap:3px;display:flex}.typing-dots span{background:var(--color-accent-blue);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typingBounce}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-input{border-top:1px solid var(--border-card);background:var(--bg-card);flex-shrink:0;gap:.5rem;padding:.7rem .9rem;display:flex}.chat-input input{border:1px solid var(--bg-input-border);border-radius:var(--radius-pill);background:var(--bg-input);min-width:0;color:var(--text-primary);outline:none;flex:1;padding:.65rem .9rem;font-size:.9rem}.chat-input input:focus{border-color:var(--color-accent-blue)}.chat-input button{background:var(--color-accent-blue);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:background .2s,opacity .2s;display:flex}.chat-input button:hover{background:var(--color-accent-blue-hover)}.chat-input button:disabled{opacity:.5;cursor:not-allowed}.chat-fab{z-index:1200;background:var(--color-accent-blue);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .2s,background .2s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 8px 24px #3b82f666}.chat-fab:hover{background:var(--color-accent-blue-hover);transform:scale(1.05)}@keyframes fabIn{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.chat-fab-anim{animation:.25s cubic-bezier(.34,1.56,.64,1) fabIn}.chat-fab-badge{border-radius:var(--radius-pill);background:var(--color-orange);color:#fff;border:2px solid var(--bg-card);justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.panel-subtitle{color:var(--text-muted);max-width:520px;margin-top:.25rem;font-size:.85rem}.coord-chips{flex-wrap:wrap;gap:.3rem;display:flex}.coord-chip{color:var(--color-accent-blue);border-radius:var(--radius-pill);background:#3b82f61f;padding:.15rem .6rem;font-size:.75rem;font-weight:600}.coord-checkbox-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;gap:.5rem;min-height:0;max-height:340px;display:flex;overflow-y:auto}@media (width<=640px){.coord-checkbox-list{max-height:38vh}}.coord-checkbox{border:1px solid var(--bg-input-border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:.7rem;padding:.6rem .8rem;transition:all .15s;display:flex}.coord-checkbox:hover{background:var(--bg-input)}.coord-checkbox.checked{border-color:var(--color-accent-blue);background:#3b82f614}.coord-checkbox input{accent-color:var(--color-accent-blue)}.coord-check-avatar{color:#fff;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.7rem;font-weight:700;display:flex}.coord-check-name{flex-direction:column;min-width:0;display:flex}.coord-check-name strong{font-size:.9rem}.coord-check-name small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.cards-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=480px){.cards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}}@media (width>=768px){.cards-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}}.estugira-card.condensed{border-radius:var(--radius-md)}.estugira-card.condensed .estugira-card-body{gap:.6rem;padding:1rem}.estugira-card.condensed .card-row{gap:.75rem}.estugira-card.condensed .icon-wrap{width:28px;height:28px}.estugira-card.condensed .info-label{font-size:.68rem}.estugira-card.condensed .info-val{font-size:.85rem}.estugira-card.condensed .info-val.highlight-title{font-size:.95rem}@media (width<=479px){.cards-grid.list-view{flex-direction:column;gap:.5rem;display:flex}.cards-grid.list-view .estugira-card{border-radius:var(--radius-sm)}.cards-grid.list-view .estugira-card-body{gap:.4rem;padding:.75rem 1rem}.cards-grid.list-view .card-row{align-items:center;gap:.5rem}.cards-grid.list-view .icon-wrap{width:24px;height:24px}.cards-grid.list-view .icon-wrap svg{width:16px;height:16px}.cards-grid.list-view .info-label{opacity:.8;font-size:.62rem}.cards-grid.list-view .info-val{font-size:.8rem}.cards-grid.list-view .info-val.highlight-title{font-size:.88rem;font-weight:700}.cards-grid.list-view .card-row:nth-child(n+4):not(:last-child){display:none}.cards-grid.list-view .card-row:last-child{border-top:1px solid var(--border-card);justify-content:space-between;align-items:center;margin-top:.25rem;padding-top:.5rem;display:flex}.cards-grid.list-view .card-footer-action,.cards-grid.list-view .card-footer-action~div{background:0 0;border:none;padding:0}.cards-grid.list-view .btn-primary-pill,.cards-grid.list-view .btn-secondary{padding:.4rem .8rem;font-size:.75rem}}.tour-card.condensed .tour-header-banner{padding:.85rem 1rem}.tour-card.condensed .tour-header-text h3{font-size:1rem}.tour-card.condensed .badge-orange{padding:.25rem .5rem;font-size:.65rem}.tour-card.condensed .estugira-card-body{padding:1rem}.tour-card.condensed .card-row{gap:.75rem}.tour-card.condensed .icon-wrap{width:28px;height:28px}.tour-card.condensed .info-val{font-size:.85rem}@media (width<=479px){form[style*="maxWidth: '600px'"]{flex-direction:column;max-width:100%!important}form[style*="maxWidth: '600px'"]>div{width:100%}form[style*="maxWidth: '600px'"] button{justify-content:center;width:100%}.panel-header{flex-direction:column;align-items:flex-start;gap:.75rem}.panel-header h2{font-size:1.2rem!important}.input-field,.form-control{padding:.6rem .85rem;font-size:16px}.form-group{margin-bottom:1rem}.modal-backdrop{padding:0}.modal-card{border-radius:0;min-height:100vh;max-height:100vh;margin:0}.modal-header{border-radius:0;padding:1rem}.modal-body{padding:1rem}.modal-footer{flex-direction:column-reverse;gap:.5rem;padding:1rem}.modal-footer .btn{width:100%}.modal-grid,.modal-grid-2col,.modal-data-grid{grid-template-columns:1fr}}@media (width<=640px){.table-responsive table,.table-responsive thead,.table-responsive tbody,.table-responsive th,.table-responsive td,.table-responsive tr{display:block}.table-responsive thead{display:none}.table-responsive tr{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);margin-bottom:.75rem;padding:1rem}.table-responsive td{border-bottom:1px solid var(--border-card);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.table-responsive td:last-child{border-bottom:none}.table-responsive td:before{content:attr(data-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:.75rem;font-weight:600}.table-responsive td strong{font-size:.9rem}.navbar-app{padding:.75rem 1rem}.welcome-user-text{display:none}.brand-logo{font-size:1.25rem}.tabs-nav{gap:.25rem;padding-bottom:.25rem}.tab-btn{gap:.35rem;padding:.5rem .85rem;font-size:.85rem}.tab-btn svg{width:16px;height:16px}}@media (width<=479px){.empty-state{text-align:center;padding:2rem 1rem;font-size:.9rem}}.empty-state{text-align:center;color:var(--text-muted);background:var(--bg-input);border:1px dashed var(--border-card);border-radius:var(--radius-lg);flex-direction:column;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.empty-state p{margin:.75rem 0 0;font-size:.95rem}@media (width<=640px){.main-container{padding:1rem}}.mobile-only{display:none}.desktop-only{display:block}@media (width<=640px){.mobile-only{display:block!important}.desktop-only,.mobile-hidden{display:none!important}}@media (width>=641px){.mobile-only{display:none!important}.desktop-only{display:block!important}}@media (pointer:coarse){.btn,.tab-btn,.dropdown-item,.tree-passenger-item,.chat-thread,.post-action-btn{min-width:44px;min-height:44px}.form-control,.input-field{min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:high){:root{--border-card:currentColor;--shadow-card:0 0 0 2px currentColor}[data-theme=dark]{--border-card:currentColor}}.btn-secondary.active{background-color:var(--color-accent-blue);color:#fff;border-color:var(--color-accent-blue)}.btn-secondary.active:hover{background-color:var(--color-accent-blue-hover);color:#fff}.panel-header .btn-small.active,.panel-header .btn-secondary.active{background-color:var(--color-accent-blue);color:#fff;border-color:var(--color-accent-blue)}.panel-header .btn-small.active:hover,.panel-header .btn-secondary.active:hover{background-color:var(--color-accent-blue-hover);color:#fff}.modal-card.modal-gira{width:min(1080px,100vw - 2rem);max-width:1080px;max-height:calc(100vh - 2rem)}.gira-backdrop{padding:1rem}.gira-summary{margin-bottom:1rem;padding:1rem 1.25rem}.gira-info-grid{grid-template-columns:1fr;gap:0 1.5rem;display:grid}@media (width>=900px){.gira-info-grid{grid-template-columns:1.2fr 1fr;align-items:start}.gira-info-grid .gira-section-title{margin-top:0}}.gira-detail-grid{gap:.625rem}.gira-detail-grid .data-box{padding:.6rem .85rem}.gira-list-header{border-bottom:1px solid var(--border-card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0 .75rem;padding-bottom:.35rem;display:flex}.gira-filter-input{max-width:260px;padding:.4rem .75rem;font-size:.85rem}.gira-filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.gira-filters .gira-filter-input{flex:200px;min-width:160px}.gira-filter-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748B' 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");background-position:right .5rem center;background-repeat:no-repeat;flex:0 auto;min-width:140px;max-width:190px;padding:.4rem 2rem .4rem .6rem;font-size:.85rem}.gira-filter-select option{text-overflow:ellipsis;white-space:nowrap;max-width:100vw;overflow:hidden}@media (width<=640px){.gira-filter-select{min-width:0;max-width:100%;font-size:16px}.gira-filter-select option{max-width:90vw}}.gira-filter-toggle{border:1px solid var(--border-card);background:var(--bg-input);color:var(--text-primary);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;padding:.4rem .8rem;font-size:.82rem;font-weight:600}.gira-filter-toggle.active{color:#fff;background:#f59e0b;border-color:#f59e0b}.alim-alert-count{color:#92400e;border-radius:var(--radius-pill);vertical-align:middle;background:#fef3c7;border:1px solid #fcd34d;margin-left:.5rem;padding:.1rem .55rem;font-size:.78rem;font-weight:700;display:inline-block}.med-pill{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-pill);white-space:nowrap;color:var(--text-primary);padding:.12rem .55rem;font-size:.76rem;font-weight:700;display:inline-block}.pasajeros-table .col-med{white-space:nowrap;text-align:center}.alim-alert{color:#92400e;border-radius:var(--radius-pill);background:#fef3c7;border:1px solid #fcd34d;align-items:center;gap:.25rem;max-width:160px;padding:.12rem .55rem;font-size:.8rem;font-weight:700;display:inline-flex}.alim-alert .alim-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.alim-ok{color:var(--text-muted)}.tipo-destino-selector{flex-wrap:wrap;gap:.5rem;display:flex}.tipo-destino-btn{border:1px solid var(--bg-input-border);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;align-items:center;gap:.4rem;padding:.6rem 1rem;font-size:.85rem;font-weight:500;transition:all .15s;display:flex}.tipo-destino-btn:hover{background:var(--bg-card);border-color:var(--color-accent-blue);color:var(--text-primary)}.tipo-destino-btn.active{background:var(--color-accent-blue);border-color:var(--color-accent-blue);color:#fff}.tipo-destino-btn.active svg{stroke:#fff}.destino-chips{flex-wrap:wrap;gap:.35rem;min-height:36px;display:flex}.chip{color:var(--color-accent-blue);border-radius:var(--radius-pill);background:#3b82f61f;align-items:center;gap:.35rem;padding:.2rem .6rem .2rem .5rem;font-size:.8rem;font-weight:500;display:inline-flex}.chip.empty{background:var(--bg-input);color:var(--text-muted);font-style:italic}.chip button{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;padding:0;font-size:1rem;line-height:1;transition:opacity .15s}.chip button:hover{opacity:1}.destino-dropdown{z-index:10;position:relative}.destino-dropdown-content{z-index:30;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);flex-direction:column;max-height:320px;animation:.15s ease-out dropdownFade;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.destino-search{border-bottom:1px solid var(--border-card);padding:.5rem}.destino-search input{border:1px solid var(--bg-input-border);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text-primary);padding:.5rem .75rem;font-size:.85rem}.destino-search input:focus{border-color:var(--color-accent-blue);outline:none}.destino-dropdown-content ul{max-height:260px;margin:0;padding:.35rem;list-style:none;overflow-y:auto}.destino-dropdown-content li{padding:0}.destino-dropdown-content li label{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.6rem;width:100%;padding:.55rem .6rem;transition:background .15s;display:flex}.destino-dropdown-content li label:hover{background:var(--bg-input)}.destino-dropdown-content li.selected label{background:#3b82f614}.destino-dropdown-content li input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent-blue);cursor:pointer;flex-shrink:0}.destino-dropdown-content li span{flex-direction:column;flex:1;min-width:0;display:flex}.destino-dropdown-content li strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.destino-dropdown-content li small{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.dropdown-scrim{z-index:20;background:0 0;position:fixed;inset:0}.file-upload-label{border:1px dashed var(--bg-input-border);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.9rem;font-weight:500;transition:all .15s;display:inline-flex}.file-upload-label:hover{border-color:var(--color-accent-blue);background:var(--bg-card);color:var(--text-primary)}.file-upload-label svg{flex-shrink:0}.pago-stats-grid{grid-template-columns:repeat(2,1fr)}@media (width>=700px){.pago-stats-grid{grid-template-columns:repeat(4,1fr)}}.pago-stat{padding:.6rem .85rem}.pago-stat .value{font-size:1rem}.pasajeros-table-wrap{border:1px solid var(--border-card);border-radius:var(--radius-md);max-height:46vh;margin-top:0;overflow-y:auto}.pasajeros-table thead th{background:var(--bg-card);z-index:2;box-shadow:0 1px 0 var(--border-card);white-space:nowrap;position:sticky;top:0}.pasajeros-table .col-num{text-align:center;width:2.5rem}.pasajeros-table .col-rut{white-space:nowrap}.pasajeros-table .col-accion{text-align:right;width:4.5rem}.pasajeros-table .btn-small{padding:.25rem .6rem;font-size:.78rem}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=640px){.modal-card.modal-gira{border-radius:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh}.gira-backdrop{padding:0}.gira-summary{padding:.85rem 1rem}.gira-filters .gira-filter-input,.gira-filter-select{flex:100%;width:100%;max-width:100%}.gira-filter-toggle{width:100%}.pasajeros-table-wrap{border:none;max-height:none;overflow:visible}.pasajeros-table thead{display:none}.pasajeros-table,.pasajeros-table tbody,.pasajeros-table tr,.pasajeros-table td{width:100%;display:block}.pasajeros-table tr{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-md);margin-bottom:.625rem;padding:.75rem .9rem}.pasajeros-table td{border-bottom:1px solid var(--border-card);text-align:right;justify-content:space-between;align-items:center;gap:.75rem;padding:.3rem 0;display:flex}.pasajeros-table td:last-child{border-bottom:none;padding-top:.5rem}.pasajeros-table td:before{content:attr(data-label);color:var(--text-muted);text-transform:uppercase;text-align:left;flex-shrink:0;font-size:.72rem;font-weight:600}.pasajeros-table td.col-accion .btn{width:100%}.pasajeros-table .pct-cell{flex:1;min-width:0;max-width:160px}}.notificaciones-admin-panel{flex-direction:column;gap:1.5rem;display:flex}.notificaciones-admin-panel .panel-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.notificaciones-admin-panel .panel-subtitle{color:var(--text-muted);margin-top:.25rem;font-size:.85rem}.notificaciones-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=900px){.notificaciones-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1200px){.notificaciones-grid{grid-template-columns:repeat(3,1fr)}}.notificacion-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.notificacion-card:hover{border-color:#3b82f64d;transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.notificacion-card-header{border-bottom:1px solid var(--border-card);background:var(--bg-input);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.notificacion-meta{flex-direction:column;flex:1;gap:.35rem;min-width:0;display:flex}.notificacion-meta strong{color:var(--text-primary);font-size:1rem;line-height:1.3}.notificacion-sub{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.78rem;display:flex}.notificacion-sub svg{color:var(--color-accent-blue);flex-shrink:0}.notificacion-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.notificacion-badge{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex}.notificacion-badge svg{flex-shrink:0}.notificacion-badge.badge-gray{color:var(--text-muted);background:#94a3b826}.notificacion-badge.badge-orange{color:var(--color-orange);background:#f9731626}.notificacion-badge.badge-green{color:var(--color-green);background:#16a34a26}.notificacion-badge.badge-blue{color:var(--color-accent-blue);background:#3b82f626}.notificacion-menu{gap:.25rem;display:flex}.icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.icon-btn:hover{background:var(--bg-card);color:var(--text-primary)}.icon-btn.danger:hover{color:var(--color-red);background:#ef44441a}.notificacion-card-body{flex:1;padding:1rem 1.25rem}.notificacion-mensaje{color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9rem;line-height:1.6}.notificacion-imagen{border-radius:var(--radius-md);border:1px solid var(--border-card);margin-top:.75rem;overflow:hidden}.notificacion-imagen img{object-fit:cover;width:100%;max-height:280px;display:block}.notificacion-stats{background:var(--bg-input);border-top:1px solid var(--border-card);grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.75rem 1.25rem;display:grid}.stat-item{text-align:center;flex-direction:column;align-items:center;gap:.15rem;display:flex}.stat-item.stat-progress{flex-direction:row;grid-column:1/-1;justify-content:center;align-items:center;gap:.75rem}.stat-value{color:var(--text-primary);font-size:1.1rem;font-weight:700}.progress-bar{border-radius:var(--radius-pill);background-color:#80808033;flex:1;max-width:200px;height:8px;overflow:hidden}.progress-fill{border-radius:var(--radius-pill);background:linear-gradient(90deg,#16a34a,#4ade80);height:100%;transition:width .4s;display:block}.notificacion-destinos{border-top:1px solid var(--border-card);background:var(--bg-input);padding:0 1.25rem 1rem}.notificacion-destinos summary{cursor:pointer;color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:.5rem 0;font-size:.8rem;font-weight:600}.notificacion-destinos ul{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.notificacion-destinos li{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-sm);padding:.35rem .6rem;font-size:.8rem}.foto-preview{border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-input);max-width:200px;display:inline-flex;position:relative;overflow:hidden}.foto-preview img{object-fit:cover;max-width:100%;max-height:160px;display:block}.foto-preview>button{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:background .2s;display:flex;position:absolute;top:6px;right:6px}.foto-preview>button:hover{background:#000000d9}.modal-card.modal-xl{max-width:900px}.notificacion-detalle{flex-direction:column;gap:1.5rem;display:flex}.notificacion-detalle-header{border-bottom:1px solid var(--border-card);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.notificacion-detalle-header h2{color:var(--text-primary);flex:1;min-width:200px;margin:0;font-size:1.35rem;font-weight:700}.notificacion-detalle-meta{color:var(--text-secondary);flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}.notificacion-detalle-meta span{align-items:center;gap:.5rem;display:flex}.notificacion-detalle-meta strong{color:var(--text-primary);font-weight:600}.notificacion-detalle-stats{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.stat-card{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-md);text-align:center;flex-direction:column;align-items:center;gap:.35rem;padding:1rem 1.25rem;display:flex}.stat-number{color:var(--text-primary);font-size:2rem;font-weight:800;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:.75rem;font-weight:600}.notificacion-detalle-imagen{border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-input);overflow:hidden}.notificacion-detalle-imagen img{object-fit:cover;width:100%;max-height:400px;display:block}.notificacion-detalle-mensaje{background:var(--bg-input);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:1rem 1.25rem}.notificacion-detalle-mensaje p{color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.95rem;line-height:1.7}.notificacion-detalle-destinos{flex-direction:column;gap:.75rem;display:flex}.notificacion-detalle-destinos h4{color:var(--text-primary);align-items:center;gap:.5rem;margin:0;font-size:1rem;font-weight:700;display:flex}.notificacion-detalle-destinos h4 svg{color:var(--color-accent-blue);flex-shrink:0}.destinatarios-lista{flex-direction:column;gap:.5rem;max-height:400px;padding-right:.5rem;display:flex;overflow-y:auto}.destinatario-item{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;transition:all .15s;display:flex}.destinatario-item:hover{border-color:var(--color-accent-blue);box-shadow:var(--shadow-card)}.destinatario-item.visto{border-left:3px solid var(--color-green)}.destinatario-info{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.destinatario-info .post-avatar-sm{background:linear-gradient(135deg, var(--color-accent-blue), var(--color-brand-blue));width:36px;min-width:36px;height:36px;font-size:.8rem}.destinatario-info div{flex-direction:column;min-width:0;display:flex}.destinatario-info strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.destinatario-info small{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.destinatario-estado{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.destinatario-estado .badge-green,.destinatario-estado .badge-gray,.destinatario-estado .badge-blue{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex}.destinatario-estado .badge-green{color:var(--color-green);background:#16a34a26}.destinatario-estado .badge-gray{color:var(--text-muted);background:#94a3b826}.destinatario-estado .badge-blue{color:var(--color-accent-blue);background:#3b82f626}.destinatario-estado svg{flex-shrink:0}.destinatarios-lista::-webkit-scrollbar{width:6px}.destinatarios-lista::-webkit-scrollbar-track{background:var(--bg-input);border-radius:var(--radius-pill)}.destinatarios-lista::-webkit-scrollbar-thumb{background:var(--border-card);border-radius:var(--radius-pill)}.destinatarios-lista::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (width<=768px){.modal-card.modal-xl{border-radius:0;max-width:100%;height:100vh;max-height:100vh;margin:0}.notificacion-detalle-header{flex-direction:column;align-items:flex-start}.notificacion-detalle-stats{grid-template-columns:1fr}.destinatario-item{flex-direction:column;align-items:flex-start}.destinatario-estado{justify-content:flex-start;width:100%}}
