:root{--nvis-primary:#1769A3;--nvis-primary-2:#0083BF;--nvis-light:#8DD5EE;--nvis-dark:#173358;--nvis-text:#344054;--nvis-muted:#667085;--nvis-border:#E6EDF3;--nvis-bg:#F4F8FB;--nvis-white:#fff;--nvis-shadow:0 18px 45px rgba(23,105,163,.10)}
.nvis-system,.nvis-system *{box-sizing:border-box}.nvis-system{position:relative;display:flex;width:100%;min-height:100vh;background:var(--nvis-bg);color:var(--nvis-text);font-family:Montserrat,Arial,sans-serif;overflow:hidden}.nvis-system--fullscreen{width:100vw;min-height:100vh;margin-left:calc(50% - 50vw)}
.nvis-sidebar{width:286px;flex:0 0 286px;background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%);border-right:1px solid var(--nvis-border);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;z-index:30;transition:.25s ease}.nvis-brand{height:116px;padding:22px 28px;display:flex;align-items:center;border-bottom:1px solid var(--nvis-border)}.nvis-brand img{display:block;width:100%;height:auto;max-height:72px;object-fit:contain}.nvis-nav{padding:18px 14px;overflow-y:auto;flex:1}.nvis-nav-group{margin-bottom:6px}.nvis-nav-parent{width:100%;border:0;background:transparent;border-radius:12px;padding:12px 14px;display:grid;grid-template-columns:28px 1fr 20px;align-items:center;gap:8px;color:#465567;text-align:left;font-weight:700;font-size:14px;cursor:pointer;transition:.2s}.nvis-nav-parent:hover,.nvis-nav-group.is-open>.nvis-nav-parent{background:#EAF5FB;color:var(--nvis-primary)}.nvis-nav-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#EEF6FB;color:var(--nvis-primary);font-size:17px}.nvis-nav-arrow{font-size:18px;transition:.2s}.nvis-nav-group.is-open .nvis-nav-arrow{transform:rotate(180deg)}.nvis-submenu{max-height:0;overflow:hidden;transition:max-height .28s ease;padding-left:16px}.nvis-nav-group.is-open .nvis-submenu{max-height:430px;overflow-y:auto;padding-top:5px;padding-bottom:4px}.nvis-nav-group.is-open .nvis-submenu::-webkit-scrollbar{width:5px}.nvis-nav-group.is-open .nvis-submenu::-webkit-scrollbar-thumb{background:#c7dbe8;border-radius:999px}.nvis-submenu-link{width:100%;border:0;background:transparent;color:#6B7887;padding:9px 12px;display:flex;align-items:center;gap:10px;text-align:left;border-radius:9px;font-size:13px;cursor:pointer}.nvis-submenu-link span{width:6px;height:6px;border-radius:50%;background:#C7D5E0}.nvis-submenu-link:hover,.nvis-submenu-link.is-active{background:#F0F8FC;color:var(--nvis-primary);font-weight:700}.nvis-submenu-link.is-active span{background:var(--nvis-primary-2);box-shadow:0 0 0 4px rgba(0,131,191,.12)}.nvis-sidebar-footer{margin:10px 18px 18px;padding:14px;border-radius:14px;background:linear-gradient(135deg,#EAF7FC,#F4FBFE);display:flex;gap:10px;align-items:center}.nvis-sidebar-footer strong,.nvis-sidebar-footer span{display:block}.nvis-sidebar-footer strong{font-size:12px;color:var(--nvis-dark)}.nvis-sidebar-footer span{font-size:11px;color:var(--nvis-muted);margin-top:2px}.nvis-help-dot{width:10px;height:10px;border-radius:50%;background:#27AE60;box-shadow:0 0 0 5px rgba(39,174,96,.12)}
.nvis-main{flex:1;min-width:0;height:100vh;overflow:auto}.nvis-topbar{height:88px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--nvis-border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:20}.nvis-topbar-left{display:flex;align-items:center;gap:14px}.nvis-topbar h1{font-size:20px;line-height:1.2;color:var(--nvis-dark);margin:2px 0 0;font-weight:800}.nvis-eyebrow{font-size:10px;letter-spacing:.12em;color:var(--nvis-primary);font-weight:800;margin:0}.nvis-icon-button{display:none;border:0;background:#EEF6FB;width:42px;height:42px;border-radius:11px;padding:11px;cursor:pointer}.nvis-icon-button span{display:block;height:2px;background:var(--nvis-primary);margin:4px 0}.nvis-topbar-actions{display:flex;align-items:center;gap:14px}.nvis-search-trigger{height:42px;min-width:290px;border:1px solid var(--nvis-border);background:#F9FBFC;border-radius:12px;color:#8491A0;display:flex;align-items:center;gap:9px;padding:0 12px;cursor:pointer}.nvis-search-trigger kbd{margin-left:auto;background:#fff;border:1px solid #D9E2EA;border-radius:6px;padding:3px 6px;font-size:10px}.nvis-notification{width:42px;height:42px;border:1px solid var(--nvis-border);background:#fff;border-radius:12px;position:relative;cursor:pointer}.nvis-notification i{position:absolute;width:8px;height:8px;background:#E45757;border:2px solid #fff;border-radius:50%;right:8px;top:7px}.nvis-user-card{display:flex;align-items:center;gap:9px;padding-left:4px}.nvis-avatar{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--nvis-primary),var(--nvis-primary-2));display:grid;place-items:center;color:#fff;font-size:12px;font-weight:800}.nvis-user-card strong,.nvis-user-card span{display:block}.nvis-user-card strong{font-size:12px;color:var(--nvis-dark)}.nvis-user-card span{font-size:10px;color:var(--nvis-muted);margin-top:2px}
.nvis-content{padding:28px 32px 46px;max-width:1600px;margin:0 auto}.nvis-view{display:none}.nvis-view.is-active{display:block;animation:nvisFade .25s ease}@keyframes nvisFade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.nvis-welcome{min-height:180px;border-radius:22px;background:linear-gradient(120deg,var(--nvis-dark),var(--nvis-primary) 62%,var(--nvis-primary-2));color:#fff;padding:32px 36px;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;box-shadow:var(--nvis-shadow)}.nvis-welcome:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;border:52px solid rgba(255,255,255,.08);right:-60px;top:-120px}.nvis-welcome h2{margin:8px 0 8px;font-size:30px;line-height:1.15;color:#fff;font-weight:800}.nvis-welcome p{margin:0;color:rgba(255,255,255,.82);max-width:680px}.nvis-welcome .nvis-section-label{color:var(--nvis-light)}.nvis-welcome-art{width:190px;height:120px;position:relative;z-index:2}.nvis-welcome-art span{position:absolute;border:2px solid rgba(255,255,255,.28);border-radius:50%}.nvis-welcome-art span:nth-child(1){width:120px;height:120px;right:0;top:0}.nvis-welcome-art span:nth-child(2){width:78px;height:78px;right:21px;top:21px;background:rgba(255,255,255,.08)}.nvis-welcome-art span:nth-child(3){width:24px;height:24px;right:48px;top:48px;background:var(--nvis-light);border:0;box-shadow:0 0 0 12px rgba(141,213,238,.13)}.nvis-section-label{font-size:10px;letter-spacing:.14em;color:var(--nvis-primary-2);font-weight:900}.nvis-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:20px 0}.nvis-stat-card{background:#fff;border:1px solid var(--nvis-border);border-radius:17px;padding:20px;display:flex;align-items:center;gap:15px;box-shadow:0 8px 24px rgba(26,72,110,.05)}.nvis-stat-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#E7F5FB,#F5FBFE);display:grid;place-items:center;color:var(--nvis-primary);font-size:22px}.nvis-stat-card span,.nvis-stat-card strong,.nvis-stat-card small{display:block}.nvis-stat-card span{font-size:12px;color:var(--nvis-muted)}.nvis-stat-card strong{font-size:25px;color:var(--nvis-dark);line-height:1.2;margin:3px 0}.nvis-stat-card small{font-size:10px;color:var(--nvis-primary)}.nvis-dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.8fr);gap:20px}.nvis-panel{background:#fff;border:1px solid var(--nvis-border);border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(26,72,110,.045)}.nvis-panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.nvis-panel h3{margin:4px 0 0;font-size:18px;color:var(--nvis-dark)}.nvis-text-button{border:0;background:transparent;color:var(--nvis-primary);font-weight:700;font-size:12px;cursor:pointer}.nvis-table-wrap{overflow:auto}.nvis-table{width:100%;border-collapse:collapse;font-size:12px}.nvis-table th{text-align:left;color:#8895A5;font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:10px 12px;border-bottom:1px solid var(--nvis-border)}.nvis-table td{padding:13px 12px;border-bottom:1px solid #EEF2F5;color:#556273;white-space:nowrap}.nvis-table td strong,.nvis-table td span{display:block}.nvis-table td strong{color:var(--nvis-dark);font-size:12px}.nvis-table td span:not(.nvis-status){font-size:10px;color:#98A2B3;margin-top:2px}.nvis-status{display:inline-block!important;width:max-content;border-radius:999px;padding:5px 9px;font-size:9px!important;font-weight:800}.nvis-status--confirmed{background:#EAF8F0;color:#218C55!important}.nvis-status--pending{background:#FFF5DE;color:#A66A00!important}.nvis-status--waiting{background:#EEF3FF;color:#4665A7!important}.nvis-quick-actions{display:grid;gap:10px}.nvis-quick-actions button{border:1px solid var(--nvis-border);background:#FBFDFE;border-radius:13px;padding:12px;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer;transition:.2s}.nvis-quick-actions button:hover{transform:translateY(-2px);border-color:#B7DDED;background:#F4FBFE}.nvis-quick-actions button>span{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#EAF6FB;color:var(--nvis-primary);font-size:18px}.nvis-quick-actions strong,.nvis-quick-actions small{display:block}.nvis-quick-actions strong{font-size:12px;color:var(--nvis-dark)}.nvis-quick-actions small{font-size:10px;color:var(--nvis-muted);margin-top:2px}
.nvis-page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.nvis-page-heading h2{margin:5px 0 6px;color:var(--nvis-dark);font-size:27px}.nvis-page-heading p{margin:0;color:var(--nvis-muted);font-size:13px}.nvis-primary-button,.nvis-outline-button{border-radius:11px;padding:11px 16px;font-weight:800;font-size:12px;cursor:pointer}.nvis-primary-button{border:0;background:linear-gradient(135deg,var(--nvis-primary),var(--nvis-primary-2));color:#fff;box-shadow:0 8px 18px rgba(23,105,163,.18)}.nvis-outline-button{border:1px solid var(--nvis-border);background:#fff;color:#566475}.nvis-toolbar{display:flex;gap:10px;margin-bottom:20px}.nvis-filter-search{flex:1;min-width:220px;height:42px;border:1px solid var(--nvis-border);background:#FAFCFD;border-radius:11px;display:flex;align-items:center;padding:0 12px;gap:8px}.nvis-filter-search input{border:0!important;background:transparent!important;outline:0!important;box-shadow:none!important;width:100%;font-size:12px;padding:0!important}.nvis-empty-state{text-align:center;padding:70px 20px}.nvis-empty-state>div{width:64px;height:64px;border-radius:18px;background:#EAF6FB;color:var(--nvis-primary);display:grid;place-items:center;margin:0 auto 14px;font-size:26px}.nvis-empty-state h3{margin:0 0 7px}.nvis-empty-state p{max-width:560px;margin:0 auto 18px;color:var(--nvis-muted);font-size:13px}.nvis-form{max-width:1050px}.nvis-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.nvis-form label{display:block}.nvis-form label span{display:block;font-size:11px;font-weight:800;color:#475467;margin:0 0 7px}.nvis-form input,.nvis-form textarea,.nvis-form select{width:100%;border:1px solid #DDE6EC!important;background:#FBFDFE!important;border-radius:10px!important;padding:12px 13px!important;font-family:inherit!important;font-size:12px!important;color:var(--nvis-text)!important;outline:none!important;box-shadow:none!important}.nvis-form input:focus,.nvis-form textarea:focus{border-color:var(--nvis-primary-2)!important;box-shadow:0 0 0 3px rgba(0,131,191,.09)!important}.nvis-field--wide{grid-column:span 2}.nvis-form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--nvis-border);margin-top:22px;padding-top:18px}
.nvis-search-modal{position:fixed;inset:0;background:rgba(12,33,50,.45);backdrop-filter:blur(5px);z-index:999999;display:none;align-items:flex-start;justify-content:center;padding-top:12vh}.nvis-search-modal.is-open{display:flex}.nvis-search-dialog{width:min(680px,92vw);background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.22);overflow:hidden}.nvis-search-field{height:64px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--nvis-border)}.nvis-search-field input{flex:1;border:0!important;outline:0!important;box-shadow:none!important;padding:0!important;font-size:14px!important}.nvis-search-field button{border:1px solid var(--nvis-border);background:#F6F8FA;border-radius:7px;padding:5px 8px;color:var(--nvis-muted)}.nvis-search-empty{text-align:center;padding:46px}.nvis-search-empty strong{color:var(--nvis-dark)}.nvis-search-empty p{color:var(--nvis-muted);font-size:12px}
.nvis-toast{position:fixed;right:24px;bottom:24px;background:var(--nvis-dark);color:#fff;border-radius:12px;padding:13px 16px;box-shadow:0 14px 35px rgba(0,0,0,.2);z-index:9999999;font-size:12px;animation:nvisFade .2s ease}
@media(max-width:1100px){.nvis-stat-grid{grid-template-columns:repeat(2,1fr)}.nvis-dashboard-grid{grid-template-columns:1fr}.nvis-search-trigger{min-width:220px}.nvis-user-card>div:last-child{display:none}}
@media(max-width:820px){.nvis-sidebar{position:fixed;left:-286px;top:0}.nvis-system.is-sidebar-open .nvis-sidebar{left:0;box-shadow:20px 0 50px rgba(0,0,0,.18)}.nvis-icon-button{display:block}.nvis-topbar{padding:0 16px}.nvis-search-trigger{width:42px;min-width:42px;padding:0;justify-content:center}.nvis-search-trigger span:nth-child(2),.nvis-search-trigger kbd{display:none}.nvis-content{padding:20px 16px 36px}.nvis-welcome{padding:26px}.nvis-welcome h2{font-size:24px}.nvis-welcome-art{display:none}.nvis-page-heading{align-items:flex-start;gap:14px}.nvis-topbar h1{font-size:17px}}
@media(max-width:560px){.nvis-stat-grid{grid-template-columns:1fr}.nvis-form-grid{grid-template-columns:1fr}.nvis-field--wide{grid-column:auto}.nvis-page-heading{display:block}.nvis-page-heading .nvis-primary-button{margin-top:14px}.nvis-toolbar{flex-wrap:wrap}.nvis-filter-search{flex-basis:100%}.nvis-user-card{display:none}.nvis-topbar-actions{gap:7px}.nvis-topbar{height:78px}.nvis-eyebrow{display:none}.nvis-welcome{min-height:165px}.nvis-welcome h2{font-size:21px}.nvis-panel{padding:16px}}

/* Reporte Simple */
.nvis-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.nvis-field--span-3{grid-column:span 3}.nvis-simple-report{max-width:none;padding:0;overflow:hidden}.nvis-report-section{padding:24px;border-bottom:1px solid var(--nvis-border)}.nvis-report-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px}.nvis-report-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#EAF6FB;color:var(--nvis-primary);font-weight:900;font-size:11px}.nvis-report-title h3{margin:0 0 3px}.nvis-report-title p{margin:0;color:var(--nvis-muted);font-size:11px}.nvis-report-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.55fr);align-items:start}.nvis-report-chart-card{margin:24px 24px 24px 0;padding:22px;border:1px solid var(--nvis-border);border-radius:18px;background:linear-gradient(180deg,#F9FCFE,#fff);position:sticky;top:112px}.nvis-report-chart-card h3{margin:5px 0 20px}.nvis-pie{width:220px;height:220px;border-radius:50%;margin:0 auto 22px;display:grid;place-items:center;position:relative;background:conic-gradient(#E7EEF3 0 360deg);transition:background .3s}.nvis-pie:after{content:"";position:absolute;width:124px;height:124px;border-radius:50%;background:#fff;box-shadow:0 4px 20px rgba(23,51,88,.08)}.nvis-pie>div{position:relative;z-index:2;text-align:center}.nvis-pie strong,.nvis-pie span{display:block}.nvis-pie strong{font-size:28px;color:var(--nvis-dark)}.nvis-pie span{font-size:10px;color:var(--nvis-muted)}.nvis-chart-legend{display:grid;gap:10px}.nvis-chart-legend>div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:11px}.nvis-chart-legend i{width:10px;height:10px;border-radius:3px}.nvis-chart-legend .is-subsidiado{background:#1769A3}.nvis-chart-legend .is-no-seguro{background:#8DD5EE}.nvis-chart-legend .is-privado{background:#173358}.nvis-chart-legend strong{color:var(--nvis-dark)}.nvis-chart-note{font-size:10px;color:var(--nvis-muted);line-height:1.5;margin:16px 0 0;padding-top:14px;border-top:1px solid var(--nvis-border)}.nvis-metric-table{border:1px solid var(--nvis-border);border-radius:13px;overflow:hidden}.nvis-metric-row{display:grid;grid-template-columns:1fr 140px 110px;align-items:center;min-height:48px;border-bottom:1px solid var(--nvis-border)}.nvis-metric-row:last-child{border-bottom:0}.nvis-metric-row>*{padding:10px 14px}.nvis-metric-row input{border:0!important;border-left:1px solid var(--nvis-border)!important;border-radius:0!important;background:#FBFDFE!important;height:48px}.nvis-metric-row output{height:48px;display:flex;align-items:center;border-left:1px solid var(--nvis-border);font-weight:800;color:var(--nvis-primary)}.nvis-metric-head{background:#F2F8FB;min-height:40px;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.nvis-metric-total{background:#F8FBFD}.nvis-private-insurance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.nvis-private-insurance-grid label{display:grid;grid-template-columns:1fr 90px;align-items:center;border:1px solid var(--nvis-border);border-radius:10px;overflow:hidden;background:#FBFDFE}.nvis-private-insurance-grid label span{margin:0;padding:11px;font-size:10px}.nvis-private-insurance-grid input{border:0!important;border-left:1px solid var(--nvis-border)!important;border-radius:0!important}.nvis-inline-total{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:14px;padding:13px 16px;background:#EAF6FB;border-radius:11px;color:var(--nvis-dark);font-size:12px}.nvis-inline-total output{font-size:19px;color:var(--nvis-primary);font-weight:900}.nvis-report-columns{display:grid;grid-template-columns:1fr 1fr}.nvis-report-columns>.nvis-report-section:first-child{border-right:1px solid var(--nvis-border)}.nvis-report-actions{padding:20px 24px;margin:0}.nvis-form-message{padding:0 24px 20px;font-size:12px;font-weight:700}.nvis-form-message.is-success{color:#218C55}.nvis-form-message.is-error{color:#B42318}.nvis-report-history{margin-top:22px}.nvis-report-filters input[type=date]{border:1px solid var(--nvis-border);border-radius:11px;padding:0 12px;background:#fff;font-size:11px}.nvis-row-actions{display:flex;gap:6px}.nvis-row-actions button{border:1px solid var(--nvis-border);background:#fff;border-radius:8px;padding:6px 9px;color:var(--nvis-primary);font-size:10px;font-weight:800;cursor:pointer}.nvis-row-actions button.is-danger{color:#B42318}.nvis-table-empty{text-align:center;padding:20px;color:var(--nvis-muted)}.nvis-toast.is-error{background:#B42318}.nvis-toast.is-success{background:#173358}.nvis-primary-button:disabled{opacity:.6;cursor:wait}
@media(max-width:1100px){.nvis-report-layout{grid-template-columns:1fr}.nvis-report-chart-card{margin:20px;position:static}.nvis-private-insurance-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.nvis-form-grid--3{grid-template-columns:1fr}.nvis-field--span-3{grid-column:auto}.nvis-report-columns{grid-template-columns:1fr}.nvis-report-columns>.nvis-report-section:first-child{border-right:0}.nvis-metric-row{grid-template-columns:1fr 90px 80px}.nvis-private-insurance-grid{grid-template-columns:1fr}.nvis-report-filters input[type=date]{height:42px}.nvis-pie{width:190px;height:190px}}
@media print{body *{visibility:hidden!important}.nvis-simple-report,.nvis-simple-report *{visibility:visible!important}.nvis-simple-report{position:absolute;left:0;top:0;width:100%;box-shadow:none!important;border:0!important}.nvis-sidebar,.nvis-topbar,.nvis-page-heading,.nvis-report-history,.nvis-report-actions,.nvis-form-message{display:none!important}.nvis-content{padding:0!important}.nvis-report-chart-card{position:static!important}.nvis-system{background:#fff!important}.nvis-report-section{break-inside:avoid}.nvis-form input,.nvis-form textarea{border-color:#999!important;background:#fff!important}}

/* Participantes de jornadas */
.nvis-import-panel{display:flex;align-items:center;gap:18px;margin-bottom:22px;flex-wrap:wrap}.nvis-import-panel>div{flex:1;min-width:280px}.nvis-import-panel h3{margin:0 0 5px}.nvis-import-panel p{margin:0;color:#667784}.nvis-file-button{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border:1px solid #1769A3;border-radius:10px;color:#1769A3;font-weight:700;cursor:pointer;background:#fff}.nvis-form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.nvis-check-field{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;padding:13px;border:1px solid #dce7ee;border-radius:10px}.nvis-check-field input{width:18px!important;height:18px!important}.nvis-check-field span{margin:0!important}.nvis-form select,.nvis-toolbar select{width:100%;min-height:46px;border:1px solid #d6e2ea;border-radius:10px;background:#fff;padding:0 12px;color:#243746}.nvis-field--span-3{grid-column:span 3}@media(max-width:1050px){.nvis-form-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.nvis-form-grid--4{grid-template-columns:1fr}.nvis-field--span-3{grid-column:span 1}.nvis-import-panel>*{width:100%}}

/* Sistema de citas INVIS */
.nvis-public-booking{max-width:980px;margin:24px auto;background:#fff;border:1px solid #dce7ee;border-radius:22px;box-shadow:0 18px 50px rgba(23,51,88,.10);overflow:hidden;font-family:Montserrat,Arial,sans-serif;color:#243746}.nvis-public-booking__head{padding:34px;background:linear-gradient(135deg,#1769A3,#0083BF);color:#fff}.nvis-public-booking__head span{font-size:11px;font-weight:800;letter-spacing:.12em}.nvis-public-booking__head h2{margin:8px 0;font-size:30px;color:#fff}.nvis-public-booking__head p{margin:0;opacity:.9}.nvis-public-booking form{padding:30px}.nvis-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nvis-public-grid label{display:flex;flex-direction:column;gap:7px}.nvis-public-grid label>span{font-size:12px;font-weight:700;color:#334b5c}.nvis-public-grid input,.nvis-public-grid select,.nvis-public-grid textarea{width:100%;border:1px solid #d6e2ea;border-radius:11px;background:#fff;padding:12px;font:inherit;font-size:13px;color:#243746;box-sizing:border-box}.nvis-public-grid input,.nvis-public-grid select{min-height:48px}.nvis-public-grid input:focus,.nvis-public-grid select:focus,.nvis-public-grid textarea:focus{outline:0;border-color:#0083BF;box-shadow:0 0 0 3px rgba(0,131,191,.10)}.nvis-public-wide{grid-column:span 3}.nvis-public-consent{display:flex;align-items:flex-start;gap:9px;margin:18px 0;color:#667784;font-size:12px}.nvis-public-consent input{margin-top:2px}.nvis-source{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800}.nvis-source--web{background:#e5f5fb;color:#0879a8}.nvis-source--panel{background:#eef1f4;color:#566674}.nvis-table select[data-status-id]{min-width:120px;border:1px solid #d6e2ea;border-radius:8px;padding:7px;background:#fff;font-size:10px}.nvis-toolbar input[type=date]{min-height:42px;border:1px solid #d6e2ea;border-radius:10px;padding:0 10px;background:#fff}
@media(max-width:850px){.nvis-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nvis-public-wide{grid-column:span 2}}
@media(max-width:560px){.nvis-public-booking{margin:12px}.nvis-public-booking__head,.nvis-public-booking form{padding:22px}.nvis-public-grid{grid-template-columns:1fr}.nvis-public-wide{grid-column:auto}.nvis-public-booking__head h2{font-size:24px}}

.nvis-login-lock{min-height:100vh;display:grid;place-items:center;padding:30px;background:linear-gradient(135deg,#eef8fd,#fff)}
.nvis-login-card{width:min(460px,100%);background:#fff;border:1px solid #dceaf3;border-radius:26px;padding:38px;box-shadow:0 24px 70px rgba(20,74,115,.14)}
.nvis-login-card img{display:block;max-width:220px;margin:0 auto 28px}.nvis-login-card h2{color:#12345b;font-size:28px;margin:8px 0}.nvis-login-card p{color:#6b7c91;line-height:1.6}.nvis-login-card label{display:block;font-weight:700;color:#17375e;margin:14px 0 6px}.nvis-login-card input[type=text],.nvis-login-card input[type=password]{width:100%;padding:13px;border:1px solid #cadce8;border-radius:10px}.nvis-login-card input[type=submit]{width:100%;margin-top:18px;border:0;border-radius:11px;padding:14px;background:#087db8;color:#fff;font-weight:800;cursor:pointer}
.nvis-timeline-panel[hidden]{display:none}.nvis-timeline-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px}.nvis-timeline-form textarea{grid-column:1/-1;min-height:90px}.nvis-timeline-form button{grid-column:1/-1}.nvis-timeline-form input,.nvis-timeline-form select,.nvis-timeline-form textarea{border:1px solid #d5e3ed;border-radius:10px;padding:12px;font:inherit}.nvis-timeline-item{position:relative;display:grid;grid-template-columns:24px 1fr;gap:12px;padding:0 0 24px}.nvis-timeline-item:before{content:"";position:absolute;left:7px;top:16px;bottom:0;width:2px;background:#dbeaf4}.nvis-timeline-dot{width:16px;height:16px;border-radius:50%;background:#0787c6;box-shadow:0 0 0 5px #e7f6fd}.nvis-timeline-item span,.nvis-timeline-item small{color:#72839a;font-size:12px}.nvis-timeline-item h4{margin:3px 0;color:#17375e}.nvis-timeline-item p{margin:4px 0;color:#52677e}.nvis-report-bars{display:grid;gap:10px}.nvis-report-bars>div{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:10px;background:#f5f9fc;color:#38536c}.nvis-report-bars strong{color:#087db8}.nvis-user-card span{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.nvis-timeline-form{grid-template-columns:1fr}.nvis-timeline-form textarea,.nvis-timeline-form button{grid-column:auto}}

/* Expedientes y filtros avanzados v2.1 */
.nvis-patient-filters{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(160px,1fr)) auto;gap:12px;align-items:center;margin-bottom:14px}
.nvis-patient-filters select{width:100%;min-height:46px;border:1px solid #d9e7ef;border-radius:12px;padding:0 12px;background:#fff;color:#173358}
.nvis-results-summary{padding:10px 14px;margin-bottom:12px;border-radius:10px;background:#eef8fc;color:#527083;font-size:13px;font-weight:600}
.nvis-inline-actions,.nvis-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nvis-icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:38px;padding:0 10px;border-radius:10px;background:#e9f7fc;color:#007bb5;font-weight:800;text-decoration:none}
.nvis-timeline-item p{white-space:pre-wrap}
@media(max-width:1100px){.nvis-patient-filters{grid-template-columns:1fr 1fr}.nvis-patient-filters .nvis-filter-search{grid-column:1/-1}}
@media(max-width:650px){.nvis-patient-filters{grid-template-columns:1fr}.nvis-patient-filters .nvis-filter-search{grid-column:auto}.nvis-inline-actions{width:100%;justify-content:flex-start}}

.nvis-global-results{display:grid;gap:8px;margin-top:12px}.nvis-global-results button{width:100%;display:grid;gap:3px;text-align:left;padding:13px 15px;border:1px solid #d8e8f1;border-radius:12px;background:#fff;color:#173358;cursor:pointer;transition:.18s}.nvis-global-results button:hover{border-color:#0083bf;background:#f3fbff;transform:translateY(-1px)}.nvis-global-results strong{font-size:14px}.nvis-global-results span{font-size:12px;color:#3d617a}.nvis-global-results small{font-size:11px;color:#7890a2}

/* Módulos clínicos integrados v3 */
.nvis-clinical-record-form{margin-bottom:22px;border-top:4px solid #1769a3}
.nvis-patient-suggestions{position:absolute;z-index:30;left:0;right:0;top:100%;background:#fff;border:1px solid #dce7ef;border-radius:12px;box-shadow:0 18px 40px rgba(18,55,86,.15);max-height:260px;overflow:auto}
.nvis-clinical-record-form label{position:relative}
.nvis-patient-suggestions:empty{display:none}
.nvis-patient-suggestions button{display:flex;width:100%;flex-direction:column;gap:3px;padding:11px 13px;border:0;border-bottom:1px solid #edf2f6;background:#fff;text-align:left;cursor:pointer}
.nvis-patient-suggestions button:hover{background:#f3f9fd}.nvis-patient-suggestions button strong{color:#173358}.nvis-patient-suggestions button span,.nvis-no-suggestion{font-size:12px;color:#667785}.nvis-no-suggestion{display:block;padding:13px}
[data-clinical-module] select[data-clinical-status-id]{min-width:145px;border:1px solid #d8e4ec;border-radius:9px;padding:7px;background:#fff}
[data-clinical-module] .nvis-table td span{display:block;color:#748593;font-size:12px;margin-top:3px}
.nvis-participant-filters{display:grid;grid-template-columns:minmax(230px,1.6fr) repeat(5,minmax(145px,1fr)) auto;gap:10px;align-items:center;margin-bottom:14px}.nvis-participant-filters select,.nvis-participant-filters input{width:100%}@media(max-width:1200px){.nvis-participant-filters{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.nvis-participant-filters{grid-template-columns:1fr}}
.nvis-status--success{background:#e8f8ef!important;color:#177245!important;border-color:#bfe8ce!important}

/* Paciente integral v3.2 */
.nvis-patient-editor-form{display:grid;gap:26px}.nvis-form-section{display:flex;gap:16px;align-items:flex-start;border-top:1px solid #dfeaf2;padding-top:24px}.nvis-form-section:first-of-type{border-top:0;padding-top:0}.nvis-form-section h3{margin:0;color:#14345f;font-size:26px;font-weight:700}.nvis-form-section p{margin:5px 0 0;color:#6d7890}.nvis-section-number{width:48px;height:48px;border-radius:15px;background:#e8f6fd;color:#0879bd;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.nvis-form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.nvis-span-2{grid-column:span 2}.nvis-span-3{grid-column:1/-1}.nvis-check-card{min-height:76px;display:flex!important;flex-direction:row!important;align-items:center;gap:13px;border:1px solid #d8e5ee;border-radius:16px;padding:18px 20px;background:#fff}.nvis-check-card input{width:24px!important;height:24px!important;flex:0 0 auto}.nvis-check-card span{margin:0!important;font-weight:700;color:#34465e}.nvis-patient-editor-form textarea{min-height:120px}.nvis-form-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #dfeaf2;padding-top:24px}
@media(max-width:1100px){.nvis-form-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.nvis-form-grid--3,.nvis-form-grid--4{grid-template-columns:1fr}.nvis-span-2,.nvis-span-3{grid-column:auto}.nvis-form-section h3{font-size:21px}}

.nvis-chart-divider{height:1px;background:var(--nvis-border);margin:22px 0}.nvis-pie--cost{width:190px;height:190px}.nvis-pie--cost:after{width:108px;height:108px}.nvis-pie--cost strong{font-size:18px}.nvis-chart-legend .is-viaticos{background:#1769A3}.nvis-chart-legend .is-otros{background:#D69E2E}.nvis-chart-legend .is-transporte{background:#6B46C1}

/* Cierre de sesión */
.nvis-logout-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:42px;
    padding:0 14px;
    border:1px solid rgba(23,105,163,.20);
    border-radius:12px;
    background:#fff;
    color:#1769a3;
    font-size:13px;
    font-weight:700;
    line-height:1;
    text-decoration:none;
    white-space:nowrap;
    box-shadow:0 5px 18px rgba(21,73,112,.08);
    transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.nvis-logout-button:hover,
.nvis-logout-button:focus{
    background:#1769a3;
    border-color:#1769a3;
    color:#fff;
    text-decoration:none;
    transform:translateY(-1px);
}
.nvis-logout-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:20px;
    height:20px;
    font-size:18px;
    line-height:1;
    transform:rotate(180deg);
}
@media (max-width:1100px){
    .nvis-logout-button span:last-child{display:none;}
    .nvis-logout-button{width:42px;padding:0;}
}

/* Reporte semanal de jornadas */
.nvis-weekly-form{display:grid;gap:20px}.nvis-weekly-journeys{display:grid;gap:20px}.nvis-weekly-journey{border:1px solid #dce8ef;background:#fff}.nvis-weekly-journey-head,.nvis-weekly-subhead,.nvis-weekly-journey-total,.nvis-weekly-footer-total{display:flex;align-items:center;justify-content:space-between;gap:12px}.nvis-weekly-split{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(480px,1.4fr);gap:24px;margin-top:20px}.nvis-weekly-subhead{margin-bottom:10px}.nvis-weekly-subhead h4{margin:0;color:#173b56}.nvis-weekly-subhead .nvis-outline-button{padding:8px 12px}.nvis-weekly-row{display:grid;gap:8px;align-items:center;margin:8px 0}.nvis-weekly-person-row{grid-template-columns:1fr 1fr 36px}.nvis-weekly-cost-row,.nvis-weekly-cost-head{grid-template-columns:90px minmax(160px,1fr) 140px 130px 36px}.nvis-weekly-cost-head{display:grid;gap:8px;color:#637888;font-size:12px;font-weight:700;padding:0 4px}.nvis-weekly-row input{width:100%;min-width:0}.nvis-weekly-row output{text-align:right;font-weight:700;color:#173b56}.nvis-mini-danger{border:0;background:#fff0f0;color:#b42318;border-radius:8px;min-height:36px;padding:6px 10px;font-weight:800;cursor:pointer}.nvis-weekly-journey-total{background:#eef6fa;border-radius:10px;padding:11px 14px;margin-top:12px}.nvis-weekly-footer-total{background:linear-gradient(135deg,#0f3e67,#1769a3);color:#fff;border-radius:16px;padding:20px 24px;font-size:20px}.nvis-weekly-footer-total strong{font-size:28px}.nvis-weekly-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(5,minmax(130px,1fr));gap:10px}.nvis-weekly-list-panel{margin-top:22px}.nvis-row-actions a{display:inline-flex;align-items:center;text-decoration:none;color:#1769a3;font-weight:700;padding:7px 8px}.nvis-field--span-3{grid-column:1/-1}@media(max-width:1100px){.nvis-weekly-split{grid-template-columns:1fr}.nvis-weekly-filters{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.nvis-weekly-cost-head{display:none}.nvis-weekly-cost-row{grid-template-columns:1fr 1fr}.nvis-weekly-cost-row output{padding:10px;background:#f1f6f9;border-radius:8px}.nvis-weekly-person-row{grid-template-columns:1fr}.nvis-weekly-filters{grid-template-columns:1fr}.nvis-weekly-footer-total{align-items:flex-start;flex-direction:column}}
/* CRM clínico v4.4.0 */
.nvis-crm-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}.nvis-crm-kpi{background:#fff;border:1px solid #dce8f0;border-radius:18px;padding:18px;box-shadow:0 8px 25px #173a5410}.nvis-crm-kpi span{display:block;color:#6e8090;font-size:12px;font-weight:700;text-transform:uppercase}.nvis-crm-kpi strong{display:block;font-size:25px;color:#153b59;margin-top:8px}.nvis-crm-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.nvis-crm-funnel-row{display:grid;grid-template-columns:150px 1fr 70px;align-items:center;gap:10px;margin:12px 0}.nvis-crm-funnel-bar{height:12px;background:#e8f0f5;border-radius:999px;overflow:hidden}.nvis-crm-funnel-bar i{display:block;height:100%;background:#1769a3;border-radius:999px}.nvis-crm-upcoming-item,.nvis-crm-activity{border-bottom:1px solid #e5edf2;padding:13px 2px}.nvis-crm-upcoming-item:last-child,.nvis-crm-activity:last-child{border:0}.nvis-crm-upcoming-item strong,.nvis-crm-activity strong{display:block;color:#183c58}.nvis-crm-upcoming-item small,.nvis-crm-activity small{color:#748695}.nvis-crm-board{display:grid;grid-template-columns:repeat(7,minmax(220px,1fr));gap:12px;overflow-x:auto;padding:4px 2px 18px}.nvis-crm-column{background:#f3f7fa;border:1px solid #dce7ee;border-radius:16px;min-height:360px}.nvis-crm-column-head{display:flex;justify-content:space-between;padding:14px;font-weight:800;color:#173b57;border-bottom:1px solid #dce7ee}.nvis-crm-column-body{padding:10px;min-height:300px}.nvis-crm-card{background:#fff;border:1px solid #d9e5ec;border-radius:13px;padding:13px;margin-bottom:10px;box-shadow:0 6px 16px #183b5010;cursor:grab}.nvis-crm-card h4{margin:0 0 6px;color:#183b57}.nvis-crm-card p{margin:3px 0;color:#687c8c;font-size:12px}.nvis-crm-card .nvis-crm-money{font-weight:800;color:#1769a3}.nvis-crm-card-actions{display:flex;gap:6px;margin-top:10px}.nvis-crm-card-actions button{border:0;background:#edf4f8;border-radius:7px;padding:6px 8px;cursor:pointer}.nvis-crm-modal{position:fixed;inset:0;background:#102b3f99;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}.nvis-crm-modal[hidden]{display:none}.nvis-crm-dialog{background:#fff;border-radius:20px;width:min(820px,96vw);max-height:92vh;overflow:auto;padding:24px;box-shadow:0 25px 70px #071c2a66}.nvis-crm-dialog header,.nvis-crm-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.nvis-crm-dialog header{margin-bottom:20px}.nvis-crm-dialog header h3{margin:3px 0}.nvis-crm-dialog header>button{border:0;background:#eef4f7;width:38px;height:38px;border-radius:50%;font-size:24px;cursor:pointer}.nvis-crm-dialog footer{justify-content:flex-end;margin-top:18px}.nvis-crm-priority-alta{color:#b42318;font-weight:800}.nvis-crm-priority-media{color:#a15c00;font-weight:800}.nvis-crm-priority-baja{color:#147a52;font-weight:800}.nvis-crm-overdue{color:#b42318;font-weight:800}.nvis-crm-empty{padding:28px;text-align:center;color:#718494}.nvis-crm-loading{grid-column:1/-1;padding:20px;text-align:center}@media(max-width:1100px){.nvis-crm-kpis{grid-template-columns:repeat(2,1fr)}.nvis-crm-grid{grid-template-columns:1fr}}@media(max-width:600px){.nvis-crm-kpis{grid-template-columns:1fr}.nvis-crm-dialog{padding:16px}.nvis-crm-funnel-row{grid-template-columns:100px 1fr 45px}}
/* Patient 360 v4.5 */
.nvis-360-modal[hidden]{display:none!important}.nvis-360-modal{position:fixed;inset:0;z-index:99999;background:rgba(12,35,55,.72);padding:2vh 2vw;overflow:auto}.nvis-360-shell{max-width:1500px;margin:auto;background:#f5f9fb;border-radius:20px;min-height:94vh;box-shadow:0 24px 80px rgba(0,0,0,.25);overflow:hidden}.nvis-360-shell>header{background:linear-gradient(135deg,#075d91,#0795c8);color:#fff;padding:22px 28px;display:flex;justify-content:space-between;align-items:center}.nvis-360-shell>header span{font-size:11px;letter-spacing:.15em}.nvis-360-shell>header h2{margin:4px 0}.nvis-360-shell>header p{margin:0;opacity:.9}.nvis-360-shell>header button{border:0;background:rgba(255,255,255,.18);color:#fff;border-radius:50%;font-size:30px;width:44px;height:44px}.nvis-360-tabs{display:flex;gap:6px;padding:12px 20px;background:#fff;border-bottom:1px solid #dfeaf0;overflow:auto}.nvis-360-tabs button{border:0;background:#edf5f8;padding:11px 16px;border-radius:10px;font-weight:700;white-space:nowrap}.nvis-360-tabs button.is-active{background:#087fba;color:#fff}.nvis-360-content{padding:22px}.nvis-360-grid{display:grid;grid-template-columns:minmax(520px,1.15fr) minmax(380px,.85fr);gap:20px}.nvis-360-grid form,.nvis-360-grid>div,.nvis-360-summary-card{background:#fff;border:1px solid #deebf1;border-radius:16px;padding:20px}.nvis-360-grid form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nvis-360-grid h3{grid-column:1/-1;margin:0 0 6px}.nvis-360-grid label{font-size:12px;font-weight:700;color:#496579}.nvis-360-grid label.wide,.nvis-360-grid form button{grid-column:1/-1}.nvis-360-grid input,.nvis-360-grid select,.nvis-360-grid textarea{width:100%;margin-top:5px;border:1px solid #cddfe8;border-radius:9px;padding:10px;background:#fff}.nvis-360-grid textarea{min-height:72px}.nvis-360-list-card{border:1px solid #dce9ef;border-left:5px solid #0783bd;border-radius:10px;padding:12px;margin:9px 0;background:#fff}.nvis-360-list-card h4{margin:0 0 5px}.nvis-360-list-card p{margin:4px 0;white-space:pre-wrap}.nvis-360-list-card small{color:#71889a}.nvis-360-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.nvis-360-summary-card span{font-size:11px;text-transform:uppercase;color:#71889a}.nvis-360-summary-card strong{display:block;margin-top:5px}.nvis-360-empty{padding:28px;text-align:center;color:#78909f;background:#fff;border:1px dashed #bed1db;border-radius:12px}@media(max-width:900px){.nvis-360-grid{grid-template-columns:1fr}.nvis-360-summary{grid-template-columns:1fr 1fr}.nvis-360-modal{padding:0}.nvis-360-shell{border-radius:0;min-height:100vh}.nvis-360-content{padding:12px}}

/* Búsqueda de pacientes en Nueva cita */
.nvis-appointment-patient-search{margin-bottom:22px;padding:20px;border:1px solid #dce8ef;border-radius:16px;background:linear-gradient(135deg,#f5fbfe,#fff)}
.nvis-appointment-patient-search__head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
.nvis-appointment-patient-search__head h3{margin:3px 0 4px;color:#173b61}
.nvis-appointment-patient-search__head p{margin:0;color:#708195}
.nvis-appointment-patient-search__bar{display:grid;grid-template-columns:1fr auto;gap:10px}
.nvis-appointment-patient-search__bar input{min-height:48px;border:1px solid #d6e3ea;border-radius:12px;padding:0 15px;background:#fff}
.nvis-appointment-patient-results{display:grid;gap:8px;margin-top:12px;max-height:300px;overflow:auto}
.nvis-appointment-patient-result{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:13px 15px;border:1px solid #dbe7ee;border-radius:12px;background:#fff;text-align:left;cursor:pointer}
.nvis-appointment-patient-result:hover{border-color:#1681b8;box-shadow:0 5px 16px rgba(23,105,163,.10)}
.nvis-appointment-patient-result strong{color:#173b61}.nvis-appointment-patient-result span,.nvis-appointment-patient-result small{color:#6e8090}
@media(max-width:700px){.nvis-appointment-patient-search__head{align-items:flex-start;flex-direction:column}.nvis-appointment-patient-search__bar{grid-template-columns:1fr}}

/* Doctors module */
.nvis-doctor-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.nvis-doctor-card{display:flex;gap:16px;background:#fff;border:1px solid #dfeaf1;border-radius:20px;padding:20px;box-shadow:0 10px 28px rgba(20,57,82,.07)}.nvis-doctor-avatar{width:58px;height:58px;min-width:58px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,#0c77ad,#2b9ac7);color:#fff;font-size:24px;font-weight:900}.nvis-doctor-info{min-width:0;flex:1}.nvis-doctor-info>span{font-size:10px;letter-spacing:.14em;color:#628096;font-weight:800}.nvis-doctor-info h3{margin:4px 0 14px;color:#173b5d;font-size:18px}.nvis-doctor-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.nvis-doctor-metrics div{background:#f3f8fb;border-radius:11px;padding:9px;text-align:center}.nvis-doctor-metrics strong{display:block;color:#087bb5;font-size:19px}.nvis-doctor-metrics small{display:block;color:#61788b;font-size:10px;line-height:1.2}.nvis-doctor-info button{margin-top:13px;border:0;background:#e8f5fb;color:#087bb5;border-radius:9px;padding:9px 12px;font-weight:800;cursor:pointer}.nvis-table td span{display:block;font-size:11px;color:#718597;margin-top:3px}@media(max-width:1100px){.nvis-doctor-cards{grid-template-columns:1fr}.nvis-doctor-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.nvis-doctor-card{display:block}.nvis-doctor-avatar{margin-bottom:12px}}

/* Reportes médicos: filtros organizados */
.nvis-doctors-filters-panel{padding:24px}.nvis-doctors-filters-panel .nvis-panel-head{margin-bottom:20px;align-items:flex-start}.nvis-doctors-filters-panel .nvis-panel-head h3{margin:4px 0 5px}.nvis-doctors-filters-panel .nvis-panel-head p{margin:0;color:var(--nvis-muted);font-size:12px}.nvis-doctors-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 18px}.nvis-doctors-filter-grid label{display:flex;flex-direction:column;min-width:0}.nvis-doctors-filter-grid label>span{display:block;margin-bottom:7px;color:#475467;font-size:11px;font-weight:800;line-height:1.25}.nvis-doctors-filter-grid input,.nvis-doctors-filter-grid select{width:100%;height:46px;min-height:46px;box-sizing:border-box;border:1px solid #d6e2ea!important;border-radius:10px!important;background:#fff!important;padding:0 12px!important;color:#243746!important;font-family:inherit!important;font-size:12px!important;box-shadow:none!important;outline:0!important}.nvis-doctors-filter-grid input:focus,.nvis-doctors-filter-grid select:focus{border-color:var(--nvis-primary-2)!important;box-shadow:0 0 0 3px rgba(0,131,191,.09)!important}.nvis-doctors-filter-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid var(--nvis-border)}.nvis-doctors-filter-actions .nvis-primary-button,.nvis-doctors-filter-actions .nvis-outline-button{min-width:140px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.nvis-doctors-filter-summary{margin-top:14px;margin-bottom:0;padding:10px 13px;border-radius:9px;background:#f5fafc;color:#607789}.nvis-doctors-toolbar{display:none!important}@media(max-width:1180px){.nvis-doctors-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.nvis-doctors-filters-panel{padding:17px}.nvis-doctors-filter-grid{grid-template-columns:1fr;gap:13px}.nvis-doctors-filter-actions{flex-direction:column-reverse}.nvis-doctors-filter-actions .nvis-primary-button,.nvis-doctors-filter-actions .nvis-outline-button{width:100%}}

/* v4.6.3 · Agendas médicas apiladas a ancho completo */
.nvis-doctors-agendas-stack{display:flex;flex-direction:column;gap:22px;margin-top:20px;width:100%;min-width:0}
.nvis-doctors-agenda-panel{width:100%;min-width:0;overflow:hidden}
.nvis-doctors-agenda-panel .nvis-panel-head{align-items:flex-start;margin-bottom:16px}
.nvis-doctors-agenda-panel .nvis-panel-head h3{margin:4px 0 5px}
.nvis-doctors-agenda-panel .nvis-panel-head p{margin:0;color:var(--nvis-muted);font-size:12px}
.nvis-doctors-table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.nvis-doctors-table-wrap .nvis-table{width:100%;min-width:920px;table-layout:auto}
.nvis-doctors-table-wrap .nvis-table th,.nvis-doctors-table-wrap .nvis-table td{white-space:normal;vertical-align:middle}
.nvis-doctors-table-wrap .nvis-table th:first-child{min-width:130px}
.nvis-doctors-table-wrap .nvis-table th:nth-child(2){min-width:150px}
.nvis-doctors-table-wrap .nvis-table th:nth-child(3){min-width:210px}
.nvis-doctors-table-wrap .nvis-table th:nth-child(4){min-width:180px}
.nvis-doctors-table-wrap .nvis-table th:nth-child(5){min-width:160px}
.nvis-doctors-table-wrap .nvis-table th:last-child{min-width:120px}
@media(max-width:700px){.nvis-doctors-agendas-stack{gap:16px}.nvis-doctors-agenda-panel{padding:16px}.nvis-doctors-table-wrap .nvis-table{min-width:820px}}
/* Calendario real de jornadas v4.6.4 */
.nvis-calendar-panel{padding:24px}.nvis-calendar-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:22px}.nvis-calendar-nav{display:flex;align-items:center;gap:10px}.nvis-calendar-nav h3{margin:0;min-width:190px;text-align:center;text-transform:capitalize}.nvis-calendar-nav>button:not(.nvis-outline-button){width:42px;height:42px;border:1px solid #d7e5ee;background:#fff;border-radius:11px;font-size:25px;color:#123858}.nvis-calendar-filters{display:flex;gap:12px;align-items:end}.nvis-calendar-filters label{display:grid;gap:6px}.nvis-calendar-filters label span{font-size:12px;font-weight:800;color:#405d75}.nvis-calendar-filters select,.nvis-calendar-filters input{height:44px;min-width:190px;border:1px solid #d5e3ec;border-radius:11px;padding:0 13px;background:#fff}.nvis-calendar-weekdays,.nvis-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.nvis-calendar-weekdays{background:#f0f7fb;border:1px solid #dbe8ef;border-bottom:0;border-radius:14px 14px 0 0}.nvis-calendar-weekdays span{text-align:center;padding:12px 6px;font-size:12px;font-weight:900;color:#4d6679}.nvis-calendar-grid{border-left:1px solid #dbe8ef;border-top:1px solid #dbe8ef}.nvis-calendar-day{min-height:128px;padding:9px;border-right:1px solid #dbe8ef;border-bottom:1px solid #dbe8ef;background:#fff;overflow:hidden}.nvis-calendar-day.is-muted{background:#f8fbfd;color:#9aabb7}.nvis-calendar-day.is-today{box-shadow:inset 0 0 0 2px #168ac1}.nvis-calendar-day-number{font-size:13px;font-weight:900;margin-bottom:7px}.nvis-calendar-event{display:block;width:100%;border:0;border-left:4px solid #0b8bc4;background:#e8f6fc;color:#153c59;border-radius:8px;padding:7px 8px;margin:5px 0;text-align:left;cursor:pointer;font-size:11px;line-height:1.25}.nvis-calendar-event strong,.nvis-calendar-event span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nvis-calendar-event span{color:#60788b;margin-top:2px}.nvis-calendar-more{font-size:11px;color:#668092;font-weight:800;padding:4px}.nvis-calendar-loading{grid-column:1/-1;text-align:center;padding:50px}.nvis-calendar-legend{display:flex;justify-content:space-between;align-items:center;margin-top:14px;color:#657b8c;font-size:12px}.nvis-calendar-legend span{display:flex;gap:7px;align-items:center}.nvis-calendar-legend i{width:11px;height:11px;background:#e8f6fc;border-left:4px solid #0b8bc4;border-radius:3px}.nvis-calendar-modal{position:fixed;inset:0;z-index:999999}.nvis-calendar-modal-backdrop{position:absolute;inset:0;background:#09283dcc}.nvis-calendar-detail{position:relative;z-index:2;width:min(760px,calc(100% - 32px));max-height:calc(100vh - 50px);overflow:auto;margin:25px auto;background:#fff;border-radius:20px;padding:28px;box-shadow:0 25px 70px #0005}.nvis-calendar-close{position:absolute;right:18px;top:14px;border:0;background:#edf5f9;width:38px;height:38px;border-radius:50%;font-size:24px;color:#31526a}.nvis-calendar-detail-head{padding-right:48px;border-bottom:1px solid #e0eaf0;padding-bottom:18px}.nvis-calendar-detail-head h2{margin:5px 0}.nvis-calendar-detail-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.nvis-calendar-detail-meta div{background:#f3f8fb;border:1px solid #dce9f0;border-radius:11px;padding:11px}.nvis-calendar-detail-meta small{display:block;color:#718695}.nvis-calendar-detail table{width:100%;border-collapse:collapse;font-size:12px}.nvis-calendar-detail th,.nvis-calendar-detail td{border:1px solid #dce6ec;padding:8px;text-align:left}.nvis-calendar-detail th{background:#edf6fa}.nvis-calendar-detail-total{display:flex;justify-content:space-between;background:#143b5a;color:#fff;border-radius:11px;padding:14px;margin-top:14px;font-weight:900}.nvis-calendar-detail-actions{display:flex;justify-content:flex-end;margin-top:18px}
@media(max-width:900px){.nvis-calendar-toolbar{align-items:stretch;flex-direction:column}.nvis-calendar-filters{flex-wrap:wrap}.nvis-calendar-filters label{flex:1}.nvis-calendar-filters select,.nvis-calendar-filters input{min-width:0;width:100%}.nvis-calendar-day{min-height:105px;padding:6px}.nvis-calendar-detail-meta{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.nvis-calendar-panel{padding:12px;overflow-x:auto}.nvis-calendar-weekdays,.nvis-calendar-grid{min-width:760px}.nvis-calendar-detail-meta{grid-template-columns:1fr}.nvis-calendar-nav h3{min-width:140px}.nvis-calendar-filters{display:grid;grid-template-columns:1fr}}

/* INVIS 4.6.6 · Resumen general */
.nvis-summary-heading{align-items:center}.nvis-summary-live{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--nvis-border);border-radius:14px;padding:11px 14px}.nvis-summary-live i{width:9px;height:9px;border-radius:50%;background:#20b26b;box-shadow:0 0 0 5px #20b26b20}.nvis-summary-live span,.nvis-summary-live small{display:block}.nvis-summary-live span{font-weight:800;color:var(--nvis-dark);font-size:12px}.nvis-summary-live small{color:var(--nvis-muted);font-size:10px}.nvis-summary-filters{margin-bottom:18px}.nvis-summary-filter-grid{display:grid;grid-template-columns:minmax(180px,260px) minmax(240px,1fr) auto;gap:16px;align-items:end}.nvis-summary-filter-grid label span{display:block;font-size:11px;font-weight:800;color:var(--nvis-dark);margin-bottom:7px}.nvis-summary-filter-grid input,.nvis-summary-filter-grid select{width:100%;height:48px;border:1px solid var(--nvis-border);border-radius:12px;padding:0 14px;background:#fff}.nvis-summary-filter-actions{display:flex;gap:10px}.nvis-summary-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 18px}.nvis-summary-stat{min-width:0}.nvis-summary-grid{display:grid;gap:18px;margin-bottom:18px}.nvis-summary-grid--main{grid-template-columns:1fr 1fr}.nvis-summary-grid--charts{grid-template-columns:repeat(3,1fr)}.nvis-summary-grid--bottom{grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr)}.nvis-summary-badge{min-width:42px;height:42px;border-radius:12px;background:#e7f5fb;color:var(--nvis-primary);display:grid;place-items:center;font-size:20px}.nvis-summary-bars{display:grid;gap:13px}.nvis-summary-bar>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:6px}.nvis-summary-bar span{color:#5c6d7d}.nvis-summary-bar strong{color:var(--nvis-dark)}.nvis-summary-bar i{display:block;height:8px;background:#edf3f7;border-radius:999px;overflow:hidden}.nvis-summary-bar b{display:block;height:100%;background:linear-gradient(90deg,var(--nvis-primary),var(--nvis-primary-2));border-radius:inherit}.nvis-active-doctors{display:grid;gap:10px}.nvis-active-doctors article{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;border:1px solid #e5edf2;border-radius:13px;padding:10px 12px}.nvis-active-doctors article>span{width:38px;height:38px;border-radius:11px;background:#e9f6fb;display:grid;place-items:center;color:var(--nvis-primary);font-size:18px}.nvis-active-doctors strong,.nvis-active-doctors small{display:block}.nvis-active-doctors strong{font-size:12px;color:var(--nvis-dark)}.nvis-active-doctors small{font-size:10px;color:var(--nvis-muted);margin-top:3px}.nvis-active-doctors b{background:#edf7fb;color:var(--nvis-primary);border-radius:999px;padding:6px 9px;font-size:11px}.nvis-summary-alerts{display:grid;gap:10px}.nvis-summary-alerts article{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;border-radius:12px;padding:12px}.nvis-summary-alerts article>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-weight:900}.nvis-summary-alerts strong,.nvis-summary-alerts small{display:block}.nvis-summary-alerts strong{font-size:12px}.nvis-summary-alerts small{font-size:10px;margin-top:3px;opacity:.78}.nvis-summary-alerts .is-warning{background:#fff7e7;color:#8d6100}.nvis-summary-alerts .is-warning>span{background:#ffe7ac}.nvis-summary-alerts .is-danger{background:#fff0f0;color:#a43838}.nvis-summary-alerts .is-danger>span{background:#ffd7d7}.nvis-summary-alerts .is-ok{background:#ebf9f1;color:#24774b}.nvis-summary-alerts .is-ok>span{background:#ccefdc}@media(max-width:1200px){.nvis-summary-stat-grid{grid-template-columns:repeat(2,1fr)}.nvis-summary-grid--charts{grid-template-columns:1fr 1fr}.nvis-summary-grid--charts .nvis-panel:last-child{grid-column:1/-1}}@media(max-width:850px){.nvis-summary-filter-grid,.nvis-summary-grid--main,.nvis-summary-grid--bottom{grid-template-columns:1fr}.nvis-summary-filter-actions>*{flex:1}.nvis-summary-heading{display:block}.nvis-summary-live{margin-top:12px;width:max-content}}@media(max-width:560px){.nvis-summary-stat-grid,.nvis-summary-grid--charts{grid-template-columns:1fr}.nvis-summary-grid--charts .nvis-panel:last-child{grid-column:auto}.nvis-summary-filter-actions{display:grid}.nvis-summary-live{width:100%}}

/* INVIS 4.6.7 · Dashboard ejecutivo compacto */
[data-general-summary]{--summary-gap:16px}
[data-general-summary] .nvis-page-heading{margin-bottom:16px}
[data-general-summary] .nvis-summary-filters{padding:16px 18px;margin-bottom:16px}
[data-general-summary] .nvis-summary-filter-grid{grid-template-columns:minmax(190px,240px) minmax(240px,1fr) auto!important;gap:14px!important}
[data-general-summary] .nvis-summary-stat-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin-bottom:16px!important}
[data-general-summary] .nvis-stat-card{min-height:104px;padding:16px!important;border-radius:16px;box-shadow:0 8px 22px rgba(25,66,101,.045)}
[data-general-summary] .nvis-stat-icon{width:44px;height:44px;border-radius:13px;flex:0 0 44px}
[data-general-summary] .nvis-stat-card strong{font-size:27px;margin:1px 0}
[data-general-summary] .nvis-stat-card span{font-weight:700;color:#64748b}
[data-general-summary] .nvis-stat-card small{line-height:1.35}
[data-general-summary] .nvis-summary-grid{display:grid!important;gap:var(--summary-gap)!important;margin:0 0 16px!important;align-items:start!important}
[data-general-summary] .nvis-summary-grid--main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
[data-general-summary] .nvis-summary-grid--charts{grid-template-columns:repeat(3,minmax(0,1fr))!important}
[data-general-summary] .nvis-summary-grid--bottom{grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr)!important}
[data-general-summary] .nvis-panel{padding:18px!important;border-radius:17px!important;min-width:0!important;height:auto!important;min-height:0!important;overflow:hidden}
[data-general-summary] .nvis-panel-head{margin-bottom:14px!important;align-items:center}
[data-general-summary] .nvis-panel h3{font-size:17px!important;margin-top:3px}
[data-general-summary] .nvis-section-label{font-size:9px}
[data-general-summary] .nvis-summary-grid--main>.nvis-panel{min-height:250px!important}
[data-general-summary] .nvis-summary-grid--charts>.nvis-panel{min-height:265px!important}
[data-general-summary] .nvis-summary-grid--bottom>.nvis-panel{min-height:270px!important}
[data-general-summary] .nvis-summary-bars{gap:11px}
[data-general-summary] .nvis-summary-bar i{height:7px}
[data-general-summary] .nvis-active-doctors{max-height:220px;overflow:auto;padding-right:3px}
[data-general-summary] .nvis-active-doctors article{padding:9px 10px}
[data-general-summary] .nvis-table-wrap{max-height:300px;overflow:auto;border:1px solid #edf2f5;border-radius:12px}
[data-general-summary] .nvis-table thead th{position:sticky;top:0;background:#f8fbfd;z-index:2}
[data-general-summary] .nvis-table-empty{min-height:130px;display:grid;place-items:center;text-align:center;color:#8b98a8;padding:18px}
[data-general-summary] .nvis-summary-alerts{max-height:300px;overflow:auto;padding-right:2px}
[data-general-summary] [data-summary-turn-status]:empty,
[data-general-summary] [data-summary-doctors]:empty,
[data-general-summary] [data-summary-consultations]:empty,
[data-general-summary] [data-summary-appointment-status]:empty,
[data-general-summary] [data-summary-origins]:empty,
[data-general-summary] [data-summary-alerts]:empty{min-height:130px;background:linear-gradient(90deg,#f7fafc 25%,#eef4f7 37%,#f7fafc 63%);background-size:400% 100%;animation:nvisSummaryPulse 1.4s ease infinite;border-radius:12px}
@keyframes nvisSummaryPulse{0%{background-position:100% 0}100%{background-position:0 0}}
@media(max-width:1250px){
 [data-general-summary] .nvis-summary-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 [data-general-summary] .nvis-summary-grid--charts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 [data-general-summary] .nvis-summary-grid--charts>.nvis-panel:last-child{grid-column:1/-1}
}
@media(max-width:900px){
 [data-general-summary] .nvis-summary-filter-grid,
 [data-general-summary] .nvis-summary-grid--main,
 [data-general-summary] .nvis-summary-grid--bottom{grid-template-columns:1fr!important}
 [data-general-summary] .nvis-summary-grid--main>.nvis-panel,
 [data-general-summary] .nvis-summary-grid--charts>.nvis-panel,
 [data-general-summary] .nvis-summary-grid--bottom>.nvis-panel{min-height:0!important}
}
@media(max-width:650px){
 [data-general-summary] .nvis-summary-stat-grid,
 [data-general-summary] .nvis-summary-grid--charts{grid-template-columns:1fr!important}
 [data-general-summary] .nvis-summary-grid--charts>.nvis-panel:last-child{grid-column:auto}
 [data-general-summary] .nvis-summary-filter-actions{display:grid;grid-template-columns:1fr}
}

/* INVIS 4.7.2 · Cirugías programadas */
.nvis-surgery-patient-search{margin-bottom:24px;position:relative}.nvis-surgery-patient-search>label{display:block}.nvis-surgery-patient-search label span,.nvis-surgery-filters label span{display:block;font-weight:800;margin-bottom:8px;color:#31475e}.nvis-patient-pick-list{position:absolute;z-index:30;left:0;right:0;top:82px;background:#fff;border:1px solid #d8e5ed;border-radius:14px;box-shadow:0 18px 45px rgba(22,55,80,.16);padding:8px;max-height:310px;overflow:auto}.nvis-patient-pick-list button{width:100%;border:0;background:#fff;text-align:left;padding:12px 14px;border-radius:10px;display:flex;flex-direction:column;gap:3px;color:#193b5e}.nvis-patient-pick-list button:hover{background:#edf8fd}.nvis-patient-pick-list span,.nvis-patient-pick-list small{color:#74879a}.nvis-selected-patient{margin-top:10px;background:#eaf7fd;border:1px solid #c9e8f6;border-radius:12px;padding:12px 15px;display:flex;justify-content:space-between;gap:15px}.nvis-selected-patient span{color:#60788d}.nvis-surgery-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.nvis-surgery-kpis article{background:#fff;border:1px solid #dce8ef;border-radius:16px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 24px rgba(25,59,94,.04)}.nvis-surgery-kpis article>span{width:40px;height:40px;border-radius:12px;background:#e8f6fc;color:#087fb8;display:grid;place-items:center;font-weight:900}.nvis-surgery-kpis small{display:block;color:#74869a;font-weight:700}.nvis-surgery-kpis strong{display:block;color:#173b61;font-size:20px;margin-top:3px}.nvis-surgery-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.nvis-surgery-filters input,.nvis-surgery-filters select{width:100%;min-height:50px}.nvis-surgery-filter-actions{margin-top:16px}.nvis-surgeries-table{min-width:1450px}.nvis-surgeries-table td>strong,.nvis-surgeries-table td>span{display:block}.nvis-surgeries-table td>span{color:#8090a1;font-size:12px;margin-top:4px}.nvis-surgeries-table select{min-width:160px;padding:8px;border:1px solid #d6e3eb;border-radius:9px;background:#fff}.nvis-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1200px){.nvis-surgery-kpis{grid-template-columns:repeat(3,1fr)}.nvis-surgery-filters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.nvis-surgery-kpis,.nvis-surgery-filters,.nvis-form-grid--3{grid-template-columns:1fr}.nvis-selected-patient{flex-direction:column}.nvis-surgery-filter-actions{display:grid;grid-template-columns:1fr}.nvis-surgery-filter-actions>*{width:100%}}

/* INVIS 4.7.3 · Call Center */
.nvis-callcenter-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.nvis-callcenter-kpis article{background:#fff;border:1px solid #dce8ef;border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(25,59,94,.04)}.nvis-callcenter-kpis small{display:block;color:#74869a;font-weight:700}.nvis-callcenter-kpis strong{display:block;color:#173b61;font-size:28px;margin-top:5px}.nvis-callcenter-filters{display:grid;grid-template-columns:2fr repeat(4,1fr) repeat(2,150px) auto;gap:12px;align-items:end}.nvis-callcenter-filters input,.nvis-callcenter-filters select,.nvis-callcenter-filters button{width:100%;min-height:50px}.nvis-callcenter-table{min-width:1300px}.nvis-callcenter-table td>strong,.nvis-callcenter-table td>span{display:block}.nvis-callcenter-table td>span{font-size:12px;color:#7c8da0;margin-top:4px}.nvis-modal[data-callcenter-modal]{position:fixed;inset:0;z-index:999999;background:rgba(15,39,62,.58);display:grid;place-items:center;padding:24px}.nvis-modal[data-callcenter-modal][hidden]{display:none}.nvis-modal-card{width:min(760px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:28px;box-shadow:0 30px 80px rgba(9,31,52,.3);position:relative}.nvis-modal-close{position:absolute;right:18px;top:15px;border:0;background:#edf6fa;width:42px;height:42px;border-radius:50%;font-size:24px;color:#537089}.nvis-modal-card label>span{display:block;font-weight:800;color:#31475e;margin-bottom:8px}.nvis-modal-card textarea{width:100%;margin-top:8px}.nvis-modal-open{overflow:hidden}
@media(max-width:1350px){.nvis-callcenter-filters{grid-template-columns:repeat(4,1fr)}.nvis-callcenter-filters input[type=search]{grid-column:span 2}}
@media(max-width:850px){.nvis-callcenter-kpis{grid-template-columns:repeat(2,1fr)}.nvis-callcenter-filters{grid-template-columns:1fr 1fr}.nvis-callcenter-filters input[type=search]{grid-column:1/-1}}
@media(max-width:560px){.nvis-callcenter-kpis,.nvis-callcenter-filters{grid-template-columns:1fr}.nvis-callcenter-filters input[type=search]{grid-column:auto}}

[data-cataract-report] .nvis-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}[data-cataract-report] .nvis-toolbar>*{min-height:42px}[data-cataract-report] .nvis-stat-grid{margin-bottom:18px}

/* Seguimiento clínico integral v4.8.5 */
[data-followup-patient-results]{position:relative;z-index:8;display:grid;gap:6px;margin-top:6px;max-height:260px;overflow:auto}
[data-followup-patient-results] button{display:flex;flex-direction:column;gap:3px;width:100%;padding:12px 14px;text-align:left;background:#fff;border:1px solid #d9e8f1;border-radius:10px;cursor:pointer}
[data-followup-patient-results] button:hover{border-color:#188bc1;background:#f2faff}
[data-followup-patient-results] button span{font-size:12px;color:#71849a}
[data-followup-form-view] .nvis-selected-patient{margin:10px 0 18px}

/* INVIS 5.1.1 - corrección global de márgenes y desbordamientos */
.nvis-main,.nvis-content,.nvis-view,.nvis-panel,.nvis-panel>*{min-width:0;max-width:100%}
.nvis-content{width:100%;overflow-x:hidden}
.nvis-panel{overflow:hidden}
.nvis-panel form,.nvis-form,.nvis-form-grid,.nvis-ci-form{width:100%;min-width:0;max-width:100%}
.nvis-system input:not([type=checkbox]):not([type=radio]),
.nvis-system select,
.nvis-system textarea,
.nvis-system button{max-width:100%}
.nvis-system input:not([type=checkbox]):not([type=radio]),
.nvis-system select,
.nvis-system textarea{width:100%;min-width:0}
.nvis-system label,.nvis-form-grid>*,.nvis-ci-form>*{min-width:0;max-width:100%}
.nvis-table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}
.nvis-table{min-width:760px}
.nvis-toolbar,.nvis-page-heading,.nvis-panel-head{max-width:100%;flex-wrap:wrap}

/* Estudios diagnósticos: evita que el formulario invada el listado */
.nvis-ci-study-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);align-items:start;width:100%;max-width:100%}
.nvis-ci-study-layout>.nvis-panel{min-width:0;width:100%;max-width:100%}
.nvis-ci-form{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.nvis-ci-form label{min-width:0;width:100%;max-width:100%;overflow:visible}
.nvis-ci-form input,.nvis-ci-form select,.nvis-ci-form textarea{display:block;width:100%;min-width:0;max-width:100%}
.nvis-ci-form label.wide,.nvis-ci-form button{grid-column:1/-1;width:100%}
.nvis-ci-study-layout .nvis-table-wrap{border-radius:12px}

/* Formularios y filtros de todos los módulos */
.nvis-form-grid,.nvis-form-grid--3,.nvis-form-grid--4,.nvis-surgery-filters,.nvis-callcenter-filters,.nvis-summary-filter-grid{width:100%;max-width:100%}
.nvis-row-actions{flex-wrap:wrap}
.nvis-row-actions button{white-space:normal}

@media(max-width:1450px){
 .nvis-content{padding:24px 22px 40px}
 .nvis-ci-study-layout{grid-template-columns:minmax(0,1fr)}
 .nvis-ci-study-layout>.nvis-panel:first-child{max-width:none}
 .nvis-ci-form{grid-template-columns:repeat(3,minmax(0,1fr))}
 .nvis-ci-form label.wide,.nvis-ci-form button{grid-column:1/-1}
}
@media(max-width:1180px){
 .nvis-sidebar{width:250px;flex-basis:250px}
 .nvis-topbar{padding:0 20px}
 .nvis-search-trigger{min-width:220px}
 .nvis-ci-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 .nvis-content{padding:20px 16px 34px}
 .nvis-page-heading{align-items:flex-start;gap:14px}
 .nvis-page-heading>*{width:100%}
 .nvis-page-heading .nvis-primary-button,.nvis-page-heading .nvis-outline-button{width:auto}
 .nvis-toolbar>*{flex:1 1 220px}
 .nvis-table{min-width:680px}
}
@media(max-width:700px){
 .nvis-ci-form{grid-template-columns:1fr}
 .nvis-ci-form label.wide,.nvis-ci-form button{grid-column:auto}
 .nvis-content{padding:16px 12px 28px}
 .nvis-panel{padding:16px}
 .nvis-table{min-width:620px}
}


/* INVIS v5.1.2 - Documentos en Paciente 360 */
.nvis-document-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:16px;align-items:start}
.nvis-document-preview{width:86px;height:86px;border-radius:14px;background:#eef7fc;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:34px}
.nvis-document-preview img{width:100%;height:100%;object-fit:cover}
.nvis-document-info{min-width:0}.nvis-document-info h4{margin:0 0 6px;overflow-wrap:anywhere}.nvis-document-info p{overflow-wrap:anywhere}
[data-360-pane="documents"] input[type="file"]{width:100%;max-width:100%;padding:12px;border:1px dashed #b9d8e9;border-radius:12px;background:#f8fcff}
[data-360-pane="documents"] small{display:block;margin-top:5px;color:#718096}
.nvis-outline-button.is-danger{color:#a52828;border-color:#efc4c4;background:#fff8f8}
@media(max-width:760px){.nvis-document-card{grid-template-columns:1fr}.nvis-document-preview{width:100%;height:150px}}

/* Seguimiento de lentes */
.nvis-lens-card{margin-bottom:18px}.nvis-lens-status{display:inline-flex;padding:7px 12px;border-radius:999px;background:#e8f5ff;color:#0876b8;font-weight:800;font-size:12px}.nvis-lens-timeline{display:grid;grid-template-columns:repeat(8,minmax(100px,1fr));gap:0;overflow-x:auto;padding:22px 2px 12px}.nvis-lens-step{position:relative;min-width:110px;text-align:center;color:#8493a6}.nvis-lens-step:before{content:"";position:absolute;top:9px;left:0;right:0;height:4px;background:#e3eaf1}.nvis-lens-step:first-child:before{left:50%}.nvis-lens-step:last-child:before{right:50%}.nvis-lens-step>span{position:relative;z-index:2;display:block;width:22px;height:22px;border-radius:50%;margin:0 auto 10px;background:#dfe7ef;border:4px solid #fff;box-shadow:0 0 0 1px #dfe7ef}.nvis-lens-step.is-done:before,.nvis-lens-step.is-current:before{background:#41b883}.nvis-lens-step.is-done>span{background:#41b883;box-shadow:0 0 0 1px #41b883}.nvis-lens-step.is-current>span{background:#0b86c6;box-shadow:0 0 0 4px rgba(11,134,198,.18)}.nvis-lens-step b{display:block;font-size:11px;line-height:1.25}.nvis-lens-step small{display:block;font-size:10px;margin-top:4px}

/* v6.4.4: especialidad asignada automáticamente por el doctor en formularios de citas. */
select[data-nvis-doctor-locked="1"]{
  background-color:#f1f7fb;
  border-color:#b9d9e9;
  color:#17365f;
  font-weight:700;
}
/* v6.5.4: filtros manuales de agenda y acceso a turnos */
.nvis-appointment-filters{display:grid!important;grid-template-columns:minmax(240px,2fr) repeat(6,minmax(145px,1fr)) auto;align-items:center;gap:10px}
.nvis-appointment-filters>*{min-width:0;width:100%;margin:0}
.nvis-appointment-filters .nvis-filter-search{min-width:0}
.nvis-turns-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 16px;border-radius:12px;background:linear-gradient(135deg,#1769A3,#0083BF);color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:800;box-shadow:0 8px 18px rgba(23,105,163,.16);white-space:nowrap}
.nvis-turns-button:hover{transform:translateY(-1px);color:#fff!important}
.nvis-turns-button.is-disabled{opacity:.48;pointer-events:none;box-shadow:none}
@media(max-width:1450px){.nvis-appointment-filters{grid-template-columns:repeat(4,minmax(160px,1fr))}.nvis-appointment-filters .nvis-filter-search{grid-column:span 2}}
@media(max-width:850px){.nvis-appointment-filters{grid-template-columns:1fr 1fr}.nvis-appointment-filters .nvis-filter-search{grid-column:1/-1}}
@media(max-width:560px){.nvis-appointment-filters{grid-template-columns:1fr}.nvis-appointment-filters .nvis-filter-search{grid-column:auto}.nvis-turns-button span:last-child{display:none}}

.nvis-dd-selected-patient{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid #cfe5ef;border-left:5px solid #0b84bd;border-radius:16px;background:#f3fbfe;margin-top:-4px}.nvis-dd-selected-patient[hidden]{display:none!important}.nvis-dd-selected-patient h4{margin:3px 0 7px;color:#173b61;font-size:20px}.nvis-dd-selected-patient p{margin:3px 0;color:#637b90}.nvis-ci-results button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left}.nvis-ci-results button strong{color:#173b61}.nvis-ci-results button small{color:#6f8497}@media(max-width:700px){.nvis-dd-selected-patient{align-items:flex-start;flex-direction:column}}

/* Diagnósticos: búsqueda en vivo y creación rápida de pacientes */
.nvis-dd-patient-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.nvis-dd-create-patient{margin:8px 0 18px;padding:22px;border:1px solid #d8e8f3;border-radius:22px;background:#f7fbfe}
.nvis-dd-create-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.nvis-dd-create-head h4{margin:4px 0 0;color:#16365f;font-size:22px}
.nvis-dd-create-patient .nvis-form-actions{margin-top:16px}
.nvis-inline-link{border:0;background:transparent;color:#087fbd;font-weight:800;cursor:pointer;padding:0;text-decoration:underline}
.nvis-ci-results button{width:100%;text-align:left}
@media(max-width:760px){.nvis-dd-patient-search-row{grid-template-columns:1fr}.nvis-dd-create-head{flex-direction:column}.nvis-dd-create-head .nvis-outline-button{width:100%}}

/* v6.6.7: condiciones clínicas como desplegables estables Sí/No */
.nvis-condition-field,.nvis-condition-card{display:flex;flex-direction:column;gap:10px;min-width:0}.nvis-condition-field>span,.nvis-condition-card>span{font-weight:800;color:#31445e}.nvis-condition-field select,.nvis-condition-card select{width:100%;min-width:0;height:54px;border:1px solid #d6e3ed;border-radius:14px;background:#fff;padding:0 16px;color:#24364e;font:inherit}.nvis-condition-card{padding:20px;border:1px solid #d9e7f1;border-radius:20px;background:#fff;justify-content:center}.nvis-condition-card select:focus,.nvis-condition-field select:focus{outline:2px solid rgba(10,132,195,.18);border-color:#1595cf}

/* v6.6.8: estilo unificado de etiquetas en Pacientes y Participantes de Jornadas */
[data-patient-editor] .nvis-patient-editor-form label > span,
[data-view="registrar-participante"] [data-nvis-participant-form] label > span,
[data-patient-editor] .nvis-condition-card > span,
[data-view="registrar-participante"] .nvis-condition-card > span {
  display:block;
  margin:0 0 9px;
  color:#31445e;
  font-size:15px;
  line-height:1.35;
  font-weight:800;
  letter-spacing:0;
}
[data-patient-editor] .nvis-patient-editor-form label,
[data-view="registrar-participante"] [data-nvis-participant-form] label {
  color:#31445e;
  font-weight:400;
}
[data-patient-editor] .nvis-patient-editor-form input,
[data-patient-editor] .nvis-patient-editor-form select,
[data-patient-editor] .nvis-patient-editor-form textarea,
[data-view="registrar-participante"] [data-nvis-participant-form] input,
[data-view="registrar-participante"] [data-nvis-participant-form] select,
[data-view="registrar-participante"] [data-nvis-participant-form] textarea {
  font-weight:400;
}
[data-patient-editor] .nvis-form-section h3,
[data-view="registrar-participante"] .nvis-report-title h3 {
  font-weight:800;
}
[data-patient-editor] .nvis-form-section p,
[data-view="registrar-participante"] .nvis-report-title p {
  font-weight:400;
}


/* v6.6.9: barra superior compacta y formularios Pacientes/Jornadas consistentes */
@media (min-width:821px){
  .nvis-topbar{
    height:72px;
    padding:0 24px;
    justify-content:flex-end;
  }
  .nvis-topbar-left{
    display:none!important;
  }
  .nvis-topbar-actions{
    width:100%;
    justify-content:flex-end;
    gap:10px;
    min-width:0;
  }
  .nvis-search-trigger{
    min-width:260px;
    max-width:360px;
  }
  .nvis-main{
    --nvis-topbar-height:72px;
  }
}

/* Labels idénticos y siempre en negrita en Nuevo Paciente y Participantes de Jornada */
[data-view="nuevo-paciente"] .nvis-patient-editor-form label > span,
[data-view="nuevo-paciente"] .nvis-patient-editor-form .nvis-condition-card > span,
[data-view="registrar-participante"] [data-nvis-participant-form] label > span,
[data-view="registrar-participante"] [data-nvis-participant-form] .nvis-condition-card > span{
  display:block!important;
  margin:0 0 9px!important;
  color:#31445e!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:0!important;
  font-family:inherit!important;
}
[data-view="nuevo-paciente"] .nvis-patient-editor-form label,
[data-view="registrar-participante"] [data-nvis-participant-form] label{
  color:#31445e!important;
  font-weight:800!important;
}
[data-view="nuevo-paciente"] .nvis-patient-editor-form label input,
[data-view="nuevo-paciente"] .nvis-patient-editor-form label select,
[data-view="nuevo-paciente"] .nvis-patient-editor-form label textarea,
[data-view="registrar-participante"] [data-nvis-participant-form] label input,
[data-view="registrar-participante"] [data-nvis-participant-form] label select,
[data-view="registrar-participante"] [data-nvis-participant-form] label textarea{
  font-weight:400!important;
}
[data-view="nuevo-paciente"] .nvis-form-section,
[data-view="registrar-participante"] .nvis-report-title{
  margin-top:26px;
}
[data-view="nuevo-paciente"] .nvis-form-section:first-of-type,
[data-view="registrar-participante"] .nvis-report-title:first-of-type{
  margin-top:0;
}

@media (max-width:820px){
  .nvis-topbar-left > div{display:none!important;}
  .nvis-topbar-left{display:flex!important;}
  .nvis-topbar{height:68px;}
}

/* v6.7.0: consolidación visual real y ruptura de caché */
.nvis-topbar-left > div:not(.nvis-icon-button){display:none!important;}
@media (min-width:821px){
  .nvis-topbar-left{display:none!important;}
  .nvis-topbar{height:72px!important;padding:0 24px!important;justify-content:flex-end!important;}
  .nvis-topbar-actions{width:100%!important;justify-content:flex-end!important;}
}
/* Etiquetas unificadas: paciente y participante, incluyendo labels con texto directo */
[data-view="nuevo-paciente"] .nvis-patient-editor-form label,
[data-view="registrar-participante"] [data-nvis-participant-form] label{
  color:#31445e!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:800!important;
}
[data-view="nuevo-paciente"] .nvis-patient-editor-form label > span,
[data-view="registrar-participante"] [data-nvis-participant-form] label > span,
[data-view="nuevo-paciente"] .nvis-condition-card > span,
[data-view="registrar-participante"] .nvis-condition-card > span{
  display:block!important;
  margin-bottom:9px!important;
  font-weight:800!important;
  color:#31445e!important;
}
[data-view="nuevo-paciente"] .nvis-patient-editor-form input,
[data-view="nuevo-paciente"] .nvis-patient-editor-form select,
[data-view="nuevo-paciente"] .nvis-patient-editor-form textarea,
[data-view="registrar-participante"] [data-nvis-participant-form] input,
[data-view="registrar-participante"] [data-nvis-participant-form] select,
[data-view="registrar-participante"] [data-nvis-participant-form] textarea{
  font-weight:400!important;
}
/* v6.7.2 - análisis global por ARS en reportes */
.nvis-ars-report-panel{margin-bottom:22px}.nvis-ars-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0}.nvis-ars-breakdown>div{border:1px solid #dce8ef;background:#f7fbfd;border-radius:12px;padding:12px}.nvis-ars-breakdown strong,.nvis-ars-breakdown span,.nvis-ars-breakdown small{display:block}.nvis-ars-breakdown strong{color:#17365f}.nvis-ars-breakdown span{margin-top:5px;color:#087bb8;font-weight:700}.nvis-ars-breakdown small{margin-top:3px;color:#718398}

/* v6.7.4 — filtros ARS integrados y acciones uniformes en reportes */
.nvis-report-ars-field{min-width:220px;display:flex;flex-direction:column;gap:7px}
.nvis-report-ars-field>span{font-weight:800;color:#2f475f}
.nvis-report-ars-field select{width:100%;min-height:52px}
.nvis-unified-report-actions{display:flex!important;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid #e2edf3}
.nvis-unified-report-actions .nvis-outline-button,.nvis-unified-report-actions .nvis-primary-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.nvis-inline-ars-detail{margin-top:22px;padding-top:20px;border-top:1px solid #e2edf3}
.nvis-inline-ars-detail .nvis-results-summary{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:14px}
.nvis-inline-ars-detail .nvis-results-summary strong{color:#163b63}
@media(max-width:900px){.nvis-unified-report-actions>*{flex:1 1 180px}.nvis-report-ars-field{min-width:100%}}

/* v6.7.5 — cantidad visible de pacientes por ARS en todos los reportes */
.nvis-ars-total-card{display:inline-flex;flex-direction:column;min-width:210px;background:linear-gradient(135deg,#0b7fb8,#139ed1);color:#fff;border-radius:16px;padding:16px 20px;margin:4px 0 14px;box-shadow:0 10px 24px rgba(11,127,184,.16)}
.nvis-ars-total-card small{font-size:12px;opacity:.9}.nvis-ars-total-card strong{font-size:30px;line-height:1.1;margin-top:4px}
.nvis-ars-count-card{position:relative;overflow:hidden}.nvis-ars-count-card>span{font-size:27px!important;line-height:1.1!important}.nvis-ars-count-card>small{font-size:12px!important}
.nvis-inline-ars-detail{background:#fff;border:1px solid #e0ebf1;border-radius:18px;padding:20px!important;margin-top:22px!important}


/* v6.7.8.2 — filtros de reportes ordenados y campo de ubicación de jornadas */
.nvis-report-filter-panel{padding:24px!important}
.nvis-report-filter-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important;align-items:end!important;margin:0!important}
.nvis-report-filter-grid>label{display:flex;flex-direction:column;gap:7px;min-width:0}
.nvis-report-filter-grid>label>span{font-size:12px;font-weight:800;color:#314a60}
.nvis-report-filter-grid input,.nvis-report-filter-grid select{width:100%!important;min-height:50px!important;border:1px solid #d6e4ec!important;border-radius:12px!important;background:#fff!important;padding:0 14px!important;box-sizing:border-box!important}
.nvis-report-filter-grid input[type=search]{padding:0 14px!important}
.nvis-report-filter-actions{display:flex;gap:10px;align-items:center;grid-column:1/-1;padding-top:2px}
.nvis-report-filter-actions .nvis-outline-button,.nvis-report-filter-grid>[data-apply-clinical-reports]{min-height:48px}
.nvis-cataract-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
[data-management-module="jornada"] input[name="location_url"]{font-size:13px}
@media(max-width:1200px){.nvis-report-filter-grid,.nvis-cataract-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.nvis-report-filter-grid,.nvis-cataract-filter-grid{grid-template-columns:1fr!important}.nvis-report-filter-actions>*{width:100%}}

/* v6.7.8.3 — filtros compactos y consistentes del reporte de jornadas */
.nvis-journey-report-filter-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;align-items:end!important}
.nvis-journey-report-filter-grid>label{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:0!important;margin:0!important}
.nvis-journey-report-filter-grid>label>span{display:block!important;font-size:12px!important;font-weight:800!important;color:#314a60!important;line-height:1.25!important}
.nvis-journey-report-filter-grid input,.nvis-journey-report-filter-grid select{display:block!important;width:100%!important;min-width:0!important;height:50px!important;min-height:50px!important;border:1px solid #d6e4ec!important;border-radius:12px!important;background:#fff!important;padding:0 14px!important;box-sizing:border-box!important;font:inherit!important;color:#253b4d!important}
.nvis-journey-report-filter-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;border-top:1px solid #e4edf2!important;margin-top:18px!important;padding-top:16px!important}
.nvis-journey-report-filter-actions button{min-height:46px!important}
@media(max-width:1350px){.nvis-journey-report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:1000px){.nvis-journey-report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.nvis-journey-report-filter-grid{grid-template-columns:1fr!important}.nvis-journey-report-filter-actions{display:grid!important;grid-template-columns:1fr!important}.nvis-journey-report-filter-actions button{width:100%!important}}

/* INVIS 6.7.9 — resultados integrales de jornadas */
[data-clinical-reports] [data-report-journey-summary] td,
[data-clinical-reports] [data-report-journey-summary] th{white-space:normal;min-width:88px}
[data-clinical-reports] [data-report-journey-summary] td:first-child{min-width:180px}
[data-clinical-reports] [data-report-journey-summary] td:last-child{min-width:190px}
[data-management-module="jornada"] .nvis-form-grid label span{font-weight:800;color:#30465b}
[data-management-module="jornada"] input,
[data-management-module="jornada"] select{width:100%;min-width:0}
@media(max-width:1100px){[data-clinical-reports] .nvis-table-wrap{overflow-x:auto}}


/* INVIS v8.6.1 - Diagnósticos: búsqueda de pacientes y alta rápida responsive */
[data-doctor-diagnoses] .nvis-ci-form > .wide,
[data-doctor-diagnoses] .nvis-ci-form > .nvis-dd-create-patient,
[data-doctor-diagnoses] .nvis-ci-form > .nvis-dd-selected-patient{
  grid-column:1 / -1 !important;
  width:100% !important;
  min-width:0 !important;
}
[data-doctor-diagnoses] .nvis-dd-patient-search-row{
  grid-template-columns:minmax(0,1fr) minmax(160px,220px);
  align-items:stretch;
}
[data-doctor-diagnoses] [data-dd-patient-search]{min-height:56px}
[data-doctor-diagnoses] [data-dd-open-create-patient]{min-height:56px;white-space:nowrap}
[data-doctor-diagnoses] .nvis-ci-results{
  display:grid;
  gap:8px;
  width:100%;
  margin-top:8px;
  position:relative;
  z-index:4;
}
[data-doctor-diagnoses] .nvis-ci-results > button{
  appearance:none;
  border:1px solid #d7e7f1;
  border-radius:14px;
  background:#fff;
  padding:12px 14px;
  min-height:58px;
  box-shadow:0 4px 12px rgba(23,58,91,.04);
  cursor:pointer;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
[data-doctor-diagnoses] .nvis-ci-results > button:hover,
[data-doctor-diagnoses] .nvis-ci-results > button:focus{
  border-color:#1393cc;
  background:#f3fbff;
  transform:translateY(-1px);
  outline:none;
}
[data-doctor-diagnoses] .nvis-ci-results > button strong{font-size:14px;line-height:1.25}
[data-doctor-diagnoses] .nvis-ci-results > button small{font-size:11px;line-height:1.4}
[data-doctor-diagnoses] .nvis-no-suggestion{
  display:block;
  width:100%;
  padding:12px 14px;
  border:1px dashed #cfe0ea;
  border-radius:12px;
  background:#f7fbfd;
  color:#687f92;
  font-size:12px;
}
[data-doctor-diagnoses] .nvis-no-suggestion.is-error{border-color:#efcaca;background:#fff5f5;color:#9f3535}
[data-doctor-diagnoses] .nvis-dd-create-patient{
  box-sizing:border-box;
  margin:6px 0 20px;
  padding:24px;
  border-radius:20px;
  overflow:visible;
}
[data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:start;
}
[data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3 > label{
  display:flex;
  flex-direction:column;
  gap:7px;
  width:100%;
  min-width:0;
  margin:0;
}
[data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3 > label > span{
  display:block;
  font-weight:800;
  color:#344a61;
  font-size:12px;
}
[data-doctor-diagnoses] .nvis-dd-create-patient input,
[data-doctor-diagnoses] .nvis-dd-create-patient select{
  width:100% !important;
  min-width:0 !important;
  height:52px;
  border-radius:12px;
  box-sizing:border-box;
}
[data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3 > .wide{
  grid-column:1 / -1 !important;
}
[data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:20px;
}
[data-doctor-diagnoses] .nvis-dd-create-patient [data-dd-create-patient-submit]{
  width:auto !important;
  min-width:260px;
}
@media(max-width:1100px){
  [data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:760px){
  [data-doctor-diagnoses] .nvis-dd-patient-search-row{grid-template-columns:1fr}
  [data-doctor-diagnoses] .nvis-dd-create-patient{padding:18px 14px}
  [data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3{grid-template-columns:1fr !important;gap:12px !important}
  [data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-grid--3 > .wide{grid-column:auto !important}
  [data-doctor-diagnoses] .nvis-dd-create-head{display:grid;grid-template-columns:1fr;gap:12px}
  [data-doctor-diagnoses] .nvis-dd-create-head .nvis-outline-button{width:100% !important}
  [data-doctor-diagnoses] .nvis-dd-create-patient .nvis-form-actions{display:block}
  [data-doctor-diagnoses] .nvis-dd-create-patient [data-dd-create-patient-submit]{width:100% !important;min-width:0}
}


/* INVIS v8.6.2 — Diagnósticos: resultados de búsqueda como autocomplete flotante */
[data-doctor-diagnoses] .nvis-dd-patient-field{
  position:relative;
  z-index:30;
}
[data-doctor-diagnoses] .nvis-dd-search-shell{
  position:relative;
  width:100%;
  min-width:0;
}
[data-doctor-diagnoses] .nvis-dd-search-shell .nvis-ci-results{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 8px);
  z-index:80;
  margin:0;
  max-height:300px;
  overflow:auto;
  padding:8px;
  border:1px solid #d8e8f2;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 42px rgba(23,58,91,.16);
}
[data-doctor-diagnoses] .nvis-dd-search-shell .nvis-ci-results:empty{
  display:none;
}
[data-doctor-diagnoses] .nvis-dd-search-shell .nvis-ci-results > button{
  margin:0;
  box-shadow:none;
}
[data-doctor-diagnoses] .nvis-dd-search-shell .nvis-ci-results > button + button{
  margin-top:6px;
}
[data-doctor-diagnoses] .nvis-dd-patient-field > small{
  display:block;
  margin-top:9px;
}
[data-doctor-diagnoses] .nvis-ci-form{
  position:relative;
}
@media(max-width:760px){
  [data-doctor-diagnoses] .nvis-dd-search-shell .nvis-ci-results{
    max-height:240px;
  }
}

/* v10.12.4 Ficha 360: datos maestros organizados y responsive */
.nvis-360-patient-editor-wrap{padding:4px}
.nvis-360-patient-form{background:#f7fbfd;border:1px solid #d9e9f2;border-radius:24px;padding:20px;box-shadow:0 12px 34px rgba(18,72,105,.07)}
.nvis-360-field-section{background:#fff;border:1px solid #dceaf2;border-radius:20px;padding:18px;margin-bottom:16px;box-shadow:0 6px 18px rgba(18,72,105,.045)}
.nvis-360-section-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e7f0f5}
.nvis-360-section-head>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,#0b78a9,#11add0);color:#fff;font-weight:900;font-size:12px;box-shadow:0 6px 14px rgba(14,145,188,.18)}
.nvis-360-section-head h4{margin:0;color:#173f5a;font-size:16px;line-height:1.2}.nvis-360-section-head p{margin:4px 0 0;color:#718999;font-size:12px}
.nvis-360-section-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px 16px!important;align-items:start}
.nvis-360-section-grid>label{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:0!important;margin:0!important;font-weight:800!important;color:#244963!important;font-size:12px!important}
.nvis-360-section-grid>label.span-2{grid-column:span 2!important}.nvis-360-section-grid>label.span-full{grid-column:1/-1!important}
.nvis-360-section-grid input,.nvis-360-section-grid select,.nvis-360-section-grid textarea{width:100%!important;max-width:none!important;box-sizing:border-box!important;background:#f5fafc!important;border:1.5px solid #c8dce8!important;border-radius:13px!important;padding:11px 13px!important;min-height:44px!important;color:#173c57!important;font:inherit!important;font-weight:600!important;outline:none!important;transition:.18s ease!important;box-shadow:inset 0 1px 2px rgba(22,70,99,.035)!important}
.nvis-360-section-grid textarea{min-height:96px!important;resize:vertical!important}.nvis-360-section-grid input:hover,.nvis-360-section-grid select:hover,.nvis-360-section-grid textarea:hover{border-color:#9fc4d5!important;background:#fff!important}.nvis-360-section-grid input:focus,.nvis-360-section-grid select:focus,.nvis-360-section-grid textarea:focus{background:#fff!important;border-color:#129ec9!important;box-shadow:0 0 0 4px rgba(18,158,201,.12)!important}
.nvis-360-field-section--clinical .nvis-360-section-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.nvis-360-field-section--clinical .span-2{grid-column:span 2!important}
.nvis-360-savebar{position:sticky;bottom:0;z-index:4;margin:20px -20px -20px;padding:14px 20px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid #deebf2;display:flex;justify-content:flex-end;align-items:center;gap:16px;border-radius:0 0 24px 24px}.nvis-360-savebar [data-360-patient-msg]{margin-right:auto;font-weight:800}.nvis-360-savebar .is-success{color:#16835d}.nvis-360-savebar .is-error{color:#b42318}
@media(max-width:1180px){.nvis-360-section-grid,.nvis-360-field-section--clinical .nvis-360-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.nvis-360-section-grid>label.span-2,.nvis-360-field-section--clinical .span-2{grid-column:span 2!important}}
@media(max-width:680px){.nvis-360-patient-form{padding:12px}.nvis-360-field-section{padding:14px;border-radius:16px}.nvis-360-section-grid,.nvis-360-field-section--clinical .nvis-360-section-grid{grid-template-columns:1fr!important;gap:12px!important}.nvis-360-section-grid>label.span-2,.nvis-360-section-grid>label.span-full,.nvis-360-field-section--clinical .span-2{grid-column:auto!important}.nvis-360-savebar{margin:16px -12px -12px;padding:12px;flex-direction:column;align-items:stretch}.nvis-360-savebar [data-360-patient-msg]{margin:0}}

/* INVIS v10.15.8 - Bandeja de trabajo inteligente */
.nvis-workbench{margin:20px 0;background:#fff;border:1px solid var(--nvis-border);border-radius:20px;padding:22px;box-shadow:0 10px 28px rgba(26,72,110,.045)}
.nvis-workbench-help{margin:5px 0 0;color:var(--nvis-muted);font-size:12px}
.nvis-workbench-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}
.nvis-work-kpi{padding:13px 14px;border:1px solid #dce9f0;border-radius:14px;background:#f8fcfe}.nvis-work-kpi span{display:block;color:#718596;font-size:10px}.nvis-work-kpi strong{display:block;color:#0b79ad;font-size:23px;margin-top:3px}
.nvis-workbench-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.nvis-work-card{border:1px solid #dce9f0;border-radius:16px;background:#fbfdfe;padding:14px}.nvis-work-card--quality{margin-top:14px}.nvis-work-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.nvis-work-card>header strong{color:#173c5d}.nvis-work-card>header button{border:0;background:transparent;color:#087eB4;font-weight:800;cursor:pointer;font-size:11px}
.nvis-work-item{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e6eef3;padding:11px 0}.nvis-work-item:first-child{border-top:0}.nvis-work-item>div{min-width:0}.nvis-work-item small{display:block;color:#748797;margin-top:3px}.nvis-work-item p{margin:5px 0 0;color:#526b7e;font-size:11px}.nvis-work-item p b{color:#0a78aa}.nvis-work-open{white-space:nowrap;border:1px solid #c9e0ec;background:#fff;color:#087eB4;border-radius:10px;padding:8px 10px;font-weight:800;font-size:10px;cursor:pointer}.nvis-patient-link{appearance:none;border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit}.nvis-patient-link strong,.nvis-patient-link span{display:block}.nvis-patient-link strong{color:#173c5d}.nvis-patient-link span{font-size:10px;color:#7a8c99;margin-top:2px}.nvis-patient-link:hover strong{text-decoration:underline;color:#087eB4}
@media(max-width:1100px){.nvis-workbench-kpis{grid-template-columns:repeat(3,1fr)}.nvis-workbench-grid{grid-template-columns:1fr}}@media(max-width:680px){.nvis-workbench{padding:14px}.nvis-workbench-kpis{grid-template-columns:repeat(2,1fr)}.nvis-work-item{align-items:flex-start}.nvis-work-open{padding:7px}}
.nvis-360-quick-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 18px;background:#f7fbfd;border-bottom:1px solid #dce9f0}.nvis-360-quick-actions>span{font-size:10px;font-weight:900;color:#6c8192;text-transform:uppercase;letter-spacing:.08em}.nvis-360-quick-actions button{border:1px solid #c9e0ec;background:#fff;color:#087eB4;border-radius:999px;padding:7px 11px;font-weight:800;font-size:10px;cursor:pointer}.nvis-360-quick-actions button:hover{background:#eaf7fc}

/* INVIS v10.15.9 - Bandeja visual refinada */
.nvis-workbench{margin:24px 0 28px!important;background:#fff!important;border:1px solid #dce9f1!important;border-radius:24px!important;padding:24px!important;box-shadow:0 14px 38px rgba(25,72,105,.07)!important;overflow:hidden}
.nvis-workbench>.nvis-panel-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:20px!important;margin:0 0 22px!important;padding:0 0 18px!important;border-bottom:1px solid #e7eff4!important}.nvis-workbench>.nvis-panel-head h3{margin:5px 0 0!important;font-size:24px!important;line-height:1.2!important;color:#173f5d!important;font-weight:800!important}.nvis-workbench-help{margin:7px 0 0!important;color:#71879a!important;font-size:13px!important;line-height:1.5!important}
.nvis-workbench [data-refresh-workbench]{min-height:40px!important;padding:0 16px!important;border:1px solid #cfe2ec!important;border-radius:12px!important;background:#f7fbfd!important;color:#147ba7!important;font-weight:800!important;cursor:pointer!important}
.nvis-workbench-kpis{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;margin:0 0 20px!important}.nvis-work-kpi{display:flex!important;flex-direction:column!important;justify-content:center!important;min-height:82px!important;padding:14px 16px!important;border:1px solid #dceaf1!important;border-radius:16px!important;background:linear-gradient(180deg,#fbfdff 0%,#f5fafc 100%)!important}.nvis-work-kpi span{display:block!important;color:#71879a!important;font-size:11px!important;font-weight:700!important}.nvis-work-kpi strong{display:block!important;margin-top:5px!important;color:#0b88bc!important;font-size:25px!important;line-height:1!important;font-weight:900!important}
.nvis-workbench-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.nvis-work-card{display:block!important;min-width:0!important;border:1px solid #deebf2!important;border-radius:18px!important;background:#fff!important;padding:17px 18px!important;box-shadow:0 5px 18px rgba(28,73,105,.035)!important}.nvis-work-card--quality{margin-top:16px!important;background:#fbfdff!important}.nvis-work-card>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:0 0 10px!important;padding:0 0 10px!important;border-bottom:1px solid #edf3f6!important}.nvis-work-card>header strong{color:#173f5d!important;font-size:14px!important}.nvis-work-card>header button{appearance:none!important;border:0!important;border-radius:10px!important;background:#eaf7fc!important;color:#087faf!important;padding:8px 11px!important;font-size:10px!important;font-weight:800!important;cursor:pointer!important}.nvis-work-card .nvis-table-empty{padding:18px 4px!important;text-align:center!important;color:#8799a8!important;font-size:12px!important}
.nvis-work-item{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:12px 0!important;border-top:1px solid #edf3f6!important}.nvis-work-item:first-child{border-top:0!important}.nvis-work-item>div{min-width:0!important;flex:1!important}.nvis-work-item small{display:block!important;margin-top:3px!important;color:#758b9b!important;font-size:10px!important}.nvis-work-item p{margin:5px 0 0!important;color:#526e81!important;font-size:11px!important}.nvis-work-open{appearance:none!important;flex:0 0 auto!important;border:1px solid #cce2ed!important;border-radius:10px!important;background:#fff!important;color:#087faf!important;padding:8px 11px!important;font-size:10px!important;font-weight:800!important;cursor:pointer!important}.nvis-patient-link{appearance:none!important;border:0!important;background:transparent!important;padding:0!important;text-align:left!important;cursor:pointer!important;max-width:100%!important}.nvis-patient-link strong{display:block!important;color:#173f5d!important;font-size:12px!important;white-space:normal!important;overflow-wrap:anywhere!important}.nvis-patient-link span{display:block!important;margin-top:3px!important;color:#7d91a0!important;font-size:10px!important}
@media(max-width:1180px){.nvis-workbench-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}.nvis-workbench-grid{grid-template-columns:1fr!important}}@media(max-width:720px){.nvis-workbench{padding:16px!important}.nvis-workbench>.nvis-panel-head{flex-direction:column!important}.nvis-workbench-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.nvis-work-item{align-items:flex-start!important;flex-direction:column!important}}

/* v10.15.10: enlaces robustos Ficha 360 en bandeja */
.nvis-workbench a.nvis-patient-link,.nvis-workbench a.nvis-work-open{text-decoration:none!important}.nvis-workbench a.nvis-work-open{display:inline-flex!important;align-items:center!important;justify-content:center!important}


/* INVIS v10.15.16 — Listado de pacientes adaptable */
.nvis-patients-table-wrap{width:100%;max-width:100%;overflow-x:hidden!important}
.nvis-patients-table{width:100%!important;table-layout:fixed!important;min-width:0!important}
.nvis-patients-table th,.nvis-patients-table td{white-space:normal!important;overflow-wrap:anywhere;word-break:normal;vertical-align:middle}
.nvis-patients-table th:nth-child(1){width:21%}.nvis-patients-table th:nth-child(2){width:9%}.nvis-patients-table th:nth-child(3){width:12%}.nvis-patients-table th:nth-child(4){width:15%}.nvis-patients-table th:nth-child(5){width:15%}.nvis-patients-table th:nth-child(6){width:12%}.nvis-patients-table th:nth-child(7){width:16%}
.nvis-patients-table td{padding:15px 10px!important;line-height:1.35}.nvis-patients-table td strong{white-space:normal!important;line-height:1.35}.nvis-patients-table td span{white-space:normal!important}
.nvis-patient-expediente{margin-top:6px!important;color:#1769a3!important;font-weight:800!important;font-size:10px!important}
.nvis-patient-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;align-items:stretch!important}
.nvis-patient-actions .nvis-primary-button,.nvis-patient-actions .nvis-outline-button,.nvis-patient-pdf-button{min-width:0!important;width:100%!important;min-height:34px!important;padding:7px 6px!important;border-radius:9px!important;font-size:9px!important;line-height:1.15!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;white-space:normal!important}
.nvis-patient-pdf-button{border:1px solid #d5e5ee!important;background:#eef8fc!important;color:#087faf!important;font-weight:800!important}
@media(max-width:1180px){.nvis-patients-table th:nth-child(1){width:22%}.nvis-patients-table th:nth-child(2){width:9%}.nvis-patients-table th:nth-child(3){width:12%}.nvis-patients-table th:nth-child(4){width:14%}.nvis-patients-table th:nth-child(5){width:14%}.nvis-patients-table th:nth-child(6){width:12%}.nvis-patients-table th:nth-child(7){width:17%}.nvis-patients-table th,.nvis-patients-table td{padding-left:7px!important;padding-right:7px!important;font-size:10px!important}.nvis-patient-actions{grid-template-columns:1fr!important}}
@media(max-width:820px){.nvis-patients-table-wrap{overflow:visible!important}.nvis-patients-table,.nvis-patients-table tbody,.nvis-patients-table tr,.nvis-patients-table td{display:block!important;width:100%!important}.nvis-patients-table thead{display:none!important}.nvis-patients-table tbody{display:grid!important;gap:12px!important}.nvis-patients-table tr{border:1px solid #dce8ef!important;border-radius:16px!important;background:#fff!important;padding:12px 14px!important;box-shadow:0 7px 20px rgba(26,72,110,.04)!important}.nvis-patients-table td{display:grid!important;grid-template-columns:125px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;padding:9px 0!important;border-bottom:1px solid #edf3f6!important}.nvis-patients-table td:last-child{border-bottom:0!important}.nvis-patients-table td:before{content:attr(data-label);color:#7b8d9d;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.nvis-patient-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){.nvis-patients-table td{grid-template-columns:1fr!important;gap:4px!important}.nvis-patient-actions{grid-template-columns:1fr!important}}

/* INVIS 10.15.19 · interfaz compacta de producción */
.nvis-ars-breakdown,[data-patient-ars-breakdown],[data-report-ars-breakdown],[data-inline-ars-breakdown]{display:none!important}
.nvis-today-badge{display:inline-flex;align-items:center;margin-left:7px;padding:3px 8px;border-radius:999px;background:#e4f5fd;color:#087fb8;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}
.nvis-back-button{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;border:1px solid #d9e6ee;background:#fff;color:#17365f;border-radius:10px;padding:8px 12px;font-weight:800;cursor:pointer}.nvis-back-button:hover{border-color:#78b9d8;background:#f5fbfe}


/* INVIS 10.15.20 · trazabilidad diaria y navegación de KPIs */
.nvis-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.nvis-stat-card--clickable{width:100%;text-align:left;font:inherit;cursor:pointer;appearance:none}
.nvis-stat-card--clickable:hover{transform:translateY(-2px);border-color:#b7ddec;box-shadow:0 12px 28px rgba(26,72,110,.10)}
.nvis-stat-card--clickable em{display:block;margin-top:5px;font-size:9px;font-style:normal;font-weight:800;color:var(--nvis-primary)}
.nvis-work-kpi{border:1px solid var(--nvis-border);cursor:pointer;text-align:left;font:inherit}
.nvis-work-kpi:hover{border-color:#b7ddec;background:#f8fcfe}
.nvis-work-kpi small{display:block;margin-top:4px;color:var(--nvis-primary);font-size:9px;font-weight:800}
.nvis-new-patient-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:12px 0 6px;padding:11px 14px;border:1px solid #d6e9f3;border-radius:13px;background:#f4fbfe;color:#17365f}
.nvis-new-patient-summary>strong{font-size:13px}
.nvis-new-patient-summary>div{display:flex;gap:8px;flex-wrap:wrap}
.nvis-new-patient-summary span{padding:4px 8px;border-radius:999px;background:#fff;border:1px solid #dceaf1;font-size:10px;color:#5f7487}
.nvis-new-patient-badge{display:inline-block!important;margin-left:7px!important;padding:3px 7px!important;border-radius:999px;background:#e8f8ef;color:#16784a!important;font-size:8px!important;font-weight:900;vertical-align:middle}
.nvis-patient-source{display:inline-block!important;width:max-content;margin-top:5px!important;padding:3px 7px;border-radius:999px;background:#eef7fb;color:#087bb8!important;font-weight:800}
@media(max-width:1250px){.nvis-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.nvis-stat-grid{grid-template-columns:1fr}.nvis-new-patient-summary{align-items:flex-start;flex-direction:column}}

/* INVIS v11.3 · paginación eficiente */
.nvis-patient-pager{display:flex;justify-content:center;align-items:center;gap:12px;padding:14px 6px 4px}.nvis-patient-pager span{font-weight:800;color:#496579}.nvis-patient-pager button:disabled{opacity:.45;cursor:not-allowed}
/* V11.3 mantiene el paginador compacto incluso con tablas largas. */
.nvis-patient-pager+.nvis-panel{margin-top:18px}


/* INVIS v11.3.3 · Ficha 360 tabs: fallback definitivo sin scroll horizontal */
.nvis-360-modal .nvis-360-shell .nvis-360-tabs{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  align-items:stretch!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  padding:12px 18px!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  overscroll-behavior-x:none!important;
  scrollbar-width:none!important;
}
.nvis-360-modal .nvis-360-shell .nvis-360-tabs::-webkit-scrollbar{display:none!important}
.nvis-360-modal .nvis-360-shell .nvis-360-tabs>button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:44px!important;
  padding:9px 10px!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-align:center!important;
  line-height:1.18!important;
}
@media(max-width:1499px){
  .nvis-360-modal .nvis-360-shell .nvis-360-tabs{grid-template-columns:repeat(6,minmax(0,1fr))!important}
}
@media(max-width:1199px){
  .nvis-360-modal .nvis-360-shell .nvis-360-tabs{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:991px){
  .nvis-360-modal .nvis-360-shell .nvis-360-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .nvis-360-modal .nvis-360-shell .nvis-360-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:10px!important}
}

/* V11.3.6 · Calidad de expedientes y acceso rápido desde listado de pacientes */
.nvis-patient-quality-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.nvis-patient-quality-shortcuts>button{border:1px solid #d9e9f3;background:#fff;border-radius:16px;padding:14px 16px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;cursor:pointer;transition:.18s ease;box-shadow:0 6px 18px rgba(18,90,130,.05)}
.nvis-patient-quality-shortcuts>button:hover{transform:translateY(-1px);border-color:#8bc7e7;box-shadow:0 10px 24px rgba(18,90,130,.10)}
.nvis-patient-quality-shortcuts span{font-weight:800;color:#163b5c}.nvis-patient-quality-shortcuts strong{font-size:24px;color:#0789c7;grid-row:1/3;grid-column:2}.nvis-patient-quality-shortcuts small{color:#7890a5}
.nvis-expediente-link{appearance:none;border:0;background:transparent;padding:0;margin:4px 0 0;color:#047fb9;font-weight:900;cursor:pointer;text-decoration:none;text-align:left}.nvis-expediente-link:hover{text-decoration:underline}
.nvis-patient-quality-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.nvis-quality-badge{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:999px;background:#eef5f9;color:#47677e;font-size:11px;font-weight:800}.nvis-quality-badge.is-warning{background:#fff3df;color:#9a5b00}
.nvis-patient-last-visit{border:1px solid #d7e7f1;background:#f7fbfd;border-radius:12px;padding:8px 10px;min-width:118px;cursor:pointer;text-align:left}.nvis-patient-last-visit strong{display:block;color:#0c6f9e;font-size:13px}.nvis-patient-last-visit span{display:block;color:#6e8598;font-size:11px;margin-top:2px}.nvis-patient-last-visit:hover{background:#eef9ff;border-color:#85c9e8}.nvis-muted{color:#8a9cac;font-size:12px}
.nvis-patient-day-modal[hidden]{display:none!important}.nvis-patient-day-modal{position:fixed;inset:0;z-index:100080;display:flex;align-items:center;justify-content:center;padding:28px}.nvis-patient-day-backdrop{position:absolute;inset:0;background:rgba(9,36,56,.46);backdrop-filter:blur(3px)}.nvis-patient-day-card{position:relative;width:min(900px,94vw);max-height:86vh;overflow:auto;background:#fff;border-radius:22px;padding:24px;box-shadow:0 30px 90px rgba(7,39,61,.25)}
.nvis-patient-day-events{display:grid;gap:10px;margin-top:16px}.nvis-patient-day-events article{display:grid;grid-template-columns:72px 1fr;gap:14px;padding:14px;border:1px solid #e0edf4;border-radius:14px;background:#fbfdff}.nvis-day-event-time{font-weight:900;color:#0789c7}.nvis-patient-day-events article span{font-size:11px;font-weight:900;color:#0986bf;text-transform:uppercase;letter-spacing:.04em}.nvis-patient-day-events h4{margin:3px 0 5px;color:#153b5d}.nvis-patient-day-events p{margin:0 0 5px;color:#506b80;white-space:pre-wrap}.nvis-patient-day-events small{color:#8496a5}
@media(max-width:900px){.nvis-patient-quality-shortcuts{grid-template-columns:1fr}.nvis-patient-day-modal{padding:12px}.nvis-patient-day-card{width:100%;max-height:92vh}.nvis-patient-day-events article{grid-template-columns:52px 1fr}}
.nvis-quality-edit{border:0;cursor:pointer;font-family:inherit}.nvis-quality-edit:hover{text-decoration:underline;background:#e5f2f8}

/* V11.3.7 · acciones siempre visibles en listado de pacientes */
.nvis-patients-table td:nth-child(7){overflow:visible!important}.nvis-patient-actions{position:relative;z-index:2}.nvis-patient-actions button,.nvis-patient-actions a{visibility:visible!important;opacity:1!important}
/* v11.3.14 - responsive hardening */
html,body{max-width:100%;overflow-x:hidden}
.nvis-app,.nvis-shell,.nvis-main,.nvis-content,[data-view]{min-width:0;max-width:100%}
.nvis-panel,.nvis-card,.nvis-table-wrap{max-width:100%;min-width:0}
.nvis-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.nvis-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}
.nvis-form-grid>*{min-width:0}
.nvis-form-grid input,.nvis-form-grid select,.nvis-form-grid textarea{width:100%;max-width:100%;min-width:0}
@media(max-width:1100px){.nvis-main,.nvis-content{width:100%;padding-left:16px!important;padding-right:16px!important}.nvis-toolbar,.nvis-filters{flex-wrap:wrap}.nvis-toolbar>* ,.nvis-filters>*{min-width:0;max-width:100%}}
@media(max-width:768px){.nvis-content{padding:12px!important}.nvis-form-grid{grid-template-columns:1fr!important}.nvis-toolbar,.nvis-filters,.nvis-row-actions{display:flex;flex-direction:column;align-items:stretch}.nvis-toolbar button,.nvis-filters button,.nvis-row-actions button{width:100%}.nvis-table{min-width:760px}}

/* v11.3.19.1 - layout recovery / full-width clinical shell */
.nvis-system{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  transform:none !important;
  zoom:1 !important;
}
.nvis-system .nvis-shell{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
}
.nvis-system .nvis-content,
.nvis-system .nvis-main{
  min-width:0 !important;
  max-width:none !important;
}
.elementor-widget-shortcode:has(.nvis-system),
.elementor-shortcode:has(.nvis-system){
  width:100% !important;
  max-width:none !important;
}

/* 11.3.19.3: navegación directa Jornada → Participantes */
.nvis-link-button{appearance:none;border:0;background:transparent;padding:0;color:#0a6fa6;cursor:pointer;text-align:left;font:inherit}.nvis-link-button:hover{text-decoration:underline}

/* v11.3.20.2 Reporte Simple autocompletado desde Jornada/Participantes */
.nvis-simple-report [data-auto-source][readonly]{background:#f2f8fb!important;color:#173358!important;font-weight:800;cursor:not-allowed}.nvis-simple-report [data-simple-autofill-status]{margin:18px 24px 0;padding:12px 14px;border-radius:10px;background:#eaf6fb;color:#315b74;font-size:11px;font-weight:700}
/* v11.3.20.3 Reporte semanal completo */
.nvis-weekly-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin:4px 0 18px}
.nvis-weekly-summary-grid article,.nvis-weekly-operational article{background:#f2f8fb;border:1px solid #dceaf2;border-radius:12px;padding:12px 14px}
.nvis-weekly-summary-grid small,.nvis-weekly-operational small{display:block;color:#6b8090;font-size:11px;font-weight:700;margin-bottom:4px}
.nvis-weekly-summary-grid strong,.nvis-weekly-operational strong{font-size:20px;color:#153a59}
.nvis-weekly-operational{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px;margin:14px 0}
.nvis-weekly-ars{background:#f8fbfd;border:1px solid #dce8ef;border-radius:10px;padding:11px 13px;color:#526b7d;font-size:12px;line-height:1.7}
.nvis-weekly-ars strong{color:#173b56}
@media(max-width:1100px){.nvis-weekly-summary-grid,.nvis-weekly-operational{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.nvis-weekly-summary-grid,.nvis-weekly-operational{grid-template-columns:repeat(2,1fr)}}

/* v11.3.20.6.2 · Línea de tiempo de participantes */
.nvis-cc-timeline{margin-top:22px;padding-top:18px;border-top:1px solid #dfeaf2}.nvis-cc-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.nvis-cc-timeline [data-cc-history]{max-height:280px;overflow:auto;padding-right:4px}.nvis-ccpro-history-item{display:grid;grid-template-columns:145px 1fr auto;gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid #edf3f7}.nvis-ccpro-history-item div{display:grid;gap:4px}.nvis-ccpro-history-item small{display:block;color:#64748b;white-space:pre-line}@media(max-width:720px){.nvis-ccpro-history-item{grid-template-columns:1fr}.nvis-cc-timeline-head{align-items:flex-start;flex-direction:column}}
/* v11.3.20.6.4 - catálogo de personal de jornadas */
.nvis-catalog-input{display:flex;gap:6px;align-items:stretch}.nvis-catalog-input input{min-width:0;flex:1}.nvis-catalog-input button{flex:0 0 auto;border:1px solid #d8e6ef;background:#eef8fc;color:#087db8;border-radius:10px;padding:0 10px;font-weight:800;cursor:pointer}.nvis-catalog-input button:hover{background:#dff3fb}

/* 11.3.20.6.8 · Uniformidad institucional en listados */
.nvis-table th,.nvis-table td,.nvis-list-item,.nvis-patient-card,.nvis-participant-card,[data-patients-body] td,[data-participants-body] td{text-transform:uppercase}
.nvis-plan-add-button{margin-top:7px;width:auto!important;min-height:34px!important;padding:7px 11px!important;font-size:11px!important}

/* 11.3.20.6.9 ARS planes */
.nvis-plan-field{display:flex;gap:8px;align-items:center;width:100%}.nvis-plan-field select{flex:1;min-width:0}.nvis-plan-add-button{white-space:nowrap;min-height:44px}

/* v11.3.20.6.33 · Indicadores clínicos rápidos en listado de pacientes */
.nvis-patient-expediente-line{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:4px}
.nvis-patient-record-icons{display:inline-flex;align-items:center;gap:5px}
.nvis-patient-record-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:31px;height:28px;padding:0;border:1px solid #cfe3ed;border-radius:9px;background:#f5fbfe;color:#087fad;cursor:pointer;box-shadow:0 2px 6px rgba(25,74,105,.05);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.nvis-patient-record-icon:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(25,74,105,.12);border-color:#8cc8df}
.nvis-patient-record-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nvis-patient-record-icon.is-rx{color:#087fad;background:#edf9fd}
.nvis-patient-record-icon.is-lens{color:#315e98;background:#f1f6fd}
.nvis-patient-record-icon>span{position:absolute;right:-5px;top:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#153b61;color:#fff;font-size:9px;line-height:16px;font-weight:900;text-align:center;border:2px solid #fff}
@media(max-width:700px){.nvis-patient-expediente-line{justify-content:flex-start}}
/* v11.3.20.6.46 · Accesos clínicos rápidos completos */
.nvis-patient-record-icons{flex-wrap:wrap;justify-content:center;max-width:260px}
.nvis-patient-record-icon.is-study{color:#16745f;background:#eefaf6}.nvis-patient-record-icon.is-surgery{color:#8b4d72;background:#fbf3f8}.nvis-patient-record-icon.is-auth{color:#a36b00;background:#fff9e9}.nvis-patient-record-icon.is-appt{color:#2767a6;background:#f0f7ff}.nvis-patient-record-icon.is-follow{color:#6a55a3;background:#f6f2ff}
@media(max-width:700px){.nvis-patient-record-icons{justify-content:flex-start;max-width:none}.nvis-patient-record-icon{width:34px;height:32px}}

/* Indicador visual: paciente convertido desde jornada */
.nvis-journey-bus{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;vertical-align:middle;font-size:18px;line-height:1;cursor:default;filter:saturate(.9)}
@media (max-width:768px){.nvis-journey-bus{font-size:17px;margin-left:4px}}
/* v11.3.20.6.48 - indicador visual destacado para pacientes convertidos desde jornada */
.nvis-journey-bus{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  margin-left:8px;
  vertical-align:middle;
  font-size:23px;
  line-height:1;
  background:#fff2a8;
  border:1px solid #f3c93f;
  border-radius:50%;
  box-shadow:0 2px 7px rgba(180,125,0,.18);
  cursor:default;
  filter:saturate(1.25) contrast(1.04);
}
@media (max-width:768px){.nvis-journey-bus{width:31px;height:31px;font-size:21px;margin-left:6px}}
/* v11.3.20.6.49 - guagua de jornada sin fondo, alineada con indicadores del listado */
.nvis-journey-bus{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:31px;
  height:28px;
  margin-left:6px;
  padding:0;
  vertical-align:middle;
  font-size:20px;
  line-height:1;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  filter:none;
  cursor:default;
}
@media(max-width:700px){.nvis-journey-bus{width:34px;height:32px;font-size:21px;margin-left:5px}}
/* v11.3.20.6.50 · Jornada: icono de transporte integrado junto al expediente */
.nvis-journey-bus{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:31px;height:28px;margin:0;padding:0;border:1px solid #cfe3ed;border-radius:9px;
  background:#f0f8fd;color:#1676ad;box-shadow:0 2px 6px rgba(25,74,105,.05);
  vertical-align:middle;line-height:1;cursor:default;filter:none;flex:0 0 auto;
}
.nvis-journey-bus svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:700px){.nvis-journey-bus{width:34px;height:32px;margin:0}.nvis-journey-bus svg{width:18px;height:18px}}

/* v11.3.20.6.51 · Indicador Jornada igual al diseño aprobado */
.nvis-journey-bus{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  width:auto;height:34px;margin:0;padding:0 11px 0 9px;
  border:1px solid #c7dfec;border-radius:12px;background:#eef8fc;
  color:#0a76ad;box-shadow:none;vertical-align:middle;line-height:1;
  cursor:default;flex:0 0 auto;font-style:normal;white-space:nowrap;
}
.nvis-journey-bus svg{width:27px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.nvis-journey-bus i{display:block;width:1px;height:20px;background:#82b9d4;opacity:.8;flex:0 0 auto}
.nvis-journey-bus b{font-size:12px;line-height:1;font-weight:900;letter-spacing:.15px;color:#174f82}
@media(max-width:700px){.nvis-journey-bus{height:32px;padding:0 9px 0 8px;gap:7px}.nvis-journey-bus svg{width:25px;height:18px}.nvis-journey-bus i{height:18px}.nvis-journey-bus b{font-size:11px}}

/* v11.3.20.6.52 · Jornada: corrección definitiva de layout dentro de tabla */
.nvis-table td .nvis-patient-expediente-line{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  margin-top:6px!important;
  white-space:nowrap!important;
}
.nvis-table td .nvis-patient-expediente-line .nvis-patient-expediente{
  margin:0!important;
  flex:0 0 auto!important;
}
.nvis-table td span.nvis-journey-bus{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  width:auto!important;
  min-width:142px!important;
  height:36px!important;
  margin:0!important;
  padding:0 12px 0 10px!important;
  box-sizing:border-box!important;
  border:1px solid #c7dfec!important;
  border-radius:13px!important;
  background:#eef8fc!important;
  color:#1676ad!important;
  box-shadow:none!important;
  font-size:12px!important;
  line-height:1!important;
  vertical-align:middle!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.nvis-table td span.nvis-journey-bus svg{
  display:block!important;
  width:30px!important;
  height:20px!important;
  margin:0!important;
  flex:0 0 30px!important;
  fill:none!important;
  stroke:#1676ad!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.nvis-table td span.nvis-journey-bus i{
  display:block!important;
  width:1px!important;
  height:22px!important;
  margin:0!important;
  background:#82b9d4!important;
  opacity:.9!important;
  flex:0 0 1px!important;
}
.nvis-table td span.nvis-journey-bus b{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#174f82!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.15px!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
@media(max-width:700px){
  .nvis-table td .nvis-patient-expediente-line{justify-content:flex-start!important;gap:8px!important}
  .nvis-table td span.nvis-journey-bus{min-width:132px!important;height:34px!important;padding:0 10px 0 9px!important;gap:7px!important}
  .nvis-table td span.nvis-journey-bus svg{width:27px!important;height:19px!important;flex-basis:27px!important}
  .nvis-table td span.nvis-journey-bus i{height:20px!important}
  .nvis-table td span.nvis-journey-bus b{font-size:11px!important}
}

/* v11.3.20.6.53 · Indicadores de origen junto al expediente */
.nvis-table td span.nvis-origin-channel{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex-direction:row!important;flex-wrap:nowrap!important;gap:8px!important;
  width:auto!important;min-width:126px!important;height:36px!important;margin:0!important;
  padding:0 12px 0 10px!important;box-sizing:border-box!important;
  border:1px solid #c7dfec!important;border-radius:13px!important;background:#eef8fc!important;
  color:#1676ad!important;box-shadow:none!important;font-size:12px!important;line-height:1!important;
  vertical-align:middle!important;white-space:nowrap!important;flex:0 0 auto!important;
}
.nvis-table td span.nvis-origin-channel svg{
  display:block!important;width:25px!important;height:20px!important;margin:0!important;
  flex:0 0 25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
.nvis-table td span.nvis-origin-channel i{
  display:block!important;width:1px!important;height:22px!important;margin:0!important;
  background:currentColor!important;opacity:.42!important;flex:0 0 1px!important;
}
.nvis-table td span.nvis-origin-channel b{
  display:block!important;margin:0!important;padding:0!important;color:#174f82!important;
  font-size:12px!important;font-weight:900!important;line-height:1!important;letter-spacing:.15px!important;
  white-space:nowrap!important;flex:0 0 auto!important;
}
.nvis-table td span.nvis-origin-channel.is-journey{color:#1676ad!important;min-width:142px!important}
.nvis-table td span.nvis-origin-channel.is-whatsapp{color:#168a63!important;border-color:#c5e7db!important;background:#f1fbf7!important;min-width:150px!important}
.nvis-table td span.nvis-origin-channel.is-whatsapp b{color:#176b52!important}
.nvis-table td span.nvis-origin-channel.is-turn{color:#1769a3!important;border-color:#c9dfef!important;background:#f0f7fc!important;min-width:122px!important}
.nvis-table td span.nvis-origin-channel.is-web{color:#6a5ac7!important;border-color:#d9d3f2!important;background:#f6f4fd!important;min-width:162px!important}
.nvis-table td span.nvis-origin-channel.is-web b{color:#50479f!important}
/* Mantener compatibilidad visual con el indicador Jornada ya aprobado */
.nvis-table td span.nvis-journey-bus{display:none!important}
@media(max-width:700px){
  .nvis-table td span.nvis-origin-channel{height:34px!important;padding:0 10px 0 9px!important;gap:7px!important;min-width:116px!important}
  .nvis-table td span.nvis-origin-channel svg{width:23px!important;height:18px!important;flex-basis:23px!important}
  .nvis-table td span.nvis-origin-channel i{height:20px!important}
  .nvis-table td span.nvis-origin-channel b{font-size:11px!important}
  .nvis-table td span.nvis-origin-channel.is-journey{min-width:132px!important}
  .nvis-table td span.nvis-origin-channel.is-whatsapp{min-width:140px!important}
  .nvis-table td span.nvis-origin-channel.is-web{min-width:150px!important}
}

/* v11.3.20.6.62 · Botón superior Actualizar / Restablecer */


/* v11.3.20.6.124 · AGENDA DE CITAS: HOY + CONFIRMACIÓN + RESPONSIVE */
.nvis-system [data-appointment-view] .nvis-appointments-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.nvis-system [data-appointment-view] .nvis-appointments-table{min-width:1120px}
.nvis-system [data-appointment-view] .nvis-appt-date-main{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:3px}
.nvis-system [data-appointment-view] .nvis-appt-badge{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 8px;border-radius:999px;font-size:9px;line-height:1;font-weight:900;letter-spacing:.035em;white-space:nowrap}
.nvis-system [data-appointment-view] .nvis-appt-badge.is-today{background:#e4f5fd;color:#087fb8;border:1px solid #b9e5f7}
.nvis-system [data-appointment-view] .nvis-appt-badge.is-requested-today{background:#eef7ff;color:#146da0;border:1px solid #cfe8f7}
.nvis-system [data-appointment-view] .nvis-appt-badge.is-pending-confirm{background:#fff4dc;color:#9b6500;border:1px solid #f2d391}
.nvis-system [data-appointment-view] .nvis-appt-unconfirmed{color:#936100}
.nvis-system [data-appointment-view] .nvis-appt-status-wrap{display:flex;flex-direction:column;align-items:stretch;gap:6px}
.nvis-system [data-appointment-view] .nvis-appt-mini-alert{display:inline-flex;width:max-content;max-width:100%;padding:4px 7px;border-radius:7px;background:#fff4dc;color:#8e5d00;font-size:9px;font-weight:800}
.nvis-system [data-appointment-view] .nvis-appointments-table tr.is-appointment-today td{background:#f8fcff}
.nvis-system [data-appointment-view] .nvis-appointments-table tr.is-appointment-today td:first-child{box-shadow:inset 4px 0 0 #1596cf}
.nvis-system [data-appointment-view] .nvis-appointments-table tr.is-appointment-requested-today td{background:#fffdf8}
.nvis-system [data-appointment-view] .nvis-appointments-table tr.is-appointment-requested-today td:first-child{box-shadow:inset 4px 0 0 #dba530}

@media(max-width:1100px){
  .nvis-system [data-appointment-view] .nvis-appointments-table{min-width:0!important;width:100%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table thead{display:none!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table,
  .nvis-system [data-appointment-view] .nvis-appointments-table tbody,
  .nvis-system [data-appointment-view] .nvis-appointments-table tr,
  .nvis-system [data-appointment-view] .nvis-appointments-table td{display:block!important;width:100%!important;box-sizing:border-box!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table tbody{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table tr{border:1px solid #dfeaf1!important;border-radius:14px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 6px 18px rgba(22,59,91,.05)!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table td{position:relative!important;min-height:46px!important;padding:10px 12px 10px 132px!important;border:0!important;border-bottom:1px solid #edf3f7!important;text-align:left!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table td:last-child{border-bottom:0!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table td::before{content:attr(data-label);position:absolute;left:12px;top:12px;width:108px;color:#6f8494;font-size:9px;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
  .nvis-system [data-appointment-view] .nvis-appointments-table .nvis-row-actions{justify-content:flex-start!important;flex-wrap:wrap!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table select[data-status-id]{width:100%!important;max-width:none!important}
}
@media(max-width:720px){
  .nvis-system [data-appointment-view] .nvis-appointments-table tbody{grid-template-columns:1fr!important}
  .nvis-system [data-appointment-view] .nvis-page-heading{align-items:stretch!important}
  .nvis-system [data-appointment-view] .nvis-page-heading>[data-open-view="nueva-cita"]{width:100%!important}
}
@media(max-width:520px){
  .nvis-system [data-appointment-view] .nvis-appointments-table td{padding:9px 10px!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table td::before{position:static!important;display:block!important;width:auto!important;margin-bottom:5px!important}
  .nvis-system [data-appointment-view] .nvis-appt-badge{font-size:8px!important}
  .nvis-system [data-appointment-view] .nvis-row-actions>*{flex:1 1 auto!important;min-width:80px!important}
}


/* =========================================================
   v11.3.20.6.127 · AGENDA DE CITAS · AJUSTE REAL AL VIEWPORT
   Alcance exclusivo: Agenda y gestión de citas
   ========================================================= */

/* El contenedor nunca debe ampliar la página */
.nvis-system [data-appointment-view]{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.nvis-system [data-appointment-view] .nvis-panel,
.nvis-system [data-appointment-view] .nvis-table-wrap,
.nvis-system [data-appointment-view] .nvis-appointments-table-wrap{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Escritorio: la tabla se ajusta al espacio REAL disponible */
@media(min-width:1101px){
  .nvis-system [data-appointment-view] .nvis-appointments-table-wrap{
    overflow-x:hidden!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:fixed!important;
  }

  /* Distribución proporcional de las 8 columnas */
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(1),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(1){width:27%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(2),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(2){width:14%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(3),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(3){width:9%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(4),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(4){width:13%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(5),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(5){width:10%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(6),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(6){width:8%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(7),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(7){width:11%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(8),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(8){width:8%!important}

  /* Nada dentro de una celda puede empujar la tabla */
  .nvis-system [data-appointment-view] .nvis-appointments-table th,
  .nvis-system [data-appointment-view] .nvis-appointments-table td{
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    white-space:normal!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table td>strong,
  .nvis-system [data-appointment-view] .nvis-appointments-table td>span{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  /* Etiquetas del día: pueden envolver sin ensanchar la columna */
  .nvis-system [data-appointment-view] .nvis-appt-date-main{
    max-width:100%!important;
    gap:4px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appt-badge{
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.15!important;
    padding:4px 6px!important;
  }

  /* Estado completamente contenido */
  .nvis-system [data-appointment-view] .nvis-appt-status-wrap{
    min-width:0!important;
    width:100%!important;
  }
  .nvis-system [data-appointment-view] .nvis-appt-mini-alert{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    text-align:center!important;
    justify-content:center!important;
    line-height:1.15!important;
  }
  .nvis-system [data-appointment-view] select[data-status-id]{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    padding-left:8px!important;
    padding-right:24px!important;
    font-size:10px!important;
  }

  /* Acciones: nunca salen de la última columna */
  .nvis-system [data-appointment-view] .nvis-row-actions{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:5px!important;
    align-items:stretch!important;
    justify-items:stretch!important;
  }
  .nvis-system [data-appointment-view] .nvis-row-actions button,
  .nvis-system [data-appointment-view] .nvis-row-actions a{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:6px 4px!important;
    font-size:9px!important;
    white-space:normal!important;
    line-height:1.1!important;
  }
}

/* Portátiles / resoluciones intermedias:
   reducimos tipografía antes de convertir a tarjetas */
@media(min-width:1101px) and (max-width:1450px){
  .nvis-system [data-appointment-view] .nvis-appointments-table th{
    font-size:8px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table td{
    font-size:10px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(1),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(1){width:25%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(2),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(2){width:15%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(3),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(3){width:9%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(4),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(4){width:13%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(5),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(5){width:9%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(6),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(6){width:8%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(7),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(7){width:12%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(8),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(8){width:9%!important}
}

/* Barra de filtros: también debe envolver en vez de salirse */
.nvis-system [data-appointment-view] .nvis-filters,
.nvis-system [data-appointment-view] .nvis-toolbar,
.nvis-system [data-appointment-view] .nvis-filter-row{
  min-width:0!important;
  max-width:100%!important;
  flex-wrap:wrap!important;
}
.nvis-system [data-appointment-view] [data-appointment-search],
.nvis-system [data-appointment-view] [data-appointment-date],
.nvis-system [data-appointment-view] [data-appointment-doctor],
.nvis-system [data-appointment-view] [data-appointment-branch],
.nvis-system [data-appointment-view] [data-appointment-sex],
.nvis-system [data-appointment-view] [data-appointment-origin],
.nvis-system [data-appointment-view] [data-appointment-status]{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}


/* =========================================================
   v11.3.20.6.128 · AGENDA · AJUSTE FINAL DE ANCHO
   ========================================================= */
@media(min-width:1101px){
  .nvis-system [data-appointment-view] .nvis-panel{
    padding-left:12px!important;
    padding-right:12px!important;
    overflow:hidden!important;
  }

  .nvis-system [data-appointment-view] .nvis-appointments-table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    padding:0!important;
    margin:0!important;
  }

  .nvis-system [data-appointment-view] .nvis-appointments-table{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:fixed!important;
    border-collapse:collapse!important;
  }

  /* Más espacio a Estado + Acciones */
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(1),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(1){width:24%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(2),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(2){width:14%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(3),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(3){width:9%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(4),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(4){width:12%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(5),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(5){width:9%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(6),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(6){width:8%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(7),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(7){width:13%!important}
  .nvis-system [data-appointment-view] .nvis-appointments-table th:nth-child(8),
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(8){width:11%!important}

  .nvis-system [data-appointment-view] .nvis-appointments-table th,
  .nvis-system [data-appointment-view] .nvis-appointments-table td{
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
    padding-left:7px!important;
    padding-right:7px!important;
    overflow:hidden!important;
  }

  /* Fuerza total sobre Acciones: nada puede empujar hacia la derecha */
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(8){
    padding-left:6px!important;
    padding-right:6px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(8) .nvis-row-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    gap:5px!important;
    overflow:hidden!important;
    flex-wrap:unset!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(8) .nvis-row-actions > *{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    inline-size:100%!important;
    min-width:0!important;
    min-inline-size:0!important;
    max-width:100%!important;
    max-inline-size:100%!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:6px 3px!important;
    font-size:8.5px!important;
    line-height:1.05!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .nvis-system [data-appointment-view] .nvis-appointments-table td:nth-child(7) select{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .nvis-system [data-appointment-view] .nvis-appt-mini-alert,
  .nvis-system [data-appointment-view] .nvis-appt-badge{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}

/* En laptops medianas compactamos antes de pasar al modo tarjeta */
@media(min-width:1101px) and (max-width:1350px){
  .nvis-system [data-appointment-view] .nvis-appointments-table th{
    font-size:7.5px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appointments-table td{
    font-size:9px!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
  .nvis-system [data-appointment-view] .nvis-appt-badge{
    font-size:7.5px!important;
    padding:3px 4px!important;
  }
}


/* =========================================================
   v11.3.20.6.129 · JORNADAS · CATÁLOGOS INLINE RESPONSIVE
   ========================================================= */
.nvis-system [data-management-module="jornada"] .nvis-community-leader-field{
  min-width:0!important;
}
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-select{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:stretch;
  width:100%;
  min-width:0;
}
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-select select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.nvis-system [data-management-module="jornada"] .nvis-catalog-add-button{
  min-width:96px!important;
  white-space:nowrap!important;
  padding-left:12px!important;
  padding-right:12px!important;
}
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-create{
  margin-top:8px;
  padding:10px;
  border:1px solid #dce9f2;
  border-radius:12px;
  background:#f8fbfd;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-create[hidden]{
  display:none!important;
}
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-create input{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-actions{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  flex-wrap:wrap;
  margin-top:8px;
}
.nvis-system [data-management-module="jornada"] [data-community-leader-message]{
  display:block;
  margin-top:6px;
  color:#526b7c;
  line-height:1.35;
}
@media(max-width:720px){
  .nvis-system [data-management-module="jornada"] .nvis-inline-catalog-select{
    grid-template-columns:1fr;
  }
  .nvis-system [data-management-module="jornada"] .nvis-catalog-add-button{
    width:100%!important;
    min-width:0!important;
  }
  .nvis-system [data-management-module="jornada"] .nvis-inline-catalog-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .nvis-system [data-management-module="jornada"] .nvis-inline-catalog-actions button{
    width:100%!important;
    min-width:0!important;
  }
}
@media(max-width:430px){
  .nvis-system [data-management-module="jornada"] .nvis-inline-catalog-actions{
    grid-template-columns:1fr;
  }
}


/* v11.3.20.6.130 · visibilidad robusta de Agregar líder */
.nvis-system [data-management-module="jornada"] .nvis-inline-catalog-create:not([hidden]){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.nvis-system [data-management-module="jornada"] .nvis-community-leader-field{
  overflow:visible!important;
}


/* v11.3.20.6.131 · Resultados automáticos fórmula Excel */
.nvis-system [data-visual-protocol-output]{
  background:#f3f8fc!important;
  border-color:#cfe1ed!important;
  color:#123f61!important;
  font-weight:700!important;
  cursor:default!important;
  white-space:pre-wrap!important;
}
.nvis-system label:has([data-visual-protocol-output])>span::after{
  content:' · AUTO';
  color:#0b83bd;
  font-size:9px;
  font-weight:900;
  letter-spacing:.04em;
}
@media(max-width:720px){
  .nvis-system [data-view="registrar-participante"] .nvis-form-grid--4,
  .nvis-system [data-patient-editor] .nvis-form-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:480px){
  .nvis-system [data-view="registrar-participante"] .nvis-form-grid--4,
  .nvis-system [data-patient-editor] .nvis-form-grid--4{grid-template-columns:1fr!important}
}


/* v11.3.20.6.133 · Pacientes: edad calculada */
.nvis-system [data-patient-editor-form] input[name="edad"][readonly]{
  background:#f3f8fc!important;
  color:#123f61!important;
  font-weight:800!important;
  opacity:1!important;
  -webkit-text-fill-color:#123f61!important;
}

/* v11.3.20.6.149 · motivos y reporte de cancelaciones quirúrgicas */
.nvis-surgery-reason-modal{position:fixed;inset:0;z-index:999999}.nvis-surgery-reason-bg{position:absolute;inset:0;background:rgba(8,29,47,.52)}.nvis-surgery-reason-card{position:relative;width:min(620px,calc(100vw - 30px));margin:8vh auto;background:#fff;border-radius:16px;padding:20px;box-shadow:0 25px 80px rgba(0,0,0,.25);color:#123b5c}.nvis-surgery-reason-card h3{margin:0 0 5px;font-size:21px}.nvis-surgery-reason-card p{margin:0 0 14px;color:#698093}.nvis-surgery-reason-card label{display:block;font-weight:800;margin-top:10px}.nvis-surgery-reason-card select,.nvis-surgery-reason-card textarea,.nvis-surgery-reason-card input{width:100%;margin-top:6px;box-sizing:border-box}.nvis-surgery-reason-card textarea{min-height:90px}.nvis-sr-date{display:grid;grid-template-columns:1fr 1fr;gap:10px}.nvis-surgery-reason-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}
.nvis-scr-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.nvis-scr-filters>*{min-width:0}.nvis-scr-filters input,.nvis-scr-filters select{width:100%}.nvis-scr-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0}.nvis-scr-kpis>div{border:1px solid #d9e7ee;border-radius:12px;padding:12px;background:#f8fbfd}.nvis-scr-kpis b{display:block;color:#087bbb;font-size:22px}.nvis-scr-kpis span{font-size:10px;font-weight:800}.nvis-scr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.nvis-scr-grid article{border:1px solid #dce8ee;border-radius:12px;padding:12px}.nvis-scr-grid h4{margin:0 0 8px}.nvis-scr-grid article div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #eef3f6;padding:4px 0;font-size:11px}[data-surgery-cancel-report] td small{display:block;color:#708697;margin-top:2px}
@media(max-width:950px){.nvis-scr-filters{grid-template-columns:repeat(2,1fr)}.nvis-scr-kpis{grid-template-columns:repeat(3,1fr)}.nvis-scr-grid{grid-template-columns:1fr}}@media(max-width:600px){.nvis-surgery-reason-card{margin-top:4vh}.nvis-sr-date,.nvis-scr-filters{grid-template-columns:1fr}.nvis-scr-kpis{grid-template-columns:repeat(2,1fr)}.nvis-surgery-reason-actions{flex-direction:column}.nvis-surgery-reason-actions button{width:100%!important}}

.nvis-scr-kpis-modern{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:14px 0}.nvis-scr-kpi-modern,.nvis-scr-chart-card{background:#fff;border:1px solid #d8e8f1;border-radius:14px;padding:14px}.nvis-scr-kpi-modern b{display:block;font-size:26px;color:#087fba}.nvis-scr-kpi-modern strong{display:block;font-size:12px;margin-top:6px}.nvis-scr-kpi-modern small{color:#718798;font-weight:700}.nvis-scr-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.nvis-scr-chart-grid-top{grid-template-columns:1fr 1fr 1.35fr}.nvis-scr-chart-card h3{margin:0 0 12px;font-size:14px}.nvis-scr-donut-wrap{display:flex;align-items:center;gap:16px;min-height:185px}.nvis-scr-donut{width:150px;height:150px;border-radius:50%;position:relative;background:#e5edf2}.nvis-scr-donut:after{content:"";position:absolute;inset:28px;background:#fff;border-radius:50%}.nvis-scr-donut span{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center}.nvis-scr-donut span b{font-size:22px}.nvis-scr-legend{flex:1}.nvis-scr-legend>div{display:flex;justify-content:space-between;gap:10px;margin:8px 0;font-size:11px}.nvis-scr-bars{display:flex;flex-direction:column;gap:7px}.nvis-scr-bar-row{display:grid;grid-template-columns:minmax(130px,190px) 1fr 34px;gap:7px;align-items:center;font-size:10px}.nvis-scr-bar-row>div{height:10px;background:#e8f0f4;border-radius:10px;overflow:hidden}.nvis-scr-bar-row i{display:block;height:100%;background:linear-gradient(90deg,#087fba,#2d95dc);border-radius:10px}.nvis-scr-bar-row b{text-align:right}@media(max-width:1100px){.nvis-scr-kpis-modern{grid-template-columns:repeat(3,1fr)}.nvis-scr-chart-grid-top{grid-template-columns:1fr 1fr}.nvis-scr-chart-grid-top .nvis-scr-chart-card:last-child{grid-column:1/-1}}@media(max-width:760px){.nvis-scr-kpis-modern,.nvis-scr-chart-grid,.nvis-scr-chart-grid-top{grid-template-columns:1fr}.nvis-scr-chart-grid-top .nvis-scr-chart-card:last-child{grid-column:auto}.nvis-scr-donut-wrap{flex-direction:column;align-items:flex-start}}

.nvis-scr-demographic-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.nvis-scr-gender-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.nvis-scr-gender-card{border:1px solid #d8e8f1;border-radius:12px;padding:14px;text-align:center;background:#fbfdfe}
.nvis-scr-gender-icon{display:block;font-size:29px;line-height:1}
.nvis-scr-gender-card b{display:block;font-size:24px;color:#087fba;margin-top:7px}
.nvis-scr-gender-card strong{display:block;font-size:11px;color:#123a5b}
.nvis-scr-gender-card small{display:block;font-size:10px;color:#718697;margin-top:3px;font-weight:700}
@media(max-width:900px){.nvis-scr-demographic-grid{grid-template-columns:1fr}.nvis-scr-gender-cards{grid-template-columns:repeat(2,1fr)}}

.nvis-or-demographics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
@media(max-width:900px){.nvis-or-demographics{grid-template-columns:1fr}}


/* INVIS v1.8.12 · Agenda organizada: Hoy / Por confirmar / Próximas */
.nvis-appointments-table .nvis-appt-section-row td{
  padding:0!important;
  border-top:18px solid #fff!important;
  border-bottom:0!important;
}
.nvis-appt-section{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 16px;
  border-radius:12px;
  background:#f1f7fb;
}
.nvis-appt-section>div{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  flex-wrap:wrap;
}
.nvis-appt-section strong{
  font-size:13px;
  letter-spacing:.055em;
  color:#0c4f7f;
}
.nvis-appt-section span{
  font-size:12px;
  color:#6c7f91;
  font-weight:600;
}
.nvis-appt-section b{
  min-width:32px;
  height:32px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#fff;
  color:#0c4f7f;
  border:1px solid #d7e5ef;
}
.nvis-appt-section-row.is-today .nvis-appt-section{background:#eaf5ff;border-left:4px solid #1783c6}
.nvis-appt-section-row.is-confirm .nvis-appt-section{background:#fff7e7;border-left:4px solid #d99a1a}
.nvis-appt-section-row.is-upcoming .nvis-appt-section{background:#eef8f3;border-left:4px solid #3b9369}
.nvis-appt-section-row.is-past .nvis-appt-section{background:#f5f6f8;border-left:4px solid #8b98a5}
.nvis-appt-empty-row td{
  text-align:center!important;
  padding:18px!important;
  color:#7b8b99!important;
  font-weight:600;
}
.nvis-appt-badge.is-upcoming{
  background:#e6f5ee;
  color:#287456;
}
.nvis-appointments-table tr.is-appointment-today>td:first-child{box-shadow:inset 3px 0 0 #1783c6}
.nvis-appointments-table tr.is-appointment-unconfirmed>td:first-child{box-shadow:inset 3px 0 0 #d99a1a}
.nvis-appointments-table tr.is-appointment-upcoming>td:first-child{box-shadow:inset 3px 0 0 #3b9369}
.nvis-appointments-table tr.is-appointment-past{opacity:.78}
@media(max-width:760px){
  .nvis-appt-section{align-items:flex-start}
  .nvis-appt-section>div{display:block}
  .nvis-appt-section span{display:block;margin-top:3px}
}

/* INVIS 11.3.20.6.172 — modal Call Center centrado contra el viewport real */
body > .nvis-modal[data-callcenter-modal]{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;display:grid!important;place-items:center!important;padding:clamp(12px,2vw,28px)!important;margin:0!important;transform:none!important;z-index:2147483000!important;overflow:auto!important;}
body > .nvis-modal[data-callcenter-modal][hidden]{display:none!important;}
body > .nvis-modal[data-callcenter-modal] > .nvis-modal-card{position:relative!important;inset:auto!important;margin:auto!important;width:min(760px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important;transform:none!important;}
@media(max-width:700px){body > .nvis-modal[data-callcenter-modal]{padding:8px!important;align-items:center!important;}body > .nvis-modal[data-callcenter-modal] > .nvis-modal-card{width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;padding:20px 16px!important;}}

/* v11.3.20.6.176 — Call Center modal keeps full form styling after being portaled to <body>. */
body > .nvis-modal[data-callcenter-modal] > .nvis-modal-card{font-family:inherit;color:#173b61;background:#fff!important;border:1px solid #dbe8f1!important;border-radius:22px!important;padding:28px!important;box-shadow:0 30px 80px rgba(9,31,52,.30)!important}
body > .nvis-modal[data-callcenter-modal] .nvis-section-label{display:block;color:#0782c6;font-size:12px;font-weight:900;letter-spacing:.12em;margin-bottom:14px}
body > .nvis-modal[data-callcenter-modal] h3{font-size:30px!important;line-height:1.15!important;margin:0 56px 18px 0!important;color:#102f4f!important}
body > .nvis-modal[data-callcenter-modal] .nvis-ccpro-call-banner{display:flex;align-items:center;gap:14px;background:#eef8fd;border:1px solid #d6eaf5;border-radius:16px;padding:14px 16px;margin:0 0 20px}
body > .nvis-modal[data-callcenter-modal] .nvis-ccpro-call-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#0788c7;color:#fff;font-size:21px;flex:0 0 46px}
body > .nvis-modal[data-callcenter-modal] .nvis-ccpro-call-banner small,body > .nvis-modal[data-callcenter-modal] .nvis-ccpro-call-banner strong{display:block}body > .nvis-modal[data-callcenter-modal] .nvis-ccpro-call-banner strong{font-size:20px;color:#173b61}
body > .nvis-modal[data-callcenter-modal] form .nvis-form-grid--2{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
body > .nvis-modal[data-callcenter-modal] form label{display:block!important;font-weight:800!important;color:#31475e!important}
body > .nvis-modal[data-callcenter-modal] form label>span{display:block!important;margin-bottom:8px!important}
body > .nvis-modal[data-callcenter-modal] form input,body > .nvis-modal[data-callcenter-modal] form select,body > .nvis-modal[data-callcenter-modal] form textarea{box-sizing:border-box!important;width:100%!important;min-height:48px!important;border:1px solid #d6e3ec!important;border-radius:12px!important;background:#fff!important;padding:11px 13px!important;font:inherit!important;color:#173b61!important;outline:none!important}
body > .nvis-modal[data-callcenter-modal] form textarea{min-height:110px!important;resize:vertical!important;margin-top:0!important}
body > .nvis-modal[data-callcenter-modal] form>label{margin-top:16px!important}
body > .nvis-modal[data-callcenter-modal] .nvis-form-actions{display:flex!important;justify-content:flex-end!important;gap:12px!important;border-top:1px solid #e1ebf2!important;margin-top:20px!important;padding-top:18px!important}
body > .nvis-modal[data-callcenter-modal] .nvis-form-actions button{min-height:46px!important;border-radius:12px!important;padding:0 18px!important;font-weight:800!important;cursor:pointer!important}
body > .nvis-modal[data-callcenter-modal] .nvis-primary-button{background:#0788c7!important;color:#fff!important;border:1px solid #0788c7!important}body > .nvis-modal[data-callcenter-modal] .nvis-outline-button{background:#fff!important;color:#425a70!important;border:1px solid #d6e3ec!important}
body > .nvis-modal[data-callcenter-modal] .nvis-modal-close{display:grid!important;place-items:center!important;position:absolute!important;right:18px!important;top:16px!important;width:44px!important;height:44px!important;border-radius:50%!important;border:1px solid #d8e7f1!important;background:#edf6fb!important;color:#235c86!important;font-size:25px!important;line-height:1!important;cursor:pointer!important;z-index:3!important}
body > .nvis-modal[data-callcenter-modal] .nvis-cc-timeline{border-top:1px solid #e1ebf2;margin-top:22px;padding-top:20px}body > .nvis-modal[data-callcenter-modal] .nvis-cc-timeline-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}
@media(max-width:700px){body > .nvis-modal[data-callcenter-modal] form .nvis-form-grid--2{grid-template-columns:1fr!important}body > .nvis-modal[data-callcenter-modal] > .nvis-modal-card{padding:20px 16px!important}body > .nvis-modal[data-callcenter-modal] h3{font-size:24px!important}}

/* v11.3.20.6.184 · Supervisión Atención al Afiliado (solo dashboard coordinador jornada) */
.nvis-affiliate-supervision{margin:16px 0 22px;padding:0!important;overflow:hidden;border:1px solid #d7e7f2;background:linear-gradient(180deg,#fff 0%,#f8fcff 100%)}
.nvis-affiliate-supervision__head{padding:22px 24px 18px;margin:0!important;background:linear-gradient(110deg,#f7fbff 0%,#edf8fd 100%);border-bottom:1px solid #dcebf4;gap:20px}
.nvis-affiliate-supervision__head h3{font-size:24px;margin:4px 0 5px;color:#103a5e}.nvis-affiliate-supervision__head p{margin:0;color:#617a90}
.nvis-affiliate-supervision__head .nvis-primary-button{white-space:nowrap;box-shadow:0 8px 18px rgba(0,119,190,.12)}
.nvis-affiliate-supervision__legend{display:flex;gap:18px;flex-wrap:wrap;padding:13px 24px 4px;font-size:12px;font-weight:800;color:#6a8295}.nvis-affiliate-supervision__legend span:nth-child(1){color:#177db5}.nvis-affiliate-supervision__legend span:nth-child(2){color:#536f89}.nvis-affiliate-supervision__legend span:nth-child(3){color:#16845d}
.nvis-affiliate-supervision__table{margin:10px 20px 20px;border:1px solid #dce8f0;border-radius:14px;overflow:auto;background:#fff}.nvis-affiliate-supervision__table table{margin:0;min-width:780px}.nvis-affiliate-supervision__table thead th{background:#f1f7fb;color:#55718a;font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:14px 16px}.nvis-affiliate-supervision__table tbody td{padding:15px 16px;vertical-align:middle}.nvis-affiliate-supervision__table tbody tr:hover{background:#f8fcff}.nvis-affiliate-supervision__table tbody td:first-child strong{color:#123d60;font-size:14px}.nvis-affiliate-supervision__table tbody td:not(:first-child){font-weight:700;color:#345a77}.nvis-affiliate-supervision__table tbody td:last-child{color:#16845d;font-weight:900}
@media(max-width:760px){.nvis-affiliate-supervision__head{padding:18px;align-items:flex-start;flex-direction:column}.nvis-affiliate-supervision__head .nvis-primary-button{width:100%}.nvis-affiliate-supervision__legend{padding-left:18px;padding-right:18px}.nvis-affiliate-supervision__table{margin:10px 12px 14px}}

/* INVIS 11.3.20.6.194 — Jornadas presupuesto/personal */
.nvis-personnel-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.nvis-personnel-inline .nvis-outline-button{min-height:52px;white-space:nowrap;padding-inline:14px}
[data-management-module="jornada"] .nvis-table-wrap{overflow-x:auto!important;padding-bottom:4px}
[data-management-module="jornada"] .nvis-table{min-width:1380px!important;table-layout:auto!important}
[data-management-module="jornada"] .nvis-table th:first-child,[data-management-module="jornada"] .nvis-table td:first-child{width:52px!important;min-width:52px!important;text-align:center!important}
[data-management-module="jornada"] [data-journey-select],[data-management-module="jornada"] [data-journey-select-all]{width:20px!important;height:20px!important;min-height:20px!important;cursor:pointer!important;accent-color:#087fbd}
[data-management-module="jornada"] .nvis-table th:last-child,[data-management-module="jornada"] .nvis-table td:last-child{min-width:330px!important;width:330px!important}
[data-management-module="jornada"] .nvis-row-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;min-width:310px!important}.nvis-row-actions>*{margin:0!important;white-space:nowrap!important;text-align:center!important}
[data-management-module="jornada"] [data-journey-total]{font-weight:900!important;background:#eef8fd!important;color:#0b6398!important;border-color:#b9dcec!important}
@media(max-width:760px){.nvis-personnel-inline{grid-template-columns:1fr}.nvis-personnel-inline .nvis-outline-button{width:100%}}
/* INVIS 11.3.20.6.195 Jornadas UI fix */
[data-management-module="jornada"] .nvis-table{min-width:1450px!important}
[data-management-module="jornada"] .nvis-table th:first-child,[data-management-module="jornada"] .nvis-table td:first-child{width:48px!important;min-width:48px!important;text-align:center!important}
[data-management-module="jornada"] [data-journey-select],[data-management-module="jornada"] [data-journey-select-all]{display:inline-block!important;visibility:visible!important;opacity:1!important;width:20px!important;height:20px!important;min-height:20px!important}
[data-management-module="jornada"] .nvis-table th:last-child,[data-management-module="jornada"] .nvis-table td:last-child{min-width:330px!important;width:330px!important}
[data-management-module="jornada"] .nvis-row-actions{display:grid!important;grid-template-columns:1fr 1fr!important;min-width:310px!important;max-width:none!important}
[data-management-module="jornada"] .nvis-row-actions>*{display:flex!important;visibility:visible;align-items:center;justify-content:center;min-height:38px!important}
.nvis-jp-create-195{margin-top:8px;padding:12px;border:1px solid #d9e7ef;border-radius:12px;background:#f8fbfd;display:grid;gap:8px}.nvis-jp-create-195>div{display:flex;gap:8px}.nvis-jp-create-195 input{width:100%}.nvis-jp-create-195 small{font-weight:700;color:#1769a3}
