            /* =================== POPUP =================== */
            .md-popup {
                position: fixed;
                top:0; left:0; right:0; bottom:0;
                background: rgba(0,0,0,0.75);
                display: none;
                justify-content: center;
                align-items: center;
                z-index: 9999;
                transition: opacity 0.3s ease;
            }

            .md-popup-content {
                width: 90%;
                max-width: 1000px;
                height: 85vh;
                background: #fff;
                border-radius: 12px;
                padding: 20px;
                box-shadow: 0 8px 24px rgba(0,0,0,0.2);
                display: flex;
                flex-direction: column;
            }

            .md-popup-close {
                margin-top: 10px;
                align-self: flex-end;
                padding: 8px 14px;
                background: #dc3545;
                color: #fff;
                border: none;
                border-radius: 6px;
                cursor: pointer;
                transition: background 0.2s ease;
            }
            .md-popup-close:hover { background: #c9302c; }

            /* =================== CARDS =================== */



            .md-doc-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
                gap: 18px;
            }
            .md-card {
                background: #fff;
                border-radius: 12px;
                padding: 20px;
                border: 1px solid #e3e3e3;
                box-shadow: 0 4px 12px rgba(0,0,0,0.05);
                display: flex;
                flex-direction: column;
                justify-content: space-between;
                transition: transform 0.2s ease, box-shadow 0.2s ease;
            }

            .md-card:hover {
                transform: translateY(-3px);
                box-shadow: 0 8px 20px rgba(0,0,0,0.08);
            }

            .md-card-header {
                font-weight: 600;
                font-size: 16px;
                margin-bottom: 12px;
                color: #242424;
            }

            .md-required {
                color: red;
                font-weight: bold;
            }

            .md-status {
                margin-bottom: 12px;
                font-size: 14px;
                font-weight: 600;
            }

            .md-status-approved { color: #28a745; }
            .md-status-rejected { color: #dc3545; }
            .md-status-pending { color: #ffc107; }

            /* =================== BOTONES =================== */


            .md-actions {
                display: flex;
                gap: 12px;
                flex-wrap: wrap;
            }

            .md-btn {
                padding: 8px 16px;
                border-radius: 8px;
                cursor: pointer;
                font-size: 14px;
                font-weight: 600;
                display: inline-flex;
                align-items: center;
                gap: 6px;
                border: none;
                transition: all 0.2s ease;
            }

            .md-btn:hover { transform: translateY(-1px); }
            .md-btn:hover:not(:disabled) {
                background-color: #005f87;
                transform: translateY(-1px);
            }

            .md-btn:disabled {
                background-color: #bfbfbf;
                cursor: not-allowed;
            }

            .md-btn-view {
                background: #0d6efd;
                color: #fff;
            }
            .md-btn-view:hover { background: #0b5ed7; }


            .md-divider {
                margin: 30px 0;
                border: 0;
                border-top: 2px solid #eee;
            }

            .md-btn-danger {
                background: #dc3545;
                color: #fff;
            }
            .md-btn-danger:hover { background: #c9302c; }

            .md-btn-secondary {
                background: #f4f4f4;
                border: 1px solid #ccc;
                color: #333;
            }
            .md-btn-secondary:hover {
                background: #e9e9e9;
            }

            .md-btn-center { text-align: center; }

            /* =================== CONTENEDORES =================== */

            .md-upload-container, .md-doc-viewer {
                background: #fff;
                padding: 30px;
                border-radius: 14px;
                margin-bottom: 40px;
                border: 1px solid #e5e5e5;
                box-shadow: 0 6px 18px rgba(0,0,0,0.05);
                max-width: 920px;
                margin-left: auto;
                margin-right: auto;
            }

            .md-upload-container h3, .md-doc-viewer h3 {
                font-size: 20px;
                font-weight: 700;
                margin-bottom: 20px;
            }
            
            .md-upload-container p, .md-doc-viewer p {
                margin-bottom: 16px;
                font-size: 15px;
            }

            .md-upload-container a, .md-doc-viewer a {
                font-weight: 600;
                color: #007cba;
                text-decoration: none;
            }

            .md-doc-viewer a:hover {
                text-decoration: underline;
            }


            /* =================== INPUT FILE =================== */

            .md-doc-item {
                padding: 16px;
                border: 1px dashed #ccc;
                border-radius: 10px;
                margin-bottom: 20px;
                background: #fafafa;
                transition: all 0.25s ease;
            }

            .md-doc-item:hover {
                border-color: #007cba;
                background: #f0faff;
            }

            .md-doc-item label {
                font-weight: 600;
                margin-bottom: 8px;
                display: block;
            }

            .md-doc-item input[type='file'] {
                width: 100%;
                cursor: pointer;
                padding: 10px;
            }


            /* =================== CHECKBOX =================== */
            .md-accept {
                display: flex;
                align-items: center;
                gap: 10px;
                font-size: 15px;
                margin: 20px 0;
            }
            .md-accept input[type='checkbox'] {
                width: 18px;
                height: 18px;
                accent-color: #007cba;
            }


            /* =================== MENSAJES =================== */
            .md-success { 
                background: #e6f7ed;
                color: #1e8e3e;
                font-weight: 600;
                padding: 12px 16px;
                border-radius: 8px;
            }
            .md-error {
                background: #faeaea;
                color: #d63638;
                font-weight: 600;
                padding: 12px 16px;
                border-radius: 8px;
            }

            /* =================== BOTÓN GUARDAR =================== */

            .md-btn-wrapper {
                text-align: center;
            }

            .md-btn-wrapper .md-btn {
                font-size: 15px;
                padding: 10px 20px;
            }

            .md-no-doc {
                color:#777;
                font-style:italic;
            }
