[data-theme=light],
:root:not([data-theme=dark]) {
    --ck-gradient-background: linear-gradient(0deg, --pico-background-color 0%, --pico-muted-color 30%, --pico-background-color 100%);
}

[data-theme=dark] {
    --ck-gradient-background: linear-gradient(0deg, rgba(19, 23, 31, 1) 0%, rgba(255, 255, 255, 0.05) 30%, rgba(19, 23, 31, 1) 100%);
}

.switcher {
    position: fixed;
    right: calc(var(--spacing)/ 2 + var(--scrollbar-width, 0px));
    bottom: var(--spacing);
    width: auto;
    margin-bottom: 0;
    padding: .75rem;
    border-radius: 2rem;
    box-shadow: var(--card-box-shadow);
    line-height: 1;
    text-align: right;
}

/* body > main {
    grid-template-columns: 200px auto;
} */

main>div aside nav {
    position: fixed;
    width: 200px;
    max-height: calc(100vh - 5.5rem);
    overflow-x: hidden;
    overflow-y: auto;
}

a {
    cursor: pointer;
    --pico-text-decoration: none;
}


[data-tooltip]:not(a, button, input) {
    border-bottom: none;
}

.show {
    display: block;
}

.hidden {
    display: none;
}

.faded {
    opacity: 0.3;
}

.narrow {
    width: 30px;
}

/* HTMX Loading States */
.htmx-indicator {
    display: none;
}

.htmx-request .htmx-indicator {
    display: inline;
}

.htmx-request.htmx-indicator {
    display: inline;
}

/* Container Narrow - For forms and dialog-like content */
.container-narrow {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 2rem;
}

/* Breakpoints for narrow container */
@media (min-width: 576px) {
    .container-narrow {
        max-width: 400px;  /* Narrower than container's 510px */
    }
}

@media (min-width: 768px) {
    .container-narrow {
        max-width: 500px;  /* Narrower than container's 700px */
    }
}

@media (min-width: 1024px) {
    .container-narrow {
        max-width: 600px;  /* Narrower than container's 950px */
    }
}

@media (min-width: 1280px) {
    .container-narrow {
        max-width: 700px;  /* Narrower than container's 1200px */
    }
}

@media (min-width: 1536px) {
    .container-narrow {
        max-width: 800px;  /* Narrower than container's 1450px */
    }
}
