@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap";:root{--color-primary:#0d6efd;--color-primary-deep:#0a58ca;--color-secondary:#28a745;--color-background:#f2f4f7;--color-surface:#fff;--color-surface-soft:#f8fbff;--color-text:#1f2937;--color-muted:#6b7280;--color-border:#d7e3f3;--color-border-strong:#bfd1e9;--color-success-soft:#ebf8ef;--color-warning-soft:#eef5ff;--color-danger-soft:#fff1f1;--font-main:"Montserrat", system-ui, sans-serif;--shadow-soft:0 12px 30px #0d6efd17;--shadow-panel:0 20px 45px #0f172a14;--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--radius-sm:12px;color:var(--color-text);background:radial-gradient(circle at top left, #0d6efd14, transparent 30%), radial-gradient(circle at top right, #28a74517, transparent 22%), linear-gradient(180deg, #f8fbff 0%, var(--color-background) 100%);font-family:var(--font-main);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;margin:0}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p,dl,dd,dt{margin:0}.brand-logo{object-fit:contain;object-position:left center;width:100%;max-width:320px;height:auto}.brand-logo--compact{max-width:220px}.brand-logo--mono{filter:saturate(0)}.app-loader{background:radial-gradient(circle at top, #0d6efd1f, transparent 35%), radial-gradient(circle at bottom right, #28a74524, transparent 28%), linear-gradient(180deg, #f8fbff 0%, var(--color-background) 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.app-loader__card{width:min(100%,620px);box-shadow:var(--shadow-panel);text-align:center;background:#fffffff0;border:1px solid #0d6efd1f;border-radius:32px;justify-items:center;gap:16px;padding:40px 28px;display:grid}.app-loader__logo{max-width:360px}.app-loader__title{font-size:1.1rem;font-weight:700}.app-loader__subtitle{color:var(--color-muted)}.app-loader__pulse{background:linear-gradient(90deg,#0d6efd26,#28a74526);border-radius:999px;width:min(100%,260px);height:10px;overflow:hidden}.app-loader__pulse span{border-radius:inherit;background:linear-gradient(90deg, var(--color-primary), var(--color-secondary));width:42%;height:100%;animation:1.4s ease-in-out infinite pulse-track;display:block}@keyframes pulse-track{0%{transform:translate(-100%)}50%{transform:translate(145%)}to{transform:translate(-100%)}}.app-shell{grid-template-columns:308px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(#fff 0%,#f8fbff 100%);border-right:1px solid #0d6efd14;flex-direction:column;gap:18px;height:100vh;padding:22px 18px;display:flex;position:sticky;top:0}.brand-card,.sidebar__support{border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft);border:1px solid #0d6efd14;padding:18px}.brand-card{gap:12px;display:grid}.brand-card__logo{max-width:230px}.brand-card strong,.topbar h2,.page-header h1,.panel__header h2,.branch-card__header h3,.specialty-card h3,.role-card__header h3,.login-card h1{font-family:var(--font-main)}.brand-card strong{font-size:.95rem}.brand-card p,.sidebar__support p,.sidebar__section{color:var(--color-muted)}.sidebar__support{gap:8px;display:grid}.sidebar__nav,.sidebar__group{gap:10px;display:grid}.sidebar__section{letter-spacing:.12em;text-transform:uppercase;padding-inline:10px;font-size:.72rem;font-weight:700}.nav-link,.mobile-nav__item{color:inherit;background:0 0;border:0}.nav-link{width:100%;color:var(--color-text);border-radius:16px;align-items:center;gap:12px;padding:13px 14px;transition:background .2s,transform .2s,color .2s;display:flex}.nav-link svg,.mobile-nav__item svg{stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px}.nav-link--active,.nav-link:hover{color:var(--color-primary-deep);background:linear-gradient(135deg,#0d6efd1f,#28a7451a);transform:translate(2px)}.content-area{flex-direction:column;min-width:0;display:flex}.topbar{z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2f4f7e0;border-bottom:1px solid #0d6efd1a;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;position:sticky;top:0}.topbar__identity{align-items:center;gap:14px;min-width:0;display:flex}.topbar__logo{width:176px;min-width:176px}.topbar h2{font-size:1.35rem}.topbar__status{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.status-pill,.badge,.service-pill{white-space:nowrap;word-break:keep-all;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 12px;font-size:.82rem;font-weight:700;display:inline-flex}.status-pill{color:var(--color-primary-deep);background:#fff;border:1px solid #0d6efd24}.status-pill--soft,.badge--default{color:var(--color-muted)}.main-content{padding:26px 28px 96px}.page-stack{gap:24px;display:grid}.page-header{justify-content:space-between;align-items:end;gap:16px;display:flex}.page-header h1{margin-top:8px;margin-bottom:10px;font-size:clamp(2rem,3vw,2.7rem)}.page-header p,.panel__header p,.timeline-item p,.branch-row p,.specialty-card p,.role-card p,.note-card p,.institutional-hero__copy p,.login-screen__brand p,.login-card p,.identity-card strong{color:var(--color-muted);line-height:1.65}.eyebrow{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.primary-button,.secondary-button{box-shadow:var(--shadow-soft);border:0;border-radius:14px;padding:13px 18px;font-weight:700}.primary-button{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-deep));color:#fff}.secondary-button{background:linear-gradient(135deg, var(--color-secondary), #228f3b);color:#fff}.institutional-hero{grid-template-columns:1.5fr 1fr;gap:18px;display:grid}.institutional-hero__brand,.institutional-hero__services,.stat-card,.panel,.metric-card,.branch-card,.specialty-card,.role-card,.note-card,.login-card,.identity-card{background:var(--color-surface);box-shadow:var(--shadow-soft);border:1px solid #0d6efd14}.institutional-hero__brand,.institutional-hero__services{border-radius:var(--radius-xl);padding:22px}.institutional-hero__brand{align-items:center;gap:18px;display:grid}.institutional-hero__logo{max-width:340px}.institutional-hero__copy h3{margin:6px 0 10px;font-size:1.4rem}.institutional-hero__services{background:linear-gradient(140deg, #0d6efd14, #28a74514), var(--color-surface);flex-wrap:wrap;align-content:start;gap:10px;display:flex}.service-pill{color:var(--color-primary-deep);background:#0d6efd14;border:1px solid #0d6efd1a}.service-pill--filled{background:#ffffffc7}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stats-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{border-radius:var(--radius-lg);gap:10px;padding:20px;display:grid}.stat-card--primary{background:linear-gradient(#0d6efd12,#fffffffa)}.stat-card--success{background:linear-gradient(#28a74514,#fffffffa)}.stat-card--warning{background:linear-gradient(#0d6efd0f,#fffffffa)}.stat-card--danger{background:linear-gradient(#ff914d1f,#fffffffa)}.stat-card__label,.stat-card__delta{color:var(--color-muted)}.stat-card__value{color:var(--color-text);font-size:2rem}.split-grid{grid-template-columns:1.3fr 1fr;gap:24px;display:grid}.split-grid--wide{grid-template-columns:1.65fr 1fr}.panel{border-radius:var(--radius-xl);padding:22px}.panel__header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.panel__header h2,.branch-card__header h3,.specialty-card h3,.role-card__header h3{font-size:1.08rem}.timeline-list,.branch-list,.chart-list,.role-grid,.specialty-grid,.branch-cards,.note-grid{gap:14px;display:grid}.timeline-item,.branch-row,.chart-row{border-radius:var(--radius-md);border:1px solid var(--color-border);background:#fbfdff;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:12px;padding:14px 16px;display:grid}.progress-block{gap:8px;display:grid}.progress-bar,.chart-row__track{background:#0d6efd1c;border-radius:999px;height:10px;overflow:hidden}.progress-bar span,.chart-row__track span{border-radius:inherit;background:linear-gradient(90deg, var(--color-primary), var(--color-secondary));height:100%;display:block}.note-grid,.branch-cards,.specialty-grid,.role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.note-card,.metric-card,.branch-card,.specialty-card,.role-card{border-radius:var(--radius-lg);padding:18px}.note-card{align-items:start;gap:14px;display:flex}.note-card__dot,.identity-chip__dot{background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));border-radius:999px;flex:none;width:12px;height:12px;margin-top:6px}.filters-grid,.clinical-grid,.detail-grid,.login-screen__grid,.login-form{gap:14px;display:grid}.filters-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.field,.clinical-field textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-width:0;color:var(--color-text);border-radius:14px;padding:13px 14px}.field::placeholder,textarea::placeholder{color:#9ba4b2}.table-shell{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:780px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;white-space:normal;word-break:normal;overflow-wrap:break-word;padding:14px 12px}.data-table th{color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;word-break:keep-all;font-size:.82rem;font-weight:700}.status-badge{white-space:nowrap;word-break:keep-all;border-radius:999px;justify-content:center;align-items:center;min-width:max-content;padding:8px 14px;line-height:1;display:inline-flex}.patient-table-wrapper{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.patient-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:980px}.patient-table th,.patient-table td{vertical-align:middle;white-space:normal;word-break:normal;overflow-wrap:break-word;padding:14px 16px;line-height:1.25}.patient-table th{white-space:nowrap;word-break:keep-all;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.patient-table__documento{width:120px;min-width:120px}.patient-table__nombres{width:130px;min-width:130px}.patient-table__apellidos{width:140px;min-width:140px}.patient-table__edad{width:70px;min-width:70px}.patient-table__eps{width:130px;min-width:130px}.patient-table__sede{width:120px;min-width:120px}.patient-table__diagnostico{width:220px;min-width:220px}.patient-table__estado{width:130px;min-width:130px}.detail-card{gap:20px;display:grid}.detail-card__identity,.role-card__header,.branch-card__header{justify-content:space-between;align-items:center;gap:14px;display:flex}.avatar-chip{width:52px;height:52px;color:var(--color-primary-deep);background:linear-gradient(135deg,#0d6efd1f,#28a7451f);border-radius:18px;place-items:center;font-weight:800;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid div,.branch-card__metrics div{border-bottom:1px solid var(--color-border);min-width:0;padding:12px 0}.detail-grid dt,.branch-card__metrics dt{color:var(--color-muted);margin-bottom:4px}.detail-grid dd{overflow-wrap:break-word;word-break:normal}.branch-card__metrics,.specialty-card__meta{gap:12px;display:grid}.specialty-card__meta{color:var(--color-muted);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.metric-card strong{margin-top:12px;font-size:1.6rem;display:block}.chart-row{grid-template-columns:180px minmax(0,1fr) 60px}.badge--primary{color:var(--color-primary-deep);background:#0d6efd1a}.badge--success{color:#1f7a35;background:var(--color-success-soft)}.badge--warning{color:var(--color-primary-deep);background:var(--color-warning-soft)}.badge--danger{color:#d97706;background:#fff4e8}.clinical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clinical-field{gap:10px;display:grid}.clinical-field span,.login-form label span{font-weight:600}.clinical-field textarea{resize:vertical;min-height:132px}.confidential-banner{color:var(--color-primary-deep);background:linear-gradient(90deg,#0d6efd14,#fffffff5);border:1px solid #0d6efd2e;border-radius:18px;padding:16px 18px;font-weight:700}.login-screen{background:radial-gradient(circle at top left, #0d6efd1f, transparent 28%), radial-gradient(circle at right center, #28a7451f, transparent 22%), linear-gradient(180deg, #f8fbff 0%, var(--color-background) 100%);place-items:center;min-height:100vh;padding:28px;display:grid}.login-screen__panel{gap:24px;width:min(1200px,100%);display:grid}.login-screen__brand{box-shadow:var(--shadow-panel);background:#ffffffd1;border:1px solid #0d6efd14;border-radius:28px;padding:24px}.login-screen__logo{max-width:380px;margin-bottom:12px}.login-screen__grid{grid-template-columns:1.15fr .85fr}.login-card,.identity-card{border-radius:28px;padding:24px}.login-card h1{margin:8px 0 12px;font-size:clamp(2rem,4vw,2.8rem)}.login-form__actions{flex-wrap:wrap;gap:12px;margin-top:6px;display:flex}.identity-card{background:linear-gradient(160deg,#0d6efd0d,#28a74517),#fff;gap:18px;display:grid}.identity-card__hero{gap:12px;display:grid}.identity-card__hero-logo{max-width:250px}.identity-card__list{gap:12px;display:grid}.identity-chip{background:#ffffffc7;border:1px solid #0d6efd14;border-radius:16px;gap:12px;padding:12px 14px;display:flex}.service-pills{flex-wrap:wrap;gap:10px;display:flex}.mobile-nav{display:none}@media (width<=1180px){.institutional-hero,.stats-grid,.note-grid,.branch-cards,.specialty-grid,.role-grid,.filters-grid,.login-screen__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-grid,.split-grid--wide,.clinical-grid,.institutional-hero{grid-template-columns:1fr}}@media (width<=920px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.topbar,.main-content,.login-screen{padding-left:18px;padding-right:18px}.topbar__logo{width:140px;min-width:140px}.mobile-nav{padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);scrollbar-width:none;background:#fffffff7;grid-auto-columns:minmax(74px,1fr);grid-auto-flow:column;gap:8px;display:grid;position:sticky;bottom:0;overflow-x:auto}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav__item{color:var(--color-muted);border-radius:14px;justify-items:center;gap:6px;padding:8px 4px;font-size:.72rem;display:grid}.mobile-nav__item--active{color:var(--color-primary-deep);background:#0d6efd1a}}@media (width<=680px){.page-header,.topbar,.panel__header,.detail-card__identity,.branch-card__header,.role-card__header,.topbar__identity{grid-template-columns:1fr;display:grid}.page-header,.topbar{align-items:start}.stats-grid,.stats-grid--compact,.note-grid,.branch-cards,.specialty-grid,.role-grid,.filters-grid,.detail-grid,.login-screen__grid,.timeline-item,.branch-row,.chart-row{grid-template-columns:1fr}.topbar__logo,.brand-card__logo,.login-screen__logo,.app-loader__logo,.institutional-hero__logo{width:100%;min-width:0;max-width:100%}.data-table{min-width:100%}.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{width:100%;display:block}.data-table tr{border-bottom:1px solid var(--color-border);padding:14px 0}.data-table td{border:0;padding:8px 0}.data-table td:before{content:attr(data-label);color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.78rem;font-weight:700;display:block}}
