@media (max-width: 760px) {
  html[data-phase10-mobile="true"],
  html[data-phase10-mobile="true"] body {
    width: 100%;
    height: 100%;
    min-width: 0;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] body {
    margin: 0;
    overscroll-behavior: none;
  }

  html[data-phase10-mobile="true"] .app-shell {
    width: 100vw;
    height: 100dvh;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] .main-nav,
  html[data-phase10-mobile="true"] .side-pane {
    display: none;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-shell {
    position: relative;
    z-index: 900;
    display: grid;
    grid-column: 1;
    grid-row: 1;
    grid-template-rows: 52px 36px;
    border-bottom: 1px solid #cbd7e3;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, .08);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-row {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 2px 8px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 7px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo {
    width: 26px;
    height: 26px;
    flex: 0 0 26px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-copy {
    min-width: 0;
    display: grid;
    line-height: 1.05;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-copy strong {
    font-size: 13px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-copy small {
    overflow: hidden;
    color: #64748b;
    font-size: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-logout,
  html[data-phase10-mobile="true"] .phase10-mobile-nav button,
  html[data-phase10-mobile="true"] .phase10-mobile-menu button,
  html[data-phase10-mobile="true"] .phase10-mobile-density button,
  html[data-phase10-mobile="true"] .phase10-mobile-day-toolbar button,
  html[data-phase10-mobile="true"] .phase10-mobile-filter-reset,
  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle,
  html[data-phase10-mobile="true"] .phase10-mobile-time-picker button {
    min-height: 32px;
    border: 1px solid #cbd7e3;
    border-radius: 7px;
    color: #172033;
    background: #fff;
    font: inherit;
    cursor: pointer;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-logout {
    min-width: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 0 8px;
    color: #8f1d2c;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-logout .svg-icon {
    width: 15px;
    height: 15px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-nav {
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) 32px;
    gap: 4px;
    padding: 2px 6px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-nav button {
    min-width: 0;
    padding: 0 4px;
    overflow: hidden;
    border-color: transparent;
    font-size: 11px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-nav button.is-active,
  html[data-phase10-mobile="true"] .phase10-mobile-nav button[aria-current="page"],
  html[data-phase10-mobile="true"] .phase10-mobile-nav button[aria-expanded="true"] {
    border-color: #9dbfe3;
    color: #174f82;
    background: #eef6ff;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-nav button:not(.is-active):not([aria-current="page"]):not([aria-expanded="true"]) {
    border-color: #cbd7e3;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu {
    position: absolute;
    z-index: 90;
    top: calc(100% + 4px);
    right: 6px;
    left: 6px;
    max-height: calc(100dvh - 86px);
    overflow-y: auto;
    padding: 8px;
    border: 1px solid #b9c8d8;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .24);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu-group {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    padding: 7px 0;
    border-bottom: 1px solid #e5ebf1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu-group[hidden] {
    display: none !important;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu-group:last-child {
    border-bottom: 0;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu button {
    min-width: 0;
    padding: 4px 8px;
    text-align: left;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-density {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: minmax(72px, 1fr) repeat(4, 32px);
    align-items: center;
    gap: 5px;
    font-size: 12px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-density button {
    padding: 0;
    text-align: center;
  }

  html[data-phase10-mobile="true"] .big-calendar-pane,
  html[data-phase10-mobile="true"] .big-workspace-panel {
    min-width: 0;
    min-height: 0;
    grid-column: 1;
    grid-row: 2;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] .big-calendar-pane > .c-topbar {
    min-height: 42px;
    padding: 4px 6px;
    border-bottom: 1px solid #d7e0e9;
  }

  html[data-phase10-mobile="true"] .big-calendar-pane > .c-topbar > :not(.phase10-mobile-day-toolbar) {
    display: none;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-day-toolbar {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 32px auto;
    gap: 5px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-day-toolbar button {
    min-width: 0;
    padding: 0 7px;
    font-size: 12px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-day-toolbar .svg-icon {
    width: 15px;
    height: 15px;
  }

  html[data-phase10-mobile="true"] #phase10MobileDateInput {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
  }

  html[data-phase10-mobile="true"] .calendar-shell,
  html[data-phase10-mobile="true"] .calendar-stage,
  html[data-phase10-mobile="true"] #calendar {
    min-width: 0;
    min-height: 0;
  }

  html[data-phase10-mobile="true"] #calendar .fc-header-toolbar {
    display: none;
  }

  html[data-phase10-mobile="true"] #calendar .fc-timegrid-slot-label,
  html[data-phase10-mobile="true"] #calendar .fc-col-header-cell-cushion {
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] #calendar .fc-event {
    cursor: pointer;
  }

  html[data-phase10-mobile="true"] #calendar .fc-event.phase10-result-highlight {
    outline: 3px solid #0a6cff;
    outline-offset: 2px;
    animation: phase10-result-pulse 900ms ease-in-out 2;
  }

  @keyframes phase10-result-pulse {
    50% { outline-width: 5px; }
  }

  html[data-phase10-mobile="true"] .w-topbar {
    min-height: 44px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 6px;
    padding: 5px 8px;
  }

  html[data-phase10-mobile="true"] #mobileFilterToggleButton {
    width: auto;
    min-width: 32px;
    max-width: 132px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 0 8px;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] #mobileFilterToggleButton .svg-icon {
    width: 15px;
    min-width: 15px;
    height: 15px;
  }

  html[data-phase10-mobile="true"] .w-topbar .pane-title h2 {
    font-size: 15px;
  }

  html[data-phase10-mobile="true"] .w-topbar .pane-title p {
    max-width: 46vw;
    overflow: hidden;
    font-size: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .mobile-filter-toggle,
  html[data-phase10-mobile="true"] .phase10-mobile-filter-reset {
    min-height: 32px;
    padding: 0 8px;
  }

  html[data-phase10-mobile="true"] .workspace-panel,
  html[data-phase10-mobile="true"] .main-list {
    min-width: 0;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
  }

  html[data-phase10-mobile="true"] .main-list {
    padding: 8px;
  }

  html[data-phase10-mobile="true"] .main-list button,
  html[data-phase10-mobile="true"] .main-list [role="button"] {
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] .main-list button.danger-button,
  html[data-phase10-mobile="true"] .main-list [role="button"][aria-label*="Удалить"] {
    min-height: 40px;
  }

  html[data-phase10-mobile="true"] #allRequestList.main-list > .filter-bar,
  html[data-phase10-mobile="true"] #allAppointmentList.main-list > .filter-bar,
  html[data-phase10-mobile="true"] #clientList.main-list .work-table-filters,
  html[data-phase10-mobile="true"] #auditList.main-list .audit-table-filters {
    display: none !important;
  }

  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] #allRequestList.main-list > .filter-bar,
  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] #allAppointmentList.main-list > .filter-bar,
  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] #clientList.main-list .work-table-filters,
  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] #auditList.main-list .audit-table-filters {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
    padding: 8px;
    margin: 0 0 8px;
    border: 1px solid #d4dde7;
    border-radius: 9px;
    background: #f8fafc;
  }

  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] .main-list .filter-bar > *,
  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] .main-list .work-table-filters > *,
  html[data-phase10-mobile="true"][data-mobile-filters-open="true"] .main-list .audit-table-filters > * {
    width: 100%;
    min-width: 0;
    grid-column: auto;
  }

  html[data-phase10-mobile="true"] .appointment-list-grid,
  html[data-phase10-mobile="true"] .request-list-grid,
  html[data-phase10-mobile="true"] .main-list .card-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-phase10-mobile="true"] #allRequestList[data-request-layout],
  html[data-phase10-mobile="true"] #allAppointmentList[data-appointment-layout],
  html[data-phase10-mobile="true"] #clientList[data-client-layout] {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-phase10-mobile="true"] [data-request-layout-toggle],
  html[data-phase10-mobile="true"] [data-appointment-layout-toggle] {
    display: none;
  }

  html[data-phase10-mobile="true"] .appointment-card,
  html[data-phase10-mobile="true"] .request-card {
    min-width: 0;
    margin-bottom: 7px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card.is-service,
  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card.is-block {
    height: auto;
    min-height: 102px;
    max-height: none;
    box-sizing: border-box;
    grid-template-rows: auto minmax(56px, auto);
    gap: 0;
    padding: 0 !important;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card-head {
    min-height: 40px;
    gap: 7px;
    padding: 3px 7px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-time-box {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card-title strong {
    font-size: 14px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card-body {
    grid-template-columns: minmax(0, 1fr) 72px;
    gap: 5px;
    padding: 1px 7px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-manager-ticket {
    width: 72px;
    height: 26px;
    padding: 0 5px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card-side-rail [data-copy-action] {
    max-width: 72px;
    min-height: 32px;
    padding: 0 4px;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card {
    width: 100%;
    height: auto;
    min-height: 104px;
    max-height: none;
    box-sizing: border-box;
    grid-template-areas: "title" "badges" "facts" "footer" "quick" "meta";
    grid-template-columns: minmax(0, 1fr);
    gap: 1px 7px;
    padding: 1px 8px 1px 10px !important;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card-title {
    width: auto;
    max-width: none;
    grid-column: 1;
    justify-self: stretch;
    font-size: 14px;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-contact-line,
  html[data-phase10-mobile="true"] #allRequestList .request-card-created {
    min-height: 18px;
    gap: 5px;
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card-meta-badges {
    width: auto;
    max-width: 100%;
    flex-direction: row;
    justify-self: start;
    gap: 3px;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card-footer {
    grid-area: footer;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card-marker-row {
    min-height: 24px;
    margin-top: 0;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card > .appointment-meta.request-card-details {
    display: none;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-source-badge,
  html[data-phase10-mobile="true"] #allRequestList .request-client-state-badge,
  html[data-phase10-mobile="true"] #allRequestList .request-reaction-badge {
    min-height: 22px;
    padding: 2px 6px;
    font-size: 10px;
  }

  html[data-phase10-mobile="true"] .appointment-card-title strong,
  html[data-phase10-mobile="true"] .appointment-card-services-line,
  html[data-phase10-mobile="true"] .request-card-title,
  html[data-phase10-mobile="true"] .request-contact-line,
  html[data-phase10-mobile="true"] .request-card-details {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card-title,
  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card-title strong {
    display: block;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.25;
    -webkit-line-clamp: unset;
  }
  html[data-phase10-mobile="true"] #clientList > .work-table-heading .list-command {
    display: none;
  }

  html[data-phase10-mobile="true"] .work-table-toolbar,
  html[data-phase10-mobile="true"] .work-table-pager,
  html[data-phase10-mobile="true"] .audit-table-toolbar,
  html[data-phase10-mobile="true"] .audit-table-footer {
    flex-wrap: wrap;
    gap: 6px;
  }

  html[data-phase10-mobile="true"] .work-table-columns-menu,
  html[data-phase10-mobile="true"] .audit-columns-menu {
    display: none;
  }

  html[data-phase10-mobile="true"] .work-table-scroll,
  html[data-phase10-mobile="true"] .audit-table-scroll,
  html[data-phase10-mobile="true"] .audit-table-region {
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 0;
    margin: 0;
    overflow: visible;
    border: 0;
  }

  html[data-phase10-mobile="true"] .work-table,
  html[data-phase10-mobile="true"] .audit-table {
    width: 100%;
    min-width: 0;
    table-layout: auto;
  }

  html[data-phase10-mobile="true"] .work-table colgroup,
  html[data-phase10-mobile="true"] .work-table thead,
  html[data-phase10-mobile="true"] .audit-table colgroup,
  html[data-phase10-mobile="true"] .audit-table thead {
    display: none;
  }

  html[data-phase10-mobile="true"] .work-table tbody,
  html[data-phase10-mobile="true"] .audit-table tbody {
    display: grid;
    gap: 8px;
  }

  html[data-phase10-mobile="true"] .work-table tbody tr,
  html[data-phase10-mobile="true"] .audit-table tbody tr:not(.audit-detail-row) {
    height: auto !important;
    min-height: 0 !important;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
    gap: 4px;
    padding: 9px;
    border: 1px solid #d5dee8;
    border-radius: 9px;
    background: #fff;
  }

  html[data-phase10-mobile="true"] #clientList > .work-table-heading {
    display: none;
  }

  html[data-phase10-mobile="true"] .work-table tbody td,
  html[data-phase10-mobile="true"] .audit-table tbody td {
    height: auto !important;
    min-height: 0 !important;
    width: auto;
    min-width: 0;
    padding: 2px 0;
    border: 0;
    white-space: normal;
  }

  html[data-phase10-mobile="true"] .work-table tbody td[data-mobile-label],
  html[data-phase10-mobile="true"] .audit-table tbody td[data-mobile-label],
  html[data-phase10-mobile="true"] .clarification-table-row > span[data-mobile-label] {
    display: grid;
    grid-template-columns: minmax(82px, 34%) minmax(0, 1fr);
    gap: 7px;
    align-items: start;
  }

  html[data-phase10-mobile="true"] .work-table tbody td[data-mobile-label]::before,
  html[data-phase10-mobile="true"] .audit-table tbody td[data-mobile-label]::before,
  html[data-phase10-mobile="true"] .clarification-table-row > span[data-mobile-label]::before {
    content: attr(data-mobile-label);
    color: #64748b;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.35;
  }

  html[data-phase10-mobile="true"] .audit-detail-row {
    display: block;
    margin-top: -8px;
  }

  html[data-phase10-mobile="true"] .audit-detail-row > td {
    display: block;
    padding: 8px;
  }

  html[data-phase10-mobile="true"] .clarification-section {
    padding: 0;
    border: 0;
  }

  html[data-phase10-mobile="true"] #clarificationList > .clarification-section > .settings-section-head {
    display: none;
  }

  html[data-phase10-mobile="true"] #clarificationList .work-table-toolbar {
    min-height: 40px;
    padding: 7px 8px;
  }

  html[data-phase10-mobile="true"] .clarification-table-wrap {
    overflow: visible;
  }

  html[data-phase10-mobile="true"] .clarification-table {
    min-width: 0;
    display: grid;
    gap: 8px;
  }

  html[data-phase10-mobile="true"] .clarification-table-row.is-head {
    display: none;
  }

  html[data-phase10-mobile="true"] .clarification-table-row:not(.is-head) {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    padding: 9px;
    border: 1px solid #d5dee8;
    border-radius: 9px;
    background: #fff;
  }

  html[data-phase10-mobile="true"] .clarification-table-row:not(.is-head) > span {
    min-width: 0;
    padding: 0;
    border: 0;
    overflow-wrap: anywhere;
  }

  html[data-phase10-mobile="true"] .clarification-answer-open,
  html[data-phase10-mobile="true"] .clarification-client strong {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-card {
    gap: 5px !important;
    padding: 8px !important;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: #64748b;
    font-size: 10px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-card-head strong {
    color: #172033;
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-client {
    display: grid;
    gap: 1px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-client strong,
  html[data-phase10-mobile="true"] .phase10-clarification-context,
  html[data-phase10-mobile="true"] .phase10-clarification-card .clarification-answer-open {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-client small,
  html[data-phase10-mobile="true"] .phase10-clarification-context {
    color: #64748b;
    font-size: 10px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-primary {
    width: 100%;
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-secondary {
    margin-top: 8px;
    border: 1px solid #d5dee8;
    border-radius: 9px;
    background: #fff;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-secondary > summary {
    min-height: 32px;
    display: flex;
    align-items: center;
    padding: 0 9px;
    font-weight: 600;
    cursor: pointer;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-secondary > .clarification-section {
    padding: 8px;
    border-top: 1px solid #e5ebf1;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-secondary .settings-section-head {
    margin-bottom: 6px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-secondary .clarification-section-description {
    display: none;
  }

  html[data-phase10-mobile="true"] .modal-layer {
    position: fixed;
    inset: 0;
    padding: 0;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] .modal-scroll {
    width: 100%;
    height: 100dvh;
    max-width: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] dialog#appointmentDialog.dialog,
  html[data-phase10-mobile="true"] dialog#requestDialog.dialog,
  html[data-phase10-mobile="true"] dialog#clientDialog.dialog {
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0;
    border: 0;
    border-radius: 0 !important;
    overflow: hidden !important;
    overflow-y: hidden !important;
  }

  html[data-phase10-mobile="true"] dialog#appointmentDialog.dialog > form,
  html[data-phase10-mobile="true"] dialog#requestDialog.dialog > form,
  html[data-phase10-mobile="true"] dialog#clientDialog.dialog > form {
    width: 100%;
    height: 100% !important;
    max-height: 100dvh !important;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden !important;
    overflow-y: hidden !important;
  }

  html[data-phase10-mobile="true"] .dialog-head {
    position: relative;
    min-height: 50px;
    padding: 8px 44px 8px 10px;
    border-bottom: 1px solid #d7e0e9;
    background: #fff;
  }

  html[data-phase10-mobile="true"] .dialog-head h2 {
    font-size: 16px;
    line-height: 1.2;
  }

  html[data-phase10-mobile="true"] .dialog-head p,
  html[data-phase10-mobile="true"] .dialog-meta {
    font-size: 10px;
    line-height: 1.25;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-head {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px;
    padding: 8px 8px 8px 10px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-icon {
    display: none;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-title-block,
  html[data-phase10-mobile="true"] #requestDialog .request-dialog-head-tools,
  html[data-phase10-mobile="true"] #requestDialog .request-dialog-utility-row {
    min-width: 0;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-head-tools {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
  }

  html[data-phase10-mobile="true"] #requestDialogTitle {
    min-width: 0;
    font-size: 16px;
    line-height: 1.25;
  }

  html[data-phase10-mobile="true"] #requestDialogTitle .request-title-separator {
    margin-inline: 4px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-copy-token {
    min-height: 32px;
    padding-inline: 4px;
  }

  html[data-phase10-mobile="true"] .dialog-close-button {
    top: 7px;
    right: 7px;
    width: 32px;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] .dialog .form-grid {
    flex: 1 1 0;
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
    gap: 8px;
    padding: 8px 10px 12px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-form-grid,
  html[data-phase10-mobile="true"] #requestDialog .form-grid,
  html[data-phase10-mobile="true"] #clientDialog .form-grid {
    grid-row: auto !important;
    grid-template-columns: minmax(0, 1fr) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .form-grid {
    grid-auto-flow: row !important;
    grid-auto-rows: max-content !important;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-form-grid > *,
  html[data-phase10-mobile="true"] #requestDialog .form-grid > *,
  html[data-phase10-mobile="true"] #clientDialog .form-grid > * {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  html[data-phase10-mobile="true"] .dialog .form-grid > *,
  html[data-phase10-mobile="true"] .dialog .wide,
  html[data-phase10-mobile="true"] .appointment-side-panel,
  html[data-phase10-mobile="true"] .request-appointment-body,
  html[data-phase10-mobile="true"] .request-appointment-main-panel,
  html[data-phase10-mobile="true"] .request-appointment-side-panel {
    width: 100%;
    min-width: 0;
    grid-column: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 10px;
    font-weight: 600;
    text-align: left;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle::after {
    content: "+";
    font-size: 18px;
    font-weight: 400;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle.is-open::after {
    content: "−";
  }

  html[data-phase10-mobile="true"] .phase10-section-collapsed {
    display: none !important;
  }

  html[data-phase10-mobile="true"] [data-phase10-section-toggle="request-main"],
  html[data-phase10-mobile="true"] [data-phase10-request-section="request-main"] {
    order: 10;
  }

  html[data-phase10-mobile="true"] [data-phase10-section-toggle="request-contact"],
  html[data-phase10-mobile="true"] [data-phase10-request-section="request-contact"] {
    order: 20;
  }

  html[data-phase10-mobile="true"] [data-phase10-section-toggle="request-work"],
  html[data-phase10-mobile="true"] [data-phase10-request-section="request-work"] {
    order: 30;
  }

  html[data-phase10-mobile="true"] [data-phase10-section-toggle="request-appointment"],
  html[data-phase10-mobile="true"] [data-phase10-request-section="request-appointment"] {
    order: 40;
  }

  html[data-phase10-mobile="true"] [data-phase10-section-toggle="request-comment"],
  html[data-phase10-mobile="true"] [data-phase10-request-section="request-comment"] {
    order: 50;
  }

  html[data-phase10-mobile="true"] [data-phase10-section-toggle="request-lifecycle"],
  html[data-phase10-mobile="true"] [data-phase10-request-section="request-lifecycle"] {
    order: 60;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions {
    order: 61;
  }

  html[data-phase10-mobile="true"] #requestDialog #requestActionOverlay {
    order: 62;
  }

  html[data-phase10-mobile="true"] #requestDialog #requestDangerZone {
    order: 63;
    align-self: start;
  }

  html[data-phase10-mobile="true"] #requestDialog #requestActionManagerPersistent {
    order: 64;
  }

  html[data-phase10-mobile="true"] #requestDialog #phase10RequestHistory {
    order: 65;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions button,
  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions [data-request-action-slot],
  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions .request-action-slot-placeholder,
  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions .request-clarification-history-link {
    min-width: 0;
    width: 100%;
    grid-column: auto !important;
    grid-row: auto !important;
    transform: none !important;
    white-space: normal;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions .request-clarification-history-link {
    grid-column: 1 / -1 !important;
    min-height: 32px;
    border-radius: 7px;
    font-size: 0;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions .request-clarification-history-link::after {
    content: "Ответ клиента";
    font-size: 12px;
  }

  html[data-phase10-mobile="true"] .dialog input,
  html[data-phase10-mobile="true"] .dialog select,
  html[data-phase10-mobile="true"] .dialog textarea,
  html[data-phase10-mobile="true"] .dialog button,
  html[data-phase10-mobile="true"] .dialog .service-toggle-button,
  html[data-phase10-mobile="true"] .dialog .material-source-toggle button {
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] .dialog textarea {
    resize: vertical;
  }

  html[data-phase10-mobile="true"] .service-toggle-grid,
  html[data-phase10-mobile="true"] .manager-color-options,
  html[data-phase10-mobile="true"] .request-danger-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  html[data-phase10-mobile="true"] .dialog-actions {
    flex: 0 0 auto;
    min-width: 0;
    max-height: 42dvh;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
    overflow-x: hidden;
    overflow-y: auto;
    border-top: 1px solid #d7e0e9;
    background: #fff;
  }

  html[data-phase10-mobile="true"] .dialog-actions button.primary-button,
  html[data-phase10-mobile="true"] .dialog-actions button.danger-button,
  html[data-phase10-mobile="true"] .request-danger-actions button {
    min-height: 40px;
  }

  html[data-phase10-mobile="true"] .request-dialog-actions-left,
  html[data-phase10-mobile="true"] .request-dialog-actions-right {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-history-actions,
  html[data-phase10-mobile="true"] #requestDialog .request-history-actions {
    display: none !important;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-entity-history {
    order: 70;
    display: grid;
    gap: 6px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle,
  html[data-phase10-mobile="true"] .phase10-mobile-history-more,
  html[data-phase10-mobile="true"] .phase10-mobile-history-all {
    width: 100%;
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 10px;
    border: 1px solid #cbd7e3;
    border-radius: 7px;
    color: #172033;
    background: #fff;
    font: inherit;
    font-weight: 600;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle::after {
    content: "+";
    font-size: 14px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle[aria-expanded="true"]::after {
    content: "−";
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-body,
  html[data-phase10-mobile="true"] .phase10-mobile-history-list {
    display: grid;
    gap: 6px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-row {
    display: grid;
    grid-template-columns: minmax(92px, auto) minmax(0, 1fr);
    gap: 2px 6px;
    padding: 3px 4px;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-row time,
  html[data-phase10-mobile="true"] .phase10-mobile-history-row small {
    color: #64748b;
    font-size: 10px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-row strong {
    grid-column: 1 / -1;
    overflow-wrap: anywhere;
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] #returnToRequestButton,
  html[data-phase10-mobile="true"] #hideAppointmentButton {
    display: none;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-time-picker {
    position: fixed;
    z-index: 4600;
    top: 112px;
    right: max(10px, env(safe-area-inset-right));
    left: max(10px, env(safe-area-inset-left));
    width: auto;
    max-height: min(360px, calc(100dvh - 200px - env(safe-area-inset-bottom)));
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    padding: 6px;
    overflow-y: auto;
    border: 1px solid #9fb0c3;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .28);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-time-picker button {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    padding: 0 7px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-time-picker button[data-occupied="true"] {
    border-color: #d6a964;
    background: #fff8e8;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-time-picker button small {
    color: #8a5c12;
    font-size: 9px;
  }

  html[data-phase10-mobile="true"] .history-grid {
    display: none;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-stream {
    display: grid;
    gap: 7px;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 3px 8px;
    padding: 8px;
    border: 1px solid #d5dee8;
    border-radius: 8px;
    color: inherit;
    background: #fff;
    text-align: left;
  }

  html[data-phase10-mobile="true"] button.phase10-client-history-event {
    cursor: pointer;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-kind {
    color: #174f82;
    font-size: 11px;
    font-weight: 600;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event time {
    justify-self: end;
    color: #64748b;
    font-size: 10px;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event strong,
  html[data-phase10-mobile="true"] .phase10-client-history-event > span:not(.phase10-client-history-kind),
  html[data-phase10-mobile="true"] .phase10-client-history-event > div {
    grid-column: 1 / -1;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-more {
    width: 100%;
    min-height: 32px;
    margin-top: 7px;
  }

  html[data-phase10-mobile="true"] .client-dialog .history-panel {
    min-width: 0;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo,
  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo > svg {
    width: 32px !important;
    height: 32px !important;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo {
    flex-basis: 32px;
    color: #2f6feb;
    animation: none !important;
    transform: none !important;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo svg rect:nth-child(1) {
    fill: #2f6feb !important;
    opacity: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo svg rect:nth-child(2) {
    fill: #4f8df7 !important;
    opacity: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo svg rect:nth-child(3) {
    fill: #6da4ff !important;
    opacity: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-logo svg rect:nth-child(4) {
    fill: #93bdff !important;
    opacity: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-copy strong {
    font-size: 15px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-brand-copy small {
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-logout {
    width: 32px;
    min-width: 32px;
    padding: 0;
    border-color: #8f1d2c;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-nav button {
    font-size: 12px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu-icon {
    font-size: 17px;
    line-height: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu-heading {
    grid-column: 1 / -1;
    color: #64748b;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .08em;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-menu button {
    font-size: 12px;
    font-weight: 600;
    text-align: center;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-density {
    order: 99;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-day-toolbar {
    grid-template-columns: 32px minmax(0, 1fr) auto 32px;
  }

  html[data-phase10-mobile="true"] .calendar-period-spinner {
    display: none;
  }

  html[data-phase10-mobile="true"] .calendar-period-status {
    position: fixed;
    z-index: 40;
    top: 50dvh;
    right: auto;
    bottom: auto;
    left: 50vw;
    width: max-content;
    max-width: calc(100vw - 32px);
    margin: 0;
    padding: 7px 10px;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 1.25;
    text-align: center;
    transform: translate(-50%, -50%);
  }

  html[data-phase10-mobile="true"] .calendar-pane[data-period-status="loading"] .calendar-period-spinner,
  html[data-phase10-mobile="true"] .calendar-pane[data-period-status="refreshing"] .calendar-period-spinner {
    display: block;
  }

  /* Phase 10 R9: request modal contract. Mobile namespace is mandatory. */
  html[data-phase10-mobile="true"] #requestDialog .request-dialog-head {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 2px;
    padding: 8px 10px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-title-block {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(3, max-content);
    gap: 2px;
    padding-right: 34px;
  }

  html[data-phase10-mobile="true"] #requestDialogTitle,
  html[data-phase10-mobile="true"] #requestDialogSubtitle,
  html[data-phase10-mobile="true"] #requestDialogMeta,
  html[data-phase10-mobile="true"] #requestDialogAttention,
  html[data-phase10-mobile="true"] #requestLifecycleSnapshot {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderPrimary,
  html[data-phase10-mobile="true"] #phase10RequestHeaderFacts,
  html[data-phase10-mobile="true"] #phase10RequestHeaderMeta {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderPrimary[hidden],
  html[data-phase10-mobile="true"] #phase10RequestHeaderFacts[hidden],
  html[data-phase10-mobile="true"] #phase10RequestHeaderMeta[hidden] {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderPrimary {
    font: 600 14px/18px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderFacts {
    font: 500 12px/16px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderMeta {
    font: 500 11px/14px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-head-tools,
  html[data-phase10-mobile="true"] #requestDialog .request-dialog-utility-row {
    display: contents;
  }

  html[data-phase10-mobile="true"] #requestClientStatsLink,
  html[data-phase10-mobile="true"] #requestAdvancedToggleButton,
  html[data-phase10-mobile="true"] #requestDialogOriginBadge,
  html[data-phase10-mobile="true"] #requestDialogVirtualMarker,
  html[data-phase10-mobile="true"] #requestDialogClientBadge {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .dialog-close-button {
    position: absolute !important;
    top: 8px;
    right: 10px;
    width: 32px;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-working-status {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
    padding: 6px 10px;
    font-size: 11px;
    line-height: 1.25;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-working-status-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-working-status-item {
    min-width: 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-working-status-label {
    flex: 0 0 76px;
    flex-basis: 76px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-working-status-value {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-working-status-side {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .manual-request-contact-fields {
    gap: 8px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-actions-left,
  html[data-phase10-mobile="true"] #requestDialog .request-dialog-actions-right {
    justify-content: center;
  }
  html[data-phase10-mobile="true"] .environment-banner {
    right: 0;
    left: 0;
    width: 100%;
    max-width: none;
    min-height: 24px;
    height: 24px;
    gap: 5px;
    padding: 1px 7px;
    overflow: hidden;
    box-sizing: border-box;
    font-size: 9px;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .environment-banner-identifier {
    padding: 1px 4px;
    font-size: 9px;
    font-weight: 600;
  }

  html[data-phase10-mobile="true"] .environment-banner-text {
    overflow: hidden;
    font-size: 9px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-dialog-head {
    min-height: 0;
    max-height: 96px;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 2px 8px;
    padding: 8px 10px;
    border-radius: 0 !important;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-dialog-head-tools {
    display: contents;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-dialog-title-block {
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(18px, auto) minmax(0, auto) minmax(0, auto);
    gap: 2px;
    align-content: center;
    padding-right: 34px;
  }
  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-time-card {
    width: 56px;
    height: 56px;
    min-width: 56px;
    padding: 4px 6px;
    border-radius: 8px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHeaderTime {
    font-size: 16px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHeaderDuration {
    font-size: 9px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #dialogTitle {
    margin: 0;
    overflow: hidden;
    font: 600 14px/18px var(--font-ui, inherit);
    font-weight: 600 !important;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #dialogSubtitle {
    display: none;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-facts,
  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-works {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-facts > span,
  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-copy-token {
    font: 500 12px/16px var(--font-ui, inherit);
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-facts {
    font: 500 12px/16px var(--font-ui, inherit);
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-header-works {
    padding-right: 58px;
    font: 500 11px/14px var(--font-ui, inherit);
  }

  html[data-phase10-mobile="true"] #appointmentDialog .phase10-appointment-client-link {
    min-height: 32px;
    padding: 0;
    overflow: hidden;
    border: 0;
    color: #e9f4ff;
    background: transparent;
    font-size: 11px;
    font-weight: 600;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .phase10-appointment-client-link[hidden] {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .dialog-close-button {
    position: absolute;
    top: 8px;
    right: 10px;
    box-sizing: border-box;
    width: 32px;
    min-width: 32px;
    min-height: 32px;
    height: 32px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #appointmentOriginBadge,
  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHeaderSale,
  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHeaderRequest {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHeaderApButton {
    position: absolute;
    right: 8px;
    bottom: 4px;
    min-width: 50px;
    min-height: 32px;
    padding: 0 2px;
    border: 0;
    color: #526174;
    background: transparent;
    font: 500 11px/14px var(--font-ui, inherit);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle {
    min-height: 32px;
    padding: 0 6px 0 8px;
    border: 0;
    border-radius: 0;
    background: linear-gradient(180deg, #eef3f8 0%, #f8fafc 100%);
    font-size: 13px;
    font-weight: 600;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle::after {
    content: "+";
    width: 16px;
    height: 16px;
    display: inline-grid;
    flex: 0 0 16px;
    place-items: center;
    border: 1px solid #8fa1b5;
    border-radius: 2px;
    color: #42566d;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-section-toggle.is-open::after {
    content: "−";
  }

  html[data-phase10-mobile="true"] #appointmentDialog .client-db-shortcut-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 32px;
    gap: 5px;
    align-items: end;
  }

  html[data-phase10-mobile="true"] #appointmentRetailClientButton {
    width: 32px;
    min-width: 32px;
    min-height: 32px;
    padding: 0;
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-time-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-time-controls > legend,
  html[data-phase10-mobile="true"] #appointmentDialog .appointment-time-controls > label:first-of-type {
    grid-column: 1 / -1;
  }

  html[data-phase10-mobile="true"] #appointmentDialog .appointment-time-controls label {
    min-width: 0;
  }

  html[data-phase10-mobile="true"] #appointmentDurationCompanion {
    display: none !important;
  }

  html[data-phase10-mobile="true"] .appointment-duration-label-desktop {
    display: none;
  }

  html[data-phase10-mobile="true"] .appointment-duration-label-mobile[hidden] {
    display: inline !important;
  }

  html[data-phase10-mobile="true"] .appointment-card,
  html[data-phase10-mobile="true"] .request-card {
    min-height: 88px;
    display: grid;
    gap: 4px;
    padding: 7px 8px !important;
    overflow: hidden;
    border-radius: 8px;
  }

  html[data-phase10-mobile="true"] .appointment-card-head,
  html[data-phase10-mobile="true"] .appointment-card-body,
  html[data-phase10-mobile="true"] .request-card-main,
  html[data-phase10-mobile="true"] .request-card-footer {
    min-width: 0;
    gap: 5px;
  }

  html[data-phase10-mobile="true"] .appointment-card-title,
  html[data-phase10-mobile="true"] .appointment-card-main,
  html[data-phase10-mobile="true"] .request-card-title,
  html[data-phase10-mobile="true"] .request-contact-line,
  html[data-phase10-mobile="true"] .request-card-details {
    min-width: 0;
    font-size: 11px;
    line-height: 1.2;
  }

  html[data-phase10-mobile="true"] .appointment-card-services-line,
  html[data-phase10-mobile="true"] .request-card-details {
    -webkit-line-clamp: 1;
  }

  html[data-phase10-mobile="true"] #requestAdvancedToggleButton {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .manual-request-contact-fields,
  html[data-phase10-mobile="true"] #requestDialog .request-main-field,
  html[data-phase10-mobile="true"] #requestDialog .request-client-db-field {
    margin: 0;
  }

  html[data-phase10-mobile="true"] #requestDialog #requestAdvancedPanel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  html[data-phase10-mobile="true"] #requestDialog #requestAdvancedPanel > label,
  html[data-phase10-mobile="true"] #requestDialog #requestAdvancedPanel > label.wide {
    width: auto;
    min-width: 0;
    grid-column: auto !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-work-list-field {
    padding-top: 0;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-list {
    gap: 3px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-row {
    min-height: 32px;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 1px 6px;
    padding: 4px 6px;
    line-height: 1.2;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-preview {
    display: -webkit-box;
    overflow: hidden;
    font-size: 11px;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-actions button,
  html[data-phase10-mobile="true"] .phase10-clarification-primary {
    width: 100%;
    min-height: 32px;
    padding: 0 7px;
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] #clientList.main-list {
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  html[data-phase10-mobile="true"] #auditList.main-list {
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table-workspace {
    height: auto !important;
    min-height: 100%;
    overflow: visible !important;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-section,
  html[data-phase10-mobile="true"] #clientList .work-table-scroll {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody {
    gap: 6px;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody tr:not(.audit-detail-row) {
    min-height: 76px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px 7px;
    padding: 6px 7px;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody td {
    display: inline-grid;
    grid-template-columns: minmax(70px, 30%) minmax(0, 1fr);
    gap: 5px;
    padding: 0;
    font-size: 10px;
    line-height: 1.15;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody td:empty {
    display: none;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody td[hidden] {
    display: none !important;
  }

  /* Phase 10 R10: canonical mobile cards, clarifications and audit detail. */
  html[data-phase10-mobile="true"] #allAppointmentList .phase10-mobile-list-card,
  html[data-phase10-mobile="true"] #allRequestList .phase10-mobile-list-card {
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    gap: 4px;
    margin: 0 0 8px;
    margin-bottom: 8px;
    padding: 10px !important;
    overflow: hidden;
    box-sizing: border-box;
    border-radius: 8px;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card.phase10-mobile-appointment-list-card {
    min-height: 0 !important;
    grid-template-rows: repeat(5, max-content) !important;
    grid-auto-rows: max-content;
    align-content: start;
    border: 1px solid var(--appointment-manager-border, #cbd7e3);
    background: #fff;
    color: #172033;
  }

  html[data-phase10-mobile="true"] #allRequestList[data-request-layout] {
    grid-auto-rows: max-content;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card.phase10-mobile-request-list-card {
    height: auto !important;
    min-height: 104px !important;
    grid-template-rows: repeat(4, max-content) !important;
    grid-auto-rows: max-content;
    align-content: start;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card.phase10-mobile-request-list-card .phase10-mobile-card-title {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    -webkit-line-clamp: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-top,
  html[data-phase10-mobile="true"] .phase10-mobile-card-bottom,
  html[data-phase10-mobile="true"] .phase10-mobile-card-facts,
  html[data-phase10-mobile="true"] .phase10-mobile-card-meta {
    min-width: 0;
    display: flex;
    align-items: center;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-top,
  html[data-phase10-mobile="true"] .phase10-mobile-card-bottom,
  html[data-phase10-mobile="true"] .phase10-mobile-card-meta {
    justify-content: space-between;
    gap: 8px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-time {
    min-width: 0;
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-time strong,
  html[data-phase10-mobile="true"] .phase10-mobile-card-title {
    min-width: 0;
    overflow: hidden;
    font: 600 13px/18px var(--font-family, Arial, sans-serif);
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-time > span,
  html[data-phase10-mobile="true"] .phase10-mobile-card-source,
  html[data-phase10-mobile="true"] .phase10-mobile-card-meta,
  html[data-phase10-mobile="true"] .phase10-mobile-card-bottom,
  html[data-phase10-mobile="true"] .phase10-mobile-card-bottom .appointment-manager-ticket {
    font: 500 11px/14px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-source {
    flex: 0 1 auto;
    min-width: 0;
    overflow: hidden;
    color: #526173;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-request-card-top .phase10-mobile-card-title {
    flex: 1 1 auto;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-facts {
    gap: 10px;
    font: 500 12px/16px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-facts > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-phone {
    flex: 0 0 auto;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-car {
    flex: 1 1 auto;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-fallback {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-works {
    min-width: 0;
    display: -webkit-box;
    overflow: hidden;
    font: 400 12px/16px var(--font-family, Arial, sans-serif);
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-lifecycle {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: 4px;
    overflow: hidden;
    font: 500 12px/16px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-lifecycle > * {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-meta .request-copy-separator {
    margin-inline: 3px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-bottom .appointment-manager-ticket {
    width: auto;
    min-width: 0;
    max-width: 46%;
    height: 24px;
    padding: 0 7px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-card-bottom .appointment-card-status-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] .phase10-clarification-actions button,
  html[data-phase10-mobile="true"] .phase10-clarification-primary {
    min-height: 32px;
    border: 1px solid #cbd7e3;
    border-radius: 7px;
    color: #172033;
    background: #fff;
    font: 600 12px/16px var(--font-family, Arial, sans-serif);
    text-align: center;
  }

  html[data-phase10-mobile="true"] [data-phase10-today-chip] {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-row {
    width: 100%;
    min-width: 0;
    display: block;
    margin-top: -6px;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody .audit-detail-row > td,
  html[data-phase10-mobile="true"] #auditList .audit-table tbody .audit-detail-row > td > section {
    width: 100%;
    min-width: 0;
    display: block;
    box-sizing: border-box;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table tbody .audit-detail-row > td {
    display: block !important;
    grid-template-columns: none !important;
    padding: 8px;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-summary {
    min-width: 0;
    display: grid;
    gap: 2px;
    margin-bottom: 5px;
    font-size: 11px;
    line-height: 1.3;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-summary p {
    margin: 0;
    overflow-wrap: anywhere;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-grid {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-card,
  html[data-phase10-mobile="true"] #auditList .audit-detail-card.is-wide,
  html[data-phase10-mobile="true"] #auditList .audit-detail-card.is-compact {
    min-width: 0;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 6px;
    padding: 4px 0;
    border: 0;
    border-bottom: 1px solid #edf1f5;
    border-radius: 0;
    background: transparent;
    font-size: 11px;
    line-height: 1.3;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-card span {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  html[data-phase10-mobile="true"] #auditList .audit-detail-card.is-technical {
    order: 99;
    color: #64748b;
    font-size: 10px;
  }
  /* Phase 10 R11: reachable mobile print preview. */
  html[data-phase10-mobile="true"] dialog#printPacketDialog.dialog {
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0;
    border-radius: 0 !important;
    overflow: hidden !important;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-shell {
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
    overflow: hidden;
    border-radius: 0;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-head {
    position: relative;
    min-height: 52px;
    padding: 8px 48px 8px 10px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-head h2 {
    font-size: 16px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-head > div {
    min-width: 0;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-head p {
    margin-top: 2px;
    overflow: hidden;
    font-size: 10px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .dialog-close-button {
    top: 8px;
    right: 10px;
    width: 32px;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-summary {
    gap: 4px;
    padding: 6px 8px 4px;
    overflow: hidden;
    flex-wrap: wrap;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-summary-pill {
    min-height: 26px;
    flex: 0 0 auto;
    padding: 3px 6px;
    font-size: 10px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-message {
    min-height: 0;
    padding: 3px 8px 5px;
    font-size: 10px;
    line-height: 1.2;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet {
    min-width: 0;
    min-height: 0;
    max-height: none;
    overflow: auto;
    overscroll-behavior: contain;
    padding: 8px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-page {
    min-width: 680px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-state {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-actions {
    position: relative;
    min-height: 52px;
    max-height: none;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 6px 8px calc(6px + env(safe-area-inset-bottom));
    overflow: visible;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-privacy {
    min-width: 0;
    overflow: hidden;
    font-size: 9px;
    line-height: 1.15;
    text-overflow: ellipsis;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-actions > div {
    flex: 0 0 auto;
    gap: 5px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog .print-packet-dialog-actions button {
    min-height: 32px;
    padding-inline: 8px;
    font-size: 11px;
  }

  html[data-phase10-mobile="true"] #printPacketDialog #printPacketPrintButton {
    min-height: 40px;
  }
  /* Phase 10 R14: print-safe mobile remediation for cards and modal readability. */
  html[data-phase10-mobile="true"] #allRequestList .request-card.phase10-mobile-request-list-card {
    grid-template-areas: none !important;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card.phase10-mobile-appointment-list-card {
    padding: 10px !important;
  }

  html[data-phase10-mobile="true"] #allAppointmentList .phase10-mobile-card-top .request-copy-token,
  html[data-phase10-mobile="true"] #allAppointmentList .phase10-mobile-card-bottom .appointment-card-status-text,
  html[data-phase10-mobile="true"] #allAppointmentList .phase10-mobile-card-bottom .appointment-manager-ticket,
  html[data-phase10-mobile="true"] #allAppointmentList .phase10-mobile-card-bottom .appointment-manager-ticket > span {
    font: 500 11px/14px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHeaderApButton {
    color: #fff;
  }

  html[data-phase10-mobile="true"] #appointmentDialog #appointmentHiddenInfo {
    margin: 0 22px 8px;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle {
    padding: 0 6px 0 8px;
    border: 0;
    border-radius: 0;
    color: #172033;
    background: linear-gradient(180deg, #eef3f8 0%, #f8fafc 100%);
    font: 600 13px/normal var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle::after {
    content: "+";
    width: 16px;
    height: 16px;
    display: inline-grid;
    flex: 0 0 16px;
    place-items: center;
    border: 1px solid #8fa1b5;
    border-radius: 2px;
    color: #42566d;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
  }

  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle[aria-expanded="true"]::after {
    content: "−";
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-title-block {
    width: auto;
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderPrimary {
    color: var(--request-status-text-color, #fff);
  }

  html[data-phase10-mobile="true"] #phase10RequestHeaderFacts,
  html[data-phase10-mobile="true"] #phase10RequestHeaderMeta {
    color: var(--request-status-muted-color, rgba(255, 255, 255, .84));
  }

  html[data-phase10-mobile="true"] #requestDialog .form-grid {
    gap: 8px !important;
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event {
    font: 400 12px/16px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event .phase10-client-history-kind {
    font: 600 11px/14px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event > time,
  html[data-phase10-mobile="true"] .phase10-client-history-event > div {
    font: 500 11px/14px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event > strong {
    font: 600 13px/18px var(--font-family, Arial, sans-serif);
  }

  html[data-phase10-mobile="true"] .phase10-client-history-event > span:not(.phase10-client-history-kind) {
    font: 400 12px/16px var(--font-family, Arial, sans-serif);
  }
  html[data-phase10-mobile="true"] .environment-banner {
    font-size: 9px;
  }
  /* Phase 10 R15: compact clients and client controls without desktop impact. */
  html[data-phase10-mobile="true"] #clientList .work-table-section {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar {
    min-height: 50px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 10px;
    border: 1px solid #d9e5f4;
    border-radius: 9px;
    background: var(--surface-muted, #f6f9fe);
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar-actions {
    min-width: 0;
    flex-wrap: nowrap;
    justify-content: flex-end;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar [data-work-table-reset] {
    width: auto;
    min-width: 0;
    padding-inline: 8px;
    white-space: nowrap;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-scroll {
    max-width: 100%;
    margin-top: 8px;
    box-sizing: border-box;
  }

  html[data-phase10-mobile="true"] #clientList .work-table,
  html[data-phase10-mobile="true"] #clientList .work-table tbody,
  html[data-phase10-mobile="true"] #clientList .work-table tbody tr {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  html[data-phase10-mobile="true"] #clientList .work-table tbody tr {
    overflow: hidden;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-head {
    min-height: 0 !important;
    height: auto !important;
    align-items: start;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-dialog-title-block {
    height: auto !important;
    align-self: start;
    align-content: start;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-last-visit-hint.is-empty {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-last-visit-hint:not(.is-empty) {
    min-height: 0;
    margin: 0;
  }

  html[data-phase10-mobile="true"] #phase10RequestOpenClient {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #requestDialog .client-db-shortcut-row {
    grid-template-columns: minmax(0, 1fr) 36px;
    grid-template-rows: 34px;
    align-items: center;
  }

  html[data-phase10-mobile="true"] #requestDialog #requestRetailClientButton {
    width: 36px;
    min-width: 36px;
    padding: 0;
    font-size: 11px;
  }

  /* Phase 10 R16: owner-observed mobile rhythm and disclosure defects. */
  html[data-phase10-mobile="true"] .workspace-startup-status,
  html[data-phase10-mobile="true"] .calendar-period-status {
    position: fixed;
    z-index: 40;
    top: 50dvh;
    right: auto;
    bottom: auto;
    left: 50vw;
    width: max-content;
    max-width: calc(100vw - 32px);
    margin: 0;
    padding: 7px 10px;
    box-sizing: border-box;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
    transform: translate(-50%, -50%);
  }

  html[data-phase10-mobile="true"] #requestDialog.is-manual-create .manual-request-contact-fields[data-phase10-request-section="request-contact"] {
    order: 20 !important;
    grid-row: auto !important;
  }

  html[data-phase10-mobile="true"] #appointmentDialog select[name="appointment_type"] {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  @supports (appearance: base-select) {
    html[data-phase10-mobile="true"] #appointmentDialog select[name="appointment_type"],
    html[data-phase10-mobile="true"] #appointmentDialog select[name="appointment_type"]::picker(select) {
      appearance: base-select;
    }

    html[data-phase10-mobile="true"] #appointmentDialog select[name="appointment_type"]::picker(select) {
      width: anchor-size(width);
      min-width: anchor-size(width);
      max-width: anchor-size(width);
      box-sizing: border-box;
    }
  }

  html[data-phase10-mobile="true"] #allRequestList,
  html[data-phase10-mobile="true"] #allAppointmentList {
    row-gap: 8px;
  }

  html[data-phase10-mobile="true"] #allRequestList .request-card,
  html[data-phase10-mobile="true"] #allAppointmentList .appointment-card {
    margin-bottom: 0;
    box-shadow: none;
  }

  html[data-phase10-mobile="true"] #clarificationList .clarification-table-wrap {
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  html[data-phase10-mobile="true"] #auditList .audit-table-chips {
    display: none !important;
  }

  html[data-phase10-mobile="true"] #mobileFilterToggleButton,
  html[data-phase10-mobile="true"] #phase10MobileFilterReset,
  html[data-phase10-mobile="true"] [data-work-table-reset],
  html[data-phase10-mobile="true"] [data-request-reset],
  html[data-phase10-mobile="true"] [data-appointment-reset],
  html[data-phase10-mobile="true"] [data-client-reset],
  html[data-phase10-mobile="true"] [data-client-empty-reset],
  html[data-phase10-mobile="true"] [data-audit-reset-view],
  html[data-phase10-mobile="true"] [data-audit-reset-filters] {
    height: 32px;
    min-height: 32px;
    padding: 0 8px;
    border: 1px solid #cbd7e3;
    border-radius: 7px;
    color: #172033;
    background: #fff;
    box-shadow: none;
    font: 600 12px/16px var(--font-family, Arial, sans-serif);
  }

  /* Phase 10 R17: stable mobile typography, loading toolbar and touch guard presentation. */
  html[data-phase10-mobile="true"] .phase10-mobile-history-toggle {
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    line-height: normal;
    text-align: left;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-state[role="status"],
  html[data-phase10-mobile="true"] #clientList .work-table-progress {
    font-family: inherit;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar:has(.work-table-progress) {
    grid-template-areas:
      "summary actions"
      "progress progress";
    grid-template-columns: minmax(0, 1fr) auto;
    row-gap: 4px;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar:has(.work-table-progress) .work-table-summary {
    grid-area: summary;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar:has(.work-table-progress) .work-table-toolbar-actions {
    grid-area: actions;
  }

  html[data-phase10-mobile="true"] #clientList .work-table-toolbar:has(.work-table-progress) .work-table-progress {
    min-width: 0;
    grid-area: progress;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  /* Phase 10 R18: a symmetric mobile action grid keeps every label on the button axis. */
  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions :is([data-request-lifecycle-action], #requestFinalToggleButton) {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr) 16px;
    align-items: center;
    justify-content: stretch;
    column-gap: 4px;
    padding-right: 8px;
    padding-left: 8px;
    text-align: center;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions :is([data-request-lifecycle-action], #requestFinalToggleButton) > .button-icon {
    grid-column: 1;
    justify-self: center;
    margin: 0;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions :is([data-request-lifecycle-action], #requestFinalToggleButton) > span:not(.button-icon):not(.request-estimate-indicator) {
    min-width: 0;
    grid-column: 2;
    justify-self: stretch;
    font-size: 11px;
    line-height: 1.2;
    letter-spacing: -0.3px;
    overflow-wrap: anywhere;
    text-align: center;
    white-space: normal;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions [data-request-lifecycle-action="make_estimate"] .request-estimate-indicator,
  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions [data-request-lifecycle-action="data_received"]::after,
  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions [data-request-lifecycle-action="data_missing"]::after {
    grid-column: 3;
    justify-self: center;
    margin-left: 0;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-final-outcome-mobile {
    gap: 2px;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-final-outcome-mobile .request-working-status-item {
    align-items: flex-start;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-final-outcome-mobile .request-working-status-value {
    overflow: visible;
    white-space: normal;
    text-overflow: clip;
  }

  html[data-phase10-mobile="true"] #requestDialog .request-lifecycle-actions button.is-guarded {
    opacity: 0.58;
    cursor: not-allowed;
  }
}


@media (min-width: 761px) and (max-width: 932px) and (max-height: 430px) and (orientation: landscape) {
  html[data-phase10-mobile-landscape="true"] dialog#appointmentDialog.dialog,
  html[data-phase10-mobile-landscape="true"] dialog#requestDialog.dialog,
  html[data-phase10-mobile-landscape="true"] dialog#clientDialog.dialog {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    right: auto !important;
    bottom: auto !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    transform: none !important;
  }

  html[data-phase10-mobile-landscape="true"] dialog#appointmentDialog.dialog > form,
  html[data-phase10-mobile-landscape="true"] dialog#requestDialog.dialog > form,
  html[data-phase10-mobile-landscape="true"] dialog#clientDialog.dialog > form {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  html[data-phase10-mobile-landscape="true"] dialog#appointmentDialog.dialog > form > .form-grid,
  html[data-phase10-mobile-landscape="true"] dialog#requestDialog.dialog > form > .form-grid,
  html[data-phase10-mobile-landscape="true"] dialog#clientDialog.dialog > form > .form-grid {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  html[data-phase10-mobile-landscape="true"] dialog#appointmentDialog.dialog .dialog-head,
  html[data-phase10-mobile-landscape="true"] dialog#requestDialog.dialog .dialog-head,
  html[data-phase10-mobile-landscape="true"] dialog#clientDialog.dialog .dialog-head,
  html[data-phase10-mobile-landscape="true"] dialog#appointmentDialog.dialog .dialog-actions,
  html[data-phase10-mobile-landscape="true"] dialog#requestDialog.dialog .dialog-actions,
  html[data-phase10-mobile-landscape="true"] dialog#clientDialog.dialog .dialog-actions {
    flex: 0 0 auto !important;
  }
  html[data-phase10-mobile-landscape="true"] dialog#printPacketDialog.dialog {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    transform: none !important;
  }

  html[data-phase10-mobile-landscape="true"] #printPacketDialog .print-packet-dialog-shell {
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
    overflow: hidden;
  }

  html[data-phase10-mobile-landscape="true"] #printPacketDialog .print-packet {
    min-height: 0;
    max-height: none;
    overflow: auto;
  }
}
