.assistant-view { --assistant-soft: #eeebfc; --assistant-ink: #503990; --assistant-error: #a73249; --assistant-error-bg: #fff1f3; --assistant-subtle: #f8f9fc; }
.assistant-view .page-heading p { max-width: 700px; }
.assistant-private { padding: .45rem .7rem; border: 1px solid var(--border); border-radius: 7px; color: var(--muted); font-size: .75rem; white-space: nowrap; }
.assistant-ai-note { display: flex; gap: 1.25rem; justify-content: space-between; align-items: center; padding: 1rem 1.2rem; margin-bottom: 1.7rem; border: 1px solid var(--border); border-radius: 11px; background: var(--surface, #fff); }
.assistant-ai-note strong { font-size: .875rem; font-weight: 600; }
.assistant-ai-note p { margin: .3rem 0 0; font-size: .75rem; color: var(--muted); }
.assistant-ai-note .button { flex-shrink: 0; }
.assistant-section-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .65rem 1rem; margin-bottom: 1rem; }
.assistant-section-heading .eyebrow { font-size: .65rem; margin-bottom: .6rem; }
.assistant-task-section { margin-bottom: 1.8rem; }
.assistant-tasks { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .65rem; }
.assistant-task { display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; min-height: 83px; text-align: left; padding: .8rem .85rem; border: 1px solid var(--border); border-radius: 10px; background: var(--surface, #fff); color: inherit; }
.assistant-task strong { font-size: .8125rem; line-height: 1.35; font-weight: 550; overflow-wrap: anywhere; }
.assistant-task-number { color: var(--muted); font-size: .65rem; font-variant-numeric: tabular-nums; }
.assistant-task:hover { border-color: var(--accent); }
.assistant-task[aria-pressed="true"] { background: var(--assistant-soft); border-color: var(--accent); color: var(--assistant-ink); box-shadow: inset 0 0 0 1px var(--accent); }
.assistant-task[aria-pressed="true"] .assistant-task-number { color: var(--assistant-ink); }
.assistant-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.4rem; align-items: start; }
.assistant-editor, .assistant-result { min-width: 0; margin: 0; }
.assistant-field { margin-bottom: 1.2rem; }
.assistant-field textarea, .assistant-field select { font-size: .875rem; }
.assistant-counter { display: block; text-align: right; margin: .35rem 0; font-size: .6875rem; color: var(--muted); }
.assistant-helper { color: var(--muted); font-size: .75rem; line-height: 1.6; margin: .45rem 0 0; }
.assistant-editor > .assistant-helper { font-size: .8125rem; margin: -.35rem 0 1.35rem; }
.assistant-source-actions { display: flex; justify-content: space-between; align-items: start; flex-wrap: wrap; gap: .25rem .75rem; }
.assistant-source-actions .assistant-helper { flex: 1 1 220px; }
.assistant-source-actions .text-button { padding: .45rem 0 0; font-size: .75rem; }
.assistant-form-actions, .assistant-result-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin-top: 1.1rem; }
.assistant-form-actions .button, .assistant-result-actions .button { white-space: normal; min-height: 44px; }
.assistant-message { padding: .85rem 1rem; background: var(--assistant-soft); color: var(--assistant-ink); border: 1px solid var(--border); border-radius: 8px; font-size: .8125rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.assistant-message.is-error { color: var(--assistant-error); background: var(--assistant-error-bg); }
.assistant-helper.is-error { color: var(--assistant-error); }
.assistant-overwrite { padding: 1rem; border: 1px solid var(--accent); border-radius: 9px; background: var(--assistant-soft); color: var(--assistant-ink); }
.assistant-overwrite p { font-size: .8125rem; margin: 0 0 .6rem; }
.assistant-overwrite > div { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.assistant-result-empty { display: flex; min-height: 390px; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 2.2rem 1.2rem; }
.assistant-result-mark { display: grid; place-items: center; width: 62px; height: 62px; font-size: 2.5rem; border-radius: 18px; margin-bottom: 1.4rem; background: var(--assistant-soft); color: var(--assistant-ink); }
.assistant-result-empty h3 { font-size: 1rem; font-weight: 550; max-width: 300px; }
.assistant-result-empty p { font-size: .8125rem; color: var(--muted); max-width: 315px; margin: .15rem 0 0; }
.assistant-result-top { display: flex; justify-content: space-between; gap: .6rem 1rem; align-items: start; flex-wrap: wrap; }
.assistant-result-top h3 { font-size: 1rem; line-height: 1.5; margin: 0; overflow-wrap: anywhere; flex: 1 1 180px; }
.assistant-status { display: inline-flex; font-size: .65rem; font-weight: 500; padding: .25rem .45rem; border: 1px solid var(--border); border-radius: 5px; color: var(--muted); background: var(--assistant-subtle); white-space: nowrap; }
.assistant-status[data-status="queued"], .assistant-status[data-status="running"], .assistant-status[data-status="completed"] { background: var(--assistant-soft); color: var(--assistant-ink); border-color: transparent; }
.assistant-status[data-status="error"] { background: var(--assistant-error-bg); color: var(--assistant-error); }
.assistant-result-brief { padding: .7rem 0 1rem; margin: .25rem 0 1rem; font-size: .75rem; color: var(--muted); border-bottom: 1px solid var(--border); white-space: pre-wrap; overflow-wrap: anywhere; max-height: 130px; overflow-y: auto; }
.assistant-result-text { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .9rem; line-height: 1.8; max-height: 850px; overflow-y: auto; padding: .2rem .35rem .2rem 0; }
.assistant-result-text:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; border-radius: 3px; }
.assistant-result-notes { font-size: .75rem; color: var(--muted); background: var(--assistant-subtle); border: 1px solid var(--border); border-radius: 8px; padding: .9rem; margin: 1rem 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.assistant-waiting { padding: 1rem; border: 1px solid var(--border); border-radius: 9px; font-size: .8125rem; color: var(--muted); background: var(--assistant-subtle); margin: 1rem 0; }
.assistant-history-section { margin: 2rem 0; }
.assistant-history-section > .assistant-helper { margin: -.55rem 0 1rem; }
.assistant-history { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.assistant-history-item { display: flex; flex-direction: column; align-items: stretch; text-align: left; gap: .6rem; min-width: 0; padding: 1rem; border: 1px solid var(--border); border-radius: 10px; background: var(--surface, #fff); color: inherit; }
.assistant-history-item:hover { border-color: var(--accent); }
.assistant-history-item[aria-pressed="true"] { border-color: var(--accent); background: var(--assistant-subtle); }
.assistant-history-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .4rem; }
.assistant-history-top strong { font-size: .8125rem; font-weight: 550; }
.assistant-history-brief { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; font-size: .75rem; line-height: 1.6; color: var(--muted); min-height: 2.4em; }
.assistant-history-item time { font-size: .65rem; color: var(--muted); margin-top: auto; }
.assistant-history-empty { border: 1px dashed var(--border); border-radius: 10px; padding: 1.5rem; text-align: center; color: var(--muted); font-size: .8125rem; }
:root[data-theme="dark"] .assistant-view { --assistant-soft: #302943; --assistant-ink: #d1c0ff; --assistant-error: #ffacb8; --assistant-error-bg: #382633; --assistant-subtle: #202a3c; }
@media (max-width: 1250px) { .assistant-tasks { grid-template-columns: repeat(4, minmax(0, 1fr)); } .assistant-history { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 980px) { .assistant-workspace { grid-template-columns: 1fr; } .assistant-result-empty { min-height: 240px; } }
@media (max-width: 720px) { .assistant-tasks { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; } .assistant-task { padding: .65rem .7rem; min-height: 78px; } .assistant-ai-note { flex-wrap: wrap; } .assistant-private { display: none; } .assistant-history { grid-template-columns: 1fr; } .assistant-form-actions, .assistant-result-actions { gap: .5rem .75rem; } .assistant-result-actions .button { flex: 1 1 auto; } }
@media (max-width: 380px) { .assistant-tasks { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
