/* HPC-AC v3.5.6 — indicator-guided evidence command center */
.aec-command-center {
    width: 100%;
    display: grid;
    gap: 12px;
    padding: clamp(12px, 1.2vw, 18px);
    border: 1px solid var(--sot-border);
    border-radius: var(--sot-radius-lg);
    background: var(--sot-surface);
    color: var(--sot-text);
    box-shadow: var(--sot-shadow);
}

.aec-command-header,
.aec-panel-heading,
.aec-aspect-focus,
.aec-command-header__status,
.aec-form-actions,
.aec-probe-actions,
.aec-evidence-card > header,
.aec-evidence-card > footer,
.aec-probe-card > header,
.aec-probe-card > footer,
.aec-draft-row,
.aec-aspect-button__top,
.aec-aspect-button__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.aec-command-header { align-items: flex-start; }
.aec-command-header h2,
.aec-aspect-focus h3,
.aec-work-panel h4,
.aec-probe-card h5 { margin: 0; color: var(--sot-title); }
.aec-command-header h2 { font-size: clamp(1.1rem, 1.7vw, 1.45rem); line-height: 1.25; }
.aec-command-header p,
.aec-aspect-focus p,
.aec-panel-heading p { margin: 4px 0 0; color: var(--sot-muted); font-size: .84rem; line-height: 1.5; }
.aec-kicker { display: block; margin-bottom: 3px; color: var(--sot-accent-strong); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.aec-command-header__status { justify-content: flex-end; flex-wrap: wrap; }
.aec-status-chip { display: inline-flex; align-items: center; min-height: 26px; padding: 3px 9px; border: 1px solid var(--sot-border); border-radius: 999px; background: var(--sot-slate-50); color: var(--sot-slate-700); font-size: .72rem; font-style: normal; font-weight: 750; }
.aec-status-chip.is-warning { border-color: var(--sot-amber-600); background: var(--sot-amber-50); color: var(--sot-amber-600); }
.aec-status-chip.is-supporting { border-color: var(--sot-emerald-600); background: var(--sot-emerald-50); color: var(--sot-emerald-600); }
.aec-status-chip.is-contradictory { border-color: var(--sot-rose-600); background: var(--sot-rose-50); color: var(--sot-rose-600); }
.aec-status-chip.is-neutral { border-color: var(--sot-slate-400); }

.aec-warning-stack { display: grid; gap: 6px; }
.aec-warning-stack p,
.aec-error-block { margin: 0; padding: 9px 11px; border: 1px solid var(--sot-amber-600); border-radius: var(--sot-radius); background: var(--sot-amber-50); color: var(--sot-slate-800); font-size: .8rem; }

.aec-metric-strip { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.aec-metric-strip article { min-width: 0; padding: 9px 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-slate-50); }
.aec-metric-strip span { display: block; color: var(--sot-muted); font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .035em; }
.aec-metric-strip strong { display: block; margin-top: 2px; color: var(--sot-title); font-size: 1.05rem; }

.aec-layout { min-width: 0; display: grid; grid-template-columns: minmax(220px, 270px) minmax(0, 1fr) minmax(250px, 330px); gap: 12px; align-items: start; }
.aec-context-rail,
.aec-main-workspace,
.aec-evidence-rail { min-width: 0; }
.aec-context-rail,
.aec-evidence-rail { display: grid; gap: 10px; position: sticky; top: 12px; }
.aec-main-workspace { display: grid; gap: 10px; }
.aec-rail-heading { padding: 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-slate-50); }
.aec-rail-heading strong,
.aec-rail-heading small { display: block; }
.aec-rail-heading strong { color: var(--sot-title); font-size: .82rem; }
.aec-rail-heading small { margin-top: 2px; color: var(--sot-muted); font-size: .72rem; }

.aec-aspect-list { display: grid; gap: 7px; }
.aec-aspect-button { width: 100%; padding: 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-surface); color: var(--sot-text); text-align: left; cursor: pointer; transition: border-color var(--sot-transition), background var(--sot-transition), box-shadow var(--sot-transition); }
.aec-aspect-button:hover,
.aec-aspect-button.is-active { border-color: var(--sot-accent); background: var(--sot-accent-soft); box-shadow: 0 0 0 2px var(--sot-focus); }
.aec-aspect-button__top strong { min-width: 0; color: var(--sot-title); font-size: .8rem; line-height: 1.3; }
.aec-aspect-button__top em { color: var(--sot-accent-strong); font-size: .72rem; font-style: normal; font-weight: 800; }
.aec-progress-track { display: block; height: 5px; margin: 7px 0 5px; overflow: hidden; border-radius: 999px; background: var(--sot-slate-200); }
.aec-progress-track i { display: block; height: 100%; border-radius: inherit; background: var(--sot-accent); }
.aec-aspect-button__meta { color: var(--sot-muted); font-size: .68rem; }
.aec-inline-alert { display: inline-flex; margin-top: 6px; color: var(--sot-rose-600); font-size: .67rem; font-weight: 750; }
.aec-version-card,
.aec-guardrail-card,
.aec-gap-list,
.aec-focus-meter,
.aec-focus-facts { padding: 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-surface); }
.aec-version-card > strong,
.aec-gap-list > strong,
.aec-guardrail-card > strong { color: var(--sot-title); font-size: .76rem; }
.aec-version-card dl,
.aec-focus-facts { margin: 7px 0 0; }
.aec-version-card dl div,
.aec-focus-facts div { display: flex; justify-content: space-between; gap: 8px; padding: 4px 0; color: var(--sot-muted); font-size: .68rem; }
.aec-version-card dd,
.aec-focus-facts dd { margin: 0; color: var(--sot-title); font-weight: 750; }

.aec-aspect-focus { align-items: flex-start; padding: 12px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-surface); }
.aec-aspect-focus__facts { display: grid; grid-template-columns: repeat(3, auto); gap: 6px; }
.aec-aspect-focus__facts span { padding: 6px 8px; border-radius: var(--sot-radius-sm); background: var(--sot-slate-50); color: var(--sot-muted); font-size: .7rem; white-space: nowrap; }
.aec-aspect-focus__facts strong { color: var(--sot-title); }
.aec-tabs { display: flex; gap: 4px; overflow-x: auto; border-bottom: 1px solid var(--sot-border); }
.aec-tabs button { flex: 0 0 auto; min-height: 34px; padding: 6px 10px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--sot-muted); font-size: .76rem; font-weight: 750; cursor: pointer; }
.aec-tabs button.is-active { border-bottom-color: var(--sot-accent); color: var(--sot-accent-strong); }

.aec-work-panel { display: grid; gap: 12px; padding: 12px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-surface); }
.aec-panel-heading { align-items: flex-start; }
.aec-panel-heading h4 { font-size: .95rem; }
.aec-shortcut-hint { padding: 5px 8px; border-radius: var(--sot-radius-sm); background: var(--sot-slate-100); color: var(--sot-slate-600); font-size: .7rem; font-weight: 800; }
.aec-capture-kinds { display: flex; flex-wrap: wrap; gap: 5px; }
.aec-capture-kinds button { min-height: 30px; padding: 4px 9px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius-sm); background: var(--sot-surface); color: var(--sot-slate-700); font-size: .72rem; font-weight: 700; cursor: pointer; }
.aec-capture-kinds button.is-active { border-color: var(--sot-accent); background: var(--sot-accent-soft); color: var(--sot-accent-strong); }
.aec-form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.aec-field { min-width: 0; display: grid; gap: 4px; align-content: start; }
.aec-field--wide { grid-column: span 3; }
.aec-field > span { color: var(--sot-slate-700); font-size: .72rem; font-weight: 750; }
.aec-field input,
.aec-field select,
.aec-field textarea { width: 100%; min-width: 0; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-surface); color: var(--sot-text); font: inherit; font-size: .8rem; }
.aec-field input,
.aec-field select { min-height: var(--sot-control-height); padding: 6px 8px; }
.aec-field textarea { min-height: 72px; padding: 8px; resize: vertical; line-height: 1.45; }
.aec-field input:focus,
.aec-field select:focus,
.aec-field textarea:focus { outline: 2px solid var(--sot-focus); border-color: var(--sot-accent); }
.aec-field > small { color: var(--sot-muted); font-size: .67rem; line-height: 1.4; }
.aec-error { color: var(--sot-rose-600) !important; }
.aec-form-actions { justify-content: flex-end; flex-wrap: wrap; }
.aec-method-details { border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-slate-50); }
.aec-method-details summary { padding: 9px 10px; color: var(--sot-title); font-size: .76rem; font-weight: 800; cursor: pointer; }
.aec-method-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 0 10px 10px; }

.aec-indicator-list,
.aec-probe-list,
.aec-evidence-list,
.aec-draft-list { display: grid; gap: 8px; }
.aec-indicator-row { min-width: 0; display: grid; grid-template-columns: 70px minmax(0, 1fr) minmax(100px, auto); gap: 10px; align-items: start; padding: 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); }
.aec-indicator-row.is-covered { border-left: 4px solid var(--sot-emerald-600); }
.aec-indicator-row.is-gap { border-left: 4px solid var(--sot-amber-600); }
.aec-indicator-key { color: var(--sot-accent-strong); font-size: .72rem; font-weight: 850; }
.aec-indicator-row strong,
.aec-indicator-row small { display: block; }
.aec-indicator-row strong { color: var(--sot-title); font-size: .78rem; line-height: 1.45; }
.aec-indicator-row small { margin-top: 3px; color: var(--sot-muted); font-size: .68rem; line-height: 1.4; }
.aec-indicator-row__status { text-align: right; }
.aec-indicator-row__status span { color: var(--sot-slate-700); font-size: .7rem; font-weight: 750; }

.aec-ai-status,
.aec-ai-disclaimer,
.aec-score-disclaimer { margin: 0; color: var(--sot-muted); font-size: .7rem; line-height: 1.5; }
.aec-probe-card { padding: 11px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); background: var(--sot-slate-50); }
.aec-probe-card header span { color: var(--sot-accent-strong); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.aec-probe-card header em { color: var(--sot-muted); font-size: .68rem; font-style: normal; }
.aec-probe-card h5 { margin-top: 8px; font-size: .86rem; line-height: 1.45; }
.aec-probe-card dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 8px 0 0; }
.aec-probe-card dl div { padding: 8px; border-radius: var(--sot-radius-sm); background: var(--sot-surface); }
.aec-probe-card dt { color: var(--sot-muted); font-size: .66rem; font-weight: 750; text-transform: uppercase; }
.aec-probe-card dd { margin: 3px 0 0; color: var(--sot-slate-700); font-size: .73rem; line-height: 1.45; }
.aec-probe-card footer { justify-content: flex-end; margin-top: 8px; }
.aec-probe-card footer button,
.aec-draft-row button { border: 0; background: transparent; color: var(--sot-accent-strong); font-size: .7rem; font-weight: 750; cursor: pointer; }

.aec-evidence-card { padding: 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); }
.aec-evidence-card > header { color: var(--sot-muted); font-size: .68rem; }
.aec-fact-interpretation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.aec-fact-interpretation > div { padding: 9px; border-radius: var(--sot-radius-sm); background: var(--sot-slate-50); }
.aec-fact-interpretation strong { color: var(--sot-title); font-size: .7rem; }
.aec-fact-interpretation p { margin: 4px 0 0; color: var(--sot-slate-700); font-size: .75rem; line-height: 1.5; white-space: pre-wrap; }
.aec-evidence-card > footer { margin-top: 8px; color: var(--sot-muted); font-size: .67rem; }
.aec-draft-list { margin-top: 10px; }
.aec-draft-list > h5 { margin: 0; color: var(--sot-title); font-size: .78rem; }
.aec-draft-row { align-items: flex-start; padding: 8px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius-sm); background: var(--sot-slate-50); }
.aec-draft-row > div:first-child { min-width: 0; flex: 1; }
.aec-draft-row strong { color: var(--sot-title); font-size: .72rem; }
.aec-draft-row p { margin: 2px 0 0; color: var(--sot-muted); font-size: .7rem; line-height: 1.4; }
.aec-draft-row > span { color: var(--sot-muted); font-size: .66rem; }

.aec-score-readiness { padding: 10px; border: 1px solid var(--sot-border); border-radius: var(--sot-radius); }
.aec-score-readiness.is-ready { border-color: var(--sot-emerald-600); background: var(--sot-emerald-50); }
.aec-score-readiness.is-blocked { border-color: var(--sot-amber-600); background: var(--sot-amber-50); }
.aec-score-readiness strong { color: var(--sot-title); font-size: .8rem; }
.aec-score-readiness ul { margin: 7px 0 0; padding-left: 18px; color: var(--sot-slate-700); font-size: .72rem; line-height: 1.55; }

.aec-focus-meter { text-align: center; }
.aec-focus-meter > span { display: grid; place-items: center; width: 82px; height: 82px; margin: 0 auto; border-radius: 50%; background: conic-gradient(var(--sot-accent) calc(var(--aec-value) * 1%), var(--sot-slate-200) 0); color: var(--sot-title); font-size: .95rem; font-weight: 850; position: relative; }
.aec-focus-meter > span::after { content: ''; position: absolute; inset: 8px; border-radius: 50%; background: var(--sot-surface); }
.aec-focus-meter > span { isolation: isolate; }
.aec-focus-meter > span::before { content: attr(data-label); }
.aec-focus-meter > span { text-shadow: 0 0 0 transparent; }
.aec-focus-meter > span { z-index: 0; }
.aec-focus-meter > span::after { z-index: -1; }
.aec-focus-meter p { margin: 6px 0 0; color: var(--sot-muted); font-size: .68rem; }
.aec-gap-list p { display: grid; gap: 2px; margin: 7px 0 0; padding-top: 7px; border-top: 1px solid var(--sot-border); color: var(--sot-slate-700); font-size: .7rem; line-height: 1.4; }
.aec-gap-list p span { color: var(--sot-accent-strong); font-size: .65rem; font-weight: 800; }
.aec-gap-list p.is-complete { color: var(--sot-emerald-600); }
.aec-guardrail-card ul { margin: 7px 0 0; padding-left: 17px; color: var(--sot-slate-700); font-size: .69rem; line-height: 1.5; }
.aec-empty,
.aec-empty-state { margin: 0; padding: 14px; border: 1px dashed var(--sot-border-strong); border-radius: var(--sot-radius); color: var(--sot-muted); font-size: .78rem; text-align: center; }
.aec-empty-state strong { display: block; color: var(--sot-title); }
.aec-empty-state p { margin: 4px 0 0; }

@media (max-width: 1280px) {
    .aec-layout { grid-template-columns: minmax(210px, 250px) minmax(0, 1fr); }
    .aec-evidence-rail { grid-column: 1 / -1; position: static; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; }
    .aec-rail-heading { grid-column: 1 / -1; }
    .aec-metric-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
    .aec-layout { grid-template-columns: 1fr; }
    .aec-context-rail,
    .aec-evidence-rail { position: static; grid-template-columns: 1fr; }
    .aec-aspect-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .aec-aspect-focus { display: grid; }
    .aec-aspect-focus__facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .aec-aspect-focus__facts span { white-space: normal; }
    .aec-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .aec-field--wide { grid-column: span 2; }
    .aec-method-grid,
    .aec-probe-card dl,
    .aec-fact-interpretation { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .aec-command-center { padding: 10px; }
    .aec-command-header,
    .aec-panel-heading,
    .aec-aspect-focus { display: grid; }
    .aec-command-header__status { justify-content: flex-start; }
    .aec-metric-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .aec-aspect-list,
    .aec-form-grid,
    .aec-method-grid { grid-template-columns: 1fr; }
    .aec-field--wide { grid-column: auto; }
    .aec-aspect-focus__facts { grid-template-columns: 1fr; }
    .aec-indicator-row { grid-template-columns: 54px minmax(0, 1fr); }
    .aec-indicator-row__status { grid-column: 2; text-align: left; }
    .aec-form-actions { justify-content: stretch; }
    .aec-form-actions .as-btn { flex: 1 1 auto; }
}

.aec-progress-track {
    display: block;
    width: 100%;
    height: .42rem;
    border: 0;
    border-radius: 999px;
    overflow: hidden;
    background: var(--hpc-surface-muted, #e2e8f0);
}
.aec-progress-track::-webkit-progress-bar { background: var(--hpc-surface-muted, #e2e8f0); }
.aec-progress-track::-webkit-progress-value { background: var(--hpc-primary, #4f46e5); }
.aec-progress-track::-moz-progress-bar { background: var(--hpc-primary, #4f46e5); }
.aec-input-action { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .45rem; align-items: center; }
.aec-input-action button { min-height: 2.35rem; padding: .45rem .65rem; border: 1px solid var(--hpc-border, #cbd5e1); border-radius: .45rem; background: var(--hpc-surface, #fff); font-size: .75rem; font-weight: 700; white-space: nowrap; }
.aec-focus-meter strong { display: block; font-size: 1.65rem; line-height: 1; color: var(--hpc-text, #0f172a); }
.aec-focus-meter progress { width: 100%; height: .55rem; margin: .55rem 0 .25rem; accent-color: var(--hpc-primary, #4f46e5); }
.aec-focus-meter p { margin: 0; font-size: .75rem; color: var(--hpc-text-muted, #64748b); }
@media (max-width: 640px) { .aec-input-action { grid-template-columns: 1fr; } .aec-input-action button { width: 100%; } }

.aec-decision-matrix { width: 100%; border: 1px solid var(--hpc-border, #cbd5e1); border-radius: .7rem; background: var(--hpc-surface, #fff); padding: 1rem; }
.aec-decision-matrix__header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.aec-decision-matrix__header h3 { margin: .15rem 0 .25rem; font-size: 1.1rem; color: var(--hpc-text, #0f172a); }
.aec-decision-matrix__header p { margin: 0; max-width: 70rem; color: var(--hpc-text-muted, #64748b); font-size: .84rem; }
.aec-decision-matrix__metrics { display: grid; grid-template-columns: repeat(5, minmax(5rem, 1fr)); gap: .45rem; margin: 0; min-width: min(42rem, 55vw); }
.aec-decision-matrix__metrics div { padding: .55rem .65rem; border: 1px solid var(--hpc-border, #cbd5e1); border-radius: .5rem; background: var(--hpc-surface-muted, #f8fafc); }
.aec-decision-matrix__metrics dt { font-size: .66rem; text-transform: uppercase; letter-spacing: .04em; color: var(--hpc-text-muted, #64748b); }
.aec-decision-matrix__metrics dd { margin: .15rem 0 0; font-size: 1.05rem; font-weight: 800; color: var(--hpc-text, #0f172a); }
.aec-decision-table-wrap { overflow-x: auto; }
.aec-decision-table { width: 100%; min-width: 70rem; border-collapse: collapse; }
.aec-decision-table th, .aec-decision-table td { padding: .65rem; vertical-align: top; text-align: left; border-bottom: 1px solid var(--hpc-border, #e2e8f0); }
.aec-decision-table th { font-size: .7rem; text-transform: uppercase; color: var(--hpc-text-muted, #64748b); background: var(--hpc-surface-muted, #f8fafc); }
.aec-decision-table td > strong, .aec-decision-table td > small { display: block; }
.aec-decision-table td > small { margin-top: .25rem; color: var(--hpc-text-muted, #64748b); max-width: 24rem; }
.aec-decision-table progress { width: 8rem; max-width: 100%; height: .45rem; display: block; margin: .3rem 0; accent-color: var(--hpc-primary, #4f46e5); }
.aec-decision-evidence summary { cursor: pointer; font-weight: 700; color: var(--hpc-primary, #4338ca); }
.aec-decision-evidence > div { display: grid; gap: .5rem; margin-top: .5rem; min-width: 22rem; }
.aec-decision-evidence article { padding: .55rem; border: 1px solid var(--hpc-border, #e2e8f0); border-radius: .45rem; background: var(--hpc-surface-muted, #f8fafc); }
.aec-decision-evidence article header { display: flex; justify-content: space-between; gap: .5rem; font-size: .72rem; }
.aec-decision-evidence article p { margin: .35rem 0; font-size: .8rem; }
.aec-decision-evidence article small, .aec-decision-evidence article footer { display: block; font-size: .72rem; color: var(--hpc-text-muted, #64748b); }
.aec-decision-guardrail { margin: .75rem 0 0; padding: .65rem; border-left: .2rem solid var(--hpc-warning, #f59e0b); background: var(--hpc-warning-soft, #fffbeb); font-size: .78rem; }
.aec-text-danger { color: var(--hpc-danger, #dc2626); }
@media (max-width: 1180px) { .aec-decision-matrix__header { display: block; } .aec-decision-matrix__metrics { min-width: 0; margin-top: .75rem; } }
@media (max-width: 720px) { .aec-decision-matrix { padding: .75rem; } .aec-decision-matrix__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.aec-evidence-card footer button, .aec-decision-evidence footer button { border: 0; padding: 0; background: transparent; color: var(--hpc-primary, #4338ca); font-size: .72rem; font-weight: 700; text-decoration: underline; cursor: pointer; }
