/* Native agent controls share the session's theme and responsive layout. */
#sf-bar,#sf-attention,#sf-queue{flex-shrink:0}#sf-attention:empty,#sf-queue:empty,#sf-suggestions:empty{display:none}.sf-session-tools,.sf-actions,.sf-kind-tabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sf-session-tools{padding:7px 20px;border-bottom:1px solid var(--ss-line);font-size:10px}.sf-session-tools .ss-button{font-size:10px;padding:4px 8px}.sf-goal-bar{display:flex;align-items:center;gap:8px;padding:8px 20px;border-bottom:1px solid var(--ss-line);background:color-mix(in srgb,var(--accent) 7%,transparent)}.sf-goal-bar p{flex:1;min-width:0;margin:0}.sf-goal-bar b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-goal-bar small,.sf-muted{font-size:10px;line-height:1.6;color:var(--ss-muted,var(--muted))}.sf-message-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:9px}.sf-message-actions .ss-button{font-size:9px;padding:3px 6px;background:transparent;border-color:transparent}.sf-message-actions .ss-button:hover{border-color:var(--ss-line)}.sf-message-actions button:disabled{opacity:.4}.sf-feature-error{font-size:10px;padding:5px 20px;margin:0;color:var(--ss-muted)}.sf-attention{margin:7px 20px;padding:10px 12px;border:1px solid var(--accent);border-radius:8px;background:var(--ss-panel,var(--panel));font-size:11px}.sf-attention header{display:flex;gap:10px;flex-wrap:wrap}.sf-attention header>span{font-size:9px;text-transform:uppercase;color:var(--accent)}.sf-attention p{margin:7px 0}#sf-attention{max-height:27vh;overflow:auto}.sf-queue{margin:5px 20px;border:1px solid var(--ss-line);border-radius:8px;padding:7px 10px;font-size:10px;max-height:150px;overflow:auto}.sf-queue summary{cursor:pointer}.sf-queue-row{display:flex;align-items:center;gap:6px;padding:6px 0;border-top:1px solid var(--ss-line);margin-top:5px}.sf-queue-row p{flex:1;min-width:0;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-queue-row .ss-button{font-size:9px;padding:3px 5px}.sf-delivery{display:flex;align-items:center;gap:5px;margin:0 0 5px;font-size:9px;color:var(--ss-muted)}.sf-delivery select{font:inherit;color:var(--ss-text,var(--text));background:var(--ss-panel,var(--panel));border:1px solid var(--ss-line);border-radius:5px;padding:4px 6px}.sf-plan ol{list-style:none;padding:0;margin:10px 0}.sf-plan li{display:flex;gap:9px;padding:8px 0;font-size:11px;border-bottom:1px solid var(--ss-line)}.sf-plan li>span{color:var(--accent)}.sf-plan small{display:block;color:var(--ss-muted);font-size:9px;margin-top:3px}.sf-plan .completed{opacity:.65}.sf-plan .in_progress{font-weight:600}.sf-plan p{font-size:11px}.sf-turn-diff{font-size:11px;border:1px solid var(--ss-line);border-radius:8px;padding:10px}.sf-diff{max-height:360px;overflow:auto;white-space:pre;font:10px/1.6 ui-monospace,monospace}.sf-diff span{display:block}.sf-diff .added{color:#75bb98}.sf-diff .removed{color:#d49a8e}.sf-diff .hunk{color:#92adcb}.sf-task,.sf-integration,.sf-checkpoint,.sf-schedule{padding:10px 0;border-bottom:1px solid var(--ss-line);font-size:11px}.sf-task header,.sf-integration header{display:flex;justify-content:space-between;gap:8px}.sf-task small,.sf-integration small,.sf-checkpoint small,.sf-schedule small{display:block;font-size:9px;color:var(--ss-muted);margin:5px 0}.sf-task p,.sf-integration p{font-size:10px;line-height:1.6}.sf-task details{margin:8px 0}.sf-section>h3{display:flex;gap:8px}.sf-section .ss-button{font-size:10px;margin-top:5px}.sf-context-meter b,.sf-context-meter small,.sf-context-meter meter{display:block;width:100%;margin:6px 0}.sf-context-meter b{font-size:11px}.sf-context-meter small{font-size:10px;color:var(--ss-muted)}.sf-capabilities{list-style:none;padding:0;margin:8px 0}.sf-capabilities li{font-size:10px;padding:7px 0;border-bottom:1px solid var(--ss-line)}.sf-capabilities small{display:block;font-size:9px;color:var(--ss-muted);margin-top:3px}.sf-path{overflow-wrap:anywhere}.sf-resource{display:block;margin:8px 0;font-size:11px;overflow-wrap:anywhere}.sf-result-image{display:block;max-width:100%;max-height:420px;object-fit:contain;border-radius:7px}.sf-dialog{color:var(--ss-text,var(--text));background:var(--ss-panel,var(--panel));border:1px solid var(--ss-line);border-radius:14px;padding:0;width:min(560px,calc(100vw - 28px));max-height:85vh;overflow:auto;box-shadow:0 24px 80px #0008}.sf-dialog::backdrop{background:#0008}.sf-dialog form{padding:20px}.sf-dialog header,.sf-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.sf-dialog h2{font-size:17px;margin:0}.sf-dialog header{margin-bottom:18px}.sf-dialog footer{justify-content:flex-end;margin-top:18px}.sf-field{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:11px}.sf-field input,.sf-field textarea,.sf-field select{font:12px/1.6 inherit;background:var(--ss-bg,var(--bg));border:1px solid var(--ss-line);color:inherit;border-radius:7px;padding:9px;width:100%;box-sizing:border-box}.sf-field textarea{font:12px/1.6 inherit;resize:vertical;min-height:80px}.sf-dialog blockquote{border-left:2px solid var(--accent);padding:8px 12px;margin:12px 0;font-size:11px;white-space:pre-wrap}.sf-question{margin:12px 0;padding:12px;border:1px solid var(--ss-line);border-radius:8px}.sf-question legend{font-size:12px;font-weight:600}.sf-answer-option{display:flex;align-items:flex-start;gap:9px;padding:8px 0;font-size:12px}.sf-answer-option input{margin-top:3px}.sf-answer-option small{display:block;font-size:10px;color:var(--ss-muted);margin-top:4px}.sf-palette{display:flex;flex-direction:column;gap:4px}.sf-palette .ss-button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px;text-align:left}.sf-palette span{font-size:10px;color:var(--ss-muted)}#sf-suggestions{position:absolute;bottom:100%;left:12px;right:12px;z-index:8;padding:6px;border:1px solid var(--ss-line);border-radius:9px;background:var(--ss-panel,var(--panel));max-height:260px;overflow:auto;box-shadow:0 10px 35px #0005}#sf-suggestions .ss-button{display:block;text-align:left;width:100%;margin:3px 0;font-size:11px}#sf-suggestions small{display:block;font-size:9px;opacity:.7}.sf-request-text{white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.7 ui-monospace,monospace}.sf-kind-tabs [aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.ss-context-tabs{flex-wrap:wrap}.ss-context-tabs button{flex:0 1 auto}.sf-section details>summary{cursor:pointer;font-size:11px}.sf-section button:disabled{opacity:.45}
@media(max-width:640px){.sf-session-tools{padding:6px 12px;gap:4px}.sf-session-tools .ss-button{font-size:9px}.sf-goal-bar{padding:7px 12px}.sf-attention,.sf-queue{margin-left:12px;margin-right:12px}.sf-dialog form{padding:16px}.sf-message-actions{gap:2px}.sf-message-actions .ss-button{font-size:9px}.sf-goal-bar>.ss-button{font-size:9px;padding:4px}}
.sf-artifact{padding:10px 0;border-bottom:1px solid var(--ss-line)}.sf-artifact>b,.sf-artifact>small{display:block;font-size:11px;margin:7px 0;overflow-wrap:anywhere}.sf-artifact>small{font-size:9px;color:var(--ss-muted)}.sf-artifact>a.ss-button{display:inline-block;text-decoration:none;font-size:10px}

/* Native tools are a quiet toolbar, with detailed controls opened on demand. */
.sf-session-tools{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:5px;padding:7px 20px;min-height:42px;background:color-mix(in srgb,var(--ss-panel) 60%,transparent)}
.sf-session-tools .ss-button{flex:0 0 auto;border-color:transparent;background:transparent;font-size:11px;padding:5px 8px;border-radius:7px;min-height:27px}
.sf-session-tools .ss-button:hover{background:var(--ss-raised);border-color:var(--ss-line)}
.sf-session-tools .ss-button:first-child{color:var(--ss-green,var(--accent))}
.sf-goal-bar{padding:9px 20px;gap:9px}
.sf-goal-bar b{font-size:12px;line-height:1.5}
.sf-goal-bar small,.sf-muted{font-size:11px;line-height:1.65}
.sf-goal-bar>.ss-button{padding:5px 8px;font-size:10px}
.sf-message-actions{gap:3px;margin-top:10px;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--ss-line) 60%,transparent)}
.sf-message-actions .ss-button{font-size:10px;padding:4px 7px;min-height:25px;color:var(--ss-muted)}
.sf-message-actions .ss-button:hover{color:var(--ss-text)}
.sf-message-actions button:disabled,.sf-section button:disabled,.sf-dialog button:disabled{cursor:not-allowed}
.sf-section .ss-button{font-size:11px}
.sf-section details>summary{font-size:12px}
.sf-task,.sf-integration,.sf-checkpoint,.sf-schedule{font-size:12px;padding:13px 0}
.sf-task p,.sf-integration p{font-size:11px;line-height:1.7}
.sf-task small,.sf-integration small,.sf-checkpoint small,.sf-schedule small,.sf-artifact>small{font-size:10px;line-height:1.65}
.sf-dialog{border-radius:17px;max-height:min(85dvh,780px);box-shadow:0 20px 80px #0006;animation:ss-popover-in .13s ease-out}
.sf-dialog::backdrop{background:#03090d99;backdrop-filter:blur(3px)}
.sf-dialog form{padding:23px}
.sf-dialog h2{font-size:19px;letter-spacing:-.35px}
.sf-dialog header{margin-bottom:20px}
.sf-dialog footer{padding-top:15px;border-top:1px solid var(--ss-line);gap:8px}
.sf-field{font-size:12px;gap:7px;margin:14px 0}
.sf-field input,.sf-field select,.sf-field textarea{font:inherit;font-size:13px;line-height:1.6;padding:10px 11px;border-radius:9px;min-height:41px}
.sf-field textarea{min-height:96px}
.sf-question{border-radius:11px;padding:13px}
.sf-question legend{font-size:13px}
.sf-answer-option{padding:10px 0;font-size:13px;line-height:1.65}
.sf-answer-option small{font-size:11px}
.sf-attention{border-color:color-mix(in srgb,var(--accent) 50%,var(--ss-line));border-radius:11px;padding:12px 14px;font-size:12px}
.sf-feature-error{font-size:11px;line-height:1.7;padding:6px 20px}
#sf-suggestions{left:0;right:0;bottom:calc(100% + 8px);padding:6px;border-radius:13px;max-height:min(300px,40dvh);box-shadow:0 12px 40px #0005;scrollbar-width:thin;animation:ss-popover-in .12s ease-out}
#sf-suggestions .ss-button{margin:2px 0;padding:9px 11px;border:1px solid transparent;background:transparent;border-radius:8px;font-size:13px;color:var(--ss-text)}
#sf-suggestions .ss-button:hover,#sf-suggestions .ss-button:focus-visible{background:var(--ss-raised);border-color:var(--ss-line)}
#sf-suggestions .ss-suggestion-active,#sf-suggestions .sf-suggestion-active,#sf-suggestions .ss-button[aria-current=true]{background:color-mix(in srgb,var(--ss-blue) 12%,var(--ss-panel));border-color:color-mix(in srgb,var(--ss-blue) 45%,var(--ss-line))}
#sf-suggestions small{font-size:11px;line-height:1.65;opacity:1;color:var(--ss-muted);margin-top:2px}
.ss-context-tabs{flex-wrap:nowrap}
.ss-context-tabs button{flex:0 0 auto}

/* File changes are readable even when there is no separate Git workspace diff. */
.sf-turn-diff{padding:0;border:1px solid var(--ss-line);border-radius:11px;overflow:hidden;font-size:12px;background:var(--ss-panel,var(--panel));margin:9px 0}
.sf-turn-diff>summary,.sf-diff-file>summary{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:40px;padding:10px 12px;list-style:none;background:color-mix(in srgb,var(--ss-raised,var(--raised)) 65%,transparent)}
.sf-turn-diff>summary::-webkit-details-marker,.sf-diff-file>summary::-webkit-details-marker{display:none}
.sf-turn-diff>summary:before,.sf-diff-file>summary:before{content:'›';flex:0 0 9px;font-size:16px;line-height:1;color:var(--ss-muted);transform:rotate(0);transition:transform .12s ease}
.sf-turn-diff[open]>summary:before,.sf-diff-file[open]>summary:before{transform:rotate(90deg)}
.sf-turn-diff>summary>b,.sf-diff-file>summary>b{flex:1;min-width:0;overflow-wrap:anywhere;font-size:11px;font-weight:500}
.sf-turn-diff>summary>small{font-size:9px;color:var(--ss-muted);white-space:nowrap}
.sf-diff-count{font:11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap;font-weight:600}
.sf-diff-count.added{color:var(--ss-green,var(--accent))}
.sf-diff-count.removed{color:var(--red)}
.sf-diff-file{border-top:1px solid var(--ss-line)}
.sf-diff-file>summary{min-height:38px;background:transparent}
.sf-diff-file>summary:hover{background:color-mix(in srgb,var(--ss-raised,var(--raised)) 70%,transparent)}
.sf-diff-file>summary>b{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}
.sf-diff{margin:0;padding:0;max-height:480px;overflow:auto;font:11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;background:var(--ss-bg,var(--bg));tab-size:4;scrollbar-width:thin}
.sf-diff .sf-diff-line{display:grid;grid-template-columns:38px 38px minmax(max-content,1fr);min-width:100%;width:max-content;min-height:20px;color:var(--ss-text,var(--text));background:transparent}
.sf-diff .sf-diff-line.added{background:color-mix(in srgb,var(--ss-green,var(--accent)) 10%,transparent);color:var(--ss-green,var(--accent))}
.sf-diff .sf-diff-line.removed{background:color-mix(in srgb,var(--red) 10%,transparent);color:var(--red)}
.sf-diff .sf-diff-line.hunk{background:color-mix(in srgb,var(--ss-blue,var(--blue)) 9%,transparent);color:var(--ss-blue,var(--blue));font-size:10px}
.sf-diff .sf-diff-line.header{color:var(--ss-muted);font-size:10px}
.sf-diff .sf-line-number{text-align:right;padding:0 7px 0 3px;color:var(--ss-muted);font-size:10px;user-select:none;opacity:.75;border-right:1px solid color-mix(in srgb,var(--ss-line) 60%,transparent)}
.sf-diff .sf-diff-line>code{display:block;white-space:pre;font:inherit;padding:0 12px 0 9px;background:none;color:inherit;border:0}
.sf-diff-files:empty{display:none}
@media(max-width:640px){.sf-session-tools{padding:5px 10px;gap:3px;min-height:38px}.sf-session-tools .ss-button{font-size:10px;padding:5px 7px;min-height:27px}.sf-goal-bar{padding:8px 12px;gap:6px}.sf-goal-bar b{font-size:11px}.sf-message-actions{gap:2px}.sf-message-actions .ss-button{font-size:10px;min-height:28px;padding:4px 6px}.sf-dialog{width:calc(100vw - 20px);border-radius:14px;max-height:90dvh}.sf-dialog form{padding:18px}.sf-field input,.sf-field select,.sf-field textarea{font-size:16px}.sf-diff .sf-diff-line{grid-template-columns:30px 30px minmax(max-content,1fr)}.sf-diff{font-size:10px;max-height:340px}.sf-turn-diff>summary,.sf-diff-file>summary{gap:6px;padding:9px}.sf-diff-count{font-size:10px}.sf-feature-error{padding:6px 12px}}
@media(prefers-reduced-motion:reduce){.sf-dialog,#sf-suggestions,.sf-turn-diff>summary:before,.sf-diff-file>summary:before{animation:none;transition:none}}

/* Controls reveal detail without turning every message into a control panel. */
.sf-session-tools{padding:3px 20px 7px;min-height:35px;background:var(--ss-bg);gap:5px;scrollbar-width:thin;border-bottom-color:var(--ss-line)}
.sf-session-tools .ss-button{font-size:11px;padding:4px 7px;min-height:26px;color:var(--ss-muted)}
.sf-session-tools .ss-button:first-child{color:var(--ss-text)}
.sf-session-tools .ss-button:disabled{opacity:.65}
.sf-session-tools .sf-muted{font-size:11px;white-space:nowrap}
.sf-goal-bar{padding:7px 24px;background:color-mix(in srgb,var(--ss-green) 5%,var(--ss-bg));border-bottom-color:var(--ss-line)}
.sf-goal-bar b{font-size:12px;font-weight:500}
.sf-goal-bar small{font-size:10px}
.sf-message-actions{border:0;gap:3px;margin-top:6px;padding-top:0}
.sf-message-actions .ss-button{padding:3px 5px;font-size:10px;min-height:23px;color:var(--ss-muted);border:1px solid transparent;border-radius:5px;background:transparent;line-height:1.3}
.sf-message-actions .ss-button:hover{background:var(--ss-raised);border-color:var(--ss-line)}
.sf-message-actions button:disabled{opacity:.5}
.sf-turn-diff{margin:5px 0;border-radius:9px;background:var(--ss-panel);border-color:var(--ss-line)}
.sf-turn-diff>summary,.sf-diff-file>summary{min-height:36px;padding:8px 11px;gap:8px;background:transparent;line-height:1.5}
.sf-turn-diff>summary:hover,.sf-diff-file>summary:hover{background:var(--ss-raised)}
.sf-turn-diff>summary>b{font-size:12px;font-weight:500}
.sf-turn-diff>summary>small{font-size:10px;white-space:normal;text-align:right}
.sf-diff-count{font-size:11px;font-variant-numeric:tabular-nums}
.sf-diff-file>summary>b{font-size:11px}
.sf-diff{max-height:420px}
.sf-attention{font-size:12px;margin:8px 24px;border-radius:9px;background:var(--ss-panel)}
.sf-queue{margin:6px auto;max-width:var(--ss-measure);width:calc(100% - var(--ss-gutter) * 2);padding:7px 11px;background:var(--ss-panel);font-size:11px}
.sf-queue-row{padding:7px 0;font-size:11px}
.sf-feature-error{font-size:11px;padding:5px 24px}
.sf-dialog{border-radius:14px;background:var(--ss-panel);border-color:var(--ss-line);box-shadow:0 24px 70px #0005}
.sf-dialog h2{font-size:18px;letter-spacing:-.25px}
.sf-dialog header{margin-bottom:16px}
.sf-dialog footer{padding-top:14px;margin-top:17px}
.sf-field{font-size:12px}
.sf-palette{gap:3px}
.sf-palette .ss-button{padding:10px 12px;font-size:13px;border-color:transparent;background:transparent}
.sf-palette .ss-button:hover{background:var(--ss-raised);border-color:var(--ss-line)}
.sf-palette span{font-size:11px}
#sf-suggestions{border-radius:12px;background:var(--ss-panel);border-color:var(--ss-line);box-shadow:0 12px 36px #0004}
#sf-suggestions .ss-button{font-size:13px;border-radius:7px;padding:8px 11px}
#sf-suggestions small{font-size:11px}
.ss-context-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:10px;border-bottom:1px solid var(--ss-line);min-height:0;overflow:visible;background:var(--ss-panel)}
.ss-context-tabs button{min-width:0;min-height:31px;font-size:11px;line-height:1.3;padding:7px 3px;border:0;border-radius:6px;color:var(--ss-muted);white-space:nowrap;background:transparent}
.ss-context-tabs button:hover{background:var(--ss-raised);color:var(--ss-text)}
.ss-context-tabs button.selected{background:var(--ss-raised);color:var(--ss-text);box-shadow:inset 0 0 0 1px var(--ss-line);border:0}
.ss-context-tabs .ss-context-close{display:block;margin:0;padding:4px;font-size:18px;min-width:0;min-height:31px;line-height:1}
.sf-section .ss-button{font-size:11px}
.sf-task,.sf-integration,.sf-checkpoint,.sf-schedule{padding:12px 0;font-size:12px}
.sf-task small,.sf-integration small,.sf-checkpoint small,.sf-schedule small{font-size:11px}
.sf-context-meter b{font-size:13px;font-weight:500}
.sf-context-meter small{font-size:11px}
@media(max-width:640px){
  .sf-session-tools{padding:3px 9px 6px;gap:4px;min-height:33px}
  .sf-session-tools .ss-button{font-size:11px;min-height:26px;padding:4px 6px}
  .sf-goal-bar{padding:7px 14px}
  .sf-goal-bar b{font-size:11px}
  .sf-message-actions{margin-top:5px;gap:4px}
  .sf-message-actions .ss-button{font-size:10px;padding:4px 5px;min-height:26px}
  .sf-attention{margin:6px 14px;padding:10px 12px}
  .sf-feature-error{padding:5px 14px}
  .sf-turn-diff>summary{flex-wrap:wrap;column-gap:6px;row-gap:2px}
  .sf-turn-diff>summary>b{font-size:12px;flex:1;min-width:100px}
  .sf-turn-diff>summary>small{font-size:9px}
  .sf-diff-file>summary>b{font-size:10px}
  .ss-context-tabs{padding:9px;gap:3px}
  .ss-context-tabs button{min-height:37px;font-size:12px;padding:8px 3px}
  .sf-dialog form{padding:18px}
}

/* Editing belongs to the message; its form survives live transcript updates. */
.sf-inline-editing>.ss-message-footer,.sf-inline-editing>.sf-message-actions,.sf-inline-editing>.ss-prompt,.sf-inline-editing>.ss-load-full{display:none!important}
.sf-inline-editor{margin:0;min-width:0;white-space:normal}
.ss-conversation:has(.sf-inline-editor) .ss-latest{display:none}
.sf-inline-editor textarea{display:block;width:100%;box-sizing:border-box;min-height:44px;max-height:min(440px,48dvh);resize:none;overflow:auto;overscroll-behavior:contain;padding:10px 12px;border:1px solid var(--ss-line);border-radius:10px;background:var(--ss-bg);color:var(--ss-text);font:inherit;line-height:1.6;caret-color:var(--ss-text);outline:none;transition:none}
.sf-inline-editor textarea:focus{border-color:var(--ss-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--ss-blue) 20%,transparent)}
.sf-inline-editor textarea[readonly]{cursor:text}
.sf-inline-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:8px;min-width:0}
.sf-inline-actions>.ss-button{flex:none;min-height:32px;padding:6px 10px;font-size:11px;line-height:1.4;border-radius:8px}
.sf-inline-status{flex:1;min-width:0;color:var(--ss-muted);font-size:10px;line-height:1.45;white-space:normal}
.sf-inline-error{margin:8px 0 0;color:var(--red);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.sf-inline-editor.is-pending .sf-inline-status{color:var(--ss-text)}
@media(max-width:640px){
  .sf-inline-editor textarea{font-size:16px;padding:9px 10px;max-height:45dvh}
  .sf-inline-actions{flex-wrap:wrap;gap:6px}
  .sf-inline-actions>.ss-button{min-height:42px;padding:8px 12px;font-size:12px}
  .sf-inline-status{flex-basis:100%;font-size:10px}
}

/* Goals use a compact composer companion, keeping the conversation interactive. */
.sf-goal-editor{flex:none;min-width:0;max-height:min(360px,48dvh);overflow:auto;overscroll-behavior:contain;margin:6px 24px 0;padding:10px 12px;border:1px solid var(--ss-line);border-radius:12px;background:var(--ss-panel);color:var(--ss-text)}
.sf-goal-editor header,.sf-goal-editor footer{display:flex;align-items:center;gap:8px;min-width:0}
.sf-goal-editor header{justify-content:space-between;margin-bottom:6px}
.sf-goal-editor h3{display:flex;align-items:center;gap:7px;margin:0;font-size:12px;font-weight:600}
.sf-goal-editor h3 span{color:var(--ss-green)}
.sf-goal-editor .sf-goal-cancel{border:0;background:transparent;color:var(--ss-muted);min-width:30px;min-height:28px;padding:3px;font-size:19px}
.sf-goal-editor textarea{display:block;width:100%;box-sizing:border-box;min-height:44px;max-height:150px;resize:none;overflow:auto;overscroll-behavior:contain;padding:9px 10px;border:1px solid var(--ss-line);border-radius:8px;background:var(--ss-bg);color:inherit;font:inherit;font-size:13px;line-height:1.5;outline:none;transition:none}
.sf-goal-editor textarea:focus{border-color:var(--ss-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--ss-blue) 15%,transparent)}
.sf-goal-editor footer{margin-top:8px;flex-wrap:wrap}
.sf-goal-editor footer .sf-muted{flex:1;min-width:120px;margin:0;font-size:10px;line-height:1.5}
.sf-goal-editor footer .ss-button{flex:none;min-height:32px;padding:5px 10px;font-size:11px}
.sf-goal-budget{margin-top:8px;font-size:11px;color:var(--ss-muted)}
.sf-goal-budget summary{cursor:pointer;width:fit-content;padding:3px 0}.sf-goal-budget summary span{opacity:.7;margin-left:5px}
.sf-goal-budget label{margin-right:8px}.sf-goal-budget input{width:140px;max-width:100%;box-sizing:border-box;margin-top:6px;padding:5px 8px;border:1px solid var(--ss-line);border-radius:6px;background:var(--ss-bg);color:var(--ss-text);font:inherit}
.sf-goal-error{margin:8px 0 0;color:var(--red);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:640px){
  .sf-goal-editor{margin:4px 10px 0;padding:8px 10px;max-height:44dvh;border-radius:10px}
  .sf-goal-editor textarea{font-size:16px;padding:8px;max-height:110px}
  .sf-goal-editor .sf-goal-cancel{min-width:36px;min-height:36px}
  .sf-goal-editor footer .ss-button{min-height:40px;font-size:12px}
  .sf-goal-editor footer .sf-muted{font-size:10px;min-width:90px}
  .sf-goal-budget input{font-size:16px}
}
