/* The project guide shares the reading space only when there is room for both. */
.v62.has-case-companion #assistant {
  overflow: hidden;
  background: linear-gradient(135deg, #ffffff0b, #ffffff02 44%, #00000015), #050608e8;
  border-color: #c5add43c;
  box-shadow: inset 0 1px 0 #ffffff24, inset 1px 0 0 #ffffff09, 0 18px 60px #0008;
  -webkit-backdrop-filter: blur(28px) saturate(140%);
  backdrop-filter: blur(28px) saturate(140%);
}
.v62.has-case-companion #assistant .assistant-head { align-items: flex-start; gap: 11px; padding: 20px; }
.v62.has-case-companion #assistant .assistant-head > div { min-width: 0; flex: 1; }
.v62.has-case-companion #assistant .assistant-eye { flex: 0 0 26px; width: 26px; height: 26px; margin-top: 4px; }
.v62.has-case-companion #assistant .assistant-eye svg { width: 26px; height: 26px; }
.v62.has-case-companion #assistant .assistant-kicker { display: block; margin-bottom: 8px; font-size: 9px; line-height: 1.5; letter-spacing: .12em; color: #b3a4c0; }
.v62.has-case-companion #assistant h2 { font-size: 23px; line-height: 1.18; letter-spacing: -.03em; overflow-wrap: break-word; }
.v62.has-case-companion #assistant #assistantStatus { display: block; margin-top: 9px; font-size: 10px; line-height: 1.5; color: #a99db4; }
.v62.has-case-companion #assistant [data-chat-close] { width: 36px; height: 36px; flex: 0 0 36px; font-size: 24px; border-radius: 10px; }
.v62.has-case-companion #assistant .chat-log { flex: 1; min-height: 0; padding: 20px; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #665274 transparent; }
.v62.has-case-companion #assistant .chat-message { font-size: 14px; line-height: 1.75; }
.v62.has-case-companion #assistant .chat-message.assistant-msg { padding-right: 0; }
.v62.has-case-companion #assistant .chat-suggestions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 0 16px 14px; flex-shrink: 0; }
.v62.has-case-companion #assistant .chat-suggestions button { min-width: 0; min-height: 44px; padding: 9px 10px; border-radius: 9px; text-align: left; font-size: 11px; line-height: 1.45; }
.v62.has-case-companion #assistant .chat-compose { flex-shrink: 0; margin: 0 14px 10px; padding: 6px; border: 1px solid #ffffff29; border-radius: 12px; }
.v62.has-case-companion #assistant .chat-compose input { background: transparent; border: 0; padding: 8px; font-size: 14px; }
.v62.has-case-companion #assistant .chat-compose button { min-width: 38px; width: 38px; min-height: 38px; border-radius: 8px; }
.v62.has-case-companion #assistant .assistant-foot { flex-shrink: 0; padding: 0 19px 16px; font-size: 10px; }
.v62.has-case-companion #assistant .assistant-foot button { font-size: 11px; }
.v62.has-case-companion.case-companion-open > .ask-trigger { visibility: hidden; }

@media (min-width: 1400px) and (min-height: 620px) {
  body.v62.has-case-companion { padding-right: 0; }
  .v62.has-case-companion #main > .wrap,
  .v62.has-case-companion #privateCase > .wrap,
  .v62.has-case-companion #privateCase > .private-case-content > .wrap,
  .v62.has-case-companion .case-film-header > .wrap,
  .v62.has-case-companion .case-film-footer > .wrap,
  .v62.has-case-companion .portfolio-header { width: calc(100% - var(--page-gutter) * 2); max-width: var(--page-max); margin-inline: auto; padding-inline: 0; }
  .v62.has-case-companion .case-story-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; align-items: stretch; width: calc(100% - var(--page-gutter) * 2); max-width: var(--page-max); margin-inline: auto; }
  .v62.has-case-companion .case-story-layout.case-story-layout-inset { width: 100%; max-width: none; }
  .v62.has-case-companion .case-story-layout > .case-story-content { min-width: 0; width: 100%; max-width: none; padding-inline: 0; margin-inline: 0; }
  .v62.has-case-companion .case-assistant-slot { position: relative; min-width: 0; align-self: stretch; padding-top: 38px; padding-bottom: 32px; }
  .v62.has-case-companion.case-companion-docked #assistant {
    position: sticky; top: 100px; bottom: auto; left: auto; right: auto;
    width: 100%; max-width: none;
    height: min(700px, calc(100dvh - 130px)); max-height: calc(100dvh - 130px);
    border: 1px solid #c5add43c; border-radius: 22px;
    transform: none; animation: none;
    z-index: 10;
  }
  .v62.has-case-companion.case-companion-docked #assistant > * { animation: none; }
  .v62.has-case-companion .case-guide { display: none; }
}
@media (min-width: 1700px) and (min-height: 620px) {
  .v62.has-case-companion .case-story-layout { grid-template-columns: minmax(0, 1fr) 340px; gap: 48px; }
}
@media (max-width: 1399px), (max-height: 619px) {
  .v62.has-case-companion #assistant { --assistant-open-width: min(450px, calc(100vw - 24px)); --assistant-open-height: min(700px, calc(100dvh - 16px)); width: var(--assistant-open-width); height: var(--assistant-open-height); right: 12px; bottom: 0; border-radius: 22px 22px 0 0; border-bottom: 0; }
  .v62.has-case-companion #assistant .chat-compose input { font-size: 16px; }
  .v62.has-case-companion #assistant .assistant-foot { padding-bottom: max(16px, env(safe-area-inset-bottom)); }
  .v62.has-case-companion > .ask-trigger { right: 12px; }
}
@media (max-height: 720px) {
  .v62.has-case-companion #assistant .assistant-head { padding: 14px 17px; }
  .v62.has-case-companion #assistant h2 { font-size: 20px; }
  .v62.has-case-companion #assistant .assistant-kicker { margin-bottom: 5px; }
  .v62.has-case-companion #assistant #assistantStatus { margin-top: 5px; }
  .v62.has-case-companion #assistant .chat-log { padding: 14px 18px; }
  .v62.has-case-companion #assistant .chat-suggestions { gap: 6px; padding-bottom: 10px; }
  .v62.has-case-companion #assistant .chat-suggestions button { min-height: 38px; padding: 7px 9px; }
}
@media (max-height: 500px) {
  .v62.has-case-companion #assistant .chat-suggestions { display: none; }
  .v62.has-case-companion #assistant .assistant-kicker { display: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) { .v62.has-case-companion #assistant { background: #08090b; } }
@media (prefers-reduced-transparency: reduce) { .v62.has-case-companion #assistant { background: #08090b; -webkit-backdrop-filter: none; backdrop-filter: none; } }
@media (prefers-reduced-motion: reduce) { .v62.has-case-companion #assistant { animation: none !important; } }
@media print {
  body.v62.has-case-companion.case-companion-docked { padding-right: 0; }
  .v62.has-case-companion #assistant, .v62.has-case-companion > .ask-trigger { display: none !important; }
  .v62.has-case-companion .case-story-layout { display: block; width: 100%; max-width: none; }
  .v62.has-case-companion .case-assistant-slot { display: none; }
}
