/* Preference consumers for the mobile glass preview. Desktop is untouched. */
@media (max-width: 767px) {
  html[data-liquid-glass="on"] body#exam-wallet-app:has(dialog.phone-settings-dialog[open]) #root {
    /* Keep clear glass without letting background letters compete with the
       form. Filtering the inert page also works when WebKit does not composite
       a transparent backdrop-filter surface correctly. The dialog is portaled. */
    filter: blur(10px) opacity(.22);
  }
  html[data-liquid-glass="on"] body#exam-wallet-app dialog.phone-settings-dialog[open] {
    position: fixed; inset: 0; margin: auto;
    width: calc(100% - 32px); max-width: 490px; box-sizing: border-box;
    max-height: calc(100dvh - 32px); overflow: auto; border-radius: 24px !important;
  }
  html[data-liquid-glass="on"] body#exam-wallet-app dialog.phone-settings-dialog:not([open]) { display: none; }
}
@media (max-width: 767px) {
  html[data-liquid-glass="on"] { --glass-reading: 14px; --glass-caption: 12px; --glass-heading: 17px; }
  html[data-liquid-glass="on"][data-neo-font-size="small"] { --glass-reading: 13px; --glass-caption: 11px; --glass-heading: 16px; }
  html[data-liquid-glass="on"][data-neo-font-size="large"] { --glass-reading: 16px; --glass-caption: 14px; --glass-heading: 19px; }
  html[data-liquid-glass="on"][data-neo-theme="lavender"],
  html[data-liquid-glass="on"][data-neo-theme="lavender"] body#exam-wallet-app { background: #ede8f8 !important; }
  /* The canvas changes tone; glass cards retain their transparent material. */
  html[data-liquid-glass="on"] body#exam-wallet-app :is(.neo-settings-select-row > span,.neo-settings-status-row,.neo-settings-notification-row strong,.neo-settings-profile strong,.neo-settings-account-meta strong,.neo-task-copy strong,.nx-row-identity strong,.mmw-item-copy strong,.rv-phone-exam-identity strong,.rv-phone-finding strong,.mobile-timeline-title,.mc-day-event-title) { font-size: var(--glass-reading) !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app :is(.neo-settings-card > header h2,.mmw-content-heading h2,.neo-task-heading h2,.rv-phone-section-label h2) { font-size: var(--glass-heading) !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app :is(.neo-settings-notification-row small,.neo-settings-preference-note,.neo-settings-data-note,.neo-task-copy small,.mmw-item-copy small,.rv-phone-finding p,.rv-phone-exam-identity small,.rv-phone-chart-hint) { font-size: var(--glass-caption) !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-page :is(input,select,textarea) { font-size: max(16px,calc(16px * var(--phone-text-scale,1))) !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-row-action { font-size: var(--glass-reading) !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-hero { display: grid !important; grid-template-columns: minmax(0,1fr) 104px; grid-template-rows: auto auto !important; gap: 8px; height: auto !important; min-height: 0 !important; padding: 16px !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-hero-copy { padding: 0 !important; min-width: 0; align-self: center; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-hero-copy > span { display: block; max-width: none !important; font-size: 11px; line-height: 1.6; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-hero > img { position: static !important; width: 104px !important; height: 104px !important; max-width: 100%; object-fit: contain; align-self: center; filter: none !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-hero-actions { position: static !important; grid-column: 1 / -1; padding: 0 !important; margin: 0 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-hero-actions button { min-height: 44px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-section-nav { display: grid !important; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 2px !important; padding: 4px !important; overflow: visible !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-section-nav button { min-width: 0 !important; min-height: 64px; padding: 5px 1px !important; font-size: 12px !important; gap: 3px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-nav-art { display: block; width: 32px; height: 32px; object-fit: contain; filter: none; flex: none; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-card > .glass-settings-section-heading { display: flex; align-items: center; gap: 12px; height: auto !important; min-height: 60px; padding-bottom: 12px; margin-bottom: 4px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-section-heading > img { width: 60px; height: 60px; flex: none; object-fit: contain; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-section-heading > div { min-width: 0; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-section-heading h2 { margin: 0; font-size: var(--glass-heading) !important; line-height: 1.4; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-section-heading p { margin: 5px 0 0; font-size: var(--glass-caption); color: #75658c; line-height: 1.5; text-wrap: pretty; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-card-body { padding-top: 4px !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-profile { align-items: center; }
  html body#exam-wallet-app .m08-checklist-page dd { margin-inline: 0; min-width: 0; }
  html body#exam-wallet-app .m08-operation-progress-body { grid-template-columns: 112px minmax(0,1fr); gap: 12px; height: auto; min-height: 132px; padding-inline: 0; }
  html body#exam-wallet-app .m08-operation-ring { width: 108px; height: 108px; }
  html body#exam-wallet-app .m08-operation-ring::before { width: 88px; height: 88px; }
  html body#exam-wallet-app .m08-operation-progress-body dl > div { flex-wrap: wrap; gap: 4px 8px; }
  html body#exam-wallet-app .m08-operation-progress-body dd { flex-shrink: 0; }
  html[data-neo-list-density="compact"] body#exam-wallet-app .scv2-opportunity-row { padding-block: 6px !important; }
  html[data-neo-list-density="compact"] body#exam-wallet-app .mobile-timeline-card { padding-top: 7px !important; }
  html[data-neo-list-density="compact"] body#exam-wallet-app .mobile-timeline-cards { gap: 6px !important; }
  html[data-neo-list-density="compact"] body#exam-wallet-app .rv-phone-library-exam { min-height: 52px !important; padding-block: 4px !important; }
  html[data-neo-material-density="compact"] body#exam-wallet-app .m08-operation-item-line { min-height: 64px !important; padding-block: 6px !important; row-gap: 4px !important; }
  html[data-neo-material-density="compact"] body#exam-wallet-app .m08-operation-item-row { min-height: 66px !important; }
  html[data-neo-material-density="compact"] body#exam-wallet-app .m08-operation-list { gap: 6px !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-page :is(.neo-settings-card,.neo-settings-card-body) { height: auto !important; min-height: 0 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-page :is(.neo-settings-account-actions,.neo-settings-split-actions) { position: static !important; margin-top: 16px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-settings-page button:disabled { opacity: .43 !important; cursor: not-allowed; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-note { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--lg-edge); color: #7d718d; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-note strong { display: block; font-size: var(--glass-caption); color: #655276; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-note p { margin: 5px 0 0; font-size: var(--glass-caption); line-height: 1.7; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-sample { padding: 12px; margin-top: 12px; border: 1px dashed #c8badc; border-radius: 14px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-sample strong { font-size: var(--glass-heading); }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-sample p { font-size: var(--glass-reading); margin: 8px 0 0; line-height: 1.6; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-leave > p { font-size: var(--glass-reading); line-height: 1.7; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-leave footer { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-leave footer button { min-height: 44px; min-width: 0; margin: 0; padding-inline: 8px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .glass-settings-leave footer .is-primary { grid-column: 1 / -1; }
  /* Comfortable/compact change spacing without shrinking touch targets. */
  html[data-liquid-glass="on"][data-neo-list-density="compact"] body#exam-wallet-app :is(.neo-task-list,.nx-exam-list,.review-v2-record-list) { gap: 5px !important; }
  html[data-liquid-glass="on"][data-neo-list-density="compact"] body#exam-wallet-app :is(.neo-task-row,.nx-exam-row,.rv-phone-finding,.review-v2-record-list > article) { padding-block: 7px !important; min-height: 60px !important; }
  html[data-liquid-glass="on"][data-neo-list-density="compact"] body#exam-wallet-app .neo-settings-select-row { padding-block: 4px !important; min-height: 48px !important; }
  html[data-liquid-glass="on"][data-neo-material-density="compact"] body#exam-wallet-app .mmw-list { gap: 3px !important; }
  html[data-liquid-glass="on"][data-neo-material-density="compact"] body#exam-wallet-app :is(.mmw-item,.m04-file-row,.material-check-row) { min-height: 54px !important; padding-block: 5px !important; }
  html[data-liquid-glass="on"][data-neo-material-density="compact"] body#exam-wallet-app .mmw-item-icon { width: 34px; height: 34px; }
  /* Flatten layout wrappers only for an explicitly selected alternate priority. */
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page:is([data-preferred-module="tasks"],[data-preferred-module="calendar"]) { display: flex !important; flex-direction: column; gap: 12px; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page:is([data-preferred-module="tasks"],[data-preferred-module="calendar"]) > :is(.neo-center-panel,.neo-right-panel) { display: contents !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page:is([data-preferred-module="tasks"],[data-preferred-module="calendar"]) :is(.neo-center-panel,.neo-right-panel) > * { width: calc(100% - 32px) !important; margin: 0 16px !important; box-sizing: border-box; order: 10; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page .neo-center-panel > .neo-hero { order: 0 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page .neo-center-panel > .neo-mobile-metrics { order: 1 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page .neo-center-panel > .phone-quick-tools { order: 2 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page .neo-center-panel > .phone-opportunity-card { order: 4 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page .neo-center-panel > .neo-journey { order: 5 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page .neo-center-panel > .neo-task-panel { order: 6 !important; }
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page[data-preferred-module="tasks"] .neo-center-panel > .neo-task-panel,
  html[data-liquid-glass="on"] body#exam-wallet-app .neo-home-page[data-preferred-module="calendar"] .neo-right-panel > .neo-mobile-calendar { order: 3 !important; }
}
@media (max-width: 767px) {
  #exam-wallet-app .glass-backup-recovery {
    display: grid;
    gap: 10px;
    margin: 10px 0;
    padding: 14px;
    border: 1px solid #e3d6ba;
    border-radius: 16px;
    background: #fff9ec;
    color: #70522b;
  }
  #exam-wallet-app .glass-backup-recovery p { margin: 0; font-size: 13px; line-height: 1.65; }
  #exam-wallet-app .glass-backup-recovery button {
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid #dbc79c;
    border-radius: 12px;
    color: #624818;
    background: #fff;
    font-size: 14px;
  }
}

/* Phone-only cloud conflict workflow; native dialog retains focus and safe area. */
@media (max-width: 767px) {
  .phone-cloud-conflicts { box-sizing: border-box; width: calc(100% - 24px); max-width: 460px; max-height: calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); margin: auto; padding: 0; overflow: hidden; border: 1px solid #e5def5; border-radius: 24px; background: #fbfaff; color: #332b48; box-shadow: 0 16px 60px #30214426; font: inherit; font-size: 14px; }
  .phone-cloud-conflicts[open] { display: flex; flex-direction: column; }
  html[data-liquid-glass="on"] body#exam-wallet-app dialog.phone-cloud-conflicts { background: rgba(251,250,255,.90) !important; border-radius: 24px !important; -webkit-backdrop-filter: blur(22px) !important; backdrop-filter: blur(22px) !important; }
  .phone-cloud-conflicts::backdrop { background: #28213666; backdrop-filter: blur(4px); }
  .phone-cloud-conflicts * { box-sizing: border-box; min-width: 0; }
  .phone-cloud-conflicts button, .phone-cloud-conflicts select { font: inherit; min-height: 44px; border: 1px solid #e4ddf2; border-radius: 12px; background: white; color: #66519a; padding: 10px 12px; cursor: pointer; }
  .phone-cloud-conflicts button:disabled { opacity: .48; cursor: default; }
  .phone-cloud-conflicts :focus-visible { outline: 2px solid #7b5dcc; outline-offset: 2px; }
  .phone-conflict-heading { display: flex; align-items: center; gap: 10px; padding: 14px 12px; border-bottom: 1px solid #eee8f5; flex: none; }
  .phone-conflict-heading img { flex: none; object-fit: contain; }
  .phone-conflict-heading div { flex: 1; }
  .phone-conflict-heading h2 { font-size: 17px; margin: 4px 0 0; line-height: 1.3; }
  .phone-conflict-heading small { color: #8a799e; font-size: 11px; }
  .phone-conflict-heading button { display: grid; place-items: center; width: 44px; flex: none; font-size: 23px; padding: 0; border: 0; background: #f1edf8; }
  .phone-conflict-body { overflow-y: auto; overscroll-behavior: contain; padding: 0 16px 16px; line-height: 1.6; }
  .phone-conflict-notice { font-size: 12px; color: #746981; }
  .phone-conflict-body [role=status] { font-size: 13px; color: #66519a; }
  .phone-conflict-error { padding: 12px; background: #fff0ed; color: #913e38; border-radius: 12px; }
  .phone-conflict-category { display: grid; gap: 6px; }
  .phone-conflict-category select { width: 100%; font-size: 16px; }
  .phone-conflict-section-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 16px 0 10px; }
  .phone-conflict-section-title h3 { margin: 0; font-size: 15px; }
  .phone-conflict-section-title span { color: #88729e; font-size: 12px; }
  .phone-conflict-versions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .phone-conflict-versions label { position: relative; display: grid; align-content: start; gap: 6px; padding: 12px; border: 1px solid #e6dff1; border-radius: 16px; background: white; cursor: pointer; }
  .phone-conflict-versions .is-selected { border-color: #9374d8; background: #f2edfc; }
  .phone-conflict-versions input { width: 18px; height: 18px; margin: 0 0 2px; accent-color: #7d5dcb; }
  .phone-conflict-versions strong { font-size: 13px; }
  .phone-conflict-versions span { color: #79668d; font-size: 12px; }
  .phone-conflict-versions small { color: #85788f; font-size: 11px; overflow-wrap: anywhere; }
  .phone-cloud-conflicts details { margin-top: 14px; border: 1px solid #e9e2f2; border-radius: 12px; background: white; }
  .phone-cloud-conflicts summary { min-height: 44px; padding: 12px; cursor: pointer; color: #68528f; }
  .phone-conflict-differences article { border-top: 1px solid #eee8f5; padding: 12px; }
  .phone-conflict-differences h4 { overflow-wrap: anywhere; font-size: 12px; margin: 0 0 8px; }
  .phone-conflict-differences article div { display: grid; grid-template-columns: 32px minmax(0,1fr); gap: 8px; font-size: 12px; }
  .phone-conflict-differences article span { color: #9988ab; }
  .phone-conflict-differences pre { font: inherit; white-space: pre-wrap; overflow-wrap: anywhere; margin: 0 0 8px; }
  .phone-conflict-secondary { width: 100%; margin: 12px 0; }
  .phone-conflict-confirm { display: flex; align-items: flex-start; gap: 10px; padding: 8px 0; min-height: 44px; font-size: 12px; }
  .phone-conflict-confirm input { width: 19px; height: 19px; flex: none; margin: 2px 0 0; accent-color: #7d5dcb; }
  .phone-conflict-backups p { padding: 0 12px; font-size: 12px; color: #85768d; }
  .phone-conflict-backups button { display: flex; width: 100%; border-radius: 0; border-width: 1px 0 0; gap: 10px; justify-content: space-between; text-align: left; font-size: 12px; }
  .phone-conflict-backups small { display: block; color: #8f829c; font-size: 11px; }
  .phone-cloud-conflicts footer { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 8px; padding: 12px; background: #fbfaff; border-top: 1px solid #eee8f5; flex: none; }
  .phone-cloud-conflicts footer button { font-size: 12px; }
  .phone-cloud-conflicts .phone-conflict-primary { background: #8061ce; border-color: #8061ce; color: white; }
}
