    <style>
        body {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
        }

        .main-container {
            background: white;
            min-height: 95vh;
            margin-top: 2vh;
            margin-bottom: 2vh;
        }

        .course-card {
            cursor: grab;
            transition: all 0.2s;
        }

        .course-card:hover {
            transform: translateX(4px);
        }

        .course-card.dragging {
            opacity: 0.5;
            cursor: grabbing;
        }

        .course-card.used {
            opacity: 0.3;
            cursor: not-allowed;
            pointer-events: none;
        }

        .module-zone {
            border: 3px dashed #dee2e6;
            min-height: 150px;
            transition: all 0.3s;
        }

        .module-zone.drag-over {
            background-color: #f0f7ff !important;
            border-color: #0d6efd !important;
            transform: scale(1.02);
        }

        .module-zone.drag-over-invalid {
            background-color: #fff3f3 !important;
            border-color: #dc3545 !important;
        }

        .sidebar {
            background-color: #f8f9fa;
            border-right: 1px solid #dee2e6;
            max-height: calc(95vh - 100px);
            overflow-y: auto;
        }

        .certificates-area {
            max-height: calc(95vh - 100px);
            overflow-y: auto;
        }

        .master-area {
            background-color: #fff9e6;
            border-left: 1px solid #dee2e6;
            max-height: calc(95vh - 100px);
            overflow-y: auto;
        }

        .certificate-card {
            border-width: 2px;
            transition: all 0.3s;
        }

        .certificate-card.completed {
            box-shadow: 0 0 20px rgba(76, 175, 80, 0.3);
        }

        .core-badge {
            font-size: 0.65rem;
            padding: 2px 6px;
        }

        .master-module-card {
            border-left: 4px solid;
            transition: all 0.3s;
        }

        .master-module-card.completed {
            background-color: #d4edda;
            border-color: #28a745;
        }

        .master-module-card.incomplete {
            background-color: #fff3cd;
            border-color: #ffc107;
        }

        .achievement-badge {
            animation: pulse 0.5s ease-in-out;
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.05); }
        }

        .module-header-small {
            font-size: 0.75rem;
            font-weight: 600;
        }

        .path-indicator {
            border-left: 3px solid #dee2e6;
            padding-left: 10px;
            margin-left: 5px;
        }

        .accordion-button:not(.collapsed) {
            background-color: inherit !important;
            box-shadow: none;
        }

        .accordion-button:focus {
            box-shadow: none;
            border-color: inherit;
        }

        .accordion-button::after {
            margin-left: 0;
        }

        #masterSelector {
            font-size: 0.95rem;
        }
    </style>