.ai-dialog{width:min(900px,94vw);max-height:90vh;overflow:auto;padding:24px;border:1px solid var(--theme-border, #bac7d5);border-radius:12px}.ai-dialog form{display:grid;gap:14px}.ai-dialog label{display:grid;gap:6px}.ai-dialog .check{display:flex;align-items:center}.ai-dialog textarea{min-height:90px}.ai-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.ai-grid .card{padding:16px}.ai-assist{padding:16px;border:1px solid var(--theme-border, #b8c9e2);background:var(--theme-accent-surface, #f5f8fd);border-radius:8px;margin-bottom:16px;min-width:0}.ai-text{white-space:pre-wrap;overflow-wrap:anywhere}.ai-result{padding:12px 0;border-bottom:1px solid var(--theme-border, #d8e0e8)}.ai-result pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;overflow:auto}.ai-result summary{cursor:pointer;font-weight:600}.ai-dialog input,.ai-dialog textarea,.ai-dialog select{max-width:100%;min-width:0}.ai-result h4{overflow-wrap:anywhere}@media(max-width:600px){.ai-grid{grid-template-columns:1fr}.ai-dialog{padding:14px}.ai-assist{padding:10px}}
.ai-dialog .drawer-head{position:sticky;top:-24px;z-index:2;margin:-24px -24px 16px;padding:16px 24px;background:var(--theme-surface, white)}.ai-dialog .drawer-head h2{margin:0}@media(max-width:600px){.ai-dialog .drawer-head{top:-14px;margin:-14px -14px 14px;padding:14px}}

.ai-change{align-items:flex-start;margin:12px 0}.ai-change>span{min-width:0}.ai-change .ai-text{display:block;font-weight:400}

.ai-wait{padding:18px;border:1px solid var(--theme-border, #cbdaf0);border-radius:10px;background:var(--theme-surface, #fff);margin:12px 0 4px;min-width:0}.ai-wait-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--theme-accent-text, #243c60)}.ai-wait-time{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums;color:var(--theme-text-muted, #526580)}.ai-wait-spinner{width:18px;height:18px;flex:none;border:2px solid var(--theme-border, #dce6f6);border-top-color:var(--theme-accent-border, #3568bc);border-radius:50%;animation:ai-spin 1s linear infinite}.ai-wait-track{height:3px;overflow:hidden;background:var(--theme-accent-surface, #eaf0fa);border-radius:4px;margin:15px 0}.ai-wait-track span{display:block;height:100%;width:35%;background:#7298d3;border-radius:4px;animation:ai-travel 2.6s ease-in-out infinite alternate}.ai-wait .ai-wait-note{font-size:13px;line-height:1.5;color:var(--theme-text-muted, #526580);margin:0 0 16px}.ai-wait-tip{display:flex;gap:16px;align-items:center;padding:14px;background:var(--theme-accent-surface, #f5f8fd);border-radius:8px}.ai-wait-tip>div{flex:1;min-width:0}.ai-wait-label{display:block;font-size:10px;letter-spacing:.1em;color:var(--theme-text-muted, #526580);margin-bottom:6px}.ai-wait-tip strong{display:block;font-size:14px}.ai-wait-tip p{margin:6px 0 0;font-size:13px;line-height:1.5}.ai-wait-tip button{flex:none;font-size:12px}.ai-wait .ai-wait-long{font-size:12px;color:var(--theme-text-muted, #526580);margin:14px 0 0}@keyframes ai-spin{to{transform:rotate(360deg)}}@keyframes ai-travel{from{transform:translateX(-100%)}to{transform:translateX(285%)}}@media(prefers-reduced-motion:reduce){.ai-wait-spinner,.ai-wait-track span{animation:none}}@media(max-width:600px){.ai-wait{padding:12px}.ai-wait-tip{align-items:flex-start;flex-direction:column;gap:10px}.ai-wait-time{margin-left:28px;flex-basis:100%}}
.ai-batch-dialog{width:min(1240px,96vw);max-width:96vw;height:92vh;max-height:94vh;padding:28px;border:1px solid var(--theme-border, #cbd5e1);border-radius:16px;overflow:auto}.ai-batch-dialog::backdrop{background:#0f172ab3}.batch-summary,.batch-pager{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:18px 0}.ai-batch-dialog progress{width:100%;height:8px;accent-color:#2563eb}.batch-slide{border:1px solid var(--theme-border, #cbd5e1);border-radius:12px;padding:24px;margin-top:20px;background:var(--theme-surface-subtle, #f8fafc)}.batch-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.batch-columns>section{min-width:0}.ai-batch-dialog details{margin:12px 0}.ai-batch-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow:auto}.ai-batch-dialog textarea{width:100%;min-height:100px}.batch-pager label{flex:1;min-width:160px}.batch-pager select{width:100%;max-width:100%}.batch-decision{padding:12px;background:var(--theme-accent-surface, #dbeafe);border-radius:6px}.batch-slide li,.batch-slide p{overflow-wrap:anywhere}.ai-batch-dialog h4{margin-bottom:6px}@media(max-width:700px){.ai-batch-dialog{padding:14px}.batch-columns{grid-template-columns:1fr;gap:16px}.batch-slide{padding:14px}.batch-summary{align-items:flex-start;flex-direction:column}.batch-pager label{order:-1;flex-basis:100%}}

.batch-focus{border:1px solid var(--theme-border, #cbd5e1);border-radius:10px;padding:16px;margin-top:20px;background:var(--theme-accent-surface, #f1f5f9)}.batch-focus h3{margin-top:0}.batch-focus .batch-pager{align-items:flex-end}.batch-focus label{min-width:0;flex-basis:240px}.batch-focus p{overflow-wrap:anywhere}
.batch-activity{background:var(--theme-accent-surface, #f0f6ff);margin:18px 0;border-color:var(--theme-border, #afc7ea)}.batch-activity p{margin:10px 0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.batch-activity [data-long-wait]{color:var(--theme-text-muted, #526580)}

.batch-review-status{display:flex;align-items:center;gap:10px;margin:12px 0;padding:12px;border-radius:6px;background:var(--theme-accent-surface, #eaf2ff);font-size:14px;line-height:1.5}

/* Shared drafting surface: one status, measured section progress, stable actions. */
.ai-assist .ai-assist-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.ai-assist .ai-assist-heading h3{margin:0;font-size:15px}
.ai-review-label{font-size:11px;color:var(--theme-text-muted, #526580);background:var(--theme-accent-surface, #e8eef8);border-radius:4px;padding:4px 7px}
.ai-assist .ai-assist-description{font-size:13px;line-height:1.5;margin:8px 0 12px;color:var(--theme-text-muted, #526580)}
.ai-assist-actions{display:flex;flex-wrap:wrap;gap:8px}
.ai-assist [data-status]{font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.ai-assist [data-status]:empty{display:none}
.ai-draft-progress{padding:12px;margin-top:12px;border:0;border-radius:6px;background:var(--theme-accent-surface, #edf2fa)}
.ai-draft-progress .ai-wait-heading{flex-wrap:nowrap;align-items:flex-start;gap:8px}
.ai-draft-progress [data-status]{margin:0;flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5}
.ai-draft-progress .ai-wait-spinner{width:14px;height:14px;margin-top:2px}
.ai-draft-progress .ai-wait-time{white-space:nowrap;flex:none;margin:0;font-size:11px;line-height:20px}
.ai-draft-progress .ai-wait-note{margin:8px 0 0;font-size:12px}
.ai-section-progress{margin:10px 0 0}
.ai-section-progress progress{display:block;width:100%;height:6px;accent-color:#3568bc}
.ai-section-progress [data-count]{display:block;font-size:11px;color:var(--theme-text-muted, #526580);margin-top:6px}
.ai-assist [data-result]>details{background:var(--theme-surface, white);border:1px solid var(--theme-border, #d8e0e8);border-radius:6px;margin-top:10px;padding:10px;font-size:13px}
.ai-assist [data-result]>details>summary{cursor:pointer;font-weight:600;line-height:1.5}
@media(max-width:600px){.ai-draft-progress .ai-wait-heading{flex-wrap:wrap}.ai-draft-progress [data-status]{flex-basis:calc(100% - 24px)}.ai-draft-progress .ai-wait-time{margin-left:24px}.ai-assist-actions button{max-width:100%;white-space:normal}}

/* Activity is available in the shared header and inside drafting forms. */
#ai-activity{white-space:nowrap;font-size:12px}
.ai-activity-item{border:1px solid var(--theme-border,#cbd5e1);border-radius:8px;padding:14px;margin:12px 0;overflow-wrap:anywhere}
.ai-activity-item summary{cursor:pointer;line-height:1.5}
.ai-activity-item summary small{display:block;color:var(--theme-text-muted,#526580);margin-top:4px}
.ai-activity-item progress{width:100%;height:7px;margin-top:14px;accent-color:#3568bc}
.ai-activity-fields{list-style:none;padding:0}
.ai-activity-fields li{border-top:1px solid var(--theme-border,#cbd5e1);padding:10px 0;font-size:13px}
.ai-activity-fields li>div{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.ai-activity-fields .badge{white-space:normal}
.ai-activity-fields p{margin:8px 0;line-height:1.5}
@media(max-width:600px){.ai-activity-item{padding:10px}}

/* Phase and field progress remain visible even while cards are collapsed. */
.ai-activity-dialog{--ai-running:#245db3;--ai-ready:#187450;--ai-attention:#956014;--ai-paused:#6655a1}
:root[data-theme="dark"] .ai-activity-dialog,:root[data-theme="dark"] .ai-row-activity{--ai-running:#91bcff;--ai-ready:#7cdbb0;--ai-attention:#f1c372;--ai-paused:#c1b2f6}
.ai-tone-running{--ai-tone:var(--ai-running,#245db3)}.ai-tone-ready{--ai-tone:var(--ai-ready,#187450)}.ai-tone-attention{--ai-tone:var(--ai-attention,#956014)}.ai-tone-paused{--ai-tone:var(--ai-paused,#6655a1)}
.ai-eyebrow{font-size:10px;letter-spacing:.12em;color:var(--theme-text-muted,#526580);display:block;margin-bottom:5px}
.ai-activity-intro{color:var(--theme-text-muted,#526580);font-size:13px;line-height:1.6}
.ai-activity-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.ai-total{border:1px solid var(--theme-border,#cbd5e1);border-radius:9px;padding:12px 14px;background:color-mix(in srgb,var(--ai-tone) 6%,var(--theme-surface,white));display:flex;align-items:center;justify-content:space-between;gap:8px}
.ai-total span{font-size:12px;color:var(--theme-text-muted,#526580)}.ai-total strong{font-size:24px;color:var(--ai-tone);font-variant-numeric:tabular-nums}
.ai-activity-item{padding:0;border-left:3px solid var(--ai-tone);background:var(--theme-surface,white);overflow:hidden}
.ai-activity-item summary{display:block;padding:16px;list-style:none}.ai-activity-item summary::-webkit-details-marker{display:none}
.ai-activity-item summary:hover{background:color-mix(in srgb,var(--ai-tone) 4%,transparent)}
.ai-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.ai-purpose{font-size:11px;letter-spacing:.04em;color:var(--theme-text-muted,#526580)}
.ai-state{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--ai-tone);background:color-mix(in srgb,var(--ai-tone) 10%,transparent);border:1px solid color-mix(in srgb,var(--ai-tone) 25%,transparent);padding:3px 8px;border-radius:20px;white-space:nowrap}
.ai-state-icon{display:inline-block;font-weight:700;font-size:14px;line-height:1}
.ai-tone-running .ai-state-icon,.ai-is-running .ai-trigger-icon{animation:ai-spin 2s linear infinite}
.ai-card-title{display:block;margin:9px 0 12px;font-size:14px;line-height:1.5}
.ai-card-progress{display:flex;align-items:center;gap:14px}
.ai-card-progress progress{margin:0;flex:1;min-width:0;height:6px;accent-color:var(--ai-tone)}
.ai-card-progress>span{font-size:11px;font-variant-numeric:tabular-nums;color:var(--theme-text-muted,#526580);white-space:nowrap}
.ai-card-counts{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px;font-size:11px;color:var(--theme-text-muted,#526580)}
.ai-card-counts b{color:var(--theme-text,#243c60)}
.ai-gap-count{color:var(--ai-attention,#956014)}.ai-card-expand{margin-left:auto}
.ai-working{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:9px 10px;background:color-mix(in srgb,var(--ai-tone) 8%,transparent);border-radius:5px;color:var(--ai-tone);font-size:12px;line-height:1.5}
.ai-working .ai-state-icon{flex:none;margin-top:2px}
.ai-card-body{padding:0 16px 16px;border-top:1px solid var(--theme-border,#cbd5e1);font-size:13px}
.ai-field-state{padding:3px 7px;border-radius:4px;font-size:11px;color:var(--theme-text-muted,#526580);background:var(--theme-surface-subtle,#f1f5f9)}
.ai-field-proposed{color:var(--ai-ready);background:color-mix(in srgb,var(--ai-ready) 10%,transparent)}
.ai-field-needs_input{color:var(--ai-attention);background:color-mix(in srgb,var(--ai-attention) 10%,transparent)}
.ai-field-working{color:var(--ai-running);background:color-mix(in srgb,var(--ai-running) 10%,transparent)}
.ai-activity-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;font-size:13px}.ai-activity-filter[hidden]{display:none}
.ai-activity-filter strong{overflow-wrap:anywhere}.ai-activity-filter button{flex:none;font-size:12px}
#ai-activity{display:inline-flex;align-items:center;gap:7px}#ai-activity[hidden]{display:none}
.ai-trigger-icon{color:var(--theme-accent-text,#245db3);font-size:16px}.ai-trigger-count{border-radius:10px;background:var(--theme-accent-surface,#eaf0fa);padding:1px 6px;font-size:10px}
#ai-activity.ai-is-running{border-color:var(--theme-accent-border,#7298d3);background:var(--theme-accent-surface,#eaf0fa)}
.ai-row-activity{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.ai-row-activity[hidden]{display:none}
.ai-row-activity .ai-row-chip{display:inline-flex;align-items:center;gap:5px;white-space:normal;text-align:left;font-size:10px;font-weight:600;line-height:1.5;padding:3px 7px;border-radius:5px;color:var(--ai-tone);border:1px solid color-mix(in srgb,var(--ai-tone) 30%,transparent);background:color-mix(in srgb,var(--ai-tone) 7%,transparent);margin:0;max-width:100%}
.ai-row-chip:hover{background:color-mix(in srgb,var(--ai-tone) 15%,transparent)}
.ai-row-count{font-variant-numeric:tabular-nums;border-left:1px solid color-mix(in srgb,var(--ai-tone) 30%,transparent);padding-left:5px;white-space:nowrap}
.ai-row-empty{font-size:10px;color:var(--theme-text-muted,#526580)}
@media(max-width:600px){.ai-activity-totals{gap:6px}.ai-total{padding:9px;align-items:flex-start;flex-direction:column;gap:4px}.ai-total span{font-size:11px}.ai-total strong{font-size:22px}.ai-activity-item summary{padding:12px}.ai-card-body{padding:0 12px 12px}.ai-card-counts{gap:7px}.ai-activity-filter{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.ai-tone-running .ai-state-icon,.ai-is-running .ai-trigger-icon{animation:none}}
