.expandToggle { margin-top: 1rem; position: relative; } .expandButton { display: flex; align-items: center; justify-content: center; min-height: 50px; font-weight: 500; transition: all 0.2s ease; border-radius: 10px; &:hover { transform: translateY(-1px); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } } .expandOverlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; border-radius: 10px; pointer-events: none; } .linkItem { position: relative; margin-bottom: 0.75rem; } .linkContent { display: block; text-decoration: none; color: inherit; transition: all 0.2s ease; position: relative; overflow: hidden; border-radius: 10px; border: none; background: white; width: 100%; text-align: left; &:hover { text-decoration: none; color: inherit; transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); } } .linkInner { display: flex; align-items: center; padding: 0.75rem; border-radius: 10px; position: relative; z-index: 1; width: 100%; } .linkIcon { width: 20px; height: 20px; object-fit: cover; border-radius: 4px; margin-right: 0.75rem; flex-shrink: 0; } .linkInfo { flex: 1; min-width: 0; } .linkTitle { margin: 0; font-size: 0.875rem; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: inherit; } .linkDescription { margin: 0.25rem 0 0 0; font-size: 0.75rem; color: #6c757d; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .linkOverlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none; border-radius: 10px; z-index: 2; } /* Layout-specific styles */ .linkItem :global(.grid-link) { .linkInner { flex-direction: column; text-align: center; padding: 1.5rem; } .linkIcon { width: 60px; height: 60px; margin-right: 0; margin-bottom: 1rem; } .linkTitle, .linkDescription { white-space: normal; text-align: center; } } .linkItem :global(.cards-link) { .linkInner { padding: 1.25rem; } .linkIcon { width: 50px; height: 50px; } } .linkItem :global(.timeline-link) { .linkInner { padding: 1rem 1.25rem; border-left: 4px solid var(--theme-color, #007bff); } } .linkItem :global(.magazine-link) { .linkInner { flex-direction: column; padding: 1.5rem; } .linkIcon { width: 80px; height: 80px; margin-right: 0; margin-bottom: 1rem; } .linkTitle, .linkDescription { white-space: normal; text-align: center; } }