/* Ask Brain — conversational answer pane (ENG-823 hooks, ENG-1225 presentation).
   Prose first, typed parts second, readable citation chips last. Colour only via tokens. */
.ask-brain{margin-bottom:var(--space-5);}
.ask-brain h2{margin:0 0 var(--space-1);}
.ask-brain > .card-meta{max-width:62ch;}
.ask-brain-label{display:block;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:0.06em;color:var(--text-muted);font-weight:var(--fw-bold);margin:var(--space-3) 0 var(--space-1-5);}
.ask-brain-query{display:block;width:100%;min-height:var(--touch);border:1px solid var(--border-visible);border-radius:var(--radius-input);padding:var(--space-2-5) var(--space-3);font:inherit;font-size:var(--fs-body);background:var(--bg-surface);color:var(--text-primary);}
.ask-brain-query:focus-visible{outline:0;border-color:var(--accent);box-shadow:var(--focus-ring);}
.ask-brain-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0 var(--space-4);}
.ask-brain-actions button{min-height:var(--touch);}
.ask-brain-empty{display:grid;gap:var(--space-1);padding:var(--space-4);border:1px dashed var(--border-visible);border-radius:var(--radius-panel);background:var(--bg-elevated);color:var(--text-secondary);}
.ask-brain-empty p{margin:0;color:var(--text-primary);font-weight:var(--fw-semibold);}
.ask-brain-empty span{font-size:var(--fs-body-sm);}
.ask-brain-empty[data-state="unconfigured"]{border-style:solid;border-color:var(--chip-warning-border);background:var(--chip-warning-bg);}
.ask-brain-error{margin:0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--error);border-radius:var(--radius-sm);background:var(--chip-error-bg);color:var(--text-primary);}
.ask-brain-results{display:grid;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-panel);background:var(--bg-elevated);}
.ask-brain-results[data-status="abstain"]{border-left-color:var(--warning);}
.ask-brain-hit-count,.ask-brain-status{margin:0;font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:0.06em;text-transform:uppercase;color:var(--text-muted);}
.ask-brain-results[data-status="abstain"] .ask-brain-status{color:var(--ink-warning);}
.ask-brain-summary,.ask-brain-reason{margin:0;max-width:68ch;color:var(--text-primary);font-size:var(--fs-body-lg);line-height:var(--lh-body);}
.ask-brain-reason{color:var(--text-body);font-size:var(--fs-body);}
.ask-brain-signal{margin:0;}
.ask-brain-muted{margin:0;font-size:var(--fs-body-sm);color:var(--text-secondary);}
.ask-brain-cites-heading{margin:0;font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:0.06em;text-transform:uppercase;color:var(--text-muted);}
.ask-brain-cites{display:grid;gap:var(--space-2-5);margin:0;padding:0;list-style:none;}
.ask-brain-cite{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-3);align-items:start;min-width:0;margin:0;padding:var(--space-3-5) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card-opaque);}
.ask-brain-cite-num{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--fw-heavy);}
.ask-brain-cite-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;}
.ask-brain-cite-tag .dl-chip{font-size:var(--fs-label);font-weight:var(--fw-heavy);letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap;}
.ask-brain-cite-date{font-size:var(--fs-caption);color:var(--text-secondary);}
.ask-brain-cite-title{margin:0;font-weight:var(--fw-bold);color:var(--text-primary);overflow-wrap:anywhere;}
.ask-brain-cite-section{margin:0;font-size:var(--fs-body-sm);color:var(--text-secondary);overflow-wrap:anywhere;}
.ask-brain-cite-body{display:grid;gap:var(--space-1);min-width:0;}
.ask-brain-cite-snip{margin:0;font-size:var(--fs-body-sm);color:var(--text-body);}
.ask-brain-cite-quoted{display:inline-flex;align-items:center;margin-left:var(--space-2);padding:0.1rem var(--space-2);border:1px solid var(--chip-neutral-border);border-radius:var(--radius-pill);background:var(--chip-neutral-bg);color:var(--text-secondary);font-size:var(--fs-label);font-weight:var(--fw-semibold);white-space:nowrap;vertical-align:middle;}
.ask-brain-cite-prov{margin:0;font-size:var(--fs-caption);color:var(--text-secondary);overflow-wrap:anywhere;}
/* ENG-2417: answer shape. How sure, type and client beside the date, the stale flag, nearest matches and the fixed line. */
.ask-brain-cite-quoted{white-space:normal;}
.ask-brain-cite-type,.ask-brain-cite-client{font-size:var(--fs-caption);color:var(--text-secondary);font-weight:var(--fw-semibold);overflow-wrap:anywhere;}
.ask-brain-cite-stale{display:inline-flex;align-items:center;padding:0.1rem var(--space-2);border:1px solid var(--chip-warning-border);border-radius:var(--radius-pill);background:var(--chip-warning-bg);color:var(--ink-warning);font-size:var(--fs-label);font-weight:var(--fw-semibold);}
.ask-brain-cite-nearest{margin:0;font-size:var(--fs-label);font-weight:var(--fw-heavy);letter-spacing:0.04em;text-transform:uppercase;color:var(--ink-warning);}
.ask-brain-cite-nofile{font-size:var(--fs-caption);color:var(--text-muted);max-width:7rem;text-align:right;}
.ask-brain-how-sure{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);margin:0;color:var(--text-primary);}
.ask-brain-figure-source{font-size:var(--fs-caption);color:var(--text-secondary);}
.ask-brain-check{margin:0;font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-primary);}
.ask-brain-cite-link{align-self:center;min-height:var(--touch);}
.ask-brain-kind{display:inline-flex;align-items:center;padding:0.1rem var(--space-2);border:1px solid var(--chip-neutral-border);border-radius:var(--radius-pill);background:var(--chip-neutral-bg);color:var(--text-secondary);font-size:var(--fs-label);font-weight:var(--fw-bold);letter-spacing:0.04em;text-transform:uppercase;white-space:nowrap;}
/* ENG-1498: "This answer is wrong" sits after the citations, set apart by a rule. */
.ask-brain-correction{display:grid;gap:var(--space-2);}
.ask-brain-results > .ask-brain-correction{padding-top:var(--space-3);border-top:1px solid var(--border);}
.ask-brain-correction > .btn{justify-self:start;min-height:var(--touch);}
.ask-brain-correction-form{display:grid;gap:var(--space-1);max-width:68ch;}
.ask-brain-correction-form .ask-brain-label{margin-top:var(--space-2);}
.ask-brain-correction-form .ask-brain-actions{margin:var(--space-2) 0 0;}
.ask-brain-correction-text{min-height:6rem;resize:vertical;line-height:var(--lh-body);}
.ask-brain-correction-message{margin:0;font-size:var(--fs-body-sm);color:var(--text-body);}
.ask-brain-correction-message[data-status="error"]{padding:var(--space-2) var(--space-3);border-left:3px solid var(--error);border-radius:var(--radius-sm);background:var(--chip-error-bg);color:var(--text-primary);}
@media (max-width:420px){
  .ask-brain-actions{flex-direction:column;}
  .ask-brain-actions button{width:100%;}
  .ask-brain-results{padding:var(--space-3) var(--space-4);}
}
.ask-brain-summary p{margin:0;}
.ask-brain-summary p + p{margin-top:var(--space-2);}
.ask-brain-ref{margin-left:2px;padding:0 4px;border-radius:var(--radius-xs);background:var(--gold-10);color:var(--accent-hover);font-size:0.7em;font-variant-numeric:tabular-nums;font-weight:600;}
/* ENG-2416: a ref whose source the filter hid is struck through, never pointed at another card. */
.ask-brain-ref--hidden{background:transparent;color:var(--text-secondary);}
/* ENG-1528: one question box and one Ask button. White in the Brain hero, outlined in a card. */
.ask-box{display:flex;flex-wrap:wrap;gap:var(--space-2-5);margin:var(--space-3) 0 var(--space-4);padding:var(--space-2);border:1px solid var(--border-visible);border-radius:var(--radius-card-lg);background:var(--bg-card-opaque);}
.ask-box:focus-within{border-color:var(--accent);box-shadow:var(--focus-ring);}
.ask-box__field{flex:1 1 16rem;display:flex;align-items:center;min-width:0;padding:0 var(--space-3);}
.ask-box__input{flex:1 1 auto;min-width:0;min-height:var(--touch);border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:var(--fs-body-md);}
.ask-box__submit{flex:0 0 auto;justify-content:center;min-height:3.25rem;padding:0 var(--space-6);font-size:var(--fs-body-md);}
.ask-look-in{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2-5);}
.ask-look-in__label{font-size:var(--fs-meta);color:var(--on-navy-secondary);}
.ask-look-in__chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-4);border:1px solid var(--on-navy-border-strong);border-radius:var(--radius-pill);background:var(--on-navy-fill);color:var(--on-navy-body);font:inherit;font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);cursor:pointer;}
.ask-look-in__chip[aria-pressed="true"]{border-color:transparent;background:var(--bg-card-opaque);color:var(--text-primary);font-weight:var(--fw-bold);box-shadow:var(--raised-shadow);}
.ask-look-in__chip[aria-disabled="true"]{cursor:not-allowed;color:var(--on-navy-secondary);}
.ask-look-in__note{flex-basis:100%;margin:0;font-size:var(--fs-meta);color:var(--on-navy-secondary);}
@media (max-width:420px){
  .ask-box__submit{width:100%;}
}
/* ENG-1529: the answer is a "Brain answered" panel with a layer chip, a strip, numbered
   source cards and its two actions; the rail beside it carries price guidance and examples. */
.ask-brain-layout{display:grid;gap:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;}
@media (min-width:1100px){.ask-brain-layout{grid-template-columns:minmax(0,1fr) minmax(18rem,22rem);}}
.ask-brain-main{display:grid;gap:var(--space-4);min-width:0;}
.ask-brain-answer{display:grid;gap:var(--space-4);}
.ask-brain-strip{display:grid;gap:0;margin:0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);overflow:hidden;}
.ask-brain-strip__row{display:grid;grid-template-columns:minmax(9rem,auto) minmax(0,1fr);gap:var(--space-3);align-items:baseline;padding:var(--space-3) var(--space-4);}
.ask-brain-strip__row + .ask-brain-strip__row{border-top:1px solid var(--border);}
.ask-brain-strip__row dt{justify-self:start;}
.ask-brain-strip__row dd{margin:0;font-size:var(--fs-body-sm);color:var(--text-body);}
.ask-brain-strip__row[data-strip="unknown"]{background:var(--attention-row);}
.ask-brain-strip__row[data-strip="unknown"] dt{border-color:var(--attention-outline);background:var(--attention-chip);color:var(--attention-text);}
.ask-brain-strip__row[data-strip="unknown"] dd{color:var(--attention-text);}
.ask-brain-answer-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-2-5);padding-top:var(--space-4);border-top:1px solid var(--border);}
.ask-brain-answer-actions > .ask-brain-correction[data-state="open"]{flex-basis:100%;order:2;}
.ask-brain-copy{min-height:var(--touch);}
.ask-brain-copy-status{flex-basis:100%;order:3;margin:0;font-size:var(--fs-body-sm);color:var(--text-secondary);}
.ask-brain-copy-status:empty{display:none;}
.ask-brain-rail{display:grid;gap:var(--space-4);min-width:0;}
.ask-brain-rail-body{display:grid;gap:var(--space-3);justify-items:start;}
.ask-brain-rail-body p{margin:0;color:var(--text-body);font-size:var(--fs-body-sm);line-height:var(--lh-body);}
.ask-brain-try-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none;}
.ask-brain-try{display:block;width:100%;min-height:var(--touch);padding:var(--space-2-5) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font:inherit;font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);text-align:left;cursor:pointer;}
.ask-brain-try:hover{border-color:var(--accent);color:var(--accent);}
.ask-brain-try:focus-visible{outline:0;border-color:var(--accent);box-shadow:var(--focus-ring);}
.ask-brain-try:disabled{cursor:not-allowed;color:var(--text-muted);}
.ask-brain-quote-pointer{margin:var(--space-3) 0 0;font-size:var(--fs-body-sm);color:var(--text-secondary);}
/* ENG-1636 Add to Brain panel in the rail. */
.brain-capture__body{justify-items:stretch;}
.brain-capture__body > .dl-button{justify-self:start;min-height:var(--touch);}
.brain-capture__label{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-primary);}
.brain-capture__title{width:100%;box-sizing:border-box;min-height:var(--touch);padding:var(--space-2-5) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);font:inherit;font-size:var(--fs-body-sm);}
.brain-capture__title:focus-visible{outline:0;border-color:var(--accent);box-shadow:var(--focus-ring);}
.brain-capture__title:disabled{color:var(--text-muted);cursor:not-allowed;}
.ask-brain-rail-body p.brain-capture__types{color:var(--text-secondary);}
.ask-brain-rail-body p.brain-capture__status{padding:var(--space-2-5) var(--space-3);border-left:3px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);}
.ask-brain-rail-body p.brain-capture__status--done{border-left-color:var(--success);background:var(--chip-success-bg);}
.ask-brain-rail-body p.brain-capture__status--error{border-left-color:var(--error);background:var(--chip-error-bg);}
/* ENG-2449: several documents, each with the kind Brain read and the person can change. */
.brain-capture__kind{width:100%;box-sizing:border-box;min-height:var(--touch);padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);font:inherit;font-size:var(--fs-body-sm);}
.brain-capture__kind:focus-visible{outline:0;border-color:var(--accent);box-shadow:var(--focus-ring);}
.brain-capture__items{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3);}
.brain-capture__item{display:grid;gap:var(--space-1-5);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);}
.brain-capture__file{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-primary);overflow-wrap:anywhere;}
.ask-brain-rail-body p.brain-capture__item-note{margin:0;font-size:var(--fs-body-sm);color:var(--text-secondary);}
.ask-brain-rail-body p.brain-capture__item-note--done{color:var(--text-primary);}
.ask-brain-rail-body p.brain-capture__item-note--error{color:var(--error);}
.brain-capture__unsure{font-weight:var(--fw-regular);color:var(--warning);}
.brain-capture__body [data-brain-capture-list]{display:grid;gap:var(--space-3);}
.brain-capture__body [data-brain-capture-list]:empty{display:none;}
.brain-capture__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);}
.brain-capture__actions > .dl-button{min-height:var(--touch);}
@media (max-width:520px){
  .ask-brain-main .dl-panel__head{flex-wrap:wrap;}
  .ask-brain-main .dl-panel__titles{flex-basis:calc(100% - var(--touch) - var(--space-3-5));}
  .ask-brain-main .dl-panel__head > .dl-chip{margin-left:calc(var(--touch) + var(--space-3-5));}
  .ask-brain-strip__row{grid-template-columns:1fr;gap:var(--space-1);}
  .ask-brain-cite{grid-template-columns:auto minmax(0,1fr);}
  .ask-brain-cite-link{grid-column:2;justify-self:start;}
}

/* ENG-2416: the Ask Brain panel on the Quotes screens. It sits outside the page root, fixed to the
   right edge under the top bar. Collapsed, only its labelled tab shows. Glass for chrome, flat for data. */
.ask-panel{position:fixed;top:var(--global-nav-height);right:0;bottom:0;z-index:calc(var(--z-sticky) - 1);display:flex;pointer-events:none;}
.ask-panel>*{pointer-events:auto;}
.ask-panel[data-open="true"]{width:min(24rem,100vw);}
.ask-panel__body{display:flex;flex-direction:column;gap:var(--space-3);width:100%;height:100%;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-4);border-left:1px solid var(--border-visible);background:var(--bg-card-opaque);box-shadow:var(--elevation-2);}
.ask-panel__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);}
.ask-panel__head h2{margin:0;font-size:var(--fs-h3);}
.ask-panel__close{min-width:var(--touch);min-height:var(--touch);border:1px solid var(--border-visible);border-radius:var(--radius-pill);background:transparent;color:var(--text-primary);font:inherit;cursor:pointer;}
.ask-panel__lede,.ask-panel__check,.ask-panel__assumed{margin:0;font-size:var(--fs-body-sm);color:var(--text-secondary);}
.ask-panel__assumed{padding:var(--space-2) var(--space-3);border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--text-primary);}
.ask-panel__check{font-weight:var(--fw-semibold);}
.ask-panel .ask-box{margin:0;}
.ask-panel .ask-box__submit{min-height:var(--touch);padding:0 var(--space-4);}
.ask-panel .ask-look-in__label,.ask-panel .ask-look-in__note{color:var(--text-secondary);}
.ask-panel .ask-look-in__note{margin:0;flex-basis:100%;font-size:var(--fs-meta);}
.ask-panel .ask-look-in__chip{min-height:2.25rem;padding:0 var(--space-3);border-color:var(--border-visible);background:transparent;color:var(--text-primary);}
.ask-panel .ask-look-in__chip[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);box-shadow:none;}
.ask-panel__eyebrow{margin:0 0 var(--space-2);font-size:var(--fs-meta);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:0.08em;color:var(--text-secondary);}
.ask-panel__questions ul{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none;}
.ask-panel__answer{display:grid;gap:var(--space-3);min-width:0;}
.ask-panel__page{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);}
.ask-panel-tab{align-self:center;min-height:8rem;padding:var(--space-3) var(--space-2);border:1px solid var(--border-visible);border-right:0;border-radius:var(--radius-card) 0 0 var(--radius-card);background:var(--bg-card-opaque);box-shadow:var(--elevation-2);color:var(--text-primary);font:inherit;font-weight:var(--fw-semibold);writing-mode:vertical-rl;transform:rotate(180deg);cursor:pointer;}
.ask-panel-tab:focus-visible,.ask-panel__close:focus-visible{outline:none;box-shadow:var(--focus-ring);}
/* Wide screens make room for the open panel. Narrower ones lay it over the page like a drawer: it
   starts collapsed there, and Escape closes it. Layered under the top bar, over the mobile nav and approve bar. */
@media (min-width: 1280px){body.ask-panel-open{padding-right:24rem;}}
@media (max-width: 900px){.ask-panel{bottom:var(--mobile-nav-height);}}
