input:not([type=range]):not([type=checkbox]):not([type=radio]):focus-visible, textarea:focus-visible, select:focus-visible { outline: none; border-color: #a68832; box-shadow: 0 0 0 2px #b294441a; }
.composer:focus-within { outline: none; box-shadow: 0 1px 7px #1515150d; border-color: #a8a8a0; }
.message-actions { opacity: 1; gap: 2px; }
.message-actions button, .user-message-actions button { width: 30px; height: 30px; padding: 6px; min-height: 30px; }
.user-message-actions { display: flex; justify-content: flex-end; margin-top: 5px; }
.message.user:has(.user-message-actions) { position: relative; padding-bottom: 44px; }
.message.user > .role { display: none; }
.user-message-actions { position: absolute; right: 8px; bottom: 3px; margin: 0; }
.thinking-pulse { display: inline-block; width: 12px; height: 12px; border: 2px solid #dac78a; border-top-color: #a4811b; border-radius: 50%; animation: kryyt-working .9s linear infinite; margin-left: 8px; }
@keyframes kryyt-working { to { transform: rotate(360deg); } }
.model-picker { position: relative; }
.model-picker input { width: 100%; }
#model-search-options { position: absolute; z-index: 80; left: 0; right: 0; max-height: 210px; overflow: auto; border: 1px solid var(--line); background: white; border-radius: 5px; box-shadow: 0 5px 18px #00000015; }
#model-search-options button { display: block; text-align: left; width: 100%; border: 0; padding: 10px; background: white; }
#model-search-options button:hover, #model-search-options .highlighted, #model-search-options [aria-selected=true] { background: #f3f3ef; }
.reasoning-ruler { margin: 12px 0; }
.reasoning-ruler input { width: 100%; height: 22px; padding: 0; accent-color: #977720; background: transparent; }
.ruler-labels { display: flex; justify-content: space-between; font-size: 11px; color: var(--muted); }
.ruler-labels span::before { content: ''; display: block; width: 1px; height: 5px; background: #aaa; margin: 0 auto 5px; }
.planning-control { display: flex; align-items: center; gap: 4px; margin: 0; padding: 3px; min-height: 32px; font-size: 11px; font-weight: 500; }
.planning-control input { width: 13px; height: 13px; margin: 0; accent-color: #977720; }
.settings-tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--line); overflow-x: auto; margin-bottom: 20px; }
.settings-tabs button { flex: 0 0 auto; border: 0; border-bottom: 2px solid transparent; padding: 10px 13px; background: transparent; color: var(--muted); font-size: 13px; }
.settings-tabs [aria-selected=true] { color: var(--ink); border-bottom-color: #aa8629; }
.settings-tab-panel { min-width: 0; }
.preview-resizer { position: absolute; left: -5px; top: 0; bottom: 0; width: 10px; cursor: col-resize; touch-action: none; }
.preview-resizer:hover, .preview-resizer:focus-visible { background: #a98b3333; }
@media (min-width:1101px) { .artifact-panel { width: var(--preview-width, min(48vw, 720px)); min-width: 320px; } body.artifact-open .chat-view { margin-right: var(--preview-width, min(48vw, 720px)); } }
@media (min-width:601px) and (max-width:1100px) { .artifact-panel { width: var(--preview-width, min(72vw, 680px)); min-width: 320px; } }
.artifact-panel.preview-expanded { width: 100vw; min-width: 0; top: 0; left: 0; z-index: 100; }
.artifact-panel.preview-expanded .preview-resizer { display: none; }
.question-cards { max-height: min(45vh, 420px); overflow-y: auto; width: 100%; padding: 14px 16px; border-top: 1px solid var(--line); background: #fafaf8; flex-shrink: 0; }
.chat-view:not(.chat-home) { grid-template-rows: auto minmax(0, 1fr) auto auto; }
.chat-view:not(.chat-home) .chat-header { grid-row: 1; }
.chat-view:not(.chat-home) #messages { grid-row: 2; }
.chat-view:not(.chat-home) #credit-notice { grid-row: 3; }
.chat-view:not(.chat-home) #composer { grid-row: 4; }
.question-cards fieldset { margin: 0; padding: 0; border: 0; }
.question-cards legend { font-size: 14px; font-weight: 550; margin-bottom: 12px; }
.question-cards textarea { width: 100%; min-height: 52px; }
.question-progress { font-size: 11px; color: var(--muted); margin-bottom: 5px; }
.question-option { display: flex; align-items: center; gap: 8px; padding: 7px 0; font-size: 13px; }
.question-option input { flex: 0 0 16px; width: 16px; height: 16px; min-height: 0; padding: 0; margin: 0; accent-color: #977720; }
.question-option { justify-content: flex-start; font-weight: 450; }
.question-cards form { margin: 0; }
.question-cards label { margin: 5px 0 3px; font-size: 12px; line-height: 18px; }
.question-cards .question-option { margin: 0; padding: 5px 0; min-height: 28px; }
.question-cards textarea { height: 48px; min-height: 48px; max-height: 80px; padding: 6px 8px; font-size: 13px; }
.question-cards legend { line-height: 18px; margin-bottom: 6px; }
.question-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 6px; }
.question-actions button { min-height: 34px; }
@media (max-width:600px) { .composer-model { max-width: 90px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .preview-resizer { display:none; } .question-cards { padding: 10px; } }
@media (prefers-reduced-motion: reduce) { .thinking-pulse { animation: none; } }
@media (pointer:coarse) { .message-actions button, .user-message-actions button { width: 40px; height: 40px; min-height: 40px; padding: 11px; } }
@media (hover:none), (pointer:coarse) {
  .message .message-actions, .message .user-message-actions { opacity:1; visibility:visible; transition:none; }
}
.archive-preview { padding: 20px; overflow-wrap: anywhere; }
.archive-preview li { padding: 5px 0; font: 12px/1.6 monospace; }
#manual-payments-history { margin-top: 28px; }
#manual-payments-history h2 { font-size: 16px; margin-bottom: 12px; }
