.equity-plan-body { background: #eef2ee; color: #172019; }
.equity-plan-intro { background: #0d2615; color: #fff; isolation: isolate; min-height: clamp(520px, 68svh, 720px); overflow: hidden; position: relative; }
.equity-engine-hero-video { cursor: pointer; height: 100%; inset: 0; object-fit: cover; object-position: center 48%; position: absolute; touch-action: manipulation; width: 100%; z-index: 0; }
.equity-engine-hero-video:focus-visible { outline: 3px solid #f1c35b; outline-offset: -5px; }
.equity-engine-hero-shade { background: linear-gradient(90deg, rgba(4,15,8,.96) 0%, rgba(4,15,8,.84) 43%, rgba(4,15,8,.34) 76%, rgba(4,15,8,.46) 100%), linear-gradient(0deg, rgba(4,15,8,.84) 0%, transparent 48%, rgba(4,15,8,.28) 100%); inset: 0; pointer-events: none; position: absolute; z-index: 1; }
.equity-plan-intro-inner { align-content: center; align-items: start; display: grid; min-height: clamp(520px, 68svh, 720px); padding-bottom: 72px; padding-top: 64px; pointer-events: none; position: relative; z-index: 2; }
.equity-plan-intro h1 { font-size: 54px; letter-spacing: 0; line-height: 1.02; margin-bottom: 18px; max-width: 820px; }
.equity-plan-intro p:not(.eyebrow) { color: #e0e8e2; font-size: 19px; max-width: 700px; }
.equity-engine-hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; pointer-events: auto; width: max-content; }
.equity-plan-intro .button { margin: 0; pointer-events: auto; width: max-content; }
.equity-plan-intro small { color: #9fb0a3; display: block; margin-top: 16px; max-width: 660px; }
.equity-engine-video-cue { top: 22px; }
.equity-engine-sound-control { bottom: auto; pointer-events: auto; position: static; right: auto; }
.equity-engine-video-viewer-open { pointer-events: auto; position: static; }
.plan-workspace { padding: 36px 0 90px; }
.plan-heading { align-items: end; display: flex; justify-content: space-between; margin-bottom: 26px; }
.plan-heading h2 { font-size: 34px; letter-spacing: 0; margin: 0; }
.plan-reset, .text-command { background: none; border: 0; border-bottom: 1px solid currentColor; color: #176f34; cursor: pointer; font-weight: 800; padding: 5px 0; }
.plan-progress { border-bottom: 1px solid #c8d1ca; border-top: 1px solid #c8d1ca; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.plan-progress li { align-items: center; color: #667169; display: flex; font-size: 13px; font-weight: 800; gap: 8px; min-height: 58px; padding: 10px; text-transform: uppercase; }
.plan-progress li span { align-items: center; border: 1px solid #aebbb1; border-radius: 50%; display: flex; flex: 0 0 auto; height: 26px; justify-content: center; width: 26px; }
.plan-progress li.is-complete { color: #176f34; }
.plan-progress li[aria-current="step"] { background: #0d2615; color: #fff; }
.plan-progress li[aria-current="step"] span { border-color: #f1c35b; color: #f1c35b; }
.plan-status { color: #4f5e53; min-height: 28px; padding: 18px 0 0; }
.plan-status.is-error { color: #9f3529; }
.plan-stage { border-top: 4px solid #176f34; display: grid; gap: 28px; grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr); margin-top: 18px; padding: 42px 0 24px; }
.plan-stage[hidden] { display: none; }
.stage-copy { max-width: 430px; }
.stage-copy h3, .completion-stage h3 { font-size: 30px; letter-spacing: 0; line-height: 1.15; margin-bottom: 14px; }
.stage-copy p { color: #59665c; }
.step-kicker { color: #176f34; font-family: var(--font-mono); font-size: 12px; font-weight: 800; margin-bottom: 10px; text-transform: uppercase; }
.plan-form { display: grid; gap: 20px; }
.plan-form label:not(.check-row) { display: grid; gap: 8px; }
.plan-form label > span:first-child { font-weight: 800; }
.plan-form input, .plan-form textarea, .plan-form select { background: #fff; border: 1px solid #aebbb1; border-radius: 4px; color: #172019; min-height: 48px; padding: 12px 14px; width: 100%; }
.plan-form textarea { min-height: 104px; resize: vertical; }
.plan-form input:focus, .plan-form textarea:focus, .plan-form select:focus { border-color: #176f34; box-shadow: 0 0 0 3px rgba(23,111,52,.14); outline: none; }
.check-row { align-items: start; display: grid; gap: 10px; grid-template-columns: 20px 1fr; }
.check-row input { height: 18px; margin: 3px 0 0; min-height: 0; width: 18px; }
.property-confirmation { border-left: 4px solid #f59a2f; display: grid; gap: 24px; grid-column: 2; padding: 4px 0 4px 22px; }
.property-confirmation strong { display: block; font-size: 22px; margin-bottom: 8px; }
.property-confirmation dl { display: grid; gap: 8px; grid-template-columns: auto 1fr; margin: 20px 0 0; }
.property-confirmation dt { color: #667169; }
.property-confirmation dd { margin: 0; }
.property-listing-signal { border-top: 1px solid #c8d1ca; display: grid; gap: 18px; padding-top: 22px; }
.property-listing-copy h4 { font-size: 18px; letter-spacing: 0; margin: 3px 0 8px; }
.property-listing-copy > strong { color: #0d2615; font-size: 32px; }
.property-listing-copy > p:not(.step-kicker) { color: #59675e; margin: 6px 0 0; }
.property-listing-copy .property-listing-route { border-left: 3px solid #176f34; color: #30493a; font-size: 13px; margin-top: 12px; padding-left: 10px; }
.property-listing-image { margin: 0; }
.property-listing-image > div { aspect-ratio: 16 / 9; background: #e7ece8; border: 1px solid #c8d1ca; display: grid; overflow: hidden; place-items: center; }
.property-listing-image img { height: 100%; object-fit: cover; width: 100%; }
.property-listing-image figcaption { color: #59675e; font-size: 12px; margin-top: 7px; }
.property-listing-image a, .property-listing-sources a { color: #176f34; font-weight: 800; }
.property-image-empty { background: #eef2ef; border: 1px solid #c8d1ca; display: grid; gap: 4px; padding: 16px; }
.property-image-empty strong { font-size: 15px; margin: 0; }
.property-image-empty span { color: #59675e; font-size: 13px; }
.property-signal-meter > div:first-child { display: flex; justify-content: space-between; }
.property-signal-meter strong { font-size: 14px; margin: 0; }
.property-signal-track { background: #d9e0da; height: 12px; margin-top: 7px; overflow: hidden; }
.property-signal-track span { background: #176f34; display: block; height: 100%; }
.property-listing-signal.is-conflicted .property-signal-track span { background: #b45b18; }
.property-listing-sources { border-top: 1px solid #d7ddd8; list-style: none; margin: 0; padding: 0; }
.property-listing-sources li { align-items: start; border-bottom: 1px solid #d7ddd8; display: grid; gap: 4px; padding: 10px 0; }
.property-listing-sources span { color: #59675e; font-size: 13px; }
[data-confirm-property] { grid-column: 2; width: max-content; }
.goal-grid { border: 0; display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; }
.goal-grid legend { font-weight: 800; margin-bottom: 10px; }
.goal-grid label { background: #fff; border: 1px solid #c2ccc4; display: grid; gap: 10px; grid-template-columns: 20px 1fr; min-height: 106px; padding: 17px; }
.goal-grid input { height: 18px; margin: 2px 0 0; min-height: 0; width: 18px; }
.goal-grid strong { display: block; margin-bottom: 4px; }
.system-witness-workspace { display: grid; gap: 22px; }
.voice-witness { align-items: center; background: #0d2615; border-left: 4px solid #f59a2f; color: #fff; display: grid; gap: 18px; grid-template-columns: 1fr auto; padding: 24px; }
.voice-witness h4, .voice-readback h4 { font-size: 22px; letter-spacing: 0; margin: 0 0 7px; }
.voice-witness p:not(.step-kicker) { color: #c7d2c9; margin: 0; max-width: 640px; }
.voice-witness-start { align-items: center; display: inline-flex; gap: 9px; white-space: nowrap; }
.voice-witness-actions { display: grid; gap: 8px; }
.voice-visual-start { background: transparent; border-color: #9fb0a3; color: #fff; }
.voice-witness-start > span:first-child { color: #fff; font-size: 12px; }
.voice-witness-status { border-top: 1px solid rgba(255,255,255,.18); color: #aebbb1 !important; font-size: 12px; grid-column: 1 / -1; padding-top: 13px; }
.voice-witness-status.is-active { color: #f1c35b !important; }
.voice-witness-status.is-confirmed { color: #9fd8ae !important; }
.equity-question-research { background: #f6faf7; border: 1px solid #9fb3a7; padding: 20px; }
.equity-question-research > div:first-child, .equity-question-research-item > div:first-child { align-items: flex-start; display: flex; gap: 16px; justify-content: space-between; }
.equity-question-research-list { display: grid; gap: 10px; margin-top: 14px; }
.equity-question-research-item { border-top: 1px solid #cbd7cf; padding-top: 12px; }
.equity-question-research-item strong { color: #0a3823; }
.equity-question-research-item span, .equity-question-research-item small { color: #52635a; }
.equity-question-research-item p { margin: 6px 0; }
.equity-question-research-links { display: flex; flex-wrap: wrap; gap: 10px; }
.equity-question-research-links a { color: #12653d; font-weight: 700; }
.voice-readback { border-left: 4px solid #176f34; padding: 4px 0 4px 18px; }
.voice-readback p:last-child { color: #59665c; margin: 0; }
.typed-fallback { border-bottom: 1px solid #c8d1ca; border-top: 1px solid #c8d1ca; padding: 14px 0; }
.typed-fallback summary { color: #176f34; cursor: pointer; font-weight: 800; }
.typed-fallback-fields { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-top: 18px; }
.typed-fallback-fields label:last-child { grid-column: 1 / -1; }
.confirm-readback { justify-self: start; }
.confirm-readback[hidden], .voice-readback[hidden], .system-review-actions[hidden] { display: none; }
.system-review-actions { display: grid; gap: 20px; }
.evidence-groups, .scenario-list { display: grid; gap: 28px; }
.evidence-group h4 { border-bottom: 1px solid #c8d1ca; font-size: 18px; letter-spacing: 0; margin: 0 0 12px; padding-bottom: 8px; }
.evidence-list { display: grid; gap: 9px; }
.evidence-item { background: #fff; border-left: 4px solid #176f34; padding: 15px 17px; }
.evidence-item.context { border-color: #c56a2c; }
.evidence-item.unknown { border-color: #8b4e44; }
.evidence-item strong { display: block; margin-bottom: 3px; }
.evidence-meta { color: #68756b; font-family: var(--font-mono); font-size: 11px; margin-top: 8px; }
.evidence-meta a { color: #176f34; text-decoration: underline; }
[data-acknowledge-evidence] { grid-column: 2; width: max-content; }
.scenario { background: #fff; border-top: 4px solid #f59a2f; padding: 22px; }
.scenario-heading { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; justify-content: space-between; }
.scenario-heading > span { color: #68756b; font-family: var(--font-mono); font-size: 11px; text-transform: uppercase; }
.scenario h4 { font-size: 23px; letter-spacing: 0; margin-bottom: 10px; }
.scenario-status { color: #176f34; font-family: var(--font-mono); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.scenario-columns { display: grid; gap: 24px; grid-template-columns: 1fr 1fr; margin-top: 18px; }
.scenario h5 { font-size: 14px; margin: 0 0 7px; text-transform: uppercase; }
.scenario ul { margin: 0; padding-left: 20px; }
.lattice-directions { border-top: 1px solid #d4ddd6; display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; padding-top: 16px; }
.lattice-directions button { background: #f5f7f5; border: 1px solid #aebbb1; border-radius: 4px; color: #243229; cursor: pointer; font-weight: 800; min-height: 44px; padding: 9px 12px; }
.lattice-directions button[aria-pressed="true"] { background: #0d2615; border-color: #0d2615; color: #fff; }
.lattice-saved { border-top: 1px solid #d4ddd6; color: #176f34; font-weight: 800; margin-top: 20px; padding-top: 14px; }
.plan-stage[data-stage="SCENARIO_PLAN"] .improvement-integration, .plan-stage[data-stage="SCENARIO_PLAN"] .cabinet-studio, .plan-stage[data-stage="SCENARIO_PLAN"] .directional-model, .plan-stage[data-stage="SCENARIO_PLAN"] .plan-actions { grid-column: 1 / -1; }
.improvement-integration { background: #f8faf8; border-bottom: 1px solid #aebbb1; border-top: 4px solid #176f34; padding: 26px; }
.improvement-integration-heading { align-items: start; display: flex; gap: 24px; justify-content: space-between; }
.improvement-integration-heading h4 { font-size: 24px; letter-spacing: 0; margin: 0 0 9px; }
.improvement-integration-heading p:not(.step-kicker) { color: #59665c; margin: 0; max-width: 790px; }
.improvement-system-list { border-top: 1px solid #c8d1ca; display: grid; margin-top: 22px; }
.improvement-system { border-bottom: 1px solid #c8d1ca; padding: 20px 0; }
.improvement-system-heading { align-items: start; display: flex; gap: 20px; justify-content: space-between; }
.improvement-system-heading p { color: #176f34; font-family: var(--font-mono); font-size: 11px; font-weight: 800; margin: 0 0 4px; text-transform: uppercase; }
.improvement-system-heading h5 { font-size: 20px; margin: 0; }
.improvement-system dl { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 16px 0 0; }
.improvement-system dl div { border-left: 3px solid #d8dfd9; padding-left: 12px; }
.improvement-system dt { color: #59665c; font-size: 13px; }
.improvement-system dd { font-size: 18px; font-weight: 800; margin: 4px 0 0; }
.improvement-system ul { color: #59665c; margin-bottom: 0; }
.improvement-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.improvement-action { border: 1px solid #176f34; border-radius: 4px; color: #0d5127; font-weight: 800; padding: 9px 12px; text-decoration: none; }
.improvement-calculation { background: #edf4ee; border-left: 4px solid #176f34; margin-top: 22px; padding: 18px; }
.improvement-calculation p { margin: 7px 0; }
.improvement-calculation small { color: #59665c; display: block; line-height: 1.5; }
.cabinet-studio { background: #fff; border-bottom: 1px solid #aebbb1; border-top: 4px solid #f59a2f; padding: 26px; }
.cabinet-studio-heading { align-items: start; display: flex; gap: 24px; justify-content: space-between; }
.cabinet-studio-heading h4 { font-size: 26px; letter-spacing: 0; margin: 0 0 9px; }
.cabinet-studio-heading p:not(.step-kicker) { color: #59665c; margin: 0; max-width: 790px; }
.cabinet-studio-badge { color: #176f34; flex: 0 0 auto; font-family: var(--font-mono); font-size: 11px; font-weight: 800; padding-top: 3px; text-transform: uppercase; }
.cabinet-studio-toggle { margin-top: 20px; }
.cabinet-studio-workspace { border-top: 1px solid #c8d1ca; margin-top: 22px; padding-top: 22px; }
.cabinet-studio-workspace[hidden], .cabinet-collection-detail[hidden] { display: none; }
.cabinet-studio-status { color: #4f5e53; margin: 0 0 18px; }
.cabinet-studio-status.is-error { color: #9f3529; font-weight: 800; }
.cabinet-collection-grid { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cabinet-collection { align-items: stretch; background: #f5f7f5; border: 1px solid #b8c4ba; border-radius: 4px; color: #172019; cursor: pointer; display: grid; grid-template-columns: 74px minmax(0, 1fr); min-height: 92px; overflow: hidden; padding: 0; text-align: left; }
.cabinet-collection img { height: 100%; min-height: 90px; object-fit: cover; width: 74px; }
.cabinet-collection > span { align-content: center; display: grid; min-width: 0; padding: 10px; }
.cabinet-collection strong, .cabinet-collection small { display: block; overflow-wrap: anywhere; }
.cabinet-collection small { color: #667169; font-size: 11px; margin-top: 4px; }
.cabinet-collection[aria-pressed="true"] { background: #0d2615; border-color: #0d2615; color: #fff; }
.cabinet-collection[aria-pressed="true"] small { color: #c7d2c9; }
.cabinet-collection-detail { align-items: stretch; background: #edf4ee; border-left: 4px solid #176f34; display: grid; gap: 22px; grid-template-columns: 180px minmax(0, 1fr); margin-top: 20px; padding: 20px; }
.cabinet-collection-detail > img { height: 220px; object-fit: cover; width: 100%; }
.cabinet-collection-detail h5 { font-size: 24px; letter-spacing: 0; margin: 0 0 7px; }
.cabinet-collection-detail p:not(.step-kicker) { color: #4f5e53; margin: 0; }
.cabinet-collection-detail dl { display: grid; gap: 8px 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 18px 0 0; }
.cabinet-collection-detail dl div { border-top: 1px solid #c5d2c7; padding-top: 8px; }
.cabinet-collection-detail dt { color: #667169; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.cabinet-collection-detail dd { margin: 3px 0 0; }
.cabinet-product-controls { display: grid; gap: 16px; grid-template-columns: minmax(180px, .6fr) minmax(240px, 1.4fr); margin-top: 24px; }
.cabinet-product-controls label { display: grid; gap: 7px; }
.cabinet-product-controls label span { font-weight: 800; }
.cabinet-product-controls input, .cabinet-product-controls select { background: #fff; border: 1px solid #aebbb1; border-radius: 4px; color: #172019; min-height: 46px; padding: 10px 12px; width: 100%; }
.cabinet-product-list { border-bottom: 1px solid #c8d1ca; display: grid; max-height: 470px; overflow: auto; padding: 14px 0; }
.cabinet-product { align-items: center; border-top: 1px solid #d8dfda; display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr) auto; min-height: 76px; padding: 11px 6px; }
.cabinet-product:first-child { border-top: 0; }
.cabinet-product > div:first-child { display: grid; min-width: 0; }
.cabinet-product > div:last-child { align-items: center; display: flex; gap: 12px; }
.cabinet-product span, .cabinet-product small { color: #667169; }
.cabinet-product small { font-size: 12px; }
.cabinet-add { align-items: center; background: #176f34; border: 0; border-radius: 4px; color: #fff; cursor: pointer; display: inline-flex; font-size: 24px; height: 40px; justify-content: center; width: 40px; }
.cabinet-material-ledger { border-top: 4px solid #0d2615; margin-top: 26px; padding-top: 20px; }
.cabinet-ledger-heading { align-items: start; display: flex; gap: 20px; justify-content: space-between; }
.cabinet-ledger-heading h5 { font-size: 22px; letter-spacing: 0; margin: 0; }
.cabinet-ledger-heading > strong { font-size: 25px; }
.cabinet-ledger-line { align-items: center; border-top: 1px solid #d8dfda; display: grid; gap: 14px; grid-template-columns: minmax(0, 1fr) 78px 110px auto; min-height: 64px; padding: 9px 0; }
.cabinet-ledger-line > div { display: grid; }
.cabinet-ledger-line span { color: #667169; font-size: 12px; }
.cabinet-ledger-line input { border: 1px solid #aebbb1; border-radius: 4px; min-height: 40px; padding: 7px; width: 74px; }
.cabinet-ledger-line button { background: none; border: 0; color: #8b2f27; cursor: pointer; font-weight: 800; }
.cabinet-empty { color: #667169; padding: 18px 0; }
.cabinet-boundary { background: #fff5e7; border-left: 4px solid #c56a2c; color: #5f5144; font-size: 13px; margin: 18px 0; padding: 12px 14px; }
.cabinet-ledger-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 16px; }
.sr-only { height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.directional-model { background: #f8faf8; border-bottom: 1px solid #aebbb1; border-top: 4px solid #0d2615; padding: 26px; }
.directional-model-heading { align-items: start; display: flex; gap: 24px; justify-content: space-between; }
.directional-model-heading h4 { font-size: 24px; letter-spacing: 0; margin: 0 0 9px; }
.directional-model-heading p:not(.step-kicker) { color: #59665c; margin: 0; max-width: 790px; }
.directional-model-badge { color: #176f34; flex: 0 0 auto; font-family: var(--font-mono); font-size: 11px; font-weight: 800; padding-top: 3px; text-transform: uppercase; }
.directional-model-toggle { margin-top: 20px; }
.directional-model-workspace { border-top: 1px solid #c8d1ca; margin-top: 22px; padding-top: 22px; }
.directional-model-workspace[hidden], .directional-model-results[hidden], [data-current-balance-fields][hidden], [data-original-terms-fields][hidden] { display: none; }
.directional-model-status { color: #4f5e53; margin: 0 0 18px; }
.directional-model-status.is-error { color: #9f3529; font-weight: 800; }
.directional-model-form { display: grid; gap: 22px; }
.directional-model-form input, .directional-model-form select { background: #fff; border: 1px solid #aebbb1; border-radius: 4px; color: #172019; min-height: 48px; padding: 12px 14px; width: 100%; }
.directional-model-form input:focus, .directional-model-form select:focus { border-color: #176f34; box-shadow: 0 0 0 3px rgba(23,111,52,.14); outline: none; }
.directional-model-form label:not(.check-row, .directional-choice label) { display: grid; gap: 8px; }
.directional-model-form label > span:first-child { font-weight: 800; }
.directional-model-consent { background: #edf4ee; border-left: 4px solid #176f34; padding: 15px; }
.directional-fieldset { border: 0; border-top: 1px solid #c8d1ca; margin: 0; padding: 20px 0 0; }
.directional-fieldset legend { font-size: 17px; font-weight: 800; padding: 0 12px 0 0; }
.directional-fieldset legend span { color: #667169; font-size: 13px; font-weight: 400; }
.directional-form-grid { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.directional-choice { display: grid; gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 16px; }
.directional-choice label { align-items: center; background: #fff; border: 1px solid #aebbb1; cursor: pointer; display: grid; gap: 9px; grid-template-columns: 20px 1fr; min-height: 52px; padding: 12px; }
.directional-choice input { height: 18px; margin: 0; min-height: 0; padding: 0; width: 18px; }
.directional-confirmations { display: grid; gap: 8px; margin-top: 16px; }
.field-help { color: #667169; font-size: 13px; margin: 10px 0 0; }
.directional-form-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 16px; }
.directional-delete { color: #8b2f27; }
.directional-model-results { border-top: 4px solid #f59a2f; margin-top: 28px; padding-top: 22px; }
.directional-results-heading h5 { font-size: 22px; letter-spacing: 0; margin: 0 0 14px; }
.directional-gate-state { border-left: 4px solid #176f34; margin-bottom: 18px; padding: 12px 16px; }
.directional-gate-state.is-withheld, .directional-gate-state.is-error { background: #f8ecea; border-color: #9f3529; }
.directional-gate-state.is-stale { background: #fff5e7; border-color: #c56a2c; }
.directional-gate-state p { margin: 5px 0 0; }
.directional-paths { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.directional-path { background: #fff; border: 1px solid #b8c4ba; border-top: 4px solid #176f34; min-width: 0; padding: 18px; }
.directional-path.is-withheld { border-top-color: #8b4e44; }
.directional-path-heading { align-items: start; display: flex; gap: 12px; justify-content: space-between; }
.directional-path-heading h6 { font-size: 18px; letter-spacing: 0; margin: 0; }
.directional-path-heading span { color: #59665c; font-family: var(--font-mono); font-size: 12px; font-weight: 800; text-align: right; text-transform: uppercase; }
.directional-path-message { color: #6c443e; margin: 16px 0; }
.directional-path-figures { display: grid; margin: 15px 0; }
.directional-path-figures div { align-items: baseline; border-top: 1px solid #d8dfda; display: flex; gap: 12px; justify-content: space-between; padding: 9px 0; }
.directional-path-figures dt { color: #59665c; }
.directional-path-figures dd { font-weight: 800; margin: 0; text-align: right; }
.directional-source-meta { color: #68756b; font-family: var(--font-mono); font-size: 12px; line-height: 1.6; margin: 12px 0 0; overflow-wrap: anywhere; }
.directional-source-meta a { color: #176f34; text-decoration: underline; }
.directional-ledger { border-top: 1px solid #c8d1ca; display: grid; gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 20px; padding-top: 20px; }
.directional-ledger section { min-width: 0; }
.directional-ledger h6 { font-size: 13px; letter-spacing: 0; margin: 0 0 7px; text-transform: uppercase; }
.directional-ledger p, .directional-ledger ul { margin: 0; }
.directional-ledger ul { padding-left: 19px; }
.plan-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; }
.button-secondary { background: transparent; border-color: #176f34; color: #176f34; }
.button-secondary:hover, .button-secondary:focus-visible { background: #dfe9e1; border-color: #176f34; color: #0d2615; }
.contact-grid { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.completion-stage { display: block; max-width: 800px; }
.completion-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.equity-plan-footer { background: #0d2615; color: #afbbb2; padding: 38px 0; }
.equity-plan-footer p { max-width: 900px; }
@media (max-width: 960px) {
  .plan-stage { grid-template-columns: 1fr; }
  .property-confirmation, [data-confirm-property], [data-acknowledge-evidence] { grid-column: 1; }
}
@media (max-width: 720px) {
  .equity-plan-intro { min-height: clamp(500px, 66svh, 620px); }
  .equity-plan-intro-inner { align-content: end; min-height: clamp(500px, 66svh, 620px); padding-bottom: 82px; padding-top: 64px; }
  .equity-engine-hero-video { object-position: 57% center; }
  .equity-engine-hero-shade { background: linear-gradient(90deg, rgba(4,15,8,.88), rgba(4,15,8,.55)), linear-gradient(0deg, rgba(4,15,8,.96) 0%, rgba(4,15,8,.28) 68%, rgba(4,15,8,.5) 100%); }
  .equity-plan-intro h1 { font-size: 36px; margin-bottom: 14px; }
  .equity-plan-intro p:not(.eyebrow) { font-size: 16px; line-height: 1.5; }
  .equity-plan-intro .button { display: none; }
  .equity-plan-intro small { font-size: 12px; margin-top: 12px; }
  .equity-engine-video-cue { right: 14px; top: 14px; }
  .equity-engine-sound-control { left: 0; position: absolute; top: 18px; z-index: 5; }
  .plan-workspace { padding-top: 24px; }
  .plan-heading { margin-bottom: 18px; }
  .plan-heading h2 { font-size: 28px; }
  .plan-progress { grid-template-columns: 1fr; }
  .plan-progress li { display: none; min-height: 48px; }
  .plan-progress li[aria-current="step"] { display: flex; }
  .goal-grid, .contact-grid, .scenario-columns, .typed-fallback-fields, .lattice-directions { grid-template-columns: 1fr; }
  .directional-form-grid, .directional-choice, .directional-paths, .directional-ledger { grid-template-columns: 1fr; }
  .typed-fallback-fields label:last-child { grid-column: 1; }
  .plan-heading { align-items: start; flex-direction: column; gap: 12px; }
  .plan-stage { gap: 20px; margin-top: 10px; padding-top: 22px; }
  [data-stage="START"] .plan-form { grid-row: 1; }
  [data-stage="START"] .stage-copy { grid-row: 2; }
  .voice-witness { align-items: stretch; grid-template-columns: 1fr; padding: 20px; }
  .voice-witness-start { justify-content: center; width: 100%; }
  .voice-witness-status { grid-column: 1; }
  .directional-model { padding: 20px 16px; }
  .improvement-integration { padding: 20px 16px; }
  .improvement-integration-heading { display: grid; gap: 14px; }
  .improvement-integration-heading .button { justify-content: center; width: 100%; }
  .improvement-system dl { grid-template-columns: 1fr; }
  .cabinet-studio { padding: 20px 16px; }
  .cabinet-studio-heading, .cabinet-ledger-heading { display: grid; gap: 8px; }
  .cabinet-collection-grid { grid-template-columns: 1fr; }
  .cabinet-collection { grid-template-columns: 86px minmax(0, 1fr); }
  .cabinet-collection img { width: 86px; }
  .cabinet-collection-detail { grid-template-columns: 120px minmax(0, 1fr); }
  .cabinet-collection-detail > img { height: 180px; }
  .cabinet-product-controls { grid-template-columns: 1fr; }
  .cabinet-ledger-line { align-items: start; grid-template-columns: minmax(0, 1fr) 74px; }
  .cabinet-ledger-line > b, .cabinet-ledger-line > button { justify-self: start; }
  .cabinet-studio-toggle, .cabinet-ledger-actions .button { justify-content: center; width: 100%; }
  .directional-model-heading { display: grid; gap: 8px; }
  .directional-model-toggle, .directional-form-actions .button { justify-content: center; width: 100%; }
  .directional-form-actions { align-items: stretch; flex-direction: column; }
  .directional-choice label { min-height: 56px; }
  .directional-path-figures div { align-items: start; display: grid; gap: 3px; }
  .directional-path-figures dd { text-align: left; }
}
@media print {
  .site-header, .equity-plan-intro, .plan-progress, .plan-status, .plan-actions, .plan-reset, .guide-launcher, .guide-panel, .guide-backdrop, .equity-plan-footer { display: none !important; }
  .plan-workspace { padding: 0; }
  .plan-stage { border: 0; display: none !important; }
  .plan-stage[data-stage="SCENARIO_PLAN"], .plan-stage[data-stage="COMPLETE"] { display: block !important; }
  .directional-model-toggle, .directional-model-form { display: none !important; }
  .cabinet-studio-toggle, .cabinet-product-controls, .cabinet-product-list, .cabinet-ledger-actions { display: none !important; }
}
