.assistant-page {--font:Arial, Helvetica, sans-serif; --mono:ui-monospace, SFMono-Regular, Menlo, monospace}
.assistant-page main {padding:0 28px 20px}
.assistant-page footer {display:none}
.assistant-page [data-assistant-chat] {height:calc(100dvh - 88px); min-height:590px}
.assistant-workspace {display:grid; grid-template-columns:282px minmax(0,1fr); height:100%; gap:16px; max-width:1550px; margin:0 auto}
.assistant-workspace * {box-sizing:border-box}
.assistant-context {position:relative; min-height:0; display:flex; flex-direction:column; background:#1d1d21; border-radius:10px; padding:24px; overflow:auto}
.assistant-back {font-size:11px; text-decoration:none; color:#b7b5bd}
.assistant-eyebrow {font:10px var(--mono); letter-spacing:.07em; color:#a7a4ad}
.assistant-context-heading {margin-top:28px}
.assistant-context h1 {font-size:46px; line-height:1.04; letter-spacing:-.05em; margin:10px 0 0}
.assistant-context h1 span {display:block; font-size:25px; color:#aaa7b1; font-weight:450; letter-spacing:-.025em; margin-top:5px}
.assistant-character-area {flex:1; min-height:115px; max-height:240px; position:relative; margin:0 -18px}
.assistant-mascot {position:absolute; inset:0; pointer-events:none}
.assistant-mascot canvas {width:100%; height:100%; display:block}
.assistant-workspace button {box-shadow:none; font:inherit; cursor:pointer; letter-spacing:normal; text-transform:none; touch-action:manipulation}
.assistant-workspace button:disabled {cursor:default; opacity:.5}
.assistant-workspace .assistant-motion {position:absolute; bottom:0; right:8px; background:transparent; color:#b7b3c0; border:0; padding:6px; font-size:9px}
.assistant-context-details {padding-top:18px; border-top:1px solid #37363d; margin-top:8px}
.assistant-context-details label {display:block; font:9px var(--mono); color:#a7a4ad; margin:0 0 9px}
.assistant-context-details select {width:100%; padding:9px; border:1px solid #4b4852; border-radius:4px; color:#f6f4ef; background:#29282e; font-family:inherit; font-size:12px; box-shadow:none}
.assistant-context-details p {font-size:12px; line-height:1.5; margin:12px 0 8px; color:#dfdce3}
.assistant-context-details small {display:block; font-size:10px; line-height:1.5; color:#a9a5b0}
.assistant-human {border-top:1px solid #37363d; padding-top:14px; margin-top:20px}
.assistant-human p {font-size:11px; margin:0 0 8px; color:#b7b3bd}
.assistant-human a {font-size:13px; display:flex; justify-content:space-between; text-decoration:none; color:#ff9a76; font-weight:600; padding:5px 0}
.assistant-human small {font-size:10px; color:#a9a5b0; line-height:1.4; display:block; margin-top:7px}
.assistant-chat {display:flex; flex-direction:column; min-width:0; min-height:0; background:#f5f3ee; color:#242326; border-radius:10px; color-scheme:light; overflow:hidden}
.assistant-chat-header {display:flex; justify-content:space-between; align-items:center; gap:18px; padding:20px 30px; border-bottom:1px solid #dddad3; flex:none}
.assistant-connection {font:10px var(--mono); color:#5b5653; display:flex; align-items:center; gap:8px}
.assistant-connection:before {content:''; width:6px; height:6px; border-radius:50%; background:#cd673d}
.assistant-chat-header p {font-size:11px; color:#736e69; margin:6px 0 0}
.assistant-workspace .assistant-new {background:none; color:#4e4945; border:1px solid #cbc6bd; border-radius:5px; font-size:11px; padding:9px 12px; flex:none}
.assistant-feed {flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:28px 36px; outline-offset:-4px; scroll-behavior:auto}
.assistant-empty {max-width:760px; margin:auto; padding:clamp(10px,3vh,50px) 0}
.assistant-empty .assistant-eyebrow {color:#706964; font-size:9px}
.assistant-empty h2 {font-size:clamp(30px,3.4vw,55px); letter-spacing:-.05em; line-height:1.08; font-weight:620; margin:14px 0}
.assistant-empty h2 em {font-style:normal; color:#b64119; display:block}
.assistant-empty>p:not(.assistant-eyebrow) {font-size:13px; color:#6d655e; max-width:400px; line-height:1.6}
.assistant-suggestions {display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:30px}
.assistant-workspace .assistant-suggestions button {position:relative; border:1px solid #d6d0c6; border-radius:6px; padding:18px 36px 18px 16px; background:transparent; text-align:left; color:#272323; display:flex; flex-direction:column; gap:10px}
.assistant-suggestions button span {font:9px var(--mono); color:#81766c}
.assistant-suggestions button strong {font-size:12px; line-height:1.5; font-weight:500}
.assistant-suggestions button i {position:absolute; right:14px; bottom:18px; font-style:normal; color:#a14323}
.assistant-suggestions button:hover {background:#ebe7df; border-color:#b1a69a}
.assistant-composer {padding:12px 30px 20px; flex:none; background:#f5f3ee}
.assistant-composer form {display:flex; gap:14px; align-items:flex-end; border:1px solid #c7bfb4; padding:12px; border-radius:8px; background:#fffefa; margin:0; width:100%}
.assistant-composer form:focus-within {border-color:#a85032; outline:1px solid #a85032}
.assistant-workspace textarea {resize:none; border:0; box-shadow:none; padding:3px 0 3px 6px; background:transparent; color:#272323; font:14px/1.6 var(--font); flex:1; min-width:0; outline:none; border-radius:0; min-height:46px}
.assistant-workspace textarea::placeholder {color:#827c75}
.assistant-workspace .assistant-composer button {border:0; width:38px; height:38px; padding:0; border-radius:5px; font-size:23px; line-height:1; background:#b8411c; color:white; flex:none}
.assistant-composer-meta {display:flex; justify-content:space-between; gap:12px; font-size:9px; color:#746c64; margin:9px 2px 0}
.assistant-privacy {display:block; color:#82796f; font-size:9px; margin:7px 2px 0; line-height:1.4}
.assistant-turn {max-width:850px; margin:0 auto 30px}
.assistant-question {margin:0 0 26px auto; max-width:85%; background:#e6ded2; border-radius:8px 8px 2px 8px; padding:15px 18px; width:fit-content}
.assistant-question>span {font:9px var(--mono); color:#706052}
.assistant-question p {font-size:14px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; margin:7px 0 0}
.assistant-answer-author {display:flex; gap:9px; align-items:center; margin-bottom:10px; color:#3c3029}
.assistant-answer-author strong {font-size:12px; font-weight:650}
.assistant-answer-author>span:last-child {font:9px var(--mono); color:#80766e; margin-left:auto}
.assistant-author-mark {display:grid; place-items:center; width:25px; height:25px; border:1px solid #c7ab96; color:#ad441c; border-radius:5px}
.assistant-answer>p {font-size:14px; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; margin:12px 0; color:#443e38}
.assistant-citation {display:inline-block; color:#a23918; font:11px var(--mono); margin-left:6px; padding:1px 4px; text-decoration:underline}
.assistant-sources {margin-top:20px}
.assistant-sources>p {font:9px var(--mono); color:#817366; margin:0 0 8px}
.assistant-source {border-bottom:1px solid #d9d2c7}
.assistant-source summary {display:flex; align-items:center; gap:12px; cursor:pointer; padding:12px 0; font-size:12px; list-style:none; color:#44362d}
.assistant-source summary::-webkit-details-marker {display:none}
.assistant-page-number {font:10px var(--mono); color:#a84624; background:#e9dfd2; border-radius:3px; padding:5px 6px; flex:none}
.assistant-expand {margin-left:auto; font-size:18px; color:#817569}
.assistant-source[open] .assistant-expand {transform:rotate(45deg)}
.assistant-source-body {padding:2px 0 16px 49px}
.assistant-source-body pre {font:12px/1.7 var(--font); white-space:pre-wrap; overflow-wrap:anywhere; color:#62574e; margin:0 0 12px; max-height:260px; overflow:auto; padding-right:15px}
.assistant-source-body a {color:#a54021; font-size:11px}
.assistant-pending>p {font-size:12px; color:#766a60}
.assistant-error {color:#a02b17; font-size:12px; margin:0 0 10px}
.assistant-sent {font-size:12px; line-height:1.6; color:#64584c; padding:14px; border:1px solid #d5c7b4; border-radius:5px}
.assistant-sent a {color:#a54021}
.assistant-sr-only {position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap}
.assistant-document {max-width:900px; margin:40px auto; padding-bottom:40px}
.assistant-document>a {color:#ffac8d; font-size:13px}
.assistant-document .assistant-eyebrow {margin-top:35px}
.assistant-document h1 {font-size:38px; line-height:1.1; margin:12px 0}
.assistant-document>p {line-height:1.6; color:#bfbac5; font-size:13px}
.assistant-document pre {font:15px/1.8 var(--font); color:#dbd6df; white-space:pre-wrap; overflow-wrap:anywhere; margin-top:36px; padding-top:28px; border-top:1px solid #48424d}
.assistant-handoff {margin-top:25px; padding:20px; background:#f4f3ef; border:1px solid #ddd; border-radius:6px; font-size:13px}
.assistant-handoff label {display:flex; gap:10px; align-items:center}
.assistant-handoff input {width:auto}
.assistant-handoff p {font-size:12px; line-height:1.6; color:#666}
.assistant-handoff summary {cursor:pointer; font-weight:600}
.assistant-handoff pre {max-height:300px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; font:12px/1.6 monospace}
@media (max-height:760px) and (min-width:901px) {.assistant-context {padding:18px 22px}.assistant-context-heading {margin-top:18px}.assistant-context h1 {font-size:37px}.assistant-context h1 span {font-size:22px}.assistant-context-details {padding-top:12px}.assistant-human {margin-top:14px}.assistant-chat-header {padding:16px 26px}.assistant-feed {padding:22px 30px}.assistant-empty {padding-top:12px}.assistant-suggestions {margin-top:20px}.assistant-composer {padding-bottom:14px}}
@media (max-width:900px) {.assistant-workspace {grid-template-columns:225px minmax(0,1fr); gap:10px}.assistant-context {padding:20px}.assistant-page main {padding:0 14px 14px}.assistant-page [data-assistant-chat] {height:calc(100dvh - 82px)}.assistant-chat-header {padding:16px}.assistant-feed {padding:22px}.assistant-composer {padding:10px 18px 16px}.assistant-new {max-width:110px}.assistant-suggestions {grid-template-columns:1fr; gap:6px}.assistant-workspace .assistant-suggestions button {padding:10px 32px 10px 12px; gap:5px}}
@media (max-width:650px) {.assistant-page .site-header {padding:0 16px; height:auto; min-height:64px}.assistant-page .site-header nav {gap:12px; flex-wrap:wrap}.assistant-page .site-header .brand {font-size:21px}.assistant-page [data-assistant-chat] {height:auto; min-height:0}.assistant-workspace {display:flex; flex-direction:column; gap:10px}.assistant-context {padding:15px 18px; overflow:visible; min-height:155px}.assistant-back {font-size:10px}.assistant-context-heading {margin:15px 0 0}.assistant-context-heading .assistant-eyebrow {margin:0 0 7px}.assistant-context h1 {font-size:30px}.assistant-context h1 span {display:none}.assistant-character-area {position:absolute; right:3px; top:2px; width:150px; height:150px; margin:0; min-height:0}.assistant-context-details {margin-top:15px; padding-top:12px; display:grid; grid-template-columns:1fr 1fr; gap:6px 15px}.assistant-context-details label {grid-column:1; font-size:8px}.assistant-context-details select {grid-column:1; grid-row:2; padding:8px 5px; font-size:11px}.assistant-context-details p {display:none}.assistant-context-details small {grid-column:2; grid-row:1/3; align-self:center; font-size:9px}.assistant-human {padding-top:12px; margin-top:12px; display:flex; align-items:center; gap:15px}.assistant-human p,.assistant-human small {display:none}.assistant-human a {font-size:12px; flex:1}.assistant-chat {height:calc(100svh - 96px); min-height:550px}.assistant-chat-header {padding:16px; gap:10px}.assistant-connection {font-size:8px}.assistant-chat-header p {font-size:10px; line-height:1.4; max-width:175px}.assistant-workspace .assistant-new {font-size:10px; padding:8px}.assistant-feed {padding:20px}.assistant-empty h2 {font-size:35px}.assistant-empty>p:not(.assistant-eyebrow) {font-size:12px}.assistant-suggestions {margin-top:24px}.assistant-workspace .assistant-suggestions button {padding:12px 32px 12px 12px}.assistant-workspace textarea {font-size:16px}.assistant-composer-meta span:first-child {max-width:230px}.assistant-privacy {font-size:8px}.assistant-answer>p {font-size:13px}.assistant-question {max-width:95%}.assistant-source-body {padding-left:0}.assistant-document {margin:25px 5px}.assistant-document h1 {font-size:30px}.assistant-document pre {font-size:13px}}

.assistant-page .assistant-workspace textarea:focus-visible {outline:none}
