@use "../../dev" as *;

// -----------------------------------------------------------------------------
// Mixins
// -----------------------------------------------------------------------------

@mixin sidebar__search-input {
    font-size: basepoint(3); // or a fixed value like q(16)
    line-height: baseline(3); // consistent vertical rhythm

    width: 100%;
    padding: q(3) q(4);
    margin: q(2) 0 q(4);
    // font-size: q(3.5);
    border: q(1) solid var(--color_border);
    border-radius: q(1);
    background: var(--color_fill_primary);
    color: var(--color_text_primary);
}

@mixin sidebar__content {
    padding: q(10);
    font-size: q(12);
    overflow-y: auto;
    max-height: 100%;

    h1,
    h2,
    h3,
    h4 {
        font-weight: bold;
        margin: q(3) 0 q(2);
        line-height: 1.2;
        color: var(--color_text_primary);
    }

    h1 {
        font-size: q(16);
    }
    h2 {
        font-size: q(14);
        color: var(--color_primary);
    }
    h3 {
        font-size: q(12);
        color: var(--color_primary_dark);
    }
    h4 {
        font-size: q(11);
        font-weight: 900;
        color: var(--color_primary_light);
    }
}

@mixin sidebar__section {
    margin-bottom: q(10);
}

@mixin sidebar__section-header {
    font-size: q(12);
    font-weight: bold;
    color: var(--color_primary);
}

@mixin sidebar__subsection-header {
    font-size: q(12);
    font-weight: 600;
    color: var(--color_primary_dark);
}

@mixin sidebar__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

@mixin sidebar__list-link {
    display: block;
    color: var(--color_text_primary);

    &:hover {
        text-decoration: underline;
        color: var(--color_primary);
    }
}

@mixin sidebar__list-meta {
    display: block;
    font-size: q(8);
    color: var(--color_text_secondary);
}

.sidebar__search-input {
    @include sidebar__search-input;
}
.sidebar__content {
    @include sidebar__content;
}
.sidebar__section {
    @include sidebar__section;
}
.sidebar__section-header {
    @include sidebar__section-header;
}
.sidebar__subsection-header {
    @include sidebar__subsection-header;
}
.sidebar__list {
    @include sidebar__list;
}
.sidebar__link {
    @include sidebar__list-link;
}
.sidebar__meta {
    @include sidebar__list-meta;
}
