/* Customer validation board: Cofello Warm. Tokens only; see DESIGN.md. The board opens with the
   shared .cf-page-header (its one H1); buttons are secondary and the view's main action is
   .cf-btn--primary (saving the decision, or shaping the offer once a Proceed decision allows it). */
.validation-board{color:var(--cf-color-ink);background:var(--cf-color-surface);border:0;border-radius:var(--cf-radius-lg);box-shadow:var(--cf-shadow-sm);padding:clamp(18px,4vw,40px);margin:28px 0;font:var(--cf-text-md)/var(--cf-leading-md) var(--cf-font-sans);overflow-wrap:anywhere;color-scheme:light}
.validation-board *{box-sizing:border-box}.validation-board h2{font-family:var(--cf-font-sans);font-size:var(--cf-text-2xl);line-height:var(--cf-leading-2xl);margin:8px 0 18px}.validation-board h3{font-size:var(--cf-text-xl);line-height:var(--cf-leading-xl);margin:28px 0 12px}.validation-board h4{font-size:var(--cf-text-lg);margin:8px 0}.validation-board h5{font-size:var(--cf-text-md);margin:0 0 8px}:where(.validation-board) p{margin:10px 0}.validation-board small{display:block;color:var(--cf-color-muted);font-size:var(--cf-text-sm)}.validation-board details{border-top:0;padding:16px 0}.validation-board summary{cursor:pointer;font-weight:var(--cf-weight-bold);min-height:30px}.validation-board form{display:grid;gap:16px;padding:20px 0;max-width:840px}.validation-board label{display:grid;gap:6px;font-size:var(--cf-text-md);font-weight:var(--cf-weight-bold)}.validation-board textarea,.validation-board input,.validation-board select{width:100%;border:1px solid var(--cf-color-control);border-radius:var(--cf-radius-sm);background:var(--cf-color-raised);color:var(--cf-color-ink);padding:11px;font:inherit;min-width:0}.validation-board :is(input,textarea,select){font-weight:var(--cf-weight-regular)}.validation-board textarea{resize:vertical;min-height:80px}.validation-board .validation-check{display:flex;align-items:flex-start;gap:10px;font-weight:var(--cf-weight-regular)}.validation-board input[type=checkbox]{width:19px;height:19px;flex:0 0 19px;margin-top:3px}.validation-board button{border:1px solid var(--cf-color-control);border-radius:var(--cf-radius-pill);padding:11px 20px;background:var(--cf-color-surface);color:var(--cf-color-ink);cursor:pointer;font:var(--cf-weight-regular) var(--cf-text-md)/1.4 var(--cf-font-sans);min-height:var(--cf-control-height);justify-self:start}.validation-board .cf-btn--primary{border-color:var(--cf-color-accent);background:var(--cf-color-accent);color:var(--cf-color-on-accent)}.validation-board button:disabled{opacity:1;background:var(--cf-color-sunken);border-color:var(--cf-color-line-strong);color:var(--cf-color-muted);cursor:wait}.validation-board :focus-visible{outline:var(--cf-focus-width) solid var(--cf-color-focus);outline-offset:var(--cf-focus-offset)}.validation-board fieldset{border:0;padding:14px;border-radius:var(--cf-radius-sm);min-width:0}.validation-board fieldset label+label{margin-top:10px}.validation-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.validation-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.validation-assumption,.validation-note{background:var(--cf-color-raised);border:0;border-radius:var(--cf-radius-md);padding:20px;margin:16px 0}.validation-board dl{display:grid;grid-template-columns:120px 1fr;gap:7px 14px;font-size:var(--cf-text-md)}.validation-board dt{font-weight:var(--cf-weight-bold)}.validation-board dd{margin:0}.validation-evidence-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.validation-evidence-columns section{padding:14px;background:var(--cf-color-sunken);border-top:3px solid var(--cf-color-success-border);font-size:var(--cf-text-md)}.validation-evidence-columns section:nth-child(2){background:var(--cf-color-sunken);border-color:var(--cf-color-warning-border)}.validation-evidence-columns section:nth-child(3){background:var(--cf-color-sunken);border-color:var(--cf-color-neutral-border)}.validation-board blockquote{border-left:3px solid var(--cf-color-line-strong);padding-left:16px;margin:16px 0;white-space:pre-wrap}.validation-status{white-space:pre-wrap;font-weight:var(--cf-weight-bold);position:relative}.validation-status:empty{display:none}.validation-notice,.validation-empty{padding:16px;border-radius:var(--cf-radius-md);background:var(--cf-color-info-bg);border:1px solid var(--cf-color-info-border);color:var(--cf-color-ink)}.validation-board [data-history-view]{max-height:600px;overflow:auto}.validation-board [data-history-view]:empty{display:none}@media(max-width:760px){.validation-grid,.validation-evidence-columns{grid-template-columns:1fr}.validation-board dl{grid-template-columns:1fr;gap:4px}.validation-board dd{margin-bottom:10px}.validation-assumption,.validation-note{padding:14px}.validation-board button{max-width:100%}}

/* Keep the module isolated from the app header and onboarding form styles. */
.validation-board label{margin:0;color:var(--cf-color-ink)}.validation-board input,.validation-board textarea{margin:0}.validation-board h2,.validation-board h3{font-weight:var(--cf-weight-bold);letter-spacing:-.01em}.validation-board .validation-check input{accent-color:var(--cf-color-accent)}.validation-board button:hover:not(:disabled){background:var(--cf-color-raised);border-color:var(--cf-color-ink)}.validation-board .cf-btn--primary:hover:not(:disabled){background:var(--cf-color-accent-strong);border-color:var(--cf-color-accent-strong);color:var(--cf-color-on-accent)}.validation-board form small{line-height:1.6}.validation-board .validation-grid>*{min-width:0}

[data-validation-mount]>.validation-board>button:first-child{display:none}
/* Phase 8: the assumption version ("v1") stays whole; the label text wraps beside it. */
.validation-board .validation-check small{flex:none;white-space:nowrap}
