/* Alaska planner alignment layer.
 * Keeps Alaska's state-specific flow while matching the shared Paper Alibi
 * planner shell, spacing, contrast, and navigation behavior. */

.pa-steplabel { font-size: 12px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; color: var(--teal); margin: 0 0 5px; }
.pa-note { font-size: 13px; color: rgba(13,34,56,.7); margin: 0 0 10px; }
.pa-nav-note { flex: 1 1 220px; color: var(--muted); font-size: 12.5px; line-height: 1.4; }
.pa-nav-note:empty { display: none; }
.pa-qlabel { display: block; font-weight: 600; margin: 0 0 8px; color: var(--ink); }

/* ---- Repair item 7: option cards, light scheme, real contrast ---- */
.pa-optcards { display: flex; flex-direction: column; gap: 8px; }
.pa-optcard {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 12px 14px; border: 1.5px solid var(--line-strong); border-radius: 10px;
  cursor: pointer; background: var(--paper-soft); color: var(--ink);
  transition: border-color .12s, background .12s;
}
.pa-optcard:hover { border-color: var(--teal); }
.pa-optcard .pa-card-ctl { margin: 2px 0 0; width: 18px; height: 18px; flex: 0 0 auto; accent-color: var(--teal); }
.pa-optcard-txt { line-height: 1.35; color: var(--ink); }
/* selected: light teal tint, stronger border, checkmark — not color alone */
.pa-optcard.on { border-color: var(--teal); border-width: 2px; background: rgba(42,140,140,.10); box-shadow: inset 3px 0 0 var(--teal); }
.pa-optcard.on .pa-optcard-txt::after { content: " \2713"; color: var(--teal); font-weight: 700; }

/* ---- inline "Tell me more" — never a modal ---- */
.pa-tellmore { margin: 6px 0 2px; }
.pa-tellmore > summary { cursor: pointer; font-size: 13px; color: var(--teal); font-weight: 600; list-style: none; }
.pa-tellmore > summary::-webkit-details-marker { display: none; }
.pa-tellmore > summary::before { content: "\24D8  "; }
.pa-tellmore-body { font-size: 13px; color: rgba(13,34,56,.82); margin: 6px 0 2px; line-height: 1.5; }
.pa-tellmore-body p { margin: 4px 0; }
.pa-help-src a { color: var(--teal); font-weight: 600; }

.pa-nav { display: flex; justify-content: space-between; gap: 12px; margin-top: 18px; }

/* Step tabs. Alaska reuses the shared folder-tab look from planner.css so it
 * matches Alabama and Montana; this layer only adds Alaska's extra states.
 * The five tabs are real buttons with free navigation, exactly like Alabama:
 * every tab opens at any time. A skipped step opens a small explanation
 * panel, so it stays clickable and is never disabled. */
.pa-tab { font-family: inherit; }
.pa-tab:hover:not(.active) { background: rgba(255,248,237,.14); color: #fff8ed; }
.pa-tab:focus-visible { outline: 3px solid var(--teal); outline-offset: 2px; z-index: 2; }
.pa-tab .num { flex: 0 0 auto; }
.pa-tab.skipped { color: #8fa0b3; }
.pa-tab.active.skipped { color: var(--ink); }

/* ---- mobile: five tabs stay tappable, labels wrap instead of clipping ---- */
@media (max-width: 640px) {
  .pa-tabs { gap: 4px; padding: 0 4px; }
  .pa-tab { padding: 9px 3px 11px; min-height: 44px; }
  .pa-tab.active { padding: 10px 3px 14px; }
  .pa-tab .num { width: 20px; height: 20px; font-size: 10.5px; }
  .pa-tab .lbl { font-size: 10px; overflow-wrap: break-word; }
  .pa-optcard { padding: 14px; }
  .pa-nav { flex-wrap: wrap; }
  .pa-nav-note { order: 3; flex-basis: 100%; text-align: right; }
}

/* ---- print: result only ---- */
@media print {
  .pa-tabs, .pa-nav, .pa-summarybar, .pa-printbar, .pa-tellmore, .pa-kit-cta { display: none !important; }
  .pa-card { border: none; box-shadow: none; }
}

/* Polish pass: question note, grouped-choice disclosure */
.pa-qnote { font-size: 13px; color: rgba(13,34,56,.75); margin: 0 0 10px; line-height: 1.45; }
.pa-housing-common { margin-bottom: 8px; }
.pa-morechoices { margin: 6px 0 2px; }
.pa-morechoices > summary { cursor: pointer; font-size: 14px; font-weight: 600; color: var(--teal); list-style: none; padding: 6px 0; }
.pa-morechoices > summary::-webkit-details-marker { display: none; }
.pa-morechoices > summary::before { content: "\25B8  "; }
.pa-morechoices[open] > summary::before { content: "\25BE  "; }
.pa-morechoices ul { margin-top: 6px; }

/* Structured free-plan sections */
.pa-plan-summary { background: rgba(42,140,140,.10); border: 1px solid rgba(42,140,140,.35); border-radius: 10px; padding: 12px 14px; margin: 10px 0 14px; line-height: 1.5; }
.pa-plan-sec { margin: 16px 0; }
.pa-plan-h { font-size: 16px; font-weight: 700; color: var(--ink); margin: 0 0 8px; padding-bottom: 4px; border-bottom: 2px solid rgba(42,140,140,.25); }
.pa-fact { width: 100%; border-collapse: collapse; font-size: 14px; }
.pa-fact th { text-align: left; font-weight: 600; color: rgba(13,34,56,.7); padding: 6px 10px 6px 0; vertical-align: top; width: 42%; }
.pa-fact td { padding: 6px 0; vertical-align: top; }
.pa-fact tr + tr th, .pa-fact tr + tr td { border-top: 1px solid rgba(13,34,56,.08); }
/* One-screen-per-step sections */
.pa-stepsec { margin: 0 0 20px; }
.pa-stepsec-h { font-size: 15px; font-weight: 700; color: var(--ink); margin: 18px 0 8px; padding-bottom: 4px; border-bottom: 1px solid rgba(13,34,56,.12); }
.pa-stepsec:first-child .pa-stepsec-h { margin-top: 4px; }

/* Step-5 result card */

/* Step-5 grouped missing checklist */
.pa-misslist { margin: 4px 0; padding-left: 20px; line-height: 1.5; }
.pa-misslist li { margin: 8px 0; }
.pa-miss-how, .pa-miss-blocks { display: block; font-size: 13px; color: rgba(13,34,56,.72); }
.pa-miss-edit { display: inline-block; margin-top: 4px; padding: 2px 10px; font-size: 12.5px; font-weight: 600; color: var(--teal); background: none; border: 1px solid rgba(42,140,140,.4); border-radius: 14px; cursor: pointer; }
.pa-miss-edit:hover { background: rgba(42,140,140,.1); }
.pa-miss-edit:focus-visible { outline: 3px solid var(--teal); outline-offset: 2px; }

/* one short introduction per step */
.pa-step-intro { color: var(--muted); font-size: 14.5px; line-height: 1.5; margin: 0 0 18px; }

/* plan-document heading, like the other states' plan block */

/* Evidence gather how-to */
.pa-ev-how { display: block; font-size: 13px; color: rgba(13,34,56,.72); }

/* Closing disclaimer */
.pa-plan-close { margin-top: 18px; padding-top: 12px; border-top: 1px solid rgba(13,34,56,.15); font-size: 12.5px; color: rgba(13,34,56,.7); line-height: 1.5; }

/* Visually separate Golden Kit block */

.pa-missgroup { margin: 12px 0; }
.pa-miss-topic { font-size: 13px; font-weight: 700; color: var(--teal); margin: 0 0 6px; text-transform: uppercase; letter-spacing: .04em; }
.pa-steps { margin: 4px 0; padding-left: 22px; line-height: 1.5; }
.pa-steps li { margin: 6px 0; }
.pa-check { margin: 4px 0; padding-left: 20px; line-height: 1.45; }
.pa-check li { margin: 3px 0; }
.pa-src { margin: 4px 0; padding-left: 20px; }
.pa-src li { margin: 4px 0; }
.pa-src a, .pa-fact a { color: var(--teal); font-weight: 600; }
.pa-explain { font-size: 14px; line-height: 1.5; margin: 4px 0 8px; color: rgba(13,34,56,.9); }
.pa-explain p { margin: 6px 0; }
.pa-inline-src { font-size: 13px; margin: 6px 0 2px; color: rgba(13,34,56,.7); }
.pa-inline-src a { color: var(--teal); font-weight: 600; }

/* Golden Kit packet sections (Golden-Kit rebuild) */
.kit-h4 { font-size: 14px; font-weight: 700; color: var(--ink); margin: 12px 0 4px; }
.kit-use { border-left: 3px solid rgba(42,140,140,.35); padding: 2px 0 2px 12px; margin: 10px 0; }
.kit-use > b { display: block; margin-bottom: 2px; }
.kit-srcgroup { margin: 8px 0; }
.kit-srcgroup ul { margin: 4px 0; padding-left: 18px; }
.kit-srcgroup li { margin: 3px 0; }
.kit-teaser { margin: 10px 0; border: 1px dashed rgba(13,34,56,.25); border-radius: 8px; padding: 10px 12px; background: rgba(13,34,56,.02); }
.kit-teaser-h { font-weight: 700; font-size: 13px; color: var(--teal); margin-bottom: 6px; }
.kit-teaser-body { opacity: .85; }
.kit-log th, .kit-log td { font-size: 12px; }
.kit-log td { height: 26px; }

/* ===== Golden Kit parity shell (cross-state parity pass) ===== */
/* Compact "finish your details" prep box */
.kit-prep { border: 1px solid rgba(13,34,56,.14); border-radius: 12px; background: var(--paper-soft); padding: 14px 16px; margin: 12px 0; }
.kit-prep-h { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 6px; }
.kit-prep-h b { font-size: 15px; }
.kit-prep-status { font-size: 13px; font-weight: 700; padding: 3px 10px; border-radius: 20px; }
.kit-prep-status.ready { background: rgba(42,140,140,.14); color: #1d6d6d; }
.kit-prep-status.todo { background: rgba(216,165,58,.18); color: #8a6206; }
.kit-prep .pa-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 8px; }
.kit-prep .pa-field label { display: block; font-size: 12px; font-weight: 600; margin: 0 0 2px; }
.kit-prep .pa-field input { width: 100%; box-sizing: border-box; padding: 6px 8px; border: 1px solid rgba(13,34,56,.2); border-radius: 6px; font-size: 13px; }

/* Jump-to navigation */
.kit-nav { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 4px; padding: 10px 12px; border: 1px solid rgba(13,34,56,.12); border-radius: 10px; background: rgba(13,34,56,.02); }
.kit-nav-lab { font-size: 12px; font-weight: 700; color: rgba(13,34,56,.6); align-self: center; margin-right: 4px; }
.kit-nav a { font-size: 12.5px; color: var(--teal); font-weight: 600; text-decoration: none; padding: 3px 9px; border: 1px solid rgba(42,140,140,.3); border-radius: 16px; white-space: nowrap; }
.kit-nav a:hover { background: rgba(42,140,140,.1); }
.kit-section { scroll-margin-top: 76px; }

/* Compact general instruction box */
.kit-howto { border: 1px solid rgba(13,34,56,.12); border-radius: 10px; padding: 10px 14px; margin: 8px 0; background: rgba(42,140,140,.05); }
.kit-howto ul { margin: 4px 0; padding-left: 20px; }
.kit-howto li { margin: 2px 0; font-size: 13.5px; }

/* Collapsible document cards */
.kit-doc { border: 1px solid rgba(13,34,56,.14); border-radius: 10px; margin: 8px 0; background: var(--paper-soft); overflow: hidden; }
.kit-doc > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 8px; padding: 10px 14px; font-weight: 700; color: var(--ink); }
.kit-doc > summary::-webkit-details-marker { display: none; }
.kit-doc > summary::before { content: "\25B8"; color: var(--teal); font-size: 12px; }
.kit-doc[open] > summary::before { content: "\25BE"; }
.kit-doc-title { flex: 1 1 auto; min-width: 0; }
.kit-doc-tag { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 12px; white-space: nowrap; }
.kit-doc-tag.rec { background: rgba(42,140,140,.15); color: #1d6d6d; }
.kit-doc-tag.opt { background: rgba(13,34,56,.08); color: rgba(13,34,56,.6); }
.kit-doc-body { padding: 0 14px 12px; }
.kit-doc-purpose { font-size: 13px; color: rgba(13,34,56,.8); margin: 4px 0 8px; }
.kit-doc-help { margin: 6px 0; }
.kit-doc-help > summary { cursor: pointer; font-size: 12.5px; color: var(--teal); font-weight: 600; }
.kit-doc-help .pa-check { margin: 4px 0; }
.kit-doc-tools { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }

/* Single sources section groups already styled via .kit-srcgroup */

/* Mobile: no horizontal overflow, wrapping, readable tables */
@media (max-width: 640px) {
  .kit-prep .pa-fields { grid-template-columns: 1fr; }
  /* Fact tables collapse to a single column at phone width. The two-column
     grid forced a minimum width that overflowed inside an opened plan-detail
     drawer; stacking the label above its value removes the overflow entirely
     rather than just shrinking the type. */
  .pa-fact, .pa-fact tbody, .pa-fact tr, .pa-fact th, .pa-fact td { display: block; width: auto; }
  .pa-fact tr { padding: 8px 0; border-top: 1px solid rgba(13,34,56,.08); }
  .pa-fact tr:first-child { border-top: 0; }
  .pa-fact tr + tr th, .pa-fact tr + tr td { border-top: 0; }
  .pa-fact th {
    width: auto; padding: 0 0 2px; font-size: 12.5px;
    overflow-wrap: anywhere; word-break: normal;
  }
  .pa-fact td {
    padding: 0; font-size: 12.5px;
    overflow-wrap: anywhere; word-break: normal;
  }
  /* Any table that still needs its own width scrolls inside its own box
     instead of pushing the page sideways. */
  .pa-plan-drawer-body { overflow-x: auto; }
  .kit-letter { font-size: 12px; overflow-x: auto; }
  .kit-log { display: block; max-width: 100%; overflow-x: auto; }
  .kit-nav { gap: 5px; }
  /* Long jump links wrap instead of forcing the nav wider than the phone. */
  .kit-nav a { white-space: normal; max-width: 100%; overflow-wrap: anywhere; }
  .kit-doc > summary { flex-wrap: wrap; }
  .kit-srcgroup a, .kit-src a, .pa-src a { word-break: break-word; overflow-wrap: anywhere; }
  .kit-doc-tools .pa-btn { flex: 1 1 auto; text-align: center; }
}

/* Print: structured packet only (.pp-doc), hide the interactive page. */
@media print {
  body.pa-printing .pa-topbar, body.pa-printing .pa-tool-footer, body.pa-printing .pa-desk,
  body.pa-printing .pa-quick-top, body.pa-printing #pa-app { display: none !important; }
  #pa-print-area { display: block !important; }
  .pp-doc { font-size: 12px; color: #000; }
  .pp-doc h1 { font-size: 22px; margin: 0 0 4px; }
  .pp-doc h2 { font-size: 15px; border-bottom: 1px solid #999; padding-bottom: 3px; margin: 18px 0 8px; page-break-after: avoid; }
  .pp-letter { white-space: pre-wrap; font: 11px/1.5 ui-monospace, Menlo, monospace; border: 1px solid #ccc; padding: 10px; page-break-inside: avoid; }
  .pp-table { width: 100%; border-collapse: collapse; margin: 6px 0; page-break-inside: avoid; }
  .pp-table th, .pp-table td { border: 1px solid #bbb; padding: 4px 6px; text-align: left; font-size: 11px; vertical-align: top; }
  .pp-appendix { page-break-before: always; }
  .pp-disc, .pp-foot { font-size: 10.5px; color: #333; border: 1px solid #ccc; padding: 8px; margin: 8px 0; }
}
#pa-print-area { display: none; }

/* Step 5 alignment with the shared Alabama presentation */
.pa-doc .pa-plan-sec { margin: 16px 0; }
.pa-doc .pa-plan-h { font-size: 14px; margin: 18px 0 6px; border-bottom: 1px solid var(--line); padding-bottom: 4px; }
.pa-plan-drawer { margin: 12px 0; border: 1px solid rgba(13,34,56,.12); border-radius: 10px; background: rgba(13,34,56,.02); }
.pa-plan-drawer > summary { cursor: pointer; list-style: none; padding: 11px 13px; font-weight: 700; color: var(--ink); }
.pa-plan-drawer > summary::-webkit-details-marker { display: none; }
.pa-plan-drawer > summary::before { content: "\25B8"; display: inline-block; margin-right: 8px; color: var(--teal); }
.pa-plan-drawer[open] > summary::before { content: "\25BE"; }
.pa-plan-drawer-body { padding: 0 13px 13px; }
.pa-plan-drawer-body .pa-plan-sec:first-child { margin-top: 0; }
@media (max-width: 640px) {
  .pa-fact, .pa-fact tbody, .pa-fact tr, .pa-fact th, .pa-fact td { display: block; width: 100%; }
  .pa-fact tr { padding: 8px 0; border-top: 1px solid rgba(13,34,56,.08); }
  .pa-fact tr:first-child { border-top: 0; }
  .pa-fact th { padding: 0 0 2px; }
  .pa-fact td { padding: 0; }
  .pa-doc-actions .pa-btn { width: 100%; min-height: 44px; }
  .pa-miss-edit { min-height: 44px; padding: 8px 12px; }
}
.pa-kit-doclist { margin-top: 10px; color: #d7e0e9; font-size: 12px; }
.pa-kit-doclist > summary { cursor: pointer; font-weight: 700; color: #f4c765; }
.pa-kit-doclist ul { margin: 7px 0 0; padding-left: 20px; }

/* ===== Alaska full-flow parity pass, 2026-07-14 ===== */
.pa-planner-head { margin: 10px 0 16px; }
.pa-planner-head h1 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(32px, 5vw, 54px); line-height: 1.02; margin: 6px 0 8px; color: #fff8ed; }
.pa-planner-head > p { max-width: 720px; margin: 0 0 18px; color: #d9d2c4; line-height: 1.55; }
.pa-planner-head .pa-summarybar { margin: 0; padding: 10px 0; border-top: 1px solid rgba(255,248,237,.14); border-bottom: 1px solid rgba(255,248,237,.14); background: transparent; border-radius: 0; }

.pa-step-prompt { margin: 0 0 12px; color: var(--muted); line-height: 1.5; }

.pa-gate-section { margin-top: 24px; padding: 16px; border: 1px solid rgba(42,140,140,.28); border-radius: 12px; background: rgba(42,140,140,.045); }
.pa-gate-section .pa-stepsec-h { margin-top: 0; border-bottom-color: rgba(42,140,140,.24); }
.pa-gate-section::before { content: "These answers only decide which Alaska rules can be reviewed. They do not decide who is right."; display: block; margin: 0 0 10px; color: var(--muted); font-size: 13px; line-height: 1.45; }

.pa-fields { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 14px 16px; align-items: start; }
.pa-fields > .pa-field { grid-column: span 4; min-width: 0; }
.pa-fields > .pa-field:only-child { grid-column: 1 / -1; }
.pa-field input[type="text"], .pa-field input[type="number"], .pa-field input[type="date"], .pa-field textarea, .pa-field select { width: 100%; box-sizing: border-box; min-height: 42px; border: 1px solid rgba(13,34,56,.2); border-radius: 8px; padding: 9px 10px; background: #fff; color: var(--ink); font: inherit; }
.pa-field select { cursor: pointer; }
.pa-field-hint { margin: 6px 0 0; color: var(--muted); font-size: 12.5px; line-height: 1.45; }
.pa-field .pa-tellmore { margin-top: 5px; }
.pa-stepsec { padding-top: 2px; }
.pa-stepsec + .pa-stepsec { margin-top: 24px; }
.pa-stepsec-h { font-family: Georgia, 'Times New Roman', serif; font-size: 18px; }

.pa-evidence-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.pa-evidence-proof { margin: 6px 0 0 27px; color: var(--muted); font-size: 12.5px; line-height: 1.45; }

.pa-doc .pa-plan-sec { margin: 18px 0; }
.pa-doc .pa-plan-h { font-family: Georgia, 'Times New Roman', serif; font-size: 16px; border-bottom: 1px solid rgba(13,34,56,.18); }
.pa-plan-drawer { background: #fff; }
.pa-doc .pa-check { margin-top: 7px; }
.pa-doc .pa-steps li { margin-bottom: 9px; }
.pa-free-plan-intro { margin-top: 18px; }

@media (max-width: 900px) {
  .pa-fields > .pa-field { grid-column: span 6; }
}
@media (max-width: 640px) {
  .pa-planner-head h1 { font-size: 36px; }
  .pa-planner-head .pa-summarybar { align-items: flex-start; gap: 8px; }
  .pa-fields { grid-template-columns: 1fr; }
  .pa-fields > .pa-field { grid-column: 1; }
  .pa-evidence-grid { grid-template-columns: 1fr; }
  .pa-gate-section { padding: 13px; }
}

/* Compact Alaska coverage check. It stays inside Step 1 but should not feel
   like a second full questionnaire. */
.pa-gate-section .pa-fields { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 12px 16px; }
.pa-gate-section .pa-gate-field { grid-column: span 4; }
.pa-gate-section select { min-height: 44px; }
.pa-gate-options { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.pa-gate-options .pa-optcard { min-height: 42px; padding: 9px 10px; }
.pa-gate-field .pa-field-hint { margin-top: 7px; }
@media (max-width: 820px) {
  .pa-gate-section .pa-gate-field { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .pa-gate-options { grid-template-columns: 1fr; }
}
.pa-fields-one { grid-template-columns: 1fr; }
.pa-fields-one > .pa-field { grid-column: 1 !important; width: 100%; }

/* Final Alaska parity polish: brief section guidance and a clearer kit preview. */
.pa-section-intro {
  margin: -2px 0 12px;
  max-width: 760px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
.kit-transparency {
  margin: 0 0 16px;
  padding: 14px 16px;
  border: 1px solid rgba(42,140,140,.28);
  border-radius: 10px;
  background: rgba(42,140,140,.06);
  color: rgba(13,34,56,.88);
  line-height: 1.55;
}
.kit-preview-outline {
  margin: 12px 0 16px;
  padding: 12px 14px;
  border: 1px solid rgba(13,34,56,.12);
  border-radius: 10px;
  background: rgba(13,34,56,.025);
}
.kit-preview-outline h4 { margin: 0 0 7px; font-size: 15px; }
.kit-preview-outline ol { margin: 0; padding-left: 22px; line-height: 1.5; }
.kit-preview-outline li { margin: 4px 0; }
@media (max-width: 760px) {
  .pa-fields { grid-template-columns: 1fr; }
  .pa-fields > .pa-field { grid-column: 1 / -1; }
  .pa-evidence-grid { grid-template-columns: 1fr; }
}

/* Field-level polish for the coordinated Alaska parity pass.
   The deductions checklist no longer needs a width override: it renders as
   an .pa-optfield, which already spans the full grid row and lays its cards
   out responsively. The old `grid-column: 1 / -1 !important` hack is gone. */
.pa-date-note {
  display: inline-block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.4;
}
.pa-doc .pa-explain + .pa-explain { margin-top: 8px; }


/* ==========================================================================
   Step 5 rebuild (2026-08-13) — SECURITY_DEPOSIT_BASELINE.md sections 5 and 11.

   The task panel, at-a-glance summary, and plan-detail drawers all reuse the
   SHARED planner.css components (.pa-task-panel, .pa-summary-card /
   .pa-summary-row, .pa-plan-details, .pa-section-head, .pa-link-button), so
   Alaska inherits the approved layout, the 640px single-column collapse, and
   the shared print rules. Only the two families below are Alaska-specific.
   ========================================================================== */

/* The old on-page sales invitation (retired 2026-08-14) lived here. The
   sales card now uses the shared .pa-kit-promo family in planner.css; only
   the quiet (non-sales) note keeps Alaska-specific styling, in the
   .pa-kit-invite-quiet rules near the bottom of this file. */

/* Print: the interactive chrome never reaches paper. The printed packet is
   built from a clone of .pa-doc, but these belt-and-braces rules keep the
   invitation and controls out even if a browser prints the live page. */
@media print {
  .pa-kit-invite, .pa-kit-promo, .pa-kit-remind, .pa-doc-actions { display: none !important; }
}

/* ==========================================================================
   Shared option-card alignment (2026-08-13)

   Alaska's Step 1 concern cards and Step 4 evidence cards now use the shared
   .pa-opt / .pa-opt-main / .t / .b markup from planner.css, so the card
   frame, the dashed divider, and the blue "More about this" footer come from
   the same place as Alabama and Montana. Only the selected state and the
   Alaska grid are state-specific.
   ========================================================================== */
.pa-opt.on { border-color: var(--teal); background: rgba(42,140,140,.08); box-shadow: inset 3px 0 0 var(--teal); }
.pa-opt.pa-ev.on { border-color: var(--green); box-shadow: inset 3px 0 0 var(--green); }
.pa-group + .pa-group { margin-top: 18px; }
.pa-group-label { font-size: 12.5px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--muted); margin: 0 0 8px; }
.pa-opts { display: grid; gap: 10px; }
/* Alaska shows evidence in two columns on a wide screen; one on a phone. */
.pa-evidence-grid { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
@media (max-width: 640px) {
  .pa-evidence-grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   Step 1 concern list (2026-08-13)

   The concern cards use the shared .pa-opt design, so their wrapper must not
   be .pa-field: the shared `.pa-field label{display:block}` rule overrides
   .pa-opt-main's flex row and pushes each checkbox above its title. This
   wrapper carries layout only — no label, input, or grid rules to inherit.
   ========================================================================== */
.pa-concerns { display: block; }
.pa-concerns .pa-group + .pa-group { margin-top: 18px; }

/* Skipped tabs use the shared solid circle, muted rather than dashed, so they
   never read as an unfinished or loading state. The en dash and the
   aria-label carry the meaning. */
.pa-tab.skipped .num { border-style: solid; opacity: .75; }

/* ==========================================================================
   Option fields (2026-08-13)

   Any question rendered as checkbox / radio / multi cards uses .pa-optfield
   instead of .pa-field. The shared rule `.pa-field label{display:block}`
   (specificity 0,1,1) outranks `.pa-optcard{display:flex}` (0,1,0) and was
   stacking every control above its text. This wrapper inherits no generic
   label or input rules, so the cards keep their own flex row — no position
   hacks, no !important.

   It also spans the full grid row, so a group such as "Did you pay any of
   these for this rental?" is never squeezed into a narrow two-column cell.
   ========================================================================== */
.pa-optfield { min-width: 0; }
.pa-fields > .pa-optfield { grid-column: 1 / -1; }

/* The question label, restored explicitly rather than inherited. */
.pa-optfield > .pa-qlabel {
  display: block; margin: 0 0 8px;
  font-size: 13px; font-weight: 700; color: var(--ink); line-height: 1.35;
}

/* Readable cards: as many columns as fit, one per row on a phone. */
.pa-optfield .pa-optcards {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 8px; align-items: stretch;
}
.pa-optfield .pa-optcard { height: 100%; box-sizing: border-box; }
/* The control sits to the LEFT of the text, at a normal gap. */
.pa-optfield .pa-optcard { display: flex; align-items: flex-start; gap: 10px; }
.pa-optfield .pa-optcard .pa-card-ctl { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; }
.pa-optfield .pa-optcard-txt { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; }

/* The housing picker keeps its own two-tier layout inside the wrapper. */
.pa-optfield .pa-housing-common { margin-bottom: 8px; }

@media (max-width: 760px) {
  .pa-optfield .pa-optcards { grid-template-columns: 1fr; }
}

/* Skipped tabs: muted, solid, and still numbered. The aria-label explains
   that the step was skipped. */

/* Quiet (non-sales) kit notes keep a minimal frame; the sales invitation now
   uses the shared .pa-kit-promo family from planner.css. */
.pa-kit-invite-quiet { margin: 22px 0 0; padding: 16px 18px; border: 1px solid rgba(13,34,56,.12); border-radius: 14px; background: rgba(13,34,56,.04); }
.pa-kit-invite-quiet h3 { margin: 0 0 8px; font-size: 18px; color: var(--ink); }
.pa-kit-invite-quiet p { margin: 0 0 9px; font-size: 13.5px; line-height: 1.5; color: var(--ink); }
.pa-kit-invite-quiet .pa-kit-free-stays-free { font-size: 12.5px; font-weight: 600; color: var(--muted); }
