/* Extraído de index.html (bloque de estilo #1) */
        /* CSS-first Force Uppercase (Todo el sistema) */
        body.force-uppercase * {
            text-transform: uppercase !important;
        }

        body.force-uppercase input[type="password"],
        body.force-uppercase input[type="email"],
        body.force-uppercase input[type="url"],
        body.force-uppercase .info-banner,
        body.force-uppercase .info-banner *,
        body.force-uppercase p,
        body.force-uppercase p *,
        body.force-uppercase .kpi-subtext,
        body.force-uppercase .reports-title-info p,
        body.force-uppercase .reports-title-info p * {
            text-transform: none !important;
        }

        /* Animación Shared Element Transition (Global para modals y buscador) */
        .shared-element-enter {
            animation: sharedElementIn 0.6s cubic-bezier(0.25, 1, 0.5, 1) forwards;
        }

        @keyframes sharedElementIn {
            0% {
                opacity: 0;
                transform: scale(0.85) translateY(20px);
                border-radius: 40px;
            }

            100% {
                opacity: 1;
                transform: scale(1) translateY(0);
                border-radius: 20px;
            }
        }

        /* --- Estilos para el Switch de Historias Clínicas --- */
        .hc-switch {
            position: relative;
            display: inline-block;
            width: 44px;
            height: 22px;
            flex-shrink: 0;
        }

        .hc-switch input {
            opacity: 0;
            width: 0;
            height: 0;
        }

        .hc-slider {
            position: absolute;
            cursor: pointer;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-color: #cbd5e1;
            transition: .4s;
            border-radius: 34px;
        }

        .hc-slider:before {
            position: absolute;
            content: "";
            height: 16px;
            width: 16px;
            left: 3px;
            bottom: 3px;
            background-color: white;
            transition: .4s;
            border-radius: 50%;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        input:checked+.hc-slider {
            background-color: #2563eb;
        }

        input:focus+.hc-slider {
            box-shadow: 0 0 1px #2563eb;
        }

        input:checked+.hc-slider:before {
            transform: translateX(22px);
        }

        .hc-switch-container {
            display: flex;
            align-items: center;
            justify-content: space-between;
            transition: all 0.3s ease;
        }

        .hc-switch-container:hover {
            border-color: #3b82f6 !important;
            background: #f0f9ff !important;
        }

        /* --- Micro-UI Commission Controls v4 --- */
        .comision-panel-premium {
            background: #ffffff;
            border: 1px solid #f1f5f9;
            border-radius: 10px;
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
        }

        .comision-section-title {
            font-size: 0.55rem;
            font-weight: 900;
            color: #94a3b8;
            text-transform: uppercase;
            letter-spacing: 0.8px;
            margin-bottom: 6px;
        }

        .comision-mode-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            background: #fff;
            border-radius: 6px;
            border: 1px solid #f8fafc;
            padding: 5px 10px;
            margin-bottom: 3px;
            transition: all 0.2s;
        }

        .comision-mode-row.active {
            border-color: #3b82f6;
            background: #f8faff;
        }

        .comision-mode-info {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .comision-mode-info i {
            font-size: 0.75rem;
            color: #cbd5e1;
        }

        .comision-mode-row.active i {
            color: #3b82f6;
        }

        .comision-mode-info .title {
            font-weight: 700;
            font-size: 0.65rem;
            color: #64748b;
        }

        .comision-mode-row.active .title {
            color: #1e40af;
        }

        .hc-switch {
            position: relative;
            display: inline-block;
            width: 32px;
            height: 16px;
            flex-shrink: 0;
        }

        .hc-slider {
            position: absolute;
            cursor: pointer;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-color: #e2e8f0;
            transition: .3s;
            border-radius: 20px;
        }

        .hc-slider:before {
            position: absolute;
            content: "";
            height: 12px;
            width: 12px;
            left: 2px;
            bottom: 2px;
            background-color: white;
            transition: .3s;
            border-radius: 50%;
        }

        input:checked+.hc-slider {
            background-color: #3b82f6;
        }

        input:checked+.hc-slider:before {
            transform: translateX(16px);
        }

        .comision-result-card-glass {
            background: #f8fafc;
            border: 1px solid #e2e8f0;
            border-radius: 8px;
            padding: 8px;
        }

        .comision-result-card-glass:hover {
            transform: translateY(-3px);
            box-shadow: 0 15px 35px -10px rgba(0, 0, 0, 0.1);
        }
