/*! CampbellCare Pro - capa de utilidades local (generada; sin CDN externos).
 *  Cubre exactamente el subset de clases usadas por el portal y el agente. */

.\!min-h-0{min-height:0!important}
.\!w-auto{width:auto!important}
.-right-0\.5{right:-0.125rem}
.-top-0\.5{top:-0.125rem}
.-top-3{top:-0.75rem}
.-translate-x-1\/2{transform:translateX(-50%)}
.absolute{position:absolute}
.accent-primary{accent-color:var(--ccp-primary)}
.aspect-\[1\.6\]{aspect-ratio:1.6}
.bg-\[\#f0f2f4\]{background-color:#f0f2f4}
.bg-\[\#f6f7f8\]{background-color:#f6f7f8}
.bg-amber-100{background-color:#fef3c7}
.bg-amber-50{background-color:#fffbeb}
.bg-black\/40{background-color:rgb(0 0 0/0.4)}
.bg-blue-100{background-color:#dbeafe}
.bg-blue-50{background-color:#eff6ff}
.bg-blue-50\/40{background-color:rgb(239 246 255/0.4)}
.bg-green-100{background-color:#dcfce7}
.bg-green-50{background-color:#f0fdf4}
.bg-pink-50{background-color:#fdf2f8}
.bg-primary{background-color:var(--ccp-primary)}
.bg-primary\/10{background-color:rgb(var(--ccp-primary-rgb)/0.1)}
.bg-purple-50{background-color:#faf5ff}
.bg-red-100{background-color:#fee2e2}
.bg-red-50{background-color:#fef2f2}
.bg-red-500{background-color:#ef4444}
.bg-slate-100{background-color:#f1f5f9}
.bg-slate-200{background-color:#e2e8f0}
.bg-slate-50{background-color:#f8fafc}
.bg-transparent{background-color:transparent}
.bg-white{background-color:#ffffff}
.bg-yellow-50{background-color:#fefce8}
.block{display:block}
.border{border-width:1px}
.border-2{border-width:2px}
.border-\[\#f0f2f4\]{border-color:#f0f2f4}
.border-b{border-bottom-width:1px}
.border-blue-100{border-color:#dbeafe}
.border-green-100{border-color:#dcfce7}
.border-l{border-left-width:1px}
.border-none{border-style:none}
.border-primary{border-color:var(--ccp-primary)}
.border-r{border-right-width:1px}
.border-red-200{border-color:#fecaca}
.border-slate-200{border-color:#e2e8f0}
.border-t{border-top-width:1px}
.border-yellow-100{border-color:#fef9c3}
.bottom-0{bottom:0}
.capitalize{text-transform:capitalize}
.cursor-pointer{cursor:pointer}
.fixed{position:fixed}
.flex{display:flex}
.flex-1{flex:1 1 0%}
.flex-col{flex-direction:column}
.flex-row-reverse{flex-direction:row-reverse}
.flex-wrap{flex-wrap:wrap}
.focus\:ring-0:focus{box-shadow:none}
.font-black{font-weight:900}
.font-bold{font-weight:700}
.font-medium{font-weight:500}
.font-normal{font-weight:400}
.font-semibold{font-weight:600}
.gap-0\.5{gap:0.125rem}
.gap-1{gap:0.25rem}
.gap-1\.5{gap:0.375rem}
.gap-2{gap:0.5rem}
.gap-3{gap:0.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.grid{display:grid}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}
.h-12{height:3rem}
.h-14{height:3.5rem}
.h-16{height:4rem}
.h-2{height:0.5rem}
.h-24{height:6rem}
.h-4{height:1rem}
.h-40{height:10rem}
.h-9{height:2.25rem}
.h-px{height:1px}
.hidden{display:none}
.hover\:bg-\[\#f0f2f4\]:hover{background-color:#f0f2f4}
.hover\:bg-red-50:hover{background-color:#fef2f2}
.hover\:bg-slate-200:hover{background-color:#e2e8f0}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}
.hover\:text-red-600:hover{color:#dc2626}
.inline-block{display:inline-block}
.inset-0{inset:0}
.items-center{align-items:center}
.items-end{align-items:flex-end}
.items-start{align-items:flex-start}
.justify-around{justify-content:space-around}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.leading-relaxed{line-height:1.625}
.left-0{left:0}
.left-1\/2{left:50%}
.list-decimal{list-style-type:decimal}
.list-disc{list-style-type:disc}
.max-h-32{max-height:8rem}
.max-h-40{max-height:10rem}
.max-h-44{max-height:11rem}
.max-h-\[90vh\]{max-height:90vh}
.max-w-3xl{max-width:48rem}
.max-w-\[1000px\]{max-width:1000px}
.max-w-\[1100px\]{max-width:1100px}
.max-w-\[1200px\]{max-width:1200px}
.max-w-\[440px\]{max-width:440px}
.max-w-\[460px\]{max-width:460px}
.max-w-\[600px\]{max-width:600px}
.max-w-\[640px\]{max-width:640px}
.max-w-\[680px\]{max-width:680px}
.max-w-\[700px\]{max-width:700px}
.max-w-\[720px\]{max-width:720px}
.max-w-\[800px\]{max-width:800px}
.max-w-\[900px\]{max-width:900px}
.max-w-\[920px\]{max-width:920px}
.max-w-\[950px\]{max-width:950px}
.mb-1{margin-bottom:0.25rem}
.mb-1\.5{margin-bottom:0.375rem}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1rem}
.mb-5{margin-bottom:1.25rem}
.mb-6{margin-bottom:1.5rem}
.min-h-\[200px\]{min-height:200px}
.min-h-\[44px\]{min-height:44px}
.min-h-screen{min-height:100vh;min-height:100dvh}
.min-w-\[110px\]{min-width:110px}
.ml-auto{margin-left:auto}
.mt-0\.5{margin-top:0.125rem}
.mt-1{margin-top:0.25rem}
.mt-1\.5{margin-top:0.375rem}
.mt-2{margin-top:0.5rem}
.mt-3{margin-top:0.75rem}
.mt-4{margin-top:1rem}
.mt-5{margin-top:1.25rem}
.mt-6{margin-top:1.5rem}
.mx-auto{margin-left:auto;margin-right:auto}
.my-2{margin-top:0.5rem;margin-bottom:0.5rem}
.my-4{margin-top:1rem;margin-bottom:1rem}
.opacity-60{opacity:0.6}
.overflow-auto{overflow:auto}
.overflow-hidden{overflow:hidden}
.overflow-y-auto{overflow-y:auto}
.p-2{padding:0.5rem}
.p-2\.5{padding:0.625rem}
.p-3{padding:0.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.pl-4{padding-left:1rem}
.pl-5{padding-left:1.25rem}
.px-2{padding-left:0.5rem;padding-right:0.5rem}
.px-2\.5{padding-left:0.625rem;padding-right:0.625rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-1{padding-top:0.25rem;padding-bottom:0.25rem}
.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}
.py-24{padding-top:6rem;padding-bottom:6rem}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem}
.py-3\.5{padding-top:0.875rem;padding-bottom:0.875rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.relative{position:relative}
.resize-none{resize:none}
.right-3{right:0.75rem}
.rounded{border-radius:0.25rem}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:0.5rem}
.rounded-tl-none{border-top-left-radius:0}
.rounded-tr-none{border-top-right-radius:0}
.rounded-xl{border-radius:0.75rem}
.shrink-0{flex-shrink:0}
.size-10{width:2.5rem;height:2.5rem}
.size-8{width:2rem;height:2rem}
.space-y-1 > :not([hidden]) ~ :not([hidden]){margin-top:0.25rem}
.space-y-2 > :not([hidden]) ~ :not([hidden]){margin-top:0.5rem}
.space-y-3 > :not([hidden]) ~ :not([hidden]){margin-top:0.75rem}
.space-y-4 > :not([hidden]) ~ :not([hidden]){margin-top:1rem}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-5xl{font-size:3rem;line-height:1}
.text-6xl{font-size:3.75rem;line-height:1}
.text-\[\#637588\]{color:#637588}
.text-\[10px\]{font-size:10px}
.text-\[11px\]{font-size:11px}
.text-\[9px\]{font-size:9px}
.text-amber-500{color:#f59e0b}
.text-amber-600{color:#d97706}
.text-amber-700{color:#b45309}
.text-blue-600{color:#2563eb}
.text-blue-700{color:#1d4ed8}
.text-center{text-align:center}
.text-green-600{color:#16a34a}
.text-green-700{color:#15803d}
.text-left{text-align:left}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-pink-600{color:#db2777}
.text-primary{color:var(--ccp-primary)}
.text-purple-600{color:#9333ea}
.text-red-500{color:#ef4444}
.text-red-600{color:#dc2626}
.text-red-700{color:#b91c1c}
.text-right{text-align:right}
.text-slate-400{color:#94a3b8}
.text-slate-500{color:#64748b}
.text-slate-600{color:#475569}
.text-slate-700{color:#334155}
.text-sm{font-size:0.875rem;line-height:1.25rem}
.text-white{color:#ffffff}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-xs{font-size:0.75rem;line-height:1rem}
.text-yellow-800{color:#854d0e}
.top-0{top:0}
.top-3{top:0.75rem}
.transition-all{transition:all .15s cubic-bezier(.4,0,.2,1)}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.uppercase{text-transform:uppercase}
.w-12{width:3rem}
.w-16{width:4rem}
.w-24{width:6rem}
.w-28{width:7rem}
.w-32{width:8rem}
.w-4{width:1rem}
.w-72{width:18rem}
.w-full{width:100%}
.whitespace-pre-wrap{white-space:pre-wrap}
.z-\[1000\]{z-index:1000}
.z-\[60\]{z-index:60}
.z-\[9998\]{z-index:9998}
@media (min-width:640px){.sm\:flex{display:flex}}
@media (min-width:768px){.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:hidden{display:none}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}}
@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:sticky{position:sticky}.lg\:top-4{top:1rem}}

/* ── Añadidos v21.7.7: clases que usaban la cabecera, el calendario y las
   tarjetas de emergencia y NO existían en el subset (por eso el logo salía
   gigante y los botones corridos). Salen del escaneo app.js vs ccp-ui.css. ── */
.h-6{height:1.5rem}
.w-6{width:1.5rem}
.h-20{height:5rem}
.w-20{width:5rem}
.h-52{height:13rem}
.h-full{height:100%}
.h-1\.5{height:0.375rem}
.w-1\.5{width:0.375rem}
.min-w-0{min-width:0}
.m-0{margin:0}
.mr-1{margin-right:0.25rem}
.mx-px{margin-left:1px;margin-right:1px}
.px-1{padding-left:0.25rem;padding-right:0.25rem}
.object-contain{object-fit:contain}
.leading-none{line-height:1}
.select-none{user-select:none;-webkit-user-select:none}
.self-center{align-self:center}
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/0.05)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1)}
.ring-2{box-shadow:0 0 0 2px rgb(var(--ccp-primary-rgb)/0.4)}
.bg-primary\/15{background-color:rgb(var(--ccp-primary-rgb)/0.15)}
.border-amber-200{border-color:#fde68a}
.border-blue-200{border-color:#bfdbfe}
.border-green-200{border-color:#bbf7d0}
.text-amber-800{color:#92400e}
.text-blue-800{color:#1e40af}
.text-green-800{color:#166534}
.text-\[\#111418\]{color:#111418}
.text-\[8px\]{font-size:8px}
.hover\:bg-slate-100:hover{background-color:#f1f5f9}
.hover\:bg-slate-50:hover{background-color:#f8fafc}
@media (min-width:640px){.sm\:hidden{display:none}.sm\:gap-3{gap:0.75rem}}
.text-blue-500{color:#3b82f6}
/* v21.9 — utilidades nuevas usadas por app.js (Gerencia, Tienda con recargas, Mi Empresa) */
.mt-10{margin-top:2.5rem}
.bg-white\/70{background-color:rgba(255,255,255,.7)}
.border-\[\#e8edf3\]{border-color:#e8edf3}
.min-w-\[220px\]{min-width:220px}
.text-\[\#334155\]{color:#334155}
@media (min-width:768px){.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* v21.9.1 — utilidades de las tarjetas de plan con beneficios */
.pt-2{padding-top:0.5rem}
.text-\[13px\]{font-size:13px}
/* v21.11 — utilidades del Panel 360 (perfil IA, radar, dona) y contrato */
.py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem}
.mb-0\.5{margin-bottom:0.125rem}
.min-w-\[180px\]{min-width:180px}
.max-h-72{max-height:18rem}
/* v21.12 — Panel de Equipo en el portal + utilidades faltantes del subset
   (incluye posicionamiento del menú "Mis paneles" que estaba sin estilos) */
.pr-3{padding-right:0.75rem}
.pb-1{padding-bottom:0.25rem}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem}
.right-0{right:0}
.top-10{top:2.5rem}
.z-\[80\]{z-index:80}
.underline{text-decoration-line:underline}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}
.min-w-\[210px\]{min-width:210px}
.max-w-\[520px\]{max-width:520px}
.text-slate-300{color:#cbd5e1}
.text-\[\#94a3b8\]{color:#94a3b8}
.bg-\[\#f8fafc\]{background-color:#f8fafc}
.bg-blue-50\/50{background-color:rgb(239 246 255/.5)}
.hover\:bg-\[\#f6f7f8\]:hover{background-color:#f6f7f8}
@media (min-width:640px){.sm\:inline{display:inline}}
@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
