@media (max-width: 768px) {
  .user-shell .app-page-header h1 {
    font-size: 1.9rem;
    line-height: 1.15;
  }

  .user-shell .app-content {
    padding-top: 1rem;
    padding-bottom: 1.5rem;
  }

  .user-shell #global-status-toast,
  .user-shell #global-success-toast,
  .user-shell #account-status-toast,
  .user-shell #apply-toast {
    left: 1rem;
    right: 1rem;
    top: 1rem;
    width: auto;
  }

  .user-shell.page-auth .max-w-md,
  .user-shell #verify-modal .max-w-md,
  .user-shell #password-modal .max-w-md,
  .user-shell #delete-account-modal .max-w-md,
  .user-shell #book-modal .max-w-md,
  .user-shell #resched-modal .max-w-md,
  .user-shell #cancel-modal .max-w-md {
    max-width: 100%;
  }

  .user-shell.page-auth .flex.items-center.justify-between.gap-4.text-xs.text-gray-600 {
    flex-direction: column;
    align-items: flex-start;
  }

  .user-shell.page-jobs-index .job-listing-card {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    padding: 1rem;
  }

  .user-shell.page-jobs-index .job-listing-main {
    align-items: flex-start;
  }

  .user-shell.page-jobs-index .job-listing-meta {
    width: 100%;
    text-align: left;
  }

  .user-shell.page-account .profile-main-card,
  .user-shell.page-account .profile-progress-card,
  .user-shell.page-account .profile-matching-width,
  .user-shell.page-account #tab-history .rounded-xl {
    padding: 1rem;
  }

  .user-shell.page-account #account-profile-form {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .user-shell.page-account .account-phone-grid,
  .user-shell.page-account .application-history-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .user-shell.page-account .account-cv-row .cv-name-input {
    width: 100%;
  }

  .user-shell.page-account .account-cv-row .cv-name-text {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
    white-space: normal;
    line-height: 1.45;
  }

  .user-shell.page-account .application-history-card a {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
    white-space: normal;
    line-height: 1.45;
  }

  .user-shell.page-account .account-cv-row > div,
  .user-shell.page-account .account-cv-row form {
    width: 100%;
  }

  .user-shell.page-account .account-cv-row form {
    min-width: 0;
    align-items: flex-start;
  }

  .user-shell.page-account #tab-history .space-y-3 {
    gap: 0.875rem;
  }

  .user-shell.page-account #tab-cv .flex.items-center.justify-between.gap-4 {
    flex-direction: column;
    align-items: stretch;
  }

  .user-shell.page-account .delete-account-btn,
  .user-shell.page-account #account-profile-save,
  .user-shell.page-account #cv-upload-button {
    width: 100%;
  }

  .user-shell.page-jobs-show .job-top-card,
  .user-shell.page-jobs-show .job-deadline-card,
  .user-shell.page-jobs-show .job-description-col > div,
  .user-shell.page-jobs-interview section.rounded-2xl {
    padding: 1rem;
  }

  .user-shell.page-jobs-show .job-guest-actions,
  .user-shell.page-jobs-show .apply-missing-actions,
  .user-shell.page-jobs-show #apply-form .flex.justify-end.gap-2,
  .user-shell.page-jobs-show #quick-apply-modal .quick-apply-footer,
  .user-shell.page-jobs-interview .actions-row,
  .user-shell.page-jobs-interview .interview-note-row {
    flex-direction: column;
    align-items: stretch;
  }

  .user-shell.page-jobs-show .job-guest-actions > *,
  .user-shell.page-jobs-show .apply-missing-actions > *,
  .user-shell.page-jobs-show #apply-form .flex.justify-end.gap-2 > *,
  .user-shell.page-jobs-show #quick-apply-modal .quick-apply-footer > *,
  .user-shell.page-jobs-interview .actions-row > * {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .user-shell.page-jobs-show #quick-apply-modal .quick-apply-dialog,
  .user-shell.page-jobs-show #quick-apply-success-modal .quick-apply-success-dialog,
  .user-shell.page-account .account-apply-success-dialog {
    max-height: 92vh;
    padding: 1rem;
    border-radius: 1rem;
  }

  .user-shell.page-jobs-show .apply-missing-card {
    padding: 1rem;
  }

  .user-shell.page-jobs-interview .calendar-weekdays,
  .user-shell.page-jobs-interview .calendar-grid {
    gap: 0.25rem;
  }

  .user-shell.page-jobs-interview .app-page-header h1 {
    max-width: calc(100% - 7.25rem);
  }

  .user-shell.page-jobs-interview .interview-header-back-link {
    padding: 0.5rem 0.7rem;
    font-size: 0.84rem;
  }

  .user-shell.page-jobs-interview .interview-slot-panel.is-slot-modal-open {
    left: 0.75rem;
    right: 0.75rem;
    max-height: 84vh;
    padding: 1rem;
  }

  .user-shell.page-jobs-interview .interview-slot-panel.is-slot-modal-open .interview-slot-modal-top {
    margin-bottom: 0.25rem;
  }

  .user-shell.page-jobs-interview .interview-booked-summary {
    padding: 1rem;
  }

  .user-shell.page-jobs-interview .interview-booked-summary-content {
    align-items: center;
  }

  .user-shell.page-jobs-interview .interview-booked-summary-date {
    font-size: 1rem;
  }

  .user-shell.page-jobs-interview .interview-booked-summary-time {
    font-size: 0.92rem;
  }

  .user-shell.page-jobs-interview .calendar-cell {
    height: 42px;
    font-size: 13px;
  }

  .user-shell.page-jobs-interview .slot-row {
    flex-wrap: wrap;
    align-items: stretch;
  }

  .user-shell.page-jobs-interview .slot-row > * {
    width: 100%;
  }
}
