/*
 * PromXAI Theme 2.0.0-RC8 — stable desktop shell with light white-glass rail.
 * One visual owner for the fixed left-rail identity/tools and floating dock
 * used by Homepage, Library and Favorites.
 */

.px-unified-floating-dock {
  display: none;
}

@media (min-width: 900px) {
  .px-desktop-rail {
    position: fixed;
    z-index: 245;
    top: 0;
    bottom: 0;
    left: 0;
    width: var(--px-shell-rail-width, 206px);
    min-width: var(--px-shell-rail-width, 206px);
    min-height: 100dvh;
    padding: 14px var(--px-shell-rail-padding-x, 12px) 12px;
    display: flex;
    flex-direction: column;
    gap: 9px;
    overflow: hidden;
    border: 0;
    border-inline-end: 1px solid var(--px-shell-rail-line, rgb(150 174 225 / .15));
    border-radius: 0 22px 22px 0;
    color: var(--px-text);
    background: linear-gradient(180deg, rgb(26 44 75 / .92), rgb(21 37 63 / .88));
    box-shadow: var(--px-shell-rail-shadow, 22px 0 58px rgb(3 8 20 / .20)), 0 0 0 1px rgb(255 255 255 / .03), inset -1px 0 0 rgb(255 255 255 / .06);
    -webkit-backdrop-filter: blur(28px) saturate(140%);
    backdrop-filter: blur(28px) saturate(140%);
    direction: rtl;
  }

  body.admin-bar .px-desktop-rail {
    top: 32px;
    min-height: calc(100dvh - 32px);
  }

  html[data-ui-lang="en"] .px-desktop-rail {
    direction: ltr;
  }

  .px-desktop-rail__identity {
    display: grid;
    gap: 7px;
    padding: 0 0 9px;
    border-bottom: 1px solid var(--px-shell-rail-line, rgb(150 174 225 / .15));
  }

  .px-desktop-rail__brand {
    min-height: 48px;
    padding: 7px 7px 1px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    border-radius: 13px;
    background: transparent;
  }

  .px-desktop-rail__brand .px-brand__logos,
  .px-desktop-rail__brand .px-theme-logo,
  .px-desktop-rail__brand .px-theme-logo--dark,
  .px-desktop-rail__brand .px-theme-logo--light {
    width: 100% !important;
    min-width: 0 !important;
    justify-items: center !important;
    justify-content: center !important;
    transform-origin: center !important;
  }

  .px-desktop-rail__brand .px-theme-logo-image,
  .px-desktop-rail__brand .px-theme-logo-image--dark,
  .px-desktop-rail__brand .px-theme-logo-image--light {
    width: 100% !important;
    max-width: 148px !important;
    max-height: 35px !important;
    margin-inline: auto !important;
    object-position: center !important;
    transform-origin: center !important;
  }

  .px-desktop-rail__request {
    min-height: 36px;
    padding-inline: 10px;
    border: 1px solid rgb(255 255 255 / .14);
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #fff;
    background: var(--px-accent-gradient);
    box-shadow: 0 9px 21px rgb(124 58 237 / .17), inset 0 1px 0 rgb(255 255 255 / .16);
    text-decoration: none;
    font-size: 11px;
    font-weight: 850;
    transition: transform .18s ease, box-shadow .18s ease;
  }

  .px-desktop-rail__request:hover,
  .px-desktop-rail__request:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 13px 25px rgb(124 58 237 / .22), inset 0 1px 0 rgb(255 255 255 / .20);
  }

  .px-desktop-rail__request .px-icon {
    width: 13px;
    height: 13px;
  }

  .px-desktop-rail__explain {
    min-height: 33px;
    padding-inline: 10px;
    border: 1px solid rgb(139 117 255 / .24);
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: rgb(235 239 255 / .92);
    background: linear-gradient(135deg, rgb(78 72 153 / .36), rgb(37 68 123 / .32));
    box-shadow: inset 0 1px 0 rgb(255 255 255 / .055);
    text-decoration: none;
    font-size: 10.5px;
    font-weight: 850;
    transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
  }

  .px-desktop-rail__explain:hover,
  .px-desktop-rail__explain:focus-visible {
    transform: translateY(-1px);
    border-color: rgb(142 118 255 / .40);
    background: linear-gradient(135deg, rgb(92 76 184 / .48), rgb(43 82 147 / .42));
    box-shadow: 0 10px 22px rgb(34 30 92 / .16), inset 0 1px 0 rgb(255 255 255 / .08);
  }

  .px-desktop-rail__explain .px-icon {
    width: 13px;
    height: 13px;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */


  .px-desktop-rail__utilities {
    display: grid;
    gap: 8px;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .px-desktop-rail__utility-row {
    /* Fixed physical order in every language: language | theme | search
       from left to right. Only labels change language; controls never mirror. */
    direction: rtl !important;
    min-height: 0;
    padding: 0;
    display: flex;
    align-items: stretch;
    gap: 6px;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .px-desktop-rail__utility-row > * {
    flex: 1 1 0;
    min-width: 0;
  }

  .px-desktop-rail__tool {
    width: 100%;
    min-width: 0;
    max-width: none;
    min-height: 38px;
    padding: 5px 4px;
    border: 1px solid var(--px-shell-rail-line, rgb(150 174 225 / .15));
    border-radius: 12px;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--px-muted);
    background: linear-gradient(180deg, rgb(255 255 255 / .065), rgb(255 255 255 / .035));
    cursor: pointer;
    font: inherit;
    transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
  }

  .px-desktop-rail__tool:hover,
  .px-desktop-rail__tool:focus-visible,
  .px-desktop-rail__utilities.is-open .px-desktop-rail__search-toggle {
    color: var(--px-text);
    border-color: var(--px-shell-rail-line-strong, rgb(155 177 232 / .27));
    background: linear-gradient(180deg, rgb(255 255 255 / .09), rgb(255 255 255 / .05));
    box-shadow: 0 10px 24px rgb(7 12 25 / .10), 0 0 18px rgb(96 131 255 / .05);
  }

  .px-desktop-rail__tool:active {
    transform: translateY(1px);
  }

  .px-desktop-rail__tool-icon {
    width: 17px;
    height: 17px;
    min-height: 0;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
  }

  .px-desktop-rail__tool-icon .px-icon,
  .px-desktop-rail__tool-icon > .px-icon {
    width: 17px;
    height: 17px;
  }

  .px-desktop-rail__tool-label {
    max-width: 100%;
    font-size: 9px;
    font-weight: 820;
    line-height: 1;
    white-space: nowrap;
  }

  .px-desktop-rail__tool--theme {
    justify-content: center;
    gap: 0;
  }

  .px-desktop-rail__tool--theme .px-desktop-rail__tool-label,
  .px-desktop-rail__tool--theme + .px-desktop-rail__tool .px-desktop-rail__tool-label {
    font-size: 8.6px;
  }

  .px-desktop-rail__tool--theme .px-desktop-rail__tool-icon {
    width: 19px;
    height: 19px;
  }

  .px-desktop-rail__tool--theme .px-theme-icon {
    display: none !important;
    width: 19px;
    height: 19px;
    min-width: 19px;
    min-height: 19px;
    border-radius: 8px;
    place-items: center;
    color: currentColor;
    background: transparent;
    box-shadow: none;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */


  .px-desktop-rail__tool--theme .px-theme-icon .px-icon {
    width: 17px;
    height: 17px;
  }

  .px-desktop-rail__search {
    direction: rtl !important;
    display: none;
    grid-template-columns: 16px minmax(0, 1fr) 25px;
    align-items: center;
    gap: 7px;
    min-height: 39px;
    max-height: none;
    padding: 0 6px 0 10px;
    overflow: visible;
    opacity: 1;
    border: 1px solid var(--px-shell-rail-line-strong, rgb(155 177 232 / .27));
    border-radius: 12px;
    color: var(--px-muted);
    background: linear-gradient(180deg, rgb(255 255 255 / .065), rgb(255 255 255 / .035));
    box-shadow: 0 8px 20px rgb(7 12 25 / .08);
  }

  .px-desktop-rail__utilities.is-open .px-desktop-rail__search {
    display: grid;
  }

  .px-desktop-rail__search > .px-icon,
  .px-desktop-rail__search > svg {
    width: 16px;
    height: 16px;
    color: var(--px-muted);
  }

  .px-desktop-rail__search input {
    width: 100%;
    min-width: 0;
    height: 34px;
    padding: 0;
    border: 0;
    outline: 0;
    color: var(--px-text);
    background: transparent;
    font: inherit;
    font-size: 10px;
  }

  html[data-ui-lang="ar"] .px-desktop-rail__search input {
    direction: rtl;
    text-align: right;
  }

  html[data-ui-lang="en"] .px-desktop-rail__search input {
    direction: ltr;
    text-align: left;
  }

  .px-desktop-rail__search input::placeholder {
    color: var(--px-muted);
    opacity: .82;
  }

  .px-desktop-rail__search-close,
  .px-desktop-rail__search button {
    width: 25px;
    height: 25px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    display: grid;
    place-items: center;
    color: var(--px-muted);
    background: transparent;
    cursor: pointer;
  }

  .px-desktop-rail__search-close:hover,
  .px-desktop-rail__search-close:focus-visible,
  .px-desktop-rail__search button:hover,
  .px-desktop-rail__search button:focus-visible {
    color: var(--px-text);
    background: var(--px-shell-rail-hover, rgb(255 255 255 / .078));
  }

  .px-desktop-rail__search-close .px-icon,
  .px-desktop-rail__search button .px-icon,
  .px-desktop-rail__search button svg {
    width: 13px;
    height: 13px;
  }

  .px-unified-floating-dock {
    position: fixed;
    z-index: 270;
    bottom: 17px;
    left: calc(50% + 103px);
    width: min(536px, calc(100vw - 264px));
    min-height: 50px;
    padding: 4px;
    display: flex;
    align-items: stretch;
    gap: 3px;
    border: 1px solid var(--px-shell-rail-line-strong, rgb(155 177 232 / .27));
    border-radius: 999px;
    color: var(--px-text);
    background: linear-gradient(180deg, rgb(30 48 81 / .90), rgb(23 39 67 / .86));
    box-shadow: 0 18px 46px rgb(4 8 20 / .18), 0 0 0 1px rgb(255 255 255 / .04), inset 0 1px 0 rgb(255 255 255 / .10);
    -webkit-backdrop-filter: blur(24px) saturate(145%);
    backdrop-filter: blur(24px) saturate(145%);
    transform: translateX(-50%);
    direction: rtl;
  }

  html[data-ui-lang="en"] .px-unified-floating-dock {
    direction: ltr;
  }

  .px-unified-floating-dock > :is(a, button) {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    min-height: 40px;
    padding: 4px 5px 3px;
    border: 1px solid transparent;
    border-radius: 999px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    color: var(--px-muted);
    background: transparent;
    text-decoration: none;
    font: inherit;
    font-size: 7.7px;
    font-weight: 780;
    line-height: 1;
    transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
  }

  .px-unified-floating-dock > :is(a, button):hover,
  .px-unified-floating-dock > :is(a, button):focus-visible {
    color: var(--px-text);
    border-color: var(--px-shell-rail-line, rgb(150 174 225 / .15));
    background: linear-gradient(180deg, rgb(255 255 255 / .065), rgb(255 255 255 / .035));
    transform: translateY(-1px);
  }

  .px-unified-floating-dock > :is(a, button).is-active {
    color: #fff;
    border-color: rgb(255 255 255 / .11);
    background: var(--px-accent-gradient);
    box-shadow: 0 7px 18px rgb(124 58 237 / .19), inset 0 1px 0 rgb(255 255 255 / .15);
  }

  .px-unified-floating-dock .px-icon,
  .px-unified-floating-dock__avatar {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
  }

  .px-unified-floating-dock .px-icon {
    stroke-width: 1.8;
  }

  .px-unified-floating-dock__avatar {
    border-radius: 999px;
    display: grid;
    place-items: center;
    overflow: hidden;
  }

  .px-unified-floating-dock__avatar-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .px-unified-floating-dock [data-favorites-count] {
    position: absolute;
    top: 2px;
    inset-inline-end: 9px;
    min-width: 13px;
    height: 13px;
    padding-inline: 3px;
    border: 1px solid rgb(255 255 255 / .22);
    border-radius: 999px;
    display: grid;
    place-items: center;
    color: #fff;
    background: var(--px-pink);
    font-size: 6.8px;
    font-weight: 900;
  }
}

@media (min-width: 900px) and (max-width: 1240px) {
  .px-desktop-rail__brand .px-theme-logo-image,
  .px-desktop-rail__brand .px-theme-logo-image--dark,
  .px-desktop-rail__brand .px-theme-logo-image--light {
    max-width: 134px !important;
  }

  .px-unified-floating-dock {
    left: calc(50% + 95px);
    width: min(438px, calc(100vw - 234px));
  }
}

@media (max-width: 899px) {
  .px-unified-floating-dock {
    display: none !important;
  }
}


html[data-theme="light"] .px-unified-floating-dock {
  background: linear-gradient(180deg, rgb(255 255 255 / .94), rgb(245 248 255 / .90));
  box-shadow: 0 18px 40px rgba(86, 103, 143, .12), 0 0 0 1px rgba(255,255,255,.72), inset 0 1px 0 rgba(255,255,255,.92);
}

html[data-theme="light"] .px-unified-floating-dock__action {
  color: #6a7892;
}

html[data-theme="light"] .px-unified-floating-dock__action.is-active,
html[data-theme="light"] .px-unified-floating-dock__action[aria-current="page"] {
  color: #17233b;
}


/* 2.0.0-RC7 — theme-correct shared rail/dock surfaces. */
@media (min-width:900px) {
  html[data-theme="dark"] .px-desktop-rail {
    background: linear-gradient(180deg, rgb(19 32 56 / .92), rgb(16 27 47 / .88));
    box-shadow: var(--px-shell-rail-shadow, 22px 0 58px rgb(3 8 20 / .20)), 0 0 0 1px rgb(255 255 255 / .03), inset -1px 0 0 rgb(255 255 255 / .06);
  }
  html[data-theme="dark"] .px-unified-floating-dock {
    background: linear-gradient(180deg, rgb(22 34 59 / .90), rgb(17 28 49 / .86));
    box-shadow: 0 18px 46px rgb(4 8 20 / .18), 0 0 0 1px rgb(255 255 255 / .04), inset 0 1px 0 rgb(255 255 255 / .10);
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

  html[data-theme="light"] .px-unified-floating-dock {
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,249,255,.93));
    border-color: rgba(75,96,138,.16);
    box-shadow: 0 16px 38px rgba(70,88,126,.11), inset 0 1px 0 rgba(255,255,255,.94);
  }
}


/* 2.0.0-RC8 — light desktop rail remains white, with only quiet glass depth. */
@media (min-width:900px) {
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

}

/* 2.0.0-RC23 — shared left-rail ambient orbs and polished request CTA. */
@keyframes pxShellOrbDrift {
  0%,100% { transform: translate3d(0,0,0) scale(1); opacity:.92; }
  50% { transform: translate3d(12px,-9px,0) scale(1.08); opacity:1; }
}
@keyframes pxShellSheen {
  0% { transform: translateX(-150%); opacity:0; }
  18% { opacity:.95; }
  100% { transform: translateX(150%); opacity:0; }
}

@media (min-width:900px) {
  .px-desktop-rail {
    isolation: isolate;
  }
  .px-desktop-rail::before,
  .px-desktop-rail::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
    filter: blur(8px);
  }
  .px-desktop-rail::before {
    width: 186px;
    height: 186px;
    inset: -54px auto auto -58px;
    background:
      radial-gradient(circle at 34% 34%, rgba(83,160,255,.22) 0 12%, transparent 14%),
      radial-gradient(circle at 62% 50%, rgba(150,90,255,.20) 0 13%, transparent 16%),
      radial-gradient(circle, rgba(92,123,255,.12), transparent 68%);
    animation: pxShellOrbDrift 13s ease-in-out infinite;
  }
  .px-desktop-rail::after {
    width: 164px;
    height: 164px;
    inset: auto -54px -40px auto;
    background:
      radial-gradient(circle at 34% 36%, rgba(87,162,255,.14) 0 11%, transparent 13%),
      radial-gradient(circle at 64% 42%, rgba(226,95,229,.15) 0 10%, transparent 12%),
      radial-gradient(circle, rgba(132,99,255,.10), transparent 70%);
    animation: pxShellOrbDrift 15.6s ease-in-out infinite;
  }
  .px-desktop-rail > * {
    position: relative;
    z-index: 1;
  }

  .px-desktop-rail__request {
    position: relative;
    overflow: hidden;
  }
  .px-desktop-rail__request::before {
    content: "";
    position: absolute;
    width: 92px;
    height: 92px;
    inset: auto auto -48px -10px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255,255,255,.18), rgba(255,255,255,.04) 52%, transparent 74%);
    pointer-events: none;
    animation: pxShellOrbDrift 10.4s ease-in-out infinite;
  }
  .px-desktop-rail__request::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 16%, rgba(255,255,255,.24) 48%, transparent 84%);
    transform: translateX(-150%);
    pointer-events: none;
    animation: pxShellSheen 7s ease-in-out infinite;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

}


/* test458 iPad / touch-tablet fixed-glass stabilization.
 * The surfaces are already >86% opaque, so disabling live backdrop sampling
 * preserves the approved appearance while preventing WebKit repaint shimmer. */
html.px-touch-tablet .px-desktop-rail,
html.px-touch-tablet .px-unified-floating-dock,
html.px-touch-tablet .px-desktop-rail__request {
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html.px-touch-tablet .px-desktop-rail::before,
html.px-touch-tablet .px-desktop-rail::after,
html.px-touch-tablet .px-desktop-rail__request::before,
html.px-touch-tablet .px-desktop-rail__request::after {
  animation:none!important;
}

@media (min-width:900px) and (prefers-reduced-motion:reduce) {
  .px-desktop-rail::before,
  .px-desktop-rail::after,
  .px-desktop-rail__request::before,
  .px-desktop-rail__request::after {
    animation: none !important;
  }
}


/* 2.0.21-test14 — Create is a deliberate feature launcher, not a cramped
 * utility button. Request Design remains the immediate commercial CTA; Create
 * follows as a richer future-workspace card with one visual owner here. */
.px-desktop-rail__identity { gap: 8px; }
.px-desktop-rail__create {
  position: relative;
  min-height: 52px;
  padding: 7px 8px;
  justify-content: flex-start;
  gap: 8px;
  overflow: hidden;
  border-color: rgb(255 255 255 / .17);
  background:
    radial-gradient(circle at 16% 20%,rgb(44 197 255 / .20),transparent 34%),
    linear-gradient(135deg,#145ec8 0%,#5d43e8 56%,#c33aca 100%) !important;
  box-shadow: 0 13px 30px rgb(59 70 204 / .20), inset 0 1px 0 rgb(255 255 255 / .18);
}
.px-desktop-rail__create::after {
  content:"";
  position:absolute;
  width:72px;height:72px;
  inset:-39px -17px auto auto;
  border-radius:50%;
  background:radial-gradient(circle,rgb(255 255 255 / .16),transparent 68%);
  pointer-events:none;
}
.px-desktop-rail__create-icon {
  width:32px;height:32px;flex:0 0 32px;
  border:1px solid rgb(255 255 255 / .18);
  border-radius:10px;
  display:grid;place-items:center;
  color:#fff;
  background:linear-gradient(160deg,rgb(255 255 255 / .20),rgb(255 255 255 / .07));
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .15);
}
.px-desktop-rail__create-icon .px-icon { width:17px;height:17px; }
.px-desktop-rail__create-copy { min-width:0; display:grid; gap:2px; text-align:start; }
.px-desktop-rail__create-copy strong { font-size:11px;font-weight:950;line-height:1; }
.px-desktop-rail__create-copy em { font-size:6.4px;font-weight:800;font-style:normal;line-height:1.15;opacity:.74;white-space:nowrap; }
.px-desktop-rail__create small {
  position:relative;z-index:1;
  margin-inline-start:auto;
  padding:4px 6px;
  border:1px solid rgb(255 255 255 / .12);
  border-radius:999px;
  color:#fff;
  background:rgb(255 255 255 / .13);
  font-size:6.2px;
  font-weight:950;
  line-height:1;
  white-space:nowrap;
}

/* Create joins the stable desktop floating navigation as a sixth first-class
 * destination. Its icon is distinctive even while inactive, without turning
 * the whole dock into another CTA banner. */
@media (min-width:900px) {
  .px-unified-floating-dock__create { color:color-mix(in srgb,var(--px-text) 76%,#8b5cf6 24%); }
  .px-unified-floating-dock__create-icon {
    width:22px;height:22px;min-width:22px;min-height:22px;
    border:1px solid rgb(255 255 255 / .12);
    border-radius:8px;
    display:grid;place-items:center;
    color:#fff;
    background:linear-gradient(135deg,#168be8,#6947ea 58%,#c43bd1);
    box-shadow:0 5px 13px rgb(84 64 218 / .23),inset 0 1px 0 rgb(255 255 255 / .18);
  }
  .px-unified-floating-dock__create-icon .px-icon { width:13px;height:13px;min-width:13px;min-height:13px; }
  .px-unified-floating-dock > .px-unified-floating-dock__create.is-active .px-unified-floating-dock__create-icon,
  .px-unified-floating-dock > .px-unified-floating-dock__create:hover .px-unified-floating-dock__create-icon,
  .px-unified-floating-dock > .px-unified-floating-dock__create:focus-visible .px-unified-floating-dock__create-icon {
    background:rgb(255 255 255 / .17);
    box-shadow:inset 0 1px 0 rgb(255 255 255 / .18);
  }
}



/* 2.0.21-test15 — quiet glass service launchers across desktop browse rails. */
@media (min-width:900px){
  .px-desktop-rail__request{min-height:46px;padding:6px 8px;border-color:rgb(255 255 255 / .10);border-radius:14px;background:linear-gradient(145deg,rgb(255 255 255 / .075),rgb(255 255 255 / .022))!important;box-shadow:inset 0 1px 0 rgb(255 255 255 / .08),0 8px 22px rgb(5 13 33 / .08);-webkit-backdrop-filter:blur(17px) saturate(135%);backdrop-filter:blur(17px) saturate(135%)}
  .px-desktop-rail__request:hover,.px-desktop-rail__request:focus-visible{filter:none;border-color:rgb(122 110 255 / .24);background:linear-gradient(145deg,rgb(255 255 255 / .10),rgb(99 77 218 / .055))!important;box-shadow:inset 0 1px 0 rgb(255 255 255 / .11),0 11px 26px rgb(5 13 33 / .12)}
  .px-desktop-rail__request-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center}.px-desktop-rail__request-icon .px-icon{width:15px;height:15px}
  .px-desktop-rail__create{min-height:50px;padding:6px 7px;gap:7px;border-color:rgb(122 110 255 / .16);background:linear-gradient(145deg,rgb(45 127 220 / .10),rgb(108 72 222 / .09),rgb(255 255 255 / .022))!important;box-shadow:inset 0 1px 0 rgb(255 255 255 / .09),0 9px 24px rgb(31 29 91 / .10)}
  .px-desktop-rail__create::after{display:none}.px-desktop-rail__create-icon{width:30px;height:30px;flex:0 0 30px;border-radius:10px}.px-desktop-rail__create-icon .px-icon{width:15px;height:15px}.px-desktop-rail__create-copy strong{font-size:9.8px}.px-desktop-rail__create-copy em{font-size:5.9px}.px-desktop-rail__create small{padding:3px 5px;font-size:5.6px;background:rgb(255 255 255 / .055)}
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

}


/* 2.0.21-test51 — neutral Studio launcher; purple only on the Studio route. */
.px-desktop-rail__create{
  border-color:rgb(255 255 255 / .12)!important;
  background:linear-gradient(145deg,rgb(255 255 255 / .052),rgb(255 255 255 / .02))!important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .08),0 8px 22px rgb(4 12 35 / .09)!important;
}
.px-desktop-rail__create::after{display:none!important}
.px-desktop-rail__create-icon{background:linear-gradient(145deg,rgb(255 255 255 / .09),rgb(255 255 255 / .035))!important}
body.promxai-create-page .px-desktop-rail__create,body.page-template-page-create .px-desktop-rail__create{
  border-color:rgb(132 103 255 / .42)!important;
  background:linear-gradient(135deg,rgb(36 113 229 / .91),rgb(100 69 231 / .92) 58%,rgb(182 58 203 / .89))!important;
  box-shadow:0 12px 30px rgb(91 69 220 / .22),inset 0 1px 0 rgb(255 255 255 / .16)!important;
}
.px-unified-floating-dock__create{color:inherit!important}
.px-unified-floating-dock__create-icon{color:inherit!important;background:transparent!important;box-shadow:none!important;border-color:rgb(255 255 255 / .12)!important}
.px-unified-floating-dock>.px-unified-floating-dock__create.is-active .px-unified-floating-dock__create-icon{color:#fff!important;background:linear-gradient(135deg,#2878e7,#704ee9 58%,#bd47cf)!important;box-shadow:0 6px 16px rgb(91 69 220 / .24)!important}


/* ========================================================================
   2.0.21-test65 — Browse rail light-mode icon contract.
   Home / Library / Favorites share one neutral icon material. Studio is not
   duplicated in these rails; active color belongs to the current destination.
   ======================================================================== */
@media (min-width:900px) {
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

}

/* ========================================================================
   2.0.21-test66 — Master browse rail on Studio + light CTA parity.
   Studio reuses the exact homepage desktop rail owner. The homepage CTA keeps
   the action label "Create" while the destination remains Creative Studio.
   ======================================================================== */
@media (min-width:900px) {
  body.promxai-create-page .px-create-v5__shared-rail,
  body.page-template-page-create .px-create-v5__shared-rail {
    display:flex!important;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

}


/* ========================================================================
   2.0.21-test67 — Browse rail light CTA contrast + dock Studio parity.
   The light theme must never inherit the legacy white child color from the
   dark CTA. The floating Studio destination uses the same icon geometry as
   every other dock destination; active color belongs to the whole item.
   ======================================================================== */
@media (min-width:900px) {
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */


  .px-unified-floating-dock__create-icon {
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    min-height:18px!important;
    border:0!important;
    border-radius:0!important;
    color:inherit!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .px-unified-floating-dock__create-icon .px-icon {
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    min-height:18px!important;
  }
  .px-unified-floating-dock > .px-unified-floating-dock__create.is-active .px-unified-floating-dock__create-icon,
  .px-unified-floating-dock > .px-unified-floating-dock__create:hover .px-unified-floating-dock__create-icon,
  .px-unified-floating-dock > .px-unified-floating-dock__create:focus-visible .px-unified-floating-dock__create-icon {
    color:inherit!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}


/* ==========================================================
   2.0.21-test71 — Main rail bottom controls
   Search stays near content; language/theme/logout finish the rail.
   ========================================================== */
@media (min-width:900px){
  .px-desktop-rail__utility-row{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .px-desktop-rail__search-toggle{
    min-height:38px;
  }
  .px-desktop-rail__footer-tools{
    order:999;
    width:100%;
    margin-top:8px;
    padding-top:9px;
    border-top:1px solid rgb(130 166 225 / .13);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    direction:ltr;
  }
  .px-desktop-rail__footer-tool{
    width:34px;
    height:34px;
    min-width:34px;
    min-height:34px;
    padding:0;
    border:1px solid var(--px-shell-rail-line,rgb(150 174 225 / .15));
    border-radius:11px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:3px;
    color:var(--px-muted);
    background:linear-gradient(180deg,rgb(255 255 255 / .06),rgb(255 255 255 / .025));
    text-decoration:none;
    font:inherit;
    font-size:7px;
    font-weight:900;
  }
  .px-desktop-rail__footer-tool .px-icon,
  .px-desktop-rail__footer-tool > .px-icon{
    width:15px;
    height:15px;
  }
  .px-desktop-rail__footer-tool:hover,
  .px-desktop-rail__footer-tool:focus-visible{
    color:var(--px-text);
    border-color:rgb(119 139 240 / .26);
    background:linear-gradient(135deg,rgb(55 135 230 / .10),rgb(140 76 221 / .08));
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

}


/* ========================================================================
   2.0.21-test84 — Canonical main rail bottom = workspace rail bottom
   Home / Library / Favorites now use the Request Design footer geometry and
   visual material: About / PRO / Explain, divider, Language / Theme / Logout.
   One calm static contract; no floating/glow amplification on these cards.
   ======================================================================== */
@media (min-width:900px){

  .px-desktop-rail__brand .px-brand__logos,
  .px-desktop-rail__brand .px-theme-logo{
    width:148px !important;
    max-width:148px !important;
    height:35px !important;
    min-height:35px !important;
    transform:none !important;
  }
  .px-desktop-rail__brand .px-theme-logo-image,
  .px-desktop-rail__brand .px-theme-logo-image--dark,
  .px-desktop-rail__brand .px-theme-logo-image--light{
    width:148px !important;
    max-width:148px !important;
    height:35px !important;
    max-height:35px !important;
    object-fit:contain !important;
    object-position:center !important;
    transform-origin:center !important;
  }
  .px-desktop-rail__brand .px-theme-logo-image--dark{transform:none !important;}
  .px-desktop-rail__brand .px-theme-logo-image--light{transform:scale(var(--px-light-logo-match,1.65)) !important;}
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

  .px-desktop-rail__request:is(:hover,:focus-visible){
    transform:translateY(-1px) scale(1.012) !important;
    border-color:rgb(211 196 255 / .72) !important;
    box-shadow:0 11px 25px rgb(73 69 210 / .22),0 0 0 1px rgb(255 255 255 / .08),inset 0 1px 0 rgb(255 255 255 / .25) !important;
    filter:saturate(1.04) !important;
  }
  .px-desktop-rail__service-trio{
    width:100% !important;
    margin-top:auto !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:6px !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info{
    width:100% !important;
    min-width:0 !important;
    height:58px !important;
    min-height:58px !important;
    max-height:58px !important;
    margin:0 !important;
    padding:6px 3px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:31px auto !important;
    justify-items:center !important;
    align-content:center !important;
    gap:5px !important;
    border:1px solid rgb(130 166 225 / .13) !important;
    border-radius:14px !important;
    color:var(--px-text) !important;
    background:linear-gradient(145deg,rgb(255 255 255 / .055),rgb(255 255 255 / .018)) !important;
    box-shadow:none !important;
    text-decoration:none !important;
    transform:none !important;
    animation:none !important;
    overflow:hidden !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon{
    width:31px !important;
    height:31px !important;
    min-width:31px !important;
    min-height:31px !important;
    max-width:31px !important;
    max-height:31px !important;
    margin:0 !important;
    border-radius:10px !important;
    transform:none !important;
    animation:none !important;
    filter:none !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon .px-icon,
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon > svg{
    width:15px !important;
    height:15px !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info > span:nth-child(2){
    width:100% !important;
    min-width:0 !important;
    display:block !important;
    overflow:visible !important;
    text-align:center !important;
  }
  .px-desktop-rail__service-trio strong{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    font-size:7px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info--pro .px-desktop-rail__info-icon{
    color:#b88cff !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info::before,
  .px-desktop-rail__service-trio .px-desktop-rail__info::after,
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon::before,
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon::after{
    display:none !important;
    content:none !important;
    animation:none !important;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */


  /* Divider and bottom utilities copy the Request Design dimensions exactly. */
  .px-desktop-rail__footer-tools{
    position:relative !important;
    z-index:5 !important;
    width:100% !important;
    margin-top:8px !important;
    padding-top:9px !important;
    border-top:1px solid rgb(130 166 225 / .13) !important;
    display:grid !important;
    grid-template-columns:repeat(3,40px) !important;
    justify-content:center !important;
    align-items:center !important;
    gap:7px !important;
    direction:ltr !important;
    pointer-events:auto !important;
  }
  .px-desktop-rail__footer-tool{
    width:40px !important;
    height:36px !important;
    min-width:40px !important;
    min-height:36px !important;
    max-width:40px !important;
    max-height:36px !important;
    padding:0 !important;
    display:grid !important;
    place-items:center !important;
    border-radius:11px !important;
    position:relative !important;
    z-index:6 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    text-decoration:none !important;
  }
  .px-desktop-rail__footer-tool--lang{grid-column:1 !important;grid-row:1 !important;}
  .px-desktop-rail__footer-tool--theme{grid-column:2 !important;grid-row:1 !important;}
  .px-desktop-rail__footer-tool--logout{grid-column:3 !important;grid-row:1 !important;}
  .px-desktop-rail__footer-tool .px-icon,
  .px-desktop-rail__footer-tool > svg{width:17px !important;height:17px !important;}
  .px-desktop-rail__footer-tool [data-lang-label]{font-size:9px !important;font-weight:950 !important;}
  .px-desktop-rail__footer-tool--theme .px-theme-icon{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    display:none !important;
    place-items:center !important;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

  html[data-theme="dark"] .px-desktop-rail__footer-tool--theme .px-theme-icon--moon{display:grid !important;}
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */


  /* Shared semantic icon accents: same contract as Workspace Rail. */
  .px-desktop-rail__service-trio .px-desktop-rail__info--about .px-desktop-rail__info-icon{
    color:#fff !important;
    border-color:rgb(132 186 255 / .34) !important;
    background:linear-gradient(135deg,#26b9ee 0%,#6472f3 54%,#a967e7 100%) !important;
    box-shadow:0 7px 16px rgb(72 85 224 / .18),inset 0 1px 0 rgb(255 255 255 / .22) !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info--pro .px-desktop-rail__info-icon{
    color:#d6b8ff !important;
    border-color:rgb(176 132 255 / .25) !important;
    background:linear-gradient(145deg,rgb(133 84 219 / .19),rgb(255 255 255 / .035)) !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info--explain .px-desktop-rail__info-icon{
    color:#9eeaff !important;
    border-color:rgb(92 199 255 / .24) !important;
    background:linear-gradient(145deg,rgb(30 166 230 / .16),rgb(255 255 255 / .032)) !important;
  }
  .px-desktop-rail__footer-tool--theme{
    color:#fff !important;
    border-color:rgb(156 118 255 / .42) !important;
    background:linear-gradient(135deg,#5e5ce6 0%,#7c56e8 56%,#a95fd4 100%) !important;
    box-shadow:0 7px 16px rgb(99 72 214 / .21),inset 0 1px 0 rgb(255 255 255 / .24) !important;
  }
/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */

/* test95: legacy Light rail rule removed; canonical owner = rail-system.css */


  .px-desktop-rail__service-trio .px-desktop-rail__info,
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon,
  .px-desktop-rail__footer-tool{
    transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info:is(:hover,:focus-visible) .px-desktop-rail__info-icon,
  .px-desktop-rail__footer-tool:is(:hover,:focus-visible){
    transform:translateY(-1px) !important;
  }
  .px-desktop-rail__service-trio .px-desktop-rail__info::before,
  .px-desktop-rail__service-trio .px-desktop-rail__info::after,
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon::before,
  .px-desktop-rail__service-trio .px-desktop-rail__info-icon::after,
  .px-desktop-rail__footer-tool::before,
  .px-desktop-rail__footer-tool::after{
    animation:none !important;
  }
}

/* 2.0.21-test77 — Home/Library/Favorites request label parity */
@media (min-width:900px){
  .px-desktop-rail__request{
    min-height:46px !important;
    height:46px !important;
    padding:6px 8px !important;
    border-radius:14px !important;
    display:grid !important;
    grid-template-columns:30px minmax(0,1fr) 30px !important;
    align-items:center !important;
    justify-items:center !important;
    column-gap:0 !important;
    font-size:11px !important;
    font-weight:850 !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  .px-desktop-rail__request > .px-lang-ar,
  .px-desktop-rail__request > .px-lang-en{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:center !important;
    font-size:11px !important;
    font-weight:850 !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  .px-desktop-rail__request-icon{
    grid-column:1 !important;
    grid-row:1 !important;
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    min-height:30px !important;
    border-radius:10px !important;
  }
  .px-desktop-rail__request-icon .px-icon{
    width:15px !important;
    height:15px !important;
  }
}


/* ========================================================================
   2.0.21-test83 — Canonical main rail motion
   Static icon boxes: no orbiting square, no continuous float, no rail-edge beam.
   Interaction is limited to a restrained hover/focus micro-response.
   ======================================================================== */
@media (min-width:900px){
  .px-desktop-rail::before,
  .px-desktop-rail::after,
  .px-desktop-rail__request::before,
  .px-desktop-rail__request::after,
  .px-desktop-rail__request-icon::before,
  .px-desktop-rail__request-icon::after,
  .px-desktop-rail__info-card::before,
  .px-desktop-rail__info-card::after,
  .px-desktop-rail__info-icon::before,
  .px-desktop-rail__info-icon::after{
    display:none !important;
    content:none !important;
    animation:none !important;
  }

  .px-desktop-rail__request-icon,
  .px-desktop-rail__info-icon,
  .px-desktop-rail__info-card{
    animation:none !important;
    transform:none !important;
  }

  .px-desktop-rail__request-icon,
  .px-desktop-rail__info-icon{
    overflow:hidden !important;
    transition:transform .18s ease, filter .18s ease, box-shadow .18s ease !important;
  }

  .px-desktop-rail__request:is(:hover,:focus-visible) .px-desktop-rail__request-icon,
  .px-desktop-rail__info-card:is(:hover,:focus-visible) .px-desktop-rail__info-icon{
    transform:translateY(-1px) scale(1.02) !important;
    filter:drop-shadow(0 0 6px rgb(83 155 255 / .18)) !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .px-desktop-rail__request-icon,
  .px-desktop-rail__info-icon{
    transition:none !important;
    transform:none !important;
  }
}


/* test156 — restore the spacious desktop Categories dialog without changing the six-action dock. */
@media (min-width:900px){
  .px-dock-category-dialog{width:min(760px,calc(100vw - 56px));max-height:min(720px,calc(100vh - 72px));padding:0;border:1px solid rgb(145 169 224 / .24);border-radius:30px;color:var(--px-text);background:linear-gradient(180deg,rgb(25 41 72 / .985),rgb(15 28 51 / .985));box-shadow:0 34px 110px rgb(2 8 23 / .42);overflow:hidden}
  .px-dock-category-dialog::backdrop{background:rgb(3 8 20 / .54);backdrop-filter:blur(13px) saturate(.92)}
  .px-dock-category-dialog__panel{padding:26px 28px 28px}
  .px-dock-category-dialog__head{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-bottom:20px;border-bottom:1px solid rgb(150 174 225 / .16)}
  .px-dock-category-dialog__head>div{display:grid;gap:6px}.px-dock-category-dialog__head strong{font-size:24px;font-weight:950;letter-spacing:-.02em}.px-dock-category-dialog__head small{color:var(--px-muted);font-size:12px;font-weight:780}
  .px-dock-category-dialog__head>button{width:44px;height:44px;padding:0;border:1px solid rgb(150 174 225 / .18);border-radius:14px;display:grid;place-items:center;color:var(--px-text);background:rgb(255 255 255 / .055);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
  .px-dock-category-dialog__head>button:hover{transform:translateY(-1px);border-color:rgb(113 92 255 / .34);background:rgb(113 92 255 / .10)}.px-dock-category-dialog__head>button .px-icon{width:19px;height:19px}
  .px-dock-category-dialog__grid{max-height:540px;overflow:auto;padding:20px 4px 2px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;scrollbar-width:thin}
  .px-dock-category-dialog__grid>a{min-height:68px;padding:12px 14px;border:1px solid rgb(150 174 225 / .14);border-radius:18px;display:grid;grid-template-columns:42px minmax(0,1fr) 38px;align-items:center;gap:12px;color:var(--px-text);background:linear-gradient(180deg,rgb(255 255 255 / .060),rgb(255 255 255 / .026));text-decoration:none;box-shadow:inset 0 1px 0 rgb(255 255 255 / .025);transition:transform .18s ease,border-color .18s ease,background .18s ease}
  .px-dock-category-dialog__grid>a:hover{transform:translateY(-2px);border-color:rgb(124 98 255 / .36);background:linear-gradient(135deg,rgb(59 130 246 / .12),rgb(139 92 246 / .13))}
  .px-dock-category-dialog__grid>a>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#b9c3ff;background:linear-gradient(135deg,rgb(73 142 255 / .13),rgb(126 89 255 / .16));border:1px solid rgb(142 161 255 / .10)}.px-dock-category-dialog__grid>a>span .px-icon{width:19px;height:19px}
  .px-dock-category-dialog__grid b{min-width:0;font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.px-dock-category-dialog__grid small{min-width:34px;height:30px;padding:0 7px;border-radius:999px;display:grid;place-items:center;color:#cbd5f3;background:rgb(255 255 255 / .055);font-size:10px;font-weight:900}
  html[data-theme="light"] .px-dock-category-dialog{border-color:rgb(75 96 138 / .15);background:linear-gradient(180deg,#fbfcff,#f1f5fb);box-shadow:0 34px 90px rgb(62 80 119 / .22)}
  html[data-theme="light"] .px-dock-category-dialog__grid>a{border-color:rgb(75 96 138 / .11);background:linear-gradient(180deg,#fff,#f7f9fd)}
  html[data-theme="light"] .px-dock-category-dialog__grid small{color:#58647b;background:#eef2f8}
}



