:root{--bg:#f4f5f7;--text:#1f2937;--white:#fff;--border:#d1d5db;--red:#b31b1b;--radius:6px;--radius-sm:4px;--shell-topbar-bg:#fff;--shell-topbar-border:#d1d5db;--shell-topbar-accent:#b31b1b;--shell-topbar-muted:#6b7280;--shell-topbar-shadow:0 1px 2px rgba(15,23,42,.04);--shell-menu-btn-bg:#f8fafc;--shell-menu-btn-bg-hover:#f1f5f9;--shell-menu-btn-border:#cbd5e1;--shell-menu-btn-text:#334155;--shell-sidebar-bg:#fff;--shell-sidebar-border:#d1d5db;--shell-sidebar-divider:#e5e7eb;--shell-sidebar-backdrop:rgba(15,23,42,.34);--shell-sidebar-drawer-border:#cbd5e1;--shell-sidebar-category-bg:#f1f5f9;--shell-sidebar-category-border:#cbd5e1;--shell-sidebar-category-text:#1f2937;--shell-sidebar-category-open-bg:#fff;--shell-sidebar-category-open-border:#94a3b8;--shell-sidebar-item-bg:#fff;--shell-sidebar-item-border:#dbe2ea;--shell-sidebar-item-text:#374151;--shell-sidebar-item-placeholder-bg:#f8fafc;--shell-sidebar-item-placeholder-text:#6b7280;--shell-sidebar-item-active-bg:#fef2f2;--shell-sidebar-item-active-border:#fca5a5;--shell-sidebar-item-active-text:#7f1d1d;--shell-sidebar-item-placeholder-active-bg:#f1f5f9;--shell-sidebar-item-placeholder-active-border:#cbd5e1;--shell-sidebar-item-placeholder-active-text:#475569;--shell-card-bg:#fff;--shell-card-border:#d1d5db;--shell-card-shadow:0 1px 2px rgba(15,23,42,.04);--surface-1:#fff;--surface-2:#f8fafc;--surface-3:#f1f5f9;--muted-text:#6b7280;--focus-ring:rgba(179,27,27,.22);--btn-primary-bg:#b31b1b;--btn-primary-border:#991b1b;--btn-primary-hover-bg:#991b1b;--btn-primary-active-bg:#7f1d1d;--btn-primary-text:#fff;--btn-outline-bg:#fff;--btn-outline-border:#d1d5db;--btn-outline-text:#1f2937;--btn-outline-hover-bg:#f8fafc;--btn-outline-hover-border:#b8c2cf;--btn-outline-active-bg:#eef2f7;--btn-danger-bg:#fff5f5;--btn-danger-border:#fecaca;--btn-danger-text:#b91c1c;--btn-danger-hover-bg:#ffe4e6;--btn-danger-hover-border:#fca5a5;--btn-disabled-bg:#eef1f5;--btn-disabled-border:#d5dae1;--btn-disabled-text:#8893a2;--field-bg:#fff;--field-border:#cfd6df;--field-text:#1f2937;--field-placeholder:#748091;--field-hover-border:#afb8c5;--field-focus-border:#b31b1b;--field-focus-ring:rgba(179,27,27,.2);--field-disabled-bg:#f1f5f9;--field-disabled-border:#d4dae3;--field-disabled-text:#8c97a5;--table-bg:#fff;--table-border:#d9dfe8;--table-head-bg:#f8fafc;--table-row-border:#e5e7eb;--table-row-hover-bg:#f9fbff;--tab-bg:#f3f5f8;--tab-border:#d5dbe4;--tab-text:#4b5563;--tab-hover-bg:#eceff4;--tab-active-bg:#fff;--tab-active-border:#c8d1dc;--tab-active-text:#1f2937;--chip-bg:#f8fafc;--chip-border:#cfd6df;--chip-text:#334155;--alert-error-bg:#fef2f2;--alert-error-border:#fecaca;--alert-error-text:#991b1b;--alert-success-bg:#ecfdf3;--alert-success-border:#86efac;--alert-success-text:#166534;--alert-warning-bg:#fffbeb;--alert-warning-border:#fde68a;--alert-warning-text:#92400e;--alert-neutral-bg:#f8fafc;--alert-neutral-border:#e2e8f0;--alert-neutral-text:#475569;--modal-overlay-bg:rgba(15,23,42,.45);--modal-bg:#fff;--modal-border:#cbd5e1;--modal-head-bg:#fff;--modal-divider:#e5e7eb;--modal-sticky-bg:#fff}.page.portalPage[data-ui-theme=studio_grid_moderno_suave]{--bg:#f2f3f5;--text:#22262d;--white:#fff;--border:#d4d7dc;--red:#c94a4a;--shell-topbar-bg:#f8f8f9;--shell-topbar-border:#d4d7dc;--shell-topbar-accent:#9e2f2f;--shell-topbar-muted:#636b75;--shell-topbar-shadow:0 1px 2px rgba(30,20,20,.08);--shell-menu-btn-bg:#eef0f3;--shell-menu-btn-bg-hover:#e4e7eb;--shell-menu-btn-border:#c7ccd3;--shell-menu-btn-text:#3b424d;--shell-sidebar-bg:#f8f8f9;--shell-sidebar-border:#d4d7dc;--shell-sidebar-divider:#e3e5e8;--shell-sidebar-backdrop:hsla(0,9%,9%,.42);--shell-sidebar-drawer-border:#c8cdd4;--shell-sidebar-category-bg:#eceff2;--shell-sidebar-category-border:#cfd4db;--shell-sidebar-category-text:#2b313a;--shell-sidebar-category-open-bg:#fff;--shell-sidebar-category-open-border:#d99b9b;--shell-sidebar-item-bg:#fff;--shell-sidebar-item-border:#d9dce1;--shell-sidebar-item-text:#333a44;--shell-sidebar-item-placeholder-bg:#f0f2f5;--shell-sidebar-item-placeholder-text:#616a76;--shell-sidebar-item-active-bg:#f8ecec;--shell-sidebar-item-active-border:#d8a1a1;--shell-sidebar-item-active-text:#7d2525;--shell-sidebar-item-placeholder-active-bg:#eceff2;--shell-sidebar-item-placeholder-active-border:#cfd4db;--shell-sidebar-item-placeholder-active-text:#4e5866;--shell-card-bg:#fff;--shell-card-border:#d5d9df;--shell-card-shadow:0 1px 3px rgba(30,20,20,.08);--surface-1:#fff;--surface-2:#f3f4f6;--surface-3:#eceff2;--muted-text:#616a76;--focus-ring:rgba(158,47,47,.22);--btn-primary-bg:#9e2f2f;--btn-primary-border:#842626;--btn-primary-hover-bg:#842626;--btn-primary-active-bg:#6f2020;--btn-primary-text:#fff;--btn-outline-bg:#fff;--btn-outline-border:#c8cfd8;--btn-outline-text:#2b313a;--btn-outline-hover-bg:#f2f4f7;--btn-outline-hover-border:#b5bec9;--btn-outline-active-bg:#e7ebf0;--btn-danger-bg:#fdecec;--btn-danger-border:#e5b6b6;--btn-danger-text:#8c2626;--btn-danger-hover-bg:#f9e0e0;--btn-danger-hover-border:#dca2a2;--btn-disabled-bg:#eceff3;--btn-disabled-border:#d6dbe2;--btn-disabled-text:#8a93a1;--field-bg:#fff;--field-border:#c8cfd8;--field-text:#2b313a;--field-placeholder:#6c7584;--field-hover-border:#b3bcc8;--field-focus-border:#9e2f2f;--field-focus-ring:rgba(158,47,47,.2);--field-disabled-bg:#eef1f4;--field-disabled-border:#d7dde4;--field-disabled-text:#8a93a1;--table-bg:#fff;--table-border:#d6dbe2;--table-head-bg:#f1f3f6;--table-row-border:#e2e6eb;--table-row-hover-bg:#f8f1f1;--tab-bg:#eceff3;--tab-border:#d0d6de;--tab-text:#4e5866;--tab-hover-bg:#e4e8ed;--tab-active-bg:#fff;--tab-active-border:#c8cfd8;--tab-active-text:#2b313a;--chip-bg:#f0f2f5;--chip-border:#cfd4db;--chip-text:#4e5866;--alert-error-bg:#fcecec;--alert-error-border:#e6b8b8;--alert-error-text:#8c2626;--alert-success-bg:#edf9f1;--alert-success-border:#b9e3c6;--alert-success-text:#1d613f;--alert-warning-bg:#fff7ea;--alert-warning-border:#f2d39f;--alert-warning-text:#8f5a18;--alert-neutral-bg:#f1f3f6;--alert-neutral-border:#d4dae2;--alert-neutral-text:#4e5866;--modal-overlay-bg:hsla(0,9%,9%,.42);--modal-bg:#fff;--modal-border:#c8cdd4;--modal-head-bg:#fff;--modal-divider:#dee3e9;--modal-sticky-bg:#fff}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.35}.page,body{min-height:100dvh}.page{max-width:960px;margin:0 auto;padding:calc(24px + env(safe-area-inset-top, 0px)) 16px calc(24px + env(safe-area-inset-bottom, 0px))}.portalPage{max-width:1360px}.portalTopbar{background:var(--shell-topbar-bg);border:1px solid var(--shell-topbar-border);border-bottom:3px solid var(--shell-topbar-accent);border-radius:var(--radius);box-shadow:var(--shell-topbar-shadow);padding:12px 14px;margin-bottom:14px;justify-content:space-between;gap:10px;flex-wrap:wrap}.portalBrandWrap,.portalTopbar{display:flex;align-items:center}.portalBrandWrap{gap:8px;min-width:0;flex:1 1 auto}.brandLogo{width:34px;height:34px;object-fit:contain;flex-shrink:0;border-radius:6px}.portalTopbar h1{margin:0;font-size:1.18rem;line-height:1.2;white-space:normal;overflow-wrap:anywhere}.portalTopbar p{margin:0;color:var(--shell-topbar-muted);font-size:.92rem;overflow-wrap:anywhere}.portalTopbarActions{flex-shrink:0;margin-top:0;justify-content:flex-end}.portalTopbarActions .btn{min-width:124px}.rolePill{display:inline-flex;align-items:center;border:1px solid var(--chip-border);background:var(--chip-bg);color:var(--chip-text);border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:600}.rolePillBtn{cursor:pointer}.rolePillBtn:hover{background:var(--tab-hover-bg);border-color:var(--tab-active-border)}.roleViewModalBody{display:grid;grid-gap:10px;gap:10px}.roleModalControls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.roleModalControls select,.roleViewModalBody input{border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;font:inherit;background:#fff}.roleModalMode{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:4px}.roleModalMode label{display:inline-flex;gap:6px;align-items:center}.impersonationBanner{position:-webkit-sticky;position:sticky;top:8px;z-index:45;margin:0 0 10px;padding:10px 12px;border:1px solid #f59e0b;background:#fffbeb;color:#78350f;border-radius:10px;display:flex;justify-content:space-between;align-items:center;gap:12px}.menuToggleBtn{width:34px;height:34px;border:1px solid var(--shell-menu-btn-border);background:var(--shell-menu-btn-bg);color:var(--shell-menu-btn-text);border-radius:6px;font-size:1.15rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.menuToggleBtn:hover{background:var(--shell-menu-btn-bg-hover)}.menuToggleBtn:focus-visible{outline:none;border-color:var(--field-focus-border);box-shadow:0 0 0 3px var(--field-focus-ring)}.portalLayout{display:block}.sidebar{background:var(--shell-sidebar-bg);border:1px solid var(--shell-sidebar-border);border-radius:var(--radius);padding:8px}.sidebarBackdrop{position:fixed;inset:0;background:var(--shell-sidebar-backdrop);z-index:60;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebarBackdrop.show{opacity:1;pointer-events:auto}.sidebarDrawer{position:absolute;top:0;left:0;width:min(360px,90vw);height:100dvh;overflow:auto;border-radius:0;border-right:1px solid var(--shell-sidebar-drawer-border);transform:translateX(-101%);transition:transform .2s ease}.sidebarDrawer.open{transform:translateX(0)}.sidebarTop{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--shell-sidebar-divider)}.sidebarSection+.sidebarSection{margin-top:8px}.sidebarSectionSecondary{margin-top:10px;padding-top:10px;border-top:1px solid var(--shell-sidebar-divider)}.sidebarCategory{width:100%;border:1px solid var(--shell-sidebar-category-border);background:var(--shell-sidebar-category-bg);color:var(--shell-sidebar-category-text);border-radius:var(--radius-sm);padding:8px 10px;text-align:left;font-weight:700;cursor:pointer}.sidebarCategory.isOpen{border-color:var(--shell-sidebar-category-open-border);border-left:4px solid var(--red);background:var(--shell-sidebar-category-open-bg)}.sidebarItems{display:flex;flex-direction:column;gap:6px;margin-top:6px}.sidebarItem{width:100%;border:1px solid var(--shell-sidebar-item-border);background:var(--shell-sidebar-item-bg);color:var(--shell-sidebar-item-text);border-radius:var(--radius-sm);padding:8px 10px;text-align:left;cursor:pointer;font-size:.9rem}.sidebarItem.isPlaceholder{color:var(--shell-sidebar-item-placeholder-text);background:var(--shell-sidebar-item-placeholder-bg);border-style:dashed;font-style:italic}.sidebarItemRow{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.moduleBadge{min-width:22px;height:22px;padding:0 7px;border-radius:999px;border:1px solid var(--alert-error-border);background:var(--alert-error-bg);color:var(--alert-error-text);font-size:.75rem;flex-shrink:0}.badge,.chip,.moduleBadge{font-weight:700;display:inline-flex;align-items:center;justify-content:center}.badge,.chip{min-height:22px;padding:2px 9px;border-radius:999px;border:1px solid var(--chip-border);background:var(--chip-bg);color:var(--chip-text);font-size:.78rem}.sidebarItem.isActive{border-color:var(--shell-sidebar-item-active-border);background:var(--shell-sidebar-item-active-bg);color:var(--shell-sidebar-item-active-text);font-weight:700}.sidebarItem.isPlaceholder.isActive{border-color:var(--shell-sidebar-item-placeholder-active-border);background:var(--shell-sidebar-item-placeholder-active-bg);color:var(--shell-sidebar-item-placeholder-active-text)}.portalContent{min-width:0}.quickBadges{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px}.quickBadgeBtn{border:1px solid #fecaca;background:#fff;color:#1f2937;border-radius:var(--radius-sm);padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;cursor:pointer;text-align:left}.quickBadgeBtn strong{min-width:28px;height:28px;border-radius:4px;border:1px solid #fecaca;background:#fff5f5;color:#991b1b;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem}.quickBadgeBtn small{grid-column:1/-1;font-size:.78rem;color:#6b7280}.homeDashboard{border-left:4px solid var(--red)}.homeDashboard h2{font-size:1rem;margin-bottom:0}.homeAnnouncementList{display:grid;grid-gap:10px;gap:10px}.homeAnnouncementBlock{border:1px solid #e5e7eb;border-radius:var(--radius-sm);background:#fff;padding:10px}.homeAnnouncementBlockHead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.homeAnnouncementBlockHead h4{margin:0;font-size:.9rem}.homeAnnouncementBlockHead small{color:#6b7280;font-size:.78rem}.homeAnnouncementBlock textarea{min-height:88px}.internalNoticesAdminBlock{margin-top:14px;border-top:1px dashed var(--table-border);padding-top:12px}.internalNoticesModule{border-top:3px solid var(--shell-topbar-accent)}.internalNoticesModuleHead{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.internalNoticesModuleHead h2{margin:0}.internalNoticesIntro{margin-top:6px;margin-bottom:0}.internalNoticesNotice{margin-top:10px;margin-bottom:8px}.internalNoticesKpis{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:8px;gap:8px}.internalNoticesKpis article{border:1px solid var(--table-border);border-radius:8px;padding:10px;background:linear-gradient(180deg,var(--surface-1) 0,var(--surface-2) 100%)}.internalNoticesKpis span{display:block;color:var(--muted-text);font-size:.78rem}.internalNoticesKpis strong{display:block;margin-top:6px;font-size:1rem}.internalNoticeList{display:grid;grid-gap:10px;gap:10px;margin-top:10px}.internalNoticeItem{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--surface-1);padding:10px}.internalNoticeHead{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.internalNoticeBody{margin-top:8px;padding-top:8px;border-top:1px solid var(--table-row-border)}.internalNoticeMetaRow{margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.noticeMailStatusChip{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.noticeMailStatusChip.tone-neutral{border-color:var(--alert-neutral-border);background:var(--alert-neutral-bg);color:var(--alert-neutral-text)}.noticeMailStatusChip.tone-ok{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.noticeMailStatusChip.tone-error{border-color:var(--alert-error-border);background:var(--alert-error-bg);color:var(--alert-error-text)}.internalNoticeBody a,.internalNoticeMessage a{color:var(--shell-topbar-accent);word-break:break-word}.internalNoticeHistory{margin-top:8px}.internalNoticesBlockTitle{margin-top:0}.internalNoticeToggleLabel{align-items:flex-start;justify-content:flex-start;gap:6px}.internalNoticeToggleRow{display:inline-flex;align-items:center;gap:8px}.internalNoticeToggleRow input{flex:0 0 auto;margin:0}.internalNoticeCreateActions{margin-top:10px;justify-content:flex-start}.internalNoticeCreateModal{max-width:820px}.internalNoticeSpecificList{margin-top:8px;border:1px solid var(--table-border);border-radius:var(--radius-sm);max-height:220px;overflow:auto;padding:6px;background:var(--surface-1)}.internalNoticeSpecificOption{display:flex;align-items:flex-start;gap:8px;padding:6px;border-radius:var(--radius-sm);font-weight:500}.internalNoticeSpecificOption input{flex:0 0 auto;margin-top:2px}.internalNoticeHintLine{margin-top:6px}.internalNoticeActionsRow{margin-top:8px}.internalNoticeFiltersGridTopless{margin-top:0}.internalNoticeFiltersActions{justify-content:space-between;margin-top:8px;margin-bottom:0}.internalNoticeCountHint{margin:0}.internalNoticeListHint{margin-top:8px}.internalNoticeMetaHint{margin-top:4px;margin-bottom:0}.internalNoticeHeadActions{margin-top:0}.internalNoticeSummaryHint{margin-top:6px;margin-bottom:0}.internalNoticeSegmentHint{margin-top:8px;margin-bottom:0}.quickBadgeBtn:hover{filter:brightness(.98)}.topbar{background:var(--shell-topbar-bg);border:1px solid var(--shell-topbar-border);border-bottom:3px solid var(--shell-topbar-accent);border-radius:var(--radius);box-shadow:var(--shell-topbar-shadow);padding:16px;margin-bottom:16px}.topbar h1{margin:0 0 6px;font-size:1.4rem}.topbarBrand{display:flex;align-items:center;gap:10px}.topbarBrandLogo{width:34px;height:34px;object-fit:contain}.topbar p{margin:0;color:var(--shell-topbar-muted)}.card{background:var(--shell-card-bg);border:1px solid var(--shell-card-border);border-radius:var(--radius);box-shadow:var(--shell-card-shadow);padding:14px;margin-bottom:10px}.card h2{margin:0 0 8px;font-size:1.1rem}.libroTemasModule>h2{margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--table-border)}.libroCardsSection+.libroCardsSection{margin-top:14px}.materiasGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px}.materiaCard{border:1px solid var(--table-border);border-left:4px solid var(--table-row-border);border-radius:var(--radius-sm);background:var(--shell-card-bg);padding:12px;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer;color:var(--text)}.materiaCard.isToday{border-left-color:var(--shell-topbar-accent)}.materiaCard strong{font-size:1.02rem}.materiaCard span{font-size:.88rem;color:var(--muted-text)}.materiaCard em{margin-top:6px;color:var(--shell-topbar-accent);font-style:normal;font-weight:600;font-size:.84rem}.materiaCard:hover{filter:brightness(.98)}.adminDetails>summary{cursor:pointer;font-weight:700;margin-bottom:10px}.libroHeaderActions{margin-top:4px}.card ul{margin:0;padding-left:18px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.moduleHeadRow{justify-content:space-between;margin-top:0}.moduleHeadRow h2{margin:0}.moduleIntroHint{margin-top:8px}.moduleInlineFiltersRow{margin-top:0;justify-content:flex-start;gap:8px}.hintNoTop{margin-top:0}.hintNoBottom{margin-bottom:0}.hintBottomTight{margin-bottom:4px}.hintNoMargin{margin:0}.hintTopSpacing{margin-top:8px}.moduleSplitGrid{display:grid;grid-gap:10px;gap:10px}.moduleSplitGridSessions{grid-template-columns:minmax(280px,1fr) minmax(320px,2fr)}.directivaStatsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:10px;gap:10px}.directivaAbsenceGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:10px;gap:10px}.btn{border:1px solid var(--btn-outline-border);border-radius:var(--radius-sm);padding:7px 11px;font-weight:600;font:inherit;line-height:1.2;background:var(--btn-outline-bg);color:var(--btn-outline-text);transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.btn-sm{padding:6px 10px;font-size:.86rem}.btn:disabled{opacity:1;background:var(--btn-disabled-bg);border-color:var(--btn-disabled-border);color:var(--btn-disabled-text)}.btn-primary{background:var(--btn-primary-bg);border-color:var(--btn-primary-border);color:var(--btn-primary-text)}.btn-outline{background:var(--btn-outline-bg);border-color:var(--btn-outline-border);color:var(--btn-outline-text)}.btn:hover:not(:disabled){border-color:var(--btn-outline-hover-border);background:var(--btn-outline-hover-bg)}.btn:active:not(:disabled){background:var(--btn-outline-active-bg)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover-bg);border-color:var(--btn-primary-hover-bg)}.btn-primary:active:not(:disabled){background:var(--btn-primary-active-bg);border-color:var(--btn-primary-active-bg)}.btn-outline:hover:not(:disabled){background:var(--btn-outline-hover-bg);border-color:var(--btn-outline-hover-border)}.btn-outline:active:not(:disabled){background:var(--btn-outline-active-bg)}.btn.ghost{background:var(--btn-outline-bg);border-color:var(--btn-outline-border);color:var(--btn-outline-text)}.btn.ghost:hover:not(:disabled){background:var(--btn-outline-hover-bg);border-color:var(--btn-outline-hover-border)}.btn:focus-visible{outline:none;border-color:var(--field-focus-border);box-shadow:0 0 0 3px var(--field-focus-ring)}.loginPage{min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:16px}.loginHero{background:var(--white);border:1px solid var(--border);border-bottom:3px solid var(--red);border-radius:var(--radius);padding:20px 18px;text-align:center}.loginLogo{width:72px;height:72px;object-fit:contain;margin-bottom:8px}.loginHero h1{margin:0 0 6px;font-size:1.35rem}.loginHero p{margin:0;color:#6b7280}.loginPanelWrap{max-width:680px;margin:0 auto;width:100%}.loginCard{margin-bottom:0}.hint{margin-top:12px;color:var(--muted-text);font-size:.92rem}.error{color:var(--alert-error-text);background:var(--alert-error-bg);border:1px solid var(--alert-error-border);border-radius:var(--radius-sm)}.error,.ok{padding:8px 10px;font-weight:600}.ok{color:var(--alert-success-text);background:var(--alert-success-bg);border:1px solid var(--alert-success-border);border-radius:var(--radius-sm);gap:8px}.ok,.ok:before{display:inline-flex;align-items:center}.ok:before{content:"✓";width:20px;height:20px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:800;justify-content:center;animation:popIn .24s ease}.warn{color:var(--alert-warning-text);background:var(--alert-warning-bg);border:1px solid var(--alert-warning-border);border-radius:var(--radius-sm);padding:8px 10px;font-weight:600}.alertBox,.noticeBox{border:1px solid var(--alert-neutral-border);background:var(--alert-neutral-bg);color:var(--alert-neutral-text);border-radius:var(--radius-sm);padding:10px 12px;font-size:.9rem}.alertBox strong,.noticeBox strong{color:var(--text)}.inlineLoader{display:inline-flex;align-items:center;gap:8px;color:var(--muted-text);font-weight:600;padding:8px 10px;border:1px dashed var(--table-border);border-radius:var(--radius-sm);background:var(--surface-2)}.inlineLoaderLogo{border-radius:999px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes popIn{0%{transform:scale(.65);opacity:.65}to{transform:scale(1);opacity:1}}.stateEmpty,.stateError,.stateLoading,.stateSuccess{border-radius:var(--radius-sm);border:1px dashed var(--table-border);padding:12px;font-size:.9rem;background:var(--surface-2);color:var(--muted-text)}.stateError{border-style:solid;border-color:var(--alert-error-border);background:var(--alert-error-bg);color:var(--alert-error-text)}.stateSuccess{border-style:solid;border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.stateLoading{display:inline-flex;align-items:center;gap:8px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:8px;gap:8px;margin:10px 0}.kpi{border:1px solid var(--shell-card-border);border-radius:var(--radius-sm);background:var(--shell-card-bg);box-shadow:var(--shell-card-shadow);padding:8px 10px;display:flex;flex-direction:column}.kpi span{color:var(--shell-topbar-muted);font-size:.85rem}.kpi strong{font-size:1.1rem}.tableWrap{width:100%;overflow:auto;border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg)}.table,.tableWrap>table{width:100%;border-collapse:collapse;min-width:780px;background:var(--table-bg)}.table td,.table th,.tableWrap>table td,.tableWrap>table th{border-bottom:1px solid var(--table-row-border);text-align:left;padding:7px;font-size:.88rem;vertical-align:top}.table thead th,.tableWrap>table thead th{background:var(--table-head-bg);position:-webkit-sticky;position:sticky;top:0;z-index:1}.table tbody tr:hover td,.tableWrap>table tbody tr:hover td{background:var(--table-row-hover-bg)}.statsCompactTable{min-width:0;table-layout:fixed}.statsCompactTable td,.statsCompactTable th{padding:6px 7px}.statsCompactTable td:first-child,.statsCompactTable th:first-child{width:62%}.statsCompactTable td:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tableAssignments input,.tableAssignments select{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;font:inherit;background:#fff}.card-inner{margin:8px 0 14px;border:1px solid var(--shell-card-border);background:var(--surface-2)}.materiaCardsStack{display:flex;flex-direction:column}.materiaNuevaClaseCard{order:1}.materiaHistorialCard{order:2}.subtitle{margin:0 0 8px;font-size:.98rem}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.formGrid .span2{grid-column:span 2}.formGrid label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:500}.formGrid input,.formGrid select,.formGrid textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;font:inherit;font-weight:400;background:#fff}.formGrid textarea{min-height:74px;resize:vertical}.coordFiltersGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.coordFilterBlock{display:grid;grid-gap:6px;gap:6px;border:1px solid var(--table-border);background:var(--surface-1);border-radius:var(--radius-sm);padding:8px 10px}.coordFilterTitle{font-size:.82rem;font-weight:700;letter-spacing:.02em;color:var(--shell-topbar-muted)}.coordFilterBlock select{width:100%;border:1px solid var(--field-border);border-radius:var(--radius-sm);padding:7px 8px;background:var(--field-bg);font:inherit;color:var(--field-text)}.formGrid input[type=date],.specialDayForm input[type=date]{min-height:42px;font-size:16px;line-height:1.2}.formGrid input[type=date]::-webkit-date-and-time-value,.specialDayForm input[type=date]::-webkit-date-and-time-value{text-align:left}.formGrid input[type=date]::-webkit-calendar-picker-indicator,.specialDayForm input[type=date]::-webkit-calendar-picker-indicator{opacity:1}.historyList,.historySection{display:flex;flex-direction:column;gap:8px}.historyFutureGroup{border:1px solid var(--alert-neutral-border);border-radius:var(--radius-sm);background:var(--alert-neutral-bg);overflow:hidden}.historyFutureGroup>summary{cursor:pointer;padding:9px 10px;font-size:.88rem;font-weight:700;color:var(--field-focus-border)}.historyFutureBody{padding:8px;border-top:1px solid var(--alert-neutral-border);display:flex;flex-direction:column;gap:8px}.historyItem{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg);overflow:hidden}.historyItem summary{cursor:pointer;padding:9px 10px;background:var(--surface-2);font-size:.88rem;font-weight:600}.historyItem.isSpecial summary{background:var(--surface-2);color:var(--text)}.historyItem.isPendingLoad summary{background:var(--alert-warning-bg);color:var(--alert-warning-text)}.historySpecialText{font-weight:800;letter-spacing:.02em}.historyBody{padding:9px 10px}.historyGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px 12px;gap:8px 12px;font-size:.9rem}.historyGrid .span2{grid-column:span 2}.specialDayBox{margin:10px 0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px}.specialDayBox h4{margin:0 0 8px;font-size:.95rem}.specialDayForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.specialDayForm label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:600}.specialDayForm .span2{grid-column:span 2}.specialDayForm input,.specialDayForm select{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;font:inherit;font-weight:400}.btn-danger{border-color:var(--btn-danger-border);color:var(--btn-danger-text);background:var(--btn-danger-bg)}.btn-danger:hover:not(:disabled){border-color:var(--btn-danger-hover-border);background:var(--btn-danger-hover-bg)}:where(.card,.topbar,.portalTopbar,.roleModalControls,.roleViewModalBody,.tableAssignments,.formGrid,.coordFilterBlock,.specialDayForm,.miniForm,.miniFormRecreo,.tagSelectorRow,.modalBody,.neuroContextField,.att-filter-grid,.att-kiosk-panel,.att-role-builder,.att-rule-inline) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--field-border);background:var(--field-bg);color:var(--field-text);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}:where(.card,.topbar,.portalTopbar,.roleModalControls,.roleViewModalBody,.tableAssignments,.formGrid,.coordFilterBlock,.specialDayForm,.miniForm,.miniFormRecreo,.tagSelectorRow,.modalBody,.neuroContextField,.att-filter-grid,.att-kiosk-panel,.att-role-builder,.att-rule-inline) :is(input:not([type=checkbox]):not([type=radio]),select,textarea)::placeholder{color:var(--field-placeholder)}:where(.card,.topbar,.portalTopbar,.roleModalControls,.roleViewModalBody,.tableAssignments,.formGrid,.coordFilterBlock,.specialDayForm,.miniForm,.miniFormRecreo,.tagSelectorRow,.modalBody,.neuroContextField,.att-filter-grid,.att-kiosk-panel,.att-role-builder,.att-rule-inline) :is(input:not([type=checkbox]):not([type=radio]),select,textarea):hover:not(:disabled):not([readonly]){border-color:var(--field-hover-border)}:where(.card,.topbar,.portalTopbar,.roleModalControls,.roleViewModalBody,.tableAssignments,.formGrid,.coordFilterBlock,.specialDayForm,.miniForm,.miniFormRecreo,.tagSelectorRow,.modalBody,.neuroContextField,.att-filter-grid,.att-kiosk-panel,.att-role-builder,.att-rule-inline) :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus-visible{outline:none;border-color:var(--field-focus-border);box-shadow:0 0 0 3px var(--field-focus-ring)}:where(.card,.topbar,.portalTopbar,.roleModalControls,.roleViewModalBody,.tableAssignments,.formGrid,.coordFilterBlock,.specialDayForm,.miniForm,.miniFormRecreo,.tagSelectorRow,.modalBody,.neuroContextField,.att-filter-grid,.att-kiosk-panel,.att-role-builder,.att-rule-inline) :is(input:not([type=checkbox]):not([type=radio]),select,textarea):disabled{background:var(--field-disabled-bg);border-color:var(--field-disabled-border);color:var(--field-disabled-text);cursor:not-allowed}.moduleSoonText{color:var(--muted-text);font-style:italic;font-weight:700}.configReference{font-size:.88rem;color:#374151;background:#f8fafc;border:1px solid #e5e7eb;border-radius:var(--radius-sm);padding:8px 10px}.adminConfigGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.adminConfigGrid .span2{grid-column:span 2}.miniTitle{margin:0 0 8px;font-size:.92rem}.miniForm,.miniFormRecreo{display:grid;grid-gap:8px;gap:8px;margin-bottom:8px}.miniForm{grid-template-columns:1fr 120px auto}.miniFormRecreo{grid-template-columns:1fr 1fr 1.2fr 110px auto}.miniForm input,.miniFormRecreo input{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 9px;font:inherit}.miniList{flex-direction:column;gap:6px;max-height:340px;overflow:auto;border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg)}.miniList,.miniRow{display:flex;padding:8px}.miniRow{border:1px solid var(--table-row-border);border-radius:var(--radius-sm);justify-content:space-between;gap:8px;align-items:center;background:var(--surface-1)}.miniRow span{font-size:.86rem}.miniActions{display:flex;gap:6px;flex-wrap:wrap}.adjuntosList{display:flex;flex-direction:column;gap:10px}.adjuntoRow{border:1px solid var(--table-border);border-radius:var(--radius-sm);padding:10px;background:var(--table-bg)}.adjuntoHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.linkChoiceList{display:grid;grid-gap:8px;gap:8px;margin:10px 0}.linkChoice{display:grid;grid-template-columns:20px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:flex-start;border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg);padding:10px;cursor:pointer}.linkChoice input{margin-top:2px}.linkChoice span{display:grid;grid-gap:3px;gap:3px}.linkChoice small{color:var(--muted-text);line-height:1.35}.designFileMeta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.86rem}.designFinalPill{border:1px solid var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text);border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:700}.designFinalFileCol{min-width:132px}.designFinalFileCell{white-space:nowrap}.designFinalFileBtn{display:inline-flex;align-items:center;justify-content:center;min-width:104px;white-space:nowrap;line-height:1.2;text-decoration:none}.designFinalToggle{display:flex;align-items:center;gap:8px}.btn-whatsapp{border-color:var(--alert-success-border);color:var(--alert-success-text);background:var(--alert-success-bg)}.table tbody tr.designRow-danger td{background:var(--alert-error-bg)}.table tbody tr.designRow-warning td{background:var(--alert-warning-bg)}.table tbody tr.designRow-neutral td{background:var(--alert-neutral-bg)}.table tbody tr.designRow-muted td{background:var(--surface-2);color:var(--shell-topbar-muted)}.evalWeekGridWrap{width:100%;overflow-x:auto;padding-bottom:4px}.evalCalendarSplit{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);grid-gap:10px;gap:10px}.evalDayColNarrow{min-height:260px;max-height:540px}.evalWeekGrid{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));grid-gap:10px;gap:10px;min-width:1120px;align-items:stretch}.evalDayCol{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg);min-height:220px;max-height:540px;overflow:hidden}.evalDayCol,.evalDayHead{display:flex;flex-direction:column}.evalDayHead{border-bottom:1px solid var(--table-row-border);padding:8px 10px;background:var(--table-head-bg);gap:2px}.evalDayDateLabel{display:flex;flex-direction:column;gap:1px;line-height:1.2}.evalDayDateLabel span{color:var(--shell-topbar-muted);font-size:.78rem;font-weight:600}.evalDayBody{gap:8px;overflow:auto}.evalDayBody,.evalItem{padding:8px;display:flex;flex-direction:column}.evalItem{border:1px solid var(--table-row-border);border-radius:var(--radius-sm);background:var(--table-bg);gap:4px}.evalItemCompact{width:100%;text-align:left;cursor:pointer;font:inherit}.evalItemCompact:hover{filter:brightness(.98)}.evalItem.isCancelled{background:var(--alert-neutral-bg);border-color:var(--alert-neutral-border);opacity:.9}.evalItem.isPending{background:var(--alert-warning-bg);border-color:var(--alert-warning-border)}.evalItem.isConfirmed{background:var(--alert-success-bg);border-color:var(--alert-success-border)}.evalItem.isPast{background:var(--surface-2);border-color:var(--table-row-border)}.reservationStatus{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:2px 8px;font-size:.78rem;font-weight:600;line-height:1.25}.reservationStatus--pending{background:var(--alert-warning-bg);border-color:var(--alert-warning-border);color:var(--alert-warning-text)}.reservationStatus--confirmed{background:var(--alert-success-bg);border-color:var(--alert-success-border);color:var(--alert-success-text)}.reservationStatus--neutral{background:var(--alert-neutral-bg);border-color:var(--alert-neutral-border);color:var(--alert-neutral-text)}.evalItemHead{display:flex;justify-content:space-between;gap:8px;font-size:.85rem}.evalItemHead span{text-align:right}.evalItemHead span,.evalItemTema{overflow-wrap:anywhere;word-break:break-word}.evalItemTema{font-size:.88rem}.evalItemMeta{font-size:.8rem;color:var(--shell-topbar-muted);overflow-wrap:anywhere;word-break:break-word}.evaluationsHistoryGrid,.evaluationsHistoryStack{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.evaluationsHistoryBlock{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg);padding:10px;display:grid;grid-gap:8px;gap:8px}.evaluationsHistoryHead{display:flex;align-items:center;justify-content:space-between;gap:8px}.evalHistoryItem{border:1px solid var(--table-row-border);border-radius:var(--radius-sm);padding:8px;display:grid;grid-gap:4px;gap:4px;background:var(--surface-1)}.evalHistoryItemCancelled{background:var(--alert-neutral-bg);border-color:var(--alert-neutral-border)}.evalHistoryItemTop{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;flex-wrap:wrap}.evalHistoryCancelReason{font-size:.82rem;color:var(--shell-topbar-muted)}.evalHistoryTableWrap{max-height:380px}.evalHistoryTable td,.evalHistoryTable th{vertical-align:top}.evalHistoryTable td{overflow-wrap:anywhere;word-break:break-word}.evalOverlapTableWrap{max-height:360px}.evalOverlapTable td,.evalOverlapTable th{vertical-align:top}.evalOverlapRowPending td{background:var(--alert-error-bg);border-bottom-color:var(--alert-error-border)}.evalOverlapRowAck td{background:var(--alert-neutral-bg);border-bottom-color:var(--alert-neutral-border)}.evalOverlapDate,.evalOverlapItems{display:grid;grid-gap:4px;gap:4px}.evalOverlapDate span,.evalOverlapItems span{color:var(--shell-topbar-muted);font-size:.82rem;overflow-wrap:anywhere;word-break:break-word}.evalHistoryFiltersGrid{margin-bottom:8px}.evalHistoryModalList{display:grid;grid-gap:8px;gap:8px;max-height:52vh;overflow:auto;padding-right:2px}.evalHistoryPager{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;flex-wrap:wrap}.chatPanel{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg);min-height:180px;max-height:420px;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.chatMsg{border:1px solid var(--table-row-border);border-radius:var(--radius-sm);padding:8px 10px;max-width:90%;background:var(--surface-1)}.pendientesHeader{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.portalPendingTotals{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.portalPendingTotals>div{border:1px solid #e5e7eb;border-radius:var(--radius-sm);background:#fff;padding:6px 10px;font-size:.88rem}.portalModuleCounters{margin-bottom:10px}.tabRow{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px;background:var(--tab-bg);border:1px solid var(--tab-border);border-radius:999px;padding:4px;width:-moz-fit-content;width:fit-content;max-width:100%}.tabRow .btn,.tabRow button:not(.btnLine):not(.btnTiny){border-color:transparent;background:transparent;color:var(--tab-text)}.tabRow .btn:hover:not(:disabled),.tabRow button:not(.btnLine):not(.btnTiny):hover:not(:disabled){border-color:transparent;background:var(--tab-hover-bg);color:var(--tab-active-text)}.tabBtnActive{border-color:var(--tab-active-border)!important;color:var(--tab-active-text)!important;background:var(--tab-active-bg)!important;box-shadow:var(--shell-card-shadow)}.moduleTabActions{margin-top:4px}.coordinationModuleShell,.coordinationPanel,.designRequestsModule,.evaluationsModule,.executiveSummaryModule,.geminiUsageModule,.globalThemeAdminModule,.internalNoticesModule,.libroTemasModule,.maintenanceAdminModule,.maintenanceRequestsShell,.neuroReportsModule,.planificacionesModule,.printRequestsModule,.rechazosMesModule,.reimbursementsAdminModule,.reportsModule,.reservationsModule,.statisticsModule,.supportTicketsModule,.usersAdminModule{border-top:3px solid var(--shell-topbar-accent)}.coordinationModuleShell .card,.coordinationPanel .card,.designRequestsModule .card,.evaluationsModule .card,.executiveSummaryModule .card,.geminiUsageModule .card,.internalNoticesModule .card,.libroTemasModule .card,.maintenanceRequestsShell .card,.neuroReportsModule .card,.planificacionesModule .card,.printRequestsModule .card,.rechazosMesModule .card,.reimbursementsAdminModule .card,.reportsModule .card,.reservationsModule .card,.statisticsModule .card,.supportTicketsModule .card{border-color:var(--shell-card-border);background:var(--shell-card-bg)}.pedagogicalFiltersRow{margin-top:12px;margin-bottom:14px;padding:10px 12px;border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--surface-2);gap:14px}.planificacionesModalCard{width:min(1100px,100%);margin:0}.planificacionesModalHeadActions{justify-content:space-between;align-items:center}.planificacionesModalHeadActions h3{margin:0}.planificacionesTimelinePanel{max-height:320px;overflow-y:auto;border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--table-bg);padding:10px}.planificacionesTimelineItem{padding:8px 0;border-bottom:1px solid var(--table-row-border)}.planificacionesTimelineItem:last-child{border-bottom:0}.planificacionesTimelineInput{min-width:min(380px,100%);flex:1 1}.planificacionesHistoryTable{table-layout:fixed;width:100%}.planificacionesAssetLink{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planStatusChip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:2px 8px;font-size:.78rem;font-weight:700;line-height:1.25}.planStatusChip--missing{background:var(--alert-error-bg);border-color:var(--alert-error-border);color:var(--alert-error-text)}.planStatusChip--delivered{background:var(--alert-warning-bg);border-color:var(--alert-warning-border);color:var(--alert-warning-text)}.planStatusChip--supervised{background:var(--alert-success-bg);border-color:var(--alert-success-border);color:var(--alert-success-text)}.cardError,.cardOk{border-radius:var(--radius-sm);border:1px solid transparent;padding:8px 10px;font-weight:600}.cardError{border-color:var(--alert-error-border);background:var(--alert-error-bg);color:var(--alert-error-text)}.cardOk{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.neuroReportsDocenteSelect{min-width:280px}.neuroReportsTableGap{margin-bottom:10px}.neuroReportsPromptTextarea{min-height:320px}.neuroReportsModalPager{justify-content:space-between}.purchasesTabsRow{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:1px solid #dbe5ef;border-radius:999px;padding:4px;width:-moz-fit-content;width:fit-content;max-width:100%}.purchasesTabBtn{border:0;border-radius:999px;background:transparent;color:#475569;font-weight:700;padding:8px 14px;cursor:pointer;transition:all .18s ease}.purchasesTabBtn:hover{color:#0f172a;background:#e2e8f0}.purchasesTabBtnActive{background:#991b1b;color:#fff;box-shadow:0 2px 6px rgba(15,23,42,.18)}.purchasesTabBtnActive:hover{background:#7f1d1d;color:#fff}.purchasesKpiGrid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.purchasesKpiCard{background:#f8fafc;border-color:#dbe5ef}.purchasesPrimaryBlock{border:1px solid #c7d2fe;background:linear-gradient(180deg,#f8faff,#fff 42%)}.purchasesSecondaryBlock{border:1px solid #d1d5db;background:#fff}.purchasesBlockHead{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.nuevaClaseFormGrid{background:#f8fafc;padding:10px}.nuevaClaseFormGrid,.nuevaClaseFormGrid label{border:1px solid #e5e7eb;border-radius:var(--radius-sm)}.nuevaClaseFormGrid label{background:#fff;padding:8px}.modalOverlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:flex;align-items:flex-start;justify-content:center;min-height:100vh;min-height:100dvh;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;padding:calc(16px + env(safe-area-inset-top, 0px)) 16px calc(16px + env(safe-area-inset-bottom, 0px));z-index:50}.modalCard{width:min(620px,100%);background:var(--modal-bg);border:1px solid var(--modal-border);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;min-height:0;overflow:hidden;-webkit-overflow-scrolling:touch}.modalCard,.modalCardWide{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}.modalCardWide{width:min(980px,100%);overflow:hidden}.modalCardCoordination{width:min(1160px,100%)}.modalHead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--modal-head-bg);border-bottom:1px solid var(--modal-divider);padding-bottom:6px}.modalHead h4{margin:0}.configStatusRow{min-height:24px;margin-bottom:6px}.configStatusRow .error,.configStatusRow .hint{margin:0}.modalBody{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-right:2px}.modalBody .formGrid,.modalBody .historyGrid,.modalBody .specialDayForm,.modalBody .tableWrap,.modalBody label{min-width:0}.modalBody input,.modalBody select,.modalBody textarea{max-width:100%}.actions.modalActionsSticky{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;background:var(--modal-sticky-bg);border-top:1px solid var(--modal-divider);margin-top:10px;padding-top:8px;padding-bottom:4px}.roleChecklist{border:1px solid #e5e7eb;border-radius:var(--radius-sm);padding:10px;background:#fff}.roleChecklistGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:8px;gap:8px;margin-top:8px}.roleChecklistGrid label{display:flex;align-items:center;gap:6px;font-size:.88rem}.usersAdminFiltersRow{align-items:center}.usersAdminSearchInput{width:100%;max-width:360px}.usersAdminRowActions{margin-top:0}.usersAdminStatusChip{min-width:78px}.usersAdminStatusChip.isActive{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.usersAdminStatusChip.isInactive{border-color:var(--alert-neutral-border);background:var(--alert-neutral-bg);color:var(--alert-neutral-text)}.maintenanceAdminFormGrid{margin-top:8px}.maintenanceAdminStatusChip{min-width:84px}.maintenanceAdminStatusChip.isActive{border-color:var(--alert-warning-border);background:var(--alert-warning-bg);color:var(--alert-warning-text)}.maintenanceAdminStatusChip.isInactive{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.geminiUsageHeadActions{margin-top:0}.geminiUsageFormulaHint{margin-top:4px}.geminiUsageTabs{margin-top:10px}.geminiUsageFiltersRow{margin-top:8px}.geminiUsageFiltersRow>label{display:flex;flex-direction:column;gap:6px;min-width:150px}.globalThemeAdminFormGrid{margin-top:8px}.globalThemeAdminDetailHint{margin:6px 0 0}.executiveSummaryPanel{display:grid;grid-gap:12px;gap:12px}.executiveSummaryHead{align-items:flex-start;gap:12px;margin-top:0}.executiveSummaryHeadCopy{display:grid;grid-gap:6px;gap:6px;min-width:min(320px,100%)}.executiveSummaryHeadActions{margin-top:0}.executiveSummaryRoleHint{margin-top:2px}.executiveSummaryError{margin:0;border:1px solid var(--alert-error-border);border-radius:var(--radius-sm);background:var(--alert-error-bg);color:var(--alert-error-text);padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.executiveSummaryError p{margin:0}.executiveSummaryKpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:10px;gap:10px}.executiveSummaryKpiCard{border:1px solid var(--shell-card-border);border-radius:12px;padding:10px 12px;background:linear-gradient(180deg,var(--shell-card-bg),var(--surface-2));box-shadow:var(--shell-card-shadow);display:grid;grid-gap:4px;gap:4px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.executiveSummaryKpiCard.isDanger{border-color:var(--alert-error-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--alert-error-bg))}.executiveSummaryKpiCard.isWarning{border-color:var(--alert-warning-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--alert-warning-bg))}.executiveSummaryKpiCard:hover{border-color:var(--shell-topbar-accent);transform:translateY(-1px)}.executiveSummaryKpiCard:focus-within{border-color:var(--field-focus-border);box-shadow:0 0 0 3px var(--field-focus-ring),var(--shell-card-shadow)}.executiveSummaryKpiCard span{font-size:12px;color:var(--muted-text)}.executiveSummaryKpiCard strong{font-size:1.5rem;line-height:1;color:var(--text)}.executiveSummaryTabs{margin:0}.executiveSummaryTab{white-space:nowrap}.executiveSummaryFilters{border:1px solid var(--shell-card-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--surface-2));box-shadow:var(--shell-card-shadow);transition:border-color .16s ease,box-shadow .16s ease}.executiveSummaryFilters:focus-within{border-color:var(--field-focus-border);box-shadow:0 0 0 3px var(--field-focus-ring),var(--shell-card-shadow)}.executiveSummaryFiltersGrid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.executiveSummaryFilterField{display:grid;grid-gap:6px;gap:6px;font-size:13px;font-weight:600;color:var(--text)}.executiveSummaryFilterField input,.executiveSummaryFilterField select{width:100%;min-height:38px;border-radius:var(--radius-sm);border:1px solid var(--field-border);background:var(--field-bg);color:var(--field-text);padding:0 10px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.executiveSummaryFilterField input::placeholder{color:var(--field-placeholder)}.executiveSummaryFilterField select{cursor:pointer}.executiveSummaryFilterField input:hover,.executiveSummaryFilterField select:hover{border-color:var(--field-hover-border);background:var(--surface-2)}.executiveSummaryFilterField input:focus,.executiveSummaryFilterField select:focus{outline:none;border-color:var(--field-focus-border);box-shadow:0 0 0 3px var(--field-focus-ring);background:var(--field-bg)}.executiveSummaryFiltersActions{margin-top:10px}.executiveSummaryStaticScope{display:grid;grid-gap:6px;gap:6px;padding:10px;border-radius:var(--radius-sm);border:1px dashed var(--table-border);background:var(--surface-2);min-height:72px}.executiveSummaryStaticScope span{font-size:12px;color:var(--muted-text)}.executiveSummaryStaticScope strong{font-size:14px;color:var(--text)}.executiveSummaryWarnings{border-color:var(--alert-warning-border);border-left:4px solid var(--red);background:var(--alert-warning-bg)}.executiveSummaryWarnings .subtitle{margin:0;color:var(--alert-warning-text)}.executiveSummaryWarnings ul{margin:8px 0 0;padding-left:18px;display:grid;grid-gap:4px;gap:4px;color:var(--alert-warning-text)}.executiveSummaryList{display:grid;grid-gap:10px;gap:10px}.executiveSummaryItem{border:1px solid var(--table-border);border-radius:12px;background:var(--shell-card-bg);box-shadow:var(--shell-card-shadow);padding:12px;display:grid;grid-gap:8px;gap:8px}.executiveSummaryItem.tone-danger{border-left:4px solid var(--alert-error-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--alert-error-bg))}.executiveSummaryItem.tone-warning{border-left:4px solid var(--alert-warning-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--alert-warning-bg))}.executiveSummaryItem.tone-info{border-left:4px solid var(--tab-active-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--surface-2))}.executiveSummaryItem.tone-success{border-left:4px solid var(--alert-success-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--alert-success-bg))}.executiveSummaryItem.tone-neutral{border-left:4px solid var(--alert-neutral-border);background:linear-gradient(180deg,var(--shell-card-bg),var(--alert-neutral-bg))}.executiveSummaryItemTop{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.executiveSummaryModulePill{border-radius:999px;border:1px solid var(--chip-border);background:var(--chip-bg);color:var(--chip-text);font-weight:600}.executiveSummaryModulePill,.executiveSummaryStatus{display:inline-flex;align-items:center;padding:4px 8px;font-size:12px}.executiveSummaryStatus{border-radius:999px;border:1px solid transparent;font-weight:700}.executiveSummaryStatus.tone-danger{border-color:var(--alert-error-border);background:var(--alert-error-bg);color:var(--alert-error-text)}.executiveSummaryStatus.tone-warning{border-color:var(--alert-warning-border);background:var(--alert-warning-bg);color:var(--alert-warning-text)}.executiveSummaryStatus.tone-info{border-color:var(--tab-active-border);background:var(--surface-2);color:var(--text)}.executiveSummaryStatus.tone-success{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.executiveSummaryStatus.tone-neutral{border-color:var(--alert-neutral-border);background:var(--alert-neutral-bg);color:var(--alert-neutral-text)}.executiveSummaryItem h3{margin:0;font-size:1rem;color:var(--text)}.executiveSummaryItem p{margin:0;color:var(--muted-text)}.executiveSummaryMeta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted-text)}.executiveSummaryItemActions{display:flex;justify-content:flex-end}.executiveSummaryEmptyState,.executiveSummaryEmptyState .stateEmpty{margin:0}.rechazosTabs{margin-top:10px}.rechazosCardBlock{margin-top:12px}.rechazosTrackingHeader .subtitle{margin:0}.rechazosFormGrid{margin-top:8px}.rechazosDangerValue{color:var(--alert-error-text);font-weight:700}.rechazosTableGap{margin-top:8px}.rechazosBlocks{margin-top:12px;display:grid;grid-gap:10px;gap:10px}.rechazosBlockCard{border:1px solid var(--table-border);border-left:5px solid var(--shell-topbar-accent)}.rechazosBlockHead{justify-content:space-between;margin-top:0;align-items:flex-start}.rechazosBlockCode{margin:0}.rechazosBlockSummary{margin:4px 0 0}.rechazosStatusChip{min-width:132px;justify-content:center}.rechazosStatusChip.isNotified{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.rechazosStatusChip.isPending{border-color:var(--alert-neutral-border);background:var(--alert-neutral-bg);color:var(--alert-neutral-text)}.rechazosBlockActions{margin-top:8px;align-items:center}.rechazosDangerCell{color:var(--alert-error-text);font-weight:700}.reimbursementsCountChip{min-width:112px;justify-content:center}.reimbursementsFiltersCard{padding:10px;margin-bottom:10px}.reimbursementsFiltersCard .subtitle{margin:0 0 8px}.reimbursementsFilterActions{margin-top:8px}.reimbursementsStatusChip{justify-content:center;text-transform:uppercase;letter-spacing:.01em;font-size:.74rem;font-weight:700}.reimbursementsStatusChip.isWarning{border-color:var(--alert-warning-border);background:var(--alert-warning-bg);color:var(--alert-warning-text)}.reimbursementsStatusChip.isInfo{border-color:var(--table-border);background:var(--surface-2);color:var(--text)}.reimbursementsStatusChip.isSuccess{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.reimbursementsStatusChip.isDanger{border-color:var(--alert-error-border);background:var(--alert-error-bg);color:var(--alert-error-text)}.reimbursementsFlagChip{min-width:52px;justify-content:center}.reimbursementsFlagChip.isYes{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.reimbursementsFlagChip.isNo{border-color:var(--alert-neutral-border);background:var(--alert-neutral-bg);color:var(--alert-neutral-text)}.reimbursementsDetailCard{padding:10px;margin-top:8px}.reimbursementsDetailCard:first-child{margin-top:0}.reimbursementsMetaRow{display:flex;flex-wrap:wrap;gap:10px}.reimbursementsDetailText{margin:8px 0 0}.reimbursementsActionRow,.reimbursementsRejectBlock{margin-top:8px}.reimbursementsRejectLabel{display:block}.reimbursementsRejectLabel textarea{margin-top:6px}.reimbursementsInlineActions{margin-top:8px}.reimbursementsList{margin-top:6px;margin-bottom:0}.reimbursementsMessageList{margin-bottom:8px;display:grid;grid-gap:8px;gap:8px}.reimbursementsMessageItem{border:1px solid var(--table-row-border);border-radius:var(--radius-sm);background:var(--surface-2);padding:8px}.reimbursementsMessageMeta{font-size:12px;color:var(--muted-text);margin-bottom:4px}.reimbursementsAttachmentRow{margin-top:8px}.reimbursementsAttachmentRow,.tagSelectorRow{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tagSelectorRow select{min-width:260px;flex:1 1 260px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 9px;font:inherit;background:#fff}.selectedTags{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.selectedTag{display:inline-flex;align-items:center;gap:6px;background:var(--chip-bg);padding:4px 9px;font-size:.84rem;max-width:100%;overflow-wrap:anywhere}.selectedTag,.selectedTag button{border:1px solid var(--chip-border);color:var(--chip-text);border-radius:999px}.selectedTag button{background:var(--surface-1);width:18px;height:18px;line-height:1;cursor:pointer;padding:0}.selectedTag button:hover{background:var(--tab-hover-bg)}.purchaseStatusBadge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 10px;border-radius:999px;border:1px solid transparent;font-size:.78rem;font-weight:700;letter-spacing:.01em;text-transform:uppercase;white-space:nowrap}.purchaseStatusBadge--warning{background:#fff7ed;border-color:#fdba74;color:#9a3412}.purchaseStatusBadge--info{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.purchaseStatusBadge--success{background:#ecfdf5;border-color:#86efac;color:#166534}.purchaseStatusBadge--danger{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.purchaseStatusBadge--neutral{background:#f8fafc;border-color:#cbd5e1;color:#475569}.chatMsg>strong{display:block;margin-bottom:4px;font-size:.82rem}.chatTimestamp{display:block;margin-bottom:3px;color:#64748b;font-size:.74rem}.chatMsg p{margin:0;white-space:pre-wrap}.chatMd p{margin:0 0 8px;white-space:pre-wrap}.chatMd p:last-child{margin-bottom:0}.chatMd ol,.chatMd ul{margin:0 0 8px 18px;padding:0}.chatMd li{margin:0 0 4px}.chatMd li:last-child{margin-bottom:0}.chatMd strong{display:inline;margin:0;font-size:inherit}.chatMd em{font-style:italic}.chatMd code{background:rgba(15,23,42,.08);border-radius:4px;padding:0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.92em}.neuroContextPanel{display:flex;flex-direction:column;gap:10px}.neuroContextGrid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));grid-gap:10px;gap:10px}.neuroContextGrid.isDisabled{opacity:.55}.neuroContextField{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:600}.neuroContextField select{font-weight:500}.neuroContextFieldFull{width:100%}.neuroContextCheck{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;font-weight:500;margin:0}.neuroContextCheck input[type=checkbox]{margin:0}.neuroContextHint{margin:2px 0 0}.chatAttachmentMeta{font-size:.84rem}.chatMsg.isUser{margin-left:auto;background:var(--alert-neutral-bg)}.chatMsg.isAssistant{margin-right:auto;background:var(--alert-error-bg);border-color:var(--alert-error-border)}.ticketStatePill{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:2px 8px;font-size:.76rem;font-weight:700;line-height:1.2}.ticketStatePill--active{background:var(--alert-error-bg);border-color:var(--alert-error-border);color:var(--alert-error-text)}.ticketStatePill--review{background:var(--alert-warning-bg);border-color:var(--alert-warning-border);color:var(--alert-warning-text)}.ticketStatePill--closed{background:var(--alert-success-bg);border-color:var(--alert-success-border);color:var(--alert-success-text)}.ticketStatePill--red{background:var(--alert-error-bg);border-color:var(--alert-error-border);color:var(--alert-error-text)}.ticketStatePill--yellow{background:var(--alert-warning-bg);border-color:var(--alert-warning-border);color:var(--alert-warning-text)}.ticketStatePill--green{background:var(--alert-success-bg);border-color:var(--alert-success-border);color:var(--alert-success-text)}.ticketStateChipNeutral{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--card-border,#d1d5db);background:transparent;color:var(--text,#1f2937);padding:2px 8px;font-size:.78rem;font-weight:500;line-height:1.2}.maintenanceCollapseSummary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:.95rem}.maintenanceCollapseSummary::-webkit-details-marker{display:none}.maintenanceCollapseSummary:before{content:"▸";display:inline-block;width:.9em;font-size:.85em;transition:transform .15s ease;opacity:.7}details[open]>.maintenanceCollapseSummary:before{transform:rotate(90deg)}.statsBars{display:flex;flex-direction:column;gap:10px}.statsBarRow{display:grid;grid-template-columns:118px minmax(0,1fr) 42px;align-items:center;grid-gap:10px;gap:10px}.statsBarLabel{font-size:.84rem;color:var(--muted-text);white-space:nowrap}.statsBarTrack{width:100%;height:8px;border:1px solid var(--table-border);background:var(--surface-2);overflow:hidden}.statsBarFill{height:100%;background:var(--shell-topbar-accent)}.statsBarFillAlt{background:color-mix(in srgb,var(--alert-success-text) 88%,var(--shell-topbar-accent) 12%)}.statsBarValue{text-align:right;font-size:.84rem}.statsMonthGroup{margin-bottom:8px}.statsMonthLabel{margin:0}.statsYearSeparator td{border-top:2px solid var(--text)!important}.coordinationTabsRow{display:flex;flex-wrap:wrap}.coordinationTabBtn{white-space:nowrap}.coordinationPanel{overflow-x:hidden}.coordDesktopTableOnly{display:block}.coordMobileCardsOnly{display:none}.coordCardsList{display:grid;grid-gap:10px;gap:10px}.coordDataCard{border:1px solid var(--table-border);background:var(--shell-card-bg);border-radius:var(--radius-sm);padding:10px;display:grid;grid-gap:6px;gap:6px}.coordDataCard h4{margin:0;font-size:.96rem}.coordDataCard p{margin:0;font-size:.88rem}.coordCardActions{margin-top:4px;display:flex;gap:8px}@media (max-width:768px){.portalTopbar{align-items:stretch;gap:10px;flex-direction:column}.portalTopbar h1{font-size:1.02rem;line-height:1.2;max-width:100%}.portalTopbar p{max-width:100%}.portalBrandWrap{width:100%;min-width:0;flex:1 1 auto}.portalTopbarActions{width:100%;justify-content:flex-start;margin-top:0;flex-shrink:1;flex-wrap:wrap}.portalTopbarActions .btn{min-width:0;padding:7px 9px}.rolePill{width:100%;justify-content:center;max-width:220px}.impersonationBanner,.roleModalControls,.roleModalMode{flex-direction:column;align-items:flex-start}.formGrid{grid-template-columns:1fr}.formGrid .span2{grid-column:span 1}.historyGrid{grid-template-columns:1fr}.historyGrid .span2{grid-column:span 1}.specialDayForm{grid-template-columns:1fr}.specialDayForm .span2{grid-column:span 1}.adminConfigGrid{grid-template-columns:1fr}.adminConfigGrid .span2{grid-column:span 1}.moduleSplitGridSessions{grid-template-columns:1fr}.geminiUsageHeadActions{width:100%;justify-content:flex-start}.miniForm,.miniFormRecreo{grid-template-columns:1fr}.miniRow{flex-direction:column;align-items:flex-start}.evalWeekGrid{min-width:0}.evalCalendarSplit,.evalWeekGrid,.evaluationsHistoryGrid{grid-template-columns:1fr}.evalDayCol,.evalDayColNarrow{max-height:none}.evalDayBody{overflow:visible}.evalHistoryPager{flex-direction:column;align-items:stretch}.evalHistoryPager .btn{width:100%}.quickBadges{grid-template-columns:1fr}.quickBadgeBtn{padding:8px 10px}.homeAnnouncementBlockHead,.internalNoticeHead,.internalNoticesModuleHead{flex-direction:column;align-items:flex-start}.internalNoticeHead .actions,.internalNoticesModuleHead .btn{width:100%}.internalNoticeHead .actions .btn{flex:1 1 auto}.internalNoticeMetaRow{gap:6px}.internalNoticeMetaRow,.moduleHeadRow{align-items:flex-start;flex-direction:column}.moduleHeadRow .btn,.moduleInlineFiltersRow{width:100%}.executiveSummaryHead{gap:10px}.executiveSummaryHeadActions{width:100%}.executiveSummaryHeadActions .btn{flex:1 1 auto}.executiveSummaryTabs{width:100%;justify-content:space-between}.executiveSummaryTab{flex:1 1 auto;text-align:center;padding-left:10px;padding-right:10px}.executiveSummaryFiltersGrid{grid-template-columns:1fr}.executiveSummaryItemActions{justify-content:stretch}.executiveSummaryItemActions .btn{width:100%}.rechazosBlockHead{flex-direction:column;align-items:flex-start;gap:8px}.rechazosStatusChip{width:100%;justify-content:flex-start}.reimbursementsAttachmentRow{align-items:stretch}.reimbursementsAttachmentRow .btn,.reimbursementsAttachmentRow input[type=file]{width:100%}.neuroReportsDocenteSelect{min-width:0;width:100%}.directivaAbsenceGrid,.directivaStatsGrid{grid-template-columns:1fr}.loginHero{padding:16px 14px}.loginLogo{width:64px;height:64px}.loginHero h1{font-size:1.15rem}.statsBarRow{grid-template-columns:92px minmax(0,1fr) 36px;gap:8px}.modalOverlay{padding:calc(8px + env(safe-area-inset-top, 0px)) 8px calc(8px + env(safe-area-inset-bottom, 0px))}.modalCard,.modalCardWide{width:100%;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);border-radius:8px;padding:8px}.modalHead{margin-bottom:8px}.modalBody{padding-bottom:calc(8px + env(safe-area-inset-bottom, 0px))}.coordinationModuleShell{gap:10px!important}.coordinationTabsRow{display:grid;grid-template-columns:1fr;grid-gap:8px!important;gap:8px!important;align-items:stretch!important}.coordinationTabsRow .coordinationTabBtn{width:100%;text-align:left;white-space:normal;line-height:1.25}.purchasesTabsRow{width:100%;border-radius:14px;padding:6px}.purchasesTabBtn{width:100%;text-align:left;border-radius:10px}.purchasesKpiGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.purchasesBlockHead{flex-direction:column;align-items:flex-start}.coordinationPanel .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.coordDesktopTableOnly{display:none!important}.coordMobileCardsOnly{display:block}.coordCardActions .btn{width:100%}.coordinationPanel .coordFiltersGrid{grid-template-columns:1fr;gap:8px}.coordinationPanel .table{min-width:640px}.coordinationManagementPanel .coordMgmtAreaEditGrid,.coordinationManagementPanel .coordMgmtAreaHeaderGrid,.coordinationManagementPanel .coordMgmtCreateGrid,.coordinationManagementPanel .coordMgmtOverridesGrid,.coordinationManagementPanel .coordMgmtRulesGrid{grid-template-columns:1fr!important;align-items:stretch!important}.coordinationManagementPanel .coordMgmtAreaEditGrid label{justify-content:flex-start}.modalCardCoordination .modalHead{align-items:flex-start;flex-wrap:wrap;gap:6px}.modalCardCoordination .modalHead h4{font-size:.96rem;line-height:1.25;overflow-wrap:anywhere;flex:1 1 100%}.modalCardCoordination .modalHead .btn{width:100%}.modalCardCoordination .modalBody{padding-right:0}.planificacionesModalHeadActions{flex-direction:column;align-items:flex-start}.planificacionesModalHeadActions h3{font-size:.98rem;line-height:1.28}.planificacionesTimelineInput{min-width:100%}.neuroContextGrid{grid-template-columns:1fr}}@media (max-width:520px){.coordinationPanel .kpis{grid-template-columns:1fr}}code{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:1px 4px}.attendanceModule{border-left:4px solid #b31b1b}.attendanceModule .kpi{min-height:88px}.attendanceModule .kpi-clickable{cursor:pointer;text-align:left;width:100%;border:1px solid #e5e7eb}.attendanceModule .kpi-static{cursor:default}.attendanceModule .kpi-danger{background:linear-gradient(160deg,#fff5f5,#ffe4e6);border-color:#fecaca}.attendanceModule .kpi-warning{background:linear-gradient(160deg,#fffbeb,#fef3c7);border-color:#fde68a}.att-grid{display:grid;grid-gap:10px;gap:10px}.att-grid-main{grid-template-columns:1.15fr .85fr}.att-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:10px;gap:10px;margin-bottom:8px}.att-filter-grid label,.att-kiosk-panel label{display:flex;flex-direction:column;gap:6px;font-size:.9rem}.att-kiosk-split{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.att-kiosk-panel{border:1px solid #e5e7eb;border-radius:var(--radius-sm);padding:10px;background:#fff;min-width:0}.att-kiosk-qr{display:grid;align-content:start;grid-gap:8px;gap:8px}.att-kiosk-kind{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.att-kiosk-lookup{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:flex-end}.att-kiosk-qr-box{margin-top:10px;border:1px solid #e5e7eb;border-radius:var(--radius-sm);background:#fff;padding:10px}.att-qr-image{width:220px;max-width:100%;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.att-qr-box{border:1px dashed #cbd5e1;border-radius:8px;padding:20px 10px;text-align:center;font-size:1.1rem;font-weight:700;letter-spacing:.03em;background:#f8fafc}.att-mobile-block,.att-photo-box{margin-top:10px;border:1px solid #e5e7eb;border-radius:var(--radius-sm);padding:10px;background:#fff}.att-location-notice{border:1px solid #fecaca;background:linear-gradient(145deg,#fff5f5,#fff1f2);border-radius:10px;padding:10px 12px;margin-bottom:10px;color:#7f1d1d;font-size:.9rem}.att-inline-check{display:inline-flex!important;align-items:center;gap:8px;flex-direction:row!important}.att-mobile-qr-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.att-big-actions{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.att-big-btn{min-height:52px;font-size:1rem}.att-role-builder{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.att-role-builder label{display:flex;flex-direction:column;gap:6px}.att-role-builder select{min-width:170px}.att-role-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.att-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;border:1px solid #fecaca;background:#fff5f5;color:#7f1d1d;font-size:.82rem;font-weight:700;padding:3px 8px}.att-chip button{border:0;background:transparent;color:inherit;font-size:1rem;line-height:1;cursor:pointer}.att-table{min-width:760px}.att-row-click{cursor:pointer}.att-row-click:hover td{background:#f8fafc}.att-semaforo{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:999px;border:1px solid transparent;font-size:.8rem;font-weight:700}.att-semaforo-verde{color:#166534;border-color:#86efac;background:#dcfce7}.att-semaforo-amarillo{color:#92400e;border-color:#fcd34d;background:#fef9c3}.att-semaforo-rojo{color:#991b1b;border-color:#fecaca;background:#fef2f2}.att-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:8px;gap:8px}.att-premium-modal{border:1px solid #e5e7eb;background:linear-gradient(180deg,#fff,#fff8f8);box-shadow:0 20px 40px rgba(17,24,39,.16)}.att-event-detail-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:10px;gap:10px;margin:10px 0}.att-event-detail-card{border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#fff}.att-event-detail-card h5{margin:0 0 8px}.att-location-school{color:#166534;font-weight:700}.att-location-outside{color:#991b1b;font-weight:700}.att-incident-modal{max-width:min(860px,96vw)}.att-camera-preview{width:100%;max-height:min(55dvh,420px);border-radius:10px;border:1px solid #d1d5db;background:#0f172a;object-fit:cover}.att-pagination{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.att-chart-card{border:1px solid #e5e7eb;border-radius:10px;padding:10px;margin-top:10px;background:#fff}.att-chart-card h5{margin:0 0 8px}.att-chart-svg{width:100%;height:220px}.att-bars{display:flex;flex-direction:column;gap:8px}.att-bar-row{display:grid;grid-template-columns:180px minmax(0,1fr) 48px;grid-gap:10px;gap:10px;align-items:center;font-size:.86rem}.att-bar-track{width:100%;height:9px;border-radius:999px;background:#f3f4f6;border:1px solid #e5e7eb;overflow:hidden}.att-bar-fill{height:100%;border-radius:999px}.att-rule-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.att-rule-inline label{display:flex;flex-direction:column;gap:6px}.att-rule-inline input{width:120px}@media (max-width:900px){.att-grid-main,.att-kiosk-lookup,.att-kiosk-split{grid-template-columns:1fr}.att-big-btn{min-height:56px}.att-pagination{flex-direction:column;align-items:flex-start}.att-bar-row{grid-template-columns:1fr;gap:6px}}.maintenanceRequestsShell .maintenanceTabBtn{border:1px solid var(--tab-border);background:var(--tab-bg);color:var(--tab-text);border-radius:10px;padding:8px 12px;font-weight:600;transition:border-color .16s ease,background .16s ease,color .16s ease}.maintenanceRequestsShell .maintenanceTabBtnActive{border-color:var(--tab-active-border);background:var(--tab-active-bg);color:var(--tab-active-text);box-shadow:var(--shell-card-shadow)}.maintenanceRequestsShell .maintenanceGhostBtn,.maintenanceRequestsShell .maintenancePrimaryBtn,.maintenanceRequestsShell .maintenanceWarnBtn{border-radius:10px;padding:8px 12px;font-weight:600}.maintenanceRequestsShell .maintenancePrimaryBtn{border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-text)}.maintenanceRequestsShell .maintenanceGhostBtn{border:1px solid var(--btn-outline-border);background:var(--btn-outline-bg);color:var(--btn-outline-text)}.maintenanceRequestsShell .maintenanceGhostBtn--active{border-color:var(--tab-active-border);background:var(--tab-hover-bg);color:var(--tab-active-text)}.maintenanceRequestsShell .maintenanceGhostBtn--loading{position:relative;pointer-events:none;opacity:.86}.maintenanceRequestsShell .maintenanceGhostBtn--loading:before{content:"";width:12px;height:12px;border-radius:999px;border:2px solid var(--btn-outline-border);border-top-color:var(--btn-primary-border);display:inline-block;margin-right:8px;animation:spin .8s linear infinite}.maintenanceRequestsShell .maintenanceWarnBtn{border:1px solid var(--btn-danger-border);background:var(--btn-danger-bg);color:var(--btn-danger-text)}.maintenanceRequestsShell .maintenanceGhostBtn:hover:not(:disabled),.maintenanceRequestsShell .maintenancePrimaryBtn:hover:not(:disabled),.maintenanceRequestsShell .maintenanceTabBtn:hover:not(:disabled),.maintenanceRequestsShell .maintenanceWarnBtn:hover:not(:disabled){filter:brightness(.98)}.maintenanceRequestsShell .maintenanceGhostBtn:focus-visible,.maintenanceRequestsShell .maintenancePrimaryBtn:focus-visible,.maintenanceRequestsShell .maintenanceTabBtn:focus-visible,.maintenanceRequestsShell .maintenanceWarnBtn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--field-focus-ring)}.maintenanceToolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.maintenanceToolbarActions{display:flex;gap:8px;flex-wrap:wrap}.maintenanceFiltersPanel{padding:12px;border:1px solid var(--alert-neutral-border);border-radius:14px;background:var(--alert-neutral-bg)}.maintenanceTicketCard{border-left:4px solid transparent;transition:border-color .2s ease,box-shadow .2s ease}.maintenanceTicketCard--red{border-left-color:var(--alert-error-border);box-shadow:inset 0 0 0 1px var(--alert-error-border)}.maintenanceTicketCard--yellow{border-left-color:var(--alert-warning-border);box-shadow:inset 0 0 0 1px var(--alert-warning-border)}.maintenanceTicketCard--green{border-left-color:var(--alert-success-border);box-shadow:inset 0 0 0 1px var(--alert-success-border)}.maintenanceRequestsShell .maintenanceInlineIconBtn{border:0;background:transparent;color:inherit;margin-left:6px;cursor:pointer;font-weight:700;line-height:1}.spacesManagementShell{border-top:3px solid var(--shell-topbar-accent)}.spacesManagementShell .maintenanceGhostBtn,.spacesManagementShell .maintenancePrimaryBtn,.spacesManagementShell .maintenanceWarnBtn{border-radius:var(--radius-sm);padding:8px 12px;font-weight:600}.spacesManagementShell .maintenancePrimaryBtn{border:1px solid var(--btn-primary-border);background:var(--btn-primary-bg);color:var(--btn-primary-text)}.spacesManagementShell .maintenanceGhostBtn{border:1px solid var(--btn-outline-border);background:var(--btn-outline-bg);color:var(--btn-outline-text)}.spacesManagementShell .maintenanceWarnBtn{border:1px solid var(--btn-danger-border);background:var(--btn-danger-bg);color:var(--btn-danger-text)}.spacesManagementShell .maintenanceGhostBtn:hover:not(:disabled),.spacesManagementShell .maintenancePrimaryBtn:hover:not(:disabled),.spacesManagementShell .maintenanceWarnBtn:hover:not(:disabled){filter:brightness(.98)}.spacesHeroTitle{margin:0}.spacesHeroHint{margin-top:6px}.spaceLevelNodes,.spacesModuleActions{margin-top:8px}.spacesHintBottomCompact{margin-bottom:6px}.spacesHistoryIntroHint{margin-top:6px;margin-bottom:0}.spacesHistoryReloadActions,.spacesHistoryTabsRow{margin-top:8px}.spacesHistoryCardStack{margin-top:10px}.spacesInlineCheckbox{display:flex;gap:8px;align-items:center}.spacesListWithTopGap{margin-top:8px}.spacesManagementShell .list{display:flex;flex-direction:column;gap:8px}.spacesManagementShell .listItem{display:flex;align-items:center}.spacesListItemWrap{display:flex;flex-wrap:wrap;gap:8px}.spacesModalCardSection{margin-top:10px}.spacesListItemBetween{display:flex;justify-content:space-between;gap:8px}.spacesScrollableList{max-height:220px;overflow:auto}.spaceTableWrapWithTopGap,.spacesActionsTopGap{margin-top:8px}.spacesHero{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--table-border)}.spacesHeroKpis{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));grid-gap:8px;gap:8px;min-width:min(360px,100%)}.spacesHeroKpi{border:1px solid var(--shell-card-border);border-radius:var(--radius-sm);background:linear-gradient(180deg,var(--shell-card-bg) 0,var(--surface-2) 100%);padding:8px 10px;display:flex;flex-direction:column;gap:4px}.spacesHeroKpi span{color:var(--muted-text);font-size:.78rem}.spacesHeroKpi strong{font-size:1.12rem;color:var(--text)}.spaceSectionCard{margin-top:10px;border:1px solid var(--shell-card-border);background:var(--shell-card-bg);border-radius:var(--radius-sm);padding:10px}.spaceSectionHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.spaceLevelGroup{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--shell-card-bg);padding:8px}.spaceLevelGroup+.spaceLevelGroup{margin-top:8px}.spaceLevelGroupHeader{display:flex;justify-content:space-between;gap:8px;align-items:center}.spaceLevelHeaderActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spaceTreeNode{border:1px solid var(--table-border);border-radius:var(--radius-sm);background:var(--shell-card-bg);padding:10px;margin-top:8px}.spaceTreeNode.isInactive{border-style:dashed;background:var(--surface-2)}.spaceTreeNodeHeader{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.spaceTreeNodeInfo{flex:1 1 280px;min-width:0}.spaceTreeNodeMeta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.spaceTreeNodeMeta span{display:inline-flex;align-items:center;border:1px solid var(--table-border);background:var(--surface-2);border-radius:999px;padding:2px 8px;font-size:.78rem;color:var(--text)}.spaceTreeNodeActions{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end}.spacesManagementShell .spaceHistoryActionBtn{border-color:var(--tab-active-border);background:var(--tab-active-bg);color:var(--tab-active-text)}.spaceSaneamientoDetail{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.spaceSaneamientoDetail span{font-size:.82rem;border:1px solid var(--table-border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:3px 9px}.spaceEmptyState{border:1px dashed var(--table-border);border-radius:var(--radius-sm);background:var(--surface-2);padding:10px;margin-top:8px}.spaceEmptyState p{margin:0}.spaceEmptyState .hint{margin-top:6px}.spacesHistorySummary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:10px}.spacesHistorySummaryItem{border:1px solid var(--table-border);border-radius:var(--radius-sm);padding:8px 10px;background:var(--shell-card-bg)}.spacesHistorySummaryItem span{display:block;color:var(--muted-text);font-size:.8rem}.spacesHistorySummaryItem strong{display:block;margin-top:2px;font-size:1.05rem}.spacesHistoryCard{margin-top:8px;padding:8px}.spaceTableWrap{border-color:var(--table-border)}.spaceAssignmentsTable tbody tr:nth-child(2n),.spaceHistoryTable tbody tr:nth-child(2n){background:var(--surface-2)}.spaceAssignmentsTable tbody tr:hover,.spaceHistoryTable tbody tr:hover{background:var(--table-row-hover-bg)}.spacesFormGrid label .hint{margin-top:2px;font-size:.78rem}@media (max-width:900px){.spacesHero{flex-direction:column}.spacesHeroKpis{width:100%;min-width:0}.spaceLevelGroupHeader,.spaceSectionHeader{flex-direction:column;align-items:flex-start}.spaceTreeNodeActions{width:100%;justify-content:flex-start}.spacesManagementShell .spaceTreeNodeActions .maintenanceGhostBtn,.spacesManagementShell .spaceTreeNodeActions .maintenanceWarnBtn,.spacesManagementShell .spaceTreeNodeActions .spaceHistoryActionBtn{flex:1 1 150px}}@media (max-width:640px){.spacesHeroKpis,.spacesHistorySummary{grid-template-columns:1fr}.spacesManagementShell .actions .maintenanceGhostBtn,.spacesManagementShell .actions .maintenancePrimaryBtn{width:100%}}.sitioWebShell{display:flex;flex-direction:column;min-height:100vh;background:var(--bg);color:var(--text)}.sitioWebDenied,.sitioWebError,.sitioWebLoading{max-width:720px;margin:40px auto;padding:24px;background:var(--field-bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);text-align:center}.sitioWebHeader{background:var(--field-bg);border-bottom:1px solid var(--border,#e5e7eb);padding:18px 28px}.sitioWebHeaderInner{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;max-width:1400px;margin:0 auto}.sitioWebKicker{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:#64748b;margin:0 0 4px}.sitioWebTitle{font-size:22px;margin:0 0 4px;font-weight:600}.sitioWebSubtitle{margin:0;color:#4b5563;font-size:13px}.sitioWebSubtitle a{color:var(--red,#b31b1b)}.sitioWebBackLink{color:#4b5563;font-size:13px;text-decoration:none;border:1px solid var(--border,#e5e7eb);padding:6px 12px;border-radius:var(--radius)}.sitioWebBackLink:hover{background:var(--bg)}.sitioWebBody{display:grid;grid-template-columns:220px 1fr;grid-gap:24px;gap:24px;max-width:1400px;width:100%;margin:0 auto;padding:24px 28px;align-items:start}.sitioWebSidebar{background:var(--field-bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:10px}.sitioWebSidebar ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.sitioWebNavItem{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:8px 12px;min-height:38px;border-radius:var(--radius);font-size:14px;color:var(--text);text-decoration:none;border:1px solid transparent;cursor:pointer}.sitioWebNavLabel{display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sitioWebNavItem:hover:not(.isDisabled){background:var(--bg)}.sitioWebNavItem.isActive{background:var(--bg);border-color:var(--border,#e5e7eb);font-weight:600}.sitioWebNavItem.isDisabled{color:#9ca3af;cursor:not-allowed}.sitioWebSoon{align-self:flex-start;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;background:#f3f4f6;color:#6b7280;padding:1px 6px;border-radius:4px;line-height:1.4}.sitioWebMain{background:var(--field-bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:20px 24px;min-height:400px}.novedadesList{display:flex;flex-direction:column;gap:16px}.novedadesListHeader{display:flex;justify-content:space-between;align-items:center;gap:12px}.novedadesListHeader h2{margin:0;font-size:20px;font-weight:600}.novedadesFilters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;background:var(--bg);border-radius:var(--radius);border:1px solid var(--border,#e5e7eb)}.novedadesFilters .input{min-width:0;width:auto}.novedadesFilters .input[type=text]{flex:1 1 200px}.novedadesTableWrap{width:100%;overflow-x:auto;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius)}.novedadesTable{width:100%;border-collapse:collapse;font-size:14px}.novedadesTable td,.novedadesTable th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border,#e5e7eb);vertical-align:middle}.novedadesTable thead th{background:var(--bg);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:#4b5563}.novedadesTable tr:last-child td{border-bottom:none}.novedadesTable tr.isDeleted{background:#fafafa;color:#6b7280}.novedadesThumb{width:64px;height:36px;object-fit:cover;border-radius:4px}.novedadesNoImg{color:#9ca3af}.novedadesPagination{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.novedadesPagBtns{display:flex;align-items:center;gap:8px}.novedadesNotice{background:#ecfdf5;color:#065f46}.novedadesError,.novedadesNotice{margin:0;padding:10px 12px;border-radius:var(--radius);font-size:13px}.novedadesError{background:#fef2f2;color:#991b1b}.novedadForm{display:flex;flex-direction:column;gap:18px}.novedadFormHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.novedadFormBack{font-size:13px;color:#4b5563;text-decoration:none}.novedadFormBack:hover{color:var(--red,#b31b1b)}.novedadFormHeader h2{margin:4px 0 0;font-size:22px;font-weight:600}.novedadFormDeleted{margin:8px 0 0;padding:8px 12px;background:#fff7ed;color:#9a3412;border-radius:var(--radius);font-size:13px}.novedadFormActions{display:flex;gap:8px}.novedadFormError{background:#fef2f2;color:#991b1b}.novedadFormError,.novedadFormInfo{margin:0;padding:10px 12px;border-radius:var(--radius);font-size:13px}.novedadFormInfo{background:#ecfdf5;color:#065f46}.novedadFormGrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);grid-gap:20px;gap:20px;align-items:start}.novedadFormAside,.novedadFormSection{display:flex;flex-direction:column;gap:6px}.formLabel{font-weight:600;font-size:13px;margin-top:12px;color:#1f2937}.formHint{margin:2px 0 8px;font-size:12px;color:#6b7280}.checkboxLabel{display:inline-flex;align-items:center;gap:6px;font-size:14px;margin-top:10px;cursor:pointer}.tiptapWrapper{display:flex;flex-direction:column;gap:6px;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:#fff}.tiptapToolbar{display:flex;flex-wrap:wrap;gap:4px;padding:6px 8px;border-bottom:1px solid var(--border,#e5e7eb);background:var(--bg);border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.tiptapBtn{border:1px solid transparent;background:transparent;padding:4px 8px;border-radius:4px;font-size:13px;cursor:pointer;min-width:28px}.tiptapBtn:hover{background:#fff;border-color:var(--border,#e5e7eb)}.tiptapBtn.isActive{background:#fff;border-color:var(--red,#b31b1b);color:var(--red,#b31b1b)}.tiptapBtn:disabled{opacity:.5;cursor:not-allowed}.tiptapSep{display:inline-block;width:1px;background:var(--border,#e5e7eb);align-self:stretch;margin:2px 4px}.tiptapEditorArea{min-height:240px;padding:12px 16px;outline:none;font-size:15px;line-height:1.55}.tiptapEditorArea:focus{outline:none}.tiptapEditorArea p{margin:0 0 10px}.tiptapEditorArea h2{margin:18px 0 8px;font-size:22px}.tiptapEditorArea h3{margin:14px 0 8px;font-size:18px}.tiptapEditorArea ol,.tiptapEditorArea ul{margin:0 0 10px 24px}.tiptapEditorArea blockquote{margin:10px 0;padding:4px 14px;border-left:3px solid var(--red,#b31b1b);color:#374151;background:var(--bg)}.tiptapEditorArea a{color:var(--red,#b31b1b);text-decoration:underline}.tiptapEditorArea img{max-width:100%;height:auto;border-radius:4px;margin:8px 0}.tiptapError{margin:0;padding:6px 10px;background:#fef2f2;color:#991b1b;font-size:12px}.tiptapPlaceholder{padding:12px;color:#6b7280}.imageUploadField{display:flex;flex-direction:column;gap:6px}.imageUploadLabel{font-weight:600;font-size:13px}.imageUploadPreview{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:#fff}.imageUploadPreview img{width:100%;height:auto;max-height:220px;object-fit:cover;border-radius:4px}.imageUploadEmpty{padding:14px;border:1px dashed var(--border,#e5e7eb);border-radius:var(--radius);text-align:center;color:#6b7280;font-size:13px}.imageUploadHint{font-size:12px;color:#6b7280;margin:0}.imageUploadInfo{font-size:12px;color:#065f46;margin:0}.imageUploadError{font-size:12px;color:#991b1b;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;background:var(--field-bg);color:var(--text);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);font-size:14px;cursor:pointer;text-decoration:none}.btn:hover{background:var(--bg)}.btn:disabled{opacity:.5;cursor:not-allowed}.btnPrimary{background:var(--btn-primary-bg,#b31b1b);border-color:transparent}.btnPrimary:hover{filter:brightness(.92)}.btnGhost{border-color:var(--border,#e5e7eb)}.btnDanger{background:#fef2f2;color:#991b1b;border-color:#fecaca}.btnDanger:hover{background:#fee2e2}.btnSmall{padding:4px 10px;font-size:12px;margin-right:4px}.input{display:block;width:100%;padding:8px 10px;background:var(--field-bg);color:var(--text);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);font-size:14px}.input:focus{outline:none;border-color:var(--btn-primary-bg,#b31b1b)}@media (max-width:900px){.novedadFormGrid,.sitioWebBody{grid-template-columns:1fr}}@media (max-width:640px){.novedadesFilters,.sitioWebHeaderInner{flex-direction:column}.novedadesFilters{align-items:stretch}.novedadesFilters .input,.novedadesFilters button,.novedadesFilters select{width:100%}}.sidebarEditor{display:flex;flex-direction:column;gap:20px}.sidebarEditorHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.sidebarEditorHeader h2{margin:0 0 4px;font-size:22px}.sidebarEditorSubtitle{margin:0;font-size:13px;color:var(--muted,#6b7280)}.sidebarEditorSection{padding:16px;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:var(--card-bg,#fff);display:flex;flex-direction:column;gap:10px}.sidebarEditorSection>h3{margin:0 0 4px;font-size:16px}.sidebarEditorSectionHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.sidebarEditorAddButtons{display:flex;gap:8px;flex-wrap:wrap}.sidebarEditorBlocks,.sidebarEditorList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.sidebarEditorItem{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:var(--field-bg,#f9fafb)}.sidebarEditorItemPreview img{width:80px;height:60px;object-fit:cover;border-radius:4px;display:block}.sidebarEditorItemMain{flex:1 1;min-width:0}.sidebarEditorItemUrl{display:block;font-size:12px;overflow-wrap:anywhere;word-break:break-all}.sidebarEditorItemControls{display:flex;gap:4px;flex-shrink:0}.sidebarEditorPhoneItem .input{max-width:280px}.sidebarEditorAdd{margin-top:8px}.sidebarEditorBlock{padding:14px;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:var(--card-bg,#fff);display:flex;flex-direction:column;gap:8px}.sidebarEditorBlockHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebarEditorBlockKind{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#6b7280);background:var(--field-bg,#f3f4f6);padding:2px 8px;border-radius:999px}.sidebarEditorEmpty{font-size:13px;color:var(--muted,#6b7280);font-style:italic}.sidebarEditorFooter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:8px}.sidebarEditorError{color:#b91c1c;background:#fee2e2}.sidebarEditorError,.sidebarEditorInfo{padding:8px 12px;border-radius:var(--radius);margin:0;font-size:14px}.sidebarEditorInfo{color:#065f46;background:#d1fae5}.sidebarEditorLoading,.sidebarEditorNotInitialized{padding:24px;background:var(--card-bg,#fff);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius)}.sidebarEditorNotInitialized h2{margin:0 0 8px}.sidebarEditorNotInitialized p{margin:0 0 12px;font-size:14px}@media (max-width:640px){.sidebarEditorItem{flex-direction:column;align-items:stretch}.sidebarEditorItemControls{justify-content:flex-end}.sidebarEditorPhoneItem .input{max-width:100%}}.pedidoDetailBack{font-size:13px;color:var(--muted,#6b7280);text-decoration:none;align-self:flex-start}.pedidoDetailBack:hover{color:var(--text)}.bloquesList{display:flex;flex-direction:column;gap:18px}.bloquesListHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.bloquesListHeader h2{margin:0;font-size:20px}.bloquesListSubtitle{margin:4px 0 0;font-size:13px;color:var(--muted,#6b7280);max-width:720px;line-height:1.5}.bloquesListControls{display:flex;gap:8px;flex-wrap:wrap}.bloquesListToolbar{padding:12px;background:var(--bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius)}.bloquesListSections{display:flex;flex-direction:column;gap:18px}.bloquesSection{display:flex;flex-direction:column;gap:8px}.bloquesSectionTitle{margin:0;font-size:14px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted,#6b7280);font-weight:600}.bloquesPagesTable .bloquesPageLabel{font-weight:500;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bloquesPageKey{display:block;margin-top:2px;font-size:11px;color:var(--muted,#6b7280);background:var(--bg);padding:1px 6px;border-radius:4px;width:max-content;max-width:100%;overflow:hidden;text-overflow:ellipsis}.bloquesAdvancedBadge{font-size:10px;text-transform:uppercase;letter-spacing:.4px;background:#fef3c7;color:#92400e;padding:2px 6px;border-radius:4px}.bloquesPagesTable tr.isAdvanced{background:#fafafa}.formHint.inline{display:inline;font-size:12px;color:var(--muted,#6b7280);margin-left:6px}.bloquesEditor{display:flex;flex-direction:column;gap:18px}.bloquesEditorLoading{padding:24px;color:var(--muted,#6b7280)}.bloquesEditorHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.bloquesEditorHeader h2{margin:6px 0 4px;font-size:22px}.bloquesEditorSubtitle{margin:0;font-size:13px;color:var(--muted,#6b7280)}.bloquesEditorActions{display:flex;gap:8px;flex-wrap:wrap}.bloquesNewForm{padding:16px;background:var(--bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius)}.bloquesNewForm h3{margin:0 0 8px;font-size:16px}.bloquesNewFormActions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.bloquesEditorList{display:flex;flex-direction:column;gap:12px}.bloquesEditorList>h3{margin:0;font-size:16px}.bloquesEditorEmpty{padding:18px;background:var(--bg);border:1px dashed var(--border,#e5e7eb);border-radius:var(--radius);text-align:center;color:var(--muted,#6b7280);font-size:14px}.bloquesAccordion{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.bloqueAccordionItem{background:var(--field-bg,#fff);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);overflow:hidden}.bloqueAccordionHeader{display:flex;align-items:center;gap:8px;padding:8px 10px;flex-wrap:wrap;background:var(--bg)}.bloqueAccordionToggle{flex:1 1 240px;display:flex;align-items:center;gap:10px;background:transparent;border:0;padding:4px;text-align:left;cursor:pointer;color:var(--text);font:inherit}.bloqueAccordionToggle:hover{background:var(--field-bg,#fff);border-radius:4px}.bloqueAccordionCaret{margin-left:auto;font-size:12px;color:var(--muted,#6b7280)}.bloqueKindChip{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;background:#ede9fe;color:#5b21b6;padding:2px 8px;border-radius:999px;white-space:nowrap}.bloqueBlockKey{font-size:12px;background:var(--field-bg,#fff);padding:2px 6px;border-radius:4px;color:var(--text)}.bloqueOrder,.bloqueUpdated{font-size:11px;color:var(--muted,#6b7280)}.bloqueHeaderControls{display:flex;gap:4px;flex-wrap:wrap}.bloqueAccordionBody{padding:14px 16px 18px;border-top:1px solid var(--border,#e5e7eb)}.bloqueSaveRow{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.bloqueDirtyTag{font-size:12px;color:#92400e;background:#fef3c7;padding:2px 8px;border-radius:999px}.bloqueJsonTextarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;min-height:200px}.bloquesEditorDeleted{margin-top:8px}.bloquesEditorDeletedHeader,.bloquesEditorDeletedHeader h3{display:flex;align-items:center}.bloquesEditorDeletedHeader h3{gap:12px;margin:0;font-size:14px;color:var(--muted,#6b7280)}.bloquesDeletedList{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px}.bloqueDeletedItem{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#fafafa;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);flex-wrap:wrap;color:var(--muted,#6b7280)}.sitioWebNavItem.isSubItem{padding-left:24px}@media (max-width:640px){.bloquesEditorHeader,.bloquesListHeader,.pedidoDetailHeader,.pedidosListHeader{flex-direction:column;align-items:stretch}.bloquesEditorActions,.pedidoDetailActions{width:100%}.pedidosTable td,.pedidosTable th{font-size:13px}}.proyectoTiposList{display:flex;flex-direction:column;gap:6px;margin-top:6px}.proyectoGaleriasList{list-style:none;padding:0;margin:8px 0 0}.proyectoGaleriaItem{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#fafafa;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:6px;font-size:14px}.galeriaImagesGrid{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:12px;gap:12px}.galeriaImageItem{border:1px solid #e0e0e0;border-radius:4px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.galeriaImageItem img{width:100%;height:160px;object-fit:cover;display:block}.galeriaImageActions{display:flex;gap:4px;padding:8px;justify-content:space-between;background:#fafafa}.permisosTable td,.permisosTable th{text-align:center}.permisosTable td:first-child,.permisosTable th:first-child{text-align:left}.permisosTable .roleAuto{font-size:11px;color:#888;font-style:italic}.paginasOcultasLink{color:#2563eb;word-break:break-all}.paginasOcultasLink:hover{text-decoration:underline}.uniformesShell{display:flex;flex-direction:column;min-height:100vh;background:var(--bg);color:var(--text)}.uniformesDenied,.uniformesError,.uniformesLoading{max-width:720px;margin:40px auto;padding:24px;background:var(--field-bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);text-align:center}.uniformesHeader{background:var(--field-bg);border-bottom:1px solid var(--border,#e5e7eb);padding:18px 28px}.uniformesHeaderInner{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;max-width:1400px;margin:0 auto}.uniformesKicker{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:#64748b;margin:0 0 4px}.uniformesTitle{font-size:22px;margin:0 0 4px;font-weight:600}.uniformesSubtitle{margin:0;color:#4b5563;font-size:13px}.uniformesBackLink{color:#4b5563;font-size:13px;text-decoration:none;border:1px solid var(--border,#e5e7eb);padding:6px 12px;border-radius:var(--radius)}.uniformesBackLink:hover{background:var(--bg)}.uniformesBody{display:grid;grid-template-columns:220px 1fr;grid-gap:24px;gap:24px;max-width:1400px;width:100%;margin:0 auto;padding:24px 28px;align-items:start}.uniformesSidebar{background:var(--field-bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:10px}.uniformesSidebar ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.uniformesNavItem{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:8px 12px;min-height:38px;border-radius:var(--radius);font-size:14px;color:var(--text);text-decoration:none;border:1px solid transparent;cursor:pointer}.uniformesNavLabel{display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uniformesNavItem:hover:not(.isDisabled){background:var(--bg)}.uniformesNavItem.isActive{background:var(--bg);border-color:var(--border,#e5e7eb);font-weight:600}.uniformesNavItem.isDisabled{color:#9ca3af;cursor:not-allowed}.uniformesSoon{align-self:flex-start;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;background:#f3f4f6;color:#6b7280;padding:1px 6px;border-radius:4px;line-height:1.4}.uniformesMain{background:var(--field-bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:20px 24px;min-height:400px}.uniformesHome{display:flex;flex-direction:column;gap:24px}.uniformesHomeHeader h2{margin:0 0 6px;font-size:20px;font-weight:600}.uniformesHomeHeader p{margin:0;color:#4b5563;font-size:14px}.uniformesStatGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px}.uniformesStatCard{background:var(--bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:6px}.uniformesStatCard.uniformesStatCardWarn{border-color:#fcd34d;background:#fffbeb}.uniformesStatLabel{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin:0}.uniformesStatValue{font-size:28px;font-weight:700;margin:0;color:var(--text)}.uniformesStatLink{font-size:12px;color:var(--red,#b31b1b);text-decoration:none;margin-top:auto}.uniformesStatLink:hover{text-decoration:underline}.uniformesStatHint{font-size:11px;color:#94a3b8}.uniformesHomeRoadmap h3{margin:0 0 8px;font-size:15px;font-weight:600}.uniformesHomeRoadmap ol{margin:0;padding-left:18px;color:#4b5563;font-size:13px;line-height:1.7}.uniformesPanel{display:flex;flex-direction:column;gap:16px}.uniformesPanelHeader h2{margin:0 0 6px;font-size:20px;font-weight:600}.uniformesPanelHeader p{margin:0 0 8px}.uniformesHint{color:#4b5563;font-size:13px;line-height:1.55}.uniformesHint code{background:var(--bg);padding:1px 5px;border-radius:3px;font-size:12px}.uniformesPanelActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.uniformesNotice{background:#ecfdf5;border:1px solid #6ee7b7;color:#047857;border-radius:var(--radius)}.uniformesError,.uniformesNotice{padding:8px 12px;font-size:13px;margin:0}.uniformesError{background:#fef2f2;border:1px solid #fca5a5;color:#b91c1c;border-radius:var(--radius)}.uniformesEmpty{color:#6b7280;font-style:italic;padding:24px;text-align:center}.uniformesMuted{color:#9ca3af}.uniformesSelfTag{color:#2563eb}.uniformesFilters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;background:var(--bg);border-radius:var(--radius);border:1px solid var(--border,#e5e7eb)}.uniformesFilters .input{min-width:0;width:auto}.uniformesFilters input[type=email],.uniformesFilters input[type=text]{flex:1 1 240px}.uniformesTableWrap{width:100%;overflow-x:auto;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:var(--field-bg)}.uniformesTable{width:100%;border-collapse:collapse;font-size:13px}.uniformesTable td,.uniformesTable th{padding:10px 12px;border-bottom:1px solid var(--border,#e5e7eb);text-align:left;vertical-align:top}.uniformesTable th{background:var(--bg);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:#64748b}.uniformesTable tr:last-child td{border-bottom:none}.uniformesTable tr.isMuted td{opacity:.55}.uniformesPermisosTable td:not(:first-child):not(:nth-child(2)),.uniformesPermisosTable th{text-align:center}.uniformesPermisosTable td:first-child{text-align:left}.uniformesPagination{display:flex;justify-content:space-between;align-items:center;padding:8px 4px;font-size:13px;color:#4b5563}.uniformesModalBackdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;z-index:100;overflow-y:auto}.uniformesModal{background:var(--field-bg);border-radius:var(--radius);padding:24px;width:100%;max-width:640px;display:flex;flex-direction:column;gap:16px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}.uniformesModal h3{margin:0;font-size:18px;font-weight:600}.uniformesFormGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.uniformesFormFull{grid-column:1/-1}.uniformesFormGrid label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#4b5563}.uniformesFormGrid label>span{font-weight:500}.uniformesModalActions{display:flex;justify-content:flex-end;gap:8px}.btnPrimary{background:var(--red,#b31b1b);color:#fff;border:1px solid var(--red,#b31b1b);padding:7px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer}.btnPrimary:hover:not(:disabled){filter:brightness(.95)}.btnPrimary:disabled{opacity:.6;cursor:not-allowed}.btnGhost{background:transparent;color:#4b5563;border:1px solid var(--border,#e5e7eb);padding:7px 14px;border-radius:var(--radius);font-size:13px;cursor:pointer;text-decoration:none;display:inline-block}.btnGhost:hover:not(:disabled){background:var(--bg)}.btnLink{background:none;border:none;color:var(--red,#b31b1b);cursor:pointer;font-size:13px;padding:2px 6px;text-decoration:underline}.btnLink.danger{color:#b91c1c}.btnLink:hover{opacity:.85}.uniformesImportGrid{display:grid;grid-template-columns:2fr 1fr;grid-gap:20px;gap:20px;align-items:start}@media (max-width:700px){.uniformesImportGrid{grid-template-columns:1fr}}.uniformesCsvArea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.uniformesLabel{display:block;font-size:13px;font-weight:500;color:#4b5563;margin-bottom:6px}.uniformesImportResult{background:var(--bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:14px 18px}.uniformesImportResult h3{margin:0 0 8px;font-size:15px;font-weight:600}.uniformesImportResult ul{margin:0 0 10px;padding-left:18px;font-size:13px}.uniformesImportResult summary{cursor:pointer;font-size:13px;color:#4b5563}.uniformesBadge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.uniformesBadge.green{background:#d1fae5;color:#065f46}.uniformesBadge.yellow{background:#fef3c7;color:#92400e}.uniformesBadge.red{background:#fee2e2;color:#991b1b}.uniformesBadge.gray{background:#e5e7eb;color:#6b7280}.uniformesBadge.blue{background:#dbeafe;color:#1e40af}@media (max-width:900px){.uniformesBody{grid-template-columns:1fr;padding:16px}.uniformesSidebar{order:2}}.uniformesNavItem.isSubItem{padding-left:24px;font-size:13px;color:#6b7280}.uniformesSection{background:var(--bg);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:18px 20px;display:flex;flex-direction:column;gap:14px}.uniformesSection h3{margin:0;font-size:16px;font-weight:600}.uniformesSection h4{margin:0 0 6px;font-size:14px;font-weight:600}.uniformesCardGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.uniformesProductCard{display:flex;flex-direction:column;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);background:var(--field-bg);text-decoration:none;color:var(--text);overflow:hidden;transition:transform .12s ease,box-shadow .12s ease}.uniformesProductCard:hover{transform:translateY(-2px);box-shadow:0 10px 20px -10px rgba(0,0,0,.15)}.uniformesProductCardImg{width:100%;aspect-ratio:4/3;background:#f3f4f6;overflow:hidden}.uniformesProductCardImg img{width:100%;height:100%;object-fit:cover;display:block}.uniformesProductCardImgPlaceholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.uniformesProductCardBody{padding:12px 14px;display:flex;flex-direction:column;gap:4px}.uniformesProductCardMeta{margin:0;font-size:12px;color:#64748b}.uniformesProductCardPrice{margin:4px 0 0;font-weight:600;color:var(--red,#b31b1b);font-size:16px}.uniformesImageField{display:flex;flex-direction:column;gap:8px}.uniformesImagePreview{position:relative;max-width:240px;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);overflow:hidden;background:#f9fafb}.uniformesImagePreview img{display:block;width:100%;height:auto}.uniformesImageActions{position:absolute;top:6px;right:6px;background:hsla(0,0%,100%,.92);border-radius:4px;padding:2px 4px}.uniformesFieldHint{font-size:11px;color:#6b7280;margin:0}.uniformesVariantNewForm{border-top:1px dashed var(--border,#e5e7eb);padding-top:14px;display:flex;flex-direction:column;gap:12px}.uniformesPedidoMeta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:8px 16px;gap:8px 16px;font-size:13px;color:#4b5563}.uniformesPedidoMeta strong{color:#2a2a2a}.uniformesPedidoMeta code{font-family:ui-monospace,SFMono-Regular,monospace;background:#f5e9e7;padding:1px 6px;border-radius:4px}.uniformesScanInline{display:inline-flex;gap:8px;align-items:center}.uniformesEventList{list-style:none;padding:0;margin:0;font-size:13px}.uniformesEventList li{padding:6px 0;border-bottom:1px solid var(--border,#e5e7eb)}.uniformesEventList li:last-child{border-bottom:none}.uniformesScanForm{display:flex;gap:8px;max-width:480px}.uniformesScanForm .input{flex:1 1;font-size:18px;padding:12px 14px;letter-spacing:2px;font-family:ui-monospace,monospace}.uniformesPosGrid{display:grid;grid-template-columns:2fr 1fr;grid-gap:24px;gap:24px;align-items:start}@media (max-width:900px){.uniformesPosGrid{grid-template-columns:1fr}}.uniformesPosCatalog,.uniformesPosSide{display:flex;flex-direction:column;gap:16px}.uniformesPosProducts{display:flex;flex-direction:column;gap:14px;max-height:600px;overflow-y:auto;padding-right:6px}.uniformesPosProduct{background:#fff;border:1px solid var(--border,#e5e7eb);border-radius:var(--radius);padding:12px 14px}.uniformesPosProductHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px}.uniformesPosVariants{display:flex;flex-wrap:wrap;gap:6px}.uniformesPosSizeButton{display:inline-flex;flex-direction:column;align-items:center;min-width:56px;padding:8px 10px;border:1px solid var(--border,#e5e7eb);background:#fff;border-radius:6px;cursor:pointer;font-weight:600;transition:background .1s ease}.uniformesPosSizeButton small{font-weight:400;color:#6b7280;font-size:11px}.uniformesPosSizeButton:hover:not(.isDisabled){background:#fdf6f5;border-color:#7a1308}.uniformesPosSizeButton.isDisabled{opacity:.4;cursor:not-allowed}.uniformesPosStudents{list-style:none;padding:0;margin:8px 0 0;max-height:220px;overflow-y:auto}.uniformesPosStudents li{padding:6px 0;border-bottom:1px solid var(--border,#e5e7eb);font-size:13px}.uniformesRadioRow{display:flex;gap:10px;align-items:flex-start;padding:6px 10px;border:1px solid var(--border,#e5e7eb);border-radius:6px;cursor:pointer}.uniformesRadioRow:has(input:checked){border-color:#7a1308;background:#fdf6f5}.uniformesConfigRow{background:#fff;border:1px solid var(--border,#e5e7eb);border-radius:8px;padding:12px 14px}.uniformesSplitGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:800px){.uniformesSplitGrid{grid-template-columns:1fr}}.uniformesBarsTable{display:flex;flex-direction:column;gap:6px}.uniformesBarRow{display:grid;grid-template-columns:minmax(120px,180px) 1fr minmax(110px,160px);grid-gap:12px;gap:12px;align-items:center;font-size:13px}.uniformesBarLabel{color:#2a2a2a;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uniformesBar{background:#f3f4f6;border-radius:4px;height:18px;overflow:hidden}.uniformesBarFill{height:100%;transition:width .25s ease}.uniformesBarValue{text-align:right;color:#555}.uniformesBarValue small{color:#999}.admisionShell{display:flex;flex-direction:column;gap:16px}.admisionHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.admisionHeader h2{margin:0 0 4px}.admisionHeaderSubtitle{margin:0;color:#555;font-size:13px}.admisionList{display:flex;flex-direction:column;gap:14px}.admisionToolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.admisionFilters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex:1 1 auto}.admisionFilters .input{min-width:0;flex:0 1 auto}.admisionFilters input[type=text]{flex:1 1 220px}.admisionFilters input[type=date]{flex:0 1 150px}.admisionFilters select{flex:0 1 180px}.admisionFilterCheckbox{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#444;white-space:nowrap}.admisionTableWrap{background:#fff}.admisionTable td,.admisionTable th{vertical-align:top;padding:8px 10px}.admisionTable th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#555}.admisionRow:hover td{background:var(--table-row-hover-bg,#fafafa)}.admisionRowDeleted td{opacity:.55}.admisionMotivoCell{max-width:280px;overflow:hidden;text-overflow:ellipsis}.admisionPagination{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.admisionPaginationButtons{display:inline-flex;gap:6px}.admisionBadge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:600;line-height:1.5;border:1px solid transparent;white-space:nowrap}.admisionBadgePresencial{background:#fef3c7;color:#92400e;border-color:#fcd34d}.admisionBadgeTelefono{background:#e0f2fe;color:#075985;border-color:#7dd3fc}.admisionBadgeWhatsapp{background:#dcfce7;color:#14532d;border-color:#86efac}.admisionBadgeMail{background:#ede9fe;color:#5b21b6;border-color:#c4b5fd}.admisionBadgePaginaWeb{background:#ffe4e6;color:#9f1239;border-color:#fda4af}.admisionBadgePendiente{background:#fef3c7;color:#92400e;border-color:#fcd34d}.admisionBadgeDerivado{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd}.admisionBadgeResueltoRecepcion{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.admisionBadgeResuelto{background:#dcfce7;color:#14532d;border-color:#86efac}.admisionBadgeMatricula{background:#fce7f3;color:#831843;border-color:#f9a8d4}.admisionBadgeDeleted{background:#f3f4f6;color:#6b7280;border-color:#d1d5db}.admisionChips{display:inline-flex;flex-wrap:wrap;gap:4px}.admisionChip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;background:#f3f4f6;border:1px solid #e5e7eb;font-size:11.5px;color:#374151;white-space:nowrap}.admisionForm{display:flex;flex-direction:column;gap:14px;padding:14px 16px 18px;overflow-y:auto}.admisionFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.admisionFormField{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#333}.admisionFormField>span{font-weight:500;color:#444}.admisionFormFieldWide{grid-column:span 2}.admisionFormFieldFull{grid-column:1/-1}.admisionFormCheckbox{flex-direction:row;align-items:center;gap:8px;grid-column:1/-1}.admisionFormCheckbox>span{font-weight:400;color:#444}.admisionDestSelector{display:flex;flex-wrap:wrap;gap:8px 14px;padding:8px 10px;border:1px solid #e5e7eb;border-radius:6px;background:#fafafa}.admisionDestOption{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#333;white-space:nowrap}.admisionFormActions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:12px 16px 16px;border-top:1px solid #f0f0f0}.admisionDetail{display:flex;flex-direction:column;gap:14px;padding:14px 16px 18px;overflow-y:auto}.admisionDetailHeaderRow{display:flex;flex-wrap:wrap;gap:6px}.admisionDetailDl{display:grid;grid-template-columns:200px 1fr;grid-gap:6px 12px;gap:6px 12px;margin:0;font-size:13.5px}.admisionDetailDl dt{color:#6b7280;font-weight:500}.admisionDetailDl dd{margin:0;color:#1f2937}.admisionDetailDate{color:#6b7280}.admisionDetailTech{margin:4px 0 0;padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.admisionDetailTech summary{cursor:pointer;font-weight:500;color:#4b5563}.admisionDetailTech .admisionDetailDl{margin-top:8px}.admisionPicker{position:relative;display:flex;flex-direction:column;gap:4px}.admisionPickerSelected{display:inline-flex;align-items:center;padding:6px 8px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;flex:1 1 auto}.admisionPicker>.btn{align-self:flex-start}.admisionPickerList{list-style:none;margin:0;padding:4px 0;background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 8px rgba(0,0,0,.06);max-height:220px;overflow-y:auto;position:absolute;top:100%;left:0;right:0;z-index:5}.admisionPickerOption{display:flex;flex-direction:column;align-items:flex-start;width:100%;background:transparent;border:0;padding:6px 10px;text-align:left;cursor:pointer;font-size:13px}.admisionPickerOption:hover{background:#f3f4f6}.admisionPickerHint{padding:6px 10px;color:#6b7280;font-size:12.5px}.admisionTabs{display:flex;gap:4px;border-bottom:1px solid #e5e7eb}.admisionTab{border:0;background:transparent;padding:8px 14px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.admisionTab:hover{color:#374151}.admisionTab.active{color:var(--accent,#2563eb);border-bottom-color:var(--accent,#2563eb)}.admisionBadgeNivel{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}.admisionBadgeAdmin{background:#e0f2fe;color:#075985;border-color:#7dd3fc}.admisionBadgeEstadoOk{background:#dcfce7;color:#14532d;border-color:#86efac}.admisionBadgeEstadoProceso{background:#fef3c7;color:#92400e;border-color:#fcd34d}.admisionBadgeEstadoEspera{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.admisionBadgeEstadoNo{background:#fce7f3;color:#9d174d;border-color:#f9a8d4}.admisionBadgeEstadoNeutro{background:#f3f4f6;color:#4b5563;border-color:#d1d5db}.admisionBadgePendienteAzul{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd}.admisionBadgePendienteAlerta{background:#ffedd5;color:#9a3412;border-color:#fdba74}.admisionParaHoy{border:1px solid #fdba74;background:#fff7ed;border-radius:8px;padding:10px 12px}.admisionParaHoy h4{margin:0 0 8px;font-size:14px;color:#9a3412}.admisionParaHoyCards{display:flex;flex-wrap:wrap;gap:8px}.admisionParaHoyCard{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:#fff;border:1px solid #fed7aa;border-radius:6px;padding:8px 10px;cursor:pointer;min-width:200px;flex:0 1 240px}.admisionParaHoyCard:hover{border-color:#fb923c}.admisionParaHoyCard.vencido{border-left:3px solid #ef4444}.admisionParaHoyCard.hoy{border-left:3px solid #f59e0b}.admisionTimeline{list-style:none;display:flex;flex-wrap:wrap;gap:6px 0;margin:0;padding:4px 0}.admisionTimelineNode{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1 1;min-width:80px;position:relative;text-align:center}.admisionTimelineNode:before{content:"";position:absolute;top:6px;left:-50%;width:100%;height:2px;background:#e5e7eb;z-index:0}.admisionTimelineNode:first-child:before{display:none}.admisionTimelineDot{width:14px;height:14px;border-radius:999px;background:#e5e7eb;border:2px solid #e5e7eb;z-index:1}.admisionTimelineLabel{font-size:11px;color:#9ca3af;line-height:1.2}.admisionTimelineNode.done .admisionTimelineDot{background:#22c55e;border-color:#22c55e}.admisionTimelineNode.done:before{background:#86efac}.admisionTimelineNode.done .admisionTimelineLabel{color:#15803d}.admisionTimelineNode.current .admisionTimelineDot{background:#fff;border-color:var(--accent,#2563eb)}.admisionTimelineNode.current .admisionTimelineLabel{color:var(--accent,#2563eb);font-weight:600}.admisionActions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.admisionActionPanel{border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.admisionActionPanel h5{margin:0;font-size:14px;color:#374151}.admisionActionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.admisionActionBtns{display:flex;justify-content:flex-end;gap:8px}.admisionAccordion{border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px}.admisionAccordion>summary{cursor:pointer;font-weight:600;color:#374151;font-size:13.5px}.admisionAccordion[open]>summary{margin-bottom:8px}.admisionDocsChecklist{display:flex;flex-direction:column;gap:6px}.admisionDocRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admisionDocDate{flex:0 1 160px}.admisionDocsList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13.5px}.admisionDocOk{color:#15803d}.admisionDocPend{color:#6b7280}.admisionPendientesList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admisionPendientesList li{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:13.5px;border-bottom:1px solid #f0f0f0;padding-bottom:8px}.admisionPendienteResuelto{opacity:.6}.admisionPendTag{font-size:11px;font-weight:700}.admisionPendTag.vencido{color:#dc2626}.admisionPendTag.hoy{color:#d97706}.admisionBitacora{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:13px}.admisionBitacora li{border-left:2px solid #e5e7eb;padding-left:10px}.admisionBitacoraHead{display:flex;justify-content:space-between;gap:8px}.admisionBitacoraTipo{font-weight:600;color:#374151}@media (max-width:720px){.admisionFormGrid{grid-template-columns:1fr}.admisionFormFieldWide{grid-column:span 1}.admisionDetailDl{grid-template-columns:1fr}.admisionDetailDl dt{margin-top:6px}.admisionFilters input[type=date],.admisionFilters select{flex:1 1 100%}.admisionActionGrid{grid-template-columns:1fr}.admisionActions{justify-content:flex-start}.admisionParaHoyCard{flex:1 1 100%}.admisionTimelineLabel{font-size:10px}}.whatsappShell{display:flex;flex-direction:column;gap:12px}.whatsappShell>.tabRow{margin:0;flex-wrap:nowrap;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.whatsappShell>.tabRow::-webkit-scrollbar{display:none}.whatsappShell>.tabRow>.btn{flex:0 0 auto;white-space:nowrap}.whatsappBandejaWrap{display:flex;flex-direction:column;gap:12px}.whatsappBandeja{display:grid;grid-template-columns:290px minmax(0,1fr) 240px;grid-gap:12px;gap:12px;min-height:480px;align-items:stretch}.whatsappConvList{border:1px solid var(--border,#e5e7eb);border-radius:10px;overflow-y:auto;max-height:70vh;flex-direction:column}.whatsappConvList,.whatsappConvListHeader{background:var(--card-bg,#fff);display:flex}.whatsappConvListHeader{justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border,#e5e7eb);font-size:13px;font-weight:600;color:#374151;position:-webkit-sticky;position:sticky;top:0;z-index:1}.whatsappConvListTabs{display:flex;gap:2px}.whatsappConvListTab{border:0;background:transparent;padding:6px 10px;font:inherit;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent}.whatsappConvListTab.active{color:var(--red,#b31b1b);border-bottom-color:var(--red,#b31b1b)}.whatsappSearchRow{display:flex;gap:6px;padding:8px 10px;border-bottom:1px solid #f3f4f6;align-items:center}.whatsappConvItem{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #f3f4f6;background:transparent;padding:10px 12px;font:inherit;cursor:pointer}.whatsappConvItem:hover{background:var(--shell-sidebar-item-placeholder-bg,#f8fafc)}.whatsappConvItem.active{background:var(--shell-sidebar-item-active-bg,#fef2f2)}.whatsappConvItemTop{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.whatsappConvPhone{font-weight:600;font-size:13px;color:#111827}.whatsappConvTime{font-size:11px;color:#9ca3af;white-space:nowrap}.whatsappConvItemBottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:2px}.whatsappConvSnippet{font-size:12px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.whatsappUnreadBadge{background:var(--red,#b31b1b);color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}.whatsappConvMeta{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.whatsappChat{background:var(--card-bg,#fff);border:1px solid var(--border,#e5e7eb);border-radius:10px;display:flex;flex-direction:column;max-height:70vh;min-width:0}.whatsappChatEmpty{margin:auto}.whatsappChatHeader{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 14px;border-bottom:1px solid var(--border,#e5e7eb);min-width:0;white-space:normal}.whatsappChatHeader strong{display:block;font-size:14px}.whatsappBackBtn{display:none}.whatsappChatAcciones{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.whatsappVentana{font-size:11px}.whatsappVentana.abierta{color:#15803d}.whatsappVentana.cerrada{color:#b45309}.whatsappDerivarSelect{width:auto;max-width:170px;height:30px;line-height:28px;font-size:12.5px}.whatsappChatMessages{flex:1 1 auto;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f8fafc}.whatsappMsg{max-width:78%;border-radius:12px;padding:8px 12px;font-size:13px;position:relative}.whatsappMsg.in{align-self:flex-start;background:#fff;border:1px solid var(--border,#e5e7eb);border-bottom-left-radius:4px}.whatsappMsg.out{align-self:flex-end;background:#dcfce7;border:1px solid #bbf7d0;border-bottom-right-radius:4px}.whatsappMsg.system{align-self:center;background:#fef3c7;border:1px solid #fcd34d;color:#92400e;font-size:12px;max-width:90%}.whatsappMsgText{margin:0;white-space:pre-wrap;word-break:break-word}.whatsappMsgTime{display:block;font-size:10px;color:#9ca3af;margin-top:3px;text-align:right}.whatsappTramoDivider{align-self:center;text-align:center;font-size:11px;font-weight:600;color:#6b7280;margin:6px 0 2px;max-width:95%}.whatsappAreasRow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 14px 6px}.whatsappAreaChipSinAcceso{opacity:.65}.whatsappAreasRow .whatsappAreasMas{font-family:inherit;cursor:pointer;background:transparent;color:#1d4ed8}.whatsappAreasRow .whatsappAreasMas:hover{background:#dbeafe;border-color:#93c5fd}.whatsappAreasAnteriores{flex:0 0 auto;display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding:0 14px 6px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.whatsappAreasAnteriores>*{flex:0 0 auto}@media (max-width:900px){.whatsappAreasRow .whatsappAreasMas{height:28px;padding:0 10px}}.whatsappIaBox{background:var(--shell-sidebar-item-placeholder-bg,#f8fafc);border:1px solid var(--border,#e5e7eb);border-radius:8px;padding:10px 14px;margin:8px 14px 0;font-size:13px;color:#374151}.whatsappIaBox p{margin:4px 0 0;white-space:pre-wrap}.whatsappIaBoxHead{display:flex;justify-content:space-between;align-items:center;gap:8px}.whatsappOrtoWarn{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;padding:10px 14px;margin:8px 12px 0;font-size:13px;color:#92400e}.whatsappOrtoWarn p{margin:0 0 6px}.whatsappOrtoCorregido{background:#fff;border:1px solid #fde68a;border-radius:6px;padding:8px 10px;white-space:pre-wrap;color:#374151}.whatsappOrtoBtns{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.whatsappChatAviso{margin:8px 12px 0}.whatsappComposer{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--border,#e5e7eb);align-items:flex-end}.whatsappComposerInput{flex:1 1 auto;height:auto;min-height:36px;resize:none;padding:8px 12px;line-height:1.45}.whatsappComposerBtns{display:flex;flex-direction:column;gap:6px;align-items:stretch}.whatsappFicha{background:var(--card-bg,#fff);border:1px solid var(--border,#e5e7eb);border-radius:10px;padding:14px;overflow-y:auto;max-height:70vh;font-size:13px}.whatsappFicha h3{margin:0 0 8px;font-size:14px}.whatsappFicha h4{margin:12px 0 6px;font-size:13px;color:#374151}.whatsappFichaDatos{margin:0}.whatsappFichaDatos dt{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:#9ca3af;margin-top:8px}.whatsappFichaDatos dd{margin:1px 0 0;color:#111827}.whatsappFichaHermanos{margin:0;padding-left:18px;color:#374151}.whatsappFichaHermanos li{margin:2px 0}.whatsappPatronesTexto{margin:0;white-space:pre-wrap;font-size:13px;color:#374151}@media (max-width:900px){.whatsappBandeja{grid-template-columns:1fr;min-height:0}.whatsappConvList{max-height:60vh}.whatsappBandeja.hasSelection .whatsappConvList,.whatsappBandeja:not(.hasSelection) .whatsappChat,.whatsappBandeja:not(.hasSelection) .whatsappFicha{display:none}.whatsappChat{max-height:60vh}.whatsappFicha{max-height:none}.whatsappBackBtn{display:inline-flex}.whatsappMsg{max-width:90%}}.permisosChips{display:flex;flex-wrap:wrap;gap:4px}.permisosChip{font-size:11px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:999px;padding:1px 8px;white-space:nowrap}.permisosChipAdmin{background:#fef3c7;color:#92400e;border-color:#fcd34d;font-weight:600}.permisosChipMore{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}.permisosEditBtn{white-space:nowrap}.permisosSinLogin{color:#b45309}.permisosModalBody{overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:12px;padding:4px 2px 8px}.permisosModalAviso{background:#fef3c7;border:1px solid #fcd34d;color:#92400e;border-radius:8px;padding:10px 14px;font-size:13px;margin:0}.permisosModalGroup{border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px}.permisosModalGroup h5{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.permisosModalGroupAdmin{background:#fffbeb;border-color:#fcd34d}.permisosToggleRow{display:flex;align-items:flex-start;gap:10px;padding:6px 2px;cursor:pointer}.permisosToggleRow input[type=checkbox]{margin-top:3px}.permisosToggleRow>span:last-child{display:flex;flex-direction:column}.permisosToggleRow strong{font-size:13px;font-weight:600;color:#111827}.permisosToggleRow small{font-size:12px;color:#6b7280}@media (max-width:720px){.permisosTable td:nth-child(3),.permisosTable th:nth-child(3){display:none}}.purchasesDetailModal .modalBody{overflow-x:hidden}.purchasesDetailModal .modalHead h4{min-width:0}.purchasesDetailModal .modalBody a,.purchasesDetailModal .modalBody label,.purchasesDetailModal .modalBody li,.purchasesDetailModal .modalBody p,.purchasesDetailModal .modalBody span,.purchasesDetailModal .modalBody strong,.purchasesDetailModal .modalBody summary,.purchasesDetailModal .modalBody td,.purchasesDetailModal .modalBody th,.purchasesDetailModal .modalHead h4{overflow-wrap:anywhere;word-break:break-word}.purchasesDetailModal .modalBody .btn{max-width:100%;white-space:normal}.purchasesDetailModal .modalBody .card,.purchasesDetailModal .modalBody details{min-width:0;max-width:100%}.purchasesDetailModal .modalBody .table,.purchasesDetailModal .modalBody .tableWrap>table{min-width:520px}.portalModuleCountersCompact{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 10px}.portalCountersLabel{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-text,#6b7280);margin-right:2px}.portalCounterChip{display:inline-flex;align-items:center;gap:7px;background:var(--chip-bg,#f8fafc);color:var(--chip-text,#334155);padding:3px 10px 3px 11px;font-size:12px;font-weight:600;min-height:28px;cursor:default;font-family:inherit}.portalCounterChip,.portalCounterChip strong{border:1px solid var(--chip-border,#e2e8f0);border-radius:999px}.portalCounterChip strong{font-size:12.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--white,#fff);padding:0 7px;line-height:18px}.portalCounterChipOn strong{background:var(--red,#b31b1b);border-color:var(--red,#b31b1b);color:#fff}.portalCounterChip:not(:disabled){cursor:pointer}.portalCounterChip:not(:disabled):hover{border-color:var(--red,#b31b1b)}.portalCounterRefresh{border:1px solid var(--chip-border,#e2e8f0);background:var(--white,#fff);color:var(--muted-text,#6b7280);border-radius:50%;width:28px;height:28px;font-size:15px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.portalCounterRefresh:hover{border-color:var(--red,#b31b1b);color:var(--red,#b31b1b)}@media (max-width:640px){.portalCounterChip{padding:2px 8px 2px 9px;font-size:11px}}.whatsappTplLista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.whatsappTplItem{border:1px solid var(--border,#e5e7eb);border-radius:10px;background:#fff;overflow:hidden}.whatsappTplItem.abierto{border-color:#b8c0cb}.whatsappTplItemHead{display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;background:none;font:inherit;cursor:pointer;text-align:left}.whatsappTplItemHead:hover{background:var(--shell-sidebar-item-placeholder-bg,#f8fafc)}.whatsappTplNombre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;color:#111827;word-break:break-all}.whatsappTplMeta{font-size:11px;color:#9ca3af}.whatsappTplChevron{margin-left:auto;color:#9ca3af;font-size:12px}.whatsappTplDetalle{display:flex;flex-wrap:wrap;gap:20px;padding:14px 12px 16px;border-top:1px solid #f3f4f6;background:#fcfcfd}.whatsappTplPreview{flex:0 1 340px;display:flex;flex-direction:column;gap:3px}.whatsappTplHeader{margin:0 0 6px;font-weight:600}.whatsappTplBody{margin:0;white-space:pre-wrap;word-break:break-word}.whatsappTplFooter{margin:6px 0 0;font-size:11px;color:#6b7280}.whatsappTplVar{background:#fde68a;border-bottom:1px dotted #b45309;border-radius:3px;padding:0 2px}.whatsappTplBoton{border:1px solid #c5e8ad;border-radius:6px;background:#fff;color:#1d4ed8;font-size:12px;font-weight:500;text-align:center;padding:7px 8px}.whatsappTplPie{margin:6px 0 0;font-size:11px;color:#9ca3af;text-align:right}.whatsappTplInfo{flex:1 1 240px;display:flex;flex-direction:column;gap:6px}@media (max-width:640px){.whatsappTplPreview{flex-basis:100%}}