/**
 * List Component
 * Unifying list styles
 */

/* Base List */
.list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.list-item {
    padding: var(--spacing-sm);
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text);
}

.list-item:last-child {
    border-bottom: none;
}

/* Style Variants */
.list.spaced .list-item {
    margin-bottom: var(--spacing-sm);
    border-bottom: none;
}

.list.compact .list-item {
    padding: var(--spacing-sm) 0;
}

.list.bordered {
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    overflow: hidden;
}

/* Icon Lists */
.list.with-icons .list-item {
    display: flex;
    align-items: flex-start;
    gap: var(--spacing-sm);
}

.list.with-icons .list-item i {
    margin-top: 3px;
    /* visual alignment */
    flex-shrink: 0;
}

/* Hoverable Items */
.list.hoverable .list-item:hover {
    background-color: var(--color-background-subtle);
}