/* Keep the conversation readable and its composer available at every viewport. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog.hermes-panel[open]{display:flex;flex-direction:column;width:min(640px,100vw);height:100dvh;max-height:100dvh;padding:0;overflow:hidden;border:0;border-left:1px solid var(--line);box-shadow:-16px 0 64px #10261c20;background:#fbfcfa}
dialog.hermes-panel.expanded{width:min(1000px,100vw)}
.assistant-header{flex:none;padding:22px 24px;margin:0;border-bottom:1px solid var(--line);background:white}
.assistant-brand{display:flex;align-items:center;gap:12px;min-width:0}
.assistant-mark{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;background:#e4eee6;color:#245643;font:24px Georgia,serif}
.assistant-header h1,.assistant-header h2{font-size:18px;margin:0;letter-spacing:-.3px}
.assistant-brand p{font-size:12px;margin:3px 0 0;color:var(--muted)}
.assistant-heading-actions{flex-wrap:nowrap;align-items:center;gap:6px}
.assistant-heading-actions button{font-size:12px;padding:7px 9px;border-color:transparent}
.hermes-body{display:flex;flex:1;min-height:0;flex-direction:column;font-size:14px;line-height:1.65}
.assistant-thread-tools{flex:none;display:flex;align-items:center;gap:8px;padding:14px 24px 0;flex-wrap:wrap}
.assistant-thread-tools form{flex:1;min-width:140px;margin:0}
.assistant-thread-tools label{display:block;min-width:0;margin:0}
.assistant-thread-tools select{width:100%;margin:0;font-size:13px;background:transparent;border-color:transparent;text-overflow:ellipsis;padding:8px}
.assistant-thread-tools .button{padding:7px 11px;font-size:12px;background:white}
.assistant-tools{flex:none;padding:6px 26px 10px;font-size:12px}
.assistant-tools>details>summary{color:var(--muted);cursor:pointer;width:fit-content}
.assistant-tools nav{display:flex;gap:16px;margin-top:10px}
.assistant-handling{margin:8px 0 0;padding:8px 0;border:0;align-items:center}
.assistant-handling label{width:auto;font-size:12px}
.assistant-handling select{font-size:13px;margin:0;min-width:90px}
.assistant-handling button{padding:7px 10px}
[data-assistant-messages]{flex:1;min-height:80px;overflow:auto;overscroll-behavior:contain;padding:4px 24px 20px;scroll-padding:12px}
.assistant-thread{max-width:760px;margin:10px auto 0}
.assistant-turn{gap:22px;margin-bottom:30px}
.assistant-message{min-width:0;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.user-message{margin-left:14%;padding:12px 16px;background:#eaf0eb;border:1px solid #e0e8e1;border-radius:16px 16px 4px 16px}
.user-message .eyebrow{font-size:11px;letter-spacing:0;margin-bottom:3px;color:#42634c}
.user-message p{margin:0;white-space:pre-wrap}
.hermes-message{margin:0;padding:0 2px;border:0;border-radius:0}
.assistant-message-heading{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.assistant-message-heading>strong{font-size:14px;color:var(--green)}
.assistant-state{display:inline-block;padding:2px 8px;border-radius:6px;background:#edf0ec;font-size:11px;line-height:1.7;color:#496050}
.assistant-state[data-state=awaiting_approval],.assistant-state[data-state=awaiting_input]{background:#faf0d8;color:#775619}
.assistant-state[data-state=blocked],.assistant-state[data-state=failed]{background:#faeae6;color:#8d3828}
.assistant-prose p{margin:0 0 12px}.assistant-prose ul,.assistant-prose ol{padding-left:22px;margin:8px 0 14px}.assistant-prose li{margin:5px 0}.assistant-prose code{font-size:.9em;background:#edf0ec;padding:2px 4px;border-radius:3px;white-space:pre-wrap}
.hermes-message>.small{font-size:12px;color:var(--muted)}
[data-assistant-evidence]{border:1px solid var(--line);background:white;border-radius:9px;padding:9px 12px;margin:14px 0;font-size:12px}
[data-assistant-evidence] h3{font-size:14px;margin:14px 0 4px}
.hermes-message .difference{border:0;padding:0;margin-top:12px;font-size:11px;color:var(--muted)}
.assistant-proposal{border:1px solid #b6cdbb;border-radius:12px;background:white;padding:18px;margin:18px 0;box-shadow:0 3px 12px #173a2910}
.assistant-proposal h3{margin:8px 0 12px;font-size:16px}.assistant-proposal-heading .assistant-state{background:#faf0d8;color:#775619}
.assistant-change-list{display:block;margin:14px 0;background:#f7f9f6;border-radius:8px;padding:4px 12px}
.assistant-change-list>div{display:grid;grid-template-columns:minmax(80px,1fr) 3fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.assistant-change-list>div:last-child{border:0}
.assistant-change-list dt{font-size:12px;color:var(--muted)}.assistant-change-list dd{margin:0;white-space:pre-wrap}
.assistant-proposal form{display:flex;flex-wrap:wrap;gap:8px}.assistant-proposal button{font-size:13px;padding:9px 13px}
.assistant-before{display:block;color:var(--muted);margin-bottom:6px}.assistant-change-list dd{min-width:0;overflow-wrap:anywhere}.assistant-lines{overflow-x:auto;margin:14px 0;border:1px solid var(--line);border-radius:8px}.assistant-lines table{width:100%;min-width:440px;font-size:12px}.assistant-lines caption{text-align:left;font-weight:600;padding:10px}.assistant-lines th,.assistant-lines td{text-align:left;padding:8px;white-space:normal}.assistant-lines td{white-space:nowrap}.assistant-lines th[scope=row]{min-width:100px;overflow-wrap:anywhere}.assistant-lines:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.assistant-result[data-committed-effect]{border-left:3px solid #398254;padding-left:12px;margin:14px 0}.assistant-saved{display:block;color:#286d40;font-weight:650;font-size:12px}
.assistant-welcome{max-width:440px;margin:28px auto;text-align:center;color:var(--muted)}.assistant-welcome>.assistant-mark{margin:0 auto 18px;width:48px;height:48px;font-size:28px}
.assistant-welcome h3{font-size:23px;line-height:1.3;color:var(--ink);letter-spacing:-.5px}.assistant-welcome>p{font-size:14px}
.assistant-suggestions{display:grid;gap:9px;margin:24px 0}.assistant-suggestions button{text-align:left;background:white;font-size:13px;font-weight:500;border-color:var(--line);padding:13px 16px;border-radius:10px}.assistant-suggestions button:hover{border-color:#8fb19b;background:#f1f6ef}
.assistant-compose-region{flex:none;padding:12px 24px 10px;background:#fbfcfa;border-top:1px solid var(--line)}
.hermes-body .assistant-composer{position:static;margin:0!important;padding:12px;border:1px solid #b9cbbd;border-radius:14px;background:white;box-shadow:0 2px 6px #173a2908}
.assistant-composer:focus-within{border-color:#4f7d60;box-shadow:0 0 0 2px #4f7d6015}
.assistant-input textarea{display:block;resize:vertical;min-height:65px;max-height:20dvh;width:100%;margin:0;padding:3px 2px;border:0;border-radius:0;background:white;font-size:14px;line-height:1.6;box-shadow:none}
.assistant-input textarea:focus{outline:2px solid transparent}
.assistant-input textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.assistant-turn:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:8px}
.hermes-body summary,.hermes-body .text-button{min-height:24px;min-width:24px}
@media(forced-colors:active){.hermes-panel :focus-visible,.assistant-page :focus-visible{outline:2px solid Highlight!important;outline-offset:3px}.assistant-proposal,.assistant-composer{border:1px solid CanvasText!important}}
.assistant-compose-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;position:relative}
.assistant-language{margin:0;max-width:155px}.assistant-language select{margin:0;border:0;padding:5px 2px;background:white;font-size:12px;color:var(--muted)}
.assistant-compose-tools>details{font-size:12px;margin:0}.assistant-compose-tools>details summary{cursor:pointer;color:var(--muted)}
.assistant-compose-tools>details[open]{flex-basis:100%;order:3;padding:10px;background:#f6f8f5;border-radius:8px}.assistant-compose-tools>details p{margin:8px 0}
.hermes-body .assistant-compose-tools .assistant-send{width:auto;flex:none;margin-left:auto;padding:7px 16px;font-size:13px;border-radius:9px}.assistant-send span{margin-left:7px;font-size:16px}
.assistant-compose-note{display:flex;justify-content:space-between;gap:10px;margin:6px 2px 0;font-size:11px;color:var(--muted)}.assistant-compose-note button{font-size:11px;padding:0}
[data-draft-status]:empty,[data-assistant-panel]>[role=status]:empty{display:none}
[data-page-context-chip]{font-size:11px;margin:0 0 8px;background:#f0f5ee;padding:4px 8px;border-radius:6px}
.assistant-page{border:1px solid var(--line);border-radius:16px;overflow:hidden;max-width:960px;margin:auto;background:#fbfcfa}.assistant-page .hermes-body{min-height:65dvh}.assistant-page [data-assistant-messages]{max-height:60dvh}
@media(max-width:600px){dialog.hermes-panel[open]{width:100vw;max-width:100vw}.assistant-header{padding:15px 14px}.assistant-brand{gap:8px}.assistant-brand p{display:none}.assistant-header h2{font-size:16px}.assistant-heading-actions button{padding:7px 6px;font-size:11px}.assistant-thread-tools{padding:12px 14px 0}.assistant-tools{padding:6px 16px 8px}[data-assistant-messages]{padding:0 14px 16px}.assistant-compose-region{padding:10px 12px 8px}.assistant-input textarea{font-size:16px}.assistant-welcome{margin:20px auto}.assistant-welcome h3{font-size:21px}.assistant-proposal{padding:14px}.assistant-language{max-width:140px}.assistant-compose-tools{gap:6px}.assistant-compose-note{font-size:10px}.assistant-change-list>div{grid-template-columns:1fr 2fr}}
/* Notices in the drawer participate in layout so they cannot cover the composer. */
.hermes-panel>.update-toast{position:static;inset:auto;flex:none;width:auto;max-width:none;max-height:20dvh;overflow:auto;margin:8px 12px;transform:none}
.assistant-compose-note{align-items:flex-start;flex-wrap:wrap}.assistant-compose-note>span{flex:1;min-width:150px}.assistant-compose-note button{flex:none;max-width:100%}

/* Textual import changes remain readable without sideways scrolling on phones. */
.assistant-import-lines table{min-width:0;table-layout:fixed}.assistant-import-lines th,.assistant-import-lines td{white-space:normal;overflow-wrap:anywhere}.assistant-import-lines th[scope=row]{min-width:0;width:20%}.assistant-import-lines th:nth-child(1){width:20%}.assistant-import-lines th:nth-child(2){width:20%}.assistant-import-lines th:nth-child(3){width:60%}.assistant-import-lines th .small{display:block;font-weight:400;letter-spacing:normal}.assistant-import-lines td p{margin:0 0 8px}
