.page-wrap, .workspace, .auth-wrap {
  overflow-wrap: anywhere;
}

.nav-toggle { display: none; }
.package-deal-actions, .package-email-field, .package-privacy-options { display: contents; }
.package-email-field > span { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

@media (max-width: 1100px) {
  .site-header {
    height: auto;
    min-height: 78px;
    gap: 20px;
    padding: 16px 24px;
  }

  .brand { flex-shrink: 0; }
  .main-nav { min-width: 0; flex: 1; flex-wrap: wrap; justify-content: flex-end; gap: 12px 20px; }
  .main-nav > a { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
  .workspace { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .form-column, .results-column { min-width: 0; }
  .results-column { width: 100%; padding-top: 0; }
  .field-label-row { position: relative; }
  .help-tip { position: static; }
  .help-tooltip { left: 0; right: auto; width: 100%; max-width: 300px; }
  .saved-result-layout { grid-template-columns: minmax(0, 1fr); }
  .page-heading { flex-wrap: wrap; }
  .page-heading > div { min-width: 0; }
  .page-heading .property-summary-card { flex-basis: 100%; }
  .deal-share-bar { flex-wrap: wrap; gap: 12px; }
  .deal-share-bar > div { flex-basis: 100%; }
  .deal-share-bar input[type="email"] { flex: 1 1 240px; min-width: 0; }

  .package-deal-list .package-deal-row {
    grid-template-columns: 24px repeat(5, minmax(0, 1fr));
    gap: 10px;
    padding: 16px;
    overflow: visible;
  }

  .package-deal-list .deal-row-main {
    grid-column: 2 / -1;
    grid-template-columns: 42px minmax(0, 1fr) 100px;
    min-width: 0;
    min-height: 64px;
    gap: 12px;
  }

  .package-deal-list .deal-row-rent { width: auto; }
  .package-deal-list .deal-row-arrow { display: none; }
  .package-deal-list .package-edit-slot { grid-column: 2; }
  .package-action-slot, .package-deal-list .deal-row-publish-form { width: auto; }
  .package-action-slot { justify-content: flex-start; }
  .package-action-slot .deal-row-download { white-space: normal; }
}

@media (max-width: 760px) {
  .site-header { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; min-height: 72px; padding: 12px 16px; }
  .nav-toggle:not([hidden]) { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 12px; border: 1px solid #dce5dc; border-radius: 6px; background: #f5f7f1; color: var(--green); font: 700 13px var(--font); cursor: pointer; }
  .nav-toggle:focus-visible, .main-nav a:focus-visible, .nav-link:focus-visible { outline: 3px solid #7da68a; outline-offset: 3px; }
  .nav-toggle-icon { display: grid; gap: 4px; width: 18px; }
  .nav-toggle-icon span { display: block; height: 2px; background: currentColor; }
  .nav-toggle[aria-expanded="true"] .nav-toggle-icon span:first-child { transform: translateY(6px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(2) { opacity: 0; }
  .nav-toggle[aria-expanded="true"] .nav-toggle-icon span:last-child { transform: translateY(-6px) rotate(-45deg); }
  .nav-toggle .message-badge { margin-left: 0; }
  .main-nav { display: grid; flex: 0 0 100%; grid-template-columns: minmax(0, 1fr); width: 100%; gap: 8px; font-size: 13px; }
  .site-header.nav-ready .main-nav:not(.is-open) { display: none; }
  .main-nav > a, .main-nav > a:first-child, .main-nav .nav-user { display: flex; align-items: center; min-height: 44px; padding: 8px 10px; border-radius: 6px; background: #f5f7f1; }
  .main-nav .nav-cta { background: var(--green); color: #fff; }
  .nav-form { display: flex; }
  .nav-link { width: 100%; min-height: 44px; padding: 8px 10px; text-align: left; border-radius: 6px; background: #f5f7f1; font-size: 13px; }
  .main-nav a, .nav-link { overflow-wrap: anywhere; }
  .hero { min-height: 0; padding: 36px 16px; }
  .hero-copy { width: 100%; }
  .hero h1 { font-size: clamp(32px, 8vw, 43px); }
  .hero-art { display: none; }
  .workspace { padding: 28px 16px 44px; gap: 24px; }
  .page-wrap { padding: 30px 16px 48px; }
  .page-heading { align-items: stretch; flex-direction: column; gap: 16px; }
  .page-heading h1, .marketplace-detail h1 { font-size: 28px; letter-spacing: -1px; overflow-wrap: anywhere; }
  .page-heading p { line-height: 1.6; }
  .section-heading { align-items: center; gap: 12px; margin-bottom: 20px; }
  .section-heading-actions { flex-shrink: 0; }
  .example-button { display: inline; }
  .button { min-height: 44px; height: auto; padding: 10px 14px; line-height: 1.4; text-align: center; }
  .page-actions, .form-actions, .anonymous-save-actions, .marketplace-owner-actions, .delete-confirm-actions { flex-wrap: wrap; gap: 10px; }
  .page-actions > *, .marketplace-owner-actions > *, .delete-confirm-actions > * { flex: 1 1 160px; min-width: 0; }
  .page-actions form .button, .marketplace-owner-actions form .button { width: 100%; }
  .form-actions > .button, .anonymous-save-actions > .button { flex: 1 1 180px; }
  .field input, .field select, .field textarea, .thread-form textarea, .deal-share-bar input[type="email"] { min-height: 44px; font-size: 16px; }
  .field textarea { min-height: 100px; }
  .field input[type="checkbox"] { min-height: 0; }
  .field label, .field-group-title { font-size: 13px; }
  .field small, .auth-form ul { font-size: 12px; }
  .field-group-summary { padding: 12px; }
  .field-label-row { position: relative; }
  .help-tip { position: static; min-width: 28px; height: 28px; }
  .help-tooltip { left: 0; right: auto; width: 100%; max-width: 300px; font-size: 12px; }
  .auth-wrap { min-height: 0; padding: 28px 16px 40px; }
  .auth-card { padding: 24px; }
  .role-option { min-height: 44px; }
  .results-card, .empty-results, .assumptions-card { padding: 16px; min-width: 0; }
  .metric-grid, .portfolio-summary, .break-even-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .metric, .portfolio-summary > div, .break-even-grid > div { min-width: 0; padding: 12px; }
  .metric > strong, .portfolio-summary strong, .break-even-grid strong { overflow-wrap: anywhere; }
  .metric > span, .metric small, .portfolio-summary span { font-size: 11px; line-height: 1.5; }
  .rate-stress { padding: 12px; min-width: 0; }
  .rate-stress-rates { gap: 6px; }
  .rate-stress-rate-button { flex-direction: column; align-items: flex-start; gap: 8px; min-height: 64px; }
  .rate-stress-rates span { font-size: 11px; }
  .rate-stress-heading p, .rate-stress-note { font-size: 11px; }
  .rate-stress-table-wrap { max-width: 100%; overscroll-behavior-x: contain; }
  .rate-stress-table-wrap:focus-visible { outline: 2px solid var(--green); outline-offset: 2px; }
  .rate-stress-table { min-width: 0; font-size: 12px; }
  .rate-stress-table th:first-child,
  .rate-stress-table thead th:nth-child(n+2) { width: 50%; }
  .rate-stress-table thead th:nth-child(n+2),
  .rate-stress-table tbody td { display: none; }
  .rate-stress-table[data-selected-scenario="lower"] thead th:nth-child(2),
  .rate-stress-table[data-selected-scenario="lower"] tbody td:nth-child(2),
  .rate-stress-table[data-selected-scenario="base"] thead th:nth-child(3),
  .rate-stress-table[data-selected-scenario="base"] tbody td:nth-child(3),
  .rate-stress-table[data-selected-scenario="stress"] thead th:nth-child(4),
  .rate-stress-table[data-selected-scenario="stress"] tbody td:nth-child(4) { display: table-cell; }
  .cashflow { flex-wrap: wrap; gap: 12px; }
  .result-details > div, .assumptions-card > div:not(.eyebrow) { font-size: 12px; }
  .result-details strong, .assumptions-card strong { font-size: 12px; text-align: right; overflow-wrap: anywhere; }
  .property-summary-card { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; margin-bottom: 0; }
  .property-summary-wide { grid-column: 1 / -1; }
  .property-summary-card strong, .marketplace-facts strong { overflow-wrap: anywhere; }
  .marketplace-grid, .marketplace-opportunities { grid-template-columns: minmax(0, 1fr); }
  .marketplace-tabs { display: grid; grid-template-columns: minmax(0, 1fr); overflow: visible; }
  .marketplace-browser .marketplace-tab { justify-content: space-between; min-height: 44px; padding: 10px 12px; white-space: normal; font-size: 13px; }
  .marketplace-filter-panel { padding: 14px; }
  .marketplace-filter-actions { grid-column: 1 / -1; flex-wrap: wrap; gap: 12px; }
  .marketplace-filter-actions > a { display: inline-flex; align-items: center; min-height: 44px; }
  .marketplace-results-heading { align-items: flex-start; flex-wrap: wrap; gap: 8px; }
  .marketplace-opportunity { padding: 16px; }
  .marketplace-opportunity-meta { flex-wrap: wrap; }
  .marketplace-opportunity h3, .marketplace-price, .marketplace-description, .published-deal-unlocked { overflow-wrap: anywhere; }
  .marketplace-opportunity-actions { gap: 10px 16px; padding-top: 12px; }
  .marketplace-opportunity-actions .button { flex-basis: 100%; }
  .marketplace-opportunity-actions > a:not(.button) { display: inline-flex; align-items: center; min-height: 44px; }
  .marketplace-pagination { flex-wrap: wrap; gap: 10px 16px; }
  .marketplace-pagination a { display: inline-flex; align-items: center; min-height: 44px; }
  .marketplace-listing-row { grid-template-columns: minmax(0, 1fr); }
  .marketplace-listing-row > strong, .marketplace-row-actions { grid-column: 1; }
  .marketplace-status-banner, .sold-deal-banner { align-items: flex-start; flex-direction: column; gap: 8px; }
  .deal-share-bar { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 16px; border: 1px solid #dce5dc; border-radius: 10px; }
  .deal-share-bar > * { min-width: 0; }
  .deal-share-bar input[type="email"], .deal-share-bar > .button { width: 100%; }
  .deal-share-bar > div > strong { font-size: 15px; }
  .deal-share-bar > div > small { font-size: 12px; line-height: 1.5; }
  .package-email-field { display: grid; gap: 7px; color: var(--ink); font-size: 12px; font-weight: 700; }
  .package-email-field > span { position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: normal; }
  .package-privacy-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .package-privacy-options .share-privacy { gap: 8px; margin: 0; padding: 8px; border: 1px solid #dce5dc; border-radius: 6px; background: #fff; font-size: 12px; line-height: 1.4; }
  .share-privacy { min-height: 44px; white-space: normal; }
  .deal-row { flex-wrap: wrap; gap: 10px; padding: 16px; }
  .deal-row-name { flex-basis: 100%; min-width: 0; overflow-wrap: anywhere; }
  .deal-row-name strong { font-size: 14px; line-height: 1.5; }
  .deal-row-name small { font-size: 11px; line-height: 1.5; }
  .deal-row-edit, .deal-row-action, .deal-row-download { display: inline-flex; align-items: center; min-height: 44px; height: auto; font-size: 12px; }
  .package-deal-list { display: grid; gap: 12px; border: 0; border-radius: 0; overflow: visible; }
  .package-deal-list .package-deal-row { grid-template-columns: 24px minmax(0, 1fr); gap: 12px; align-items: start; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
  .package-deal-list .deal-select { grid-column: 1; grid-row: 1; margin: 12px 0 0; }
  .package-deal-list .deal-row-main { grid-row: 1; grid-template-columns: 42px minmax(0, 1fr); gap: 10px; }
  .package-deal-list .deal-row-name { grid-column: 2; }
  .package-deal-list .deal-row-rent { grid-column: 2; text-align: left; }
  .package-deal-actions { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding-top: 12px; border-top: 1px solid var(--line); }
  .package-deal-list .package-action-slot { grid-column: auto; width: auto; min-width: 0; }
  .package-deal-list .package-marketplace-slot { grid-column: 1 / -1; order: 1; }
  .package-deal-list .package-action-slot:not(:has(*)) { display: none; }
  .package-deal-actions .package-action-slot > a,
  .package-deal-actions .package-action-slot > button,
  .package-deal-actions .package-action-slot > span,
  .package-deal-actions .deal-row-publish-form > button { display: flex; align-items: center; justify-content: center; gap: 4px; width: 100%; min-height: 44px; margin: 0; padding: 8px; border: 1px solid #dce5dc; border-radius: 6px; background: #f7f9f4; color: var(--green); font-size: 12px; font-weight: 700; line-height: 1.4; text-align: center; white-space: normal; }
  .package-deal-actions .package-delete-slot > a { border-color: #eed8d3; background: #fff8f5; color: #9b3f2e; }
  .package-deal-actions .deal-row-publish-form { display: block; width: 100%; margin: 0; }
  .package-deal-actions .marketplace-status-badge--stc { background: #fff1cc !important; color: #754400 !important; }
  .package-deal-actions .dashboard-owned-status:not(a):not(.marketplace-status-badge--stc) { background: #d92d20; color: #fff; }
  .thread-card { padding: 16px; min-width: 0; }
  .thread-message, .marketplace-thread-details summary, .chat-popup-header { overflow-wrap: anywhere; }
  .thread-message.mine { margin-left: 24px; }
  .chat-popup-header { height: auto; min-height: 70px; gap: 12px; padding: 16px; }
  .chat-close { flex-shrink: 0; }
  .chat-flow { padding: 16px; }
  .chat-flow .thread-message { max-width: 90%; }
  .chat-dialog { max-height: calc(100dvh - 32px); }
  .site-footer { flex-direction: column; gap: 10px; padding: 20px 16px; font-size: 11px; line-height: 1.6; }
  .messages { padding: 0 16px; overflow-wrap: anywhere; }
}

@media (max-width: 420px) {
  .field-grid, .marketplace-filters, .marketplace-facts, .role-options { grid-template-columns: minmax(0, 1fr); }
  .auth-card { padding: 20px; }
  .marketplace-card-metrics { grid-template-columns: minmax(0, 1fr); }
  .section-heading { flex-wrap: wrap; }
}
