/* ========================================
   External Link Block Styles - PUBLIC
   ======================================== */

/* Link Block Container */
.external-link-block {
    display: block;
    padding: 1rem 1.5rem;
    margin: 1.5rem 0;
    border-radius: 0.5rem;
    border-left: 3px solid;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
}

.external-link-block:hover {
    transform: translateX(4px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Default Style - Gray (wie Internal Link) */
.external-link-default {
    background: #f3f4f6;
    border-left-color: #9ca3af;
}

.external-link-default .external-link-arrow {
    color: #374151;
}

.external-link-default .external-link-desc {
    color: #6b7280;
}

/* Primary Style - Green */
.external-link-primary {
    background: #f0fdf4;
    border-left-color: #22c55e;
}

.external-link-primary .external-link-arrow {
    color: #166534;
}

.external-link-primary .external-link-desc {
    color: #16a34a;
}

/* Secondary Style - Purple */
.external-link-secondary {
    background: #faf5ff;
    border-left-color: #a855f7;
}

.external-link-secondary .external-link-arrow {
    color: #6b21a8;
}

.external-link-secondary .external-link-desc {
    color: #9333ea;
}

/* Link Text and Description */
.external-link-arrow {
    font-weight: 600;
    font-size: 1rem;
    margin-bottom: 0.25rem;
}

.external-link-desc {
    font-size: 0.875rem;
    font-weight: 400;
}

/* External link icon indicator - inline nach dem Link-Text */
.external-link-arrow::after {
    content: '';
    display: inline-block;
    width: 0.75rem;
    height: 0.75rem;
    margin-left: 0.5rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6'/%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='M10 14L21 3'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    opacity: 0.5;
}

/* Responsive */
@media (max-width: 768px) {
    .external-link-block {
        padding: 0.75rem 1rem;
        margin: 1rem 0;
    }

    .external-link-arrow {
        font-size: 0.9375rem;
    }

    .external-link-desc {
        font-size: 0.8125rem;
    }
}
