/*
Theme Name: TaxHackAI v154.9 Navigation Hotfix
Theme URI: https://taxhackai.com/
Author: OpenAI
Description: TaxHackAI v154.9 keeps the trust launch features and fixes dashboard bottom-tab navigation, non-home view visibility, and selected-view scrolling.
Version: 1.54.9
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: taxhackai
*/

:root {
  --bg: #f5f7fb;
  --card: #ffffff;
  --text: #111827;
  --muted: #6b7280;
  --border: #e5e7eb;
  --primary: #2563eb;
  --primary-soft: #dbeafe;
  --success: #16a34a;
  --success-soft: #dcfce7;
  --warning: #dc2626;
  --warning-soft: #fee2e2;
  --gold: #f59e0b;
  --gold-soft: #fef3c7;
  --radius: 20px;
  --shadow: 0 10px 30px rgba(17, 24, 39, 0.08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  padding: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--bg);
  color: var(--text);
}

a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; height: auto; }

.site-wrap {
  min-height: 100vh;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(245, 247, 251, 0.92);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(229, 231, 235, 0.9);
}

.site-header__inner,
.site-footer__inner,
.tah-container {
  max-width: 1080px;
  margin: 0 auto;
  padding-left: 16px;
  padding-right: 16px;
}

.site-header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-top: 14px;
  padding-bottom: 14px;
}

.site-branding {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.site-title {
  margin: 0;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.1;
}

.site-tagline {
  margin: 0;
  color: var(--muted);
  font-size: .95rem;
}

.site-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 14px;
  align-items: center;
}

.site-nav a {
  color: var(--text);
  font-weight: 700;
}

.tah-main {
  padding: 20px 0 110px;
}

.tah-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}

.tah-brand h1 {
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  margin: 0;
  line-height: 1.1;
}

.tah-brand p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 1rem;
}

.tah-rate-box,
.tah-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.tah-rate-box {
  padding: 12px;
  min-width: 170px;
}

.tah-rate-box label,
.tah-field label {
  display: block;
  font-size: .9rem;
  color: var(--muted);
  margin-bottom: 6px;
  font-weight: 700;
}

.tah-rate-box input,
.tah-field input,
.tah-field select,
.tah-field textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 1rem;
  background: #fff;
}

.tah-status-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 16px 18px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.tah-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  font-weight: 800;
  font-size: .98rem;
}

.tah-status-pill.safe { background: var(--success-soft); color: #166534; }
.tah-status-pill.warn { background: var(--warning-soft); color: #991b1b; }

.tah-grid,
.tah-layout {
  display: grid;
  gap: 14px;
  margin-bottom: 18px;
}

.tah-grid { grid-template-columns: repeat(3, 1fr); }
.tah-layout { grid-template-columns: 1.25fr .9fr; gap: 18px; }

.tah-home-1099-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}

.tah-grid-1099-home {
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 0;
}

.tah-mini-metric {
  padding: 16px;
}

.tah-mini-metric .label {
  color: var(--muted);
  font-size: .95rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.tah-mini-metric .value {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 8px;
}

.tah-mini-metric .sub {
  color: var(--muted);
  font-size: .92rem;
  line-height: 1.5;
}

.tah-mini-metric--full {
  grid-column: span 2;
}


.tah-card { padding: 18px; }

.tah-metric-card .label {
  color: var(--muted);
  font-size: .95rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.tah-metric-card .value {
  font-size: clamp(1.95rem, 4vw, 2.7rem);
  font-weight: 800;
  line-height: 1;
  margin-bottom: 10px;
}

.tah-metric-card .sub,
.tah-tiny {
  color: var(--muted);
  font-size: .95rem;
  line-height: 1.5;
}

.tah-tax-card { background: linear-gradient(180deg, var(--gold-soft), #fff); }

.tah-upload-area {
  border: 2px dashed #bfdbfe;
  background: #f8fbff;
  border-radius: 18px;
  padding: 20px;
  text-align: center;
  cursor: pointer;
  transition: .2s ease;
}

.tah-upload-area:hover,
.tah-upload-area.dragover {
  background: #eff6ff;
  border-color: var(--primary);
  transform: translateY(-1px);
}

.tah-upload-area h3 {
  margin: 0 0 8px;
  font-size: 1.35rem;
}

.tah-upload-area p {
  margin: 0 0 14px;
  color: var(--muted);
  line-height: 1.5;
}

.tah-button-row,
.tah-stack,
.tah-actions-inline {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.tah-stack { flex-direction: column; }

.tah-btn,
.tah-button-like {
  appearance: none;
  border: none;
  border-radius: 16px;
  padding: 15px 18px;
  font-size: 1rem;
  font-weight: 800;
  cursor: pointer;
  transition: .15s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.tah-btn:hover,
.tah-button-like:hover { transform: translateY(-1px); }
.tah-btn-primary { background: var(--primary); color: #fff; }
.tah-btn-secondary { background: #fff; color: var(--text); border: 1px solid var(--border); }
.tah-btn-success { background: var(--success); color: #fff; }
.tah-btn-accent { background: linear-gradient(135deg, #111827 0%, #2563eb 100%); color: #fff; box-shadow: 0 12px 30px rgba(37, 99, 235, 0.22); }
.tah-btn-pro { background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 55%, #f59e0b 120%); color: #fff; box-shadow: 0 14px 30px rgba(37, 99, 235, 0.28); }

.tah-hidden { display: none !important; }

.tah-file-input-hidden {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

.tah-button-row-1099 .tah-btn {
  min-width: 170px;
}

.tah-login-card {
  border: 1px solid #dbeafe;
  background: linear-gradient(180deg, #eff6ff 0%, #ffffff 100%);
}

.tah-section-title { font-size: 1.2rem; font-weight: 800; margin: 0 0 14px; }

.tah-summary-list,
.tah-quarter-list,
.tah-upload-stats,
.tah-review-list,
.tah-daily-list {
  display: grid;
  gap: 12px;
}

.tah-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
}

.tah-row .k { color: var(--muted); font-weight: 700; }
.tah-row .v { font-weight: 800; text-align: right; }

.tah-review-item,
.tah-day-item,
.tah-upload-stat {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  background: #fff;
}

.tah-review-item .top,
.tah-day-item .top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.tah-review-item .desc,
.tah-day-item .desc {
  font-weight: 700;
  line-height: 1.4;
}

.tah-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: .85rem;
  font-weight: 800;
  background: #f3f4f6;
  color: #374151;
}

.tah-badge.warn { background: var(--warning-soft); color: #991b1b; }
.tah-badge.safe { background: var(--success-soft); color: #166534; }
.tah-badge.gold { background: var(--gold-soft); color: #92400e; }

.tah-empty {
  color: var(--muted);
  text-align: center;
  padding: 18px;
  border: 1px dashed var(--border);
  border-radius: 16px;
  background: #fff;
}

.tah-forms-list {
  display: grid;
  gap: 12px;
}

.tah-form-card {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  background: #fff;
}

.tah-form-note {
  margin-top: 10px;
}

.tah-1099-boxes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.tah-mini-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 999px;
  background: #f3f4f6;
  color: #374151;
  font-size: .82rem;
  font-weight: 700;
}

.tah-footer-nav {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  background: rgba(245, 247, 251, 0.95);
  backdrop-filter: blur(14px);
  border-top: 1px solid rgba(229, 231, 235, 0.9);
  z-index: 30;
}

.tah-footer-nav-inner {
  max-width: 1080px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}

.tah-nav-btn {
  background: #fff;
  border: 1px solid var(--border);
  color: var(--text);
  padding: 12px 10px;
  border-radius: 14px;
  font-size: .92rem;
  font-weight: 800;
  cursor: pointer;
}

.tah-nav-btn.active {
  background: var(--primary-soft);
  color: #1d4ed8;
  border-color: #bfdbfe;
}

.site-footer {
  border-top: 1px solid rgba(229, 231, 235, 0.9);
  background: #fff;
}

.site-footer__inner {
  padding-top: 24px;
  padding-bottom: 24px;
  color: var(--muted);
  font-size: .95rem;
}

@media (max-width: 820px) {
  .site-header__inner,
  .tah-topbar {
    flex-direction: column;
    align-items: stretch;
  }

  .tah-grid,
  .tah-layout {
    grid-template-columns: 1fr;
  }

  .site-nav { display: none; }

  .tah-rate-box { width: 100%; }
}

@media (max-width: 820px) {
  .tah-grid-1099-home { grid-template-columns: 1fr; }
  .tah-mini-metric--full { grid-column: span 1; }
}

@media (max-width: 560px) {
  .tah-main { padding: 16px 0 118px; }
  .tah-card { padding: 16px; }
  .tah-footer-nav-inner { grid-template-columns: repeat(3, 1fr); }
  .tah-upload-area { padding: 18px 14px; }
  .tah-nav-btn { font-size: .9rem; padding: 12px 8px; }
  .site-title { font-size: 1.6rem; }
  .site-tagline { font-size: .9rem; }
}


/* 1.0.1 app-shell cleanup */
body.taxhackai-app-body {
  background: var(--bg);
}

.taxhackai-shell {
  min-height: 100vh;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
}

.site-title a {
  color: var(--text);
  text-decoration: none;
}

.site-title a:hover,
.site-nav a:hover {
  text-decoration: none;
}

.site-footer,
footer.site-footer,
#wpfooter {
  display: none !important;
}


/* 1.4.0 upload polish */

.tah-busy {
  opacity: .72;
  pointer-events: none;
}

.tah-upload-feedback {
  margin-top: 16px;
  border: 1px solid #dbeafe;
  background: #ffffff;
  border-radius: 18px;
  padding: 16px;
  display: grid;
  gap: 14px;
}

.tah-upload-feedback.working {
  background: linear-gradient(180deg, #eff6ff 0%, #ffffff 100%);
}

.tah-upload-feedback.success {
  border-color: #bbf7d0;
  background: linear-gradient(180deg, #f0fdf4 0%, #ffffff 100%);
}

.tah-upload-feedback.error {
  border-color: #fecaca;
  background: linear-gradient(180deg, #fef2f2 0%, #ffffff 100%);
}

.tah-upload-feedback__top {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
}

.tah-upload-feedback__title {
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: 4px;
}

.tah-upload-steps {
  display: grid;
  gap: 10px;
}

.tah-upload-step {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-weight: 700;
  font-size: .96rem;
}

.tah-upload-step__dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  border: 2px solid #cbd5e1;
  background: #fff;
  flex: 0 0 12px;
}

.tah-upload-step.active {
  color: #1d4ed8;
}

.tah-upload-step.active .tah-upload-step__dot {
  background: var(--primary);
  border-color: var(--primary);
}

.tah-upload-step.completed {
  color: #166534;
}

.tah-upload-step.completed .tah-upload-step__dot {
  background: var(--success);
  border-color: var(--success);
}

.tah-upload-step.error {
  color: #991b1b;
}

.tah-upload-step.error .tah-upload-step__dot {
  background: var(--warning);
  border-color: var(--warning);
}

.tah-upload-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.tah-summary-chip {
  border: 1px solid rgba(229, 231, 235, 0.95);
  border-radius: 14px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.9);
}

.tah-summary-chip .label {
  font-size: .84rem;
  font-weight: 700;
  color: var(--muted);
  margin-bottom: 6px;
}

.tah-summary-chip .value {
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.4;
}

.tah-summary-chip--full {
  grid-column: 1 / -1;
}

.tah-trust-note {
  margin-top: 14px;
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}

.tah-upload-stat--note {
  align-items: flex-start;
}

.tah-upload-note {
  max-width: 28ch;
  line-height: 1.45;
}

@media (max-width: 820px) {
  .tah-grid-1099-home { grid-template-columns: 1fr; }
  .tah-mini-metric--full { grid-column: span 1; }
}

@media (max-width: 560px) {
  .tah-upload-feedback__top {
    flex-direction: column;
  }

  .tah-upload-summary {
    grid-template-columns: 1fr;
  }
}


code {
  background: rgba(17, 24, 39, 0.06);
  padding: 2px 6px;
  border-radius: 8px;
  font-size: 0.92em;
}


/* 1.9.0 polish + duplicate verification */
.tah-upload-stat--success {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.tah-tech-details {
  width: 100%;
}

.tah-tech-details summary {
  cursor: pointer;
  font-weight: 800;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.tah-tech-details summary::-webkit-details-marker {
  display: none;
}

.tah-tech-details summary::after {
  content: 'Show';
  color: var(--primary);
  font-size: .9rem;
  font-weight: 800;
}

.tah-tech-details[open] summary::after {
  content: 'Hide';
}

.tah-tech-details__body {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

.tah-tech-details__note {
  color: var(--muted);
  line-height: 1.6;
  font-size: .96rem;
}


/* 1.10.1 1099 tracker */
.tah-upload-area .tah-button-like.tah-disabled {
  opacity: .6;
  pointer-events: none;
}

.tah-review-item .tah-row + .tah-row {
  margin-top: 8px;
}

#view-1099 .tah-card + .tah-card {
  margin-top: 0;
}

@media (max-width: 820px) {
  .tah-grid-1099-home { grid-template-columns: 1fr; }
  .tah-mini-metric--full { grid-column: span 1; }
}

@media (max-width: 560px) {
  .site-nav ul {
    gap: 10px;
  }
}


/* 1.13.0 final polish pass */

.tah-soft-callout {
  margin-bottom: 18px;
  padding: 14px 16px;
  border: 1px solid #dbeafe;
  background: #eff6ff;
  color: #1e3a8a;
  border-radius: 18px;
  box-shadow: var(--shadow);
  line-height: 1.5;
}

.tah-login-inline {
  margin-top: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid var(--border);
  font-weight: 600;
}

.tah-login-inline .tah-button-like {
  white-space: nowrap;
}

@media (max-width: 820px) {
  .site-nav {
    overflow-x: auto;
  }

  .site-nav ul {
    min-width: max-content;
    padding-bottom: 4px;
  }
}

@media (max-width: 560px) {
  .tah-button-row:not(.tah-footer-nav-inner) {
    flex-direction: column;
    align-items: stretch;
  }

  .tah-button-row:not(.tah-footer-nav-inner) .tah-btn,
  .tah-button-row:not(.tah-footer-nav-inner) .tah-button-like {
    width: 100%;
    justify-content: center;
  }

  .tah-login-inline {
    flex-direction: column;
    align-items: stretch;
  }
}


/* 1.13.0 final polish */
.tah-login-card .tah-tiny { max-width: 62ch; }
.tah-home-1099-note { margin-top: 12px; }


.tah-planner-snapshot {
  margin-bottom: 18px;
}

.tah-grid-planner {
  grid-template-columns: repeat(4, 1fr);
}

.tah-info-disclosure {
  margin: 0;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
}

.tah-info-disclosure summary {
  cursor: pointer;
  list-style: none;
  padding: 14px 16px;
  font-weight: 800;
}

.tah-info-disclosure summary::-webkit-details-marker {
  display: none;
}

.tah-info-disclosure[open] summary {
  border-bottom: 1px solid var(--border);
}

.tah-info-disclosure .tah-tiny {
  padding: 14px 16px 16px;
}

.tah-review-hint {
  margin: 10px 0 0;
}

@media (max-width: 900px) {
  .tah-grid-planner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .tah-grid-planner {
    grid-template-columns: 1fr 1fr;
  }

  .tah-info-disclosure summary {
    padding: 12px 14px;
  }
}


.tah-seo-main { padding-bottom: 80px; }
.tah-seo-hero { margin-bottom: 18px; }
.tah-seo-hero h1 { margin: 12px 0 10px; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.08; }
.tah-seo-lede { font-size: 1.06rem; color: var(--muted); line-height: 1.7; max-width: 860px; margin: 0; }
.tah-seo-grid-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-bottom: 18px; }
.tah-seo-card { min-height: 220px; }
.tah-seo-copy { font-size: 1rem; line-height: 1.75; color: var(--text); }
.tah-seo-steps { margin-bottom: 18px; }
.tah-seo-steps-grid { grid-template-columns: repeat(3, 1fr); margin-bottom: 0; }
.tah-seo-related, .tah-seo-hub { margin-bottom: 18px; }
.tah-seo-links-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.tah-seo-link-card { display: block; background: #fff; border: 1px solid var(--border); border-radius: 18px; padding: 18px; box-shadow: var(--shadow); color: var(--text); text-decoration: none; transition: transform .15s ease; }
.tah-seo-link-card:hover { transform: translateY(-1px); text-decoration: none; }
.tah-seo-link-card h3 { margin: 0 0 10px; font-size: 1.1rem; line-height: 1.35; }
.tah-seo-link-card p { margin: 0; color: var(--muted); line-height: 1.65; }
@media (max-width: 900px) {
  .tah-seo-grid-cards, .tah-seo-steps-grid, .tah-seo-links-grid { grid-template-columns: 1fr; }
}

.tah-seo-faq { margin-bottom: 18px; }
.tah-seo-faq-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
@media (max-width: 920px) { .tah-seo-faq-grid { grid-template-columns: 1fr; } }

.tah-seo-clusters { margin-bottom: 18px; }
.tah-seo-cluster-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.tah-seo-cluster-card { background: #fff; border: 1px solid var(--border); border-radius: 18px; padding: 18px; box-shadow: var(--shadow); }
.tah-seo-cluster-card h3 { margin: 0 0 10px; font-size: 1.02rem; }
.tah-seo-cluster-card ul { margin: 0; padding-left: 18px; color: var(--muted); }
.tah-seo-cluster-card li + li { margin-top: 8px; }
.tah-seo-cluster-card a { color: var(--text); text-decoration: none; }
.tah-seo-cluster-card a:hover { text-decoration: underline; }
@media (max-width: 820px) { .tah-seo-cluster-grid { grid-template-columns: 1fr; } }


.tah-plan-card,
.tah-pricing-card {
  margin-bottom: 18px;
}

.tah-grid-plan {
  margin-top: 14px;
}

.tah-pricing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 14px;
}

.tah-pricing-tier {
  border: 1px solid var(--tah-border);
  border-radius: 18px;
  padding: 20px;
  background: #fff;
}

.tah-pricing-tier--pro {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #eff6ff 0%, #ffffff 75%);
  box-shadow: 0 18px 40px rgba(37, 99, 235, 0.12);
  position: relative;
}
.tah-pricing-tier--pro::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 18px;
  pointer-events: none;
  border: 2px solid rgba(37, 99, 235, 0.12);
}

.tah-pricing-tier h3 {
  margin: 0 0 8px;
  font-size: 1.2rem;
}

.tah-pricing-price {
  font-size: 2rem;
  font-weight: 800;
  margin-bottom: 12px;
}

.tah-pricing-price span {
  font-size: 1rem;
  font-weight: 600;
  color: var(--tah-muted);
}

.tah-pricing-tier ul {
  margin: 0 0 16px;
  padding-left: 18px;
  color: var(--tah-text);
  line-height: 1.6;
}

#deductionPaywallNote,
#form1099PaywallNote {
  margin-top: 14px;
}

@media (max-width: 820px) {
  .tah-pricing-grid {
    grid-template-columns: 1fr;
  }
}

.tah-billing-banner { margin-top: -4px; }
.tah-disabled { pointer-events: none; opacity: 0.7; }


.site-footer { border-top: 1px solid var(--tah-border); background: rgba(255,255,255,0.92); }
.site-footer__inner { max-width: 980px; margin: 0 auto; padding: 18px 16px calc(18px + env(safe-area-inset-bottom)); display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.site-footer__links { display: flex; gap: 14px; flex-wrap: wrap; }
.site-footer__links a { color: var(--tah-muted); text-decoration: none; font-weight: 700; }
.site-footer__links a:hover { color: var(--tah-primary); }
.site-footer__copy { color: var(--tah-muted); font-size: 0.92rem; }
@media (max-width: 640px) { .site-footer__inner { padding-bottom: calc(90px + env(safe-area-inset-bottom)); } }


/* 1.23.0 mobile polish */
.site-header__tools {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-left: auto;
}

.site-header__search {
  min-width: 280px;
}

.tah-header-nav a.is-active {
  color: var(--primary);
}

.tah-search-form {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}

.tah-search-form input[type="search"] {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  padding: 12px 14px;
  font-size: .97rem;
  color: var(--text);
}

.tah-search-form button {
  appearance: none;
  border: none;
  border-radius: 14px;
  background: var(--primary);
  color: #fff;
  padding: 12px 16px;
  font-weight: 800;
  cursor: pointer;
}

.tah-search-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.tah-search-card .tah-badge {
  margin-bottom: 10px;
}

.tah-search-empty,
.tah-search-results {
  margin-bottom: 18px;
}

@media (max-width: 980px) {
  .site-header__tools {
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .site-header__search {
    flex: 1 1 320px;
  }
}

@media (max-width: 820px) {
  .site-header__tools {
    margin-left: 0;
  }

  .site-header__search {
    width: 100%;
    min-width: 0;
  }

  .site-nav {
    display: block;
    width: 100%;
  }

  .site-nav ul {
    min-width: 100%;
    justify-content: space-between;
    gap: 10px;
  }

  .tah-search-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .site-header__tools {
    flex-direction: column;
    align-items: stretch;
  }

  .tah-search-form {
    flex-direction: column;
    align-items: stretch;
  }

  .tah-search-form button {
    width: 100%;
  }

  .site-nav ul {
    flex-wrap: wrap;
  }

  .site-nav ul li {
    flex: 1 1 calc(50% - 6px);
  }

  .site-nav ul li a {
    display: block;
    text-align: center;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 10px 12px;
  }
}


/* 1.23.0 mobile polish */
.site-header__search-mobile { display: none; }
.site-header__search-mobile summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 14px; border-radius: 14px; border: 1px solid var(--border); background: #fff; font-weight: 800; color: var(--text); }
.site-header__search-mobile summary::-webkit-details-marker { display: none; }
.site-header__search-mobile[open] { width: 100%; }
.site-header__search-mobile-body { margin-top: 10px; }

.tah-front-page-body .site-header__inner { align-items: center; }
.tah-front-page-body .site-header__search--desktop { min-width: 320px; }

@media (max-width: 980px) {
  .site-header__inner { gap: 12px; }
  .site-branding { gap: 2px; }
  .site-title { font-size: 1.55rem; }
  .site-tagline { font-size: .9rem; }
  .tah-main { padding-top: 16px; }
}

@media (max-width: 820px) {
  .site-header__inner { padding-top: 12px; padding-bottom: 12px; }
  .site-header__search--desktop { display: none; }
  .site-header__search-mobile { display: block; }
  .site-header__tools { width: 100%; gap: 10px; }
  .site-header__search-mobile { order: 2; width: 100%; }
  .site-nav { order: 3; width: 100%; display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .site-nav::-webkit-scrollbar { display: none; }
  .site-nav ul { flex-wrap: nowrap !important; justify-content: flex-start !important; gap: 8px !important; min-width: max-content !important; padding-bottom: 0 !important; }
  .site-nav ul li { flex: 0 0 auto !important; }
  .site-nav ul li a { display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; padding: 10px 12px; border-radius: 999px; border: 1px solid var(--border); background: #fff; }
  .tah-front-page-body .site-nav { display: none; }
  .tah-front-page-body .site-header__tools { justify-content: flex-end; }
  .tah-front-page-body .site-header__search-mobile { width: auto; order: 1; margin-left: auto; }

  .tah-topbar { margin-bottom: 14px; }
  .tah-brand h1 { font-size: 2rem; }
  .tah-brand p { font-size: .96rem; line-height: 1.55; }
  .tah-rate-box { padding: 10px 12px; }
  .tah-rate-box input { padding: 10px 12px; }
  .tah-status-strip { padding: 14px 16px; margin-bottom: 14px; }
  .tah-grid, .tah-layout { gap: 12px; margin-bottom: 14px; }
  .tah-card { padding: 16px; }
  .tah-section-title { font-size: 1.1rem; }
  .tah-soft-callout { margin-bottom: 14px; padding: 12px 14px; }
  .tah-upload-area { padding: 18px 16px; }
  .tah-upload-area h3 { font-size: 1.22rem; }
  .tah-home-1099-header { gap: 10px; margin-bottom: 12px; }
  .tah-home-1099-header .tah-badge { align-self: flex-start; }
  .tah-grid-planner { grid-template-columns: 1fr 1fr; }
  .tah-search-form button { padding: 12px 14px; }
}

@media (max-width: 640px) {
  .site-header__inner,
  .tah-container,
  .site-footer__inner { padding-left: 12px; padding-right: 12px; }

  .site-title { font-size: 1.45rem; }
  .site-tagline { font-size: .86rem; }
  .tah-main { padding: 14px 0 96px; }
  .tah-brand h1 { font-size: 1.85rem; }
  .tah-brand p,
  .tah-tiny,
  .tah-metric-card .sub,
  .tah-mini-metric .sub,
  .tah-seo-copy,
  .tah-seo-lede { font-size: .93rem; }
  .tah-card { padding: 14px; border-radius: 18px; }
  .tah-metric-card .value { font-size: 2.2rem; }
  .tah-mini-metric .value { font-size: 1.7rem; }
  .tah-soft-callout { font-size: .96rem; line-height: 1.5; }
  .tah-button-row:not(.tah-footer-nav-inner) { gap: 10px; }
  .tah-btn,
  .tah-button-like { min-height: 48px; padding: 14px 16px; }
  .tah-summary-chip { padding: 10px 12px; }
  .tah-row { gap: 12px; }
  .tah-empty { padding: 14px; }
  .tah-upload-feedback { padding: 14px; gap: 12px; }
  .tah-upload-step { font-size: .92rem; }
  .tah-tech-details__note { font-size: .93rem; }
  .tah-search-grid,
  .tah-seo-links-grid,
  .tah-seo-cluster-grid,
  .tah-seo-grid-cards,
  .tah-seo-faq-grid { grid-template-columns: 1fr; }
  .tah-seo-card { min-height: auto; }
  .tah-seo-link-card,
  .tah-seo-cluster-card { padding: 16px; }
  .tah-grid-planner,
  .tah-grid-1099-home,
  .tah-pricing-grid { grid-template-columns: 1fr; }

  .tah-footer-nav { padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); }
  .tah-footer-nav-inner { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
  .tah-nav-btn { min-height: 50px; padding: 8px 4px; font-size: .76rem; line-height: 1.15; border-radius: 12px; }
}

@media (max-width: 420px) {
  .site-header__inner { padding-top: 10px; padding-bottom: 10px; }
  .site-title { font-size: 1.38rem; }
  .site-tagline { font-size: .82rem; }
  .tah-brand h1 { font-size: 1.72rem; }
  .tah-grid, .tah-layout { gap: 10px; margin-bottom: 12px; }
  .tah-card { padding: 13px; }
  .tah-status-strip { padding: 12px 14px; }
  .tah-upload-area { padding: 16px 14px; }
  .tah-nav-btn { font-size: .72rem; }
}


/* 1.24.0 mobile statement button fix */
.tah-btn,
.tah-button-like {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  z-index: 2;
}

.tah-upload-area,
.tah-card {
  position: relative;
}


/* 1.24.0 mobile actions + login clarity */
.tah-login-hint { color: var(--muted); line-height: 1.6; }
.tah-btn[disabled], .tah-button-like[aria-disabled="true"] { opacity: 0.55; cursor: not-allowed; }

/* 1.31.0 tax help center + ask */
.tah-help-center-strip { align-items: stretch; }
.tah-search-chip-row {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.tah-search-chip,
.tah-chip-button {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  color:var(--text);
  font-weight:700;
  font-size:.92rem;
  text-decoration:none;
  cursor:pointer;
}
.tah-chip-button:hover,
.tah-search-chip:hover { transform: translateY(-1px); }
.tah-ask-form { display:grid; gap:12px; margin-top:14px; }
.tah-ask-form textarea {
  width:100%;
  min-height:140px;
  border:1px solid var(--border);
  border-radius:18px;
  padding:16px 18px;
  font-size:1rem;
  line-height:1.55;
  resize:vertical;
  background:#fff;
}
.tah-ask-suggestions { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.tah-ask-output { margin-top:18px; display:grid; gap:14px; }
.tah-ask-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.tah-ask-list { margin:0; padding-left:20px; display:grid; gap:10px; }
.tah-ask-links { grid-template-columns:repeat(2,1fr); }
.tah-ask-caution { border-left:4px solid var(--gold); }

.tah-ask-status-panel {
  border:1px solid var(--border);
  border-radius:18px;
  padding:14px 16px;
  background:linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}
.tah-ask-status-row {
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}
#taxhackaiAskStatusDetail { flex:1 1 280px; }
#taxhackaiAskStatusNote {
  margin-top:8px;
  padding-top:8px;
  border-top:1px dashed var(--border);
  color:var(--muted);
}
.tah-ask-first-action {
  border-left:4px solid var(--primary);
  background:linear-gradient(180deg, var(--primary-soft), #fff);
}

.tah-help-hero-note { margin-top:10px; }
@media (max-width: 820px) {
  .tah-ask-grid,
  .tah-ask-links { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
  .tah-search-chip-row,
  .tah-ask-suggestions { gap:8px; }
  .tah-search-chip,
  .tah-chip-button { width:100%; justify-content:center; text-align:center; }
  .tah-ask-form textarea { min-height:120px; padding:14px 16px; }
}


.tah-topic-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.tah-topic-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 18px;
  background: #fff;
}

.tah-topic-card h3 {
  margin: 0 0 10px;
  font-size: 1.12rem;
}

.tah-topic-card ul {
  margin: 0;
  padding-left: 18px;
  line-height: 1.65;
}

.tah-topic-card a {
  color: var(--text);
  text-decoration: none;
  font-weight: 700;
}

.tah-topic-card a:hover {
  color: var(--primary);
}

.tah-pricing-card .tah-btn-primary,
.tah-pricing-card .tah-btn-pro,
#upgradeNowLink {
  min-width: 220px;
}

.tah-pricing-card .tah-btn-primary,
#upgradeNowLink,
.tah-btn-pro {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 55%, #f59e0b 120%);
  box-shadow: 0 16px 32px rgba(37, 99, 235, 0.24);
}

.tah-pricing-card .tah-btn-primary:hover,
#upgradeNowLink:hover,
.tah-btn-accent:hover,
.tah-btn-pro:hover {
  transform: translateY(-2px);
}

@media (max-width: 820px) {
  .tah-topic-grid {
    grid-template-columns: 1fr;
  }
}


.tah-auth-body { background: var(--bg); }
.tah-auth-shell { padding: 32px 16px 60px; }
.tah-auth-wrap { max-width: 1080px; margin: 0 auto; }
.tah-auth-brand { text-align: center; max-width: 780px; margin: 0 auto 24px; }
.tah-auth-logo { display: inline-block; font-size: clamp(2rem, 5vw, 2.8rem); font-weight: 900; color: var(--text); text-decoration: none; }
.tah-auth-tagline { margin-top: 8px; color: var(--muted); font-weight: 700; }
.tah-auth-brand h1 { margin: 16px 0 10px; font-size: clamp(2rem, 5vw, 3rem); line-height: 1.05; }
.tah-auth-brand p { margin: 0 auto; max-width: 640px; color: var(--muted); font-size: 1.05rem; line-height: 1.6; }
.tah-auth-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.tah-auth-card { background: var(--card); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); padding: 24px; }
.tah-auth-card h2 { margin: 0 0 14px; font-size: 1.4rem; }
.tah-auth-alert, .tah-auth-notice { margin-top: 16px; padding: 14px 16px; border-radius: 14px; font-weight: 600; }
.tah-auth-alert { background: var(--warning-soft); color: #991b1b; }
.tah-auth-notice { background: var(--success-soft); color: #166534; }
.tah-auth-form, .tah-auth-card .login form { display: grid; gap: 12px; }
.tah-auth-form label, .tah-auth-card .login label { display: grid; gap: 6px; font-weight: 700; color: var(--text); }
.tah-auth-form input[type=text], .tah-auth-form input[type=email], .tah-auth-form input[type=password], .tah-auth-card .login input[type=text], .tah-auth-card .login input[type=password] { width: 100%; border: 1px solid var(--border); border-radius: 14px; padding: 14px 15px; font-size: 1rem; }
.tah-auth-submit, .tah-auth-card .login .button-primary { width: 100%; justify-content: center; border-radius: 16px; padding: 15px 18px; font-size: 1rem; font-weight: 800; background: var(--primary); border: 1px solid var(--primary); color: #fff; cursor: pointer; }
.tah-auth-card .login .button-primary:hover, .tah-auth-submit:hover { background: #1d4ed8; border-color: #1d4ed8; }
.tah-auth-note { color: var(--muted); font-size: .95rem; line-height: 1.5; }
.tah-auth-links { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 10px; }
.tah-auth-links a { color: var(--primary); text-decoration: none; font-weight: 700; }
.tah-auth-links a:hover { text-decoration: underline; }
.tah-auth-card .login .login-remember { display: flex; align-items: center; gap: 8px; font-weight: 600; color: var(--muted); }
.tah-auth-card .login .login-remember input { width: auto; }
.tah-auth-card .login .login-submit { margin: 0; }
@media (max-width: 820px) { .tah-auth-grid { grid-template-columns: 1fr; } .tah-auth-shell { padding-top: 20px; } }


/* v139 Tax Library polish */
.tah-seo-answer-grid {
  display:grid;
  grid-template-columns:1.2fr 0.8fr;
  gap:18px;
  margin-bottom:18px;
}
.tah-seo-start-grid,
.tah-seo-polish-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
}
.tah-seo-list { margin:0; padding-left:18px; display:grid; gap:10px; color:var(--text); }
.tah-seo-list li { line-height:1.55; }
.tah-seo-muted { color:var(--muted); line-height:1.65; }
.tah-seo-chip-grid { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
.tah-seo-cta-card { border:2px solid rgba(37,99,235,.14); background:linear-gradient(180deg, #f8fbff, #fff); }
.tah-seo-cta-card .tah-button-row { margin-top:16px; }
.tah-seo-callout { border-left:4px solid var(--primary); padding-left:14px; }
.tah-seo-subtle { font-size:.95rem; color:var(--muted); }
.tah-seo-doc-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
@media (max-width: 900px) {
  .tah-seo-answer-grid,
  .tah-seo-start-grid,
  .tah-seo-polish-grid,
  .tah-seo-doc-grid { grid-template-columns:1fr; }
}

.tah-seo-trust-wrap {
  display: grid;
  gap: 16px;
  margin-bottom: 18px;
}

.tah-seo-trust-meta {
  border: 1px solid var(--border);
  background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.tah-seo-meta-badges {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.tah-trust-meta-copy {
  margin: 0;
}

.tah-seo-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.tah-seo-source-card a {
  color: var(--primary);
  text-decoration: none;
  font-weight: 700;
}

.tah-seo-source-card a:hover {
  text-decoration: underline;
}

.tah-source-list {
  margin-bottom: 0;
}

@media (max-width: 900px) {
  .tah-seo-trust-grid {
    grid-template-columns: 1fr;
  }
}


.tah-seo-featured .tah-seo-link-card,
.tah-priority-guides .tah-seo-link-card {
  border-color: #bfdbfe;
  background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.tah-inline-cta {
  align-self: flex-start;
  white-space: nowrap;
}

.site-footer__links--topics {
  width: 100%;
  padding-bottom: 4px;
  border-bottom: 1px solid var(--border);
}

.tah-priority-guides {
  margin-top: 18px;
}

@media (max-width: 720px) {
  .tah-inline-cta {
    width: 100%;
    text-align: center;
  }
}


.tah-priority-home-links,
.tah-library-home-hub,
.tah-seo-featured-groups {
  margin-top: 18px;
}

.tah-seo-featured-groups {
  display: grid;
  gap: 18px;
}

.tah-seo-featured-groups .tah-seo-related {
  margin: 0;
}

.tah-priority-home-links .tah-seo-link-card h3,
.tah-seo-featured-groups .tah-seo-link-card h3 {
  margin-bottom: 6px;
}


/* V146 knowledge library foundation */
.tah-knowledge-container { max-width: 1180px; margin: 0 auto; padding: 24px 18px 80px; }
.tah-knowledge-page .tah-knowledge-article,
.tah-knowledge-archive-hero,
.tah-knowledge-cta,
.tah-knowledge-related,
.tah-public-home-hero { padding: 28px; }
.tah-knowledge-kicker { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: 999px; background: var(--primary-soft); color: var(--primary); font-size: 0.9rem; font-weight: 700; margin-bottom: 12px; }
.tah-knowledge-title { font-size: clamp(2rem, 3vw, 3.1rem); line-height: 1.05; margin: 0 0 12px; }
.tah-knowledge-summary { font-size: 1.05rem; color: var(--muted); max-width: 760px; }
.tah-knowledge-reviewed { margin-bottom: 12px; }
.tah-knowledge-meta-row { display: grid; gap: 10px; margin: 22px 0 10px; }
.tah-knowledge-chip-group { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.tah-knowledge-chip-label { font-size: 0.88rem; font-weight: 700; color: var(--muted); }
.tah-knowledge-content h2 { margin-top: 28px; font-size: 1.35rem; }
.tah-knowledge-content p,
.tah-knowledge-content li { line-height: 1.72; }
.tah-related-grid,
.tah-archive-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.tah-related-card,
.tah-archive-card { text-decoration: none; color: inherit; display: flex; flex-direction: column; gap: 10px; padding: 22px; }
.tah-related-card span { color: var(--muted); font-size: 0.95rem; }
.tah-pagination { margin-top: 26px; }
@media (max-width: 960px) {
  .tah-related-grid,
  .tah-archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .tah-related-grid,
  .tah-archive-grid { grid-template-columns: 1fr; }
  .tah-knowledge-page .tah-knowledge-article,
  .tah-knowledge-archive-hero,
  .tah-knowledge-cta,
  .tah-knowledge-related,
  .tah-public-home-hero { padding: 20px; }
}


/* V147 library polish */
.tah-knowledge-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
  color: var(--muted);
  font-size: 0.92rem;
}
.tah-knowledge-breadcrumb a {
  color: var(--muted);
  text-decoration: none;
}
.tah-knowledge-breadcrumb a:hover { color: var(--primary); }
.tah-knowledge-breadcrumb-sep { color: #9ca3af; }
.tah-context-note,
.tah-parent-link-card,
.tah-hub-intro-card { margin-top: 18px; }
.tah-context-note p,
.tah-hub-intro-card p { margin: 0; line-height: 1.7; }
.tah-hub-groups { display: grid; gap: 22px; }
.tah-hub-group { display: grid; gap: 14px; }
.tah-hub-group-title {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 800;
}
.tah-parent-link-card .tah-button-like { width: auto; }


/* V148 homepage/dashboard split */
.tah-homepage-body .site-header__inner { align-items: center; }
.tah-homepage-body .site-header__search--desktop { min-width: 320px; }
.tah-public-homepage .tah-public-home-section { margin-top: 18px; }
.tah-public-home-hero--v148 { padding: 30px; }
.tah-public-home-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(320px, .95fr); gap: 20px; align-items: stretch; }
.tah-public-home-panel { height: 100%; }
.tah-public-home-mini-grid { display: grid; gap: 12px; margin-top: 14px; }
.tah-public-home-card { gap: 14px; }
.tah-public-home-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.tah-public-home-actions { margin-top: 18px; }
.tah-public-home-chips { margin-top: 16px; }
.tah-public-home-pricing .tah-archive-card ul { margin: 0; padding-left: 18px; }
.tah-public-home-pricing .tah-archive-card li + li { margin-top: 8px; }

.tah-public-home-panel--polish {
  padding: 24px;
}

.tah-public-home-checklist {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.tah-public-home-checklist > div {
  position: relative;
  padding-left: 30px;
  line-height: 1.55;
  font-weight: 600;
}

.tah-public-home-checklist > div::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--success-soft);
  color: var(--success);
  font-size: 0.82rem;
  font-weight: 800;
}

.tah-public-home-trust-card h3 {
  margin-bottom: 8px;
}

.tah-public-home-trust-card p {
  margin: 0;
  line-height: 1.65;
}

.tah-public-home-trust-card .tah-button-like {
  margin-top: auto;
  align-self: flex-start;
}
@media (max-width: 960px) {
  .tah-public-home-grid { grid-template-columns: 1fr; }
}
@media (max-width: 820px) {
  .tah-homepage-body .site-nav { display: block; }
  .tah-homepage-body .site-header__tools { justify-content: stretch; }
  .tah-homepage-body .site-header__search-mobile { width: 100%; order: 2; margin-left: 0; }
  .tah-public-home-hero--v148 { padding: 20px; }
  .tah-public-home-card-top { flex-direction: column; }
}


/* V148.2 forms experience */
.tah-form-actions-card,
.tah-form-support-card {
  margin-top: 18px;
}
.tah-form-actions-copy,
.tah-form-support-copy {
  color: var(--muted);
  line-height: 1.7;
  margin: 0 0 14px;
}
.tah-form-actions-row {
  margin-top: 12px;
}
.tah-form-support-list {
  display: grid;
  gap: 12px;
}
.tah-form-support-item strong {
  display: block;
  margin-bottom: 4px;
}
.tah-form-support-item p {
  margin: 0;
  line-height: 1.65;
}
.tah-form-note {
  margin-top: 12px;
  color: var(--muted);
  line-height: 1.65;
}


/* V148.5 IRS notices + letters */
.tah-notice-actions-card,
.tah-notice-support-card {
  margin-top: 18px;
}
.tah-notice-actions-copy {
  color: var(--muted);
  line-height: 1.7;
  margin: 0 0 14px;
}
.tah-notice-actions-row {
  margin-top: 12px;
}
.tah-notice-support-list {
  display: grid;
  gap: 12px;
}
.tah-notice-support-item strong {
  display: block;
  margin-bottom: 4px;
}
.tah-notice-support-item p {
  margin: 0;
  line-height: 1.65;
}


/* V148.4 archive landing pages + internal linking */
.tah-archive-hero-v1484 {
  display: grid;
  gap: 16px;
}

.tah-archive-title-main {
  font-size: clamp(2rem, 3vw, 3rem);
  margin: 0;
}

.tah-archive-stat-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
}

.tah-archive-stat-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px 18px;
  background: rgba(255,255,255,.7);
}

.tah-archive-stat-card strong {
  display: block;
  font-size: 1.2rem;
  line-height: 1.2;
}

.tah-archive-stat-card span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.93rem;
}

.tah-archive-quick-links {
  margin-top: 2px;
}

.tah-archive-section-card {
  margin-top: 18px;
  padding: 24px;
}

.tah-archive-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.tah-archive-section-head .tah-section-title {
  margin: 0 0 8px;
}

.tah-archive-group + .tah-archive-group {
  margin-top: 24px;
}

.tah-archive-group-head {
  margin-bottom: 14px;
}

.tah-archive-group-head p {
  margin: 6px 0 0;
  max-width: 760px;
}

.tah-archive-card--featured {
  border-color: rgba(37, 99, 235, 0.22);
  background: linear-gradient(180deg, rgba(219, 234, 254, 0.55), #fff 55%);
}

.tah-archive-card .tah-section-title,
.tah-archive-card h4.tah-section-title {
  margin: 0;
  font-size: 1.18rem;
}

.tah-archive-card p {
  margin: 0;
  line-height: 1.65;
}

.tah-archive-card .tah-button-like {
  margin-top: auto;
  align-self: flex-start;
}

.tah-archive-groups {
  display: grid;
  gap: 18px;
}

.tah-archive-section-card--all .tah-pagination {
  margin-top: 22px;
}

@media (max-width: 820px) {
  .tah-archive-section-card {
    padding: 20px;
  }

  .tah-archive-section-head {
    flex-direction: column;
  }

  .tah-archive-stat-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .tah-archive-stat-row {
    grid-template-columns: 1fr;
  }
}


/* V148.6 problem workflows */
.tah-problem-actions-card,
.tah-problem-support-card,
.tah-problem-steps-card {
  margin-top: 18px;
}

.tah-problem-actions-copy {
  color: var(--muted);
  line-height: 1.7;
  margin: 0 0 14px;
}

.tah-problem-support-list {
  display: grid;
  gap: 12px;
}

.tah-problem-support-item strong {
  display: block;
  margin-bottom: 4px;
}

.tah-problem-support-item p,
.tah-problem-support-item ul {
  margin: 0;
  line-height: 1.65;
}

.tah-problem-support-item ul {
  padding-left: 1.15rem;
  margin-top: 8px;
}

.tah-problem-steps {
  margin: 0;
  padding-left: 1.25rem;
  display: grid;
  gap: 12px;
}

.tah-problem-steps li {
  line-height: 1.7;
}

.tah-problem-steps li::marker {
  color: var(--primary);
  font-weight: 700;
}

@media (min-width: 860px) {
  .tah-problem-support-list {
    grid-template-columns: 1fr 1fr;
  }
}

.tah-uniqueness-card {
  margin-top: 1.25rem;
}

.tah-uniqueness-intro {
  color: var(--muted);
  margin: 0.5rem 0 0;
  line-height: 1.65;
}

.tah-uniqueness-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.tah-uniqueness-item {
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fafcff;
  padding: 1rem;
}

.tah-uniqueness-item strong {
  display: block;
  margin-bottom: 0.6rem;
}

.tah-uniqueness-item ul {
  margin: 0;
  padding-left: 1.1rem;
  color: var(--muted);
}

.tah-uniqueness-item li + li {
  margin-top: 0.35rem;
}


.tah-source-authority-card{margin-top:24px;}
.tah-source-authority-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.tah-source-authority-copy{margin-top:4px;color:var(--muted);}
.tah-source-authority-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px;}
.tah-source-authority-link span{display:block;color:var(--muted);margin-top:6px;font-size:14px;word-break:break-all;}
.tah-source-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:700;}
.tah-source-status--strong{background:var(--success-soft);color:var(--success);}
.tah-source-status--adequate{background:var(--gold-soft);color:#92400e;}
.tah-source-status--weak,.tah-source-status--missing{background:var(--warning-soft);color:var(--warning);}

.tah-seo-source-card p {
  margin: 10px 0 0;
  color: var(--muted);
}

.tah-seo-trust-meta .tah-search-chip {
  background: #f8fafc;
}


/* v150 conversion engine */
.tah-conversion-panel {
  border: 1px solid rgba(37, 99, 235, 0.14);
  background: linear-gradient(180deg, rgba(37,99,235,0.06), rgba(37,99,235,0.02));
}
.tah-conversion-grid,
.tah-archive-conversion-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .95fr);
  gap: 22px;
  align-items: start;
}
.tah-conversion-copy {
  margin-bottom: 14px;
}
.tah-conversion-badges {
  margin-bottom: 14px;
}
.tah-conversion-actions,
.tah-archive-conversion-actions {
  margin-top: 10px;
}
.tah-conversion-note {
  margin-top: 14px;
}
.tah-conversion-steps-card,
.tah-conversion-tools-card {
  border-radius: 18px;
  background: rgba(255,255,255,0.7);
}
.tah-conversion-tools-card {
  margin-top: 14px;
}
.tah-conversion-subtitle {
  font-size: 1.05rem;
  margin-bottom: 10px;
}
.tah-conversion-steps {
  margin: 0;
  padding-left: 18px;
  color: var(--text);
}
.tah-conversion-steps li {
  margin: 0 0 10px;
  line-height: 1.55;
}
.tah-conversion-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.tah-archive-conversion-panel {
  border: 1px solid rgba(17, 24, 39, 0.08);
  background: linear-gradient(180deg, rgba(16, 185, 129, 0.06), rgba(255,255,255,0.94));
}
.tah-archive-conversion-actions {
  align-items: center;
}
@media (max-width: 920px) {
  .tah-conversion-grid,
  .tah-archive-conversion-grid {
    grid-template-columns: 1fr;
  }
}

.tah-dashboard-context-card {
  margin-bottom: 18px;
}

.tah-dashboard-context-source {
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.95rem;
}

.tah-dashboard-context-summary {
  margin: 12px 0 0;
  color: var(--text);
  max-width: 72ch;
}


/* v150 conversion funnels */
.tah-workspace-panel,
.tah-arrival-card {
  border: 1px solid rgba(15, 23, 42, 0.08);
}

.tah-workspace-panel .tah-button-row,
.tah-arrival-card .tah-button-row {
  margin-top: 14px;
}

.tah-source-meta {
  margin-top: 6px;
}


/* v150 conversion + onboarding */
.site-header__cta { white-space: nowrap; }
.tah-conversion-panel,
.tah-dashboard-intent-card {
  border: 1px solid rgba(37, 99, 235, 0.14);
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(239,246,255,0.55) 100%);
}
.tah-conversion-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.9fr);
  gap: 18px;
}
.tah-conversion-copy { max-width: 56rem; }
.tah-conversion-badges,
.tah-conversion-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.tah-conversion-steps { margin: 0; padding-left: 1.1rem; }
.tah-conversion-steps li,
.tah-dashboard-intent-list li { margin: 0.35rem 0; }
.tah-conversion-subtitle { font-size: 1rem; margin-bottom: 10px; }
.tah-conversion-note { margin-top: 12px; }
.tah-dashboard-intent-card .tah-button-row,
.tah-conversion-actions { gap: 10px; }
.tah-dashboard-intent-card .tah-seo-list { margin-bottom: 0; }
@media (max-width: 980px) {
  .site-header__cta { order: 4; margin-left: auto; }
  .tah-conversion-grid { grid-template-columns: 1fr; }
}
@media (max-width: 820px) { .site-header__cta { width: auto; } }
@media (max-width: 560px) { .site-header__cta { width: 100%; text-align: center; } }

/* v150.3 Search + discovery */
.tah-discovery-filter-card{margin-bottom:20px}
.tah-discovery-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:14px}
.tah-discovery-filter-grid label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:#1f2937}
.tah-discovery-filter-grid input,.tah-discovery-filter-grid select{width:100%;padding:12px 14px;border:1px solid #d7dbe8;border-radius:14px;background:#fff;font:inherit;color:#0f172a}
.tah-discovery-filter-actions{margin-top:14px}
.tah-active-filter-chips,.tah-discovery-summary-row{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}
.tah-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border:1px solid #d7dbe8;border-radius:999px;background:#fff;color:#1f2937;text-decoration:none;font-size:14px;line-height:1.2}
.tah-filter-chip:hover{border-color:#9db3ff;color:#1d4ed8}
.tah-search-results--library,.tah-discovery-summary-card{margin-bottom:20px}
.tah-search-library-card{min-height:100%}
@media (max-width: 767px){.tah-discovery-filter-grid{grid-template-columns:1fr}}


.tah-start-here-hero,
.tah-intent-hub-hero {
  margin-bottom: 18px;
}

.tah-intent-card strong {
  display: block;
  font-size: 1.05rem;
  margin-bottom: 8px;
}

.tah-intent-card span {
  display: block;
}

.tah-start-here-panel {
  margin-bottom: 18px;
}

.tah-start-here-page .tah-archive-card,
.tah-intent-hub-page .tah-archive-card {
  min-height: 100%;
}


.tah-action-plan-card {
  margin-top: 1.5rem;
}

.tah-action-plan-head {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
  align-items: start;
}

.tah-action-progress-card {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1rem;
  background: linear-gradient(180deg, #ffffff 0%, #f9fafb 100%);
}

.tah-action-progress-text {
  display: block;
  margin-top: 0.25rem;
  font-size: 1rem;
}

.tah-action-progress-bar {
  width: 100%;
  height: 12px;
  background: #e5e7eb;
  border-radius: 999px;
  overflow: hidden;
  margin-top: 0.75rem;
}

.tah-action-progress-bar span {
  display: block;
  height: 100%;
  background: var(--primary);
  border-radius: 999px;
  transition: width 0.2s ease;
}

.tah-action-plan-note {
  margin-top: 0.75rem;
}

.tah-action-plan-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  margin-top: 1rem;
}

.tah-action-plan-group {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1rem;
  background: #fff;
}

.tah-action-group-title {
  font-size: 1rem;
  margin-bottom: 0.75rem;
}

.tah-action-checklist {
  display: grid;
  gap: 0.75rem;
}

.tah-action-check {
  display: grid;
  grid-template-columns: 20px 1fr;
  align-items: start;
  gap: 0.75rem;
  padding: 0.75rem;
  border-radius: 14px;
  background: #f9fafb;
  border: 1px solid #eef2f7;
}

.tah-action-check input {
  margin-top: 0.2rem;
}

.tah-action-check span {
  display: block;
}

.tah-action-check strong {
  display: block;
  font-size: 0.95rem;
}

.tah-action-check small {
  display: block;
  margin-top: 0.25rem;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.45;
}

.tah-action-check.is-complete {
  background: var(--success-soft);
  border-color: #bbf7d0;
}

.tah-action-check.is-complete strong {
  text-decoration: line-through;
  color: #166534;
}

.tah-action-plan-actions {
  margin-top: 1rem;
}

@media (max-width: 820px) {
  .tah-action-plan-head {
    grid-template-columns: 1fr;
  }
}

@media print {
  .site-header,
  .site-footer,
  .tah-knowledge-breadcrumb,
  .tah-parent-link-card,
  .tah-knowledge-related,
  .tah-conversion-panel,
  .tah-knowledge-cta,
  .tah-button-row,
  .tah-no-print {
    display: none !important;
  }

  body {
    background: #fff;
  }

  .tah-card,
  .tah-knowledge-article,
  .tah-action-plan-group,
  .tah-action-progress-card {
    box-shadow: none !important;
    border-color: #d1d5db !important;
  }

  .tah-main,
  .tah-container,
  .tah-knowledge-container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}

.tah-case-workspace-card {
  margin-bottom: 18px;
}

.tah-case-workspace-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 18px;
  margin-top: 18px;
}

.tah-case-progress-card,
.tah-case-panel,
.tah-case-form {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  padding: 18px;
}

.tah-case-progress-card strong {
  display: block;
  font-size: 1.1rem;
  margin-top: 6px;
}

.tah-case-panel-grid,
.tah-case-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 16px;
}

.tah-case-form-grid label {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tah-case-form-grid label:last-child {
  grid-column: 1 / -1;
}

.tah-case-form textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 14px;
  font: inherit;
  resize: vertical;
  min-height: 110px;
  background: #fff;
}

.tah-case-list {
  display: grid;
  gap: 10px;
}

.tah-case-list-item {
  display: block;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 14px;
  color: var(--text);
  text-decoration: none;
  background: #fff;
}

.tah-case-list-item strong {
  display: block;
  margin-bottom: 4px;
}

.tah-case-list-item span {
  display: block;
  color: var(--muted);
  font-size: 0.92rem;
}

.tah-case-list-item.is-active {
  border-color: var(--primary);
  box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.14);
}

.tah-case-notes-wrap {
  margin-top: 18px;
}

@media (max-width: 960px) {
  .tah-case-workspace-grid,
  .tah-case-panel-grid,
  .tah-case-form-grid {
    grid-template-columns: 1fr;
  }

  .tah-case-form-grid label:last-child {
    grid-column: auto;
  }
}


.tah-case-meta-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.tah-case-kpi {
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
  padding: 14px 16px;
}

.tah-case-kpi strong {
  display: block;
  margin-top: 6px;
}

.tah-case-side-stack {
  display: grid;
  gap: 14px;
}

.tah-case-timeline {
  display: grid;
  gap: 12px;
}

.tah-case-timeline-item {
  position: relative;
  padding: 12px 14px 12px 18px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
}

.tah-case-timeline-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  border-radius: 14px 0 0 14px;
  background: var(--primary);
}

.tah-case-timeline-item strong,
.tah-case-timeline-item span {
  display: block;
}

.tah-case-timeline-item span {
  color: var(--muted);
  font-size: 0.92rem;
  margin-top: 4px;
}

.tah-case-activity-list {
  display: grid;
  gap: 10px;
}

@media (max-width: 1100px) {
  .tah-case-meta-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .tah-case-meta-row {
    grid-template-columns: 1fr;
  }
}


.tah-doc-summary-callout { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.tah-doc-checklist { display:flex; flex-direction:column; gap:10px; margin-top:12px; }
.tah-doc-checklist--compact { margin-top:0; }
.tah-doc-item {
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:16px;
  background:#fff;
}
.tah-doc-item.is-done { background: var(--success-soft); }
.tah-doc-item input { margin-top:4px; }
.tah-doc-item span { display:flex; flex-direction:column; gap:4px; }
.tah-doc-item small { color: var(--muted); line-height:1.45; }
.tah-case-attach-details summary { cursor:pointer; font-weight:700; }
.tah-case-attach-details[open] summary { margin-bottom:10px; }

.tah-reminder-center {
  margin-top: 16px;
}

.tah-reminder-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.tah-reminder-item {
  display: grid;
  gap: 10px;
}

.tah-reminder-item--overdue {
  border-color: rgba(220, 38, 38, 0.28);
  background: rgba(254, 242, 242, 0.9);
}

.tah-reminder-item--today {
  border-color: rgba(245, 158, 11, 0.28);
  background: rgba(255, 251, 235, 0.92);
}

.tah-reminder-top {
  display: flex;
  gap: 10px;
  justify-content: space-between;
  align-items: flex-start;
}

.tah-reminder-top strong {
  display: block;
  font-size: 1rem;
}

.tah-reminder-actions {
  margin-top: 2px;
}

.tah-reminder-list-compact .tah-case-list-item span {
  margin-top: 2px;
}

@media (max-width: 1100px) {
  .tah-reminder-grid {
    grid-template-columns: 1fr;
  }
}


/* v151.1 case board */
.tah-case-board-wrap { margin-bottom: 18px; }
.tah-case-board-summary-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 16px;
}
.tah-case-board-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 18px;
}
.tah-case-bucket {
  background: rgba(255,255,255,0.82);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 18px;
  box-shadow: var(--shadow);
}
.tah-case-bucket-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}
.tah-case-board-card-grid {
  display: grid;
  gap: 14px;
}
.tah-case-board-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px;
  background: #fff;
}
.tah-case-board-card.is-active {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}
.tah-case-board-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.tah-case-board-meta {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 14px;
}
.tah-case-board-meta div {
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 10px 12px;
  background: var(--bg);
}
.tah-case-board-meta .tah-tiny {
  display: block;
  margin-bottom: 4px;
}
.tah-case-board-touchpoint {
  margin-top: 14px;
  font-size: 0.95rem;
}
.tah-case-board-actions { margin-top: 14px; }
@media (max-width: 980px) {
  .tah-case-board-summary-grid,
  .tah-case-board-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .tah-case-board-meta {
    grid-template-columns: 1fr;
  }
}


.tah-case-year-planner { margin-top: 18px; }
.tah-case-year-options {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}
.tah-year-choice {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: #fff;
  cursor: pointer;
  font-weight: 600;
}
.tah-year-choice input { margin: 0; }
.tah-year-packet-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.tah-year-packet-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.tah-year-packet-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.tah-year-packet-status-field span {
  display: block;
  margin-bottom: 6px;
}
.tah-year-packet-status-field select {
  width: 100%;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #fff;
}
.tah-year-packet-group { display: grid; gap: 8px; }
.tah-year-packet-list { margin: 0 0 0 18px; }


.tah-followup-callout {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}

.tah-followup-queue {
  gap: 14px;
}

.tah-case-alert-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.tah-case-alert-item {
  display: grid;
  gap: 10px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
  padding: 14px;
}

.tah-case-alert-item.is-active {
  border-color: rgba(37, 99, 235, 0.35);
  box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.12);
}

.tah-case-alert-item--overdue {
  border-color: rgba(220, 38, 38, 0.24);
  background: rgba(254, 242, 242, 0.92);
}

.tah-case-alert-item--today,
.tah-case-alert-item--missing {
  border-color: rgba(245, 158, 11, 0.22);
  background: rgba(255, 251, 235, 0.94);
}

.tah-case-alert-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.tah-case-alert-top strong {
  display: block;
  margin-bottom: 4px;
}

@media (max-width: 760px) {
  .tah-followup-callout,
  .tah-case-alert-top {
    flex-direction: column;
    align-items: stretch;
  }
}


/* V151.2 case intake + readiness */
.tah-case-form input[type="text"],
.tah-case-form input[type="date"],
.tah-case-form select {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 14px;
  font: inherit;
  background: #fff;
}

.tah-case-form select {
  min-height: 46px;
}

.tah-case-form input::placeholder {
  color: #9ca3af;
}


/* v152 case task board + milestones */
.tah-case-task-milestones {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.tah-case-task-milestone {
  padding: 14px 16px;
}

.tah-case-task-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.tah-case-task-row {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}

.tah-case-task-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.tah-case-task-controls {
  min-width: 220px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-end;
}

.tah-case-task-controls select {
  width: 100%;
  min-width: 180px;
}

@media (max-width: 782px) {
  .tah-case-task-row {
    flex-direction: column;
  }

  .tah-case-task-controls {
    min-width: 0;
    width: 100%;
    align-items: stretch;
  }
}


.tah-books-card {
  margin-top: 18px;
}

.tah-books-kpi-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.tah-books-main-grid {
  margin-top: 16px;
}

.tah-books-quick-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.tah-books-quick-row div {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  background: #fff;
}

.tah-books-quick-row span {
  display: block;
  color: var(--muted);
  font-size: 0.9rem;
  margin-bottom: 6px;
}

.tah-books-quick-row strong {
  display: block;
  font-size: 1.15rem;
}

.tah-books-table-wrap {
  overflow-x: auto;
  margin-top: 14px;
}

.tah-books-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}

.tah-books-table th,
.tah-books-table td {
  padding: 12px 10px;
  border-bottom: 1px solid var(--border);
  vertical-align: top;
  text-align: left;
}

.tah-books-table th {
  font-size: 0.92rem;
  color: var(--muted);
  font-weight: 700;
}

.tah-books-table td select {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 10px 12px;
  font: inherit;
  background: #fff;
}

.tah-books-rollup-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.tah-books-rule-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 0.92rem;
}

@media (max-width: 1100px) {
  .tah-books-kpi-grid,
  .tah-books-rollup-grid,
  .tah-books-quick-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .tah-books-kpi-grid,
  .tah-books-rollup-grid,
  .tah-books-quick-row {
    grid-template-columns: 1fr;
  }
}


/* v153 TaxHack Books core */
.tah-grid-books-kpi { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.tah-books-summary-list { display: grid; gap: 10px; }
.tah-books-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fbfdff;
}
.tah-books-summary-row strong,
.tah-books-review-main strong { display: block; }
.tah-books-summary-row small,
.tah-books-review-main small,
.tah-books-estimate-card small { display: block; color: var(--muted); margin-top: 4px; }
.tah-books-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}
.tah-books-table { width: 100%; border-collapse: collapse; min-width: 480px; }
.tah-books-table th,
.tah-books-table td { padding: 10px 12px; border-bottom: 1px solid var(--border); text-align: left; font-size: 0.95rem; }
.tah-books-table th { font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.03em; color: var(--muted); background: #f9fafb; }
.tah-books-table tbody tr:last-child td { border-bottom: 0; }
.tah-books-estimate-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; }
.tah-books-estimate-card {
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fbfdff;
  padding: 14px;
}
.tah-books-estimate-card strong { display: block; font-size: 1.15rem; margin-top: 4px; }
.tah-books-review-list { display: grid; gap: 12px; }
.tah-books-review-item {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(100px, 0.4fr) minmax(260px, 1fr);
  gap: 14px;
  align-items: start;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}
.tah-books-review-item.needs-review { border-color: rgba(245, 158, 11, 0.45); background: #fffbeb; }
.tah-books-review-amount { font-weight: 700; padding-top: 2px; }
.tah-books-review-amount.is-income { color: var(--success); }
.tah-books-review-amount.is-expense { color: var(--warning); }
.tah-books-review-controls { display: grid; grid-template-columns: repeat(2, minmax(120px, 1fr)); gap: 10px; }
.tah-books-review-controls label,
.tah-books-review-controls span { display: block; }
.tah-books-review-controls span { font-size: 0.8rem; color: var(--muted); margin-bottom: 6px; }
.tah-books-review-controls select {
  width: 100%;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #fff;
}
@media (max-width: 900px) {
  .tah-books-review-item { grid-template-columns: 1fr; }
  .tah-books-review-controls { grid-template-columns: 1fr; }
}

/* v153 TaxHack Books core */
.tah-books-pulse-card,
.tah-books-core-card {
  margin-bottom: 18px;
}

.tah-books-case-callout {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 16px;
  margin-top: 14px;
  border-radius: 16px;
  background: var(--primary-soft);
  border: 1px solid rgba(37, 99, 235, 0.16);
}

.tah-books-summary-grid,
.tah-books-pulse-grid,
.tah-books-quarter-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.tah-books-layout-grid {
  grid-template-columns: 1.15fr 1fr;
}

.tah-books-month-list,
.tah-books-review-list,
.tah-books-bucket-table {
  display: grid;
  gap: 12px;
}

.tah-books-month-row,
.tah-books-review-row {
  display: grid;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}

.tah-books-month-row {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) auto;
}

.tah-books-month-row.is-closed {
  background: var(--success-soft);
  border-color: rgba(22, 163, 74, 0.18);
}

.tah-books-month-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  font-size: 0.95rem;
}

.tah-books-net {
  font-weight: 700;
}

.tah-books-review-row {
  grid-template-columns: minmax(0, 1.35fr) auto minmax(160px, 180px) minmax(180px, 220px);
}

.tah-books-review-main {
  min-width: 0;
}

.tah-books-review-main strong {
  display: block;
  overflow-wrap: anywhere;
}

.tah-books-review-amount {
  font-weight: 700;
  white-space: nowrap;
}

.tah-books-review-amount.is-expense {
  color: var(--warning);
}

.tah-books-review-amount.is-income {
  color: var(--success);
}

.tah-books-review-row label {
  display: grid;
  gap: 6px;
}

.tah-books-review-row select {
  width: 100%;
}

.tah-books-bucket-table .tah-row {
  align-items: flex-start;
  gap: 14px;
}

.tah-books-bucket-table .tah-row .k {
  flex: 1 1 auto;
}

.tah-books-bucket-table .tah-row .v {
  white-space: nowrap;
  font-weight: 700;
}

@media (max-width: 900px) {
  .tah-books-layout-grid,
  .tah-books-month-row,
  .tah-books-review-row {
    grid-template-columns: 1fr;
  }

  .tah-books-month-metrics {
    justify-content: flex-start;
  }
}


/* v153.1 TaxHack Books dashboard polish */
.tah-books-core { margin-bottom: 18px; }
.tah-grid-books { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.tah-books-table { display: grid; gap: 10px; }
.tah-books-table-row {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
}
.tah-books-month-list { display: grid; gap: 12px; }
.tah-inline-form { margin: 0; }
.tah-books-manual-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.tah-books-queue { display: grid; gap: 12px; }
.tah-books-queue-item {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
}
.tah-books-queue-grid { grid-template-columns: repeat(2, minmax(140px, 1fr)); }
.tah-books-rule-check {
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 0.92rem;
  color: var(--muted);
}
.tah-books-rule-list { display: grid; gap: 10px; }
@media (max-width: 760px) {
  .tah-books-table-row {
    flex-direction: column;
    align-items: flex-start;
  }
  .tah-books-queue-grid,
  .tah-books-manual-grid {
    grid-template-columns: 1fr;
  }
}


/* v153.1 Statement ingest + ledger */
.tah-books-workspace { display: grid; gap: 18px; margin-bottom: 18px; }
.tah-books-ingest-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr); gap: 16px; }
.tah-books-upload-drop { display: grid; gap: 10px; padding: 14px; border: 1px dashed var(--border); border-radius: 16px; background: #f9fafb; }
.tah-books-upload-input { display: grid; gap: 8px; font-weight: 600; }
.tah-books-upload-input input[type="file"] { width: 100%; padding: 10px; border: 1px solid var(--border); border-radius: 12px; background: #fff; }
.tah-books-upload-list { display: grid; gap: 10px; }
.tah-books-upload-row { display: flex; gap: 12px; justify-content: space-between; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--border); border-radius: 14px; background: #fff; }
.tah-books-upload-metrics { display: flex; flex-wrap: wrap; gap: 8px; font-size: 0.82rem; color: var(--muted); }
.tah-books-error { border-color: rgba(220, 38, 38, 0.2); background: #fef2f2; }
.tah-books-success { border-color: rgba(22, 163, 74, 0.2); background: #f0fdf4; }
.tah-books-filter-bar { display: grid; grid-template-columns: minmax(180px, 1.2fr) repeat(4, minmax(120px, 1fr)) auto auto; gap: 10px; margin-top: 14px; }
.tah-books-filter-bar input,
.tah-books-filter-bar select { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--border); border-radius: 12px; background: #fff; }
.tah-books-ledger-table { width: 100%; border-collapse: collapse; min-width: 900px; }
.tah-books-ledger-table th,
.tah-books-ledger-table td { padding: 11px 12px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.tah-books-ledger-table th { font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.03em; color: var(--muted); background: #f9fafb; }
.tah-books-ledger-table td strong { display: block; }
.tah-books-ledger-table td.is-income { color: var(--success); font-weight: 700; }
.tah-books-ledger-table td.is-expense { color: var(--warning); font-weight: 700; }
.tah-compact-button { padding: 8px 10px; border-radius: 999px; font-size: 0.85rem; }
@media (max-width: 980px) {
  .tah-books-ingest-grid,
  .tah-books-filter-bar { grid-template-columns: 1fr; }
  .tah-books-upload-row { flex-direction: column; }
}


/* v153.2 Books review queue + reconciliation */
.tah-books-review-wrap { margin-top: 18px; }
.tah-books-review-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.tah-books-review-grid .tah-card { padding: 18px; }
.tah-books-review-grid .value { font-size: 2rem; font-weight: 800; line-height: 1.05; margin: 6px 0; }
.tah-books-segmented {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}
.tah-books-segmented .tah-button-like { border-radius: 999px; }
.tah-books-batch-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.tah-books-batch-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px;
  background: #fff;
}
.tah-books-batch-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.tah-books-batch-meta .tah-badge { white-space: nowrap; }
.tah-books-review-table-wrap {
  overflow: auto;
  margin-top: 14px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
}
.tah-books-review-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 880px;
}
.tah-books-review-table th,
.tah-books-review-table td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
  vertical-align: top;
  text-align: left;
}
.tah-books-review-table tbody tr:last-child td { border-bottom: 0; }
.tah-books-review-table .is-income { color: #166534; font-weight: 700; }
.tah-books-review-table .is-expense { color: #991b1b; font-weight: 700; }
.tah-books-review-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.tah-books-inline-note {
  border-left: 4px solid var(--primary);
  background: var(--primary-soft);
  padding: 12px 14px;
  border-radius: 14px;
  margin-top: 14px;
}
.tah-books-mini-stack { display: flex; flex-direction: column; gap: 6px; }
.tah-books-mini-stack .tah-tiny { margin: 0; }
.tah-books-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.tah-books-toolbar .tah-button-row { margin: 0; }
@media (max-width: 980px) {
  .tah-books-review-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .tah-books-review-grid { grid-template-columns: 1fr; }
  .tah-books-toolbar { align-items: flex-start; }
}


/* v153.2 Review queue + reconciliation */
.tah-books-review-summary { grid-template-columns: repeat(4, minmax(180px, 1fr)); }
.tah-books-review-board-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr); gap: 16px; }
.tah-books-filter-bar-compact { grid-template-columns: repeat(3, minmax(130px, 1fr)) auto auto; }
.tah-books-review-table { width: 100%; border-collapse: collapse; min-width: 980px; }
.tah-books-review-table th,
.tah-books-review-table td { padding: 12px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.tah-books-review-table th { font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.03em; color: var(--muted); background: #f9fafb; }
.tah-books-review-table td.is-income { color: var(--success); font-weight: 700; }
.tah-books-review-table td.is-expense { color: var(--warning); font-weight: 700; }
.tah-books-guess-wrap { display: grid; gap: 6px; }
.tah-chip-row { display: flex; flex-wrap: wrap; gap: 6px; }
.tah-books-inline-review { display: grid; gap: 8px; min-width: 220px; }
.tah-books-inline-review select { width: 100%; min-height: 40px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 12px; background: #fff; }
.tah-books-rule-inline { margin: 0; font-size: 0.78rem; }
.tah-books-reconcile-list { display: grid; gap: 12px; }
.tah-books-reconcile-row { padding: 14px; border: 1px solid var(--border); border-radius: 16px; background: #fff; display: grid; gap: 10px; }
.tah-books-reconcile-row.is-ready { border-color: rgba(245, 158, 11, 0.45); background: #fffbeb; }
.tah-books-reconcile-row.is-reconciled { border-color: rgba(22, 163, 74, 0.28); background: #f0fdf4; }
.tah-books-reconcile-top { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.tah-books-progress { height: 10px; border-radius: 999px; background: #e5e7eb; overflow: hidden; }
.tah-books-progress > span { display: block; height: 100%; background: var(--primary); border-radius: inherit; }
.tah-books-reconcile-metrics { display: flex; flex-wrap: wrap; gap: 8px; font-size: 0.82rem; color: var(--muted); }
@media (max-width: 980px) {
  .tah-books-review-summary,
  .tah-books-review-board-grid,
  .tah-books-filter-bar-compact { grid-template-columns: 1fr; }
}


/* v153.3 books tax bridge */
.tah-grid-books-bridge { grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); }
.tah-books-quarter-breakdown { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; margin:14px 0; }
.tah-books-quarter-breakdown > div { background:#f7f8fb; border:1px solid #e6e9ef; border-radius:14px; padding:12px 14px; }
.tah-books-quarter-grid { grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); }
.tah-books-bridge-table { width:100%; border-collapse:collapse; margin-top:12px; }
.tah-books-bridge-table th, .tah-books-bridge-table td { border-bottom:1px solid #e6e9ef; padding:10px 8px; text-align:left; }
.tah-books-bridge-table th:last-child, .tah-books-bridge-table td:last-child { text-align:right; }
.tah-books-bridge-total-row td { background:#fbfbfd; }
.tah-books-readiness-list { margin:0; padding-left:18px; }
.tah-check-inline { display:flex; align-items:center; gap:8px; }
@media (max-width: 720px) {
  .tah-books-bridge-table th, .tah-books-bridge-table td { font-size:0.95rem; }
}


/* v153.3 books forecast + packet */
.tah-books-forecast-layout {
  display: grid;
  grid-template-columns: 1.5fr 0.95fr;
  gap: 16px;
}
.tah-books-rate-grid,
.tah-books-setaside-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}
.tah-books-forecast-total {
  border: 1px solid #dbe3f0;
  border-radius: 16px;
  background: #f8fafc;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.tah-books-packet-summary {
  display: grid;
  gap: 10px;
}
@media (max-width: 980px) {
  .tah-books-forecast-layout {
    grid-template-columns: 1fr;
  }
}


.tah-books-plan-metrics .tah-card { min-height: 132px; }
.tah-books-cadence-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; }
.tah-books-cadence-card { border:1px solid var(--border); border-radius:16px; padding:14px; background:var(--card); }
.tah-books-cadence-value { font-size:1.5rem; font-weight:800; margin:6px 0; }
.tah-books-planner-notice.is-safe { border:1px solid var(--success); background:var(--success-soft); }
.tah-books-planner-notice.is-warn { border:1px solid var(--gold); background:var(--gold-soft); }
@media (max-width: 900px) {
  .tah-books-cadence-grid { grid-template-columns:1fr; }
}

.tah-books-audit-card { margin-top: 18px; }
.tah-books-audit-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: end;
  justify-content: space-between;
}
.tah-books-audit-year label {
  display: grid;
  gap: 6px;
}
.tah-books-audit-year select {
  min-width: 140px;
}
.tah-books-audit-list {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}
.tah-books-audit-item {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  background: #fff;
}
.tah-books-audit-inline-stats {
  margin-top: 10px;
}
.tah-books-audit-reasons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.tah-books-audit-holds {
  background: var(--warning-soft);
  border-color: rgba(220, 38, 38, 0.18);
}
.tah-books-audit-queue-item .tah-button-row {
  gap: 8px;
}
@media (max-width: 720px) {
  .tah-books-audit-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
}


/* v153.5 filing packet + preparer handoff */
.tah-filing-packet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:16px}.tah-filing-packet-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px}.tah-filing-metric{padding:14px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#fff}.tah-filing-metric .label{font-size:.86rem;color:#475569}.tah-filing-metric .value{font-size:1.45rem;font-weight:700;margin-top:6px}.tah-filing-packet-list{margin:10px 0 0 18px;padding:0}.tah-filing-packet-list li{margin:0 0 8px}.tah-filing-packet-form textarea{min-height:110px}.tah-filing-packet-subgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}.tah-filing-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(148,163,184,.12);font-size:.85rem}.tah-filing-pill.safe{background:rgba(16,185,129,.14)}.tah-filing-pill.warn{background:rgba(245,158,11,.16)}.tah-filing-pill.gold{background:rgba(250,204,21,.18)}


/* v153.6 return prep workspace */
.tah-return-prep-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.tah-return-chip-row {
  gap: 10px;
}

.tah-return-chip {
  font-weight: 600;
}

.tah-return-blockers {
  margin: 10px 0 0 18px;
  color: var(--text);
}

.tah-return-blockers li + li {
  margin-top: 8px;
}

.tah-return-checklist-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.tah-return-check-item {
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: rgba(255,255,255,0.75);
}

.tah-return-toggle-wrap {
  display: grid;
  gap: 8px;
  align-content: start;
  padding-top: 26px;
}

.tah-return-decision-card .tah-soft-callout,
.tah-return-prep .tah-soft-callout {
  border-radius: 14px;
}

@media (max-width: 860px) {
  .tah-return-prep-grid {
    grid-template-columns: 1fr;
  }
}


/* v153.6 return prep workspace + filing checklist */
.tah-return-prep-metrics .value { font-size: 1.95rem; }
.tah-return-prep-chip-row {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.tah-return-prep-chip {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  box-shadow: var(--shadow);
  font-size:0.92rem;
}
.tah-return-prep-chip.is-current {
  border-color: var(--primary);
  background: var(--primary-soft);
}
.tah-return-prep-grid {
  display:grid;
  grid-template-columns: 1.2fr 1fr;
  gap:18px;
}
.tah-return-prep-stack,
.tah-return-prep-checklist {
  display:flex;
  flex-direction:column;
  gap:12px;
}
.tah-return-prep-form,
.tah-return-prep-check {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:flex-start;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:16px;
  background:#fff;
}
.tah-return-prep-form input[type="checkbox"],
.tah-return-prep-check input[type="checkbox"] {
  margin-top:3px;
}
@media (max-width: 900px) {
  .tah-return-prep-grid { grid-template-columns: 1fr; }
  .tah-return-prep-form,
  .tah-return-prep-check { grid-template-columns:auto 1fr; }
  .tah-return-prep-form .tah-badge,
  .tah-return-prep-check .tah-badge { grid-column:2; justify-self:start; }
}


/* v153.7 filing route engine */

.tah-filing-route-grid {
  display:grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap:16px;
  margin-top:16px;
}
.tah-filing-route-metrics { margin-top:16px; }
.tah-filing-route-reasons,
.tah-filing-route-blockers,
.tah-filing-route-pack {
  display:grid;
  gap:12px;
  margin-top:14px;
}
.tah-filing-route-reason,
.tah-filing-route-pack-item,
.tah-filing-route-check {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
}
.tah-filing-route-check input[type="checkbox"] {
  margin-top:3px;
  flex:0 0 auto;
}
.tah-filing-route-pack-item { justify-content:space-between; }
.tah-filing-route-pack-item .k { font-size:0.86rem; color:var(--muted); }
.tah-filing-route-pack-item .v { font-weight:700; color:var(--text); }
.tah-filing-route-chip-row {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.tah-filing-route-chip {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  font-size:0.88rem;
}
.tah-filing-route-chip strong { font-size:0.9rem; }
.tah-filing-route-note-box {
  margin-top:16px;
  padding:14px 16px;
  border-radius:16px;
  background:var(--primary-soft);
}
@media (max-width: 980px) {
  .tah-filing-route-grid {
    grid-template-columns:1fr;
  }
}


.tah-route-summary-grid .tah-mini-metric .value {
  font-size: 1.6rem;
}

.tah-route-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 1fr);
  gap: 18px;
}

.tah-route-inline-metric {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.tah-route-checklist {
  display: grid;
  gap: 12px;
}

.tah-route-check-item {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px 16px;
}

.tah-route-form-chip {
  text-decoration: none;
}

.tah-route-form-stack {
  display: grid;
  gap: 10px;
}

.tah-route-form-row {
  display: block;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fff;
  padding: 12px 14px;
  color: inherit;
  text-decoration: none;
}

.tah-route-form-row strong {
  display: block;
  margin-bottom: 4px;
}

.tah-route-form-row span {
  display: block;
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.4;
}

@media (max-width: 960px) {
  .tah-route-grid {
    grid-template-columns: 1fr;
  }
}


/* v153.8 taxes cockpit */
.tah-dashboard-shell .tah-home-shell,
.tah-dashboard-shell .tah-quarter-shell { display:none; }
.tah-dashboard-shell[data-active-view="home"] .tah-home-shell { display:block; }
.tah-dashboard-shell[data-active-view="quarter"] .tah-quarter-shell,
.tah-dashboard-shell[data-active-view="taxes"] .tah-quarter-shell { display:block; }
.tah-dashboard-shell[data-active-view="quarter"] .tah-quarter-shell > .tah-card,
.tah-dashboard-shell[data-active-view="taxes"] .tah-quarter-shell > .tah-card { margin-bottom:18px; }
.tah-dashboard-shell[data-active-view="quarter"] .tah-view#view-quarter,
.tah-dashboard-shell[data-active-view="taxes"] .tah-view#view-taxes { margin-top:18px; }
.tah-taxes-cockpit { scroll-margin-top: 96px; }
.tah-taxes-cockpit-metrics { margin-top: 16px; }
.tah-value-sm { font-size: 1.9rem; line-height: 1.1; }
.tah-soft-callout--compact { padding: 18px 20px; }
.tah-taxes-step-rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.tah-taxes-step-link {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:18px;
  text-decoration:none;
  color:var(--text);
  background:#fff;
  min-height:78px;
}
.tah-taxes-step-link:hover { border-color: var(--primary); box-shadow: 0 8px 20px rgba(37,99,235,.08); }
.tah-taxes-step-num {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: var(--primary-soft);
  color: var(--primary);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
}
.tah-taxes-step-copy { display:flex; flex-direction:column; gap:4px; }
.tah-taxes-step-copy small { color: var(--muted); line-height:1.35; }
.tah-step-ready { background: #f0fdf4; border-color: #bbf7d0; }
.tah-step-review { background: #fff7ed; border-color: #fed7aa; }
.tah-step-open { background: #eff6ff; border-color: #bfdbfe; }
@media (max-width: 960px) {
  .tah-taxes-step-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .tah-taxes-step-rail { grid-template-columns: 1fr; }
}


/* v153.8 Taxes workspace cockpit */
.tah-dashboard-home-surface { display:block; }
#taxhackai-app[data-dashboard-view="taxes"] .tah-dashboard-home-surface { display:none; }
#taxhackai-app[data-dashboard-view="quarter"] .tah-dashboard-home-surface { display:none; }
.tah-taxes-cockpit-shell { margin-bottom:18px; }
#taxhackai-app:not([data-dashboard-view="taxes"]) .tah-taxes-cockpit-shell { display:none; }
.tah-taxes-cockpit-grid {
  display:grid;
  gap:16px;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:14px;
}
.tah-taxes-cockpit-grid .tah-card { padding:18px; }
.tah-taxes-cockpit-grid .label { font-size:.92rem; color:var(--muted); margin-bottom:8px; }
.tah-taxes-cockpit-grid .value { font-size:2rem; font-weight:800; line-height:1.05; }
.tah-taxes-cockpit-grid .sub { margin-top:8px; color:var(--muted); font-size:.95rem; }
.tah-taxes-cockpit-alert { margin-top:14px; }
.tah-taxes-step-rail {
  display:grid;
  gap:14px;
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin-top:16px;
}
.tah-taxes-step-card {
  display:block;
  padding:16px;
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
  text-decoration:none;
  color:inherit;
  box-shadow:var(--shadow);
}
.tah-taxes-step-card:hover { border-color:var(--primary); transform:translateY(-1px); }
.tah-taxes-step-card .tah-step-top { display:flex; gap:8px; align-items:center; justify-content:space-between; margin-bottom:10px; }
.tah-taxes-step-card .tah-step-num { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:999px; background:var(--primary-soft); color:var(--primary); font-weight:700; font-size:.9rem; }
.tah-taxes-step-card .tah-step-title { font-size:1rem; font-weight:800; line-height:1.2; }
.tah-taxes-step-card.safe { border-color:#bbf7d0; background:#f0fdf4; }
.tah-taxes-step-card.gold { border-color:#fde68a; background:#fffbeb; }
.tah-taxes-step-card.warn { border-color:#fecaca; background:#fef2f2; }
.tah-taxes-cockpit-actions { margin-top:14px; }
.tah-taxes-cockpit-actions .tah-button-like { margin-right:10px; margin-bottom:8px; }
@media (max-width: 980px) {
  .tah-taxes-cockpit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tah-taxes-step-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .tah-taxes-cockpit-grid,
  .tah-taxes-step-rail { grid-template-columns:1fr; }
}


/* v153.8 Taxes workspace cleanup + filing cockpit */
.tah-dashboard-mode-quarter .tah-dashboard-legacy-stack {
  display: none;
}
.tah-tax-cockpit {
  position: relative;
  overflow: hidden;
}
.tah-tax-cockpit::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(37,99,235,0.04), rgba(245,158,11,0.05));
  pointer-events: none;
}
.tah-tax-cockpit > * {
  position: relative;
  z-index: 1;
}
.tah-tax-cockpit__header {
  align-items: flex-start;
  gap: 16px;
}
.tah-tax-cockpit__title {
  margin: 8px 0 6px;
}
.tah-tax-cockpit__next {
  min-width: 220px;
  display: grid;
  gap: 8px;
  justify-items: end;
}
.tah-tax-step-rail {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}
.tah-tax-step-pill {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.tah-tax-step-pill:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow);
}
.tah-tax-step-pill--done {
  border-color: rgba(22,163,74,.25);
  background: linear-gradient(180deg, rgba(220,252,231,.85), rgba(255,255,255,.98));
}
.tah-tax-step-pill--in-progress {
  border-color: rgba(245,158,11,.35);
  background: linear-gradient(180deg, rgba(254,243,199,.7), rgba(255,255,255,.98));
}
.tah-tax-step-pill--attention {
  border-color: rgba(220,38,38,.2);
  background: linear-gradient(180deg, rgba(254,226,226,.65), rgba(255,255,255,.98));
}
.tah-tax-step-pill__num {
  font-size: .78rem;
  font-weight: 800;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .03em;
}
.tah-tax-step-pill__title {
  font-weight: 800;
  line-height: 1.2;
}
.tah-tax-step-pill__sub {
  font-size: .88rem;
  color: var(--muted);
}
.tah-tax-step-shell {
  margin: 18px 0;
  border: 1px solid var(--border);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--shadow);
  overflow: hidden;
}
.tah-tax-step-shell > summary {
  list-style: none;
  display: grid;
  grid-template-columns: minmax(0, 1.75fr) minmax(220px, 1fr);
  gap: 18px;
  align-items: start;
  padding: 20px 22px;
  cursor: pointer;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,247,251,.98));
}
.tah-tax-step-shell > summary::-webkit-details-marker {
  display: none;
}
.tah-tax-step-shell[open] > summary {
  border-bottom: 1px solid var(--border);
}
.tah-tax-step-shell__intro {
  display: grid;
  gap: 8px;
}
.tah-tax-step-shell__intro .tah-section-title {
  margin: 0;
}
.tah-tax-step-shell__meta {
  display: grid;
  gap: 8px;
  justify-items: end;
  text-align: right;
}
.tah-tax-step-shell__body {
  padding: 0 0 8px;
}
.tah-tax-step-shell__body > *:first-child {
  margin-top: 0;
}
.tah-tax-step-shell__body .tah-card:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.tah-tax-step-shell--done > summary {
  background: linear-gradient(180deg, rgba(220,252,231,.38), rgba(255,255,255,.98));
}
.tah-tax-step-shell--in-progress > summary {
  background: linear-gradient(180deg, rgba(254,243,199,.38), rgba(255,255,255,.98));
}
.tah-tax-step-shell--attention > summary {
  background: linear-gradient(180deg, rgba(254,226,226,.35), rgba(255,255,255,.98));
}
.tah-dashboard-mode-quarter #taxes-cockpit,
.tah-dashboard-mode-quarter .tah-tax-step-shell {
  scroll-margin-top: 100px;
}
@media (max-width: 1100px) {
  .tah-tax-step-rail {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .tah-tax-step-shell > summary {
    grid-template-columns: 1fr;
  }
  .tah-tax-step-shell__meta,
  .tah-tax-cockpit__next {
    justify-items: start;
    text-align: left;
  }
}
@media (max-width: 800px) {
  .tah-tax-step-rail {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .tah-tax-step-rail {
    grid-template-columns: 1fr;
  }
  .tah-tax-cockpit__header {
    flex-direction: column;
  }
  .tah-tax-cockpit__next {
    min-width: 0;
    width: 100%;
  }
}


/* v153.8 filing cockpit */
.tah-filing-cockpit {
  margin-bottom: 18px;
}

.tah-filing-cockpit-topgrid {
  display: grid;
  grid-template-columns: minmax(0, 2.2fr) minmax(280px, 1fr);
  gap: 16px;
}

.tah-filing-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.tah-cockpit-next-action {
  border: 1px solid var(--border);
  border-radius: 22px;
  padding: 18px 18px 16px;
  background: linear-gradient(180deg, rgba(37,99,235,0.05), rgba(255,255,255,0.92));
}

.tah-cockpit-next-action h3 {
  margin: 10px 0 8px;
  font-size: 1.1rem;
}

.tah-cockpit-next-action p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.tah-filing-number-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tah-cockpit-step-rail {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.tah-cockpit-step-chip {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 14px 12px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  color: var(--text);
  text-decoration: none;
  min-height: 120px;
}

.tah-cockpit-step-chip:hover {
  border-color: rgba(37,99,235,0.35);
  box-shadow: 0 8px 24px rgba(15,23,42,0.05);
}

.tah-cockpit-step-chip .eyebrow {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.tah-cockpit-step-chip strong {
  font-size: 1rem;
  line-height: 1.35;
}

.tah-cockpit-step-chip .meta {
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

.tah-cockpit-step-wrap {
  margin-top: 18px;
  border: 1px solid var(--border);
  border-radius: 22px;
  background: #fff;
  overflow: hidden;
}

.tah-cockpit-step-wrap > summary {
  list-style: none;
  cursor: pointer;
  padding: 18px 20px;
}

.tah-cockpit-step-wrap > summary::-webkit-details-marker {
  display: none;
}

.tah-cockpit-step-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.tah-cockpit-step-head h3 {
  margin: 4px 0 6px;
  font-size: 1.28rem;
}

.tah-cockpit-step-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.tah-cockpit-step-state {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-end;
  text-align: right;
  min-width: 170px;
}

.tah-cockpit-step-state .meta {
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.4;
}

.tah-cockpit-step-body {
  border-top: 1px solid var(--border);
  padding: 20px;
  background: rgba(248,250,252,0.55);
}

.tah-cockpit-step-body > .tah-card:first-child,
.tah-cockpit-step-body > .tah-books-workspace > .tah-card:first-child {
  margin-top: 0;
}

.tah-cockpit-step-body .tah-card,
.tah-cockpit-step-body .tah-case-panel {
  box-shadow: none;
}

.tah-dashboard-flow-gate {
  margin-bottom: 18px;
}

@media (max-width: 1080px) {
  .tah-filing-cockpit-topgrid,
  .tah-filing-summary-grid,
  .tah-cockpit-step-rail,
  .tah-filing-number-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 820px) {
  .tah-filing-cockpit-topgrid,
  .tah-filing-summary-grid,
  .tah-cockpit-step-rail,
  .tah-filing-number-grid {
    grid-template-columns: 1fr;
  }

  .tah-cockpit-step-head {
    flex-direction: column;
  }

  .tah-cockpit-step-state {
    align-items: flex-start;
    text-align: left;
    min-width: 0;
  }
}


/* v153.8 taxes workspace cleanup */
.taxhackai-taxes-workspace-view .tah-quarter-shell {
  display: block;
}

.taxhackai-taxes-workspace-view .tah-home-shell {
  margin-bottom: 18px;
}

@media (min-width: 1080px) {
  .tah-cockpit-step-rail {
    position: sticky;
    top: 86px;
    z-index: 3;
    background: var(--bg);
    padding-top: 4px;
  }
}

.tah-filing-cockpit .tah-button-row .tah-btn-secondary {
  white-space: nowrap;
}

.tah-cockpit-next-action .tah-button-row {
  flex-wrap: wrap;
}

.tah-quarter-shell > .tah-topbar,
.tah-quarter-shell > .tah-soft-callout,
.tah-quarter-shell > .tah-status-strip,
.tah-quarter-shell > .tah-plan-card {
  display: none;
}


/* v153.8.1 workflow clarity */
.tah-tax-focus-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0 14px}
.tah-tax-focus-card{border:1px solid var(--border);border-radius:18px;padding:16px;background:#fff}
.tah-tax-focus-card .label{font-size:.82rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}
.tah-tax-focus-card .value{margin-top:8px;font-size:1.5rem;font-weight:800;line-height:1.15;color:var(--text)}
.tah-tax-focus-card .sub{margin-top:8px;font-size:.95rem;color:var(--muted)}
.tah-tax-focus-card--action{background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%)}
.tah-tax-focus-card--action .tah-button-like{margin-top:10px}
.tah-year-context-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#eef2ff;color:#3730a3;padding:8px 12px;font-weight:700;font-size:.92rem;margin-top:12px}
.tah-year-context-note{margin-top:6px;color:var(--muted);font-size:.95rem}
.tah-route-next-callout{margin-top:14px;border:1px solid var(--border);border-radius:16px;padding:14px;background:#f8fafc}
.tah-route-next-callout .tah-button-like{margin-top:10px}
.tah-subtle-action-note{margin-top:6px;font-size:.95rem;color:var(--muted)}
@media (max-width: 900px){.tah-tax-focus-strip{grid-template-columns:1fr}}


.tah-state-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:#fff;font-weight:600;font-size:14px;}


.tah-collab-workspace {
  margin-top: 18px;
}
.tah-collab-summary-grid,
.tah-collab-top-grid,
.tah-collab-form-grid,
.tah-collab-text-grid,
.tah-collab-portal-columns,
.tah-collab-portal-metrics {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.tah-collab-subcard {
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: none;
  background: #fff;
}
.tah-collab-share-box,
.tah-collab-portal-preview,
.tah-collab-note-box {
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #f8fafc;
}
.tah-collab-note-box {
  margin-top: 12px;
  white-space: pre-wrap;
}
.tah-collab-textarea {
  min-height: 120px;
}
.tah-collab-thread-wrap {
  margin-top: 18px;
}
.tah-collab-thread {
  display: grid;
  gap: 12px;
}
.tah-collab-thread-item {
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 14px;
  background: #fff;
}
.tah-collab-thread-meta {
  color: var(--muted);
  font-size: 0.85rem;
  margin-bottom: 6px;
}
.tah-collab-portal-page {
  margin-top: 28px;
  margin-bottom: 36px;
}
.tah-collab-portal-top,
.tah-collab-portal-columns {
  display: grid;
  gap: 16px;
}
.tah-collab-portal-form .tah-text-input {
  width: 100%;
}

.tah-software-handoff-workspace .tah-kpi-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.tah-software-handoff-workspace .tah-export-include-grid .tah-books-chip-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}


.tah-approval-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.9fr);
  gap: 16px;
}

.tah-approval-log {
  display: grid;
  gap: 10px;
}

.tah-approval-log-row {
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 14px;
  background: #fff;
}

.tah-approval-log-row strong {
  display: block;
  margin-bottom: 4px;
}

.tah-approval-log-row span {
  display: block;
  color: var(--muted);
  font-size: 0.88rem;
}

.tah-approval-log-row p {
  margin: 8px 0 0;
  color: var(--text);
}

.tah-approval-checklist {
  display: grid;
  gap: 12px;
}

.tah-approval-summary-grid .value {
  font-size: 1.3rem;
}

@media (max-width: 920px) {
  .tah-approval-grid {
    grid-template-columns: 1fr;
  }
}


/* v154.3 submission center */
.tah-books-submission-card .tah-grid-3,
.tah-books-submission-card .tah-grid-2 {
  display:grid;
  gap:14px;
}
.tah-books-submission-card .tah-grid-3 { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.tah-books-submission-card .tah-grid-2 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.tah-books-submission-card .tah-stat {
  border:1px solid var(--border);
  background:#f8fafc;
  border-radius:14px;
  padding:12px 14px;
}
.tah-books-submission-card .tah-stat .label {
  display:block;
  font-size:.78rem;
  color:var(--muted);
  margin-bottom:4px;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.tah-books-submission-card .tah-stat .value {
  display:block;
  font-weight:700;
  font-size:1.05rem;
  color:var(--text);
}
.tah-books-submission-card .tah-callout {
  border:1px solid var(--border);
  background:var(--primary-soft);
  border-radius:14px;
  padding:14px 16px;
}
.tah-books-submission-card .tah-callout ul { margin:10px 0 0 18px; }
.tah-books-submission-card .tah-pill-row { display:flex; flex-wrap:wrap; gap:8px; }
.tah-books-submission-card .tah-pill {
  display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:999px;
  border:1px solid var(--border); background:#fff; font-size:.82rem; color:var(--text);
}


/* v154.4 Post-filing resolution */
.tah-post-filing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:14px;}
.tah-post-filing-note{margin-top:10px;font-size:.95rem;color:var(--muted);}
.tah-post-filing-list{margin:12px 0 0;padding-left:18px;}
.tah-post-filing-list li{margin:6px 0;}
.tah-post-filing-actions .tah-button-like{margin-right:8px;margin-top:8px;}


/* v154.5 library UX polish */
.tah-click-card { cursor: pointer; }
.tah-click-card:focus-visible {
  outline: 3px solid var(--primary-soft);
  outline-offset: 3px;
}
.tah-card-link-note {
  margin-top: 10px;
  color: var(--muted);
  font-size: 0.92rem;
}
.tah-hub-intro-actions {
  margin-top: 16px;
}
.tah-start-here-cta-note {
  margin-top: 10px;
  color: var(--muted);
  font-size: 0.92rem;
}
.tah-archive-head-actions {
  align-items: center;
}
.tah-archive-head-actions .tah-button-like {
  white-space: nowrap;
}


.tah-activation-card .tah-progress,
.tah-public-home-activation .tah-progress {
  width: 100%;
  height: 10px;
  border-radius: 999px;
  background: var(--border);
  overflow: hidden;
}
.tah-activation-card .tah-progress span,
.tah-public-home-activation .tah-progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--primary), #60a5fa);
  border-radius: inherit;
}
.tah-activation-step.is-done {
  border-color: rgba(22, 163, 74, 0.25);
  box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.08) inset;
}
.tah-guest-save-prompt {
  margin-bottom: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}
.tah-public-home-activation .tah-archive-card,
.tah-activation-card .tah-archive-card {
  min-height: 100%;
}


/* v154.7 Ops layer */
.tah-taxes-ops-strip {
  margin: 18px 0;
  border: 1px solid var(--border);
  background: linear-gradient(180deg, #fff, #f8fbff);
}
#taxhackai-app:not([data-dashboard-view="taxes"]) .tah-taxes-ops-strip {
  display: none;
}
.tah-ops-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.tah-ops-metric {
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  background: #fff;
}
.tah-ops-metric .label {
  color: var(--muted);
  font-size: 0.9rem;
  margin-bottom: 6px;
}
.tah-ops-metric .value {
  font-size: 1.35rem;
  font-weight: 700;
}
.tah-ops-note {
  margin-top: 10px;
  color: var(--muted);
  font-size: 0.95rem;
}
.tah-toast-stack {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: none;
}
.tah-toast {
  min-width: 220px;
  max-width: 360px;
  padding: 12px 14px;
  border-radius: 14px;
  box-shadow: var(--shadow);
  border: 1px solid var(--border);
  background: #fff;
  color: var(--text);
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .22s ease, transform .22s ease;
}
.tah-toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.tah-toast--success {
  background: var(--success-soft);
  border-color: #bbf7d0;
}
.tah-toast--warn {
  background: var(--warning-soft);
  border-color: #fecaca;
}
.tah-toast--info {
  background: var(--primary-soft);
  border-color: #bfdbfe;
}
.tah-ops-admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin: 18px 0;
}
.tah-ops-admin-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px;
}
.tah-ops-admin-card .value {
  font-size: 1.6rem;
  font-weight: 700;
}
.tah-ops-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
  margin-top: 14px;
}
.tah-ops-table th,
.tah-ops-table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
  font-size: 0.95rem;
}
.tah-ops-table th {
  background: #f8fafc;
}
.tah-ops-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
  margin-top: 14px;
}
.tah-autosave-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.tah-autosave-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--success);
  box-shadow: 0 0 0 4px rgba(22, 163, 74, 0.12);
}

/* v154.8 Trust Launch + Readiness Workspace */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.45);
  outline-offset: 3px;
}
/* v154.9 dashboard view hotfix: these are really home-surface panels.
   Hide them whenever the user is in Timeline, Taxes, 1099, or Review so the
   fixed bottom tabs visibly switch the workspace instead of leaving setup
   cards above the selected view. */
#taxhackai-app:not([data-dashboard-view="home"]) .tah-hide-in-taxes {
  display: none !important;
}

/* The active dashboard panel is now also controlled by data-dashboard-view.
   This prevents initial-load and cached-class mismatches where the bottom tab
   changes state but the visible panel does not change. */
#taxhackai-app:not([data-dashboard-view="home"]) #view-home,
#taxhackai-app:not([data-dashboard-view="daily"]) #view-daily,
#taxhackai-app:not([data-dashboard-view="taxes"]) #view-taxes,
#taxhackai-app:not([data-dashboard-view="1099"]) #view-1099,
#taxhackai-app:not([data-dashboard-view="review"]) #view-review {
  display: none !important;
}
#taxhackai-app[data-dashboard-view="home"] #view-home,
#taxhackai-app[data-dashboard-view="daily"] #view-daily,
#taxhackai-app[data-dashboard-view="taxes"] #view-taxes,
#taxhackai-app[data-dashboard-view="1099"] #view-1099,
#taxhackai-app[data-dashboard-view="review"] #view-review {
  display: block !important;
}
.tah-v1548-home-readiness,
.tah-v1548-taxes-launch {
  margin: 18px 0;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border: 1px solid rgba(37, 99, 235, 0.12);
}
.tah-v1548-score-panel {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.tah-v1548-score-ring {
  min-width: 112px;
  min-height: 112px;
  border-radius: 999px;
  display: grid;
  place-content: center;
  text-align: center;
  background: var(--primary-soft);
  color: var(--primary);
  border: 1px solid rgba(37,99,235,.18);
}
.tah-v1548-score-ring strong {
  display: block;
  font-size: 2.1rem;
  line-height: 1;
  font-weight: 900;
}
.tah-v1548-score-ring.safe { background: #dcfce7; color: #166534; border-color: rgba(22,101,52,.18); }
.tah-v1548-score-ring.gold { background: #fef3c7; color: #92400e; border-color: rgba(146,64,14,.16); }
.tah-v1548-score-ring.warn { background: #fee2e2; color: #991b1b; border-color: rgba(153,27,27,.16); }
.tah-v1548-metric-grid,
.tah-v1548-workspace-grid {
  display: grid;
  gap: 14px;
}
.tah-v1548-metric-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.tah-v1548-metric-grid > div,
.tah-v1548-panel {
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
}
.tah-v1548-metric-grid span {
  display: block;
  color: var(--muted);
  font-size: .88rem;
  margin-bottom: 6px;
}
.tah-v1548-metric-grid strong {
  font-size: 1.08rem;
  line-height: 1.25;
}
.tah-v1548-missing-list {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: #fffbeb;
  color: #92400e;
  border: 1px solid #fde68a;
}
.tah-v1548-trust-strip {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  color: var(--muted);
  font-size: .9rem;
}
.tah-v1548-trust-strip span:not(.tah-badge),
.tah-v1548-trust-strip a {
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 7px 10px;
  background: #fff;
  color: inherit;
  text-decoration: none;
}
.tah-v1548-trust-strip a:hover {
  color: var(--primary);
  border-color: rgba(37,99,235,.28);
}
.tah-v1548-workspace-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}
.tah-v1548-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}
.tah-v1548-panel-head h3 {
  margin: 0;
  font-size: 1.05rem;
}
.tah-v1548-form {
  display: grid;
  gap: 12px;
}
.tah-v1548-form label {
  display: grid;
  gap: 7px;
  font-weight: 700;
  color: var(--text);
}
.tah-v1548-form input[type="text"],
.tah-v1548-form select,
.tah-v1548-form textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 11px 12px;
  font: inherit;
  background: #fff;
}
.tah-v1548-form-row--split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.tah-v1548-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.tah-v1548-check-card {
  display: flex !important;
  gap: 9px !important;
  align-items: flex-start;
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #f8fafc;
  font-weight: 600 !important;
  color: var(--text);
}
.tah-v1548-check-card input {
  margin-top: 3px;
}
.tah-v1548-result {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid var(--border);
  background: #f8fafc;
}
.tah-v1548-result span {
  color: var(--muted);
  font-size: .92rem;
  line-height: 1.4;
}
.tah-v1548-result.safe { background: #f0fdf4; border-color: #bbf7d0; }
.tah-v1548-result.gold { background: #fffbeb; border-color: #fde68a; }
.tah-v1548-result.warn { background: #fef2f2; border-color: #fecaca; }
.tah-v1548-save-status {
  align-self: center;
  color: var(--muted);
  font-size: .92rem;
  font-weight: 700;
}
.tah-v1548-save-status.is-safe { color: #166534; }
.tah-v1548-save-status.is-warn { color: #991b1b; }
.tah-v1548-save-status.is-gold { color: #92400e; }
.tah-v1548-review-form {
  display: grid;
  gap: 12px;
}
@media (max-width: 920px) {
  .tah-v1548-score-panel { align-items: flex-start; }
  .tah-v1548-metric-grid,
  .tah-v1548-workspace-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .tah-v1548-score-panel { flex-direction: column; }
  .tah-v1548-form-row--split,
  .tah-v1548-check-grid { grid-template-columns: 1fr; }
  .tah-v1548-score-ring { min-width: 96px; min-height: 96px; }
}
