/* Ask AI - conversational workspace on the shared app shell.
   Every colour comes from the tokens in aiwa-core.css, which aiwa-dark.css
   redefines under html[data-theme="dark"], so this file works in both themes
   without a second set of rules. --aiwa-soft only exists in dark, so it is
   always given a light fallback. */

.ask-page [hidden] { display: none !important; }

/* ---------- frame ---------- */

.ask-app { overflow: hidden; }

.ask-bar .para-command-inner,
.ask-bar-inner { justify-content: flex-start; gap: 10px; }

.ask-rail-btn,
.ask-bar-btn {
  display: inline-flex; align-items: center; gap: 7px;
  min-height: 34px; padding: 0 12px;
  border: 1px solid var(--aiwa-line); border-radius: 999px;
  background: var(--aiwa-card); color: var(--aiwa-text);
  font: inherit; font-size: 12.5px; font-weight: 620; cursor: pointer;
  transition: border-color 140ms var(--aiwa-ease), background 140ms var(--aiwa-ease);
}
.ask-rail-btn { padding: 0 9px; }
.ask-rail-btn:hover, .ask-bar-btn:hover:not(:disabled) { border-color: var(--aiwa-line-strong); background: var(--aiwa-soft, #f1f5f2); }
.ask-rail-btn:focus-visible, .ask-bar-btn:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }
.ask-bar-btn:disabled { opacity: 0.45; cursor: not-allowed; }
.ask-bar-btn .aiwa-ui-icon, .ask-rail-btn .aiwa-ui-icon { width: 15px; height: 15px; }
.ask-bar-primary { border-color: var(--aiwa-brand); color: var(--aiwa-brand-dark); font-weight: 700; }
.ask-bar-primary:hover:not(:disabled) { background: var(--aiwa-brand-soft); border-color: var(--aiwa-brand); }

.ask-body { flex: 1 1 auto; min-height: 0; display: flex; align-items: stretch; }

/* ---------- conversations sidebar ---------- */

.ask-sidebar {
  flex: 0 0 264px; width: 264px; min-height: 0;
  display: flex; flex-direction: column;
  border-right: 1px solid var(--aiwa-line);
  background: var(--aiwa-soft, #f7f9f7);
  transition: margin-left 180ms var(--aiwa-ease);
}
.ask-sidebar-hidden .ask-sidebar { margin-left: -264px; }

.ask-side-top { flex: 0 0 auto; display: flex; flex-direction: column; gap: 8px; padding: 12px 12px 10px; }

.ask-side-new {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 38px; border: 1px solid var(--aiwa-brand); border-radius: 10px;
  background: var(--aiwa-brand); color: #fff;
  font: inherit; font-size: 13px; font-weight: 680; cursor: pointer;
  transition: filter 140ms var(--aiwa-ease);
}
.ask-side-new:hover { filter: brightness(1.07); }
.ask-side-new:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }
.ask-side-new .aiwa-ui-icon { width: 15px; height: 15px; filter: invert(1); }

.ask-side-search {
  display: flex; align-items: center; gap: 7px;
  min-height: 34px; padding: 0 10px;
  border: 1px solid var(--aiwa-line); border-radius: 9px;
  background: var(--aiwa-card);
}
.ask-side-search:focus-within { border-color: var(--aiwa-brand); }
.ask-side-search .aiwa-ui-icon { width: 14px; height: 14px; opacity: 0.6; }
.ask-side-search input {
  flex: 1 1 auto; min-width: 0; border: 0; outline: 0; background: none;
  color: var(--aiwa-ink); font: inherit; font-size: 12.5px;
}
.ask-side-search input::placeholder { color: var(--aiwa-muted); }

.ask-side-list { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 2px 8px 8px; scrollbar-width: thin; }

.ask-side-group {
  margin: 12px 6px 5px; color: var(--aiwa-muted);
  font-size: 10.5px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;
}
.ask-side-group:first-child { margin-top: 4px; }

.ask-chat {
  position: relative; display: flex; align-items: center; gap: 8px;
  padding: 8px 8px 8px 10px; border-radius: 9px;
  border: 1px solid transparent; cursor: pointer;
}
.ask-chat:hover { background: var(--aiwa-card); }
.ask-chat.is-active { background: var(--aiwa-card); border-color: var(--aiwa-line); }
.ask-chat:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 1px; }
.ask-chat-body { flex: 1 1 auto; min-width: 0; }
.ask-chat-title {
  display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  color: var(--aiwa-ink); font-size: 12.75px; font-weight: 600; line-height: 1.35;
}
.ask-chat.is-active .ask-chat-title { font-weight: 700; }
.ask-chat-meta { display: block; color: var(--aiwa-muted); font-size: 10.5px; margin-top: 1px; }
.ask-chat-pin { flex: 0 0 auto; width: 12px; height: 12px; opacity: 0.65; }

.ask-chat-menu-btn {
  flex: 0 0 auto; width: 26px; height: 26px; display: grid; place-items: center;
  border: 0; border-radius: 7px; background: none; cursor: pointer; opacity: 0;
  transition: opacity 120ms var(--aiwa-ease);
}
.ask-chat:hover .ask-chat-menu-btn,
.ask-chat.is-active .ask-chat-menu-btn,
.ask-chat-menu-btn:focus-visible,
.ask-chat.menu-open .ask-chat-menu-btn { opacity: 1; }
.ask-chat-menu-btn:hover { background: var(--aiwa-soft, #eef2ef); }
.ask-chat-menu-btn .aiwa-ui-icon { width: 14px; height: 14px; }

.ask-chat-menu {
  position: absolute; z-index: 30; right: 6px; top: calc(100% - 4px);
  min-width: 148px; padding: 5px;
  border: 1px solid var(--aiwa-line); border-radius: 10px;
  background: var(--aiwa-card); box-shadow: var(--aiwa-shadow-high);
}
.ask-chat-menu button {
  display: flex; align-items: center; gap: 8px; width: 100%;
  padding: 7px 9px; border: 0; border-radius: 7px; background: none;
  color: var(--aiwa-text); font: inherit; font-size: 12.5px; text-align: left; cursor: pointer;
}
.ask-chat-menu button:hover { background: var(--aiwa-soft, #eef2ef); color: var(--aiwa-ink); }
.ask-chat-menu button.is-danger { color: var(--aiwa-danger); }
.ask-chat-menu .aiwa-ui-icon { width: 14px; height: 14px; }

.ask-chat-rename {
  width: 100%; border: 1px solid var(--aiwa-brand); border-radius: 6px;
  background: var(--aiwa-card); color: var(--aiwa-ink);
  font: inherit; font-size: 12.75px; font-weight: 600; padding: 3px 6px;
}

.ask-side-empty { padding: 26px 14px; color: var(--aiwa-muted); font-size: 12.5px; text-align: center; }

.ask-side-foot {
  flex: 0 0 auto; display: flex; align-items: center; gap: 7px; margin: 0;
  padding: 9px 12px calc(9px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid var(--aiwa-line);
  color: var(--aiwa-muted); font-size: 10.75px; line-height: 1.35;
}
.ask-side-foot .aiwa-ui-icon { width: 13px; height: 13px; flex: 0 0 auto; opacity: 0.7; }

.ask-sidebar-scrim { display: none; }

/* ---------- thread ---------- */

.ask-main { flex: 1 1 auto; min-width: 0; min-height: 0; display: flex; flex-direction: column; }

.ask-thread {
  flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain;
  padding: 22px 0 10px; scrollbar-gutter: stable;
}
.ask-inner { width: min(760px, calc(100% - 44px)); margin: 0 auto; }

.ask-empty { width: min(680px, calc(100% - 44px)); margin: 7vh auto 0; text-align: center; }
.ask-empty-icon {
  width: 46px; height: 46px; margin: 0 auto 14px; border-radius: 14px;
  display: grid; place-items: center; background: var(--aiwa-brand-soft);
}
.ask-empty-icon .aiwa-ui-icon { width: 22px; height: 22px; }
.ask-empty h2 { margin: 0 0 8px; font-size: 1.4rem; letter-spacing: -0.02em; color: var(--aiwa-ink); }
.ask-empty p { margin: 0 0 22px; color: var(--aiwa-muted); }
.ask-starters { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); text-align: left; }
.ask-starter {
  border: 1px solid var(--aiwa-line); border-radius: var(--aiwa-radius-md);
  background: var(--aiwa-card); padding: 13px 15px;
  font: inherit; font-size: 13.5px; color: var(--aiwa-text); text-align: left; cursor: pointer;
  transition: border-color 140ms var(--aiwa-ease), transform 140ms var(--aiwa-ease);
}
.ask-starter:hover { border-color: var(--aiwa-brand); transform: translateY(-1px); }
.ask-starter:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }
.ask-starter b { display: block; margin-bottom: 3px; color: var(--aiwa-ink); font-weight: 680; }

.ask-turn { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 24px; }
.ask-turn-you { justify-content: flex-end; }

.ask-avatar {
  flex: 0 0 auto; width: 29px; height: 29px; margin-top: 2px;
  border-radius: 9px; display: grid; place-items: center;
  background: var(--aiwa-brand-soft); border: 1px solid var(--aiwa-line);
}
.ask-avatar .aiwa-ui-icon { width: 16px; height: 16px; }

.ask-bubble { max-width: 100%; min-width: 0; }
.ask-turn-you .ask-bubble {
  max-width: 82%;
  padding: 10px 15px; border-radius: 15px 15px 4px 15px;
  border: 1px solid var(--aiwa-line);
  background: var(--aiwa-soft, #eef4f0); color: var(--aiwa-ink);
  white-space: pre-wrap; overflow-wrap: anywhere;
}
/* In dark, the shared --aiwa-soft sits lighter than the card, which made the
   person's own message the brightest block on the page. Sit these surfaces
   just above the page ground instead and let the borders do the separating. */
html[data-theme="dark"] .ask-turn-you .ask-bubble { background: #171f1a; }
html[data-theme="dark"] .ask-sidebar { background: #131a16; }
html[data-theme="dark"] .ask-chat:hover,
html[data-theme="dark"] .ask-chat.is-active { background: #1b241f; }
/* Match the scrollbars to the surface they sit on. */
.ask-thread, .ask-side-list { scrollbar-color: var(--aiwa-line-strong) transparent; }
.ask-turn-ai .ask-bubble { padding-top: 2px; }

.ask-answer { color: var(--aiwa-text); line-height: 1.65; overflow-wrap: break-word; }
.ask-answer > *:first-child { margin-top: 0; }
.ask-answer > *:last-child { margin-bottom: 0; }
.ask-answer p { margin: 0 0 0.85em; }
.ask-answer h3 { margin: 1.3em 0 0.5em; font-size: 1rem; color: var(--aiwa-ink); }
.ask-answer ul, .ask-answer ol { margin: 0 0 0.9em; padding-left: 1.35em; }
.ask-answer li { margin: 0 0 0.35em; }
.ask-answer strong { color: var(--aiwa-ink); font-weight: 660; }
.ask-answer a { color: var(--aiwa-brand-dark); text-underline-offset: 2px; }
.ask-answer code {
  padding: 0.1em 0.35em; border: 1px solid var(--aiwa-line); border-radius: 5px;
  background: var(--aiwa-soft, #eef2ef);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.875em;
}
.ask-answer pre {
  margin: 0 0 0.9em; padding: 12px 14px; overflow-x: auto;
  border: 1px solid var(--aiwa-line); border-radius: var(--aiwa-radius-sm);
  background: var(--aiwa-soft, #f2f5f3);
}
.ask-answer pre code { padding: 0; border: 0; background: none; }

/* Models answer comparison questions with tables; before this they arrived as
   a wall of raw pipes. A wide table scrolls inside its own box so the thread
   never scrolls sideways. */
.ask-tablewrap { margin: 0 0 1em; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--aiwa-line); border-radius: var(--aiwa-radius-sm); }
.ask-table { width: 100%; min-width: 520px; border-collapse: collapse; font-size: 0.9375em; overflow-wrap: normal; word-break: normal; }
.ask-table th, .ask-table td { padding: 8px 12px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--aiwa-line); overflow-wrap: normal; word-break: normal; hyphens: none; }
.ask-table tbody th, .ask-table td:first-child { min-width: 132px; }
.ask-table th { background: var(--aiwa-soft, #f1f5f2); color: var(--aiwa-ink); font-weight: 640; white-space: nowrap; }
.ask-table tbody tr:last-child td { border-bottom: 0; }
.ask-table td { color: var(--aiwa-text); }
.ask-answer li.ask-li-loose { margin-top: 0.55em; }
.ask-answer hr { height: 1px; margin: 1.4em 0; border: 0; background: var(--aiwa-line); }
.ask-answer h4 { margin: 1.2em 0 0.4em; font-size: 0.9375rem; font-weight: 640; color: var(--aiwa-ink); }

.ask-caret { display: inline-block; width: 2px; height: 1.05em; margin-left: 2px; vertical-align: -0.16em; background: var(--aiwa-brand); }
@media (prefers-reduced-motion: no-preference) {
  .ask-caret { animation: ask-blink 1s steps(2, start) infinite; }
  @keyframes ask-blink { to { visibility: hidden; } }
}

.ask-thinking { display: inline-flex; gap: 4px; align-items: center; padding: 6px 0; }
.ask-thinking span { width: 6px; height: 6px; border-radius: 50%; background: var(--aiwa-line-strong); }
@media (prefers-reduced-motion: no-preference) {
  .ask-thinking span { animation: ask-bounce 1.1s infinite ease-in-out; }
  .ask-thinking span:nth-child(2) { animation-delay: 0.15s; }
  .ask-thinking span:nth-child(3) { animation-delay: 0.3s; }
  @keyframes ask-bounce { 0%, 70%, 100% { transform: translateY(0); opacity: 0.45; } 35% { transform: translateY(-4px); opacity: 1; } }
}

.ask-tools { display: flex; flex-wrap: wrap; gap: 5px; align-items: center; margin-top: 9px; }
.ask-mini {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 8px; border: 1px solid transparent; border-radius: 7px;
  background: none; color: var(--aiwa-muted); font: inherit; font-size: 11.75px; cursor: pointer;
}
.ask-mini:hover { background: var(--aiwa-soft, #eef2ef); color: var(--aiwa-ink); }
.ask-mini:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 1px; }
.ask-mini .aiwa-ui-icon { width: 13px; height: 13px; opacity: 0.7; }

.ask-sources { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--aiwa-line); }
.ask-sources p { margin: 0 0 6px; color: var(--aiwa-muted); font-size: 10.75px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.ask-sources ol { margin: 0; padding-left: 1.2em; }
.ask-sources li { margin-bottom: 3px; font-size: 12.75px; }
.ask-sources a { color: var(--aiwa-brand-dark); }

.ask-followups { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.ask-followup {
  padding: 6px 13px; border: 1px dashed var(--aiwa-line-strong); border-radius: 999px;
  background: none; color: var(--aiwa-text); font: inherit; font-size: 12.75px; cursor: pointer;
  transition: border-color 140ms var(--aiwa-ease), background 140ms var(--aiwa-ease);
}
.ask-followup:hover { border-style: solid; border-color: var(--aiwa-brand); background: var(--aiwa-brand-soft); }
.ask-followup:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }

/* ---------- composer ---------- */

.ask-composer-wrap { flex: 0 0 auto; padding: 4px 0 12px; }
.ask-composer-wrap > * { width: min(760px, calc(100% - 44px)); margin-left: auto; margin-right: auto; }

.ask-note {
  margin-bottom: 9px; padding: 10px 13px;
  border: 1px solid var(--aiwa-line); border-left: 3px solid var(--aiwa-warning);
  border-radius: var(--aiwa-radius-sm); background: var(--aiwa-card);
  color: var(--aiwa-text); font-size: 12.75px;
}
.ask-note a { color: var(--aiwa-brand-dark); font-weight: 640; }

.ask-attachment {
  display: flex; align-items: center; gap: 9px; margin-bottom: 9px;
  padding: 8px 10px; border: 1px solid var(--aiwa-line); border-radius: var(--aiwa-radius-sm);
  background: var(--aiwa-card); font-size: 12.75px;
}
.ask-attachment .aiwa-ui-icon { width: 15px; height: 15px; opacity: 0.7; }
.ask-attachment b { color: var(--aiwa-ink); font-weight: 640; }
.ask-attachment span { color: var(--aiwa-muted); }
.ask-attachment button { margin-left: auto; }

.ask-composer {
  display: flex; flex-direction: column;
  padding: 10px 10px 8px 14px;
  border: 1px solid var(--aiwa-line-strong); border-radius: 18px;
  background: var(--aiwa-card);
  transition: border-color 140ms var(--aiwa-ease), box-shadow 140ms var(--aiwa-ease);
}
.ask-composer:focus-within { border-color: var(--aiwa-brand); box-shadow: 0 0 0 3px var(--aiwa-brand-soft); }
.ask-composer textarea {
  width: 100%; min-height: 26px; max-height: 200px; padding: 2px 0 6px;
  border: 0; outline: 0; resize: none; background: none;
  color: var(--aiwa-ink); font: inherit; line-height: 1.5;
}
.ask-composer textarea::placeholder { color: var(--aiwa-muted); }

.ask-composer-tools { display: flex; align-items: center; gap: 6px; }

.ask-tool-btn {
  display: inline-flex; align-items: center; gap: 6px;
  min-height: 30px; padding: 0 10px;
  border: 1px solid var(--aiwa-line); border-radius: 999px;
  background: none; color: var(--aiwa-muted);
  font: inherit; font-size: 12px; font-weight: 600; cursor: pointer;
  transition: border-color 140ms var(--aiwa-ease), color 140ms var(--aiwa-ease), background 140ms var(--aiwa-ease);
}
.ask-tool-btn:hover:not(:disabled) { border-color: var(--aiwa-line-strong); color: var(--aiwa-ink); }
.ask-tool-btn:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }
.ask-tool-btn:disabled { opacity: 0.45; cursor: not-allowed; }
.ask-tool-ic { width: 15px; height: 15px; }
#askAttach { padding: 0 8px; }
.ask-tool-web[aria-pressed="true"] {
  border-color: var(--aiwa-brand); background: var(--aiwa-brand-soft); color: var(--aiwa-brand-dark);
}

.ask-composer-spacer { flex: 1 1 auto; }
.ask-allowance { color: var(--aiwa-muted); font-size: 11.25px; white-space: nowrap; }

/* Send: a plain arrow. Empty box = quiet and unusable; text in the box = the
   one bright thing on the screen, so it is obvious what to press. */
.ask-send {
  flex: 0 0 auto; width: 34px; height: 34px; display: grid; place-items: center;
  border: 1px solid transparent; border-radius: 50%;
  background: var(--aiwa-brand); cursor: pointer;
  transition: background 140ms var(--aiwa-ease), box-shadow 140ms var(--aiwa-ease),
              border-color 140ms var(--aiwa-ease), transform 140ms var(--aiwa-ease);
}
.ask-send:hover:not(:disabled) { background: var(--aiwa-brand-dark); transform: translateY(-1px); }
.ask-send:active:not(:disabled) { transform: none; }
.ask-send:not(:disabled) { box-shadow: 0 0 0 4px var(--aiwa-brand-soft); }
.ask-send:disabled { background: transparent; border-color: var(--aiwa-line); box-shadow: none; cursor: default; }
.ask-send:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }
/* The arrow ships as a black SVG: invert it to white on the green disc, and
   dim it to muted ink when the button is asleep. */
.ask-send-ic { width: 17px; height: 17px; filter: invert(1); transition: filter 140ms var(--aiwa-ease), opacity 140ms var(--aiwa-ease); }
.ask-send:disabled .ask-send-ic { filter: none; opacity: 0.42; }
html[data-theme="dark"] .ask-send:disabled .ask-send-ic { filter: invert(0.72); opacity: 0.6; }

.ask-disclaimer { margin: 7px auto 0; color: var(--aiwa-muted); font-size: 11px; text-align: center; }

/* ---------- failure dialog ---------- */

.ask-dialog::backdrop { background: rgba(6, 10, 8, 0.55); }
.ask-dialog { max-width: min(30rem, calc(100vw - 2rem)); padding: 0; border: 0; background: transparent; }
.ask-dialog-card {
  padding: 24px; border: 1px solid var(--aiwa-line); border-radius: var(--aiwa-radius-lg);
  background: var(--aiwa-card); color: var(--aiwa-text);
  box-shadow: var(--aiwa-shadow-high); font: inherit; line-height: 1.55;
}
.ask-dialog-icon { width: 40px; height: 40px; margin-bottom: 14px; border-radius: 50%; display: grid; place-items: center; background: var(--aiwa-brand-soft); }
.ask-dialog-icon svg { width: 21px; height: 21px; fill: none; stroke: var(--aiwa-danger); stroke-width: 2; stroke-linecap: round; }
.ask-dialog h2 { margin: 0 0 8px; color: var(--aiwa-ink); font-size: 1.125rem; font-weight: 680; }
.ask-dialog p { margin: 0 0 8px; color: var(--aiwa-muted); font-size: 0.9375rem; }
.ask-dialog .ask-dialog-note { font-size: 0.8125rem; }
.ask-dialog-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; margin-top: 22px; }
.ask-dialog-btn { padding: 9px 17px; border: 1px solid transparent; border-radius: var(--aiwa-radius-sm); font: inherit; font-size: 0.9375rem; font-weight: 640; cursor: pointer; }
.ask-dialog-btn:focus-visible { outline: 2px solid var(--aiwa-focus, #2563eb); outline-offset: 2px; }
.ask-dialog-ghost { border-color: var(--aiwa-line); background: transparent; color: var(--aiwa-muted); }
.ask-dialog-ghost:hover { color: var(--aiwa-ink); }
.ask-dialog-primary { background: var(--aiwa-brand); color: #fff; }
.ask-dialog-primary:hover { background: var(--aiwa-brand-dark); }
@media (prefers-reduced-motion: no-preference) {
  .ask-dialog[open] { animation: ask-dialog-in 160ms ease-out; }
  @keyframes ask-dialog-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
}

/* ---------- SEO explainer ---------- */

.ask-explainer-list { margin: 0 0 1.4em; padding-left: 1.2em; }
.ask-explainer-list li { margin-bottom: 0.55em; }
.ask-faq { display: grid; gap: 8px; }
.ask-faq-item { border: 1px solid var(--aiwa-line); border-radius: var(--aiwa-radius-md); background: var(--aiwa-card); }
.ask-faq-item summary { padding: 12px 15px; color: var(--aiwa-ink); font-weight: 640; cursor: pointer; list-style: none; }
.ask-faq-item summary::-webkit-details-marker { display: none; }
.ask-faq-item summary::after { content: "+"; float: right; color: var(--aiwa-muted); font-weight: 400; }
.ask-faq-item[open] summary::after { content: "\2212"; }
.ask-faq-item p { margin: 0; padding: 0 15px 14px; color: var(--aiwa-text); }

/* ---------- narrow screens ---------- */

@media (max-width: 1100px) {
  .ask-sidebar { flex-basis: 232px; width: 232px; }
  .ask-sidebar-hidden .ask-sidebar { margin-left: -232px; }
}

@media (max-width: 900px) {
  .ask-sidebar {
    position: fixed; z-index: 130; top: 56px; left: 0; bottom: 0;
    width: min(300px, 84vw); flex-basis: auto;
    border-right: 1px solid var(--aiwa-line);
    box-shadow: var(--aiwa-shadow-high);
    transform: translateX(-102%);
    transition: transform 200ms var(--aiwa-ease);
    margin-left: 0 !important;
  }
  .ask-sidebar-open .ask-sidebar { transform: translateX(0); }
  .ask-sidebar-open .ask-sidebar-scrim { display: block; position: fixed; z-index: 120; inset: 56px 0 0; background: rgba(6, 10, 8, 0.4); }
  .ask-inner, .ask-composer-wrap > * { width: calc(100% - 24px); }
  .ask-empty { width: calc(100% - 24px); margin-top: 3vh; }
  .ask-starters { grid-template-columns: 1fr; }
  .ask-turn { gap: 9px; margin-bottom: 20px; }
  .ask-turn-you .ask-bubble { max-width: 92%; }
  .ask-allowance { display: none; }
  .ask-bar-btn span:not(.sr-only) { display: none; }
  .ask-bar-btn { padding: 0 9px; }
}
