/* v167 — shared Professional presentation primitives used by the product and
   the isolated public demo. Presentation only; no storage or exchange rules. */
.professional-app-shell,
.professional-demo-parity{
  --professional-radius-card:22px;
  --professional-radius-control:14px;
  --professional-shadow-card:0 16px 42px rgba(23,58,54,.075);
  --professional-shadow-soft:0 8px 22px rgba(23,58,54,.055);
}
.professional-summary-builder,
.demo-summary-builder{display:grid;gap:18px;min-width:0}
.demo-summary-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:clamp(18px,3vw,28px);border:1px solid var(--professional-line);border-radius:var(--professional-radius-card);background:linear-gradient(140deg,#fff,#eef9f6);box-shadow:var(--professional-shadow-card)}
.demo-summary-builder-head h2{margin:4px 0 7px;color:var(--professional-ink);font-size:clamp(1.45rem,4vw,2rem);line-height:1.1}
.demo-summary-builder-head p{max-width:680px;margin:0;color:var(--professional-muted);line-height:1.5}
.demo-summary-local-badge{flex:none;padding:7px 10px;border:1px solid #bcdcd5;border-radius:999px;background:#fff;color:var(--professional-brand-dark);font-size:.72rem;font-weight:900}
.demo-summary-step-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:7px;border:1px solid var(--professional-line);border-radius:18px;background:#fff;box-shadow:var(--professional-shadow-soft)}
.demo-summary-step-nav button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px;border:0;border-radius:13px;background:transparent;color:var(--professional-muted);font:800 .78rem/1.25 inherit;cursor:pointer}
.demo-summary-step-nav button span{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--professional-line);border-radius:50%;background:#f8fcfb}
.demo-summary-step-nav button.active{background:var(--professional-ink);color:#fff}
.demo-summary-step-nav button.active span{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.12)}
.demo-summary-step-nav button.done{color:var(--professional-brand-dark)}
.demo-summary-builder-card{display:grid;gap:18px;padding:clamp(18px,3vw,28px);border:1px solid var(--professional-line);border-radius:var(--professional-radius-card);background:#fff;box-shadow:var(--professional-shadow-card)}
.demo-summary-builder-card>h3,.demo-summary-builder-card>header h3{margin:0;color:var(--professional-ink);font-size:clamp(1.25rem,3vw,1.6rem)}
.demo-summary-builder-card>p,.demo-summary-builder-card>header p{margin:-10px 0 0;color:var(--professional-muted);line-height:1.5}
.demo-summary-field,.demo-summary-date-grid label,.demo-summary-wording-field{display:grid;gap:7px;color:var(--professional-ink);font-size:.8rem;font-weight:850}
.demo-summary-field input,.demo-summary-field select,.demo-summary-date-grid input,.demo-summary-wording-field textarea{width:100%;min-height:46px;padding:11px 12px;border:1px solid #bcd2cd;border-radius:12px;background:#fff;color:var(--professional-ink);font:650 .92rem/1.45 inherit}
.demo-summary-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.demo-summary-source-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.demo-summary-source-groups fieldset{display:grid;align-content:start;gap:9px;min-width:0;margin:0;padding:14px;border:1px solid var(--professional-line);border-radius:16px;background:#f8fcfb}
.demo-summary-source-groups legend{padding:0 6px;color:var(--professional-ink);font-size:.82rem;font-weight:900}
.demo-summary-source-row{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--professional-line);border-radius:12px;background:#fff;cursor:pointer}
.demo-summary-source-row input{flex:none;margin-top:3px}
.demo-summary-source-row span{display:grid;gap:3px;min-width:0}
.demo-summary-source-row strong{color:var(--professional-ink);font-size:.84rem}.demo-summary-source-row small{color:var(--professional-muted);line-height:1.4}
.demo-summary-options{display:flex;flex-wrap:wrap;gap:8px}.demo-summary-options label{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--professional-line);border-radius:999px;background:#fff;color:var(--professional-text);font-size:.76rem;font-weight:780}
.demo-summary-documentation-picks{display:grid;gap:9px;margin:0;padding:14px;border:1px solid var(--professional-line);border-radius:16px;background:#f8fcfb}.demo-summary-documentation-picks legend{padding:0 6px;color:var(--professional-ink);font-size:.82rem;font-weight:900}.demo-summary-documentation-picks p{margin:0;color:var(--professional-muted);font-size:.78rem}.demo-summary-documentation-picks>div{display:flex;flex-wrap:wrap;gap:8px}.demo-summary-documentation-picks label{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--professional-line);border-radius:999px;background:#fff;color:var(--professional-text);font-size:.76rem;font-weight:780}
.demo-summary-wording-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.demo-summary-wording-field textarea{min-height:150px;resize:vertical}
.demo-summary-builder-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;padding-top:15px;border-top:1px solid var(--professional-line)}
.demo-summary-error{margin:0;padding:12px 14px;border:1px solid #e4b7ab;border-radius:13px;background:#fff5f2;color:#843c2e;font-weight:800}
.demo-summary-final>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.demo-summary-pdf-ready{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:min(100%,520px);padding:11px 12px;border:1px solid #a9d9ce;border-radius:14px;background:#f0faf7}
.demo-summary-pdf-ready>span{display:grid;gap:2px}.demo-summary-pdf-ready strong{color:var(--professional-ink)}.demo-summary-pdf-ready small{color:var(--professional-muted)}.demo-summary-pdf-ready>div{display:flex;flex-wrap:wrap;gap:7px}
.demo-summary-support-group{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid var(--professional-line);border-radius:13px;background:#f8fcfb}.demo-summary-support-group>strong{color:var(--professional-ink);font-size:.78rem}.demo-summary-support-group ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.demo-summary-support-group li{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 9px;color:var(--professional-text)}.demo-summary-support-group li span{color:var(--professional-muted);font-size:.75rem}.demo-summary-support-group li p{flex-basis:100%;margin:0;color:var(--professional-muted);font-size:.78rem}
.demo-summary-response-table{display:grid;margin-top:12px;overflow:hidden;border:1px solid var(--professional-line);border-radius:13px}.demo-summary-response-table>div{display:grid;grid-template-columns:minmax(120px,.85fr) minmax(120px,1fr) minmax(130px,1.15fr);gap:10px;padding:10px 11px}.demo-summary-response-table>div+div{border-top:1px solid var(--professional-line)}.demo-summary-response-table .head{background:#f2f8f6;color:var(--professional-muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.demo-summary-response-table strong,.demo-summary-response-table span{color:var(--professional-text);font-size:.75rem;line-height:1.4}.demo-summary-document-section blockquote{margin:11px 0 0;padding:11px 12px;border-left:3px solid var(--professional-brand);border-radius:0 12px 12px 0;background:#f2faf8}.demo-summary-document-section blockquote strong{color:var(--professional-ink);font-size:.72rem}.demo-summary-document-section blockquote p{margin:4px 0 0;color:var(--professional-text)}
.demo-first-share-gate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:clamp(17px,3vw,24px);border:1px solid #b8d9d1;border-radius:20px;background:linear-gradient(135deg,#fff,#eef9f6);box-shadow:var(--professional-shadow-card)}
.demo-first-share-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--professional-ink);color:#fff;font-size:1.4rem}.demo-first-share-gate h3{margin:3px 0 6px;color:var(--professional-ink)}.demo-first-share-gate p{max-width:720px;margin:0;color:var(--professional-text);line-height:1.5}.demo-first-share-gate small{display:block;margin-top:7px;color:var(--professional-muted)}
.demo-report-key-patterns{display:grid;gap:13px;padding:18px;border:1px solid var(--professional-line);border-radius:20px;background:#f8fcfb}.demo-report-key-patterns>header{display:flex;align-items:end;justify-content:space-between;gap:12px}.demo-report-key-patterns h2{margin:3px 0 0;color:var(--professional-ink)}.demo-report-key-patterns>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.demo-report-pattern{display:grid;grid-template-columns:1fr auto;gap:5px;padding:14px;border:1px solid var(--professional-line);border-radius:14px;background:#fff}.demo-report-pattern span{color:var(--professional-muted);font-size:.72rem;font-weight:900}.demo-report-pattern strong{grid-row:1/3;grid-column:2;color:var(--professional-ink);font-size:1.45rem}.demo-report-pattern small{overflow-wrap:anywhere;color:var(--professional-text);line-height:1.4}.demo-report-pattern.helpful{border-top:3px solid #4ea797}.demo-report-pattern.attention{border-top:3px solid #c66e59}.demo-report-pattern.notTried{border-top:3px solid #8c9f9b}
.demo-report-verification{display:flex;align-items:flex-start;gap:11px;padding:14px;border:1px solid #bfe0d8;border-radius:16px;background:#f1faf7}.demo-report-verification>span{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:#2d9d8e;color:#fff;font-weight:900}.demo-report-verification strong{color:var(--professional-ink)}.demo-report-verification p{margin:3px 0 0;color:var(--professional-muted);font-size:.82rem;line-height:1.45}
.demo-report-evidence,.demo-report-evidence-group{display:grid;gap:13px}.demo-report-evidence-group>header{display:flex;align-items:center;justify-content:space-between;padding:0 2px}.demo-report-evidence-group h2{margin:0;color:var(--professional-ink);font-size:1rem}.demo-report-evidence-group>header span{padding:4px 8px;border-radius:999px;background:var(--professional-soft);color:var(--professional-brand-dark);font-size:.72rem;font-weight:900}.demo-report-decision{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px solid var(--professional-line);border-radius:18px;background:#fff}.demo-report-decision h2{margin:3px 0 4px;color:var(--professional-ink)}.demo-report-decision p{margin:0;color:var(--professional-muted)}
.demo-client-share-review{display:grid;gap:16px}.demo-share-review-summary,.demo-share-support-progress,.demo-share-privacy-check{border:1px solid var(--professional-line);border-radius:17px;background:#fff}.demo-share-review-summary>header,.demo-share-support-progress>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--professional-line);background:#f7fbfa}.demo-share-review-summary h2,.demo-share-support-progress h2{margin:0;color:var(--professional-ink);font-size:.94rem}.demo-share-review-summary dl{margin:0}.demo-share-review-summary dl>div{display:grid;grid-template-columns:minmax(100px,.45fr) 1fr;gap:10px;padding:10px 14px}.demo-share-review-summary dl>div+div{border-top:1px solid var(--professional-line)}.demo-share-review-summary dt{color:var(--professional-muted);font-size:.72rem;font-weight:850}.demo-share-review-summary dd{margin:0;color:var(--professional-ink);font-size:.78rem;font-weight:800}.demo-share-support-progress ul{display:grid;gap:0;margin:0;padding:0;list-style:none}.demo-share-support-progress li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}.demo-share-support-progress li+li{border-top:1px solid var(--professional-line)}.demo-share-support-progress li span{display:grid;gap:2px}.demo-share-support-progress li small{color:var(--professional-muted)}.demo-share-support-progress li b{color:var(--professional-ink);font-size:.78rem;text-align:right}.demo-share-privacy-check{display:flex;gap:11px;padding:13px;background:#f1faf7}.demo-share-privacy-check>span{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--professional-brand);color:#fff}.demo-share-privacy-check p{display:grid;gap:2px;margin:0}.demo-share-privacy-check span{color:var(--professional-muted);font-size:.78rem;line-height:1.4}.demo-share-review-actions{display:flex;flex-wrap:wrap;gap:9px}
@media(max-width:760px){.demo-summary-step-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-summary-source-groups,.demo-summary-wording-grid{grid-template-columns:1fr}.demo-first-share-gate{grid-template-columns:auto 1fr}.demo-first-share-gate .button{grid-column:1/-1;width:100%}.demo-report-key-patterns>div{grid-template-columns:1fr}.demo-report-decision,.demo-summary-pdf-ready{align-items:stretch;flex-direction:column}.demo-summary-pdf-ready>div{width:100%}}
@media(max-width:480px){.demo-summary-builder-head{display:grid}.demo-summary-local-badge{justify-self:start}.demo-summary-step-nav{grid-template-columns:1fr}.demo-summary-date-grid{grid-template-columns:1fr}.demo-summary-builder-actions>*{width:100%}.demo-summary-final>header{display:grid}.demo-share-review-summary dl>div{grid-template-columns:1fr;gap:3px}}
@media(max-width:560px){.demo-summary-response-table>div{grid-template-columns:1fr;gap:3px}.demo-summary-response-table .head{display:none}}
@media(prefers-reduced-motion:reduce){.demo-summary-step-nav button{transition:none}}
@media(forced-colors:active){.demo-summary-builder-head,.demo-summary-step-nav,.demo-summary-builder-card,.demo-summary-source-groups fieldset,.demo-summary-source-row,.demo-summary-field input,.demo-summary-field select,.demo-summary-wording-field textarea,.demo-first-share-gate,.demo-report-key-patterns,.demo-report-pattern,.demo-report-verification,.demo-report-decision,.demo-client-share-review section{border-color:ButtonText}}
