/* Public narrative only. Existing account and application layouts keep their styles. */
.account-preview .public-main { max-width:1240px; }
.account-preview .public-story { font:400 16px/24px var(--sans); }
.public-story [tabindex="-1"] { scroll-margin-top:100px; }
.account-preview .public-section-nav { display:flex; flex-wrap:wrap; gap:8px 28px; margin-bottom:40px; }
.account-preview .public-section-nav a,.account-preview .public-text-link { display:inline-flex; align-items:center; min-height:44px; color:var(--teal-dark); font-size:14px; line-height:20px; text-decoration:underline; text-underline-offset:5px; }
.account-preview .public-hero { gap:56px; align-items:start; padding-bottom:56px; }
.account-preview .public-hero .lede { max-width:510px; }
.account-preview .public-story .eyebrow { font-size:14px; line-height:20px; letter-spacing:normal; text-transform:none; color:var(--muted); margin-bottom:12px; }
.account-preview .public-story .public-caption { font-size:14px; line-height:20px; color:var(--muted); margin-top:16px; }
.public-craft { padding:24px; border:1px solid var(--line); border-radius:12px; background:var(--paper); }
.public-craft-heading { display:flex; gap:12px; align-items:center; flex-wrap:wrap; font-size:14px; line-height:20px; font-weight:500; }
.public-craft-heading .public-badge { margin-left:auto; }
.public-spacecraft-art { width:100%; display:block; color:var(--ink); margin:20px 0; }
.public-craft-readings { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0; }
.public-craft-readings dt { color:var(--muted); font-size:14px; line-height:20px; }
.public-craft-readings dd { margin:8px 0 0; font-size:28px; line-height:34px; font-weight:500; font-variant-numeric:tabular-nums; }
.public-craft-readings dd span { font-size:14px; }
.public-badge { display:inline-block; padding:3px 8px; border:1px solid var(--line); border-radius:4px; color:var(--muted); background:var(--surface-alt); font-size:14px; line-height:20px; font-weight:400; white-space:nowrap; }
.public-section-heading { max-width:660px; margin-bottom:28px; }
.public-section-heading>p:last-child:not(.eyebrow) { margin-top:12px; color:var(--muted); }
.public-journey { border-top:1px solid var(--line); padding:40px 0 56px; }
.public-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; list-style:none; padding:0; margin:0; }
.public-steps li { min-width:0; }
.public-step-number { display:block; color:var(--teal-dark); font-size:14px; line-height:20px; margin-bottom:16px; font-variant-numeric:tabular-nums; }
.account-preview .public-steps h3 { margin-bottom:8px; }
.public-steps p { color:var(--muted); }
.public-example { border:1px solid var(--line); border-radius:12px; padding:32px; background:var(--paper); }
.public-budget-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; }
.public-readings { margin:0; }
.public-readings>div { display:flex; justify-content:space-between; gap:12px; padding:16px 0; border-bottom:1px solid var(--line); }
.public-readings dt { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.public-readings dd { margin:0; font-weight:500; white-space:nowrap; font-variant-numeric:tabular-nums; }
.account-preview .public-budget-inputs label { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:24px 0 12px; font-size:16px; line-height:24px; font-weight:500; }
.public-demand-field { display:flex; align-items:center; gap:12px; }
.account-preview .public-demand-field input { width:140px; min-height:48px; font-size:16px; font-variant-numeric:tabular-nums; }
.account-preview .public-budget-inputs .button { margin-top:20px; }
.public-budget-result { background:var(--surface-alt); border:1px solid var(--line); padding:24px; border-radius:8px; align-self:start; }
.public-result-label { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.account-preview .public-result-value { font-size:40px; line-height:44px; font-weight:500; font-variant-numeric:tabular-nums; margin:24px 0 16px; }
.public-formula { font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.account-preview .public-result-summary { margin-top:12px; }
.public-model-details { margin-top:24px; border-top:1px solid var(--line); padding-top:12px; }
.public-model-details summary { cursor:pointer; padding:8px 0; color:var(--teal-dark); min-height:44px; font-size:14px; line-height:20px; }
.account-preview .public-model-details p { font-size:14px; line-height:20px; margin-top:12px; }
.account-preview .public-input-error { font-size:14px; line-height:20px; color:var(--danger); margin-top:12px; }
.account-preview .public-example-note { margin-top:28px; padding-top:20px; border-top:1px solid var(--line); font-size:14px; line-height:20px; color:var(--muted); }
.public-continuity { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:48px; padding:56px 0; }
.public-continuity p+p { margin-top:16px; }
.public-pilot { padding:36px; border:1px solid var(--line); border-radius:12px; }
.public-pilot>p,.public-pilot>ul { max-width:720px; }
.account-preview .public-pilot h2 { margin-bottom:16px; }
.public-pilot ul { padding-left:22px; margin:20px 0; }
.public-pilot li+li { margin-top:8px; }
.public-session-notice:has(.entry-error:empty):not(:has(button)) { display:none; }
.public-session-notice { margin-top:24px; }
@media (max-width:850px) {
  .account-preview .public-hero { grid-template-columns:1fr; gap:32px; }
  .public-craft { max-width:520px; width:100%; }
  .public-budget-grid { gap:24px; }
  .public-steps { gap:24px; }
}
@media (max-width:600px) {
  .account-preview .public-main { padding:20px; }
  .account-preview .public-section-nav { gap:4px 20px; margin-bottom:28px; }
  .account-preview .public-hero { padding-bottom:36px; }
  .public-craft { padding:20px; }
  .public-craft-readings { gap:8px; }
  .public-steps,.public-budget-grid,.public-continuity { grid-template-columns:1fr; }
  .public-steps { gap:24px; }
  .public-step-number { margin-bottom:8px; }
  .public-example,.public-pilot { padding:20px; }
  .public-budget-result { padding:20px; }
  .public-continuity { gap:24px; padding:36px 0; }
  .public-journey { padding:28px 0 36px; }
}
@media (forced-colors:active) {
  .public-badge,.public-budget-result,.public-craft,.public-example,.public-pilot { border-color:CanvasText; }
}
