/**
 * PromXAI Theme 2.0.0-RC6 — brighter navy glass with polished light icons.
 * Single owner for the six-action dock, filters, preferences and search.
 * Phone detail toolbars are owned separately by mobile-detail-toolbar.css.
 */

.px-mobile-app-dock,
.px-mobile-app-controls,
.px-mobile-nav { display: none; }

@media (max-width: 760px) {
  html.px-phone-ui body.promxai-mobile-app-page {
    --px-mobile-app-bg: #173052;
    --px-mobile-app-surface: rgb(29 57 94 / .84);
    --px-mobile-app-surface-solid: #1d395f;
    --px-mobile-app-raised: #284a75;
    --px-mobile-app-soft: rgb(255 255 255 / .070);
    --px-mobile-app-line: rgb(222 232 255 / .11);
    --px-mobile-app-line-strong: rgb(241 246 255 / .18);
    --px-mobile-app-text: #f7faff;
    --px-mobile-app-muted: #b2bfd6;
    --px-mobile-app-accent: #8a7bff;
    --px-mobile-app-accent-soft: rgb(138 123 255 / .18);
    --px-mobile-app-shadow: 0 20px 60px rgb(3 9 24 / .30);
    --px-mobile-app-canvas-paint: radial-gradient(circle at 12% 5%, rgb(70 125 255 / .17), transparent 28%), radial-gradient(circle at 88% 2%, rgb(185 79 255 / .12), transparent 30%), linear-gradient(180deg, #204169 0%, #193656 48%, #142845 100%);
    --px-mobile-app-dock-paint: linear-gradient(180deg, rgb(34 67 108 / .94), rgb(27 52 86 / .94));
    min-height: 100dvh;
    color: var(--px-mobile-app-text);
    background: transparent;
    overscroll-behavior-y: contain;
  }

  html.px-phone-ui[data-theme="light"] body.promxai-mobile-app-page {
    --px-mobile-app-bg: #f5f7fb;
    --px-mobile-app-surface: rgb(255 255 255 / .90);
    --px-mobile-app-surface-solid: #ffffff;
    --px-mobile-app-raised: #f8fbff;
    --px-mobile-app-soft: rgb(45 66 104 / .055);
    --px-mobile-app-line: rgb(85 108 150 / .11);
    --px-mobile-app-line-strong: rgb(72 96 143 / .18);
    --px-mobile-app-text: #17233b;
    --px-mobile-app-muted: #61708f;
    --px-mobile-app-accent: #5c69ea;
    --px-mobile-app-accent-soft: rgb(92 105 234 / .11);
    --px-mobile-app-shadow: 0 18px 44px rgb(70 88 126 / .12);
    --px-mobile-app-canvas-paint: linear-gradient(180deg, #f8fbff 0%, #eef3fb 100%);
    --px-mobile-app-dock-paint: linear-gradient(180deg, rgb(255 255 255 / .96), rgb(244 248 255 / .94));
  }

  /* test256 — Samsung Internet can force-transform CSS colors even for an author dark theme.
     Use image-backed paint only for that browser; ordinary browsers keep the canonical CSS gradients. */
  html.px-samsung-internet.px-phone-ui[data-theme="dark"] body.promxai-mobile-app-page {
    --px-mobile-app-canvas-paint: url("../images/browser-palette-dark-canvas.png");
    --px-mobile-app-dock-paint: url("../images/browser-palette-dark-dock.png");
  }

  html.px-phone-ui body.promxai-mobile-app-page .px-home-mobile-header,
  html.px-phone-ui body.promxai-mobile-app-page .px-header,
  html.px-phone-ui body.promxai-mobile-app-page .px-header__inner,
  html.px-phone-ui body.promxai-mobile-app-page > .px-footer,
  html.px-phone-ui body.promxai-mobile-app-page > .px-mobile-nav,
  html.px-phone-ui body.promxai-mobile-app-page > .px-unified-floating-dock { display: none !important; }

  html.px-phone-ui body.promxai-mobile-app-page.px-mobile-app-sheet-open {
    overflow: hidden;
    touch-action: none;
  }

  /* test229 — the global dock stays visible and interactive while Filters / Quick Access is open.
   * The sheet panel already reserves the dock footprint, so raising the existing dock is the clean owner fix. */
  html.px-phone-ui body.promxai-mobile-app-page.px-mobile-app-sheet-open .px-mobile-app-dock {
    z-index: 1500;
  }

  html.px-phone-ui body.promxai-mobile-app-page .px-mobile-app-dock {
    position: fixed;
    z-index: 1200;
    right: 12px;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    left: 12px;
    width: min(calc(100% - 24px), 560px);
    min-height: 72px;
    margin-inline: auto;
    padding: 7px;
    border: 1px solid var(--px-mobile-app-line);
    border-radius: 25px;
    display: grid !important;
    grid-template-columns: repeat(var(--px-mobile-dock-count, 6), minmax(0, 1fr));
    align-items: stretch;
    gap: 2px;
    color: var(--px-mobile-app-muted);
    background: var(--px-mobile-app-dock-paint);
    box-shadow: var(--px-mobile-app-shadow), 0 0 0 1px rgb(255 255 255 / .03), inset 0 1px 0 rgb(255 255 255 / .11);
    -webkit-backdrop-filter: blur(24px) saturate(120%);
    backdrop-filter: blur(24px) saturate(120%);
  }

  html.px-phone-ui .px-mobile-app-dock > :is(a, button) {
    position: relative;
    min-width: 0;
    min-height: 56px;
    padding: 6px 1px 8px;
    border: 0;
    border-radius: 18px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 3px;
    color: inherit;
    background: transparent;
    text-decoration: none;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  html.px-phone-ui .px-mobile-app-dock > :is(a, button)::after {
    content: "";
    position: absolute;
    right: 50%;
    bottom: 3px;
    width: 0;
    height: 3px;
    border-radius: 999px;
    background: var(--px-mobile-app-text);
    transform: translateX(50%);
    opacity: 0;
    transition: width .18s ease, opacity .18s ease;
  }

  html.px-phone-ui .px-mobile-app-dock > :is(a, button).is-active,
  html.px-phone-ui .px-mobile-app-dock > :is(a, button)[aria-expanded="true"] {
    color: var(--px-mobile-app-text);
    background: linear-gradient(180deg, rgb(255 255 255 / .08), rgb(255 255 255 / .04));
  }

  html.px-phone-ui .px-mobile-app-dock > :is(a, button).is-active::after,
  html.px-phone-ui .px-mobile-app-dock > :is(a, button)[aria-expanded="true"]::after {
    width: 20px;
    opacity: 1;
  }

  html.px-phone-ui .px-mobile-app-dock > :is(a, button):active { transform: scale(.95); }

  html.px-phone-ui .px-mobile-app-dock__icon {
    position: relative;
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
  }

  html.px-phone-ui .px-mobile-app-dock__icon :is(.px-icon, svg) { width: 23px; height: 23px; }
  html.px-phone-ui .px-mobile-app-dock__avatar { width: 28px; height: 28px; display:grid; place-items:center; overflow:hidden; border-radius:50%; }
  html.px-phone-ui .px-mobile-app-dock__avatar img { width:100%; height:100%; object-fit:cover; display:block; }
  html.px-phone-ui .px-mobile-app-dock__label { max-width: 100%; overflow: hidden; color: currentColor; font-size: 9px; font-weight: 820; line-height: 1.05; text-overflow: ellipsis; white-space: nowrap; }

  html.px-phone-ui .px-mobile-app-dock [data-favorites-count] {
    position: absolute;
    top: -2px;
    inset-inline-end: -3px;
    min-width: 16px;
    height: 16px;
    padding-inline: 4px;
    border: 2px solid var(--px-mobile-app-surface-solid);
    border-radius: 999px;
    display: grid;
    place-items: center;
    color: #fff;
    background: #e44f6d;
    font-size: 7px;
    font-weight: 900;
    line-height: 1;
  }

  html.px-phone-ui body.promxai-mobile-app-page .px-mobile-app-controls { display: block !important; }

  html.px-phone-ui .px-mobile-app-sheet {
    position: fixed;
    z-index: 1400;
    inset: 0;
    display: grid;
    align-items: end;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease, visibility .22s ease;
  }

  html.px-phone-ui .px-mobile-app-sheet[aria-hidden="true"] { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
  html.px-phone-ui .px-mobile-app-sheet.is-open { visibility: visible; opacity: 1; pointer-events: auto; }

  html.px-phone-ui .px-mobile-app-sheet__backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgb(5 6 9 / .44);
    -webkit-backdrop-filter: blur(10px) saturate(90%);
    backdrop-filter: blur(10px) saturate(90%);
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__backdrop { background: rgb(47 43 37 / .22); }

  html.px-phone-ui .px-mobile-app-sheet__panel {
    position: relative;
    z-index: 1;
    width: min(calc(100% - 12px), 620px);
    max-height: min(91dvh, 820px);
    margin: 0 auto 6px;
    padding: 8px 14px calc(18px + env(safe-area-inset-bottom, 0px));
    border: 1px solid var(--px-mobile-app-line-strong);
    border-radius: 30px;
    color: var(--px-mobile-app-text);
    background: linear-gradient(180deg, rgb(30 50 84 / .96), rgb(24 41 70 / .92));
    background: color-mix(in srgb, var(--px-mobile-app-surface-solid) 92%, transparent);
    box-shadow: 0 -20px 64px rgb(3 9 24 / .30), 0 0 0 1px rgb(255 255 255 / .04), inset 0 1px 0 rgb(255 255 255 / .10);
    overflow: hidden;
    transform: translateY(28px) scale(.985);
    transition: transform .24s cubic-bezier(.2,.75,.2,1);
    -webkit-backdrop-filter: blur(28px) saturate(120%);
    backdrop-filter: blur(28px) saturate(120%);
  }

  html.px-phone-ui .px-mobile-app-sheet.is-open .px-mobile-app-sheet__panel { transform: none; }
  html.px-phone-ui .px-mobile-app-sheet__handle { width: 38px; height: 4px; margin: 2px auto 5px; border-radius: 999px; display: block; background: var(--px-mobile-app-line-strong); }

  html.px-phone-ui .px-mobile-app-sheet__head {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid var(--px-mobile-app-line);
  }

  html.px-phone-ui .px-mobile-app-sheet__eyebrow { display: none; }
  html.px-phone-ui .px-mobile-app-sheet__title-wrap { min-width:0; display:flex; align-items:center; }
  html.px-phone-ui .px-mobile-app-sheet__head h2 { margin: 0; color: var(--px-mobile-app-text); font-size: 16px; font-weight: 850; letter-spacing: var(--px-heading-tracking, 0); }

  html.px-phone-ui .px-mobile-app-sheet__close {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border: 1px solid var(--px-mobile-app-line);
    border-radius: 14px;
    display: grid;
    place-items: center;
    color: var(--px-mobile-app-muted);
    background: linear-gradient(180deg, rgb(255 255 255 / .08), rgb(255 255 255 / .04));
  }
  html.px-phone-ui .px-mobile-app-sheet__close .px-icon { width: 17px; height: 17px; }

  html.px-phone-ui .px-mobile-app-sheet__body {
    max-height: calc(min(91dvh, 820px) - 68px - env(safe-area-inset-bottom, 0px));
    padding: 10px 1px 4px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: none;
  }
  html.px-phone-ui .px-mobile-app-sheet__body::-webkit-scrollbar { display: none; }

  html.px-phone-ui .px-mobile-app-preferences {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 12px;
  }

  html.px-phone-ui .px-mobile-app-preference {
    position: relative;
    min-width: 0;
    min-height: 58px;
    padding: 6px 4px;
    border: 1px solid var(--px-mobile-app-line);
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    color: var(--px-mobile-app-text);
    background: linear-gradient(180deg, rgb(255 255 255 / .08), rgb(255 255 255 / .04));
    text-align: center;
  }

  html.px-phone-ui .px-mobile-app-preference__icon {
    width: 30px;
    height: 30px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: var(--px-mobile-app-text);
    background: var(--px-mobile-app-raised);
  }
  html.px-phone-ui .px-mobile-app-preference__icon .px-icon { width: 15px; height: 15px; }
  html.px-phone-ui .px-mobile-app-preference__icon--theme { position: relative; }
  html.px-phone-ui .px-mobile-app-preference__copy { min-width: 0; display: grid; gap: 1px; justify-items: center; }
  html.px-phone-ui .px-mobile-app-preference__copy strong { max-width: 100%; overflow: hidden; font-size: 9px; font-weight: 850; line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }
  html.px-phone-ui .px-mobile-app-preference__copy small { display: none; }
  html.px-phone-ui .px-mobile-app-preference > b {
    position: absolute;
    top: 5px;
    inset-inline-end: 6px;
    min-width: 18px;
    color: var(--px-mobile-app-accent);
    font-size: 8px;
    font-weight: 900;
    line-height: 1;
  }
  html.px-phone-ui .px-mobile-app-preference--search .px-mobile-app-preference__icon {
    color: #fff;
    background: linear-gradient(135deg, #2f78f6, #7657eb);
    box-shadow: 0 7px 16px rgba(72, 78, 222, .16), inset 0 1px 0 rgba(255,255,255,.18);
  }

  html[data-theme="dark"] .px-mobile-app-preference__icon--theme .px-theme-icon--sun,
  html[data-theme="light"] .px-mobile-app-preference__icon--theme .px-theme-icon--moon { display: none; }
  html[data-theme="dark"] .px-mobile-app-preference__icon--theme .px-theme-icon--moon,
  html[data-theme="light"] .px-mobile-app-preference__icon--theme .px-theme-icon--sun { display: grid; }

  html.px-phone-ui .px-mobile-app-filter-group + .px-mobile-app-filter-group { margin-top: 14px; }
  html.px-phone-ui .px-mobile-app-filter-group h3,
  html.px-phone-ui .px-mobile-app-filter-group__title h3 { margin: 0 0 7px; color: var(--px-mobile-app-text); font-size: 11.5px; font-weight: 850; }
  html.px-phone-ui .px-mobile-app-filter-group__title { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  html.px-phone-ui .px-mobile-app-filter-group__title small { min-width: 28px; height: 24px; border-radius: 999px; display: grid; place-items: center; color: var(--px-mobile-app-muted); background: var(--px-mobile-app-soft); font-size: 9px; }

  html.px-phone-ui .px-mobile-app-choice-grid { display: grid; gap: 7px; }
  html.px-phone-ui .px-mobile-app-choice-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  html.px-phone-ui .px-mobile-app-choice-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.px-phone-ui .px-mobile-app-choice-grid--library { grid-template-columns: repeat(3, minmax(0, 1fr)); }

  html.px-phone-ui .px-mobile-app-choice-grid > :is(button, a) {
    position: relative;
    min-width: 0;
    min-height: 62px;
    padding: 8px 5px;
    border: 1px solid var(--px-mobile-app-line);
    border-radius: 17px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 4px;
    color: var(--px-mobile-app-muted);
    background: linear-gradient(180deg, rgb(255 255 255 / .08), rgb(255 255 255 / .04));
    text-align: center;
    text-decoration: none;
    font: inherit;
  }
  html.px-phone-ui .px-mobile-app-choice-grid > :is(button, a) > .px-icon { width: 18px; height: 18px; }
  html.px-phone-ui .px-mobile-app-choice-grid > :is(button, a) > span { min-width: 0; overflow: hidden; font-size: 9.5px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
  html.px-phone-ui .px-mobile-app-choice-grid > :is(button, a) > small { position: absolute; top: 6px; inset-inline-end: 7px; min-width: 19px; height: 19px; border-radius: 999px; display: grid; place-items: center; color: var(--px-mobile-app-muted); background: var(--px-mobile-app-raised); font-size: 7px; font-weight: 850; }
  html.px-phone-ui .px-mobile-app-choice-grid > :is(button, a).is-active { color: var(--px-mobile-app-text); border-color: color-mix(in srgb, var(--px-mobile-app-accent) 55%, var(--px-mobile-app-line)); background: var(--px-mobile-app-accent-soft); box-shadow: inset 0 0 0 1px rgb(125 108 255 / .12); }
  html.px-phone-ui .px-mobile-app-choice-grid > :is(button, a).is-active::after { content: ""; position: absolute; bottom: 7px; width: 18px; height: 3px; border-radius: 999px; background: var(--px-mobile-app-accent); }

  html.px-phone-ui .px-mobile-app-category-list { display: grid; gap: 6px; }
  html.px-phone-ui .px-mobile-app-category-list > :is(button, a) {
    position: relative;
    width: 100%;
    min-height: 46px;
    padding: 7px 13px;
    border: 1px solid var(--px-mobile-app-line);
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--px-mobile-app-muted);
    background: linear-gradient(180deg, rgb(255 255 255 / .08), rgb(255 255 255 / .04));
    text-align: start;
    text-decoration: none;
    font: inherit;
    font-size: 11px;
    font-weight: 750;
  }
  html.px-phone-ui .px-mobile-app-category-list > :is(button, a)::before { content: ""; position: absolute; inset-inline-start: 6px; top: 50%; width: 3px; height: 0; border-radius: 999px; background: var(--px-mobile-app-accent); transform: translateY(-50%); transition: height .18s ease; }
  html.px-phone-ui .px-mobile-app-category-list > :is(button, a).is-active { color: var(--px-mobile-app-text); border-color: color-mix(in srgb, var(--px-mobile-app-accent) 40%, var(--px-mobile-app-line)); background: var(--px-mobile-app-accent-soft); font-weight: 850; }
  html.px-phone-ui .px-mobile-app-category-list > :is(button, a).is-active::before { height: 25px; }
  html.px-phone-ui .px-mobile-app-category-list small { min-width: 27px; height: 24px; border-radius: 999px; display: grid; place-items: center; color: var(--px-mobile-app-muted); background: var(--px-mobile-app-raised); font-size: 8px; font-weight: 800; }

  html.px-phone-ui .px-mobile-app-sheet--search { align-items: end; }
  html.px-phone-ui .px-mobile-app-sheet--search .px-mobile-app-sheet__panel { max-height: 330px; margin-bottom: calc(92px + env(safe-area-inset-bottom, 0px)); }

  html.px-phone-ui .px-mobile-app-search {
    margin-top: 16px;
    padding: 6px;
    border: 1px solid var(--px-mobile-app-line-strong);
    border-radius: 20px;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: 6px;
    background: rgb(27 30 36 / .72);
    background: color-mix(in srgb, var(--px-mobile-app-raised) 68%, transparent);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / .045);
  }
  html.px-phone-ui .px-mobile-app-search__icon { width: 38px; height: 38px; border-radius: 13px; display: grid; place-items: center; color: var(--px-mobile-app-muted); background: var(--px-mobile-app-soft); }
  html.px-phone-ui .px-mobile-app-search__icon .px-icon { width: 19px; height: 19px; }
  html.px-phone-ui .px-mobile-app-search input { width: 100%; min-width: 0; min-height: 46px; padding: 0 5px; border: 0; outline: 0; color: var(--px-mobile-app-text); background: transparent; font: inherit; font-size: 16px; }
  html.px-phone-ui .px-mobile-app-search input::placeholder { color: color-mix(in srgb, var(--px-mobile-app-muted) 78%, transparent); }
  html.px-phone-ui .px-mobile-app-search button { min-height: 44px; padding: 0 13px; border: 0; border-radius: 14px; display: inline-flex; align-items: center; gap: 5px; color: #fff; background: linear-gradient(135deg, #327fff, #8a51ea); font: inherit; font-size: 10px; font-weight: 850; box-shadow: 0 8px 20px rgb(70 92 230 / .22); }
  html.px-phone-ui .px-mobile-app-search button .px-icon { width: 15px; height: 15px; }
  html[dir="rtl"].px-phone-ui .px-mobile-app-search button .px-icon { transform: rotate(180deg); }
  html.px-phone-ui .px-mobile-app-search__hint { margin: 10px 5px 0; color: var(--px-mobile-app-muted); font-size: 9px; line-height: 1.6; }

}



  html.px-phone-ui[data-theme="light"] body.promxai-mobile-app-page .px-mobile-app-dock {
    color: var(--px-mobile-app-muted);
    background: linear-gradient(180deg, rgb(255 255 255 / .93), rgb(244 248 255 / .88));
    box-shadow: 0 18px 42px rgb(95 117 165 / .14), 0 0 0 1px rgb(255 255 255 / .65), inset 0 1px 0 rgb(255 255 255 / .85);
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-dock > :is(a, button).is-active,
  html.px-phone-ui[data-theme="light"] .px-mobile-app-dock > :is(a, button)[aria-expanded="true"] {
    color: #14213a;
    background: linear-gradient(180deg, rgb(230 238 255 / .95), rgb(220 232 255 / .88));
    box-shadow: inset 0 0 0 1px rgb(96 126 255 / .14), 0 8px 18px rgb(94 116 168 / .10);
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-dock__label {
    color: currentColor;
    font-weight: 820;
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-preference,
  html.px-phone-ui[data-theme="light"] .px-mobile-app-choice-grid > :is(button, a),
  html.px-phone-ui[data-theme="light"] .px-mobile-app-category-list > :is(button, a) {
    background: linear-gradient(180deg, rgb(255 255 255 / .96), rgb(246 249 255 / .92));
    box-shadow: 0 10px 24px rgb(90 110 150 / .08), inset 0 1px 0 rgb(255 255 255 / .9);
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-preference__icon,
  html.px-phone-ui[data-theme="light"] .px-mobile-app-choice-grid > :is(button, a) > small,
  html.px-phone-ui[data-theme="light"] .px-mobile-app-category-list small,
  html.px-phone-ui[data-theme="light"] .px-mobile-app-search__icon {
    background: linear-gradient(180deg, #ffffff, #f0f5ff);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / .92), 0 6px 14px rgb(90 112 154 / .08);
    color: #536685;
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__panel {
    background: linear-gradient(180deg, rgb(255 255 255 / .96), rgb(248 251 255 / .94));
    box-shadow: 0 -10px 48px rgb(92 111 152 / .12), 0 0 0 1px rgb(255 255 255 / .82), inset 0 1px 0 rgb(255 255 255 / .9);
  }

  html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__close {
    background: linear-gradient(180deg, #fff, #f3f7ff);
    color: #5d6f8d;
    box-shadow: inset 0 1px 0 rgb(255 255 255 / .92), 0 8px 18px rgb(92 111 152 / .08);
  }

@media (max-width: 370px) {
  html.px-phone-ui .px-mobile-app-dock { right: 7px; left: 7px; width: calc(100% - 14px); padding-inline: 4px; }
  html.px-phone-ui .px-mobile-app-dock__label { font-size: 8.5px; }
  html.px-phone-ui .px-mobile-app-dock__icon :is(.px-icon, svg) { width: 21px; height: 21px; }
  html.px-phone-ui .px-mobile-app-choice-grid--library { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.px-phone-ui .px-mobile-app-preferences { gap: 6px; }
  html.px-phone-ui .px-mobile-app-preference { min-height: 54px; padding-inline: 3px; }
  html.px-phone-ui .px-mobile-app-preference__icon { width: 28px; height: 28px; }
  html.px-phone-ui .px-mobile-app-preference__copy strong { font-size: 8.5px; }
  html.px-phone-ui .px-mobile-app-preference > b { top: 6px; inset-inline-end: 6px; font-size: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  .px-mobile-app-sheet,
  .px-mobile-app-sheet__panel,
  .px-mobile-app-dock > :is(a, button),
  .px-mobile-app-category-list > :is(button, a)::before { transition: none !important; }
}

@keyframes pxChronologyMobileNudge {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(12deg) scale(1.12); }
  100% { transform: rotate(0deg) scale(1); }
}

/* ========================================================================
   PromXAI Theme 2.0.0-RC41 — animated chronology clock
   The label states the active order; the clock itself performs the switch cue.
   ======================================================================== */
@keyframes pxChronologyMobileClock {
  0% { transform: rotate(0deg) scale(1); filter: drop-shadow(0 0 0 transparent); }
  42% { transform: rotate(220deg) scale(1.12); filter: drop-shadow(0 0 8px rgb(118 91 255 / .45)); }
  100% { transform: rotate(360deg) scale(1); filter: drop-shadow(0 0 0 transparent); }
}
@media (max-width: 1049px) {
  html.px-phone-ui .px-mobile-app-choice-grid > button[data-mobile-chronology] { position: relative; }
  html.px-phone-ui .px-mobile-app-choice-grid > button[data-mobile-chronology] > .px-icon {
    width: 34px; height: 34px; padding: 6px; border-radius: 999px;
    color: #fff; background: linear-gradient(145deg, rgb(65 138 255 / .90), rgb(132 82 244 / .94));
    box-shadow: 0 7px 18px rgb(71 92 213 / .22), inset 0 0 0 1px rgb(255 255 255 / .17);
    transform-origin: 50% 50%;
  }
  html.px-phone-ui .px-mobile-app-choice-grid > button[data-mobile-chronology] .px-chronology-label-wrap {
    display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;
  }
  html.px-phone-ui .px-mobile-app-choice-grid > button[data-mobile-chronology].is-chronology-switching > .px-icon {
    animation: pxChronologyMobileClock .52s cubic-bezier(.2,.8,.2,1) both;
  }
  html[data-theme="light"].px-phone-ui .px-mobile-app-choice-grid > button[data-mobile-chronology] > .px-icon {
    box-shadow: 0 7px 18px rgb(59 83 177 / .18), inset 0 0 0 1px rgb(255 255 255 / .38);
  }
}
@media (prefers-reduced-motion: reduce) {
  html.px-phone-ui .px-mobile-app-choice-grid > button[data-mobile-chronology].is-chronology-switching > .px-icon { animation:none !important; }
}


/* ========================================================================
   PromXAI Theme 2.0.0-RC73 — cross-browser phone shell + service trio owner.
   Browser color-scheme ownership is canonical in theme-color-system.css.
   This file owns only the phone dock fallback and the balanced
   Explain / PRO / About three-card row.
   ======================================================================== */
@media (max-width:760px) {
  html.px-phone-ui[data-theme="dark"] body.promxai-mobile-app-page .px-mobile-app-dock {
    background-color:#1d395f !important;
    background-image:var(--px-mobile-app-dock-paint) !important;
    background-repeat:repeat !important;
    background-size:100% 100% !important;
    border-color:rgba(222,232,255,.13) !important;
  }
  html.px-phone-ui[data-theme="light"] body.promxai-mobile-app-page .px-mobile-app-dock {
    background-color:#f8fbff !important;
    background-image:var(--px-mobile-app-dock-paint) !important;
  }

  html.px-phone-ui .px-mobile-app-preferences {
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  html.px-phone-ui .px-mobile-app-preferences > .px-mobile-app-preference {
    grid-column:span 2;
  }
  html.px-phone-ui .px-mobile-app-service-trio {
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
  }
  html.px-phone-ui .px-mobile-app-service-trio > .px-mobile-app-preference {
    width:100%;
    min-width:0;
  }
  html.px-phone-ui :is(.px-mobile-app-preference--explain,.px-mobile-app-preference--pro,.px-mobile-app-preference--info,.px-mobile-app-preference--contact) {
    grid-column:auto !important;
    min-height:78px;
    padding:9px 4px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    text-align:center;
  }
  html.px-phone-ui :is(.px-mobile-app-preference--explain,.px-mobile-app-preference--pro,.px-mobile-app-preference--info,.px-mobile-app-preference--contact) .px-mobile-app-preference__icon {
    width:38px;
    height:38px;
    min-width:38px;
    border-radius:12px;
  }
  
  html.px-phone-ui .px-mobile-app-preference--contact .px-mobile-app-preference__icon {
    color:#fff;
    background:linear-gradient(135deg,#16a7c8,#4e7dec 56%,#7657eb);
    box-shadow:0 8px 18px rgba(46,126,210,.16),inset 0 1px 0 rgba(255,255,255,.20);
  }
html.px-phone-ui .px-mobile-app-preference--pro .px-mobile-app-preference__icon {
    color:#fff;
    background:linear-gradient(135deg,#2f78f6 0%,#7657eb 58%,#a84dd4 100%);
    box-shadow:0 8px 18px rgba(89,74,226,.18),inset 0 1px 0 rgba(255,255,255,.20);
  }
  html.px-phone-ui .px-mobile-app-preference--pro .px-mobile-app-preference__icon .px-icon {
    width:19px;
    height:19px;
  }
  html.px-phone-ui :is(.px-mobile-app-preference--explain,.px-mobile-app-preference--pro,.px-mobile-app-preference--info,.px-mobile-app-preference--contact) .px-mobile-app-preference__copy {
    width:100%;
    display:grid;
    justify-items:center;
    text-align:center;
  }
  html.px-phone-ui :is(.px-mobile-app-preference--explain,.px-mobile-app-preference--pro,.px-mobile-app-preference--info,.px-mobile-app-preference--contact) .px-mobile-app-preference__copy strong {
    font-size:9.5px;
    line-height:1.15;
  }
  html.px-phone-ui :is(.px-mobile-app-preference--explain,.px-mobile-app-preference--pro,.px-mobile-app-preference--info,.px-mobile-app-preference--contact) .px-mobile-app-preference__copy small,
  html.px-phone-ui :is(.px-mobile-app-preference--explain,.px-mobile-app-preference--pro,.px-mobile-app-preference--info,.px-mobile-app-preference--contact) .px-mobile-app-preference__chevron,
  html.px-phone-ui .px-mobile-app-preference--explain .px-mobile-app-preference__micro {
    display:none !important;
  }
}



/* 2.0.21-test51 — Studio dock parity: no permanent glow. */
html.px-phone-ui .px-mobile-app-dock>a[href*="/create/"]:not(.is-active){color:inherit!important;background:transparent!important;box-shadow:none!important}
html.px-phone-ui .px-mobile-app-dock>a[href*="/create/"]:not(.is-active) .px-mobile-app-dock__icon{color:inherit!important;background:transparent!important;box-shadow:none!important}
html.px-phone-ui .px-mobile-app-dock>a[href*="/create/"].is-active{color:#fff!important;background:linear-gradient(180deg,rgb(111 76 232 / .24),rgb(104 66 218 / .11))!important}
html.px-phone-ui .px-mobile-app-dock>a[href*="/create/"].is-active .px-mobile-app-dock__icon{color:#fff!important}

.px-feature-soon{display:inline-flex;margin-inline-start:3px;padding:1px 4px;border-radius:999px;background:rgb(91 95 255/.10);border:1px solid rgb(104 211 255/.18);color:var(--px-muted);font-size:8.5px;font-style:normal;font-weight:900;line-height:1.15;white-space:nowrap}


/* 2.0.21-test224 — canonical phone dock order + dynamic Studio slot + mobile Categories dialog. */
@media (max-width:760px){
  html.px-phone-ui .px-mobile-app-dock.is-seven-items{gap:1px;padding-inline:4px}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items > :is(a,button){min-height:56px;padding-inline:0}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items .px-mobile-app-dock__icon{width:28px;height:28px}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items .px-mobile-app-dock__icon :is(.px-icon,svg){width:20px;height:20px}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items .px-mobile-app-dock__avatar{width:26px;height:26px}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items .px-mobile-app-dock__label{font-size:8.6px;line-height:1.04;letter-spacing:var(--px-heading-tracking,0)}

  html.px-phone-ui .px-dock-category-dialog[open]{
    position:fixed;
    inset:auto 8px calc(92px + env(safe-area-inset-bottom,0px)) 8px;
    width:min(calc(100% - 16px),620px);
    max-width:none;
    max-height:calc(100dvh - 116px - env(safe-area-inset-bottom,0px));
    margin:0 auto;
    padding:0;
    border:1px solid var(--px-mobile-app-line-strong);
    border-radius:26px;
    color:var(--px-mobile-app-text);
    background:linear-gradient(180deg,rgb(30 50 84 / .98),rgb(23 40 68 / .98));
    box-shadow:0 24px 70px rgb(2 8 23 / .42),inset 0 1px 0 rgb(255 255 255 / .09);
    overflow:hidden;
    direction:rtl;
  }
  html.px-phone-ui[data-ui-lang="en"] .px-dock-category-dialog[open]{direction:ltr}
  html.px-phone-ui[data-theme="light"] .px-dock-category-dialog[open]{color:var(--px-mobile-app-text);background:linear-gradient(180deg,#fff,#f3f7fc);border-color:var(--px-mobile-app-line-strong)}
  html.px-phone-ui .px-dock-category-dialog::backdrop{background:rgb(2 8 20 / .52);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
  html.px-phone-ui .px-dock-category-dialog__panel{padding:13px 13px 15px}
  html.px-phone-ui .px-dock-category-dialog__head{min-height:54px;padding:0 1px 11px;border-bottom:1px solid var(--px-mobile-app-line);display:flex;align-items:center;justify-content:space-between;gap:12px}
  html.px-phone-ui .px-dock-category-dialog__head>div{min-width:0;display:grid;gap:3px}
  html.px-phone-ui .px-dock-category-dialog__head strong{font-size:16px;font-weight:900}
  html.px-phone-ui .px-dock-category-dialog__head small{color:var(--px-mobile-app-muted);font-size:9.5px;font-weight:750}
  html.px-phone-ui .px-dock-category-dialog__head>button{width:44px;height:44px;min-width:44px;padding:0;border:1px solid var(--px-mobile-app-line);border-radius:14px;display:grid;place-items:center;color:var(--px-mobile-app-text);background:var(--px-mobile-app-soft)}
  html.px-phone-ui .px-dock-category-dialog__head>button .px-icon{width:18px;height:18px}
  html.px-phone-ui .px-dock-category-dialog__grid{max-height:calc(100dvh - 205px - env(safe-area-inset-bottom,0px));padding:11px 1px 1px;display:grid;grid-template-columns:1fr;gap:7px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
  html.px-phone-ui .px-dock-category-dialog__grid::-webkit-scrollbar{display:none}
  html.px-phone-ui .px-dock-category-dialog__grid>a{min-height:54px;padding:7px 10px;border:1px solid var(--px-mobile-app-line);border-radius:16px;display:grid;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:10px;color:var(--px-mobile-app-text);background:var(--px-mobile-app-soft);text-decoration:none}
  html.px-phone-ui .px-dock-category-dialog__grid>a>span{width:38px;height:38px;border:1px solid rgb(142 161 255 / .14);border-radius:12px;display:grid;place-items:center;color:#d9ddff;background:linear-gradient(135deg,rgb(73 142 255 / .17),rgb(126 89 255 / .20))}
  html.px-phone-ui .px-dock-category-dialog__grid>a>span .px-icon{width:18px;height:18px}
  html.px-phone-ui .px-dock-category-dialog__grid b{min-width:0;font-size:12px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html.px-phone-ui .px-dock-category-dialog__grid small{min-width:30px;height:26px;padding:0 6px;border-radius:999px;display:grid;place-items:center;color:var(--px-mobile-app-muted);background:var(--px-mobile-app-raised);font-size:8px;font-weight:900}
}
@media(max-width:390px){
  html.px-phone-ui .px-mobile-app-dock.is-seven-items{right:5px;left:5px;width:calc(100% - 10px);padding:5px 2px}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items .px-mobile-app-dock__label{font-size:8.2px}
  html.px-phone-ui .px-mobile-app-dock.is-seven-items .px-mobile-app-dock__icon :is(.px-icon,svg){width:19px;height:19px}
}


/* ========================================================================
   PromXAI 2.0.21-test226 — compact contextual mobile command sheet.
   Replaces test225 owner: one top utility row, compact browse controls, and
   context-aware Quick Access for Account / Studio. No legacy Categories UI.
   ======================================================================== */
@media (max-width:760px) {
  /* test228 — the filter/quick-access sheet owns a reserved dock-safe zone. It must never render behind the persistent app dock. */
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-sheet__panel{width:min(calc(100% - 12px),620px);max-height:min(calc(100dvh - 112px - env(safe-area-inset-bottom,0px)),840px);margin-bottom:calc(92px + env(safe-area-inset-bottom,0px));padding:8px 11px 15px;border-radius:27px}
  /* test229 — the utility cluster is a physical-left phone control and never mirrors with AR/EN. */
  html.px-phone-ui .px-mobile-app-sheet__head--filters{min-height:57px;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"utilities title";align-items:center;gap:8px;padding-bottom:7px;direction:ltr}
  html.px-phone-ui .px-mobile-app-sheet__head--filters .px-mobile-app-sheet__title-wrap{grid-area:title;min-width:0;display:flex}
  html[dir="rtl"].px-phone-ui .px-mobile-app-sheet__head--filters .px-mobile-app-sheet__title-wrap{direction:rtl;justify-content:flex-end;text-align:right}
  html[dir="ltr"].px-phone-ui .px-mobile-app-sheet__head--filters .px-mobile-app-sheet__title-wrap{direction:ltr;justify-content:flex-start;text-align:left}
  html.px-phone-ui .px-mobile-app-sheet__head--filters h2{font-size:17px;white-space:nowrap;text-align:inherit}
  html.px-phone-ui .px-mobile-app-sheet__utilities{grid-area:utilities;display:flex;align-items:center;gap:5px;direction:ltr}/* physical order: Close → Language → Appearance → Search */
  html.px-phone-ui .px-mobile-app-sheet__utility,html.px-phone-ui .px-mobile-app-sheet__head--filters .px-mobile-app-sheet__close{position:relative;width:44px;height:44px;min-width:44px;padding:0;border:1px solid var(--px-mobile-app-line);border-radius:13px;display:grid;place-items:center;color:var(--px-mobile-app-text);background:linear-gradient(180deg,rgb(255 255 255 / .09),rgb(255 255 255 / .045));box-shadow:inset 0 1px 0 rgb(255 255 255 / .06);-webkit-tap-highlight-color:transparent}
  html.px-phone-ui .px-mobile-app-sheet__utility .px-icon,html.px-phone-ui .px-mobile-app-sheet__head--filters .px-mobile-app-sheet__close .px-icon{width:18px;height:18px}
  html.px-phone-ui .px-mobile-app-sheet__utility--search{color:#fff;border-color:rgb(109 144 255 / .23);background:linear-gradient(135deg,#238ee9,#675fee 58%,#b450d2)}
  html.px-phone-ui .px-mobile-app-sheet__utility--lang{display:grid;place-items:center}
  html.px-phone-ui .px-mobile-app-sheet__utility--lang small{display:none}
  html.px-phone-ui .px-mobile-app-sheet__utility .px-theme-icon{width:19px;height:19px;display:grid;place-items:center}
  html.px-phone-ui[data-theme="dark"] .px-mobile-app-sheet__utility .px-theme-icon--sun,html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__utility .px-theme-icon--moon{display:none}
  html.px-phone-ui[data-theme="dark"] .px-mobile-app-sheet__utility .px-theme-icon--moon,html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__utility .px-theme-icon--sun{display:grid}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-sheet__body{max-height:calc(min(calc(100dvh - 112px - env(safe-area-inset-bottom,0px)),840px) - 73px);padding:9px 1px 5px}
  html.px-phone-ui .px-mobile-app-services{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:14px}
  html.px-phone-ui .px-mobile-app-service-card,html.px-phone-ui .px-mobile-app-service-card:nth-child(-n+3),html.px-phone-ui .px-mobile-app-service-card:nth-child(n+4){grid-column:auto;min-width:0;min-height:64px;padding:6px 3px;border:1px solid var(--px-mobile-app-line);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--px-mobile-app-text);background:linear-gradient(180deg,rgb(255 255 255 / .08),rgb(255 255 255 / .035));text-align:center;text-decoration:none;font:inherit;box-shadow:inset 0 1px 0 rgb(255 255 255 / .035)}
  html.px-phone-ui .px-mobile-app-service-card>span{width:31px;height:31px;min-width:31px;border:1px solid rgb(127 160 255 / .14);border-radius:10px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2b82ef,#7059ef 58%,#a34ed1);box-shadow:0 6px 14px rgb(65 75 205 / .14),inset 0 1px 0 rgb(255 255 255 / .16)}
  html.px-phone-ui .px-mobile-app-service-card>span .px-icon{width:16px;height:16px}
  html.px-phone-ui .px-mobile-app-service-card.is-contact>span{background:linear-gradient(135deg,#18a4c4,#4d7fe8 58%,#7557e7)}
  html.px-phone-ui .px-mobile-app-service-card.is-pro>span{background:linear-gradient(135deg,#5a64ef,#8954ec 58%,#bf50cc)}
  html.px-phone-ui .px-mobile-app-service-card strong{max-width:100%;color:inherit;font-size:8.6px;font-weight:900;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.px-phone-ui .px-mobile-app-quick-access{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
  html.px-phone-ui .px-mobile-app-quick-access__item{min-width:0;min-height:68px;padding:7px 3px;border:1px solid var(--px-mobile-app-line);border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--px-mobile-app-text);background:linear-gradient(180deg,rgb(255 255 255 / .08),rgb(255 255 255 / .035));text-decoration:none;text-align:center}
  html.px-phone-ui .px-mobile-app-quick-access__item>span{width:33px;height:33px;border:1px solid rgb(127 160 255 / .14);border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2b82ef,#7059ef 58%,#a34ed1);box-shadow:0 7px 16px rgb(65 75 205 / .14),inset 0 1px 0 rgb(255 255 255 / .16)}
  html.px-phone-ui .px-mobile-app-quick-access__item>span .px-icon{width:17px;height:17px}
  html.px-phone-ui .px-mobile-app-quick-access__item strong{max-width:100%;font-size:8.6px;font-weight:900;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.px-phone-ui .px-mobile-app-quick-access__item.is-contact>span{background:linear-gradient(135deg,#18a4c4,#4d7fe8 58%,#7557e7)}
  html.px-phone-ui .px-mobile-app-quick-access__item.is-pro>span{background:linear-gradient(135deg,#5a64ef,#8954ec 58%,#bf50cc)}
  html.px-phone-ui .px-mobile-app-filter-group + .px-mobile-app-filter-group{margin-top:14px}
  html.px-phone-ui .px-mobile-app-filter-group h3,html.px-phone-ui .px-mobile-app-filter-group__title h3{margin:0 0 7px;font-size:11.5px;font-weight:900}
  html.px-phone-ui .px-mobile-app-choice-grid,html.px-phone-ui .px-mobile-app-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  html.px-phone-ui .px-mobile-app-choice-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.px-phone-ui .px-mobile-app-choice-grid--five,html.px-phone-ui .px-mobile-app-choice-grid--favorites-types{grid-template-columns:repeat(5,minmax(0,1fr))}
  html.px-phone-ui .px-mobile-app-choice-grid--ai-sort{grid-template-columns:repeat(5,minmax(0,1fr))}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid > :is(button,a){min-height:64px;padding:7px 4px;border-radius:16px;gap:4px}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid > :is(button,a)>.px-icon{width:19px;height:19px}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid > :is(button,a)>span{font-size:8.5px;line-height:1.15}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--five > :is(button,a),html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--favorites-types > :is(button,a),html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--ai-sort > :is(button,a){min-height:62px;padding:7px 2px}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--five > :is(button,a)>span,html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--favorites-types > :is(button,a)>span,html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--ai-sort > :is(button,a)>span{font-size:8.2px;white-space:normal;line-height:1.12;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--five > :is(button,a)>small,html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-choice-grid--favorites-types > :is(button,a)>small{top:4px;inset-inline-end:4px;min-width:16px;height:16px;font-size:7.5px}
  html.px-phone-ui .px-mobile-app-category-grid > :is(button,a){position:relative;min-width:0;min-height:64px;padding:7px 4px;border:1px solid var(--px-mobile-app-line);border-radius:16px;display:grid;place-items:center;align-content:center;gap:4px;color:var(--px-mobile-app-muted);background:linear-gradient(180deg,rgb(255 255 255 / .08),rgb(255 255 255 / .035));text-align:center;text-decoration:none;font:inherit;-webkit-tap-highlight-color:transparent}
  html.px-phone-ui .px-mobile-app-category-grid > :is(button,a)>.px-icon{width:19px;height:19px;color:currentColor}
  html.px-phone-ui .px-mobile-app-category-grid > :is(button,a)>span{width:100%;min-width:0;color:inherit;font-size:8.8px;font-weight:850;line-height:1.12;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.px-phone-ui .px-mobile-app-category-grid > :is(button,a)>small{position:absolute;top:5px;inset-inline-end:6px;min-width:17px;height:17px;padding:0 3px;border-radius:999px;display:grid;place-items:center;color:var(--px-mobile-app-muted);background:var(--px-mobile-app-raised);font-size:6.5px;font-weight:900}
  html.px-phone-ui .px-mobile-app-category-grid > :is(button,a).is-active{color:#fff;border-color:rgb(114 131 255 / .32);background:linear-gradient(135deg,rgb(38 143 229 / .88),rgb(109 94 239 / .90) 56%,rgb(201 79 200 / .86));box-shadow:0 8px 18px rgb(72 73 205 / .16),inset 0 1px 0 rgb(255 255 255 / .12)}
  html.px-phone-ui .px-mobile-app-category-grid > :is(button,a).is-active>small{color:#fff;background:rgb(255 255 255 / .16)}
  html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__utility,html.px-phone-ui[data-theme="light"] .px-mobile-app-service-card,html.px-phone-ui[data-theme="light"] .px-mobile-app-quick-access__item,html.px-phone-ui[data-theme="light"] .px-mobile-app-category-grid > :is(button,a){background:linear-gradient(180deg,#fff,#f4f8ff);box-shadow:0 8px 20px rgb(91 111 151 / .07),inset 0 1px 0 #fff}
  html.px-phone-ui[data-theme="light"] .px-mobile-app-sheet__utility--search,html.px-phone-ui[data-theme="light"] .px-mobile-app-category-grid > :is(button,a).is-active{color:#fff;background:linear-gradient(135deg,#238ee9,#675fee 58%,#b450d2)}
}
@media(max-width:390px){
  html.px-phone-ui .px-mobile-app-sheet--filters .px-mobile-app-sheet__panel{padding-inline:9px}
  html.px-phone-ui .px-mobile-app-sheet__utilities{gap:4px}
  html.px-phone-ui .px-mobile-app-sheet__utility,html.px-phone-ui .px-mobile-app-sheet__head--filters .px-mobile-app-sheet__close{width:44px;height:44px;min-width:44px;border-radius:13px}
  html.px-phone-ui .px-mobile-app-services,html.px-phone-ui .px-mobile-app-quick-access{gap:5px}
  html.px-phone-ui .px-mobile-app-service-card,html.px-phone-ui .px-mobile-app-quick-access__item{min-height:62px}
  html.px-phone-ui .px-mobile-app-service-card strong,html.px-phone-ui .px-mobile-app-quick-access__item strong{font-size:8.2px}
  html.px-phone-ui .px-mobile-app-choice-grid--five,html.px-phone-ui .px-mobile-app-choice-grid--favorites-types,html.px-phone-ui .px-mobile-app-choice-grid--ai-sort{gap:5px}
}

/* test231 — contextual category icon language on phone without changing filter geometry. */
@media (max-width:760px){
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon]>.px-icon{width:23px;height:23px}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="watch"]>.px-icon{color:#69c8ff}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="car"]>.px-icon{color:#83b7ff}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="perfume"]>.px-icon{color:#d39cff}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="care"]>.px-icon{color:#ff9fc8}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="food"]>.px-icon{color:#f3c66b}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="code"]>.px-icon{color:#7fd8ff}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="brain"]>.px-icon{color:#b79cff}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="audio-wave"]>.px-icon{color:#77d8c7}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="megaphone"]>.px-icon{color:#ffa7c8}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon="automation"]>.px-icon{color:#8edfa8}
  html.px-phone-ui .px-mobile-app-category-grid [data-category-icon].is-active>.px-icon{color:#fff}
}


/* test424 — dedicated Prompt dock item and eight-slot phone dock owner. */
@media (max-width:760px) {
  html.px-phone-ui .px-mobile-app-dock.is-eight-items {
    right: 6px;
    left: 6px;
    width: calc(100% - 12px);
    min-height: 74px;
    gap: 1px;
    padding: 5px 3px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items > :is(a, button) {
    min-height: 58px;
    padding: 5px 0 7px;
    border-radius: 16px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items .px-mobile-app-dock__icon {
    width: 27px;
    height: 27px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items .px-mobile-app-dock__icon :is(.px-icon, svg) {
    width: 18px;
    height: 18px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items .px-mobile-app-dock__avatar {
    width: 24px;
    height: 24px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items .px-mobile-app-dock__label {
    font-size: 7.7px;
    line-height: 1.05;
    white-space: normal;
    text-align: center;
    letter-spacing: var(--px-heading-tracking, 0);
  }
}
@media (max-width:390px) {
  html.px-phone-ui .px-mobile-app-dock.is-eight-items {
    right: 4px;
    left: 4px;
    width: calc(100% - 8px);
    padding-inline: 1px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items .px-mobile-app-dock__label {
    font-size: 7.2px;
  }
  html.px-phone-ui .px-mobile-app-dock.is-eight-items .px-mobile-app-dock__icon :is(.px-icon, svg) {
    width: 17px;
    height: 17px;
  }
}

/* test458 — Canonical phone Site Map. Home and approved service surfaces reuse one owner; content browsers keep contextual Categories/filters. */
@media (max-width:760px){
  html.px-phone-ui .px-home-sites-dialog[open]{
    width:min(calc(100vw - 16px),520px);
    max-height:min(74dvh,640px);
    border-radius:24px;
  }
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__panel{
    padding:12px 12px 14px;
  }
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head{
    min-height:0;
    padding:0 1px 10px;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
  }
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head>div:first-child{
    flex:1 1 145px;
    min-width:128px;
  }
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head strong{
    font-size:16px;
    line-height:1.15;
  }
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head small{
    font-size:8.6px;
    line-height:1.35;
  }
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head>.px-home-sites-dialog__head-actions{
    flex:0 0 auto;
    display:flex!important;
    grid-template-columns:none!important;
    grid-auto-flow:column;
    align-items:center;
    justify-content:flex-end;
    gap:4px;
  }
  html.px-phone-ui .px-home-sites-dialog__utility{
    width:32px;
    height:32px;
    min-width:32px;
    padding:0;
    border:1px solid var(--px-mobile-app-line);
    border-radius:10px;
    display:grid;
    place-items:center;
    color:var(--px-mobile-app-text);
    background:var(--px-mobile-app-soft);
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .06);
    -webkit-tap-highlight-color:transparent;
  }
  html.px-phone-ui .px-home-sites-dialog__utility .px-icon,
  html.px-phone-ui .px-home-sites-dialog__utility svg{width:15px;height:15px}
  html.px-phone-ui .px-home-sites-dialog__utility .px-theme-icon{display:none;width:15px;height:15px;place-items:center}
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__utility .px-theme-icon--moon,
  html.px-phone-ui[data-theme="light"] .px-home-sites-dialog__utility .px-theme-icon--sun,
  html.px-phone-ui:not([data-theme]) .px-home-sites-dialog__utility .px-theme-icon--sun{display:grid}
  html.px-phone-ui .px-home-sites-dialog__utility--close{
    color:#17233b;
    background:linear-gradient(180deg,#fff,#f1f4f9);
  }
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__utility--close{
    color:#f3f6ff;
    background:#1b2942;
  }
  html.px-phone-ui .px-home-sites-dialog__quick{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:5px;
    padding:9px 1px 10px;
    border-bottom:1px solid var(--px-mobile-app-line);
  }
  html.px-phone-ui .px-home-sites-dialog__quick>a{
    min-width:0;
    min-height:58px;
    padding:5px 2px;
    border:1px solid var(--px-mobile-app-line);
    border-radius:13px;
    display:grid;
    justify-items:center;
    align-content:center;
    gap:4px;
    color:var(--px-mobile-app-text);
    background:linear-gradient(180deg,rgb(255 255 255 / .58),rgb(247 249 255 / .38));
    text-decoration:none;
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .70);
  }
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__quick>a{
    background:rgb(255 255 255 / .035);
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .04);
  }
  html.px-phone-ui .px-home-sites-dialog__quick-icon{
    width:29px;
    height:29px;
    border-radius:9px;
    display:grid;
    place-items:center;
    color:#fff;
    background:linear-gradient(135deg,#376ff0,#9059ea);
    box-shadow:0 6px 14px rgb(81 88 210 / .14);
  }
  html.px-phone-ui .px-home-sites-dialog__quick-icon .px-icon{width:14px;height:14px}
  html.px-phone-ui .px-home-sites-dialog__quick b{
    width:100%;
    font-size:7.4px;
    font-weight:850;
    line-height:1.15;
    text-align:center;
    white-space:normal;
  }
  html.px-phone-ui .px-home-sites-dialog__section-title{
    padding:9px 3px 7px;
    color:var(--px-mobile-app-muted);
    font-size:9.4px;
    font-weight:900;
  }
  html.px-phone-ui .px-home-sites-dialog__pages{
    max-height:calc(74dvh - 183px - env(safe-area-inset-bottom,0px));
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:none;
    padding:0 1px 2px;
  }
  html.px-phone-ui .px-home-sites-dialog__pages::-webkit-scrollbar{display:none}
  html.px-phone-ui .px-home-sites-dialog__pages>a{
    min-width:0;
    min-height:68px;
    padding:7px;
    border:1px solid var(--px-mobile-app-line);
    border-radius:15px;
    display:grid;
    grid-template-columns:32px minmax(0,1fr) 12px;
    align-items:center;
    gap:6px;
    color:var(--px-mobile-app-text);
    background:var(--px-mobile-app-soft);
    text-decoration:none;
  }
  html.px-phone-ui .px-home-sites-dialog__page-icon{
    width:32px;
    height:32px;
    border-radius:10px;
    display:grid;
    place-items:center;
    color:#5e63cc;
    background:linear-gradient(135deg,rgb(71 132 255 / .13),rgb(150 84 237 / .14));
    border:1px solid rgb(120 120 220 / .12);
  }
  html.px-phone-ui .px-home-sites-dialog__page-icon .px-icon{width:16px;height:16px}
  html.px-phone-ui .px-home-sites-dialog__page-copy{min-width:0;display:grid;gap:2px}
  html.px-phone-ui .px-home-sites-dialog__page-copy b{font-size:9.6px;font-weight:900;line-height:1.2}
  html.px-phone-ui .px-home-sites-dialog__page-copy small{
    color:var(--px-mobile-app-muted);
    font-size:6.8px;
    font-weight:720;
    line-height:1.3;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
  }
  html.px-phone-ui .px-home-sites-dialog__pages>a>.px-icon{width:12px;height:12px;color:var(--px-mobile-app-muted)}

  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog[open]{
    color:#f1f5ff;
    background:linear-gradient(180deg,#101d33,#0c1729)!important;
    border-color:rgb(165 183 226 / .17);
    box-shadow:0 28px 78px rgb(0 0 0 / .48),inset 0 1px 0 rgb(255 255 255 / .045);
  }
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__quick>a,
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__pages>a{
    color:#eef3ff;
    background:linear-gradient(180deg,#182842,#142239)!important;
    border-color:rgb(178 195 233 / .11);
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .035);
  }
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__quick-icon{
    color:#dce6ff;
    background:linear-gradient(135deg,#253a64,#443268);
    border:1px solid rgb(169 181 255 / .12);
    box-shadow:none;
  }
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__page-icon{
    color:#c5d1ff;
    background:linear-gradient(135deg,#1e3151,#2b2850);
    border-color:rgb(160 177 244 / .12);
  }
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__section-title,
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__page-copy small,
  html.px-phone-ui[data-theme="dark"] .px-home-sites-dialog__pages>a>.px-icon{
    color:#9eacc7;
  }
}
@media (max-width:390px){
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head{gap:6px}
  html.px-phone-ui .px-home-sites-dialog .px-dock-category-dialog__head>.px-home-sites-dialog__head-actions{gap:3px}
  html.px-phone-ui .px-home-sites-dialog__utility{width:30px;height:30px;min-width:30px;border-radius:9px}
  html.px-phone-ui .px-home-sites-dialog__quick{gap:3px}
  html.px-phone-ui .px-home-sites-dialog__quick>a{min-height:55px;padding-inline:1px}
  html.px-phone-ui .px-home-sites-dialog__quick b{font-size:7px}
  html.px-phone-ui .px-home-sites-dialog__pages{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  html.px-phone-ui .px-home-sites-dialog__pages>a{min-height:64px;padding:6px;grid-template-columns:30px minmax(0,1fr) 10px;gap:5px}
  html.px-phone-ui .px-home-sites-dialog__page-icon{width:30px;height:30px}
  html.px-phone-ui .px-home-sites-dialog__page-copy b{font-size:9.1px}
  html.px-phone-ui .px-home-sites-dialog__page-copy small{font-size:6.4px;-webkit-line-clamp:1}
}


/* test440 — Prompt phone categories: count only on All, semantic icons on terms. */
@media (max-width:760px){
  html.px-phone-ui .px-mobile-app-category-grid--prompt > :is(button,a)[data-prompt-category="term"]{
    min-height:66px;
    padding:8px 6px;
    gap:5px;
  }
  html.px-phone-ui .px-mobile-app-category-grid--prompt > :is(button,a)[data-prompt-category="term"] > span{
    font-size:9.1px;
    font-weight:880;
  }
  html.px-phone-ui .px-mobile-app-category-grid--prompt > :is(button,a)[data-prompt-category="term"] > small{
    display:none!important;
  }
  html.px-phone-ui .px-mobile-app-category-grid--prompt [data-category-icon="tag"]>.px-icon{
    width:22px;
    height:22px;
    color:#9aa8ff;
  }
  html.px-phone-ui[data-theme="light"] .px-mobile-app-category-grid--prompt [data-category-icon="tag"]>.px-icon{
    color:#6675d8;
  }
  html.px-phone-ui .px-mobile-app-category-grid--prompt > :is(button,a)[data-prompt-category="all"] > small{
    min-width:20px;
    height:20px;
    top:6px;
    inset-inline-end:7px;
    padding:0 5px;
    font-size:7px;
    font-weight:950;
  }
}


/* test441 — Prompt phone semantic icon contract: resolver-fixed aliases; no per-term counts. */
@media (max-width:760px){
  html.px-phone-ui .px-mobile-app-category-grid--prompt [data-category-icon="care"]>.px-icon{color:#ff9fc8}
  html.px-phone-ui[data-theme="light"] .px-mobile-app-category-grid--prompt [data-category-icon="care"]>.px-icon{color:#d45c96}
}
