The 'Wide Chat Layout' setting toggles a 'wide-chat-layout' class on
the document root that widens '.chat-column' and '.chat-message-column'
from 48rem to 64rem, but '.chat-input-column' (which wraps the
textarea) was missing the matching rule, so the prompt input stayed
narrow while the messages above it widened.
Add the missing '.wide-chat-layout .chat-input-column { width:
min(100%, 64rem) }' selector so the input column tracks the message
column under the same setting.
161 lines
4.1 KiB
CSS
161 lines
4.1 KiB
CSS
@layer components {
|
|
/* Semantic typography classes - font-size only */
|
|
.typography-markdown {
|
|
font-size: var(--text-markdown);
|
|
}
|
|
|
|
.typography-code {
|
|
font-size: var(--text-code);
|
|
}
|
|
|
|
.typography-ui-header {
|
|
font-size: var(--text-ui-header);
|
|
}
|
|
|
|
.typography-ui-label {
|
|
font-size: var(--text-ui-label);
|
|
}
|
|
|
|
.typography-meta {
|
|
font-size: var(--text-meta);
|
|
}
|
|
|
|
.typography-micro {
|
|
font-size: var(--text-micro);
|
|
}
|
|
|
|
.chat-column {
|
|
width: min(100%, 48rem);
|
|
margin-inline: auto;
|
|
padding-inline: calc(clamp(0.75rem, 2.5vw, 1rem) * var(--padding-scale, 1));
|
|
}
|
|
|
|
.wide-chat-layout .chat-column {
|
|
width: min(100%, 64rem);
|
|
}
|
|
|
|
.chat-input-column {
|
|
width: min(100%, 48rem);
|
|
margin-inline: auto;
|
|
padding-inline: calc(clamp(0.75rem, 2.5vw, 1rem) * var(--padding-scale, 1));
|
|
}
|
|
|
|
.wide-chat-layout .chat-input-column {
|
|
width: min(100%, 64rem);
|
|
}
|
|
|
|
.chat-message-column {
|
|
width: min(100%, 48rem);
|
|
margin-inline: auto;
|
|
padding-inline: calc(clamp(0.75rem, 2.5vw, 1rem) * var(--padding-scale, 1));
|
|
}
|
|
|
|
.wide-chat-layout .chat-message-column {
|
|
width: min(100%, 64rem);
|
|
}
|
|
|
|
@media (min-width: 1024px) {
|
|
.chat-column {
|
|
padding-inline: calc(clamp(1rem, 2.5vw, 1.5rem) * var(--padding-scale, 1));
|
|
}
|
|
|
|
.chat-input-column {
|
|
padding-inline: calc(clamp(1rem, 2.5vw, 1.5rem) * var(--padding-scale, 1));
|
|
}
|
|
|
|
.chat-message-column {
|
|
padding-inline: calc(clamp(1rem, 2.5vw, 1.5rem) * var(--padding-scale, 1));
|
|
}
|
|
}
|
|
|
|
/* Enhanced focus indicators for small interactive elements */
|
|
.model-favorite-button {
|
|
position: relative;
|
|
transition: transform 0.1s ease;
|
|
}
|
|
|
|
.model-favorite-button:focus-visible {
|
|
outline: 2px solid var(--primary);
|
|
outline-offset: 2px;
|
|
border-radius: 0.25rem;
|
|
}
|
|
|
|
.model-favorite-button:active {
|
|
transform: scale(0.95);
|
|
}
|
|
|
|
/* Heading typography - all use markdown size, differentiated by weight/color */
|
|
|
|
.typography-h1 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--h1-line-height);
|
|
letter-spacing: var(--h1-letter-spacing);
|
|
font-weight: var(--h1-font-weight);
|
|
}
|
|
|
|
.typography-h2 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--h2-line-height);
|
|
letter-spacing: var(--h2-letter-spacing);
|
|
font-weight: var(--h2-font-weight);
|
|
}
|
|
|
|
.typography-h3 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--h3-line-height);
|
|
letter-spacing: var(--h3-letter-spacing);
|
|
font-weight: var(--h3-font-weight);
|
|
}
|
|
|
|
/* UI element typography - mapped to semantic variables */
|
|
.typography-ui-button {
|
|
font-size: var(--text-ui-label);
|
|
line-height: var(--ui-button-line-height);
|
|
letter-spacing: var(--ui-button-letter-spacing);
|
|
font-weight: var(--ui-button-font-weight);
|
|
}
|
|
|
|
.typography-ui-caption {
|
|
font-size: var(--text-micro);
|
|
line-height: var(--ui-caption-line-height);
|
|
letter-spacing: var(--ui-caption-letter-spacing);
|
|
font-weight: var(--ui-caption-font-weight);
|
|
}
|
|
|
|
/* Markdown typography - all use semantic markdown size */
|
|
.typography-markdown-body {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--markdown-body-line-height);
|
|
letter-spacing: var(--markdown-body-letter-spacing);
|
|
font-weight: var(--markdown-body-font-weight);
|
|
}
|
|
|
|
.typography-markdown-h1 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--markdown-h1-line-height);
|
|
letter-spacing: var(--markdown-h1-letter-spacing);
|
|
font-weight: var(--markdown-h1-font-weight);
|
|
}
|
|
|
|
.typography-markdown-h2 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--markdown-h2-line-height);
|
|
letter-spacing: var(--markdown-h2-letter-spacing);
|
|
font-weight: var(--markdown-h2-font-weight);
|
|
}
|
|
|
|
.typography-markdown-h3 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--markdown-h3-line-height);
|
|
letter-spacing: var(--markdown-h3-letter-spacing);
|
|
font-weight: var(--markdown-h3-font-weight);
|
|
}
|
|
|
|
.typography-markdown-h4 {
|
|
font-size: var(--text-markdown);
|
|
line-height: var(--markdown-h4-line-height);
|
|
letter-spacing: var(--markdown-h4-letter-spacing);
|
|
font-weight: var(--markdown-h4-font-weight);
|
|
}
|
|
}
|