/* LCB call review: readable working content, open surfaces and clear decisions. */
:root {
  color-scheme: light;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  --ink: #193638;
  --muted: #506867;
  --petrol: #294e4f;
  --petrol-hover: #1b3e40;
  --paper: #fafbf7;
  --white: #fff;
  --line: #d0dcd4;
  --soft: #eaf0e9;
  --green: #285e46;
  --amber: #79510c;
  --red: #963b30;
  --focus: #175f8c;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); -webkit-font-smoothing: antialiased; }
body.large-text, html.large-text, html[data-text-size="large"], body[data-text-size="large"] { font-size: 18px; }
button, input, select, textarea { font: inherit; }
button, a, input, select, textarea, summary { -webkit-tap-highlight-color: transparent; }
button, select, summary, .import-button { cursor: pointer; }
button { color: inherit; }
a { color: var(--petrol); text-underline-offset: .18em; }
a:hover { color: #102f31; }
button, input, select, textarea { border-radius: 5px; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible, .import-button:focus-within {
  outline: 3px solid var(--focus); outline-offset: 3px;
}
button:disabled { opacity: .48; cursor: not-allowed; }
h1, h2, h3, h4, p, ul, ol, figure { margin: 0; }
h1, h2, h3, h4 { font-weight: 650; line-height: 1.25; }
img { max-width: 100%; height: auto; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 100; padding: 10px 16px; background: var(--white); border: 2px solid var(--focus); }
.skip-link:focus { top: 10px; }
.button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .43rem .75rem; border: 1px solid #acbfb4; background: var(--white); color: var(--petrol); font-weight: 580; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.button:hover { background: var(--soft); border-color: var(--petrol); }
.button.primary { background: var(--petrol); border-color: var(--petrol); color: var(--white); }
.button.primary:hover { background: var(--petrol-hover); }
.button.quiet { background: transparent; border-color: transparent; }
.button.quiet:hover { background: var(--soft); }
.button.danger, button.danger { color: var(--red); border-color: #c89b90; background: #fff7f3; }
.review-header { display: flex; align-items: center; gap: 1.1rem; padding: .7rem 1.5rem; border-bottom: 1px solid var(--line); background: #fbfcf8; }
.brand-link { flex-shrink: 0; display: flex; align-items: center; }
.review-logo { width: 112px; max-height: 44px; object-fit: contain; }
.review-identity { border-left: 1px solid var(--line); padding-left: 1.1rem; flex-shrink: 0; }
.review-identity h1 { font-size: 1.05rem; letter-spacing: -.02em; }
.review-identity p { color: var(--muted); font-size: .82rem; margin-top: .1rem; }
.prototype-label { display: inline-flex; gap: .4rem; align-items: center; font-size: .8rem; color: var(--muted); white-space: nowrap; }
.prototype-label > span { width: 6px; height: 6px; background: #ad7935; border-radius: 50%; }
.review-tools { margin-left: auto; display: flex; align-items: center; flex-wrap: wrap; gap: .2rem; }
.review-tools .button { font-size: .85rem; padding-left: .55rem; padding-right: .55rem; }
.type-mark { font-size: 1rem; font-weight: 700; letter-spacing: -.055em; }
.import-button { position: relative; overflow: hidden; }
.import-button input { position: absolute; inset: 0; opacity: 0; width: 100%; height: 100%; cursor: pointer; }
.storage-banner { display: flex; align-items: center; justify-content: space-between; gap: .5rem 1.5rem; padding: .45rem 1.5rem; border-bottom: 1px solid var(--line); background: #eef3ec; color: #344f44; font-size: .81rem; }
.storage-state { display: flex; align-items: center; flex-wrap: wrap; gap: .2rem .5rem; }
.storage-state strong { font-weight: 650; }
.storage-dot { flex-shrink: 0; width: 6px; height: 6px; border-radius: 50%; background: var(--green); }
.storage-reminder { color: var(--muted); }
.storage-banner.warning, .storage-banner[data-state="warning"], .storage-banner[data-state="conflict"] { background: #fff1d5; color: #694507; border-color: #d6b970; }
.storage-banner.danger, .storage-banner.error, .storage-banner[data-state="error"], .storage-banner[data-state="failed"] { background: #fff0e9; color: #822e25; border-color: #d9a99b; }
.storage-banner.warning .storage-dot, .storage-banner[data-state="conflict"] .storage-dot { background: var(--amber); }
.storage-banner.danger .storage-dot, .storage-banner.error .storage-dot, .storage-banner[data-state="error"] .storage-dot { background: var(--red); }
.chapter-bar { background: #fbfcf8; border-bottom: 1px solid var(--line); }
.stage-nav { display: flex; align-items: stretch; gap: 0; padding: 0 1.5rem; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; }
.stage-nav button, .stage-nav a { display: flex; align-items: center; justify-content: flex-start; gap: .55rem; flex: 0 0 auto; min-height: 56px; padding: .6rem .85rem; background: transparent; border: 0; border-bottom: 3px solid transparent; border-radius: 0; color: var(--muted); text-decoration: none; font-size: .86rem; font-weight: 550; white-space: nowrap; }
.stage-nav button:hover, .stage-nav a:hover { color: var(--petrol); background: #eaf0e97a; }
.stage-nav button.active, .stage-nav a.active, .stage-nav [aria-current="step"], .stage-nav [aria-current="page"], .stage-nav [aria-pressed="true"] { border-bottom-color: var(--petrol); color: var(--petrol); font-weight: 700; background: #eef3ec; }
.stage-nav .stage-number, .stage-nav .nav-number { color: var(--muted); font-size: .75rem; font-variant-numeric: tabular-nums; }
.stage-nav small { font-size: .75rem; }
.stage-nav .complete, .stage-nav .agreed { color: var(--green); }
.review-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 350px); gap: 2rem; max-width: 1720px; padding: 1.4rem 1.5rem 1.75rem; margin: 0 auto; }
.stage-main, .review-sidebar { min-width: 0; }
.stage-heading-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .45rem; }
.eyebrow { font-size: .78rem; font-weight: 650; letter-spacing: .075em; text-transform: uppercase; color: var(--muted); }
#stage-heading { font-size: clamp(1.45rem, 2vw, 2rem); letter-spacing: -.035em; max-width: 32ch; }
.stage-intro { font-size: 1rem; line-height: 1.5; margin-top: .55rem; max-width: 85ch; color: #3c5653; }
.pill, .tag { display: inline-flex; align-items: center; gap: .35rem; max-width: 100%; border: 1px solid #bdcfc0; padding: .18rem .5rem; border-radius: 4px; font-size: .77rem; font-weight: 560; line-height: 1.4; color: #345c47; background: #edf3e9; }
.tag { color: var(--muted); border-color: var(--line); background: transparent; font-weight: 500; }
.pill.pending, .pill[data-status="pending"] { color: var(--muted); border-color: var(--line); background: transparent; }
.pill.agreed, .pill[data-status="agreed"] { color: #235535; background: #e7f1e3; border-color: #adc6a6; }
.pill.changes, .pill.evidence, .pill.warning, .pill[data-status="changes"], .pill[data-status="evidence"] { color: #785007; background: #fff1d5; border-color: #dbbf83; }
.preview-section { margin-top: 1.1rem; }
.preview-tabs { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem; min-height: 42px; border-bottom: 1px solid var(--line); margin-bottom: .65rem; padding-bottom: .35rem; }
.preview-tabs button, .preview-tabs a { min-height: 40px; padding: .4rem .65rem; border: 1px solid transparent; background: transparent; font-size: .86rem; font-weight: 580; text-decoration: none; color: var(--petrol); }
.preview-tabs [aria-pressed="true"], .preview-tabs [aria-selected="true"], .preview-tabs .active { border-color: #aac0b2; background: #e7eee4; }
.preview-tabs button:hover, .preview-tabs a:hover { background: var(--soft); }
.preview-tabs .preview-open, .preview-tabs .focus-preview { margin-left: auto; }
.preview-container { min-width: 0; overflow: hidden; }
.preview-container:empty { min-height: 130px; border-block: 1px solid var(--line); background: linear-gradient(100deg, #edf3eb, #fafbf7); }
.preview-container img, .screen-capture, .screenshot { display: block; width: 100%; height: auto; border: 1px solid #becdc1; }
.preview-container figure { margin: 0; }
.preview-container figcaption, .preview-caption { font-size: .83rem; color: var(--muted); line-height: 1.45; margin-top: .5rem; }
.preview-container iframe, .preview-frame { display: block; width: 100%; min-width: 0; height: 620px; border: 1px solid #aebfb4; background: #f5f8f3; }
.preview-desktop { width: 100%; overflow: auto; border: 1px solid var(--line); }
.preview-desktop iframe { border: 0; width: 100%; height: 640px; }
.preview-phone, .phone-frame { width: min(100%, 406px); margin: 0 auto; padding: 8px; border-radius: 24px; background: #193638; }
.preview-phone iframe, .phone-frame iframe, iframe.preview-phone { min-height: 560px; height: 680px; width: 100%; border: 0; border-radius: 17px; background: var(--paper); }
.preview-phone img, .phone-frame img { border: 0; border-radius: 17px; }
.stage-section { padding-top: 1.1rem; margin-top: 1.2rem; border-top: 1px solid var(--line); }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: .65rem; margin-bottom: .65rem; }
.section-heading h3 { margin-right: auto; font-size: 1rem; letter-spacing: -.012em; }
.section-marker { font-variant-numeric: tabular-nums; font-size: .77rem; color: #61786d; font-weight: 600; }
.belief-list { padding-left: 1.2rem; }
.belief-list li { padding-left: .2rem; margin-bottom: .4rem; }
.belief-list li::marker { color: #628571; }
.table-wrap { max-width: 100%; overflow-x: auto; scrollbar-width: thin; }
table { width: 100%; border-collapse: collapse; text-align: left; font-size: .88rem; font-variant-numeric: tabular-nums; }
th { font-size: .79rem; font-weight: 650; color: #405c51; padding: .5rem .65rem; border-bottom: 1px solid #aebfb4; vertical-align: bottom; background: #ecf1e8; }
td { padding: .6rem .65rem; border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }
th:first-child, td:first-child { padding-left: .3rem; }
th:last-child, td:last-child { padding-right: .3rem; }
td small { display: block; color: var(--muted); font-size: .84rem; margin-top: .15rem; }
tbody tr:last-child td { border-bottom: 0; }
.inputs-table th:first-child { min-width: 7rem; }
.inputs-table td:first-child { font-weight: 580; }
.stage-pagination { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-top: 1.5rem; padding-top: .85rem; border-top: 1px solid var(--line); }
.stage-position { color: var(--muted); font-size: .83rem; text-align: center; font-variant-numeric: tabular-nums; }
.review-sidebar { padding-left: 1.5rem; border-left: 1px solid var(--line); }
.sidebar-heading { font-size: 1.12rem; letter-spacing: -.02em; }
.discussion-section > .eyebrow { margin-bottom: .5rem; }
.decision-ask { margin-top: .8rem; border-left: 3px solid #628571; padding: .1rem 0 .1rem .8rem; font-size: 1rem; line-height: 1.5; }
.decision-ask p + p { margin-top: .4rem; }
.questions-heading { font-size: .87rem; margin: 1rem 0 .5rem; }
.questions-list { counter-reset: questions; }
.question, .questions-list > li { position: relative; padding: .5rem 0 .65rem 1.5rem; border-top: 1px solid var(--line); font-size: .93rem; line-height: 1.45; list-style: none; }
.question::before, .questions-list > li::before { counter-increment: questions; content: counter(questions, decimal-leading-zero); position: absolute; left: 0; top: .6rem; font-size: .7rem; font-weight: 650; color: #62756b; }
.question p, .question small { margin-top: .2rem; }
.question small { display: block; color: var(--muted); font-size: .83rem; }
.notes-section { margin-top: 1rem; padding-top: 1rem; border-top: 2px solid #adc1b2; }
.notes-help { font-size: .87rem; color: var(--muted); margin-bottom: .8rem; }
.field { display: flex; flex-direction: column; gap: .3rem; min-width: 0; margin-bottom: .7rem; }
.field label { font-size: .82rem; font-weight: 620; color: #3e594d; }
input, select, textarea { width: 100%; min-width: 0; min-height: 42px; padding: .5rem .65rem; color: var(--ink); border: 1px solid #acbfb2; background: #fffefa; box-shadow: none; }
input::placeholder, textarea::placeholder { color: #65766c; opacity: 1; }
textarea { resize: vertical; line-height: 1.45; }
select { padding-right: 1.5rem; }
.field-pair { display: grid; grid-template-columns: minmax(0,1fr); }
.save-decision { width: 100%; margin-top: .1rem; }
.approval-note { color: var(--muted); font-size: .79rem; line-height: 1.45; margin-top: .6rem; }
.review-footer { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1.5rem; padding: .8rem 1.5rem; border-top: 1px solid var(--line); font-size: .78rem; color: var(--muted); }
.review-footer > span:first-child { font-weight: 600; }
.muted { color: var(--muted); }
.danger { color: var(--red); }
.warning { color: var(--amber); }
.notice, .export-notice { padding: .7rem 0 .7rem .85rem; margin: .75rem 0; border-left: 3px solid #799a83; color: #405c4b; background: transparent; font-size: .91rem; line-height: 1.5; }
.notice.warning, .export-notice.warning { border-left-color: #aa7b28; color: #79510c; }
.notice.danger, .export-notice.danger { border-left-color: #a74937; color: var(--red); }
.notice strong, .export-notice strong { color: inherit; }
.concept { border: 1px solid #adc2b2; background: #f4f7f0; padding: 1rem 1.15rem; }
.concept h3 { font-size: 1.15rem; letter-spacing: -.02em; }
.concept h4 { font-size: .95rem; }
.concept p { margin: .45rem 0; }
.concept small { font-size: .82rem; color: var(--muted); }
.concept-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .6rem; padding-bottom: .75rem; margin-bottom: .85rem; border-bottom: 1px solid #bbcebc; }
.concept-toolbar p { margin: .2rem 0 0; }
.concept-toolbar .pill { font-size: .76rem; }
.concept-table { margin: .75rem 0; }
.concept-table th { background: #e6eee1; }
.concept-table td { border-color: #c8d6c7; }
.concept-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.concept-card { padding: .8rem 0; border-top: 1px solid #b8cdbb; }
.concept-card p { font-size: .91rem; }
.concept .button { font-size: .88rem; }
.flow-list { display: grid; gap: 0; padding: 0; list-style: none; counter-reset: workflow; }
.flow-node { position: relative; padding: .8rem 0 .8rem 2rem; border-bottom: 1px solid #c5d4c5; counter-increment: workflow; }
.flow-node::before { content: counter(workflow, decimal-leading-zero); position: absolute; left: 0; top: .9rem; color: #607a66; font-size: .75rem; font-weight: 650; }
.flow-node:last-child { border-bottom: 0; }
.flow-node p { margin: .3rem 0 0; font-size: .91rem; }
.summary-intro { margin-bottom: 1rem; }
.summary-counts { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin: .75rem 0 1rem; padding-block: .6rem; border-block: 1px solid var(--line); }
.summary-counts b { font-variant-numeric: tabular-nums; }
.summary-record { padding: .85rem 0; border-top: 1px solid var(--line); break-inside: avoid; overflow-wrap: anywhere; }
.summary-record header, .summary-record .summary-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .45rem; margin-bottom: .5rem; }
.summary-record h3 { font-size: 1rem; }
.summary-record p { margin-top: .35rem; white-space: pre-wrap; }
.summary-record dl { display: grid; grid-template-columns: 8rem minmax(0,1fr); gap: .35rem .75rem; margin: .65rem 0 0; }
.summary-record dt { color: var(--muted); font-size: .86rem; }
.summary-record dd { margin: 0; white-space: pre-wrap; }
.summary-table { margin-top: .8rem; }
.summary-table td { white-space: pre-wrap; }
.print-summary { max-width: 1100px; margin: 0 auto; padding: 1.5rem; }
dialog { width: min(800px, calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 0; border: 1px solid #9eb6a8; border-radius: 8px; background: #fbfcf8; color: var(--ink); box-shadow: 0 24px 90px #16323440; }
dialog::backdrop { background: #17363674; backdrop-filter: blur(3px); }
.dialog-header { padding: 1rem 1.25rem .8rem; border-bottom: 1px solid var(--line); }
.dialog-header h2 { font-size: 1.25rem; letter-spacing: -.025em; }
.dialog-body { padding: 1rem 1.25rem; overflow-wrap: anywhere; }
.dialog-body > p + p { margin-top: .6rem; }
.dialog-body ul, .dialog-body ol { padding-left: 1.25rem; }
.dialog-body li { margin-top: .35rem; }
.dialog-body pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .86rem; }
.dialog-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: .5rem; padding: .85rem 1.25rem; border-top: 1px solid var(--line); background: #eef3e9; }
.dialog-actions button { min-height: 40px; padding: .45rem .75rem; border: 1px solid #a8bfad; background: var(--white); font-weight: 580; }
.dialog-actions button.primary { color: var(--white); background: var(--petrol); border-color: var(--petrol); }
.noscript-message { margin: 1rem; border-left: 4px solid var(--amber); padding: 1rem; background: #fff1d5; }
@media (min-width: 1550px) { .review-workspace { grid-template-columns: minmax(0,1fr) 380px; gap: 2.25rem; } }
@media (max-width: 1250px) {
  .review-header { flex-wrap: wrap; gap: .6rem 1rem; }
  .review-tools { flex-basis: 100%; margin-left: 0; padding-top: .25rem; border-top: 1px solid var(--line); }
  .prototype-label { margin-left: auto; }
  .review-workspace { gap: 1.3rem; grid-template-columns: minmax(0,1fr) 320px; }
  .review-sidebar { padding-left: 1.2rem; }
  .storage-reminder { display: none; }
}
@media (max-width: 1000px) {
  .review-workspace { grid-template-columns: minmax(0,1fr); }
  .review-sidebar { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1.5rem; border-left: 0; border-top: 1px solid var(--line); padding: 1.25rem 0 0; }
  .notes-section { border-top: 0; border-left: 1px solid var(--line); margin: 0; padding: 0 0 0 1.5rem; }
  .preview-container iframe, .preview-frame { height: 660px; }
}
@media (max-width: 650px) {
  .review-header { padding: .7rem .85rem; gap: .65rem .75rem; }
  .review-logo { width: 88px; max-height: 40px; }
  .review-identity { padding-left: .75rem; }
  .review-identity h1 { font-size: 1.03rem; }
  .prototype-label { width: 100%; margin-left: 0; font-size: .79rem; }
  .review-tools { gap: .15rem; }
  .review-tools .button { min-height: 44px; padding-inline: .55rem; font-size: .84rem; }
  .review-tools #summary-button { margin-right: .2rem; }
  .storage-banner { padding: .55rem .85rem; align-items: flex-start; }
  .storage-state { gap: .15rem .4rem; }
  #save-detail { width: 100%; margin-left: .8rem; }
  .stage-nav { padding-inline: .35rem; }
  .stage-nav button, .stage-nav a { min-height: 52px; padding-inline: .75rem; }
  .review-workspace { padding: 1rem .85rem 1.25rem; gap: 1.2rem; }
  #stage-heading { font-size: 1.6rem; }
  .stage-heading-row { align-items: flex-start; }
  .eyebrow { font-size: .75rem; }
  .stage-intro { font-size: 1rem; }
  .preview-tabs { gap: .2rem; }
  .preview-tabs button, .preview-tabs a { min-height: 44px; }
  .preview-container iframe, .preview-frame { height: 600px; }
  .preview-phone, .phone-frame { padding: 5px; border-radius: 18px; }
  .preview-phone iframe, .phone-frame iframe { height: 600px; border-radius: 13px; }
  .preview-phone img, .phone-frame img { border-radius: 13px; }
  .concept { padding: .85rem; }
  .concept-grid { grid-template-columns: minmax(0,1fr); gap: .5rem; }
  .concept table { font-size: .86rem; }
  th, td { padding: .5rem; }
  .inputs-table { min-width: 490px; }
  .review-sidebar { display: block; padding-top: 1rem; }
  .notes-section { margin-top: 1rem; padding: 1rem 0 0; border-left: 0; border-top: 2px solid #adc1b2; }
  .button, input, select, .dialog-actions button { min-height: 44px; }
  .field-pair { grid-template-columns: minmax(0,1fr); }
  .field { margin-bottom: .85rem; }
  .stage-pagination { gap: .5rem; }
  .stage-pagination .button { padding-inline: .65rem; font-size: .9rem; white-space: normal; }
  .stage-position { font-size: .8rem; }
  .review-footer { padding: .8rem .85rem; }
  dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 24px); }
  .dialog-header, .dialog-body, .dialog-actions { padding: .85rem; }
  .dialog-actions { justify-content: stretch; }
  .dialog-actions button { flex: 1; }
  .summary-record dl { grid-template-columns: minmax(0,1fr); gap: .1rem; }
  .summary-record dd { margin-bottom: .55rem; }
}
@media (max-width: 360px) {
  .review-tools .button { font-size: .8rem; padding-inline: .4rem; }
  .stage-heading-row { flex-wrap: wrap; gap: .35rem; }
  .preview-tabs .preview-open, .preview-tabs .focus-preview { margin-left: 0; }
}
@media (prefers-contrast: more) {
  :root { --muted: #274139; --line: #849e8c; }
  input, textarea, select { border-color: #557361; }
  .pill, .tag { border-color: #6e8a73; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@media print {
  @page { margin: 15mm; }
  :root { font-size: 10.5pt; color-scheme: light; }
  body { background: white; color: #142e2e; }
  .review-header { padding: 0 0 4mm; background: transparent; }
  .review-logo { width: 90px; }
  .review-identity h1 { font-size: 16pt; }
  .prototype-label { margin-left: auto; }
  .review-tools, .storage-banner, .chapter-bar, .review-workspace, .review-footer, .skip-link, dialog, .screen-only, .no-print, .noscript-message { display: none !important; }
  .print-summary, #print-summary[hidden] { display: block !important; padding: 4mm 0 0; margin: 0; max-width: none; }
  .print-summary button, .print-summary input, .print-summary textarea, .print-summary select { display: none !important; }
  .summary-record { padding: 4mm 0; break-inside: avoid; }
  .summary-record h3 { font-size: 12pt; }
  .summary-record dl { grid-template-columns: 30mm minmax(0,1fr); }
  .summary-record dd { margin-bottom: 0; }
  .summary-counts { gap: 3mm 7mm; }
  .pill, .tag { background: transparent !important; color: #193638 !important; border-color: #7f9688; }
  .notice, .export-notice { border-left-color: #6c8574; }
  table { font-size: 9pt; }
  th { background: transparent; color: #193638; }
  tr { break-inside: avoid; }
  a { color: inherit; text-decoration: none; }
  .muted, small { color: #3f5548; }
}

.preview-warning { padding: .55rem .7rem; font-size: .85rem; color: #674707; background: #fff1d5; border-bottom: 1px solid #dac188; }
.question textarea { margin-top: .4rem; font-size: .92rem; }
.focus-screen .review-workspace { grid-template-columns: minmax(0,1fr); }
.focus-screen .review-sidebar, .focus-screen .stage-section { display:none; }
.focus-screen .preview-desktop iframe { height: 74vh; min-height:600px; }
.concept li { margin-block:.45rem; }
.concept-grid ul { padding-left:1.1rem; }
@media (max-width:650px) { .concept-grid { grid-template-columns:1fr; } }
