.model-mind-widget {
    color-scheme: light;
    display: flex;
    flex-direction: column;
    position: fixed;
    width: min(calc(100vw - (var(--model-mind-offset, 1.25rem) * 2)), var(--model-mind-width, 25rem));
    z-index: var(--model-mind-z-index, 9999);
}

.dark .model-mind-widget[data-model-mind-theme="auto"],
.model-mind-widget.dark,
.model-mind-widget[data-model-mind-theme="dark"] {
    color-scheme: dark;
}

@media (prefers-color-scheme: dark) {
    .model-mind-widget[data-model-mind-theme="auto"] {
        color-scheme: dark;
    }
}

.model-mind-widget > :not(script) {
    pointer-events: auto;
}

.model-mind-widget[data-model-mind-position^="top"] {
    flex-direction: column-reverse;
}

.model-mind-widget[data-model-mind-position="bottom-left"] {
    bottom: var(--model-mind-offset, 1.25rem);
    left: var(--model-mind-offset, 1.25rem);
}

.model-mind-widget[data-model-mind-position="bottom-center"] {
    bottom: var(--model-mind-offset, 1.25rem);
    left: 50%;
    transform: translateX(-50%);
}

.model-mind-widget[data-model-mind-position="bottom-right"] {
    bottom: var(--model-mind-offset, 1.25rem);
    right: var(--model-mind-offset, 1.25rem);
}

.model-mind-widget[data-model-mind-position="center-left"] {
    left: var(--model-mind-offset, 1.25rem);
    top: 50%;
    transform: translateY(-50%);
}

.model-mind-widget[data-model-mind-position="center"] {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.model-mind-widget[data-model-mind-position="center-right"] {
    right: var(--model-mind-offset, 1.25rem);
    top: 50%;
    transform: translateY(-50%);
}

.model-mind-widget[data-model-mind-position="top-left"] {
    left: var(--model-mind-offset, 1.25rem);
    top: var(--model-mind-offset, 1.25rem);
}

.model-mind-widget[data-model-mind-position="top-center"] {
    left: 50%;
    top: var(--model-mind-offset, 1.25rem);
    transform: translateX(-50%);
}

.model-mind-widget[data-model-mind-position="top-right"] {
    right: var(--model-mind-offset, 1.25rem);
    top: var(--model-mind-offset, 1.25rem);
}

.model-mind-widget[data-model-mind-position$="-right"] [data-model-mind-toggle] {
    align-self: flex-end;
}

.model-mind-widget[data-model-mind-position$="-left"] [data-model-mind-toggle] {
    align-self: flex-start;
}

.model-mind-widget[data-model-mind-position$="-center"] [data-model-mind-toggle],
.model-mind-widget[data-model-mind-position="center"] [data-model-mind-toggle] {
    align-self: center;
}

.model-mind-widget [data-model-mind-panel] {
    margin-bottom: .75rem;
}

.model-mind-widget[data-model-mind-position^="top"] [data-model-mind-panel] {
    margin-bottom: 0;
    margin-top: .75rem;
}

@media print {
    .model-mind-widget {
        display: none !important;
    }
}

.model-mind-thinking-dot {
    animation: model-mind-bounce 1s infinite;
}

.model-mind-thinking-dot:nth-child(2) {
    animation-delay: 120ms;
}

.model-mind-thinking-dot:nth-child(3) {
    animation-delay: 240ms;
}

@keyframes model-mind-bounce {
    0%, 80%, 100% {
        transform: translateY(0);
        opacity: .45;
    }

    40% {
        transform: translateY(-.18rem);
        opacity: 1;
    }
}
