.navbar{background-color:#fff;justify-content:space-between;align-items:center;gap:18px;min-height:80px;padding:0 30px;display:flex;box-shadow:0 2px 10px #0000000d}.search-bar{background-color:#f1f5f9;border-radius:12px;align-items:center;gap:10px;width:min(350px,42vw);min-width:180px;padding:12px 18px;display:flex}.search-bar input{background:0 0;border:none;outline:none;width:100%}.navbar-right{align-items:center;gap:25px;min-width:0;display:flex}.nav-icon{cursor:pointer;font-size:20px}.profile{cursor:pointer;align-items:center;gap:10px;min-width:0;display:flex}.profile span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-icon{flex:none;font-size:30px}@media (width<=900px){.navbar{flex-direction:column;align-items:stretch;gap:12px;padding:14px 18px}.search-bar{width:100%}.navbar-right{justify-content:space-between;width:100%}}@media (width<=520px){.navbar{padding:12px}.navbar-right{gap:12px}.profile span{max-width:150px}}.sidebar{color:#fff;background:#0f172a;flex-direction:column;flex:0 0 270px;width:270px;min-height:100vh;padding:30px 20px;display:flex;position:sticky;top:0;overflow-y:auto}.logo-section{margin-bottom:50px}.logo-section h1{color:#1d7ed6;font-size:28px}.logo-section p{color:#94a3b8;margin-top:5px;font-size:14px}.menu{flex-direction:column;gap:12px;display:flex}.menu li{cursor:pointer;border-radius:12px;align-items:center;gap:15px;padding:15px;transition:all .2s;display:flex}.menu li:hover{background-color:#1e293b}.icon{font-size:18px}.menu-link{color:#fff;border-radius:12px;align-items:center;gap:15px;min-width:0;padding:14px 18px;text-decoration:none;transition:all .3s;display:flex}.menu-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-link:hover{background:#ffffff1f}.menu-link.active{background:#ffffff2e;font-weight:600}@media (width<=1024px){.sidebar{flex-basis:230px;width:230px;padding:22px 14px}.logo-section h1{font-size:24px}.menu-link{gap:10px;padding:12px}}@media (width<=760px){.sidebar{flex:none;width:100%;min-height:auto;padding:14px 12px;position:static;overflow:auto hidden}.logo-section{margin-bottom:12px}.logo-section h1{font-size:20px}.logo-section p{font-size:12px}.menu{scrollbar-width:thin;flex-direction:row;gap:8px;padding-bottom:2px;overflow-x:auto}.menu li{flex:none}.menu-link{white-space:nowrap;border-radius:999px;flex:none;min-height:42px;padding:10px 12px}.menu-link span{max-width:150px}}.layout{width:100%;min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;min-width:0;display:flex}.content{background-color:#f5f9ff;flex:1;min-width:0;padding:20px;overflow-x:hidden}.page-backbar{align-items:center;margin-bottom:18px;display:flex}.back-button{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:8px;width:fit-content;min-height:40px;padding:10px 14px;font-weight:700;display:inline-flex;box-shadow:0 3px 10px #0f172a0f}.back-button:hover{color:#005bac;border-color:#005bac}@media (width<=760px){.layout{flex-direction:column}.content{padding:12px}.page-backbar{margin-bottom:12px}.back-button{justify-content:center;min-height:38px;padding:9px 12px}}.event-card{background:#fff;border-radius:8px;flex-direction:column;min-width:0;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 8px 20px #00000014}.event-card:hover{transform:translateY(-8px);box-shadow:0 12px 25px #0000001f}.event-image{object-fit:cover;width:100%;height:180px}.event-content{min-width:0;padding:20px}.event-category{color:#005bac;background:#eaf4ff;border-radius:30px;margin-bottom:12px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-block}.event-content h3{color:#0f172a;margin-bottom:15px}.event-info{color:#64748b;flex-direction:column;gap:10px;margin-bottom:18px;font-size:.95rem;display:flex}.event-info p{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:flex}.event-content button{color:#fff;cursor:pointer;background:#005bac;border:none;border-radius:10px;width:100%;padding:12px;font-weight:600;transition:all .3s}.event-content button:hover{background:#004a8d}@media (width<=520px){.event-image{height:150px}.event-content{padding:14px}.event-category{border-radius:8px}}.operation-page{width:100%;min-width:0}.operation-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.operation-header p{color:#64748b;margin-top:6px}.operation-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:24px;display:grid}.operation-card,.operation-panel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:0;box-shadow:0 4px 14px #0f172a0f}.operation-card{padding:20px}.operation-card span{color:#64748b;margin-bottom:8px;font-size:.9rem;display:block}.operation-card strong{color:#005bac;font-size:1.8rem}.operation-panel{margin-bottom:20px;padding:20px}.operation-panel h2{color:#0f172a;margin-bottom:16px;font-size:1.1rem}.operation-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.box-title-row{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.operation-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px;display:grid}.operation-form label{color:#334155;flex-direction:column;gap:7px;font-weight:600;display:flex}.operation-table{gap:8px;min-width:0;display:grid}.operation-row,.operation-table-header{grid-template-columns:var(--columns,2fr 1fr 1fr 1fr);align-items:center;gap:12px;min-width:0;padding:12px;display:grid}.operation-row>*,.operation-table-header>*{overflow-wrap:anywhere;min-width:0}.operation-table-header{color:#475569;border-bottom:1px solid #e2e8f0;font-weight:700}.operation-row{background:#f8fafc;border-radius:8px}.operation-row small{color:#64748b}.report-visual-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-bottom:20px;display:grid}.stat-bars{gap:14px;display:grid}.stat-bar-row{grid-template-columns:minmax(130px,1fr) minmax(140px,2fr) 46px;align-items:center;gap:12px;display:grid}.stat-bar-row strong,.report-mini-card strong{color:#0f172a;text-transform:capitalize;font-size:.95rem;display:block}.stat-bar-row span,.report-mini-card span,.stat-bar-row small,.report-mini-card small,.muted-text{color:#64748b;font-size:.82rem}.bar-track{background:#e2e8f0;border-radius:999px;width:100%;height:10px;overflow:hidden}.bar-fill{border-radius:inherit;min-width:4px;height:100%;display:block}.request-fill{background:#005bac}.event-fill{background:#059669}.attendance-fill{background:#d97706}.resource-fill{background:#7c3aed}.report-cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:18px;display:grid}.report-mini-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:8px;padding:14px;display:grid}.resource-bars{margin-bottom:18px}.status-pill{color:#fff;text-transform:capitalize;background:#64748b;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-width:90px;padding:7px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.status-pill.pendiente,.status-pill.abierto,.status-pill.en_revision{background:#d97706}.status-pill.pre_aprobada,.status-pill.resuelto,.status-pill.created{background:#2563eb}.status-pill.aprobada,.status-pill.published,.status-pill.active,.status-pill.restored,.status-pill.inscrito{background:#059669}.status-pill.rechazada,.status-pill.cancelada,.status-pill.cancelled,.status-pill.inactive,.status-pill.failed,.status-pill.cancelado{background:#dc2626}.primary-button,.secondary-button,.danger-button{cursor:pointer;border:0;border-radius:8px;min-height:42px;padding:11px 14px;font-weight:700}.primary-button{color:#fff;background:#005bac}.secondary-button{color:#0f172a;background:#e2e8f0}.danger-button{color:#fff;background:#dc2626}.report-export-grid{gap:12px;display:grid}.report-export-row{border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:minmax(130px,.6fr) 2fr;align-items:center;gap:12px;padding:12px;display:grid}.report-export-row .operation-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.report-export-row .secondary-button{min-width:74px}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.55}.inline-edit-field{grid-template-columns:minmax(100px,1fr) auto;align-items:center;gap:8px;display:grid}.inline-edit-field input,.inline-edit-field button{width:100%;min-width:0}.personal-email-verification{border-top:1px solid #e2e8f0;margin-top:18px;padding-top:18px}.personal-email-verification h3,.personal-email-verification p{margin-top:0}.muted-message,.error-message{border-radius:8px;margin-bottom:16px;padding:14px}.muted-message{color:#475569;background:#f1f5f9}.error-message{color:#b91c1c;background:#fef2f2}@media (width<=900px){.operation-header{flex-direction:column}.operation-row,.operation-table-header{grid-template-columns:1fr}.operation-table-header{display:none}.stat-bar-row,.report-export-row{grid-template-columns:1fr}.report-export-row .operation-actions{justify-content:flex-start}}@media (width<=640px){.operation-panel,.operation-card{padding:14px}.operation-actions,.box-title-row{flex-direction:column;align-items:stretch}.primary-button,.secondary-button,.danger-button{width:100%}.report-visual-grid{grid-template-columns:1fr}.status-pill{justify-self:start}.inline-edit-field{grid-template-columns:1fr}}.calendar-page{min-width:0;padding:30px}.calendar-top{margin-bottom:25px}.calendar-top h1{color:#0f172a;margin-bottom:10px}.calendar-top p{color:#64748b}.calendar-filters{flex-wrap:wrap;gap:12px;margin-bottom:25px;display:flex}.calendar-filters button{cursor:pointer;background:#fff;border:none;border-radius:10px;padding:10px 18px;transition:all .3s;box-shadow:0 2px 8px #00000014}.calendar-filters button:hover{transform:translateY(-2px)}.calendar-filters .active{color:#fff;background:#005bac}.month-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.month-header button{color:#fff;cursor:pointer;background:#005bac;border:none;border-radius:50%;width:40px;height:40px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;min-width:0;display:grid}.day-name{color:#fff;text-align:center;background:#005bac;border-radius:12px;padding:12px;font-weight:600}.calendar-day{background:#fff;border-radius:16px;min-width:0;min-height:120px;padding:10px;transition:all .3s;box-shadow:0 4px 12px #0000000f}.calendar-day:hover{transform:translateY(-3px)}.day-number{color:#334155;font-weight:700}.event-tag{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;margin-top:10px;padding:6px 10px;font-size:.8rem;font-weight:600;text-decoration:none;display:block;overflow:hidden}.cultural{color:#15803d;background:#dcfce7}.deportivo{color:#ea580c;background:#ffedd5}.calendar-legend{flex-wrap:wrap;gap:30px;margin-bottom:20px;display:flex}.calendar-legend div{align-items:center;gap:8px;display:flex}.legend{border-radius:50%;width:18px;height:18px}.legend.academico{background:#1d4ed8}.legend.cultural{background:#15803d}.legend.deportivo{background:#ea580c}.administrativo{color:#4338ca;background:#e0e7ff}.legend.administrativo{background:#4338ca}.filtros button.active{color:#fff;background:#005bac}@media (width<=760px){.calendar-page{padding:0}.calendar-filters{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.calendar-filters button{flex:none;padding:9px 12px}.month-header{gap:10px}.month-header h2{text-align:center}.calendar-grid{gap:5px}.day-name{border-radius:8px;padding:8px 2px;font-size:.72rem}.calendar-day{border-radius:8px;min-height:78px;padding:6px}.event-tag{margin-top:6px;padding:4px;font-size:.68rem}.calendar-legend{gap:10px}}@media (width<=420px){.calendar-day{min-height:64px}.day-number{font-size:.82rem}.event-tag{font-size:.62rem}}.mis-eventos-page{width:100%;min-width:0}.mis-eventos-header{margin-bottom:25px}.mis-eventos-header h1{color:#0f172a}.mis-eventos-header p{color:#64748b}.mis-eventos-resumen{margin-bottom:30px}.resumen-card{background:#fff;border-radius:16px;width:min(250px,100%);padding:25px;box-shadow:0 4px 15px #0000000d}.resumen-card h2{color:#005bac;margin-bottom:5px;font-size:2rem}.mis-eventos-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:25px;min-width:0;display:grid}.evento-wrapper{position:relative}.estado{z-index:10;color:#fff;border-radius:20px;padding:8px 14px;font-size:.8rem;font-weight:600;position:absolute;top:15px;right:15px}@media (width<=520px){.mis-eventos-grid{gap:14px}.estado{top:12px;left:12px;right:auto}}.inscrito{background:#16a34a}.pendiente-de-asistencia{background:#d97706}.asistencia-registrada{background:#2563eb}.miqr-page{width:100%}.miqr-grid{grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr);gap:20px;margin-bottom:20px;display:grid}.system-qr{width:100%;max-width:240px;margin:0 auto 16px;display:block}.qr-payload,.credential-token code{color:#334155;overflow-wrap:anywhere;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:10px;display:block}.qr-empty-state{color:#475569;text-align:center;background:#f8fafc;border:1px dashed #94a3b8;border-radius:8px;place-content:center;gap:8px;min-height:240px;padding:18px;display:grid}.qr-empty-state strong{color:#0f172a;font-size:1.05rem}.qr-input-block{color:#334155;gap:8px;margin-bottom:14px;font-weight:700;display:grid}.qr-input-block textarea{width:100%}.qr-reader{margin-top:16px;display:none;overflow:hidden}.qr-reader.active{background:#0f172a;border:1px solid #cbd5e1;border-radius:8px;width:100%;min-height:280px;display:block}.qr-reader video{object-fit:cover;min-height:280px;width:100%!important;display:block!important}.qr-reader img{max-width:100%}.qr-lock-panel{max-width:520px}.qr-lock-panel .primary-button{margin-top:8px}.credential-preview{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.credential-preview.employee-preview{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.credential-preview div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px}.credential-preview span,.credential-token span{color:#64748b;text-transform:uppercase;margin-bottom:6px;font-size:.82rem;font-weight:800;display:block}.credential-preview strong{color:#0f172a}.credential-token{gap:8px;margin-top:18px;display:grid}.credential-token a{color:#005bac;overflow-wrap:anywhere}@media (width<=820px){.miqr-grid{grid-template-columns:1fr}}.history-page{width:100%}.history-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px;display:grid}.history-summary div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:18px;box-shadow:0 4px 14px #0f172a0f}.history-summary strong{color:#005bac;font-size:2rem;display:block}.history-summary span{color:#64748b;font-weight:700}.history-columns{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.history-list{gap:12px;display:grid}.history-event{background:#f8fafc;border:1px solid #e2e8f0;border-left:5px solid #64748b;border-radius:8px;gap:8px;padding:14px;display:grid}.history-event.attended{border-left-color:#059669}.history-event.missed{border-left-color:#d97706}.history-event h3{color:#0f172a;margin:0 0 4px;font-size:1rem}.history-event span{color:#64748b;text-transform:capitalize;font-size:.82rem;font-weight:800}.history-event p{color:#334155;margin:0}.history-event .secondary-button{justify-self:start;text-decoration:none}@media (width<=900px){.history-columns{grid-template-columns:1fr}}.profile-page{max-width:1100px;margin:0 auto}.profile-hero{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:18px;margin-bottom:22px;padding:24px;display:flex;box-shadow:0 8px 22px #0f172a0f}.profile-avatar{color:#fff;background:#005bac;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;font-size:2rem;font-weight:800;display:flex}.profile-hero h1{color:#0f172a;margin-bottom:6px}.profile-hero p{color:#64748b;margin-bottom:10px}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.profile-grid .operation-card p{color:#0f172a;overflow-wrap:anywhere;font-weight:700}.profile-details{grid-column:1/-1}@media (width<=720px){.profile-hero{flex-direction:column;align-items:flex-start}}.detalle-evento{min-width:0;max-width:1100px;margin:auto}.oficio-banner{background:#fff;border:1px solid #cbd5e1;border-left:8px solid #005bac;border-radius:8px;grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr);gap:22px;min-width:0;padding:28px;display:grid;box-shadow:0 14px 30px #0f172a14}.oficio-banner-info span{color:#005bac;text-transform:uppercase;margin-bottom:12px;font-weight:800;display:block}.oficio-banner-info h1{color:#0f172a;margin-bottom:14px}.oficio-banner-info p{color:#475569;line-height:1.55}.oficio-banner-meta{text-align:right;border-left:1px solid #e2e8f0;flex-direction:column;justify-content:center;align-items:flex-end;gap:10px;display:flex}.oficio-banner-meta strong{color:#005bac;font-size:1.6rem}.oficio-banner-meta small{color:#64748b}.evento-info{margin-top:25px}.categoria{border-radius:20px;padding:8px 16px;font-size:.85rem;font-weight:600}.academico{color:#1d4ed8;background:#dbeafe}.evento-info h1{color:#0f172a;margin-top:15px;margin-bottom:20px}.evento-meta{flex-wrap:wrap;gap:25px;margin-bottom:30px;display:flex}.evento-meta p{color:#475569}.evento-descripcion{background:#fff;border-radius:8px;padding:25px;box-shadow:0 4px 15px #0000000d}.evento-descripcion h2{margin-bottom:12px}.evento-estadisticas{flex-wrap:wrap;gap:20px;margin-top:25px;display:flex}.stat{text-align:center;background:#fff;border-radius:8px;flex:1;min-width:180px;padding:20px;box-shadow:0 4px 15px #0000000d}.stat h3{color:#005bac;font-size:2rem}.evento-acciones{margin-top:30px}.btn-inscribir{color:#fff;cursor:pointer;background:#005bac;border:none;border-radius:12px;padding:14px 30px;font-size:1rem;font-weight:600}.btn-inscribir:hover{opacity:.9}.evento-header{flex-wrap:wrap;gap:12px;margin-top:20px;margin-bottom:20px;display:flex}.badge{border-radius:20px;padding:8px 14px;font-size:.85rem;font-weight:600}.presencial{color:#15803d;background:#dcfce7}.abierto{color:#b45309;background:#fef3c7}.evento-id{color:#64748b;margin-bottom:20px}.evento-grid{grid-template-columns:2fr 1fr;gap:25px;min-width:0;margin-top:25px;display:grid}.evento-sidebar{flex-direction:column;gap:20px;display:flex}.info-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 4px 15px #0000000d}@media (width<=900px){.evento-grid,.oficio-banner{grid-template-columns:1fr}.oficio-banner-meta{text-align:left;border-top:1px solid #e2e8f0;border-left:0;align-items:flex-start;padding-top:16px}}@media (width<=640px){.oficio-banner,.evento-descripcion,.info-card{padding:16px}.evento-meta{gap:12px}.evento-estadisticas{flex-direction:column}.stat{min-width:0}.btn-inscribir{width:100%}}.solicitud-page{min-width:0;max-width:1200px;margin:auto}.solicitud-header{margin-bottom:30px}.solicitud-header p{color:#64748b}.form-section{background:#fff;border-radius:8px;min-width:0;margin-bottom:25px;padding:25px;box-shadow:0 4px 15px #0000000d}.form-section h2{color:#005bac;margin-bottom:20px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:20px;display:grid}.form-group{flex-direction:column;display:flex}.form-group label{margin-bottom:8px;font-weight:600}input,textarea,select{border:1px solid #d1d5db;border-radius:10px;padding:12px;font-size:.95rem}textarea{resize:vertical}.radio-group{flex-wrap:wrap;gap:25px;margin-bottom:20px;display:flex}.summary-card{background:#eff6ff;border-left:5px solid #005bac;border-radius:10px;padding:15px}.submit-container{justify-content:flex-end;margin-bottom:50px;display:flex}.btn-submit{color:#fff;cursor:pointer;background:#005bac;border:none;border-radius:12px;padding:14px 28px;font-size:1rem;font-weight:600}.btn-submit:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.55}.btn-secondary{color:#005bac;cursor:pointer;background:#fff;border:2px solid #005bac;border-radius:10px;margin-top:15px;padding:12px 20px}.steps-container{flex-wrap:wrap;gap:15px;margin-bottom:30px;display:flex}.step{color:#64748b;cursor:default;font-weight:600;font:inherit;background:#e2e8f0;border:0;border-radius:30px;padding:12px 20px}.step.active{color:#fff;background:#005bac}.step:not(:disabled){cursor:pointer}.step:not(:disabled):hover{color:#fff;background:#0f172a}.spaces-grid{grid-template-columns:repeat(auto-fit,minmax(128px,max-content));justify-content:start;align-items:start;gap:12px;margin-bottom:18px;display:grid}.space-section-list{grid-template-columns:repeat(auto-fill,150px);justify-content:start;align-items:start;gap:14px;margin-bottom:20px;display:grid}.space-section{gap:8px;width:150px;display:grid}.space-section h3{color:#0f172a;min-height:34px;margin:0;font-size:.86rem}.space-choice{gap:8px;width:150px;min-width:0;display:grid}.space-card{text-align:center;cursor:pointer;border:2px solid #cbd5e1;border-radius:12px;padding:20px;transition:all .3s}.space-card:hover{background:#eff6ff;border-color:#005bac}.wizard-buttons{justify-content:space-between;gap:12px;margin-top:30px;display:flex}.wizard-next-actions{justify-content:flex-end;gap:10px;display:flex}.space-card{cursor:pointer;background:#fff;border:2px solid #cbd5e1;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;min-height:78px;padding:14px;font-size:1rem;font-weight:600;transition:all .25s;display:flex}.space-card:hover{border-color:#005bac;transform:translateY(-3px);box-shadow:0 8px 20px #005bac26}.space-card.selected{color:#fff;background:#005bac;border-color:#005bac;box-shadow:0 10px 25px #005bac4d}.space-card span{font-size:.84rem}.space-card strong{font-size:.78rem}.space-card small{font-size:.72rem}.space-submenu{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;gap:10px;width:min(360px,100vw - 48px);padding:12px;display:grid}.space-submenu>strong{color:#0f172a;font-size:.9rem}.space-submenu-options{gap:8px;display:grid}.space-option{color:#0f172a;cursor:pointer;text-align:left;background:#fff;border:1px solid #cbd5e1;border-radius:8px;gap:6px;padding:10px;display:grid}.space-option:hover{background:#eff6ff;border-color:#005bac}.space-option.selected{color:#fff;background:#005bac;border-color:#005bac}.space-option span{font-weight:800}.space-option small{color:#64748b;font-weight:700}.space-option.selected small{color:#fff}.space-detail-list{pointer-events:none;gap:5px;width:100%;margin:4px 0 0;padding:0;list-style:none;display:grid}.space-detail-list li{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:6px 8px;font-size:.78rem;font-weight:700}.selected-detail-list{max-height:none;overflow:visible}.space-card.selected .selected-detail-list li,.space-option.selected .space-detail-list li{color:#fff;background:#ffffff24;border-color:#ffffff3d}.selected-space-info{color:#005bac;background:#eff6ff;border-radius:12px;margin-top:20px;padding:15px;font-weight:600}.space-quantity-menu{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;align-items:end;gap:10px;width:fit-content;margin-top:10px;padding:12px;display:flex}.space-quantity-menu label{color:#334155;gap:6px;font-weight:800;display:grid}.space-quantity-menu select{min-width:96px}.space-quantity-menu small{color:#64748b;padding-bottom:12px;font-weight:800}.additional-space-box .space-section-list{margin-top:14px;margin-bottom:0}.segmented-actions,.selected-additional-spaces{flex-wrap:wrap;gap:10px;display:flex}.selected-additional-spaces{margin-top:12px}.selected-additional-space-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:8px;padding:10px;display:grid}.selected-additional-spaces button{color:#005bac;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:9px 12px;font-weight:800}.selected-additional-space-item .space-quantity-menu{margin-top:0}.request-calendar-panel{background:#fff;border:1px solid #d8dee9;border-radius:8px;min-width:0;margin:20px 0;padding:16px}.request-calendar-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.request-calendar-header h3{color:#0f172a;text-transform:capitalize;margin:0;font-size:1rem}.request-calendar-actions{flex-wrap:wrap;gap:8px;display:flex}.compact-button{margin-top:0;padding:9px 12px}.request-calendar-controls{grid-template-columns:minmax(120px,.7fr) minmax(110px,.55fr) minmax(240px,1.3fr) auto;align-items:end;gap:12px;margin-bottom:14px;display:grid}.request-calendar-controls label{color:#334155;flex-direction:column;gap:6px;font-weight:700;display:flex}.date-target-control{background:#e2e8f0;border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.date-target-control button{color:#334155;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:10px;font-weight:800}.date-target-control .target-active{color:#005bac;background:#fff;box-shadow:0 2px 8px #0f172a1a}.clear-date-button{white-space:nowrap;align-self:end}.calendar-selection-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;gap:12px;margin-bottom:14px;padding:10px 12px;display:flex}.calendar-selection-summary span{color:#475569;font-size:.9rem}.calendar-selection-summary strong{color:#0f172a}.request-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;min-width:0;display:grid}.request-calendar-weekday{color:#fff;text-align:center;background:#005bac;border-radius:8px;padding:9px 4px;font-size:.78rem;font-weight:800}.request-calendar-empty{min-height:94px}.request-calendar-day{color:#0f172a;cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:6px;min-width:0;min-height:94px;padding:9px;display:grid}.request-calendar-day:hover{border-color:#005bac;box-shadow:0 6px 14px #005bac1f}.request-calendar-day.selected{background:#eff6ff;border-color:#005bac}.request-calendar-day.end-selected{background:#f0fdf4;border-color:#059669}.request-calendar-day.past-day{cursor:not-allowed;opacity:.45}.request-calendar-day strong{font-size:.9rem}.request-calendar-day small{color:#64748b;font-weight:700}.calendar-event-dot{text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:5px 6px;font-size:.82rem;font-weight:700;overflow:hidden}.request-calendar-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:14px;padding:14px}.request-calendar-details h3{color:#0f172a;margin:0 0 10px;font-size:.98rem}.calendar-detail-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:5px;margin-top:8px;padding:11px;display:grid}.calendar-detail-item strong{color:#0f172a}.calendar-detail-item span,.calendar-detail-item p{color:#475569;margin:0}.validation-hint{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:18px;padding:12px 14px;font-weight:700}.advanced-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:18px 0;padding:16px}.advanced-box h3{color:#0f172a;margin:0 0 12px;font-size:1rem}.box-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.option-chip-grid,.check-grid{flex-wrap:wrap;gap:10px;display:flex}.option-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:9px 12px;font-weight:800}.option-chip.selected{color:#fff;background:#005bac;border-color:#005bac}.check-grid label{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.resource-request-row{grid-template-columns:minmax(180px,1.2fr) 90px minmax(180px,1fr) auto;align-items:center;gap:10px;margin-top:10px;display:grid}.visitor-request-list{gap:10px;display:grid}.visitor-request-row{grid-template-columns:minmax(160px,1fr) minmax(150px,1fr) minmax(160px,1fr) auto;align-items:center;gap:10px;display:grid}.muted-inline{color:#64748b;margin:0}.conflict-warning{color:#9a3412;background:#fff7ed;border:2px solid #fb923c;border-radius:8px;gap:6px;margin-bottom:18px;padding:16px;display:grid;box-shadow:0 10px 24px #f9731629}.conflict-warning strong{font-size:1rem}.conflict-warning span{font-weight:700}.action-warning{margin:18px 0 0}.attached-files-list{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.attached-files-list span{color:#005bac;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:700;display:flex}.attached-files-list button{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #93c5fd;border-radius:7px;padding:6px 10px;font-weight:800}.attached-files-list button:hover{background:#fef2f2;border-color:#fca5a5}.confirmation-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);align-items:stretch;gap:20px;display:grid}.confirmation-summary{border:1px solid #bfdbfe;box-shadow:0 10px 24px #005bac1a}.summary-kicker{color:#005bac;text-transform:uppercase;margin-bottom:8px;font-size:.82rem;font-weight:800;display:block}.confirmation-summary h3{color:#0f172a;margin-bottom:14px}.oficio-preview{background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #cbd5e1;border-left:6px solid #005bac;border-radius:8px;flex-direction:column;justify-content:center;min-height:210px;padding:22px;display:flex;box-shadow:0 12px 26px #0f172a14}.oficio-preview span{color:#64748b;margin-bottom:12px;font-weight:700}.oficio-preview strong{color:#005bac;margin-bottom:18px;font-size:1.6rem}.oficio-preview p{color:#0f172a;margin-bottom:14px;font-weight:700}.oficio-preview small{color:#64748b}@media (width<=840px){.form-section{padding:18px}.steps-container{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.step{flex:none}.confirmation-layout{grid-template-columns:1fr}.request-calendar-grid{gap:5px}.request-calendar-header{flex-direction:column;align-items:stretch}.request-calendar-controls{grid-template-columns:1fr}.request-calendar-day,.request-calendar-empty{min-height:80px}.calendar-event-dot{font-size:.72rem}.resource-request-row,.visitor-request-row{grid-template-columns:1fr}.wizard-buttons{flex-direction:column-reverse;align-items:stretch}.wizard-next-actions{flex-direction:column-reverse}.wizard-buttons button,.submit-container button,.btn-submit,.btn-secondary{width:100%}}@media (width<=560px){.form-section{padding:14px}.spaces-grid,.space-section-list{grid-template-columns:repeat(2,minmax(0,1fr))}.space-section,.space-choice{width:100%}.request-calendar-panel{margin-left:-6px;margin-right:-6px;padding:10px}.request-calendar-grid{gap:4px}.request-calendar-weekday{padding:7px 2px;font-size:.68rem}.request-calendar-day,.request-calendar-empty{min-height:66px}.request-calendar-day{gap:4px;padding:6px}.request-calendar-day strong{font-size:.78rem}.calendar-event-dot{padding:4px;font-size:.64rem}.date-target-control{grid-template-columns:1fr}}.dashboard-solicitante{width:100%}.welcome-card{color:#fff;background:linear-gradient(135deg,#005bac,#3b82f6);border-radius:20px;margin-bottom:30px;padding:30px}.stat-card h2{color:#005bac;font-size:2rem}.action-container{margin-bottom:30px}.new-request-btn{color:#fff;cursor:pointer;background:#005bac;border:none;border-radius:12px;padding:15px 25px;font-weight:600}.recent-requests{background:#fff;border-radius:18px;padding:25px;box-shadow:0 4px 15px #0000000d}.request-card{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:15px 0;display:flex}.status{color:#fff;border-radius:20px;padding:8px 15px;font-size:.85rem}.status.pendiente{background:#f59e0b}.status.aprobada{background:#10b981}.status.rechazada{background:#ef4444}.mis-solicitudes-page{width:100%}.filters{flex-wrap:wrap;gap:12px;margin-bottom:25px;display:flex}.filters button{cursor:pointer;background:#fff;border:none;border-radius:10px;padding:12px 18px;font-weight:600;box-shadow:0 4px 12px #0000000d}.requests-container{flex-direction:column;gap:15px;display:flex}.request-card{color:inherit;background:#fff;border-radius:16px;justify-content:space-between;align-items:center;padding:20px;text-decoration:none;transition:all .25s;display:flex;box-shadow:0 4px 12px #0000000d}.request-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #00000014}.estado{color:#fff;text-transform:capitalize;border-radius:20px;padding:8px 15px;font-size:.85rem}.estado.aprobada{background:#10b981}.estado.rechazada{background:#ef4444}.detalle-page{width:100%;min-width:0}.detalle-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:30px;display:flex}.detalle-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px;min-width:0;margin-bottom:20px;display:grid}.info-card{background:#fff;border-radius:8px;min-width:0;margin-bottom:20px;padding:25px;box-shadow:0 4px 15px #0000000d}.info-card h3{color:#005bac;margin-bottom:15px}.estado{color:#fff;border-radius:20px;padding:10px 18px;font-weight:600}.files{flex-wrap:wrap;gap:15px;display:flex}.files button{color:#005bac;cursor:pointer;background:#eff6ff;border:none;border-radius:10px;padding:12px 18px}.time-select-group{grid-template-columns:1fr 1fr;gap:10px;display:grid}.space-status-ok,.space-status-conflict{border-radius:8px;padding:12px;font-weight:800}.space-status-ok{color:#166534;background:#dcfce7}.space-status-conflict{color:#b91c1c;background:#fef2f2}@media (width<=720px){.detalle-header{flex-direction:column;align-items:flex-start}.info-card{padding:16px}.files{flex-direction:column}.files button{width:100%}.time-select-group{grid-template-columns:1fr}}.dashboard-encargado{width:100%;min-width:0}.estado{color:#fff;text-align:center;border-radius:20px;padding:8px 12px}@media (width<=900px){.table-header{display:none}.table-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:1fr;margin-bottom:12px;padding:14px}.estado{justify-self:start}}@media (width<=640px){.requests-section,.stat-card{padding:16px}.stats-grid{grid-template-columns:1fr}.btn-review{width:100%}}.revision-page{width:100%;min-width:0}.revision-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:30px;display:flex}.revision-grid{grid-template-columns:2fr 1fr;gap:25px;min-width:0;margin-bottom:25px;display:grid}.info-card,.calendar-card,.comments-card{background:#fff;border-radius:8px;min-width:0;padding:25px;box-shadow:0 4px 15px #0000000d}.info-card p{margin-bottom:12px}.calendar-item{border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:12px 0;display:flex}.comments-card textarea{resize:none;border:1px solid #cbd5e1;border-radius:12px;width:100%;min-height:120px;padding:15px}.actions{flex-wrap:wrap;justify-content:flex-end;gap:15px;display:flex}.btn-return{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:10px;padding:12px 20px}.btn-approve{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:10px;padding:12px 20px}.estado{color:#fff;border-radius:20px;padding:8px 15px}.estado.pendiente{background:#f59e0b}.responsable-card,.space-status,.files-card,.conflict-card{background:#f8fafc;border-radius:12px;margin-top:20px;padding:18px}.available{color:#166534;background:#dcfce7;border-radius:10px;padding:12px;font-weight:600}.files-card ul{padding-left:20px}.files-card li{margin-bottom:10px}.files-card a{color:#005bac;background:#fff;border:1px solid #dbeafe;border-radius:8px;margin-top:8px;padding:10px 12px;font-weight:700;text-decoration:none;display:block}.resource-line{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:4px;margin-top:8px;padding:10px 12px;display:grid}.resource-line span,.resource-line small{color:#64748b}@media (width<=900px){.revision-grid{grid-template-columns:1fr}}@media (width<=640px){.revision-header{flex-direction:column;align-items:flex-start}.info-card,.calendar-card,.comments-card{padding:16px}.calendar-item{flex-direction:column;align-items:flex-start;gap:6px}.actions{flex-direction:column;align-items:stretch}.btn-return,.btn-approve{width:100%}}.historial-page{width:100%}.page-header{margin-bottom:25px}.page-header p{color:#64748b}.filters{gap:12px;margin-bottom:25px;display:flex}.filters button{cursor:pointer;background:#fff;border:none;border-radius:10px;padding:12px 18px}.filters button.active{color:#fff;background:#005bac}.history-list{flex-direction:column;gap:15px;display:flex}.history-card{background:#fff;border-radius:16px;justify-content:space-between;align-items:center;padding:20px;display:flex;box-shadow:0 4px 12px #0000000d}.badge{color:#fff;text-transform:capitalize;border-radius:20px;padding:8px 15px}.badge.preaprobada{background:#10b981}.badge.devuelta{background:#ef4444}.dashboard-autoridad{width:100%;min-width:0}.dashboard-header{margin-bottom:30px}.dashboard-header p{color:#64748b}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:35px;display:grid}.stat-card{text-align:center;background:#fff;border-radius:18px;padding:25px;box-shadow:0 4px 15px #0000000d}.stat-card h3{color:#64748b;margin-bottom:15px}.stat-card span{color:#005bac;font-size:2rem;font-weight:700}.requests-section{background:#fff;border-radius:8px;min-width:0;padding:25px;box-shadow:0 4px 15px #0000000d}.requests-section h2{margin-bottom:20px}.requests-table{width:100%;min-width:0}.table-header,.table-row{grid-template-columns:2fr 1.2fr 1.2fr 1.2fr 1fr 1fr;align-items:center;gap:15px;min-width:0;padding:15px 0;display:grid}.table-header>*,.table-row>*{overflow-wrap:anywhere;min-width:0}.table-header{border-bottom:2px solid #e2e8f0;font-weight:700}.table-row{border-bottom:1px solid #e2e8f0}.btn-review{color:#fff;text-align:center;background:#005bac;border-radius:10px;min-height:40px;padding:10px 15px;text-decoration:none}@media (width<=900px){.table-header{display:none}.table-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:1fr;margin-bottom:12px;padding:14px}}@media (width<=640px){.requests-section,.stat-card{padding:16px}.stats-grid{grid-template-columns:1fr}.btn-review{width:100%}}.maps-grid{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:18px;min-width:0;display:grid}.maps-panel{min-width:0;overflow:hidden}.maps-panel .box-title-row{margin-bottom:14px}.maps-panel h2{margin:0}.maps-open-link{text-decoration:none}.maps-image-frame{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;width:100%;max-width:100%;overflow:auto}.maps-image-frame img{min-width:min(680px,100%);max-width:100%;height:auto;display:block}@media (width<=760px){.maps-grid{grid-template-columns:1fr}.maps-image-frame img{min-width:100%}}.login-screen{color:#e5eefb;background:radial-gradient(circle at 0 0,#38bdf847,#0000 32%),radial-gradient(circle at 100% 100%,#0ea5e92e,#0000 30%),linear-gradient(135deg,#08111f 0%,#0f172a 55%,#111827 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172ad6;border:1px solid #94a3b82e;border-radius:24px;width:min(440px,100%);min-width:0;padding:32px;box-shadow:0 30px 70px #080f1e73}.login-brand h1{margin:10px 0 8px;font-size:clamp(2rem,3vw,2.8rem);line-height:1.04}.login-brand p{color:#b5c3da;margin:0 0 24px;line-height:1.5}.login-badge{color:#7dd3fc;letter-spacing:.12em;background:#38bdf824;border:1px solid #38bdf83d;border-radius:999px;padding:6px 12px;font-size:.82rem;display:inline-flex}.login-form{gap:16px;display:grid}.login-form label{color:#d9e3f4;gap:8px;font-size:.95rem;display:grid}.login-form input{color:#f8fafc;background:#0f172af2;border:1px solid #94a3b838;border-radius:14px;outline:none;width:100%;padding:14px 16px}.login-form input:focus{border-color:#38bdf8a6;box-shadow:0 0 0 3px #38bdf81f}.login-form button{color:#04111f;cursor:pointer;background:linear-gradient(135deg,#38bdf8 0%,#0ea5e9 100%);border:none;border-radius:14px;margin-top:8px;padding:14px 16px;font-weight:700}.login-form button:disabled{opacity:.7;cursor:wait}.login-error{color:#fecaca;background:#ef44441f;border:1px solid #ef444438;border-radius:12px;padding:12px 14px}@media (width<=520px){.login-screen{align-items:stretch;padding:12px}.login-card{border-radius:8px;align-self:center;padding:22px}.login-brand h1{font-size:1.8rem}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;min-width:320px}body{color:#0f172a;background:#f5f9ff;margin:0;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}#root{width:100%;min-height:100vh}img,svg,video,canvas{max-width:100%}button,input,select,textarea{font:inherit;max-width:100%}input,select,textarea{min-width:0}button{touch-action:manipulation}a{color:inherit;text-decoration:none}@media (width<=640px){h1{font-size:clamp(1.45rem,8vw,2rem);line-height:1.15}h2{font-size:clamp(1.15rem,6vw,1.5rem);line-height:1.2}p,span,label,input,select,textarea,button{overflow-wrap:anywhere}}.dashboard-header,.mis-eventos-header,.solicitud-header,.operation-header,.perfil-header,.dashboard-header>*,.mis-eventos-header>*,.solicitud-header>*,.operation-header>*,.perfil-header>*{min-width:0}.stat-card,.resumen-card,.event-card,.operation-card,.operation-panel,.form-section,.requests-section,.perfil-card,.detalle-card,.historial-card,.map-card{max-width:100%}.stats-grid,.operation-grid,.report-cards,.mis-eventos-grid,.perfil-grid,.historial-summary,.map-grid,.table-header,.table-row,.operation-row,.operation-table-header{min-width:0}.table-header>*,.table-row>*,.operation-row>*,.operation-table-header>*{overflow-wrap:anywhere;min-width:0}@media (width<=900px){.dashboard-header,.mis-eventos-header,.solicitud-header,.operation-header,.perfil-header{flex-direction:column;gap:10px;display:flex}.mis-eventos-grid,.operation-grid,.report-cards,.perfil-grid,.historial-summary,.map-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}}@media (width<=640px){.content>*{min-width:0}.stat-card,.resumen-card,.event-card,.operation-card,.operation-panel,.form-section,.requests-section,.perfil-card,.detalle-card,.historial-card,.map-card{border-radius:8px}.stats-grid,.operation-grid,.report-cards,.mis-eventos-grid,.perfil-grid,.historial-summary,.map-grid{grid-template-columns:1fr}.resumen-card{width:100%}.submit-container,.operation-actions,.calendar-actions,.event-actions{flex-direction:column;align-items:stretch}.submit-container button,.operation-actions button,.calendar-actions button,.event-actions button,.event-actions a{width:100%}}
