.explanation-inline { padding: 0; margin: 0; }
html:not(.in-telegram) .task-category-tab[data-category="general"] { display: none; }
html.app-starting[data-initial-view="task"] #form_view { visibility: hidden; }
html.app-starting[data-initial-view="chat"] #form_view { display: none !important; }
html.app-starting[data-initial-view="chat"] #chat_loading { display: flex !important; }
.explanation-tools { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.explanation-composer #explanation_question { min-height: 42px; max-height: 132px; resize: none; overflow-y: auto; }
.explanation-composer #explanation_send { margin-left: auto; }
#explanation_files { max-height: 104px; overflow-y: auto; }
.explanation-actions { display: flex; justify-content: flex-end; margin-bottom: 12px; flex: none; }
.explanation-inline .chat-msg { overflow-wrap: anywhere; }
.explanation-inline [data-pending="true"] { opacity: .7; }
.explanation-offer { margin-top: 14px; }
.explanation-offer .file-info { display: block; }
.explanation-offer .btn { white-space: normal; text-align: left; max-width: 100%; }
.explanation-draft-choice .btn { margin: 4px 8px 0 0; }

html.explanation-mode .chat-shell { height: 100vh; height: var(--explanation-viewport, 100dvh); }
html.explanation-mode .main { overflow: hidden; min-height: 0; }
html.explanation-mode .main-inner { display: flex; flex-direction: column; min-height: 0; padding-bottom: 16px; }
#form_view[data-mode="explanation"] { display: flex; flex-direction: column; flex: 1; min-height: 0; }
#form_view[data-mode="explanation"] .page-header { margin-bottom: 16px; flex: none; }
#form_view[data-mode="explanation"] .task-section { margin-bottom: 12px; flex: none; }
#form_view[data-mode="explanation"] #explanation_panel:not([hidden]) { display: flex; flex-direction: column; flex: 1; min-height: 0; }
#explanation_chat:not([hidden]) { display: flex; flex-direction: column; flex: 1; min-height: 0; }
#explanation_messages { flex: 1; min-height: 0; overflow-y: auto; padding-right: 12px; overscroll-behavior: contain; scrollbar-width: thin; }
#explanation_messages .chat-msg { flex: none; align-self: flex-start; width: fit-content; max-width: 88%; }
#explanation_messages .chat-msg.user { align-self: flex-end; max-width: 76%; }
#explanation_form { flex: none; margin-top: 0; }
#explanation_billing { flex: none; margin: 8px 0 0; }

@media (max-width: 768px) {
  html.explanation-mode .main-inner { padding-bottom: max(16px, env(safe-area-inset-bottom)); }
  #explanation_messages { padding-right: 4px; }
  #explanation_messages .chat-msg { max-width: 94%; }
  #explanation_messages .chat-msg.user { max-width: 86%; }
}
#explanation_status { flex: none; margin: 12px 0; }
#explanation_status:empty { display: none; }
#form_view[data-mode="explanation"] #task_tabs,
#form_view[data-mode="explanation"] #sample_link,
#form_view[data-mode="explanation"] #sample_combo,
#form_view[data-mode="explanation"] .task-section-header,
#form_view[data-mode="explanation"] #welcome_banner,
#form_view[data-mode="explanation"] #guest_register_banner,
#form_view[data-mode="explanation"] .composer-section,
#form_view[data-mode="explanation"] .perspective-section,
#form_view[data-mode="explanation"] .submit-bar,
#form_view[data-mode="explanation"] #quota_banner { display: none !important; }
#form_view[data-mode="explanation"] .task-category-tabs { margin-bottom: 0; }
