:root {
  --luly-accent: #d12d33;
  --luly-dark: #111217;
  --luly-soft: #f6f7fb;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: Poppins, Arial, sans-serif;
  color: #1f2430;
}

.navbar {
  box-shadow: 0 8px 28px rgba(17, 18, 23, 0.08);
}

.navbar-brand span {
  letter-spacing: -0.03em;
}

.nav-link {
  font-weight: 600;
}

.nav-link.active,
.nav-link:hover {
  color: var(--luly-accent) !important;
}

.btn {
  border-radius: 999px;
  font-weight: 700;
}

.btn-primary,
.text-bg-danger,
.contact100-form-btn {
  background: var(--luly-accent) !important;
  border-color: var(--luly-accent) !important;
}

.btn-primary:hover,
.text-bg-danger:hover,
.contact100-form-btn:hover {
  filter: brightness(0.92);
  transform: translateY(-1px);
}

section:first-of-type [data-bss-scroll-zoom] {
  position: relative;
  isolation: isolate;
}

section:first-of-type [data-bss-scroll-zoom]::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,0.82), rgba(255,255,255,0.38));
  z-index: -1;
}

.hero-content {
  padding-left: 1rem;
  padding-right: 1rem;
}

.hero-content h1 {
  letter-spacing: -0.06em;
  max-width: 920px;
}

.hero-content p {
  max-width: 680px;
  text-align: center;
  color: #323847;
}

.brand-divider {
  height: clamp(44px, 8vw, 110px);
  background: linear-gradient(180deg, #ffffff, var(--luly-soft));
}

.hero-typing {
  height: auto !important;
  min-height: 180px;
  padding: 2.5rem 1rem 3rem;
  transform: none !important;
}

.hero-typing h1,
.typing-box h1 {
  width: min(100%, 760px) !important;
  height: auto !important;
  line-height: 1.12 !important;
  font-size: clamp(2.3rem, 6vw, 4.3rem) !important;
}

#typed {
  width: auto !important;
  max-width: 100% !important;
  color: var(--luly-accent);
}

.services {
  padding-top: clamp(3rem, 8vw, 6rem);
  padding-bottom: clamp(3rem, 8vw, 6rem);
}

.services .section-title p {
  width: min(720px, 100%) !important;
}

.service-item,
.work-card,
.pricing-card,
.rr-card {
  box-shadow: 0 18px 45px rgba(17, 18, 23, 0.08);
}

.service-item,
.pricing-card,
.work-card {
  border-radius: 18px !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.service-item:hover,
.pricing-card:hover,
.work-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 60px rgba(17, 18, 23, 0.14);
}

.rr-card {
  background: #fff;
  margin: 0.75rem;
}

footer .container > div[style*="height"] {
  height: clamp(34px, 7vw, 90px) !important;
}

footer a {
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}

.portfolio-thumb,
.design-img {
  width: 100%;
  border-radius: 14px;
  border: 2px solid #293444;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

.client-work {
  background: linear-gradient(180deg, #fff, var(--luly-soft));
}

.order-title {
  color: #fff !important;
}

.pricing-page-footer {
  min-height: 100vh;
}

.pricing-card {
  height: 100%;
  border: 0;
}

.pricing-card .card-title {
  letter-spacing: -0.04em;
}

.pricing-description {
  min-height: 180px;
}

.package-select-btn {
  background: var(--luly-dark);
  color: #fff;
}

.package-select-btn:hover {
  background: var(--luly-accent);
  color: #fff;
}

.container-contact100 {
  padding-top: clamp(2rem, 6vw, 5rem);
  padding-bottom: clamp(2rem, 6vw, 5rem);
}

.wrap-contact100 {
  box-shadow: 0 22px 70px rgba(17, 18, 23, 0.12);
}

input:focus,
textarea:focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 45, 51, 0.18) !important;
  border-color: var(--luly-accent) !important;
}

@media (max-width: 767.98px) {
  .hero-content {
    min-height: 360px;
    margin-top: 0 !important;
  }

  .display-1,
  .display-2,
  .display-4 {
    letter-spacing: -0.05em;
  }

  .navbar .btn {
    width: 100%;
    margin: 0.35rem 0 !important;
  }

  .pricing-description {
    min-height: auto;
  }
}


/* LULYGraphics dark/orange theme refresh */
:root {
  --luly-accent: #ff6a00;
  --luly-accent-2: #ff9b38;
  --luly-warm: #331800;
  --luly-bg: #070604;
  --luly-panel: #11100e;
  --luly-panel-2: #18130d;
  --luly-border: rgba(255, 154, 56, 0.22);
  --luly-text: #fff6ec;
  --luly-muted: rgba(255, 246, 236, 0.72);
  --bs-primary: #ff6a00;
  --bs-primary-rgb: 255, 106, 0;
  --bs-body-color: var(--luly-text);
  --bs-body-bg: var(--luly-bg);
}

html[data-bs-theme="dark"] body,
body {
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 106, 0, 0.18), transparent 35rem),
    linear-gradient(180deg, #070604 0%, #0d0905 50%, #050403 100%) !important;
  color: var(--luly-text);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,0.5), transparent 70%);
  z-index: -1;
}

.navbar,
.navbar.bg-body {
  background: rgba(7, 6, 4, 0.86) !important;
  border-bottom: 1px solid var(--luly-border) !important;
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.28), 0 0 40px rgba(255, 106, 0, 0.08) !important;
  backdrop-filter: blur(18px);
}

.navbar .brand-logo,
.navbar .container > img:first-child {
  width: 44px !important;
  height: 44px !important;
  object-fit: cover;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 154, 56, 0.36);
  box-shadow: 0 0 28px rgba(255, 106, 0, 0.34);
}

.navbar-brand span {
  color: var(--luly-text);
  font-weight: 800 !important;
  letter-spacing: -0.04em;
}

.nav-link {
  color: rgba(255, 246, 236, 0.72) !important;
}

.nav-link.active,
.nav-link:hover,
.navbar-brand:hover span {
  color: var(--luly-accent-2) !important;
}

.navbar-toggler {
  border-color: rgba(255, 154, 56, 0.32) !important;
}

.navbar-toggler-icon {
  filter: invert(1) sepia(1) saturate(1.8) hue-rotate(345deg);
}

.btn,
.btn-primary,
.btn-dark,
.text-bg-danger,
.contact100-form-btn,
.package-select-btn {
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2)) !important;
  border-color: rgba(255, 154, 56, 0.48) !important;
  color: #170a00 !important;
  box-shadow: 0 14px 32px rgba(255, 106, 0, 0.24);
}

.btn:hover,
.btn-primary:hover,
.btn-dark:hover,
.text-bg-danger:hover,
.contact100-form-btn:hover,
.package-select-btn:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 18px 44px rgba(255, 106, 0, 0.34);
}

.btn-outline-dark {
  background: rgba(255,255,255,0.04) !important;
  border-color: rgba(255, 154, 56, 0.32) !important;
  color: var(--luly-text) !important;
  box-shadow: none;
}

.btn-outline-dark:hover {
  background: rgba(255, 106, 0, 0.14) !important;
  color: #fff !important;
}

section:first-of-type [data-bss-scroll-zoom] {
  background-blend-mode: multiply;
}

section:first-of-type [data-bss-scroll-zoom]::before {
  background:
    radial-gradient(circle at 50% 45%, rgba(255, 106, 0, 0.38), transparent 34rem),
    linear-gradient(90deg, rgba(7, 6, 4, 0.84), rgba(7, 6, 4, 0.42), rgba(7, 6, 4, 0.84)) !important;
}

.hero-content {
  min-height: clamp(460px, 60vw, 640px);
  background: transparent !important;
}

.hero-content h1,
.hero-content p {
  color: var(--luly-text) !important;
  text-shadow: 0 10px 36px rgba(0, 0, 0, 0.55);
}

.hero-content h1 {
  font-weight: 900 !important;
}

.hero-content p {
  color: var(--luly-muted) !important;
}

.brand-divider {
  background: linear-gradient(180deg, rgba(7,6,4,0), var(--luly-bg)) !important;
}

body > h1.display-1 {
  color: var(--luly-text) !important;
  text-shadow: 0 0 42px rgba(255, 106, 0, 0.22);
}

#typed,
.text-danger,
.services .icon i,
.services h2 span,
.contact100-form-title {
  color: var(--luly-accent-2) !important;
}

.services,
.client-work,
.container-contact100,
.design-builder,
section,
body > .mb-5 {
  background: transparent !important;
}

.services .section-title h2,
.services .section-title p,
#reviews,
.portfolio-title,
.order-title,
.client-work h2,
.client-work p,
.text-dark {
  color: var(--luly-text) !important;
}

.services .section-title p,
.client-work p,
.login-muted {
  color: var(--luly-muted) !important;
}

.services .icon-box,
.work-card,
.pricing-card,
.rr-card,
.package-preview,
.wrap-contact100 {
  background: linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035)) !important;
  border: 1px solid var(--luly-border) !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255,255,255,0.06) !important;
  backdrop-filter: blur(12px);
}

.services .icon-box::before {
  background: linear-gradient(135deg, rgba(255,106,0,0.9), rgba(255,155,56,0.76)) !important;
}

.services .icon-box:hover .title,
.services .icon-box:hover .description,
.services .icon-box:hover .icon i,
.services .icon-box:hover h4,
.services .icon-box:hover p {
  color: #170a00 !important;
}

.services .title,
.services h4,
.work-card h5,
.pricing-card .card-title,
.rr-card h4 {
  color: var(--luly-text) !important;
}

.services .description,
.work-card span,
.work-card p,
.pricing-card p,
.pricing-card li,
.rr-card p {
  color: var(--luly-muted) !important;
}

.rr-rateContainer span,
.rr-rateContainer span::before {
  color: var(--luly-accent-2) !important;
}

.portfolio-thumb,
.design-img {
  border-color: rgba(255, 154, 56, 0.32) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,0.35), 0 0 30px rgba(255,106,0,0.08);
}

footer,
footer.bg-dark,
.pricing-page-footer {
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 106, 0, 0.2), transparent 34rem),
    linear-gradient(180deg, #090604, #030201) !important;
  border-top: 1px solid var(--luly-border);
}

footer .btn.bg-white {
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2)) !important;
  color: #170a00 !important;
  border: 0 !important;
}

footer a.link-light {
  color: rgba(255, 246, 236, 0.72) !important;
}

footer a.link-light:hover {
  color: var(--luly-accent-2) !important;
}

body > div[style*="height"],
.services + div,
section + div[style*="height"] {
  background: transparent !important;
}

.wrap-contact100 {
  width: min(680px, 100%);
  padding: clamp(30px, 6vw, 56px) !important;
  border-radius: 34px;
}

.wrap-input100,
.input100,
.form-control {
  background: rgba(255,255,255,0.06) !important;
  color: var(--luly-text) !important;
  border: 1px solid rgba(255, 154, 56, 0.22) !important;
}

.input100::placeholder,
.form-control::placeholder {
  color: rgba(255, 246, 236, 0.45) !important;
}

.focus-input100 {
  background-color: rgba(255, 106, 0, 0.12) !important;
}

input:focus,
textarea:focus,
.form-control:focus {
  box-shadow: 0 0 0 0.22rem rgba(255, 106, 0, 0.18), 0 0 32px rgba(255, 106, 0, 0.14) !important;
  border-color: rgba(255, 154, 56, 0.74) !important;
}

.card,
.list-group-item {
  background-color: var(--luly-panel) !important;
  color: var(--luly-text) !important;
  border-color: var(--luly-border) !important;
}

/* Login page */
.luly-login-page {
  min-height: 100vh;
  overflow-x: hidden;
}

.login-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
}

.login-brand-panel,
.login-card-section {
  position: relative;
  min-height: 100vh;
  padding: clamp(28px, 5vw, 70px);
}

.login-brand-panel {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,106,0,0.36), transparent 23rem),
    linear-gradient(135deg, rgba(255,106,0,0.10), rgba(255,255,255,0.03)),
    #070604;
  border-right: 1px solid var(--luly-border);
}

.login-brand-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('../img/logo_3.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: min(72vw, 650px);
  opacity: 0.18;
  filter: blur(0.2px);
}

.login-home-link,
.login-brand-copy {
  position: relative;
  z-index: 1;
}

.login-home-link img {
  width: 78px;
  height: 78px;
  object-fit: cover;
  border-radius: 22px;
  border: 1px solid rgba(255,154,56,0.36);
  box-shadow: 0 0 42px rgba(255,106,0,0.42);
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 0.45rem 0.75rem;
  border: 1px solid rgba(255,154,56,0.28);
  border-radius: 999px;
  color: var(--luly-accent-2);
  background: rgba(255,106,0,0.08);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.login-brand-copy h1 {
  max-width: 760px;
  margin: 1rem 0;
  color: var(--luly-text);
  font-size: clamp(3rem, 7vw, 6.4rem);
  line-height: 0.92;
  font-weight: 900;
  letter-spacing: -0.08em;
}

.login-brand-copy p {
  max-width: 560px;
  color: var(--luly-muted);
  font-size: clamp(1rem, 2vw, 1.22rem);
}

.login-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-top: 1.6rem;
}

.login-tags span {
  padding: 0.65rem 0.9rem;
  border-radius: 999px;
  border: 1px solid rgba(255,154,56,0.24);
  color: rgba(255,246,236,0.84);
  background: rgba(255,255,255,0.05);
}

.login-card-section {
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at 50% 28%, rgba(255,106,0,0.18), transparent 22rem),
    rgba(7, 6, 4, 0.86);
}

.login-card {
  width: min(100%, 460px);
  padding: clamp(26px, 5vw, 44px);
  border-radius: 34px;
  background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035));
  border: 1px solid var(--luly-border);
  box-shadow: 0 30px 90px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.08);
  backdrop-filter: blur(18px);
}

.login-card-logo img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 18px;
  margin-bottom: 1.2rem;
  box-shadow: 0 0 32px rgba(255,106,0,0.34);
}

.login-card h2 {
  font-size: clamp(2.2rem, 5vw, 3.3rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.06em;
  margin-bottom: 0.7rem;
  color: var(--luly-text);
}

.login-muted {
  margin-bottom: 1.7rem;
}

.login-form label,
.remember-row {
  color: rgba(255,246,236,0.82);
  font-weight: 600;
}

.remember-row {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

.login-form a,
.login-bottom-links a {
  color: var(--luly-accent-2);
  text-decoration: none;
  font-weight: 700;
}

.login-form a:hover,
.login-bottom-links a:hover {
  text-decoration: underline;
}

.login-status {
  min-height: 1.35rem;
  margin: 0.9rem 0 0;
  color: var(--luly-accent-2);
  font-size: 0.9rem;
}

.login-bottom-links {
  display: flex;
  gap: 0.65rem;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
  color: rgba(255,246,236,0.48);
}

@media (max-width: 991.98px) {
  .login-shell {
    grid-template-columns: 1fr;
  }

  .login-brand-panel {
    min-height: 46vh;
    border-right: 0;
    border-bottom: 1px solid var(--luly-border);
  }

  .login-card-section {
    min-height: 54vh;
  }

  .login-brand-copy h1 {
    font-size: clamp(2.4rem, 13vw, 4rem);
  }
}

@media (max-width: 767.98px) {
  .navbar .brand-logo,
  .navbar .container > img:first-child {
    width: 40px !important;
    height: 40px !important;
  }

  .hero-content {
    min-height: 390px !important;
  }

  .login-brand-panel,
  .login-card-section {
    padding: 24px;
  }

  .login-tags {
    display: none;
  }
}


/* Portfolio polish requested: readable client messages, brand-colored anonymous icons and centered typing section */
.client-work {
  padding-top: clamp(3rem, 6vw, 5rem) !important;
  padding-bottom: clamp(3rem, 7vw, 5.5rem) !important;
}

.client-work .text-center p {
  color: rgba(255, 246, 236, 0.68) !important;
}

.client-head {
  gap: 14px;
  margin-bottom: 1.2rem;
}

.anon-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 30% 22%, rgba(255,255,255,0.52), transparent 28%),
    linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2)) !important;
  color: #170a00 !important;
  border: 1px solid rgba(255, 204, 143, 0.45);
  box-shadow: 0 0 34px rgba(255, 106, 0, 0.36), inset 0 1px 0 rgba(255,255,255,0.28);
}

.client-work .dm-box {
  position: relative;
  padding: 1rem 1.1rem !important;
  margin: 0 0 1.35rem;
  border-radius: 20px 20px 20px 6px;
  background:
    linear-gradient(135deg, rgba(255,106,0,0.18), rgba(255,255,255,0.055)) !important;
  border: 1px solid rgba(255,154,56,0.28);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.07), 0 16px 42px rgba(0,0,0,0.2);
  overflow: hidden;
}

.client-work .dm-box::after {
  content: "Request";
  position: absolute;
  top: 0.65rem;
  right: 0.85rem;
  color: rgba(255, 155, 56, 0.72);
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.client-work .dm-box p {
  max-width: calc(100% - 76px);
  margin: 0 !important;
  color: rgba(255, 246, 236, 0.94) !important;
  font-size: 0.94rem;
  line-height: 1.7;
}

.work-card h4,
.featured-project h1,
.featured-project h3,
.featured-project li {
  color: var(--luly-text) !important;
}

.featured-project p,
.featured-project li {
  color: var(--luly-muted) !important;
}

.portfolio-typing {
  min-height: clamp(420px, 52vh, 580px) !important;
  padding: clamp(3rem, 7vw, 6rem) 1rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center;
  background:
    radial-gradient(circle at 50% 48%, rgba(255,106,0,0.26), transparent 26rem),
    linear-gradient(180deg, rgba(7,6,4,0), rgba(255,106,0,0.045), rgba(7,6,4,0));
  transform: none !important;
}

.portfolio-typing-inner {
  width: min(100%, 860px);
  margin: auto;
}

.portfolio-kicker {
  display: inline-flex;
  padding: 0.45rem 0.8rem;
  border: 1px solid rgba(255,154,56,0.28);
  border-radius: 999px;
  background: rgba(255,106,0,0.08);
  color: var(--luly-accent-2);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.portfolio-typing h1 {
  width: min(100%, 760px) !important;
  margin: 0.85rem auto 0.75rem !important;
  font-size: clamp(3rem, 8vw, 6rem) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.07em;
}

.portfolio-typing p {
  max-width: 660px;
  margin: 0 auto 1.45rem;
  color: var(--luly-muted) !important;
  font-size: clamp(1rem, 2vw, 1.15rem);
}

.portfolio-typing-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.featured-project {
  scroll-margin-top: 110px;
}

.portfolio-insight {
  padding: 0.75rem 0 0.25rem;
}

.insight-card {
  height: 100%;
  padding: 1.35rem;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,154,56,0.22);
  box-shadow: 0 22px 70px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.06);
}

.insight-card span {
  color: var(--luly-accent-2);
  font-weight: 900;
  letter-spacing: 0.16em;
}

.insight-card h5 {
  margin: 0.45rem 0 0.45rem;
  color: var(--luly-text);
  font-weight: 800;
}

.insight-card p {
  margin: 0;
  color: var(--luly-muted) !important;
  font-size: 0.95rem;
}

@media (max-width: 767.98px) {
  .client-work .dm-box p {
    max-width: 100%;
    padding-top: 1.15rem;
  }

  .client-work .dm-box::after {
    left: 1.1rem;
    right: auto;
  }

  .portfolio-typing {
    min-height: 390px !important;
  }
}


/* New brand banner, process, order and FAQ polish */
.luly-section-lead {
  max-width: 720px;
  color: var(--luly-muted) !important;
}

.login-brand-panel {
  background:
    radial-gradient(circle at 52% 34%, rgba(255,106,0,0.18), transparent 24rem),
    linear-gradient(90deg, rgba(7,6,4,0.92), rgba(7,6,4,0.55), rgba(7,6,4,0.94)),
    url('../img/brand-banner.png') center / cover no-repeat !important;
}

.login-brand-panel::after {
  background:
    radial-gradient(circle at 50% 42%, rgba(255,106,0,0.26), transparent 25rem),
    linear-gradient(180deg, rgba(7,6,4,0.14), rgba(7,6,4,0.62)) !important;
  opacity: 1 !important;
  filter: none !important;
}

.login-banner-card {
  position: relative;
  z-index: 2;
  width: min(100%, 560px);
  margin: auto 0;
  padding: 0.8rem;
  border-radius: 30px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,154,56,0.26);
  box-shadow: 0 28px 90px rgba(0,0,0,0.36), 0 0 60px rgba(255,106,0,0.12);
  backdrop-filter: blur(14px);
}

.login-banner-card img {
  width: 100%;
  display: block;
  border-radius: 22px;
  border: 1px solid rgba(255,154,56,0.22);
}

.login-banner-card span {
  display: block;
  padding: 0.7rem 0.35rem 0.15rem;
  color: var(--luly-muted);
  font-size: 0.88rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.luly-process,
.luly-stats,
.order-info-grid,
.luly-faq {
  background: transparent !important;
}

.process-card,
.stat-card,
.mini-info-card,
.faq-card {
  height: 100%;
  border: 1px solid rgba(255,154,56,0.22);
  background: linear-gradient(180deg, rgba(255,255,255,0.072), rgba(255,255,255,0.03));
  border-radius: 28px;
  box-shadow: 0 22px 70px rgba(0,0,0,0.24), inset 0 1px 0 rgba(255,255,255,0.06);
  backdrop-filter: blur(12px);
}

.process-card {
  padding: 1.55rem;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.process-card:hover,
.mini-info-card:hover,
.faq-card:hover,
.luly-package-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255,154,56,0.46);
  box-shadow: 0 30px 90px rgba(0,0,0,0.32), 0 0 45px rgba(255,106,0,0.12), inset 0 1px 0 rgba(255,255,255,0.08);
}

.process-card span {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  margin-bottom: 1rem;
  color: #170a00;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  font-weight: 900;
  box-shadow: 0 0 34px rgba(255,106,0,0.34);
}

.process-card h3,
.mini-info-card h3,
.faq-card h3 {
  color: var(--luly-text) !important;
  font-size: 1.18rem;
  font-weight: 800;
  margin-bottom: 0.6rem;
}

.process-card p,
.mini-info-card p,
.faq-card p,
.order-intro p,
.order-banner-card p {
  color: var(--luly-muted) !important;
  margin-bottom: 0;
}

.stat-card {
  padding: 1.1rem;
  border-radius: 22px;
}

.stat-card strong {
  display: block;
  color: var(--luly-accent-2);
  font-size: clamp(1.3rem, 3vw, 2rem);
  font-weight: 900;
  letter-spacing: -0.04em;
}

.stat-card span {
  color: var(--luly-muted);
  font-weight: 600;
}

.brand-cta-banner {
  background: transparent !important;
}

.brand-cta-inner {
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid rgba(255,154,56,0.28);
  border-radius: 34px;
  background:
    radial-gradient(circle at 24% 42%, rgba(255,106,0,0.28), transparent 22rem),
    linear-gradient(90deg, rgba(7,6,4,0.9), rgba(7,6,4,0.55), rgba(7,6,4,0.92)),
    url('../img/brand-banner.png') center / cover no-repeat;
  box-shadow: 0 32px 100px rgba(0,0,0,0.34), 0 0 70px rgba(255,106,0,0.12);
  overflow: hidden;
}

.brand-cta-inner h2 {
  max-width: 760px;
  margin: 0.95rem 0 0.7rem;
  color: var(--luly-text);
  font-size: clamp(2.4rem, 6vw, 5.2rem);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.08em;
}

.brand-cta-inner p {
  max-width: 620px;
  color: var(--luly-muted);
  font-size: 1.05rem;
}

.brand-cta-actions {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.order-intro {
  max-width: 820px;
  margin-bottom: 2.5rem;
  padding-top: clamp(2rem, 5vw, 4rem);
}

.order-intro h1 {
  margin: 1rem 0 0.85rem;
  color: var(--luly-text);
  font-size: clamp(2.4rem, 6vw, 5rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.08em;
}

.order-title {
  display: none;
}

.luly-package-card {
  position: relative;
  overflow: hidden;
  min-height: 100%;
}

.luly-package-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 18% 0%, rgba(255,106,0,0.18), transparent 14rem);
  pointer-events: none;
}

.luly-package-card .card-body {
  position: relative;
  z-index: 1;
}

.package-card-featured {
  border-color: rgba(255,154,56,0.58) !important;
  box-shadow: 0 28px 95px rgba(0,0,0,0.32), 0 0 54px rgba(255,106,0,0.18) !important;
}

.package-badge {
  display: inline-flex;
  margin-bottom: 0.85rem;
  padding: 0.38rem 0.65rem;
  border-radius: 999px;
  background: rgba(255,106,0,0.11);
  border: 1px solid rgba(255,154,56,0.27);
  color: var(--luly-accent-2);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.pricing-card .card-subtitle span {
  display: inline-block;
  color: var(--luly-accent-2) !important;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 0.75rem;
}

.package-features {
  list-style: none;
  padding: 0;
  margin: 1.1rem 0 1.4rem;
}

.package-features li {
  position: relative;
  padding-left: 1.35rem;
  margin: 0.5rem 0;
  color: rgba(255,246,236,0.78) !important;
}

.package-features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.68rem;
  width: 0.48rem;
  height: 0.48rem;
  border-radius: 50%;
  background: var(--luly-accent-2);
  box-shadow: 0 0 18px rgba(255,106,0,0.5);
}

.order-banner-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  padding: 1rem;
  border: 1px solid rgba(255,154,56,0.25);
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.034));
  box-shadow: 0 28px 90px rgba(0,0,0,0.32), inset 0 1px 0 rgba(255,255,255,0.07);
}

.order-banner-card img {
  width: 100%;
  border-radius: 22px;
  border: 1px solid rgba(255,154,56,0.22);
}

.order-banner-card > div {
  padding: 0 0.45rem 0.4rem;
}

.order-banner-card h2,
.luly-faq h2 {
  color: var(--luly-text);
}

.mini-info-card,
.faq-card {
  padding: 1.25rem;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

@media (max-width: 991.98px) {
  .brand-cta-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .brand-cta-actions {
    justify-content: flex-start;
  }

  .login-banner-card {
    margin: 1.5rem 0;
  }
}

@media (max-width: 767.98px) {
  .brand-cta-inner {
    min-height: 420px;
  }

  .brand-cta-actions .btn,
  .portfolio-typing-actions .btn {
    width: 100%;
  }

  .login-banner-card {
    display: none;
  }
}


/* Login reverted to the cleaner logo-focused version */
.login-brand-panel {
  background:
    radial-gradient(circle at 50% 42%, rgba(255,106,0,0.36), transparent 23rem),
    linear-gradient(135deg, rgba(255,106,0,0.10), rgba(255,255,255,0.03)),
    #070604 !important;
}

.login-brand-panel::after {
  background-image: url('../img/logo_3.png') !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: min(72vw, 650px) !important;
  opacity: 0.18 !important;
  filter: blur(0.2px) !important;
}

.login-banner-card {
  display: none !important;
}

/* Order page improvements */
.package-select-pill {
  min-height: 48px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 999px !important;
  letter-spacing: 0.01em;
}

.order-brief-section {
  position: relative;
}

.brief-choice-card,
.brief-checklist-card {
  height: 100%;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid rgba(255,154,56,0.25);
  border-radius: 32px;
  background:
    radial-gradient(circle at 18% 0%, rgba(255,106,0,0.18), transparent 18rem),
    linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.032));
  box-shadow: 0 28px 90px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.07);
  backdrop-filter: blur(14px);
}

.brief-choice-card h2,
.brief-checklist-card h2 {
  color: var(--luly-text);
  margin: 1rem 0 0.8rem;
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.06em;
}

.brief-choice-card h2 {
  font-size: clamp(2rem, 4.8vw, 3.6rem);
}

.brief-checklist-card h2 {
  font-size: clamp(1.9rem, 4vw, 3rem);
}

.brief-choice-card p,
.brief-item p {
  color: var(--luly-muted) !important;
}

.brief-choice-card .btn {
  margin-top: 0.8rem;
}

.brief-checklist-head {
  margin-bottom: 1.35rem;
}

.brief-item {
  height: 100%;
  padding: 1rem;
  border-radius: 22px;
  border: 1px solid rgba(255,154,56,0.18);
  background: rgba(0,0,0,0.18);
}

.brief-item strong {
  display: inline-flex;
  margin-bottom: 0.7rem;
  color: var(--luly-accent-2);
  font-size: 0.78rem;
  letter-spacing: 0.16em;
}

.brief-item span {
  display: block;
  color: var(--luly-text);
  font-weight: 850;
  margin-bottom: 0.35rem;
}

.brief-item p {
  margin: 0;
  font-size: 0.93rem;
}

.order-banner-card img {
  filter: brightness(0.68) contrast(1.12) saturate(1.05);
  box-shadow: inset 0 0 0 1px rgba(255,154,56,0.22), 0 24px 70px rgba(0,0,0,0.38);
}

.order-banner-card {
  background:
    radial-gradient(circle at 50% 10%, rgba(255,106,0,0.13), transparent 17rem),
    linear-gradient(180deg, rgba(255,255,255,0.065), rgba(255,255,255,0.026));
}

/* =========================================================
   LULYGraphics final frontend polish
   Added after Bootstrap Studio export overrides.
   ========================================================= */
:root {
  --luly-accent: #ff6a00;
  --luly-accent-2: #ffad52;
  --luly-bg: #060504;
  --luly-bg-2: #0c0805;
  --luly-panel: rgba(255, 255, 255, 0.065);
  --luly-panel-strong: rgba(255, 255, 255, 0.095);
  --luly-border: rgba(255, 154, 56, 0.26);
  --luly-border-strong: rgba(255, 173, 82, 0.48);
  --luly-text: #fff7ee;
  --luly-muted: rgba(255, 247, 238, 0.72);
  --luly-muted-2: rgba(255, 247, 238, 0.56);
}

* {
  box-sizing: border-box;
}

html {
  overflow-x: hidden;
}

html[data-bs-theme="dark"] body,
body {
  min-width: 0;
  overflow-x: hidden;
  font-family: Poppins, Arial, sans-serif;
  background:
    radial-gradient(circle at 50% -10%, rgba(255, 106, 0, 0.22), transparent 30rem),
    radial-gradient(circle at 12% 22%, rgba(255, 106, 0, 0.08), transparent 22rem),
    linear-gradient(180deg, var(--luly-bg) 0%, var(--luly-bg-2) 48%, #040302 100%) !important;
  color: var(--luly-text) !important;
}

body::before {
  opacity: 0.9;
}

img,
svg,
video {
  max-width: 100%;
}

main {
  position: relative;
  z-index: 1;
}

.luly-section {
  position: relative;
  padding: clamp(4.5rem, 8vw, 7.2rem) 0;
}

.section-heading h2,
.portfolio-preview h2,
.portfolio-gallery h2,
.featured-project h2,
.order-intro h1,
.contact-hero h1,
.footer-cta h2 {
  color: var(--luly-text) !important;
  font-weight: 900;
  letter-spacing: -0.07em;
  line-height: 0.98;
}

.section-heading h2,
.portfolio-preview h2,
.portfolio-gallery h2,
.featured-project h2,
.footer-cta h2 {
  font-size: clamp(2.25rem, 5vw, 4.4rem);
}

.section-heading p,
.luly-section-lead,
.featured-project p,
.contact-hero p,
.footer-cta p,
.footer-links p {
  color: var(--luly-muted) !important;
}

.eyebrow,
.portfolio-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 0.46rem 0.78rem;
  border: 1px solid rgba(255, 154, 56, 0.3);
  border-radius: 999px;
  color: var(--luly-accent-2) !important;
  background: rgba(255, 106, 0, 0.09);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 0 28px rgba(255,106,0,0.08);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

/* Navigation */
.navbar.luly-navbar,
.navbar.bg-body {
  background: rgba(6, 5, 4, 0.84) !important;
  border-bottom: 1px solid var(--luly-border) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.navbar-brand {
  min-width: 0;
}

.navbar .brand-logo,
.navbar .container > img:first-child,
.footer-brand img {
  width: 44px !important;
  height: 44px !important;
  object-fit: cover;
  border-radius: 14px !important;
  border: 1px solid rgba(255, 173, 82, 0.38);
  box-shadow: 0 0 28px rgba(255, 106, 0, 0.34);
}

.navbar-brand span,
.footer-brand span {
  color: var(--luly-text) !important;
  font-weight: 900 !important;
  letter-spacing: -0.05em;
}

.nav-link {
  position: relative;
  color: rgba(255, 247, 238, 0.72) !important;
  font-weight: 700;
}

.nav-link::after {
  content: "";
  position: absolute;
  left: 0.5rem;
  right: 0.5rem;
  bottom: 0.15rem;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--luly-accent), var(--luly-accent-2));
  opacity: 0;
  transform: scaleX(0.5);
  transition: opacity 0.22s ease, transform 0.22s ease;
}

.nav-link.active,
.nav-link:hover,
.navbar-brand:hover span {
  color: var(--luly-accent-2) !important;
}

.nav-link.active::after,
.nav-link:hover::after {
  opacity: 1;
  transform: scaleX(1);
}

.navbar-actions .btn {
  white-space: nowrap;
}

/* Buttons */
.btn,
.btn-primary,
.btn-dark,
.text-bg-danger,
.contact100-form-btn {
  border-radius: 999px !important;
  font-weight: 850 !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease, color 0.22s ease, filter 0.22s ease;
}

.btn-primary,
.btn-dark,
.luly-btn-primary,
.contact100-form-btn,
.luly-nav-order {
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2)) !important;
  border-color: rgba(255, 173, 82, 0.52) !important;
  color: #180a00 !important;
  box-shadow: 0 14px 34px rgba(255, 106, 0, 0.24) !important;
}

.btn-outline-dark,
.luly-btn-ghost {
  background: rgba(255, 255, 255, 0.045) !important;
  border: 1px solid rgba(255, 173, 82, 0.34) !important;
  color: var(--luly-text) !important;
  box-shadow: none !important;
}

.btn:hover,
.btn-primary:hover,
.btn-dark:hover,
.luly-btn-primary:hover,
.luly-btn-ghost:hover,
.contact100-form-btn:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 18px 44px rgba(255, 106, 0, 0.32) !important;
}

/* Home hero */
.luly-hero {
  position: relative;
  min-height: clamp(660px, 92vh, 900px);
  display: flex;
  align-items: center;
  padding: clamp(5rem, 8vw, 8rem) 0;
  isolation: isolate;
  background:
    radial-gradient(circle at 52% 44%, rgba(255, 106, 0, 0.32), transparent 28rem),
    linear-gradient(90deg, rgba(6,5,4,0.94), rgba(6,5,4,0.58), rgba(6,5,4,0.9)),
    url('../img/hero.jpeg') center / cover no-repeat;
}

.luly-hero::after,
.portfolio-hero::after,
.order-hero::after,
.contact-hero::after {
  content: "";
  position: absolute;
  inset: auto 8% 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 154, 56, 0.48), transparent);
  opacity: 0.45;
  pointer-events: none;
}

.luly-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.78fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: center;
}

.luly-hero h1 {
  max-width: 880px;
  margin: 1rem 0 0.9rem;
  color: var(--luly-text);
  font-size: clamp(3.2rem, 9vw, 8rem);
  line-height: 0.88;
  font-weight: 950;
  letter-spacing: -0.095em;
  text-shadow: 0 18px 62px rgba(0, 0, 0, 0.58), 0 0 38px rgba(255, 106, 0, 0.18);
}

.luly-hero p {
  max-width: 650px;
  color: var(--luly-muted) !important;
  font-size: clamp(1.05rem, 2vw, 1.28rem);
}

.hero-actions,
.brand-cta-actions,
.portfolio-typing-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  align-items: center;
}

.hero-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.8rem;
}

.hero-metrics span {
  display: inline-flex;
  flex-direction: column;
  min-width: 142px;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(255, 154, 56, 0.22);
  border-radius: 20px;
  background: rgba(255,255,255,0.052);
  color: var(--luly-muted);
  backdrop-filter: blur(10px);
}

.hero-metrics strong {
  color: var(--luly-accent-2);
  font-size: 1.22rem;
  line-height: 1;
}

.luly-hero-preview {
  position: relative;
  padding: 0.8rem;
  border: 1px solid rgba(255, 154, 56, 0.28);
  border-radius: 34px;
  background: rgba(255,255,255,0.06);
  box-shadow: 0 34px 100px rgba(0,0,0,0.42), 0 0 70px rgba(255,106,0,0.14);
  backdrop-filter: blur(14px);
}

.luly-hero-preview img {
  width: 100%;
  display: block;
  border-radius: 25px;
  border: 1px solid rgba(255, 154, 56, 0.24);
  filter: brightness(0.82) contrast(1.1) saturate(1.08);
}

.preview-chip {
  position: absolute;
  left: 1.45rem;
  bottom: 1.45rem;
  padding: 0.55rem 0.75rem;
  border-radius: 999px;
  background: rgba(6,5,4,0.76);
  border: 1px solid rgba(255, 154, 56, 0.28);
  color: var(--luly-accent-2);
  font-size: 0.8rem;
  font-weight: 850;
  backdrop-filter: blur(12px);
}

.luly-keyword-strip {
  min-height: auto !important;
  padding: clamp(2.4rem, 5vw, 4rem) 1rem !important;
  background: transparent !important;
}

.luly-keyword-strip h2 {
  width: min(100%, 780px) !important;
  margin: auto !important;
  color: var(--luly-text);
  font-size: clamp(2.6rem, 8vw, 6rem) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: -0.075em;
  text-align: center;
}

/* Cards / glassmorphism */
.luly-service-card,
.process-card,
.stat-card,
.review-card,
.work-card,
.insight-card,
.luly-package-card,
.flow-step,
.brief-choice-card,
.brief-checklist-card,
.brief-item,
.mini-info-card,
.faq-card,
.order-banner-card,
.contact-info-stack > div,
.wrap-contact100,
.login-card {
  border: 1px solid var(--luly-border) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.078), rgba(255,255,255,0.032)) !important;
  box-shadow: 0 24px 80px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.07) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.luly-service-card,
.review-card,
.work-card,
.insight-card,
.flow-step,
.brief-item,
.mini-info-card,
.faq-card {
  height: 100%;
  padding: clamp(1.2rem, 2.4vw, 1.65rem);
  border-radius: 28px;
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.luly-service-card:hover,
.process-card:hover,
.review-card:hover,
.work-card:hover,
.insight-card:hover,
.luly-package-card:hover,
.flow-step:hover,
.brief-item:hover,
.mini-info-card:hover,
.faq-card:hover,
.portfolio-tile:hover {
  transform: translateY(-6px);
  border-color: var(--luly-border-strong) !important;
  box-shadow: 0 32px 95px rgba(0,0,0,0.36), 0 0 44px rgba(255,106,0,0.12), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.luly-service-card i {
  display: inline-grid;
  place-items: center;
  width: 3.1rem;
  height: 3.1rem;
  margin-bottom: 1rem;
  border-radius: 18px;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  color: #170a00 !important;
  box-shadow: 0 0 32px rgba(255,106,0,0.32);
  font-size: 1.3rem;
}

.luly-service-card h3,
.review-card strong,
.flow-step span,
.brief-item span,
.mini-info-card h3,
.faq-card h3,
.work-card h5,
.work-card h4,
.insight-card h5,
.luly-package-card .card-title {
  color: var(--luly-text) !important;
  font-weight: 850;
}

.luly-service-card h3 {
  font-size: 1.2rem;
}

.luly-service-card p,
.review-card p,
.process-card p,
.work-card p,
.work-card small,
.insight-card p,
.flow-step p,
.brief-item p,
.mini-info-card p,
.faq-card p,
.luly-package-card p,
.luly-package-card li,
.order-banner-card p {
  color: var(--luly-muted) !important;
}

.process-card span,
.flow-step strong,
.insight-card span,
.brief-item strong {
  color: #170a00 !important;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
}

.stars {
  color: var(--luly-accent-2);
  letter-spacing: 0.08em;
  margin-bottom: 0.85rem;
}

/* Portfolio */
.portfolio-hero {
  min-height: clamp(520px, 72vh, 720px);
  display: flex;
  align-items: center;
  text-align: center;
  background:
    radial-gradient(circle at 50% 40%, rgba(255,106,0,0.26), transparent 28rem),
    linear-gradient(180deg, rgba(6,5,4,0.2), rgba(255,106,0,0.03), rgba(6,5,4,0.1));
}

.portfolio-hero .portfolio-typing-inner {
  width: min(100%, 900px);
  margin: auto;
}

.portfolio-hero h1 {
  width: min(100%, 780px) !important;
  margin: 0.9rem auto 0.85rem !important;
  color: var(--luly-text) !important;
  font-size: clamp(3.2rem, 9vw, 7rem) !important;
  line-height: 0.92 !important;
  font-weight: 950 !important;
  letter-spacing: -0.085em !important;
}

.portfolio-hero p {
  max-width: 700px;
  margin: 0 auto 1.5rem;
  color: var(--luly-muted) !important;
  font-size: clamp(1rem, 2vw, 1.18rem);
}

.client-head {
  display: flex;
  align-items: center;
}

.client-head h5 {
  margin-bottom: 0.1rem;
}

.anon-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  font-size: 1.45rem;
  font-weight: 950;
}

.dm-box p {
  color: rgba(255, 247, 238, 0.95) !important;
}

.portfolio-tile,
.featured-image {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 26px;
  border: 1px solid rgba(255,154,56,0.3);
  background: rgba(255,255,255,0.045);
  box-shadow: 0 24px 72px rgba(0,0,0,0.3), 0 0 32px rgba(255,106,0,0.07);
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.portfolio-tile img,
.featured-image img,
.portfolio-thumb,
.design-img {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border: 0 !important;
  border-radius: inherit !important;
  filter: brightness(0.86) contrast(1.08) saturate(1.08);
  transition: transform 0.42s ease, filter 0.32s ease;
}

.portfolio-tile:hover img,
.featured-image:hover img {
  transform: scale(1.045);
  filter: brightness(0.72) contrast(1.12) saturate(1.12);
}

.portfolio-tile span {
  position: absolute;
  inset: auto 0 0;
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  padding: 3.5rem 1rem 1rem;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,0.78));
  color: var(--luly-text);
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.24s ease, transform 0.24s ease;
}

.portfolio-tile:hover span,
.portfolio-tile:focus-visible span {
  opacity: 1;
  transform: translateY(0);
}

.portfolio-tile strong {
  color: var(--luly-text);
  font-size: 1rem;
}

.portfolio-tile em {
  color: var(--luly-accent-2);
  font-style: normal;
  font-size: 0.86rem;
}

.featured-project h2 {
  margin: 1rem 0 0.9rem;
}

.project-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1.3rem;
}

.project-tags span {
  padding: 0.55rem 0.75rem;
  border-radius: 999px;
  border: 1px solid rgba(255,154,56,0.24);
  color: rgba(255,247,238,0.84);
  background: rgba(255,255,255,0.045);
  font-size: 0.85rem;
  font-weight: 700;
}

/* Lightbox */
.luly-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1080;
  display: grid;
  place-items: center;
  padding: 1.25rem;
  background: rgba(0,0,0,0.82);
  backdrop-filter: blur(12px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.luly-lightbox.is-open {
  opacity: 1;
  pointer-events: auto;
}

.luly-lightbox-card {
  position: relative;
  width: min(1100px, 100%);
  border-radius: 28px;
  border: 1px solid rgba(255,154,56,0.34);
  background: rgba(9,7,5,0.9);
  box-shadow: 0 40px 130px rgba(0,0,0,0.58), 0 0 70px rgba(255,106,0,0.14);
  overflow: hidden;
}

.luly-lightbox-card img {
  width: 100%;
  display: block;
  max-height: 78vh;
  object-fit: contain;
  background: #020201;
}

.luly-lightbox-caption {
  padding: 0.9rem 1.1rem;
  color: var(--luly-muted);
  font-weight: 700;
}

.luly-lightbox-close {
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid rgba(255,154,56,0.34);
  background: rgba(0,0,0,0.58);
  color: #fff;
  font-size: 1.35rem;
  line-height: 1;
}

/* Order page */
.order-page .luly-section {
  padding-top: clamp(3.8rem, 7vw, 6rem);
  padding-bottom: clamp(3.8rem, 7vw, 6rem);
}

.order-hero {
  background:
    radial-gradient(circle at 50% 0%, rgba(255,106,0,0.2), transparent 30rem),
    linear-gradient(180deg, rgba(255,106,0,0.035), transparent);
}

.order-intro {
  max-width: 860px;
}

.order-intro h1,
.contact-hero h1 {
  margin: 1rem 0 0.85rem;
  font-size: clamp(2.6rem, 7vw, 5.8rem);
}

.order-flow {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.flow-step {
  border-radius: 24px;
}

.flow-step strong {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 15px;
  margin-bottom: 0.85rem;
  font-weight: 950;
}

.flow-step span {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 1.04rem;
}

.luly-package-card {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: 30px !important;
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.luly-package-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 18% 0%, rgba(255,106,0,0.16), transparent 14rem);
  pointer-events: none;
}

.luly-package-card .card-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.luly-package-card .card-title {
  margin-bottom: 0.55rem;
  font-size: clamp(1.45rem, 3vw, 2rem) !important;
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.luly-package-card .price {
  color: var(--luly-accent-2);
  font-size: 2.08rem;
  line-height: 1;
  font-weight: 950;
  letter-spacing: -0.06em;
  margin-bottom: 1rem;
}

.pricing-description {
  min-height: 6rem;
}

.package-card-featured {
  border-color: rgba(255,173,82,0.68) !important;
  box-shadow: 0 28px 100px rgba(0,0,0,0.4), 0 0 58px rgba(255,106,0,0.2), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.popular-ribbon {
  position: absolute;
  z-index: 2;
  top: 0.95rem;
  right: -2.8rem;
  transform: rotate(34deg);
  width: 10.8rem;
  padding: 0.35rem 0;
  text-align: center;
  color: #180a00;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  box-shadow: 0 0 34px rgba(255,106,0,0.36);
}

.package-select-btn.package-select-pill {
  align-self: flex-start;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  width: auto !important;
  min-width: 0 !important;
  min-height: 42px !important;
  margin-top: auto;
  padding: 0.68rem 0.95rem !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.045) !important;
  border: 1px solid rgba(255,173,82,0.34) !important;
  color: var(--luly-text) !important;
  box-shadow: none !important;
  font-size: 0.92rem;
}

.package-select-btn.package-select-pill:hover {
  background: rgba(255,106,0,0.16) !important;
  color: var(--luly-accent-2) !important;
  box-shadow: 0 14px 34px rgba(255,106,0,0.18) !important;
}

.package-badge {
  width: fit-content;
}

.brief-choice-card,
.brief-checklist-card,
.order-banner-card {
  border-radius: 34px;
}

.brief-choice-card h2,
.brief-checklist-card h2,
.order-banner-card h2 {
  color: var(--luly-text) !important;
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.06em;
}

.order-banner-card img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* Contact */
.contact-hero {
  min-height: calc(100vh - 78px);
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 76% 30%, rgba(255,106,0,0.18), transparent 25rem),
    linear-gradient(180deg, rgba(255,106,0,0.03), transparent);
}

.contact-info-stack {
  display: grid;
  gap: 0.85rem;
  margin-top: 1.6rem;
}

.contact-info-stack > div {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding: 1rem;
  border-radius: 22px;
}

.contact-info-stack strong {
  color: var(--luly-accent-2);
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.contact-info-stack a,
.contact-info-stack span {
  color: var(--luly-text);
  text-decoration: none;
  overflow-wrap: anywhere;
}

.wrap-contact100 {
  width: 100% !important;
  border-radius: 34px !important;
}

.contact100-form-title {
  display: block;
  padding-bottom: 1.2rem;
  color: var(--luly-text) !important;
  font-weight: 900;
  letter-spacing: -0.05em;
}

.input100,
.form-control,
.wrap-input100 {
  color: var(--luly-text) !important;
}

textarea.input100,
textarea.form-control {
  min-height: 170px;
}

/* Login refinements */
.login-brand-panel {
  background:
    radial-gradient(circle at 50% 42%, rgba(255,106,0,0.25), transparent 23rem),
    linear-gradient(135deg, rgba(255,106,0,0.08), rgba(255,255,255,0.025)),
    #070604 !important;
}

.login-brand-panel::after {
  opacity: 0.14 !important;
}

.login-card-section {
  background: radial-gradient(circle at 50% 28%, rgba(255,106,0,0.13), transparent 22rem), rgba(7, 6, 4, 0.9) !important;
}

.login-form .form-control {
  min-height: 48px;
}

/* Footer */
.luly-footer,
footer.bg-dark {
  position: relative;
  z-index: 1;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,106,0,0.18), transparent 34rem),
    linear-gradient(180deg, #080604, #030201) !important;
  border-top: 1px solid var(--luly-border);
}

.footer-cta {
  padding: clamp(1.4rem, 4vw, 2.5rem);
  border: 1px solid rgba(255,154,56,0.25);
  border-radius: 34px;
  background:
    radial-gradient(circle at 22% 26%, rgba(255,106,0,0.16), transparent 22rem),
    rgba(255,255,255,0.042);
  box-shadow: 0 30px 90px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.06);
}

.footer-cta h2 {
  margin: 0.9rem 0 0.5rem;
}

.footer-brand {
  text-decoration: none;
}

.footer-links h3 {
  color: var(--luly-text) !important;
  font-size: 0.86rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.footer-links a,
.footer-contact a,
.footer-contact span,
.footer-bottom p {
  color: rgba(255,247,238,0.68) !important;
  text-decoration: none;
}

.footer-links a:hover,
.footer-contact a:hover {
  color: var(--luly-accent-2) !important;
}

.footer-links li + li {
  margin-top: 0.45rem;
}

.footer-contact {
  display: grid;
  gap: 0.4rem;
}

.luly-footer hr {
  border-color: rgba(255,154,56,0.24);
  opacity: 1;
}

/* Reveal animations
   Editor-safe setup: items stay visible by default so Bootstrap Studio's
   design canvas and any no-JS environment do not show blank sections.
   The JS adds .will-reveal only in real page preview/browser mode. */
.reveal-on-scroll {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

.reveal-on-scroll.will-reveal {
  opacity: 0;
  transform: translateY(22px);
}

.reveal-on-scroll.will-reveal.is-visible,
.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
  }

  .reveal-on-scroll {
    opacity: 1;
    transform: none;
  }
}

/* Responsive polish */
@media (max-width: 1199.98px) {
  .luly-hero-grid {
    grid-template-columns: 1fr;
  }

  .luly-hero-preview {
    max-width: 760px;
  }

  .pricing-description {
    min-height: 4.5rem;
  }
}

@media (max-width: 991.98px) {
  .navbar-collapse {
    padding-top: 1rem;
  }

  .navbar-actions {
    align-items: stretch !important;
    flex-direction: column;
    margin-top: 0.8rem;
  }

  .navbar-actions .btn {
    width: 100%;
  }

  .nav-link::after {
    left: 0;
    right: auto;
    width: 54px;
  }

  .contact-hero {
    min-height: auto;
  }

  .login-shell {
    grid-template-columns: 1fr !important;
  }

  .login-brand-panel,
  .login-card-section {
    min-height: auto !important;
  }
}

@media (max-width: 767.98px) {
  .luly-section {
    padding: 3.4rem 0;
  }

  .luly-hero {
    min-height: auto;
    padding: 4.6rem 0 3.8rem;
    background-position: center;
  }

  .luly-hero h1,
  .order-intro h1,
  .contact-hero h1 {
    letter-spacing: -0.075em;
  }

  .hero-actions .btn,
  .brand-cta-actions .btn,
  .portfolio-typing-actions .btn,
  .footer-cta .btn {
    width: 100%;
  }

  .hero-metrics {
    display: grid;
    grid-template-columns: 1fr;
  }

  .hero-metrics span {
    min-width: 0;
  }

  .luly-hero-preview {
    display: none;
  }

  .portfolio-tile span {
    opacity: 1;
    transform: none;
  }

  .client-work .dm-box p {
    max-width: 100% !important;
  }

  .pricing-description {
    min-height: 0;
  }

  .popular-ribbon {
    right: -3.25rem;
  }

  .package-select-btn.package-select-pill {
    width: 100% !important;
  }

  .footer-bottom {
    text-align: center;
  }

  .login-brand-copy h1 {
    font-size: clamp(2.35rem, 14vw, 4rem) !important;
  }

  .login-tags {
    display: none !important;
  }
}

@media (max-width: 420px) {
  .navbar-brand span {
    font-size: 1rem;
  }

  .navbar .brand-logo,
  .navbar .container > img:first-child {
    width: 38px !important;
    height: 38px !important;
  }

  .luly-hero h1,
  .portfolio-hero h1 {
    font-size: clamp(2.7rem, 18vw, 4.2rem) !important;
  }

  .section-heading h2,
  .portfolio-preview h2,
  .portfolio-gallery h2,
  .featured-project h2,
  .footer-cta h2 {
    font-size: clamp(2rem, 13vw, 3.1rem);
  }

  .wrap-contact100,
  .login-card {
    padding: 24px !important;
    border-radius: 26px !important;
  }
}


/* Final system-flow polish: order form, sign up and animated design ladder */
.luly-design-ladder {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 72% 38%, rgba(255,106,0,0.16), transparent 28rem),
    linear-gradient(180deg, rgba(255,106,0,0.025), rgba(0,0,0,0));
}

.luly-design-ladder h2,
.order-form-copy h2,
.portal-card h2 {
  color: var(--luly-text) !important;
  font-weight: 950;
  line-height: 0.98;
  letter-spacing: -0.065em;
}

.ladder-mini-points {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 1.5rem;
}

.ladder-mini-points span,
.contact-order-hint,
.portal-tabs,
.order-note-list div {
  border: 1px solid rgba(255,154,56,0.25);
  background: rgba(255,255,255,0.045);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
}

.ladder-mini-points span {
  padding: 0.58rem 0.8rem;
  border-radius: 999px;
  color: rgba(255,247,238,0.78);
  font-size: 0.88rem;
  font-weight: 750;
}

.cube-stage {
  position: relative;
  min-height: 440px;
  border: 1px solid rgba(255,154,56,0.25);
  border-radius: 36px;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,106,0,0.18), transparent 15rem),
    linear-gradient(135deg, rgba(255,255,255,0.072), rgba(255,255,255,0.026));
  box-shadow: 0 34px 110px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.075);
  overflow: hidden;
  perspective: 900px;
}

.cube-stage::before {
  content: "";
  position: absolute;
  inset: 10% 8%;
  background-image: linear-gradient(rgba(255,154,56,0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,154,56,0.08) 1px, transparent 1px);
  background-size: 38px 38px;
  transform: rotateX(62deg) rotateZ(-18deg) scale(1.15);
  opacity: 0.38;
  mask-image: radial-gradient(circle at center, #000, transparent 72%);
}

.glow-orbit {
  position: absolute;
  width: 220px;
  height: 220px;
  right: 6%;
  top: 7%;
  border-radius: 50%;
  border: 1px solid rgba(255,154,56,0.2);
  box-shadow: 0 0 80px rgba(255,106,0,0.14), inset 0 0 46px rgba(255,106,0,0.08);
  animation: lulyOrbitPulse 4.8s ease-in-out infinite;
}

.step-stack {
  position: absolute;
  inset: 2rem;
}

.ladder-step {
  position: absolute;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 0.75rem;
  row-gap: 0.15rem;
  align-items: center;
  width: min(58%, 360px);
  padding: 0.92rem 1rem;
  border: 1px solid rgba(255,154,56,0.28);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,255,255,0.095), rgba(255,255,255,0.034));
  box-shadow: 0 18px 54px rgba(0,0,0,0.28), 0 0 26px rgba(255,106,0,0.08), inset 0 1px 0 rgba(255,255,255,0.08);
  transform: skewY(-3deg);
}

.ladder-step::after {
  content: "";
  position: absolute;
  inset: auto 1rem -0.54rem 1rem;
  height: 0.55rem;
  border-radius: 0 0 16px 16px;
  background: linear-gradient(180deg, rgba(255,106,0,0.24), rgba(255,106,0,0.03));
  filter: blur(0.1px);
}

.ladder-step span {
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 15px;
  color: #180a00;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  font-weight: 950;
  box-shadow: 0 0 30px rgba(255,106,0,0.32);
}

.ladder-step strong {
  color: var(--luly-text);
  font-weight: 900;
  line-height: 1;
}

.ladder-step em {
  color: rgba(255,247,238,0.63);
  font-style: normal;
  font-size: 0.82rem;
}

.step-1 { left: 6%; top: 7%; }
.step-2 { left: 18%; top: 25%; }
.step-3 { left: 30%; top: 43%; }
.step-4 { left: 42%; top: 61%; }
.step-5 { left: 27%; top: 79%; width: min(64%, 400px); }

.glow-cube {
  position: absolute;
  width: 48px;
  height: 48px;
  left: 12%;
  top: 5%;
  transform-style: preserve-3d;
  animation: lulyCubeSteps 7.4s cubic-bezier(.76,0,.24,1) infinite;
  filter: drop-shadow(0 0 24px rgba(255,106,0,0.86));
}

.glow-cube::before,
.glow-cube::after,
.glow-cube span {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255,216,164,0.72);
  background: linear-gradient(135deg, rgba(255,154,56,0.95), rgba(255,106,0,0.68));
  box-shadow: inset 0 0 18px rgba(255,255,255,0.24), 0 0 34px rgba(255,106,0,0.6);
}

.glow-cube::before { transform: rotateY(72deg) translateZ(23px); transform-origin: right; opacity: 0.75; }
.glow-cube::after { transform: rotateX(72deg) translateZ(23px); transform-origin: top; opacity: 0.55; }
.glow-cube span { transform: rotateZ(0deg); border-radius: 8px; }

@keyframes lulyCubeSteps {
  0%, 11% { left: 13%; top: 4%; transform: rotateX(18deg) rotateY(24deg) rotateZ(0deg); }
  20%, 28% { left: 25%; top: 22%; transform: rotateX(18deg) rotateY(115deg) rotateZ(90deg); }
  39%, 47% { left: 37%; top: 40%; transform: rotateX(18deg) rotateY(205deg) rotateZ(180deg); }
  58%, 66% { left: 49%; top: 58%; transform: rotateX(18deg) rotateY(295deg) rotateZ(270deg); }
  78%, 86% { left: 35%; top: 76%; transform: rotateX(18deg) rotateY(385deg) rotateZ(360deg); }
  100% { left: 13%; top: 4%; transform: rotateX(18deg) rotateY(475deg) rotateZ(450deg); }
}

@keyframes lulyOrbitPulse {
  0%, 100% { transform: scale(1); opacity: 0.52; }
  50% { transform: scale(1.08); opacity: 0.85; }
}

.order-form-section {
  position: relative;
  background:
    radial-gradient(circle at 76% 18%, rgba(255,106,0,0.14), transparent 26rem),
    linear-gradient(180deg, rgba(255,106,0,0.035), transparent);
}

.order-form-copy,
.order-brief-form {
  height: 100%;
  border: 1px solid var(--luly-border);
  border-radius: 34px;
  background: linear-gradient(180deg, rgba(255,255,255,0.078), rgba(255,255,255,0.032));
  box-shadow: 0 24px 80px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.07);
  backdrop-filter: blur(14px);
}

.order-form-copy {
  padding: clamp(1.3rem, 3vw, 2rem);
}

.order-form-copy p,
.form-status,
.signup-status {
  color: var(--luly-muted) !important;
}

.order-note-list {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

.order-note-list div {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  padding: 0.85rem;
  border-radius: 18px;
}

.order-note-list strong {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  color: #180a00;
  font-weight: 950;
}

.order-note-list span {
  color: var(--luly-text);
  font-weight: 800;
}

.order-brief-form {
  padding: clamp(1.1rem, 3vw, 1.6rem);
}

.form-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.form-label {
  color: rgba(255,247,238,0.82) !important;
  font-weight: 800;
  font-size: 0.88rem;
}

.form-select,
.form-control,
.input100 {
  border-color: rgba(255,154,56,0.22) !important;
  background-color: rgba(255,255,255,0.055) !important;
  color: var(--luly-text) !important;
}

.form-select option {
  color: #140900;
  background: #fff6ec;
}

.form-control::placeholder,
.input100::placeholder {
  color: rgba(255,247,238,0.42) !important;
}

.compact-textarea {
  min-height: 105px !important;
}

.order-form-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1.1rem;
}

.order-form-actions .form-status {
  flex: 1 1 220px;
  margin: 0;
  font-size: 0.92rem;
}

.contact-order-hint {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 0 1.2rem;
  padding: 0.9rem 1rem;
  border-radius: 18px;
}

.contact-order-hint span {
  color: var(--luly-muted);
  font-weight: 700;
}

.contact-order-hint a {
  color: var(--luly-accent-2);
  font-weight: 900;
  text-decoration: none;
}

.portal-card {
  max-width: 620px;
}

.portal-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem;
  padding: 0.42rem;
  margin: 1.2rem 0 1.35rem;
  border-radius: 999px;
}

.portal-tab {
  border: 0;
  border-radius: 999px;
  padding: 0.75rem 0.9rem;
  color: rgba(255,247,238,0.7);
  background: transparent;
  font-weight: 900;
}

.portal-tab.active {
  color: #180a00;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  box-shadow: 0 12px 28px rgba(255,106,0,0.22);
}

.portal-panel {
  display: none;
}

.portal-panel.active {
  display: block;
}

.compact-auth-grid {
  gap: 0.8rem;
}

@media (max-width: 991.98px) {
  .cube-stage {
    min-height: 390px;
  }

  .ladder-step {
    width: min(68%, 380px);
  }

  .step-4 { left: 34%; }
  .step-5 { left: 18%; width: min(78%, 430px); }
}

@media (max-width: 767.98px) {
  .cube-stage {
    min-height: auto;
    padding: 1rem;
    perspective: none;
  }

  .cube-stage::before,
  .glow-orbit,
  .glow-cube {
    display: none;
  }

  .step-stack {
    position: relative;
    inset: auto;
    display: grid;
    gap: 0.75rem;
  }

  .ladder-step,
  .step-1,
  .step-2,
  .step-3,
  .step-4,
  .step-5 {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    transform: none;
  }

  .form-grid-2,
  .compact-auth-grid {
    grid-template-columns: 1fr;
  }

  .order-form-actions .btn,
  .order-form-actions .form-status {
    width: 100%;
  }

  .contact-order-hint {
    align-items: flex-start;
    flex-direction: column;
  }

  .portal-tabs {
    border-radius: 22px;
  }
}


/* Final client-request refinements: L logo token, portfolio card height, quieter login mark, cleaner inner footers */
.cube-stage {
  min-height: 456px;
}

.glow-logo-token {
  position: absolute;
  width: 58px;
  height: 58px;
  left: 13%;
  top: 4%;
  display: grid;
  place-items: center;
  transform-style: preserve-3d;
  animation: lulyLogoStepPath 8.8s cubic-bezier(.72,0,.22,1) infinite;
  filter: drop-shadow(0 0 26px rgba(255,106,0,0.88));
  z-index: 4;
}

.glow-logo-token::before {
  content: "";
  position: absolute;
  inset: 8px -8px -8px 8px;
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(255,106,0,0.22), rgba(255,154,56,0.06));
  border: 1px solid rgba(255,154,56,0.18);
  transform: translateZ(-14px) skewY(-8deg);
  filter: blur(0.2px);
  opacity: 0.72;
}

.glow-logo-token::after {
  content: "";
  position: absolute;
  inset: -16px;
  border-radius: 28px;
  background: radial-gradient(circle, rgba(255,106,0,0.38), transparent 62%);
  opacity: 0.82;
  z-index: -1;
  animation: lulyTokenPulse 2.2s ease-in-out infinite;
}

.glow-logo-token span {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  border-radius: 18px;
  border: 1px solid rgba(255,177,92,0.54);
  background:
    radial-gradient(circle at 35% 28%, rgba(255,154,56,0.28), transparent 42%),
    linear-gradient(145deg, #130b05, #030303 72%);
  color: var(--luly-accent-2);
  font-size: 2.05rem;
  font-weight: 950;
  line-height: 1;
  text-shadow: 0 0 18px rgba(255,106,0,0.96), 0 0 34px rgba(255,106,0,0.46);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    inset 0 0 24px rgba(255,106,0,0.16),
    0 0 32px rgba(255,106,0,0.38);
}

@keyframes lulyLogoStepPath {
  0%   { left: 13%; top: 4%;  opacity: 0; transform: rotateX(18deg) rotateY(-18deg) rotateZ(-8deg) scale(.86); }
  5%   { left: 13%; top: 4%;  opacity: 1; transform: rotateX(18deg) rotateY(-18deg) rotateZ(-8deg) scale(1); }
  14%  { left: 13%; top: 4%;  opacity: 1; transform: rotateX(18deg) rotateY(-18deg) rotateZ(-8deg) scale(1); }
  26%  { left: 25%; top: 22%; opacity: 1; transform: rotateX(18deg) rotateY(42deg) rotateZ(4deg) scale(1.02); }
  34%  { left: 25%; top: 22%; opacity: 1; transform: rotateX(18deg) rotateY(42deg) rotateZ(4deg) scale(1); }
  48%  { left: 37%; top: 40%; opacity: 1; transform: rotateX(18deg) rotateY(102deg) rotateZ(-6deg) scale(1.03); }
  56%  { left: 37%; top: 40%; opacity: 1; transform: rotateX(18deg) rotateY(102deg) rotateZ(-6deg) scale(1); }
  70%  { left: 49%; top: 58%; opacity: 1; transform: rotateX(18deg) rotateY(162deg) rotateZ(6deg) scale(1.03); }
  78%  { left: 49%; top: 58%; opacity: 1; transform: rotateX(18deg) rotateY(162deg) rotateZ(6deg) scale(1); }
  91%  { left: 35%; top: 76%; opacity: 1; transform: rotateX(18deg) rotateY(222deg) rotateZ(-4deg) scale(1.02); }
  96%  { left: 35%; top: 76%; opacity: 0; transform: rotateX(18deg) rotateY(222deg) rotateZ(-4deg) scale(.88); }
  100% { left: 13%; top: 4%;  opacity: 0; transform: rotateX(18deg) rotateY(-18deg) rotateZ(-8deg) scale(.86); }
}

@keyframes lulyTokenPulse {
  0%, 100% { transform: scale(.94); opacity: .55; }
  50% { transform: scale(1.08); opacity: .92; }
}

.client-work .row > [class*="col"] {
  display: flex;
}

.client-work .work-card {
  width: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.client-work .dm-box {
  min-height: 112px;
  display: flex;
  align-items: center;
}

.client-work .portfolio-tile {
  margin-top: auto;
}

.login-brand-panel {
  background:
    radial-gradient(circle at 50% 42%, rgba(255,106,0,0.12), transparent 21rem),
    linear-gradient(135deg, rgba(255,106,0,0.045), rgba(255,255,255,0.018)),
    #070604 !important;
}

.login-brand-panel::after {
  background-size: min(58vw, 520px) !important;
  opacity: 0.075 !important;
  filter: blur(0.65px) !important;
}

.luly-footer .footer-links {
  padding-top: 0.35rem;
}

@media (max-width: 991px) {
  .glow-logo-token {
    width: 48px;
    height: 48px;
  }

  .glow-logo-token span {
    font-size: 1.65rem;
    border-radius: 16px;
  }
}

@media (max-width: 767px) {
  .cube-stage {
    min-height: auto;
  }

  .glow-logo-token {
    position: relative;
    left: auto !important;
    top: auto !important;
    margin: 0 auto 1.2rem;
    opacity: 1 !important;
    animation: lulyMobileTokenFloat 3.4s ease-in-out infinite;
  }

  .client-work .dm-box {
    min-height: 0;
  }
}

@keyframes lulyMobileTokenFloat {
  0%, 100% { transform: translateY(0) rotateZ(-4deg); }
  50% { transform: translateY(-8px) rotateZ(4deg); }
}


/* LULYGraphics advanced polish: sticky navbar, vault, wow sections, builder */
.luly-navbar {
  position: sticky !important;
  top: 0 !important;
  z-index: 1080 !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.luly-footer .footer-cta {
  display: none !important;
}

/* 3D thumbnail deck */
.luly-wow-stack {
  overflow: hidden;
}

.stack-points,
.ladder-mini-points,
.project-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.stack-points span {
  border: 1px solid var(--luly-border);
  color: rgba(255,247,238,0.78);
  background: rgba(255,255,255,0.035);
  border-radius: 999px;
  padding: 0.48rem 0.82rem;
  font-weight: 700;
  font-size: 0.9rem;
}

.thumbnail-deck {
  --mx: 0px;
  --my: 0px;
  position: relative;
  min-height: 430px;
  perspective: 1200px;
  transform-style: preserve-3d;
  border: 1px solid var(--luly-border);
  border-radius: 34px;
  background:
    radial-gradient(circle at 25% 20%, rgba(255,106,0,0.18), transparent 18rem),
    linear-gradient(145deg, rgba(255,255,255,0.055), rgba(255,255,255,0.012));
  box-shadow: 0 28px 90px rgba(0,0,0,0.38), inset 0 0 70px rgba(255,106,0,0.04);
  overflow: hidden;
}

.thumbnail-deck::before,
.thumbnail-deck::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
}

.thumbnail-deck::before {
  width: 360px;
  height: 360px;
  right: -120px;
  top: -90px;
  border: 1px solid rgba(255,106,0,0.13);
}

.thumbnail-deck::after {
  inset: auto 10% -110px auto;
  width: 300px;
  height: 140px;
  background: radial-gradient(circle, rgba(255,106,0,0.24), transparent 70%);
  filter: blur(18px);
}

.deck-card {
  position: absolute;
  display: block;
  width: min(66%, 430px);
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(255,154,56,0.34);
  background: #080604;
  box-shadow: 0 22px 55px rgba(0,0,0,0.48), 0 0 34px rgba(255,106,0,0.1);
  transition: transform .35s ease, filter .35s ease, box-shadow .35s ease;
  text-decoration: none;
}

.deck-card img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
}

.deck-card span {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  color: #fff7ee;
  font-weight: 900;
  letter-spacing: -0.03em;
  text-shadow: 0 0 18px rgba(0,0,0,0.9);
}

.deck-card-1 {
  left: 8%;
  top: 19%;
  transform: translate3d(var(--mx), var(--my), 60px) rotateZ(-7deg) rotateY(7deg);
  z-index: 3;
}

.deck-card-2 {
  right: 8%;
  top: 34%;
  transform: translate3d(calc(var(--mx) * -0.7), calc(var(--my) * .8), 25px) rotateZ(6deg) rotateY(-9deg);
  z-index: 2;
  filter: saturate(.88) brightness(.86);
}

.deck-card-3 {
  left: 20%;
  bottom: 10%;
  transform: translate3d(calc(var(--mx) * .45), calc(var(--my) * -0.7), 0) rotateZ(-2deg) rotateY(2deg);
  z-index: 1;
  filter: saturate(.78) brightness(.72);
}

.thumbnail-deck:hover .deck-card-1 {
  transform: translate3d(calc(var(--mx) - 14px), calc(var(--my) - 8px), 80px) rotateZ(-10deg) rotateY(10deg);
}

.thumbnail-deck:hover .deck-card-2 {
  transform: translate3d(calc(var(--mx) * -0.8 + 14px), calc(var(--my) * .7), 42px) rotateZ(9deg) rotateY(-12deg);
}

.thumbnail-deck:hover .deck-card-3 {
  transform: translate3d(calc(var(--mx) * .4), calc(var(--my) * -0.7 + 14px), 18px) rotateZ(-4deg);
}

.deck-core {
  position: absolute;
  right: 9%;
  bottom: 9%;
  width: 74px;
  height: 74px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  border: 1px solid rgba(255,154,56,0.4);
  background: linear-gradient(145deg, #170c05, #030302 72%);
  color: var(--luly-accent-2);
  font-size: 2.4rem;
  font-weight: 950;
  text-shadow: 0 0 22px rgba(255,106,0,0.8);
  box-shadow: 0 0 50px rgba(255,106,0,0.26), inset 0 0 28px rgba(255,106,0,0.11);
  animation: deckCorePulse 3s ease-in-out infinite;
  z-index: 5;
}

@keyframes deckCorePulse {
  0%, 100% { transform: translateY(0) rotateZ(-4deg); }
  50% { transform: translateY(-10px) rotateZ(4deg); }
}

/* Request to final lab */
.luly-transform-lab {
  position: relative;
  overflow: hidden;
}

.transform-machine {
  position: relative;
  display: grid;
  grid-template-columns: 1.05fr .22fr .92fr .22fr 1.1fr;
  gap: 1rem;
  align-items: center;
  border: 1px solid var(--luly-border);
  border-radius: 34px;
  padding: clamp(1rem, 3vw, 2rem);
  background:
    radial-gradient(circle at 18% 30%, rgba(255,106,0,0.16), transparent 22rem),
    linear-gradient(135deg, rgba(255,255,255,0.055), rgba(255,255,255,0.015));
  box-shadow: 0 28px 80px rgba(0,0,0,0.36);
}

.transform-card,
.transform-final {
  min-height: 190px;
  border: 1px solid rgba(255,154,56,0.24);
  border-radius: 24px;
  background: rgba(12,10,8,0.82);
  box-shadow: inset 0 0 38px rgba(255,106,0,0.05);
}

.transform-card {
  padding: 1.25rem;
}

.transform-card span,
.transform-final span {
  display: inline-flex;
  color: var(--luly-accent-2);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .74rem;
  font-weight: 900;
  margin-bottom: .7rem;
}

.transform-card p {
  color: #fff7ee;
  font-weight: 800;
  line-height: 1.65;
  margin: 0;
}

.transform-request {
  animation: requestPulse 3.2s ease-in-out infinite;
}

@keyframes requestPulse {
  0%, 100% { box-shadow: inset 0 0 38px rgba(255,106,0,0.05), 0 0 0 rgba(255,106,0,0); }
  50% { box-shadow: inset 0 0 38px rgba(255,106,0,0.1), 0 0 35px rgba(255,106,0,0.12); }
}

.transform-beam {
  height: 2px;
  background: rgba(255,154,56,0.18);
  overflow: hidden;
  border-radius: 999px;
}

.transform-beam i {
  display: block;
  height: 100%;
  width: 52%;
  background: linear-gradient(90deg, transparent, var(--luly-accent), transparent);
  animation: beamRun 1.8s linear infinite;
}

@keyframes beamRun {
  from { transform: translateX(-100%); }
  to { transform: translateX(220%); }
}

.wireframe-preview {
  position: relative;
  height: 112px;
  border: 1px solid rgba(255,154,56,0.18);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,106,0,0.08), rgba(255,255,255,0.02));
  overflow: hidden;
}

.wireframe-preview b {
  position: absolute;
  display: block;
  border-radius: 12px;
  border: 1px solid rgba(255,154,56,0.24);
  background: rgba(255,255,255,0.035);
}

.wireframe-preview b:nth-child(1) { width: 34%; height: 64%; left: 8%; top: 18%; }
.wireframe-preview b:nth-child(2) { width: 42%; height: 16%; right: 8%; top: 22%; }
.wireframe-preview b:nth-child(3) { width: 36%; height: 14%; right: 14%; top: 48%; }
.wireframe-preview b:nth-child(4) { width: 54%; height: 10%; right: 8%; bottom: 16%; }

.transform-final {
  position: relative;
  display: block;
  overflow: hidden;
  text-decoration: none;
}

.transform-final img {
  width: 100%;
  height: 190px;
  object-fit: cover;
  display: block;
  filter: saturate(1.06) contrast(1.03);
}

.transform-final span {
  position: absolute;
  left: 1rem;
  top: 1rem;
  padding: .44rem .65rem;
  border-radius: 999px;
  background: rgba(0,0,0,0.56);
  border: 1px solid rgba(255,154,56,0.24);
}

/* Dashboard preview */
.dashboard-mockup,
.login-dashboard-teaser {
  border: 1px solid var(--luly-border);
  background:
    radial-gradient(circle at 15% 0%, rgba(255,106,0,0.16), transparent 18rem),
    linear-gradient(145deg, rgba(255,255,255,0.06), rgba(255,255,255,0.018));
  box-shadow: 0 25px 80px rgba(0,0,0,0.36);
}

.dashboard-mockup {
  border-radius: 32px;
  padding: clamp(1rem, 3vw, 1.6rem);
}

.dashboard-top,
.teaser-top,
.dashboard-top > div {
  display: flex;
  align-items: center;
  gap: .75rem;
}

.dashboard-top {
  justify-content: space-between;
  margin-bottom: 1rem;
}

.mini-logo {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border-radius: 13px;
  background: linear-gradient(145deg, #160a03, #040302);
  border: 1px solid rgba(255,154,56,0.28);
  color: var(--luly-accent-2);
  font-weight: 950;
  text-shadow: 0 0 16px rgba(255,106,0,0.7);
}

.status-pill {
  border: 1px solid var(--luly-border);
  border-radius: 999px;
  padding: .4rem .7rem;
  color: var(--luly-accent-2);
  font-weight: 900;
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.dashboard-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: .85rem;
}

.dash-main-card,
.dash-side-card {
  border: 1px solid rgba(255,154,56,0.18);
  border-radius: 22px;
  background: rgba(6,5,4,0.68);
  padding: 1rem;
}

.dash-main-card {
  grid-row: span 2;
}

.dash-main-card span,
.dash-side-card span,
.teaser-row span {
  color: rgba(255,247,238,0.6);
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 900;
}

.dash-main-card h3 {
  margin: .45rem 0 .5rem;
  font-size: clamp(1.8rem, 4vw, 3rem);
  letter-spacing: -.06em;
}

.dash-main-card p,
.dash-side-card em {
  color: var(--luly-muted);
}

.dash-side-card strong {
  display: block;
  font-size: 1.25rem;
  margin: .4rem 0 .2rem;
}

.dash-side-card em {
  font-style: normal;
}

.dash-progress,
.teaser-bar {
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,0.07);
  overflow: hidden;
  margin-top: 1rem;
}

.dash-progress i,
.teaser-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--luly-accent), var(--luly-accent-2));
  box-shadow: 0 0 20px rgba(255,106,0,0.42);
}

.dashboard-steps {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: 1rem;
}

.dashboard-steps span {
  border: 1px solid rgba(255,154,56,0.16);
  border-radius: 999px;
  padding: .5rem .7rem;
  color: rgba(255,247,238,0.66);
  background: rgba(255,255,255,0.025);
  font-weight: 800;
  font-size: .85rem;
}

.dashboard-steps .done,
.dashboard-steps .active {
  color: #fff7ee;
  border-color: rgba(255,154,56,0.36);
}

.dashboard-steps .active {
  background: rgba(255,106,0,0.16);
  box-shadow: 0 0 22px rgba(255,106,0,0.12);
}

.login-dashboard-teaser {
  width: min(560px, 86%);
  margin: 1.2rem 0 0 3.7rem;
  border-radius: 24px;
  padding: 1rem;
  position: relative;
  z-index: 2;
}

.teaser-top {
  justify-content: space-between;
  margin-bottom: .9rem;
}

.teaser-top em {
  color: var(--luly-accent-2);
  font-style: normal;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.teaser-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgba(255,154,56,0.12);
  padding: .68rem 0;
}

.teaser-bar i { width: 62%; }

/* Before / after slider */
.before-after-card {
  --split: 55%;
  position: relative;
  border: 1px solid var(--luly-border);
  border-radius: 32px;
  overflow: hidden;
  min-height: 390px;
  background: #060504;
  box-shadow: 0 28px 80px rgba(0,0,0,0.36);
}

.ba-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ba-before {
  filter: saturate(.75) brightness(.54) blur(.2px);
}

.ba-after-wrap {
  position: absolute;
  inset: 0;
  width: var(--split);
  overflow: hidden;
  border-right: 1px solid rgba(255,154,56,0.58);
}

.ba-after {
  width: calc(100% / (var(--split-num, .55)));
  max-width: none;
  filter: saturate(1.06) contrast(1.02);
}

.ba-divider {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--split);
  width: 2px;
  background: var(--luly-accent-2);
  box-shadow: 0 0 24px rgba(255,106,0,0.72);
  transform: translateX(-50%);
  pointer-events: none;
}

.ba-divider span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  transform: translate(-50%, -50%);
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  box-shadow: 0 0 34px rgba(255,106,0,0.45);
}

.ba-range {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: ew-resize;
}

.ba-label {
  position: absolute;
  top: 1rem;
  border: 1px solid rgba(255,154,56,0.24);
  background: rgba(0,0,0,0.52);
  color: #fff7ee;
  border-radius: 999px;
  padding: .45rem .7rem;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .04em;
}

.ba-label-before { right: 1rem; }
.ba-label-after { left: 1rem; }

/* Vault gallery */
.vault-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-bottom: 1.2rem;
}

.vault-filters button,
.builder-group button {
  border: 1px solid rgba(255,154,56,0.22);
  background: rgba(255,255,255,0.035);
  color: rgba(255,247,238,0.76);
  border-radius: 999px;
  padding: .68rem .95rem;
  font-weight: 900;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}

.vault-filters button:hover,
.builder-group button:hover,
.vault-filters button.active,
.builder-group button.active {
  color: #180a00;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
  border-color: rgba(255,154,56,0.6);
  transform: translateY(-1px);
}

.vault-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 170px;
  gap: 1rem;
}

.vault-item {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(255,154,56,0.22);
  background: rgba(255,255,255,0.035);
  text-decoration: none;
  box-shadow: 0 18px 44px rgba(0,0,0,0.28);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, opacity .25s ease;
}

.vault-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(.94) brightness(.84);
  transition: transform .38s ease, filter .38s ease;
}

.vault-item span {
  position: absolute;
  inset: auto .8rem .8rem .8rem;
  display: block;
  border: 1px solid rgba(255,154,56,0.18);
  border-radius: 16px;
  background: rgba(0,0,0,0.5);
  padding: .72rem;
  backdrop-filter: blur(12px);
}

.vault-item b,
.vault-item em {
  display: block;
}

.vault-item b {
  color: #fff7ee;
  font-weight: 950;
}

.vault-item em {
  color: rgba(255,247,238,0.68);
  font-style: normal;
  font-size: .85rem;
}

.vault-item.wide { grid-column: span 2; }
.vault-item.tall { grid-row: span 2; }

.vault-item:hover {
  transform: translateY(-6px);
  border-color: rgba(255,154,56,0.5);
  box-shadow: 0 25px 70px rgba(0,0,0,0.36), 0 0 30px rgba(255,106,0,0.12);
}

.vault-item:hover img {
  transform: scale(1.045);
  filter: saturate(1.06) brightness(.95);
}

.vault-item.is-hidden {
  display: none !important;
}

/* Interactive order builder */
.builder-controls,
.builder-result-card {
  height: 100%;
  border: 1px solid var(--luly-border);
  border-radius: 30px;
  background:
    radial-gradient(circle at 15% 0%, rgba(255,106,0,0.16), transparent 18rem),
    linear-gradient(145deg, rgba(255,255,255,0.055), rgba(255,255,255,0.016));
  box-shadow: 0 24px 70px rgba(0,0,0,0.32);
}

.builder-controls {
  display: grid;
  gap: 1rem;
  padding: 1rem;
  margin-top: 1.25rem;
}

.builder-group {
  border: 1px solid rgba(255,154,56,0.14);
  border-radius: 22px;
  background: rgba(0,0,0,0.18);
  padding: 1rem;
}

.builder-group strong {
  display: block;
  margin-bottom: .7rem;
  color: #fff7ee;
}

.builder-group div {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.builder-result-card {
  padding: clamp(1.2rem, 3vw, 2rem);
  position: relative;
  overflow: hidden;
}

.builder-result-card::after {
  content: "L";
  position: absolute;
  right: -1rem;
  bottom: -3.2rem;
  font-size: clamp(9rem, 20vw, 17rem);
  line-height: 1;
  color: rgba(255,106,0,0.06);
  font-weight: 950;
}

.builder-result-card h3 {
  position: relative;
  z-index: 1;
  font-size: clamp(2.1rem, 5vw, 4.2rem);
  letter-spacing: -.07em;
  margin: .5rem 0 .7rem;
}

.builder-result-card p,
.builder-result-card ul,
.builder-result-card a {
  position: relative;
  z-index: 1;
}

.builder-result-card ul {
  color: rgba(255,247,238,0.74);
  margin: 0 0 1.35rem;
  padding-left: 1.1rem;
}

@media (max-width: 1199px) {
  .vault-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .transform-machine {
    grid-template-columns: 1fr;
  }
  .transform-beam {
    height: 38px;
    width: 2px;
    justify-self: center;
  }
  .transform-beam i {
    width: 100%;
    height: 52%;
    animation: beamRunVertical 1.8s linear infinite;
  }
  @keyframes beamRunVertical {
    from { transform: translateY(-100%); }
    to { transform: translateY(220%); }
  }
  .vault-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 180px;
  }
  .login-dashboard-teaser {
    margin-left: 0;
  }
}

@media (max-width: 767.98px) {
  .thumbnail-deck {
    min-height: 430px;
  }
  .deck-card {
    width: 82%;
  }
  .deck-card-1 { left: 5%; top: 12%; }
  .deck-card-2 { right: 5%; top: 36%; }
  .deck-card-3 { left: 9%; bottom: 10%; }
  .deck-core {
    width: 58px;
    height: 58px;
    font-size: 1.8rem;
  }
  .dashboard-grid {
    grid-template-columns: 1fr;
  }
  .before-after-card {
    min-height: 260px;
  }
  .vault-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: 220px;
  }
  .vault-item.wide,
  .vault-item.tall {
    grid-column: auto;
    grid-row: auto;
  }
  .login-dashboard-teaser {
    width: 100%;
    margin-top: 1rem;
  }
}


/* LULYGraphics requested patch: true fixed nav + standalone motion lab */
html {
  scroll-padding-top: 104px;
}

body:not(.luly-login-page) {
  padding-top: 88px;
}

.navbar.luly-navbar,
.navbar.fixed-top.luly-navbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 5000 !important;
  background:
    linear-gradient(180deg, rgba(10,8,5,0.94), rgba(8,7,5,0.78)) !important;
  border-bottom: 1px solid rgba(255,132,25,0.22) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,0.34), 0 0 28px rgba(255,106,0,0.08) !important;
  backdrop-filter: blur(18px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
}

.luly-motion-lab {
  position: relative;
  overflow: hidden;
}

.luly-motion-lab::before {
  content: "";
  position: absolute;
  width: min(560px, 80vw);
  height: min(560px, 80vw);
  left: -18%;
  top: 12%;
  background: radial-gradient(circle, rgba(255,106,0,0.16), transparent 65%);
  filter: blur(10px);
  pointer-events: none;
}

.motion-lab-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2.4vw, 30px);
  margin-top: clamp(28px, 4vw, 48px);
}

.motion-showcase {
  position: relative;
  min-height: 560px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(255,132,25,0.24);
  border-radius: 34px;
  background:
    radial-gradient(circle at 24% 16%, rgba(255,106,0,0.16), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,0.055), rgba(255,255,255,0.015));
  box-shadow: 0 22px 70px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.06);
  overflow: hidden;
}

.motion-showcase::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, transparent 0%, rgba(255,154,56,0.08) 45%, transparent 60%);
  transform: translateX(-120%);
  animation: motionCardSweep 7s ease-in-out infinite;
  pointer-events: none;
}

.reactor-stage,
.scanner-stage {
  position: relative;
  min-height: 360px;
  border-radius: 28px;
  background: rgba(0,0,0,0.26);
  border: 1px solid rgba(255,132,25,0.18);
  overflow: hidden;
}

.reactor-grid {
  position: absolute;
  inset: 0;
  opacity: 0.28;
  background-image:
    linear-gradient(rgba(255,132,25,0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,132,25,0.12) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: radial-gradient(circle at center, black 0 45%, transparent 78%);
  animation: reactorGridDrift 9s linear infinite;
}

.reactor-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255,142,31,0.34);
  box-shadow: inset 0 0 32px rgba(255,106,0,0.08), 0 0 36px rgba(255,106,0,0.08);
}

.reactor-ring-a {
  width: 250px;
  height: 250px;
  border-style: dashed;
  animation: reactorSpin 9s linear infinite;
}

.reactor-ring-b {
  width: 185px;
  height: 185px;
  border-top-color: rgba(255,255,255,0.38);
  border-right-color: transparent;
  animation: reactorSpinReverse 6.5s linear infinite;
}

.reactor-ring-c {
  width: 112px;
  height: 112px;
  border-left-color: transparent;
  border-bottom-color: rgba(255,106,0,0.72);
  animation: reactorSpin 4.8s linear infinite;
}

.reactor-core {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 96px;
  height: 96px;
  display: grid;
  place-items: center;
  border-radius: 26px;
  transform: translate(-50%, -50%) rotate(-6deg);
  background: linear-gradient(145deg, rgba(255,132,25,0.22), rgba(0,0,0,0.82));
  border: 1px solid rgba(255,167,67,0.45);
  box-shadow: 0 0 38px rgba(255,106,0,0.42), inset 0 0 28px rgba(255,106,0,0.12);
  animation: reactorCorePulse 2.6s ease-in-out infinite;
}

.reactor-core span {
  font-size: 3.2rem;
  line-height: 1;
  color: #ff8a1f;
  text-shadow: 0 0 16px rgba(255,106,0,0.95), 0 0 36px rgba(255,106,0,0.46);
  font-weight: 900;
}

.reactor-chip {
  position: absolute;
  padding: 0.5rem 0.78rem;
  border: 1px solid rgba(255,132,25,0.28);
  border-radius: 999px;
  color: rgba(255,247,238,0.86);
  background: rgba(20,17,13,0.74);
  box-shadow: 0 12px 28px rgba(0,0,0,0.24), 0 0 18px rgba(255,106,0,0.10);
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  animation: reactorChipFloat 3.8s ease-in-out infinite;
}

.chip-contrast { left: 10%; top: 18%; animation-delay: -0.2s; }
.chip-depth { right: 12%; top: 25%; animation-delay: -1.1s; }
.chip-glow { left: 15%; bottom: 18%; animation-delay: -2.1s; }
.chip-read { right: 9%; bottom: 20%; animation-delay: -3s; }

.reactor-spark {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ff8a1f;
  box-shadow: 0 0 20px rgba(255,106,0,0.8);
  transform-origin: 0 0;
  animation: reactorSparkOrbit 5s linear infinite;
}
.spark-1 { animation-delay: 0s; --orbit: 118px; }
.spark-2 { animation-delay: -1.2s; --orbit: 145px; }
.spark-3 { animation-delay: -2.5s; --orbit: 90px; }
.spark-4 { animation-delay: -3.6s; --orbit: 165px; }

.scanner-stage {
  display: grid;
  place-items: center;
}

.scanner-card {
  position: relative;
  width: min(430px, 86%);
  aspect-ratio: 16 / 9;
  border-radius: 24px;
  overflow: hidden;
  background:
    radial-gradient(circle at 70% 35%, rgba(255,132,25,0.34), transparent 22%),
    linear-gradient(135deg, rgba(37,30,24,0.92), rgba(4,4,4,0.98));
  border: 1px solid rgba(255,154,56,0.36);
  box-shadow: 0 28px 80px rgba(0,0,0,0.46), 0 0 32px rgba(255,106,0,0.12);
  transform: perspective(900px) rotateX(6deg) rotateY(-9deg);
  animation: scannerCardFloat 5.4s ease-in-out infinite;
}

.scanner-layer {
  position: absolute;
  inset: 0;
}

.layer-bg {
  background:
    linear-gradient(135deg, rgba(0,0,0,0.1), rgba(0,0,0,0.75)),
    url('../img/design1.jpg') center / cover no-repeat;
  filter: saturate(0.95) contrast(1.05);
  opacity: 0.92;
  animation: scannerBgPulse 5.4s ease-in-out infinite;
}

.layer-subject {
  left: 50%;
  top: 15%;
  width: 34%;
  height: 70%;
  border-radius: 45% 45% 18% 18%;
  background: radial-gradient(circle at 50% 28%, rgba(255,247,238,0.72), rgba(255,132,25,0.2) 35%, rgba(0,0,0,0.78) 68%);
  box-shadow: 0 0 34px rgba(255,106,0,0.18);
  transform: translateX(-5%);
  animation: scannerSubjectPop 5.4s ease-in-out infinite;
}

.layer-title {
  inset: auto auto 16% 8%;
  color: rgba(255,247,238,0.95);
  font-size: clamp(2.2rem, 5vw, 4.7rem);
  font-weight: 900;
  letter-spacing: -0.08em;
  text-shadow: 0 4px 0 rgba(0,0,0,0.7), 0 0 28px rgba(255,106,0,0.36);
  transform: skew(-6deg);
  animation: scannerTitleLock 5.4s ease-in-out infinite;
}

.layer-glow {
  background:
    radial-gradient(circle at 18% 80%, rgba(255,106,0,0.55), transparent 22%),
    radial-gradient(circle at 88% 18%, rgba(255,154,56,0.28), transparent 18%);
  mix-blend-mode: screen;
  opacity: 0.8;
  animation: scannerGlowPulse 2.8s ease-in-out infinite;
}

.scanner-beam {
  position: absolute;
  top: -20%;
  bottom: -20%;
  width: 26%;
  left: -35%;
  background: linear-gradient(90deg, transparent, rgba(255,191,116,0.34), rgba(255,106,0,0.18), transparent);
  filter: blur(1px);
  transform: skewX(-13deg);
  animation: scannerBeamMove 3.4s ease-in-out infinite;
}

.scanner-frame {
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(255,247,238,0.18);
  border-radius: 16px;
  box-shadow: inset 0 0 32px rgba(0,0,0,0.58);
}

.scanner-readout {
  position: absolute;
  left: 50%;
  bottom: 28px;
  width: min(360px, 70%);
  transform: translateX(-50%);
  display: grid;
  gap: 8px;
}

.scanner-readout span {
  display: block;
  height: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
}

.scanner-readout span::before {
  content: "";
  display: block;
  width: 55%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(255,106,0,0.08), rgba(255,154,56,0.9));
  box-shadow: 0 0 14px rgba(255,106,0,0.62);
  animation: scannerReadout 2.8s ease-in-out infinite;
}
.scanner-readout span:nth-child(2)::before { width: 78%; animation-delay: -0.8s; }
.scanner-readout span:nth-child(3)::before { width: 42%; animation-delay: -1.5s; }

.motion-copy {
  position: relative;
  z-index: 2;
  margin-top: clamp(18px, 2.5vw, 28px);
}

.motion-copy > span {
  display: block;
  color: var(--luly-accent-2);
  text-transform: uppercase;
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  margin-bottom: 0.6rem;
}

.motion-copy h3 {
  color: var(--luly-text);
  font-size: clamp(1.6rem, 2.4vw, 2.35rem);
  font-weight: 900;
  margin-bottom: 0.45rem;
}

.motion-copy p {
  color: rgba(255,247,238,0.68);
  margin: 0;
  max-width: 54ch;
}

@keyframes motionCardSweep {
  0%, 48% { transform: translateX(-120%); opacity: 0; }
  58% { opacity: 1; }
  72%, 100% { transform: translateX(120%); opacity: 0; }
}

@keyframes reactorSpin {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes reactorSpinReverse {
  from { transform: translate(-50%, -50%) rotate(360deg); }
  to { transform: translate(-50%, -50%) rotate(0deg); }
}

@keyframes reactorCorePulse {
  0%, 100% { transform: translate(-50%, -50%) rotate(-6deg) scale(1); box-shadow: 0 0 38px rgba(255,106,0,0.38), inset 0 0 28px rgba(255,106,0,0.10); }
  50% { transform: translate(-50%, -50%) rotate(3deg) scale(1.06); box-shadow: 0 0 62px rgba(255,106,0,0.58), inset 0 0 38px rgba(255,106,0,0.18); }
}

@keyframes reactorGridDrift {
  from { background-position: 0 0, 0 0; }
  to { background-position: 42px 42px, 42px 42px; }
}

@keyframes reactorChipFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

@keyframes reactorSparkOrbit {
  from { transform: rotate(0deg) translateX(var(--orbit)) rotate(0deg); opacity: 0.2; }
  35% { opacity: 1; }
  to { transform: rotate(360deg) translateX(var(--orbit)) rotate(-360deg); opacity: 0.2; }
}

@keyframes scannerCardFloat {
  0%, 100% { transform: perspective(900px) rotateX(6deg) rotateY(-9deg) translateY(0); }
  50% { transform: perspective(900px) rotateX(2deg) rotateY(-4deg) translateY(-12px); }
}

@keyframes scannerBeamMove {
  0%, 18% { left: -35%; opacity: 0; }
  26% { opacity: 1; }
  76% { left: 115%; opacity: 1; }
  100% { left: 115%; opacity: 0; }
}

@keyframes scannerGlowPulse {
  0%, 100% { opacity: 0.55; }
  50% { opacity: 0.95; }
}

@keyframes scannerBgPulse {
  0%, 100% { filter: saturate(0.9) contrast(1.02); }
  50% { filter: saturate(1.12) contrast(1.16); }
}

@keyframes scannerSubjectPop {
  0%, 100% { opacity: 0.75; transform: translateX(-5%) scale(0.96); }
  50% { opacity: 1; transform: translateX(-5%) scale(1.03); }
}

@keyframes scannerTitleLock {
  0%, 100% { opacity: 0.76; transform: translateX(-4px) skew(-6deg); }
  50% { opacity: 1; transform: translateX(0) skew(-6deg); }
}

@keyframes scannerReadout {
  0%, 100% { transform: translateX(-22%); opacity: 0.45; }
  50% { transform: translateX(48%); opacity: 1; }
}

@media (max-width: 991.98px) {
  body:not(.luly-login-page) {
    padding-top: 78px;
  }
  html { scroll-padding-top: 92px; }
  .motion-lab-grid {
    grid-template-columns: 1fr;
  }
  .motion-showcase {
    min-height: 500px;
  }
}

@media (max-width: 575.98px) {
  body:not(.luly-login-page) {
    padding-top: 72px;
  }
  .motion-showcase {
    min-height: 450px;
    border-radius: 24px;
  }
  .reactor-stage,
  .scanner-stage {
    min-height: 290px;
    border-radius: 20px;
  }
  .reactor-ring-a { width: 210px; height: 210px; }
  .reactor-ring-b { width: 150px; height: 150px; }
  .reactor-core { width: 78px; height: 78px; border-radius: 22px; }
  .reactor-core span { font-size: 2.5rem; }
  .reactor-chip {
    font-size: 0.72rem;
    padding: 0.42rem 0.58rem;
  }
  .chip-contrast { left: 6%; top: 14%; }
  .chip-depth { right: 6%; top: 18%; }
  .chip-glow { left: 7%; bottom: 14%; }
  .chip-read { right: 5%; bottom: 15%; }
  .scanner-card {
    width: 92%;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reactor-ring,
  .reactor-core,
  .reactor-grid,
  .reactor-chip,
  .reactor-spark,
  .scanner-card,
  .scanner-beam,
  .scanner-layer,
  .scanner-readout span::before,
  .motion-showcase::after {
    animation: none !important;
  }
}


/* LULYGraphics 3D wow add-on pack: forge, hologram room, thumbnail portal, order pipeline */
.navbar.luly-navbar,
.navbar.fixed-top.luly-navbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
  transform: none !important;
}

body:not(.luly-login-page) {
  padding-top: 88px !important;
}

.luly-3d-lab,
.luly-thumbnail-portal,
.luly-order-pipeline {
  position: relative;
  overflow: hidden;
}

.luly-3d-lab::before,
.luly-thumbnail-portal::before,
.luly-order-pipeline::before {
  content: "";
  position: absolute;
  inset: 8% -15% auto auto;
  width: 38rem;
  height: 38rem;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255, 106, 0, 0.13), transparent 66%);
  filter: blur(10px);
  pointer-events: none;
}

.forge-card,
.hologram-card,
.pipeline-stage,
.portal-stage {
  position: relative;
  border: 1px solid rgba(255, 132, 25, 0.24);
  border-radius: 34px;
  background:
    radial-gradient(circle at 18% 12%, rgba(255, 106, 0, 0.16), transparent 19rem),
    linear-gradient(145deg, rgba(255,255,255,0.06), rgba(255,255,255,0.016));
  box-shadow: 0 30px 90px rgba(0,0,0,0.44), inset 0 0 80px rgba(255,106,0,0.035);
  overflow: hidden;
}

.forge-card {
  min-height: 580px;
  display: grid;
  grid-template-columns: minmax(240px, 0.82fr) 1.18fr;
  gap: 1.2rem;
  padding: clamp(1.4rem, 3vw, 2.2rem);
}

.forge-copy,
.hologram-copy {
  position: relative;
  z-index: 2;
  align-self: end;
}

.forge-copy span,
.hologram-copy span {
  color: #ffad60;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.78rem;
  font-weight: 900;
}

.forge-copy h3,
.hologram-copy h3 {
  color: #fff7ee;
  letter-spacing: -0.055em;
  font-weight: 900;
  margin: .55rem 0 .8rem;
}

.forge-copy p,
.hologram-copy p {
  color: rgba(255,247,238,0.68);
  max-width: 33rem;
}

.forge-stage {
  position: relative;
  min-height: 500px;
  perspective: 1200px;
  transform-style: preserve-3d;
}

.forge-radar {
  position: absolute;
  inset: 9% 2% 8% 0;
  border-radius: 32px;
  background:
    linear-gradient(rgba(255,106,0,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,106,0,0.055) 1px, transparent 1px);
  background-size: 34px 34px;
  transform: perspective(900px) rotateX(64deg) rotateZ(-14deg);
  opacity: .7;
  animation: forgeGridMove 6s linear infinite;
}

.forge-light {
  position: absolute;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255,118,24,0.38), transparent 66%);
  filter: blur(16px);
  opacity: .65;
}

.forge-light-a { width: 250px; height: 250px; right: -55px; top: 30px; }
.forge-light-b { width: 190px; height: 190px; left: 4%; bottom: 16px; opacity: .36; }

.forge-frame {
  position: absolute;
  left: 50%;
  top: 48%;
  width: min(78%, 420px);
  aspect-ratio: 16/9;
  transform: translate(-50%, -50%) perspective(1000px) rotateX(9deg) rotateY(-15deg);
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(255,154,56,0.42);
  background: #070504;
  box-shadow: 0 34px 70px rgba(0,0,0,0.6), 0 0 38px rgba(255,106,0,0.14);
}

.forge-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .72;
  filter: saturate(.95) brightness(.78);
  animation: forgeFinalPulse 6s ease-in-out infinite;
}

.forge-frame span {
  position: absolute;
  left: 1rem;
  bottom: .9rem;
  color: #fff7ee;
  font-size: .8rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 900;
  text-shadow: 0 0 22px #000;
}

.forge-piece {
  position: absolute;
  width: 155px;
  height: 92px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  color: #fff7ee;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  border: 1px solid rgba(255,158,68,.4);
  background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,106,0,.12));
  box-shadow: 0 18px 36px rgba(0,0,0,.42), 0 0 24px rgba(255,106,0,.14);
  transform-style: preserve-3d;
}

.forge-bg {
  left: 4%;
  top: 12%;
  background: linear-gradient(135deg, rgba(255,106,0,.2), rgba(20,12,6,.82));
  animation: forgePieceBg 6s ease-in-out infinite;
}

.forge-subject {
  right: 4%;
  top: 17%;
  background: radial-gradient(circle at 35% 34%, rgba(255,228,196,.36), transparent 18%), linear-gradient(145deg, rgba(255,255,255,.1), rgba(11,8,6,.88));
  animation: forgePieceSubject 6s ease-in-out infinite;
}

.forge-title {
  left: 8%;
  bottom: 21%;
  font-size: 1.35rem;
  color: #ff8a22;
  text-shadow: 0 0 24px rgba(255,106,0,.75);
  animation: forgePieceTitle 6s ease-in-out infinite;
}

.forge-fx {
  right: 9%;
  bottom: 12%;
  background: radial-gradient(circle, rgba(255,106,0,.42), rgba(255,106,0,.08) 44%, rgba(10,7,5,.9));
  animation: forgePieceFx 6s ease-in-out infinite;
}

.forge-export {
  position: absolute;
  right: 7%;
  bottom: 6%;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  border: 1px solid rgba(255,132,25,.35);
  border-radius: 999px;
  padding: .58rem .85rem;
  color: rgba(255,247,238,.84);
  background: rgba(5,4,3,.74);
  font-weight: 800;
  font-size: .82rem;
  box-shadow: 0 0 24px rgba(255,106,0,.12);
}

.forge-export i {
  width: .55rem;
  height: .55rem;
  border-radius: 999px;
  background: #ff851b;
  box-shadow: 0 0 18px rgba(255,106,0,.82);
}

.hologram-card {
  min-height: 580px;
  padding: clamp(1.4rem, 3vw, 2rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.holo-room {
  position: relative;
  min-height: 380px;
  perspective: 1100px;
  transform-style: preserve-3d;
}

.holo-floor {
  position: absolute;
  left: 50%;
  bottom: 8%;
  width: 74%;
  aspect-ratio: 2.2/1;
  transform: translateX(-50%) rotateX(72deg);
  border-radius: 50%;
  border: 1px solid rgba(255,132,25,.16);
  background:
    radial-gradient(circle, rgba(255,106,0,.17), transparent 64%),
    repeating-radial-gradient(circle, rgba(255,132,25,.18) 0 1px, transparent 1px 28px);
  filter: blur(.1px);
  animation: holoFloorPulse 4.4s ease-in-out infinite;
}

.holo-ring {
  position: absolute;
  left: 50%;
  top: 42%;
  border: 1px solid rgba(255,132,25,.26);
  border-radius: 999px;
  transform-style: preserve-3d;
}

.holo-ring-one {
  width: 260px;
  height: 260px;
  margin-left: -130px;
  margin-top: -130px;
  transform: rotateX(68deg) rotateZ(0deg);
  animation: holoRingSpin 7.5s linear infinite;
}

.holo-ring-two {
  width: 190px;
  height: 190px;
  margin-left: -95px;
  margin-top: -95px;
  transform: rotateY(66deg) rotateZ(0deg);
  animation: holoRingSpin 5.7s linear infinite reverse;
}

.holo-core {
  position: absolute;
  left: 50%;
  top: 42%;
  width: 98px;
  height: 98px;
  transform: translate(-50%, -50%);
  border-radius: 28px;
  display: grid;
  place-items: center;
  background: rgba(7,5,3,.92);
  border: 1px solid rgba(255,132,25,.3);
  box-shadow: 0 0 50px rgba(255,106,0,.38), inset 0 0 26px rgba(255,106,0,.11);
  color: #ff861c;
  font-weight: 900;
  font-size: 3rem;
  text-shadow: 0 0 24px rgba(255,106,0,.8);
  animation: holoCoreFloat 3.2s ease-in-out infinite;
}

.holo-panel {
  position: absolute;
  width: 142px;
  border-radius: 18px;
  padding: .72rem .85rem;
  border: 1px solid rgba(255,132,25,.25);
  background: rgba(18,14,10,.84);
  box-shadow: 0 18px 38px rgba(0,0,0,.44), 0 0 26px rgba(255,106,0,.1);
  transform-style: preserve-3d;
  animation: holoPanelFloat 4.2s ease-in-out infinite;
}

.holo-panel strong,
.holo-panel em {
  display: block;
}

.holo-panel strong { color: #fff7ee; font-size: .88rem; }
.holo-panel em { color: rgba(255,247,238,.58); font-size: .72rem; font-style: normal; }
.holo-panel-1 { left: 4%; top: 9%; transform: perspective(700px) rotateY(14deg) rotateZ(-4deg); }
.holo-panel-2 { right: 2%; top: 18%; transform: perspective(700px) rotateY(-16deg) rotateZ(5deg); animation-delay: -.9s; }
.holo-panel-3 { left: 8%; bottom: 20%; transform: perspective(700px) rotateY(20deg) rotateZ(3deg); animation-delay: -1.6s; }
.holo-panel-4 { right: 8%; bottom: 13%; transform: perspective(700px) rotateY(-14deg) rotateZ(-5deg); animation-delay: -2.4s; }

/* Thumbnail portal */
.luly-thumbnail-portal .portal-tags,
.portal-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}

.portal-tags span {
  border: 1px solid rgba(255,132,25,.22);
  border-radius: 999px;
  padding: .48rem .78rem;
  background: rgba(255,255,255,.035);
  color: rgba(255,247,238,.72);
  font-weight: 800;
  font-size: .86rem;
}

.portal-stage {
  min-height: 520px;
  perspective: 1200px;
  transform-style: preserve-3d;
}

.portal-stage .portal-ring,
.portal-stage .portal-core,
.portal-stage .portal-card,
.portal-stage .portal-scan {
  position: absolute;
}

.portal-ring {
  left: 50%;
  top: 50%;
  border-radius: 999px;
  transform: translate(-50%, -50%) rotateX(67deg);
  border: 2px solid rgba(255,132,25,.24);
  box-shadow: 0 0 48px rgba(255,106,0,.16), inset 0 0 46px rgba(255,106,0,.08);
}

.portal-ring-a { width: 360px; height: 360px; animation: portalRingSpin 7s linear infinite; }
.portal-ring-b { width: 245px; height: 245px; animation: portalRingSpin 4.8s linear infinite reverse; opacity: .72; }

.portal-core {
  left: 50%;
  top: 50%;
  width: 124px;
  height: 124px;
  transform: translate(-50%, -50%);
  border-radius: 34px;
  display: grid;
  place-items: center;
  color: #ff861c;
  font-weight: 900;
  font-size: 3.5rem;
  background: rgba(7,5,3,.9);
  border: 1px solid rgba(255,132,25,.3);
  text-shadow: 0 0 26px rgba(255,106,0,.85);
  box-shadow: 0 0 64px rgba(255,106,0,.32), inset 0 0 32px rgba(255,106,0,.13);
  animation: portalCorePulse 3.4s ease-in-out infinite;
}

.portal-stage .portal-card {
  display: block;
  width: min(47%, 310px);
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(255,154,56,.34);
  background: #070504;
  box-shadow: 0 22px 54px rgba(0,0,0,.55), 0 0 32px rgba(255,106,0,.12);
  text-decoration: none;
  transform-style: preserve-3d;
}

.portal-stage .portal-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}

.portal-stage .portal-card span {
  position: absolute;
  left: .9rem;
  bottom: .8rem;
  color: #fff7ee;
  font-weight: 900;
  text-shadow: 0 0 18px #000;
}

.portal-stage .portal-card-1 { left: 5%; top: 12%; animation: portalCardOne 6s ease-in-out infinite; }
.portal-stage .portal-card-2 { right: 4%; top: 38%; animation: portalCardTwo 6s ease-in-out infinite -.9s; }
.portal-stage .portal-card-3 { left: 22%; bottom: 10%; animation: portalCardThree 6s ease-in-out infinite -1.8s; }

.portal-scan {
  left: 50%;
  top: 50%;
  width: 2px;
  height: 68%;
  background: linear-gradient(transparent, rgba(255,132,25,.75), transparent);
  box-shadow: 0 0 24px rgba(255,106,0,.58);
  transform: translate(-50%, -50%) rotate(28deg);
  animation: portalScan 3.5s ease-in-out infinite;
}

/* 3D order pipeline */
.pipeline-stage {
  min-height: 440px;
  perspective: 1100px;
  transform-style: preserve-3d;
}

.pipeline-grid {
  position: absolute;
  inset: 14% 4% 8%;
  border-radius: 30px;
  background:
    linear-gradient(rgba(255,106,0,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,106,0,0.055) 1px, transparent 1px);
  background-size: 38px 38px;
  transform: rotateX(62deg) rotateZ(-8deg);
  opacity: .78;
  animation: forgeGridMove 7s linear infinite;
}

.pipeline-line {
  position: absolute;
  left: 12%;
  right: 12%;
  top: 54%;
  height: 3px;
  background: linear-gradient(90deg, rgba(255,106,0,.08), rgba(255,132,25,.88), rgba(255,106,0,.08));
  box-shadow: 0 0 24px rgba(255,106,0,.36);
  transform: perspective(900px) rotateX(54deg) rotateZ(-2deg);
}

.pipeline-token {
  position: absolute;
  left: 10%;
  top: 44%;
  width: 64px;
  height: 64px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  background: rgba(7,5,3,.92);
  border: 1px solid rgba(255,132,25,.35);
  color: #ff861c;
  font-weight: 900;
  font-size: 2rem;
  text-shadow: 0 0 22px rgba(255,106,0,.8);
  box-shadow: 0 0 42px rgba(255,106,0,.34), inset 0 0 22px rgba(255,106,0,.12);
  animation: pipelineTokenMove 7.5s ease-in-out infinite;
  z-index: 5;
}

.pipeline-station {
  position: absolute;
  width: 170px;
  min-height: 118px;
  border-radius: 22px;
  padding: 1rem;
  background: rgba(18,14,10,.82);
  border: 1px solid rgba(255,132,25,.27);
  box-shadow: 0 20px 42px rgba(0,0,0,.42), 0 0 24px rgba(255,106,0,.08);
  transform: perspective(800px) rotateX(8deg) rotateY(-9deg);
  animation: pipelineStationPulse 7.5s ease-in-out infinite;
}

.pipeline-station span,
.pipeline-station strong,
.pipeline-station em {
  display: block;
}

.pipeline-station span {
  color: #ff8a22;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
}

.pipeline-station strong {
  color: #fff7ee;
  font-size: 1.1rem;
  margin-top: .35rem;
}

.pipeline-station em {
  color: rgba(255,247,238,.6);
  font-style: normal;
  font-size: .83rem;
  margin-top: .15rem;
}

.station-1 { left: 5%; top: 14%; animation-delay: 0s; }
.station-2 { left: 30%; top: 48%; animation-delay: -1.8s; }
.station-3 { right: 28%; top: 18%; animation-delay: -3.6s; }
.station-4 { right: 5%; top: 50%; animation-delay: -5.4s; }

@keyframes forgeGridMove {
  from { background-position: 0 0, 0 0; }
  to { background-position: 38px 38px, 38px 38px; }
}

@keyframes forgeFinalPulse {
  0%, 100% { opacity: .52; filter: saturate(.8) brightness(.66); }
  60% { opacity: .98; filter: saturate(1.18) brightness(1.02); }
}

@keyframes forgePieceBg {
  0%, 100% { transform: translate3d(-18px, -12px, 120px) rotateX(12deg) rotateY(24deg) rotateZ(-9deg); opacity: .95; }
  58%, 72% { transform: translate3d(172px, 132px, 160px) rotateX(8deg) rotateY(-12deg) rotateZ(-5deg) scale(.82); opacity: .34; }
}

@keyframes forgePieceSubject {
  0%, 100% { transform: translate3d(20px, -8px, 120px) rotateX(9deg) rotateY(-25deg) rotateZ(8deg); opacity: .94; }
  58%, 72% { transform: translate3d(-162px, 118px, 165px) rotateX(6deg) rotateY(-14deg) rotateZ(5deg) scale(.78); opacity: .32; }
}

@keyframes forgePieceTitle {
  0%, 100% { transform: translate3d(-16px, 14px, 120px) rotateX(8deg) rotateY(22deg) rotateZ(-5deg); opacity: .95; }
  58%, 72% { transform: translate3d(160px, -70px, 170px) rotateX(6deg) rotateY(-15deg) rotateZ(-3deg) scale(.72); opacity: .36; }
}

@keyframes forgePieceFx {
  0%, 100% { transform: translate3d(16px, 8px, 120px) rotateX(10deg) rotateY(-22deg) rotateZ(9deg); opacity: .95; }
  58%, 72% { transform: translate3d(-136px, -88px, 180px) rotateX(8deg) rotateY(-10deg) rotateZ(5deg) scale(.68); opacity: .28; }
}

@keyframes holoFloorPulse {
  0%, 100% { opacity: .5; filter: blur(.1px); }
  50% { opacity: .95; filter: blur(0); }
}

@keyframes holoRingSpin {
  from { transform: rotateX(68deg) rotateZ(0deg); }
  to { transform: rotateX(68deg) rotateZ(360deg); }
}

@keyframes holoCoreFloat {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(-3deg); }
  50% { transform: translate(-50%, -50%) translateY(-10px) rotate(4deg); }
}

@keyframes holoPanelFloat {
  0%, 100% { margin-top: 0; filter: brightness(.95); }
  50% { margin-top: -12px; filter: brightness(1.12); }
}

@keyframes portalRingSpin {
  from { transform: translate(-50%, -50%) rotateX(67deg) rotateZ(0deg); }
  to { transform: translate(-50%, -50%) rotateX(67deg) rotateZ(360deg); }
}

@keyframes portalCorePulse {
  0%, 100% { transform: translate(-50%, -50%) scale(1); }
  50% { transform: translate(-50%, -50%) scale(1.07); }
}

@keyframes portalCardOne {
  0%, 100% { transform: perspective(900px) translate3d(0, 0, 110px) rotateY(18deg) rotateZ(-7deg); }
  48% { transform: perspective(900px) translate3d(80px, 45px, 40px) rotateY(4deg) rotateZ(-2deg); }
}

@keyframes portalCardTwo {
  0%, 100% { transform: perspective(900px) translate3d(0, 0, 90px) rotateY(-18deg) rotateZ(7deg); }
  48% { transform: perspective(900px) translate3d(-72px, -26px, 35px) rotateY(-5deg) rotateZ(2deg); }
}

@keyframes portalCardThree {
  0%, 100% { transform: perspective(900px) translate3d(0, 0, 130px) rotateX(4deg) rotateY(10deg) rotateZ(3deg); }
  48% { transform: perspective(900px) translate3d(50px, -52px, 48px) rotateX(1deg) rotateY(2deg) rotateZ(0deg); }
}

@keyframes portalScan {
  0%, 100% { opacity: .15; transform: translate(-50%, -50%) rotate(28deg) scaleY(.7); }
  45% { opacity: .95; transform: translate(-50%, -50%) rotate(28deg) scaleY(1.12); }
}

@keyframes pipelineTokenMove {
  0%, 100% { left: 8%; top: 26%; transform: rotate(-8deg) scale(1); }
  25% { left: 32%; top: 58%; transform: rotate(6deg) scale(1.05); }
  50% { left: 58%; top: 29%; transform: rotate(-5deg) scale(1.02); }
  75% { left: 82%; top: 58%; transform: rotate(7deg) scale(1.08); }
}

@keyframes pipelineStationPulse {
  0%, 100% { box-shadow: 0 20px 42px rgba(0,0,0,.42), 0 0 24px rgba(255,106,0,.08); }
  50% { box-shadow: 0 24px 52px rgba(0,0,0,.48), 0 0 44px rgba(255,106,0,.18); }
}

@media (max-width: 991.98px) {
  body:not(.luly-login-page) { padding-top: 78px !important; }
  .forge-card { grid-template-columns: 1fr; min-height: auto; }
  .forge-stage { min-height: 450px; }
  .hologram-card { min-height: auto; }
  .portal-stage { min-height: 470px; }
  .pipeline-stage { min-height: 560px; }
  .pipeline-line { display: none; }
  .station-1 { left: 7%; top: 8%; }
  .station-2 { right: 7%; left: auto; top: 29%; }
  .station-3 { left: 7%; right: auto; top: 52%; }
  .station-4 { right: 7%; top: 72%; }
  @keyframes pipelineTokenMove {
    0%, 100% { left: 12%; top: 16%; transform: rotate(-8deg) scale(1); }
    25% { left: 68%; top: 36%; transform: rotate(6deg) scale(1.05); }
    50% { left: 12%; top: 60%; transform: rotate(-5deg) scale(1.02); }
    75% { left: 68%; top: 80%; transform: rotate(7deg) scale(1.08); }
  }
}

@media (max-width: 575.98px) {
  body:not(.luly-login-page) { padding-top: 72px !important; }
  .forge-card,
  .hologram-card,
  .pipeline-stage,
  .portal-stage { border-radius: 24px; }
  .forge-copy h3,
  .hologram-copy h3 { font-size: 1.5rem; }
  .forge-stage { min-height: 390px; }
  .forge-frame { width: 88%; }
  .forge-piece { width: 118px; height: 74px; font-size: .66rem; }
  .holo-panel { width: 118px; padding: .6rem; }
  .holo-panel strong { font-size: .75rem; }
  .holo-panel em { font-size: .65rem; }
  .holo-core { width: 78px; height: 78px; border-radius: 23px; font-size: 2.3rem; }
  .portal-stage .portal-card { width: 62%; }
  .portal-stage .portal-card-1 { left: 5%; top: 12%; }
  .portal-stage .portal-card-2 { right: 3%; top: 39%; }
  .portal-stage .portal-card-3 { left: 16%; bottom: 9%; }
  .pipeline-station { width: 138px; min-height: 106px; border-radius: 18px; padding: .82rem; }
  .pipeline-station strong { font-size: .92rem; }
  .pipeline-token { width: 54px; height: 54px; border-radius: 16px; font-size: 1.6rem; }
}

@media (prefers-reduced-motion: reduce) {
  .forge-radar,
  .forge-frame img,
  .forge-piece,
  .holo-floor,
  .holo-ring,
  .holo-core,
  .holo-panel,
  .portal-ring,
  .portal-core,
  .portal-stage .portal-card,
  .portal-scan,
  .pipeline-grid,
  .pipeline-token,
  .pipeline-station {
    animation: none !important;
  }
}


/* LULYGraphics Dice of Truth gag */
.luly-dice-gag {
  position: relative;
  overflow: hidden;
}

.luly-dice-gag::before {
  content: "";
  position: absolute;
  inset: 8% -10% auto auto;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,106,0,.18), transparent 68%);
  filter: blur(12px);
  pointer-events: none;
}

.dice-copy-card {
  margin: 1.4rem 0 1rem;
  max-width: 430px;
  padding: 1.1rem 1.2rem;
  border: 1px solid rgba(255,132,25,.24);
  border-radius: 22px;
  background: rgba(18,14,10,.62);
  box-shadow: 0 22px 48px rgba(0,0,0,.28), inset 0 0 22px rgba(255,106,0,.035);
  transition: border-color .35s ease, box-shadow .35s ease, transform .35s ease;
}

.dice-copy-card strong,
.dice-copy-card span {
  display: block;
}

.dice-copy-card strong {
  color: #fff7ee;
  font-size: 1.02rem;
}

.dice-copy-card span {
  color: rgba(255,247,238,.66);
  margin-top: .35rem;
  line-height: 1.7;
}

.dice-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  margin-top: 1.1rem;
}

.dice-secret-action {
  display: none;
  opacity: 0;
  transform: translateY(8px);
  visibility: hidden;
  pointer-events: none;
  transition: opacity .35s ease, transform .35s ease, visibility .35s ease;
}

.dice-secret-action.is-available {
  display: inline-flex;
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
  pointer-events: auto;
}

.dice-stage {
  --dice-size: 172px;
  --dice-half: calc(var(--dice-size) / 2);
  position: relative;
  min-height: 520px;
  border-radius: 34px;
  border: 1px solid rgba(255,132,25,.25);
  background:
    radial-gradient(circle at 48% 24%, rgba(255,106,0,.16), transparent 33%),
    radial-gradient(circle at 50% 78%, rgba(255,106,0,.12), transparent 32%),
    linear-gradient(135deg, rgba(29,21,13,.86), rgba(6,5,4,.94));
  box-shadow: 0 30px 90px rgba(0,0,0,.48), inset 0 0 50px rgba(255,106,0,.035);
  overflow: hidden;
  perspective: 1000px;
  transform-style: preserve-3d;
}

.dice-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,106,0,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,106,0,.04) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: linear-gradient(to bottom, transparent, black 20%, black 72%, transparent);
  opacity: .55;
  transform: perspective(760px) rotateX(58deg) translateY(128px) scale(1.08);
  transform-origin: bottom;
  animation: diceGridDrift 7s linear infinite;
}

.dice-floor {
  position: absolute;
  left: 50%;
  bottom: 78px;
  width: 72%;
  height: 120px;
  border-radius: 50%;
  transform: translateX(-50%) rotateX(64deg);
  background: radial-gradient(circle, rgba(255,106,0,.24), rgba(255,106,0,.045) 48%, transparent 70%);
  filter: blur(1px);
}

.dice-shockwave {
  position: absolute;
  left: 50%;
  bottom: 112px;
  width: 210px;
  height: 54px;
  border: 1px solid rgba(255,132,25,.38);
  border-radius: 50%;
  transform: translateX(-50%) rotateX(66deg) scale(.65);
  box-shadow: 0 0 30px rgba(255,106,0,.18);
  opacity: 0;
}

.dice-cube {
  position: absolute;
  left: 50%;
  top: 52%;
  width: var(--dice-size);
  height: var(--dice-size);
  transform-style: preserve-3d;
  cursor: pointer;
  outline: none;
  transform: translate3d(-50%, -46%, 110px) rotateX(-18deg) rotateY(126deg) rotateZ(4deg);
  transition: transform .8s cubic-bezier(.2,.9,.18,1), filter .45s ease;
  will-change: transform;
  z-index: 3;
}

.dice-stage.is-idle .dice-cube {
  animation: diceIdleFloat 3.8s ease-in-out infinite;
}

.dice-stage.is-rolling .dice-cube {
  animation: diceTruthRoll 2.75s cubic-bezier(.58,.02,.18,1) forwards !important;
}

.dice-stage.is-landed .dice-cube {
  transform: translate3d(-50%, -46%, 110px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg);
}

.dice-stage.is-secret .dice-cube {
  animation: diceSecretLift 1.25s cubic-bezier(.17,.84,.25,1) forwards !important;
  filter: drop-shadow(0 0 34px rgba(255,106,0,.3));
}

.dice-cube:focus-visible {
  outline: 2px solid rgba(255,132,25,.82);
  outline-offset: 12px;
  border-radius: 22px;
}

.dice-face {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 1rem;
  border-radius: 28px;
  border: 1px solid rgba(255,132,25,.42);
  background:
    radial-gradient(circle at 30% 22%, rgba(255,137,31,.28), transparent 34%),
    linear-gradient(145deg, rgba(24,18,12,.98), rgba(5,4,3,.96));
  color: #fff7ee;
  box-shadow: inset 0 0 38px rgba(255,106,0,.12), 0 0 42px rgba(255,106,0,.14);
  backface-visibility: hidden;
}

.dice-face::after {
  content: "";
  position: absolute;
  inset: 13px;
  border-radius: 21px;
  border: 1px solid rgba(255,132,25,.12);
  pointer-events: none;
}

.dice-face span {
  color: #ff8a22;
  font-weight: 900;
  letter-spacing: .02em;
  text-shadow: 0 0 22px rgba(255,106,0,.72);
  line-height: 1.08;
}

.dice-front span {
  font-size: 1.42rem;
  letter-spacing: -.02em;
  color: #fff4e8;
}

.dice-face em {
  margin-top: .38rem;
  color: rgba(255,247,238,.62);
  font-size: .75rem;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.dice-front { transform: translateZ(var(--dice-half)); }
.dice-back { transform: rotateY(180deg) translateZ(var(--dice-half)); }
.dice-right { transform: rotateY(90deg) translateZ(var(--dice-half)); }
.dice-left { transform: rotateY(-90deg) translateZ(var(--dice-half)); }
.dice-top { transform: rotateX(90deg) translateZ(var(--dice-half)); }
.dice-bottom { transform: rotateX(-90deg) translateZ(var(--dice-half)); }

.dice-front {
  background:
    radial-gradient(circle at 48% 40%, rgba(255,106,0,.34), transparent 43%),
    linear-gradient(145deg, rgba(28,19,12,.98), rgba(6,4,3,.98));
}

.dice-bottom {
  border-color: rgba(255,179,89,.55);
  background:
    radial-gradient(circle at center, rgba(255,106,0,.32), transparent 48%),
    linear-gradient(145deg, rgba(33,18,10,.98), rgba(7,4,2,.98));
}

.dice-magnet {
  position: absolute;
  left: 50%;
  bottom: 116px;
  width: 160px;
  height: 78px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .18rem;
  transform: translateX(-50%) translateY(44px) rotateX(62deg) scale(.78);
  opacity: 0;
  z-index: 2;
  filter: blur(1.3px);
  pointer-events: none;
}

.dice-magnet::before {
  content: "";
  position: absolute;
  inset: -24px -42px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,106,0,.25), transparent 64%);
  opacity: 0;
}

.dice-magnet i {
  position: relative;
  width: 80px;
  height: 48px;
  border: 12px solid rgba(255,132,25,.86);
  border-top: none;
  border-radius: 0 0 32px 32px;
  box-shadow: 0 0 34px rgba(255,106,0,.55), inset 0 0 12px rgba(255,255,255,.08);
}

.dice-magnet i::before,
.dice-magnet i::after {
  content: "";
  position: absolute;
  top: -4px;
  width: 18px;
  height: 14px;
  border-radius: 4px;
  background: #fff1df;
  box-shadow: 0 0 18px rgba(255,106,0,.5);
}

.dice-magnet i::before { left: -15px; }
.dice-magnet i::after { right: -15px; }

.dice-magnet span {
  color: rgba(255,247,238,.66);
  text-transform: uppercase;
  font-size: .64rem;
  letter-spacing: .14em;
}

.dice-stage.is-secret .dice-magnet {
  animation: magnetSurprise 1.25s cubic-bezier(.17,.84,.25,1) .18s forwards;
}

.dice-stage.is-secret .dice-magnet::before {
  animation: magnetGlowPop 1.25s ease .18s forwards;
}

.dice-stage.is-rolling .dice-shockwave {
  animation: diceShockwave 2.75s ease-in-out forwards;
}

.dice-stage.is-landed .dice-shockwave,
.dice-stage.is-secret .dice-shockwave {
  opacity: .34;
  transform: translateX(-50%) rotateX(66deg) scale(1.02);
}

.dice-caption {
  position: absolute;
  left: 50%;
  bottom: 28px;
  width: min(86%, 440px);
  padding: .95rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(255,132,25,.22);
  background: rgba(8,6,5,.65);
  transform: translateX(-50%);
  text-align: center;
  box-shadow: 0 18px 42px rgba(0,0,0,.36);
  transition: border-color .35s ease, box-shadow .35s ease;
}

.dice-stage.is-landed .dice-caption,
.dice-stage.is-secret .dice-caption {
  border-color: rgba(255,132,25,.42);
  box-shadow: 0 18px 46px rgba(0,0,0,.42), 0 0 34px rgba(255,106,0,.12);
}

.dice-caption strong,
.dice-caption span {
  display: block;
}

.dice-caption strong {
  color: #fff7ee;
  font-size: 1.05rem;
}

.dice-caption span {
  color: rgba(255,247,238,.62);
  margin-top: .2rem;
}

@keyframes diceIdleFloat {
  0%, 100% { transform: translate3d(-50%, -46%, 110px) rotateX(-18deg) rotateY(126deg) rotateZ(4deg); }
  50% { transform: translate3d(-50%, -50%, 122px) rotateX(-18deg) rotateY(126deg) rotateZ(4deg); }
}

@keyframes diceTruthRoll {
  0% {
    transform: translate3d(-50%, -46%, 110px) rotateX(-18deg) rotateY(126deg) rotateZ(4deg);
  }
  16% {
    transform: translate3d(-70%, -126%, 236px) rotateX(138deg) rotateY(286deg) rotateZ(-28deg);
  }
  34% {
    transform: translate3d(-27%, -110%, 262px) rotateX(374deg) rotateY(538deg) rotateZ(23deg);
  }
  54% {
    transform: translate3d(-63%, -72%, 168px) rotateX(598deg) rotateY(762deg) rotateZ(-17deg);
  }
  72% {
    transform: translate3d(-41%, -54%, 128px) rotateX(726deg) rotateY(912deg) rotateZ(7deg);
  }
  84% {
    transform: translate3d(-50%, -49%, 114px) rotateX(350deg) rotateY(334deg) rotateZ(-1deg);
  }
  100% {
    transform: translate3d(-50%, -46%, 110px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg);
  }
}

@keyframes diceSecretLift {
  0% { transform: translate3d(-50%, -46%, 110px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg); }
  42% { transform: translate3d(-50%, -76%, 178px) rotateX(42deg) rotateY(-28deg) rotateZ(-5deg); }
  100% { transform: translate3d(-50%, -72%, 188px) rotateX(66deg) rotateY(-28deg) rotateZ(-9deg); }
}

@keyframes magnetSurprise {
  0% { opacity: 0; transform: translateX(-50%) translateY(44px) rotateX(62deg) scale(.78); filter: blur(1.3px); }
  55% { opacity: 1; transform: translateX(-50%) translateY(-10px) rotateX(62deg) scale(1.08); filter: blur(0); }
  76% { transform: translateX(-50%) translateY(4px) rotateX(62deg) scale(.96); }
  100% { opacity: 1; transform: translateX(-50%) translateY(0) rotateX(62deg) scale(1); filter: blur(0); }
}

@keyframes magnetGlowPop {
  0% { opacity: 0; transform: scale(.6); }
  55% { opacity: .9; transform: scale(1.12); }
  100% { opacity: .35; transform: scale(1); }
}

@keyframes diceShockwave {
  0%, 62% { opacity: 0; transform: translateX(-50%) rotateX(66deg) scale(.65); }
  72% { opacity: .9; transform: translateX(-50%) rotateX(66deg) scale(1.16); }
  88% { opacity: .08; transform: translateX(-50%) rotateX(66deg) scale(1.45); }
  100% { opacity: .34; transform: translateX(-50%) rotateX(66deg) scale(1.02); }
}

@keyframes diceGridDrift {
  from { background-position: 0 0, 0 0; }
  to { background-position: 36px 36px, 36px 36px; }
}

@media (max-width: 991.98px) {
  .dice-stage { min-height: 490px; }
}

@media (max-width: 575.98px) {
  .dice-stage {
    --dice-size: 126px;
    min-height: 430px;
    border-radius: 24px;
  }
  .dice-front span { font-size: 1rem; }
  .dice-face span { font-size: .78rem; }
  .dice-face em { font-size: .54rem; }
  .dice-caption { bottom: 22px; }
  .dice-actions .btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .dice-stage::before,
  .dice-cube,
  .dice-shockwave,
  .dice-magnet,
  .dice-magnet::before {
    animation: none !important;
  }
}


/* Login reset: keep the calm portal layout and prevent 3D portal card styles from affecting auth. */
.luly-login-page {
  padding-top: 0 !important;
}

.luly-login-page .login-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(410px, 0.82fr) !important;
  min-height: 100vh !important;
  width: 100% !important;
}

.luly-login-page .login-brand-panel,
.luly-login-page .login-card-section {
  min-height: 100vh !important;
  padding: clamp(32px, 5vw, 70px) !important;
}

.luly-login-page .login-brand-panel {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

.luly-login-page .login-card-section {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.luly-login-page .login-card.portal-card,
.luly-login-page .login-card {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: min(100%, 480px) !important;
  max-width: 480px !important;
  min-height: 0 !important;
  padding: clamp(28px, 4vw, 44px) !important;
  border-radius: 34px !important;
  overflow: visible !important;
  transform: none !important;
  text-decoration: none !important;
}

.luly-login-page .login-card-logo img {
  width: 64px !important;
  height: 64px !important;
  max-width: 64px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  display: block !important;
  position: static !important;
}

.luly-login-page .login-home-link img {
  width: 78px !important;
  height: 78px !important;
  max-width: 78px !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  display: block !important;
}

.luly-login-page .login-card h2 {
  font-size: clamp(2.25rem, 4.2vw, 3.25rem) !important;
  line-height: .98 !important;
}

.luly-login-page .login-card span:not(.eyebrow),
.luly-login-page .login-card img:not(.login-card-logo img) {
  position: static !important;
}

.luly-login-page .login-dashboard-teaser {
  display: none !important;
}

@media (max-width: 991.98px) {
  .luly-login-page .login-shell {
    grid-template-columns: 1fr !important;
  }

  .luly-login-page .login-brand-panel,
  .luly-login-page .login-card-section {
    min-height: auto !important;
  }
}

@media (max-width: 575.98px) {
  .luly-login-page .login-brand-panel,
  .luly-login-page .login-card-section {
    padding: 24px !important;
  }

  .luly-login-page .login-card.portal-card,
  .luly-login-page .login-card {
    width: 100% !important;
    padding: 24px !important;
    border-radius: 26px !important;
  }
}

/* Dice of Truth secret reveal — repaired.
   Roll/floating behavior is kept from the working version; this only improves the magnet reveal. */
.dice-stage {
  perspective: 1180px;
  perspective-origin: 50% 36%;
}

.dice-stage::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 112px;
  width: 250px;
  height: 250px;
  transform: translateX(-50%) rotateX(62deg) scale(.72);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(255,132,25,.34), rgba(255,106,0,.10) 44%, transparent 72%);
  filter: blur(10px);
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}

.dice-stage.is-secret::after {
  animation: diceSecretAura 1.25s ease .08s forwards;
}

.dice-stage.is-secret .dice-cube {
  animation: diceSecretLiftSolid 1.25s cubic-bezier(.17,.84,.25,1) forwards !important;
  filter: drop-shadow(0 22px 26px rgba(0,0,0,.46)) drop-shadow(0 0 36px rgba(255,106,0,.32));
  z-index: 5;
}

.dice-stage.is-secret .dice-face {
  box-shadow:
    inset 0 0 40px rgba(255,106,0,.16),
    0 0 36px rgba(255,106,0,.16),
    10px 18px 28px rgba(0,0,0,.28);
}

/* 3D-looking magnet: keep it on the floor plane, with depth, caps and a shadow. */
.dice-magnet {
  bottom: 118px;
  width: 200px;
  height: 120px;
  gap: .34rem;
  transform: translateX(-50%) translateY(70px) rotateX(58deg) rotateZ(0deg) scale(.58);
  transform-style: preserve-3d;
  filter: none;
  z-index: 3;
}

.dice-magnet::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 42px;
  width: 198px;
  height: 62px;
  transform: translateX(-50%) translateZ(-26px) rotateX(8deg);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(255,106,0,.38), rgba(255,106,0,.13) 48%, transparent 76%);
  filter: blur(3px);
  opacity: 0;
  pointer-events: none;
}

.dice-magnet::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 58px;
  width: 150px;
  height: 40px;
  transform: translateX(-50%) translateZ(-36px) rotateX(12deg);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.72), rgba(0,0,0,.28) 48%, transparent 76%);
  filter: blur(5px);
  opacity: 0;
  pointer-events: none;
}

.dice-magnet i {
  position: relative;
  width: 112px;
  height: 78px;
  border: 17px solid rgba(255,130,28,.96);
  border-top: none;
  border-radius: 0 0 44px 44px;
  background:
    linear-gradient(115deg, rgba(255,255,255,.22), transparent 30%, rgba(63,24,3,.30) 68%, rgba(255,188,106,.14)),
    linear-gradient(180deg, rgba(255,151,50,.22), rgba(58,24,4,.18));
  box-shadow:
    0 18px 28px rgba(0,0,0,.46),
    0 0 40px rgba(255,106,0,.66),
    inset 0 0 12px rgba(255,255,255,.20),
    inset 0 -16px 20px rgba(0,0,0,.28),
    8px 10px 0 rgba(91,39,6,.34);
  transform: translateZ(18px) rotateX(4deg);
  transform-style: preserve-3d;
}

.dice-magnet i::before,
.dice-magnet i::after {
  content: "";
  position: absolute;
  top: -8px;
  width: 28px;
  height: 23px;
  border-radius: 7px;
  background:
    linear-gradient(135deg, #fff2df 0%, #ff942e 45%, #a64200 78%, #351707 100%);
  box-shadow:
    0 8px 16px rgba(0,0,0,.34),
    0 0 22px rgba(255,106,0,.72),
    inset 0 0 8px rgba(255,255,255,.22);
  transform: translateZ(28px) rotateX(-4deg);
}

.dice-magnet i::before { left: -23px; }
.dice-magnet i::after { right: -23px; }

.dice-magnet span {
  margin-top: .28rem;
  color: rgba(255,224,190,.82);
  text-shadow: 0 0 18px rgba(255,106,0,.48);
  transform: translateZ(26px);
}

.dice-stage.is-secret .dice-magnet {
  animation: diceMagnetPop3D 1.22s cubic-bezier(.17,.84,.25,1) .14s forwards;
}

.dice-stage.is-secret .dice-magnet::before {
  animation: diceMagnetGlow3D 1.22s ease .14s forwards;
}

.dice-stage.is-secret .dice-magnet::after {
  animation: diceMagnetShadow3D 1.22s ease .14s forwards;
}

@keyframes diceSecretLiftSolid {
  0% {
    transform: translate3d(-50%, -46%, 110px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg) scale(1);
  }
  44% {
    transform: translate3d(-50%, -72%, 174px) rotateX(-13deg) rotateY(-31deg) rotateZ(-3deg) scale(1.02);
  }
  100% {
    transform: translate3d(-50%, -68%, 168px) rotateX(-12deg) rotateY(-30deg) rotateZ(-2deg) scale(1);
  }
}

@keyframes diceMagnetPop3D {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(70px) rotateX(58deg) rotateZ(0deg) scale(.58);
  }
  45% {
    opacity: 1;
    transform: translateX(-50%) translateY(4px) rotateX(58deg) rotateZ(0deg) scale(1.08);
  }
  70% {
    transform: translateX(-50%) translateY(14px) rotateX(58deg) rotateZ(0deg) scale(.96);
  }
  100% {
    opacity: 1;
    transform: translateX(-50%) translateY(9px) rotateX(58deg) rotateZ(0deg) scale(1);
  }
}

@keyframes diceMagnetGlow3D {
  0% { opacity: 0; transform: translateX(-50%) translateZ(-26px) rotateX(8deg) scale(.55); }
  50% { opacity: .86; transform: translateX(-50%) translateZ(-26px) rotateX(8deg) scale(1.12); }
  100% { opacity: .44; transform: translateX(-50%) translateZ(-26px) rotateX(8deg) scale(1); }
}

@keyframes diceMagnetShadow3D {
  0% { opacity: 0; transform: translateX(-50%) translateZ(-36px) rotateX(12deg) scale(.6); }
  58% { opacity: .72; transform: translateX(-50%) translateZ(-36px) rotateX(12deg) scale(1.12); }
  100% { opacity: .52; transform: translateX(-50%) translateZ(-36px) rotateX(12deg) scale(1); }
}

@keyframes diceSecretAura {
  0% { opacity: 0; transform: translateX(-50%) rotateX(62deg) scale(.65); }
  48% { opacity: .82; transform: translateX(-50%) rotateX(62deg) scale(1.08); }
  100% { opacity: .38; transform: translateX(-50%) rotateX(62deg) scale(1); }
}

@media (max-width: 575.98px) {
  .dice-magnet {
    bottom: 104px;
    transform: translateX(-50%) translateY(62px) rotateX(58deg) scale(.5);
  }

  .dice-stage.is-secret .dice-cube {
    animation-name: diceSecretLiftSolidMobile !important;
  }

  @keyframes diceSecretLiftSolidMobile {
    0% { transform: translate3d(-50%, -46%, 110px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg) scale(1); }
    100% { transform: translate3d(-50%, -70%, 154px) rotateX(-12deg) rotateY(-30deg) rotateZ(-2deg) scale(.96); }
  }
}

/* Dice of Truth final secret fix: remove the cube during the secret and make the magnet the 3D reveal. */
.dice-stage.is-secret .dice-cube {
  animation: diceSecretVanishOnly .68s cubic-bezier(.2,.85,.25,1) forwards !important;
  filter: none !important;
  pointer-events: none !important;
}

.dice-stage.is-secret .dice-face {
  box-shadow: inset 0 0 38px rgba(255,106,0,.12), 0 0 42px rgba(255,106,0,.14) !important;
}

.dice-stage.is-secret .dice-magnet {
  bottom: 150px !important;
  width: 250px !important;
  height: 196px !important;
  z-index: 7 !important;
  opacity: 0;
  display: flex !important;
  transform-style: preserve-3d !important;
  transform: translateX(-50%) translateY(54px) scale(.62) rotateX(12deg) rotateY(-10deg) !important;
  filter: drop-shadow(0 26px 42px rgba(0,0,0,.62)) !important;
  animation: diceMagnetRevealOnly 1.15s cubic-bezier(.17,.84,.25,1) .18s forwards !important;
}

.dice-stage.is-secret .dice-magnet::before {
  left: 50% !important;
  top: 48% !important;
  inset: auto !important;
  width: 260px !important;
  height: 150px !important;
  border-radius: 50% !important;
  opacity: 0;
  transform: translateX(-50%) translateY(-50%) translateZ(-44px) rotateX(68deg) scale(.62) !important;
  background: radial-gradient(ellipse at center, rgba(255,132,25,.55), rgba(255,106,0,.20) 42%, transparent 72%) !important;
  filter: blur(8px) !important;
  animation: diceMagnetOnlyAura 1.2s ease .18s forwards !important;
}

.dice-stage.is-secret .dice-magnet::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 18px !important;
  width: 190px !important;
  height: 36px !important;
  border-radius: 50% !important;
  opacity: 0;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.75), rgba(0,0,0,.28) 52%, transparent 74%) !important;
  transform: translateX(-50%) rotateX(68deg) translateZ(-48px) scale(.7) !important;
  filter: blur(5px) !important;
  animation: diceMagnetOnlyShadow 1.15s ease .18s forwards !important;
}

.dice-stage.is-secret .dice-magnet i {
  width: 126px !important;
  height: 104px !important;
  display: block !important;
  position: relative !important;
  border-left: 24px solid #ff821f !important;
  border-right: 24px solid #ff821f !important;
  border-bottom: 24px solid #ff821f !important;
  border-top: 0 !important;
  border-radius: 0 0 54px 54px !important;
  background:
    linear-gradient(120deg, rgba(255,255,255,.20), transparent 28%, rgba(68,25,3,.26) 70%, rgba(255,194,113,.14)),
    linear-gradient(180deg, rgba(255,142,39,.18), rgba(70,30,7,.20)) !important;
  transform: translateZ(48px) rotateX(-8deg) rotateY(3deg) !important;
  transform-style: preserve-3d !important;
  box-shadow:
    0 24px 38px rgba(0,0,0,.55),
    0 0 48px rgba(255,106,0,.78),
    12px 14px 0 rgba(102,41,5,.36),
    inset 0 0 14px rgba(255,255,255,.20),
    inset -9px -14px 18px rgba(0,0,0,.28) !important;
}

.dice-stage.is-secret .dice-magnet i::before,
.dice-stage.is-secret .dice-magnet i::after {
  content: "" !important;
  position: absolute !important;
  top: -11px !important;
  width: 34px !important;
  height: 28px !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #fff2dc 0%, #ff9a35 42%, #a84200 76%, #321505 100%) !important;
  box-shadow:
    0 10px 18px rgba(0,0,0,.38),
    0 0 28px rgba(255,106,0,.75),
    inset 0 0 9px rgba(255,255,255,.24) !important;
  transform: translateZ(34px) rotateX(-6deg) !important;
}

.dice-stage.is-secret .dice-magnet i::before { left: -30px !important; }
.dice-stage.is-secret .dice-magnet i::after { right: -30px !important; }

.dice-stage.is-secret .dice-magnet span {
  display: block !important;
  margin-top: .65rem !important;
  color: rgba(255,232,205,.86) !important;
  font-size: .72rem !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 18px rgba(255,106,0,.75) !important;
  transform: translateZ(54px) !important;
}

@keyframes diceSecretVanishOnly {
  0% { opacity: 1; transform: translate3d(-50%, -46%, 110px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg) scale(1); }
  48% { opacity: .65; transform: translate3d(-50%, -76%, 182px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg) scale(1.02); }
  100% { opacity: 0; visibility: hidden; transform: translate3d(-50%, -98%, 232px) rotateX(-10deg) rotateY(-24deg) rotateZ(0deg) scale(.78); }
}

@keyframes diceMagnetRevealOnly {
  0% { opacity: 0; transform: translateX(-50%) translateY(54px) scale(.62) rotateX(22deg) rotateY(-18deg); filter: drop-shadow(0 14px 24px rgba(0,0,0,.45)) blur(2px); }
  45% { opacity: 1; transform: translateX(-50%) translateY(-18px) scale(1.08) rotateX(8deg) rotateY(-10deg); filter: drop-shadow(0 30px 48px rgba(0,0,0,.65)) blur(0); }
  72% { transform: translateX(-50%) translateY(8px) scale(.96) rotateX(12deg) rotateY(-10deg); }
  100% { opacity: 1; transform: translateX(-50%) translateY(0) scale(1) rotateX(12deg) rotateY(-10deg); filter: drop-shadow(0 28px 48px rgba(0,0,0,.64)) blur(0); }
}

@keyframes diceMagnetOnlyAura {
  0% { opacity: 0; transform: translateX(-50%) translateY(-50%) translateZ(-44px) rotateX(68deg) scale(.55); }
  48% { opacity: .92; transform: translateX(-50%) translateY(-50%) translateZ(-44px) rotateX(68deg) scale(1.12); }
  100% { opacity: .46; transform: translateX(-50%) translateY(-50%) translateZ(-44px) rotateX(68deg) scale(1); }
}

@keyframes diceMagnetOnlyShadow {
  0% { opacity: 0; transform: translateX(-50%) rotateX(68deg) translateZ(-48px) scale(.55); }
  55% { opacity: .7; transform: translateX(-50%) rotateX(68deg) translateZ(-48px) scale(1.12); }
  100% { opacity: .56; transform: translateX(-50%) rotateX(68deg) translateZ(-48px) scale(1); }
}

@media (max-width: 575.98px) {
  .dice-stage.is-secret .dice-magnet {
    bottom: 122px !important;
    width: 210px !important;
    height: 164px !important;
  }

  .dice-stage.is-secret .dice-magnet i {
    width: 100px !important;
    height: 82px !important;
    border-left-width: 19px !important;
    border-right-width: 19px !important;
    border-bottom-width: 19px !important;
  }
}


/* Dice copy polish: shorter secret slogan spacing. */
.dice-stage.is-secret .dice-caption {
  width: min(84%, 410px);
  padding: .82rem .95rem;
}
.dice-stage.is-secret .dice-caption strong {
  font-size: 1rem;
}
.dice-stage.is-secret .dice-caption span {
  font-size: .95rem;
  line-height: 1.35;
}

/* Dice click safety: prevent repeated clicks from stacking roll/reveal animations. */
.dice-stage.is-busy .dice-cube {
  pointer-events: none;
  cursor: wait;
}
.dice-actions .btn:disabled {
  pointer-events: none;
  opacity: .68;
  cursor: wait;
}

/* LULYGraphics functional polish: trust, order clarity, brief intelligence and case-study cards. */
.luly-trust-zone,
.luly-delivery-clarity,
.luly-case-study,
.luly-conversion-strip {
  position: relative;
  overflow: hidden;
}

.luly-trust-zone::before,
.luly-delivery-clarity::before,
.luly-case-study::before,
.luly-conversion-strip::before {
  content: "";
  position: absolute;
  inset: auto -12% -18% auto;
  width: min(520px, 62vw);
  height: min(520px, 62vw);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 106, 0, .18), transparent 68%);
  pointer-events: none;
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.trust-card,
.delivery-card,
.live-order-summary,
.brief-quality-meter,
.case-preview-card,
.conversion-card,
.not-found-card {
  border: 1px solid rgba(255, 132, 25, .18);
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.028));
  border-radius: 24px;
  box-shadow: 0 22px 55px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(14px);
}

.trust-card,
.delivery-card {
  height: 100%;
  padding: 1.2rem;
}

.trust-card strong,
.delivery-card h3,
.live-order-summary h3,
.case-preview-card strong,
.conversion-card h2 {
  color: #fff3e3;
}

.trust-card p,
.delivery-card p,
.case-steps span,
.conversion-card p,
.live-order-summary span,
.brief-quality-meter p {
  color: rgba(255, 236, 214, .72);
}

.creator-type-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-top: 1.4rem;
}

.creator-type-cloud span,
.package-best-for,
.brief-checks span {
  border: 1px solid rgba(255, 132, 25, .22);
  background: rgba(255, 106, 0, .08);
  color: rgba(255, 230, 204, .88);
  border-radius: 999px;
}

.creator-type-cloud span {
  padding: .55rem .8rem;
  font-size: .82rem;
  font-weight: 700;
}

.package-best-for {
  display: grid;
  gap: .15rem;
  padding: .65rem .75rem;
  margin: 1rem 0;
  border-radius: 18px;
}

.package-best-for span {
  color: rgba(255, 220, 188, .62);
  font-size: .7rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.package-best-for strong {
  color: #fff0dd;
  font-size: .84rem;
}

.live-order-summary {
  position: sticky;
  top: 106px;
  margin-top: 1.1rem;
  padding: 1.1rem;
}

.summary-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .78rem 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.summary-row strong {
  color: #fff2df;
  text-align: right;
}

.brief-quality-meter {
  margin-top: .9rem;
  padding: 1rem;
}

.brief-meter-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  margin-bottom: .65rem;
}

.brief-meter-head span {
  color: rgba(255, 228, 196, .72);
  font-weight: 700;
}

.brief-meter-head strong {
  color: #ffb067;
}

.brief-meter-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
}

.brief-meter-track i {
  display: block;
  width: 12%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6a00, #ffc071);
  box-shadow: 0 0 18px rgba(255,106,0,.45);
  transition: width .25s ease;
}

.brief-checks {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin: .85rem 0 .55rem;
}

.brief-checks span {
  padding: .38rem .58rem;
  font-size: .72rem;
  opacity: .55;
  transition: opacity .2s ease, background .2s ease, border-color .2s ease;
}

.brief-checks span.is-done {
  opacity: 1;
  background: rgba(255, 106, 0, .18);
  border-color: rgba(255, 178, 93, .42);
}

.delivery-card i {
  display: inline-grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 16px;
  margin-bottom: .9rem;
  color: #ffb36f;
  background: rgba(255, 106, 0, .12);
  box-shadow: inset 0 0 20px rgba(255,106,0,.10), 0 0 28px rgba(255,106,0,.10);
}

.case-steps {
  display: grid;
  gap: .75rem;
  margin: 1.35rem 0;
}

.case-steps div {
  display: grid;
  gap: .15rem;
  padding: .9rem 1rem;
  border: 1px solid rgba(255,132,25,.18);
  border-radius: 18px;
  background: rgba(255,255,255,.045);
}

.case-steps strong {
  color: #ffb36f;
}

.case-preview-card {
  position: relative;
  display: block;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
  min-height: 360px;
}

.case-preview-card img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .45s ease;
}

.case-preview-card:hover img {
  transform: scale(1.07);
}

.case-preview-card > div {
  position: absolute;
  left: 1.2rem;
  right: 1.2rem;
  bottom: 1.2rem;
  display: grid;
  gap: .18rem;
  padding: 1rem;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  background: rgba(8,9,13,.78);
  backdrop-filter: blur(12px);
}

.case-preview-card span,
.case-preview-card em {
  color: rgba(255,232,205,.75);
  font-style: normal;
}

.conversion-card {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(1.3rem, 3vw, 2rem);
  overflow: hidden;
}

.conversion-card::after {
  content: "L";
  position: absolute;
  right: 8%;
  top: 50%;
  transform: translateY(-50%) rotate(-8deg);
  color: rgba(255,106,0,.08);
  font-weight: 900;
  font-size: clamp(5rem, 14vw, 12rem);
  pointer-events: none;
}

.dice-secret-cta {
  display: none;
  margin-top: 1.1rem;
  padding: 1rem;
  border: 1px solid rgba(255,132,25,.22);
  border-radius: 20px;
  background: rgba(255,106,0,.075);
}

.dice-secret-cta.is-visible {
  display: grid;
  gap: .55rem;
  animation: diceCtaPop .35s ease both;
}

.dice-secret-cta strong {
  color: #fff1dc;
}

.dice-secret-cta span {
  color: rgba(255,232,205,.74);
}

.dice-secret-cta div {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin-top: .25rem;
}

@keyframes diceCtaPop {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.luly-not-found {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 2rem;
  background:
    radial-gradient(circle at 50% 20%, rgba(255,106,0,.22), transparent 34%),
    linear-gradient(145deg, #07080b, #111217 58%, #07080b);
  font-family: Poppins, Arial, sans-serif;
}

.not-found-card {
  width: min(680px, 100%);
  padding: clamp(1.5rem, 5vw, 3rem);
  text-align: center;
}

.not-found-card .mini-logo {
  margin: 0 auto 1rem;
}

.not-found-card h1 {
  color: #fff2df;
  font-weight: 900;
  letter-spacing: -.04em;
}

.not-found-card p {
  color: rgba(255,232,205,.72);
}

@media (max-width: 991.98px) {
  .live-order-summary {
    position: static;
  }
}

@media (max-width: 767.98px) {
  .trust-grid {
    grid-template-columns: 1fr;
  }

  .conversion-card {
    align-items: flex-start;
    flex-direction: column;
  }

  .summary-row {
    align-items: flex-start;
    flex-direction: column;
    gap: .25rem;
  }

  .summary-row strong {
    text-align: left;
  }
}

/* Order page overlap fix: the left copy card used height:100% and the live summary was sticky,
   so it could visually collide with the next section while scrolling. */
.order-form-section .row {
  align-items: flex-start !important;
}

.order-form-section .col-lg-4 {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.order-form-section .order-form-copy {
  height: auto !important;
  min-height: 0 !important;
}

.order-form-section .order-brief-form {
  height: auto !important;
  min-height: 100%;
}

.order-form-section .live-order-summary {
  position: relative !important;
  top: auto !important;
  margin-top: 0 !important;
  z-index: 1;
}

.luly-delivery-clarity {
  clear: both;
  padding-top: clamp(4.8rem, 8vw, 7rem) !important;
}

.luly-delivery-clarity .section-heading {
  position: relative;
  z-index: 2;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}

.luly-delivery-clarity .section-heading h2 {
  font-size: clamp(2.15rem, 4.4vw, 3.95rem);
}

@media (max-width: 991.98px) {
  .order-form-section .col-lg-4 {
    gap: 1rem;
  }
}

/* Reorganized page architecture update */
.luly-next-step-hub,
.luly-order-fit-guide,
.luly-contact-routing {
  position: relative;
  overflow: hidden;
}
.next-step-card,
.contact-route-card,
.order-fit-card {
  display: block;
  height: 100%;
  text-decoration: none;
  color: #f7efe8;
  border: 1px solid rgba(255, 122, 24, .24);
  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  border-radius: 28px;
  padding: 28px;
  box-shadow: 0 26px 70px rgba(0,0,0,.35);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.next-step-card:hover,
.contact-route-card:hover,
.order-fit-card:hover {
  transform: translateY(-6px);
  color: #fff;
  border-color: rgba(255, 122, 24, .62);
  box-shadow: 0 32px 90px rgba(255, 106, 0, .12), 0 30px 90px rgba(0,0,0,.48);
}
.next-step-card span,
.order-fit-card span {
  display: inline-flex;
  margin-bottom: 18px;
  color: #ff9a3c;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .75rem;
}
.next-step-card h3,
.contact-route-card h3,
.order-fit-card h3 {
  font-size: clamp(1.25rem, 1.8vw, 1.65rem);
  margin-bottom: 12px;
}
.next-step-card p,
.contact-route-card p,
.order-fit-card p {
  color: rgba(247,239,232,.72);
  margin-bottom: 20px;
}
.next-step-card strong,
.contact-route-card strong {
  color: #ff8a22;
  font-weight: 900;
}
.order-fit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.luly-order-fit-guide {
  padding-top: 18px;
  padding-bottom: 18px;
}
.order-fit-card {
  padding: 24px;
}
.contact-route-card i {
  width: 48px;
  height: 48px;
  display: inline-grid;
  place-items: center;
  margin-bottom: 18px;
  border-radius: 18px;
  background: rgba(255, 106, 0, .14);
  color: #ff9a3c;
}
.login-portal-mini {
  margin-top: 28px;
  max-width: 460px;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(255,122,24,.22);
  background: rgba(0,0,0,.28);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 24px 70px rgba(0,0,0,.34);
}
.portal-mini-top,
.portal-mini-steps {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}
.portal-mini-top span {
  color: #ff9a3c;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.portal-mini-main {
  display: grid;
  gap: 6px;
  margin: 16px 0;
}
.portal-mini-main em,
.portal-mini-steps span {
  color: rgba(247,239,232,.68);
  font-style: normal;
  font-size: .82rem;
}
.portal-mini-main i {
  display: block;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.09);
}
.portal-mini-main i span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6a00, #ffb15f);
}
@media (max-width: 991px) {
  .order-fit-grid {
    grid-template-columns: 1fr;
  }
  .luly-order-fit-guide {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
@media (max-width: 767px) {
  .next-step-card,
  .contact-route-card,
  .order-fit-card {
    padding: 22px;
    border-radius: 22px;
  }
}


/* === Thumbnail Forge visible v2 patch marker: 2026-06-04 === */


  .forge-jump-btn { border-color: rgba(255,106,0,.55) !important; color: #fff !important; }
  .hero-forge-strip { display:flex; align-items:center; gap:.75rem; margin-top:1rem; padding:.78rem 1rem; max-width: 520px; border:1px solid rgba(255,106,0,.45); border-radius:999px; background:linear-gradient(90deg,rgba(255,106,0,.18),rgba(255,255,255,.04)); box-shadow:0 14px 45px rgba(255,106,0,.18); color:#fff; }
  .hero-forge-strip strong { background:#ff6a00; color:#140801; padding:.18rem .55rem; border-radius:999px; font-size:.75rem; letter-spacing:.12em; }
  .hero-forge-badge { position:absolute; right:18px; bottom:18px; min-width:220px; padding:.85rem 1rem; border:1px solid rgba(255,106,0,.55); border-radius:18px; background:rgba(10,8,6,.78); box-shadow:0 18px 55px rgba(255,106,0,.25); backdrop-filter:blur(10px); overflow:hidden; z-index:3; }
  .hero-forge-badge span { display:block; color:#ffb36a; font-weight:900; font-size:.76rem; letter-spacing:.16em; text-transform:uppercase; }
  .hero-forge-badge strong { display:block; color:#fff; margin-top:.25rem; }
  .hero-forge-badge i { display:block; height:3px; width:80%; margin-top:.65rem; border-radius:999px; background:linear-gradient(90deg,#ff6a00,#ffe0b8); animation:heroForgePulse 1.7s ease-in-out infinite alternate; }
  @keyframes heroForgePulse { from { transform:scaleX(.45); opacity:.55; } to { transform:scaleX(1); opacity:1; } }
  .luly-forge-spotlight { position:relative; isolation:isolate; overflow:hidden; padding-top: clamp(3rem, 7vw, 6rem); padding-bottom: clamp(3rem, 7vw, 6rem); background: radial-gradient(circle at 70% 20%, rgba(255,106,0,.22), transparent 34%), radial-gradient(circle at 18% 70%, rgba(255,183,77,.12), transparent 32%), #080605; }
  .luly-forge-spotlight:before { content:""; position:absolute; inset:0; background:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px); background-size:44px 44px; mask-image:radial-gradient(circle at center, black, transparent 76%); z-index:-1; animation:forgeGridDrift 16s linear infinite; }
  @keyframes forgeGridDrift { to { background-position: 88px 88px; } }
  .forge-v2-shell { display:grid; grid-template-columns:minmax(0,.82fr) minmax(360px,1.18fr); gap:clamp(1.4rem,4vw,3rem); align-items:center; padding:clamp(1rem,2vw,1.35rem); border:1px solid rgba(255,255,255,.1); border-radius:34px; background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,106,0,.07)); box-shadow:0 30px 90px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.08); }
  .forge-v2-copy h2 { color:#fff; font-size:clamp(2rem,4vw,3.8rem); line-height:.98; margin:.6rem 0 1rem; }
  .forge-v2-brief-card { margin:1.35rem 0 1rem; padding:1rem; border:1px solid rgba(255,106,0,.35); border-radius:22px; background:rgba(0,0,0,.28); }
  .forge-v2-brief-card label { display:block; color:#ffb36a; font-weight:800; text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; margin-bottom:.55rem; }
  .forge-v2-brief-card textarea { width:100%; resize:vertical; min-height:105px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(0,0,0,.42); color:#fff; padding:.85rem .95rem; outline:none; }
  .forge-v2-brief-card textarea:focus { border-color:#ff6a00; box-shadow:0 0 0 4px rgba(255,106,0,.14); }
  .forge-v2-actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:.85rem; }
  .forge-v2-tags { display:flex; flex-wrap:wrap; gap:.55rem; }
  .forge-v2-tags span { border:1px solid rgba(255,255,255,.12); border-radius:999px; padding:.42rem .72rem; color:#f8d8bd; background:rgba(255,255,255,.05); font-weight:700; font-size:.82rem; }
  .forge-v2-reactor { position:relative; padding:1rem; border:1px solid rgba(255,255,255,.12); border-radius:28px; background:rgba(0,0,0,.35); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); overflow:hidden; }
  .forge-v2-reactor.is-forging { animation:forgeShake .42s ease; }
  @keyframes forgeShake { 0%,100%{transform:translateX(0)} 30%{transform:translateX(-3px)} 65%{transform:translateX(3px)} }
  .forge-v2-topbar { display:flex; justify-content:space-between; gap:1rem; align-items:center; color:#fff; margin-bottom:.85rem; }
  .forge-v2-topbar div { display:flex; align-items:center; gap:.55rem; }
  .forge-v2-topbar em { color:#ffb36a; font-style:normal; font-size:.9rem; }
  .forge-v2-dot { width:.72rem; height:.72rem; border-radius:50%; background:#ff6a00; box-shadow:0 0 18px #ff6a00; animation:forgeBlink 1s infinite alternate; }
  @keyframes forgeBlink { to { opacity:.35; transform:scale(.72); } }
  .forge-v2-stage { position:relative; min-height:360px; border-radius:24px; overflow:hidden; background:#050302; border:1px solid rgba(255,255,255,.1); transform:translateZ(0); }
  .forge-v2-grid { position:absolute; inset:-20%; background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size:36px 36px; transform:perspective(600px) rotateX(58deg) translateY(55px); opacity:.28; animation:forgeGridDrift 9s linear infinite; }
  .forge-v2-image { position:absolute; inset:8%; width:84%; height:84%; object-fit:cover; border-radius:22px; filter:contrast(1.15) saturate(1.2); transform:scale(1.01); }
  .forge-v2-mask { position:absolute; inset:8%; border-radius:22px; background:radial-gradient(circle at 72% 38%, transparent 0 20%, rgba(0,0,0,.58) 48%, rgba(0,0,0,.75) 100%), linear-gradient(120deg,rgba(255,106,0,.35),transparent 50%); mix-blend-mode:multiply; }
  .forge-v2-wire { position:absolute; inset:12%; border:1px solid rgba(255,255,255,.2); border-radius:18px; opacity:.75; }
  .forge-v2-wire i { position:absolute; border:1px solid rgba(255,106,0,.65); border-radius:12px; animation:forgeWire 2.7s ease-in-out infinite alternate; }
  .forge-v2-wire i:nth-child(1){left:6%;top:10%;width:32%;height:34%;}.forge-v2-wire i:nth-child(2){right:7%;top:16%;width:35%;height:50%;animation-delay:.2s}.forge-v2-wire i:nth-child(3){left:10%;bottom:10%;width:58%;height:24%;animation-delay:.4s}.forge-v2-wire i:nth-child(4){right:10%;bottom:8%;width:22%;height:24%;animation-delay:.6s}
  @keyframes forgeWire { to { transform:translateY(-6px); border-color:rgba(255,219,179,.9); } }
  .forge-v2-glow { position:absolute; width:42%; height:42%; right:7%; top:17%; border-radius:50%; background:radial-gradient(circle,#ff6a00,rgba(255,106,0,.28) 38%,transparent 70%); filter:blur(12px); opacity:.55; animation:forgeGlow 2.1s ease-in-out infinite alternate; }
  @keyframes forgeGlow { to { transform:scale(1.18); opacity:.88; } }
  .forge-v2-title { position:absolute; left:9%; bottom:18%; max-width:70%; color:#fff; font-size:clamp(2.4rem,6vw,5.2rem); font-weight:1000; line-height:.82; letter-spacing:-.06em; text-transform:uppercase; text-shadow:0 8px 0 #130700,0 0 24px rgba(255,106,0,.95); transform:rotate(-3deg); }
  .forge-v2-subtitle { position:absolute; left:10%; bottom:10%; color:#ffb36a; font-weight:900; letter-spacing:.14em; text-transform:uppercase; font-size:.76rem; }
  .forge-v2-scan { position:absolute; left:0; right:0; height:80px; top:-90px; background:linear-gradient(transparent,rgba(255,106,0,.25),transparent); animation:forgeScan 3s ease-in-out infinite; }
  @keyframes forgeScan { 40%,100% { transform:translateY(540px); } }
  .forge-v2-sparks i { position:absolute; width:5px; height:5px; border-radius:50%; background:#ffb36a; box-shadow:0 0 12px #ff6a00; animation:forgeSpark 2.4s linear infinite; }
  .forge-v2-sparks i:nth-child(1){left:22%;top:28%;animation-delay:0s}.forge-v2-sparks i:nth-child(2){left:68%;top:22%;animation-delay:.3s}.forge-v2-sparks i:nth-child(3){left:82%;top:64%;animation-delay:.6s}.forge-v2-sparks i:nth-child(4){left:35%;top:74%;animation-delay:.9s}.forge-v2-sparks i:nth-child(5){left:54%;top:45%;animation-delay:1.2s}
  @keyframes forgeSpark { to { transform:translateY(-70px) scale(0); opacity:0; } }
  .forge-v2-pipeline { display:grid; grid-template-columns:repeat(4,1fr); gap:.55rem; margin-top:.8rem; }
  .forge-v2-step { padding:.65rem; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(255,255,255,.05); color:#fff; }
  .forge-v2-step span { display:block; color:#ffb36a; font-size:.72rem; font-weight:900; }.forge-v2-step strong{font-size:.9rem}.forge-v2-step.active{border-color:#ff6a00;box-shadow:0 0 24px rgba(255,106,0,.2);background:rgba(255,106,0,.14)}
  .forge-v2-progress { height:8px; margin:.8rem 0; border-radius:999px; background:rgba(255,255,255,.08); overflow:hidden; }.forge-v2-progress span { display:block; height:100%; width:12%; border-radius:inherit; background:linear-gradient(90deg,#ff6a00,#ffe0b8); transition:width .35s ease; }
  .forge-v2-score-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:.55rem; }.forge-v2-score,.forge-v2-rank{padding:.72rem;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.055);color:#fff}.forge-v2-score span,.forge-v2-rank span{display:block;color:#cfc1b6;font-size:.75rem}.forge-v2-score strong,.forge-v2-rank strong{font-size:1.05rem}.forge-v2-score i{display:block;height:4px;margin-top:.45rem;border-radius:999px;background:linear-gradient(90deg,#ff6a00,#ffe0b8);width:var(--score,82%)}.forge-v2-rank strong{color:#ffb36a}
  @media (max-width: 991px){ .forge-v2-shell{grid-template-columns:1fr}.forge-v2-stage{min-height:330px}.hero-forge-badge{position:relative;right:auto;bottom:auto;margin:1rem auto 0;max-width:280px} }
  @media (max-width: 575px){ .hero-forge-strip{border-radius:20px;align-items:flex-start}.forge-v2-pipeline,.forge-v2-score-grid{grid-template-columns:repeat(2,1fr)}.forge-v2-title{font-size:2.55rem}.forge-v2-stage{min-height:270px}.forge-v2-shell{border-radius:24px} }




/* === Fast circular portfolio gallery === */
.luly-spin-gallery {
  overflow: hidden;
  padding-top: clamp(4rem, 7vw, 6rem);
  background:
    radial-gradient(circle at 50% 42%, rgba(255, 106, 0, 0.18), transparent 30rem),
    radial-gradient(circle at 15% 30%, rgba(255, 173, 82, 0.12), transparent 18rem),
    linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,106,0,0.045), rgba(0,0,0,0));
}

.spin-gallery-shell {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,154,56,0.24);
  border-radius: clamp(28px, 4vw, 46px);
  background:
    radial-gradient(circle at 50% 50%, rgba(255,106,0,0.13), transparent 28rem),
    linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.028));
  box-shadow: 0 34px 110px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.08);
  padding: clamp(1.15rem, 3vw, 2rem);
}

.spin-gallery-shell::before,
.spin-gallery-shell::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px;
  filter: blur(2px);
}

.spin-gallery-shell::before {
  width: 16rem;
  height: 16rem;
  left: -6rem;
  top: -7rem;
  background: rgba(255,106,0,0.18);
}

.spin-gallery-shell::after {
  width: 18rem;
  height: 18rem;
  right: -7rem;
  bottom: -8rem;
  background: rgba(255,173,82,0.13);
}

.spin-copy {
  position: relative;
  z-index: 4;
  width: min(100%, 820px);
  margin: 0 auto;
  text-align: center;
}

.spin-copy h2 {
  width: min(100%, 760px);
  margin: .85rem auto .75rem;
  color: var(--luly-text) !important;
  font-size: clamp(2.1rem, 5vw, 4.75rem);
  line-height: .95;
  font-weight: 950;
  letter-spacing: -.075em;
}

.spin-mini-status {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  margin-top: .35rem;
  padding: .45rem;
  border: 1px solid rgba(255,154,56,0.22);
  border-radius: 999px;
  background: rgba(0,0,0,0.24);
  color: rgba(255,247,238,0.72);
  font-size: .82rem;
  font-weight: 800;
}

.spin-mini-status span,
.spin-mini-status b {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: .36rem .7rem;
  border-radius: 999px;
}

.spin-mini-status span {
  color: #180a00;
  background: linear-gradient(135deg, var(--luly-accent), var(--luly-accent-2));
}

.spin-mini-status b {
  color: rgba(255,247,238,0.72);
  background: rgba(255,255,255,0.045);
}

.spin-gallery-orbit {
  position: relative;
  z-index: 3;
  height: clamp(430px, 54vw, 650px);
  margin: clamp(.8rem, 2vw, 1.4rem) auto 0;
  perspective: 1280px;
  transform-style: preserve-3d;
  cursor: grab;
  user-select: none;
  touch-action: pan-y;
}

.spin-gallery-orbit:active,
.spin-gallery-orbit.is-dragging {
  cursor: grabbing;
}

.spin-orbit-glow,
.spin-center-core {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.spin-orbit-glow {
  width: min(78vw, 720px);
  aspect-ratio: 1;
  border: 1px solid rgba(255,154,56,0.14);
  border-radius: 50%;
  background:
    radial-gradient(circle, rgba(255,106,0,0.18), transparent 28%),
    conic-gradient(from 40deg, transparent, rgba(255,106,0,0.35), transparent, rgba(255,173,82,0.22), transparent);
  opacity: .75;
  filter: blur(.2px);
  animation: spinHaloPulse 4.6s ease-in-out infinite;
}

.spin-center-core {
  width: clamp(82px, 11vw, 136px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(255,173,82,0.42);
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,0.18), transparent 32%),
    linear-gradient(135deg, rgba(255,106,0,0.98), rgba(255,173,82,0.92));
  box-shadow: 0 0 45px rgba(255,106,0,0.34), inset 0 2px 0 rgba(255,255,255,0.2);
  color: #170a00;
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 950;
  letter-spacing: -.08em;
  text-shadow: 0 1px 0 rgba(255,255,255,0.18);
}

.spin-ring {
  position: absolute;
  inset: 0;
  transform-style: preserve-3d;
  transform: rotateY(var(--spin-angle, 0deg));
  will-change: transform;
}

.spin-card {
  position: absolute;
  left: 50%;
  top: 50%;
  width: clamp(132px, 16vw, 234px);
  aspect-ratio: 16 / 10;
  display: block;
  color: inherit;
  text-decoration: none;
  transform: translate(-50%, -50%) rotateY(var(--item-angle, 0deg)) translateZ(var(--item-radius, 390px));
  transform-style: preserve-3d;
  backface-visibility: hidden;
  outline: none;
}

.spin-card-inner {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 1px solid rgba(255,154,56,0.24);
  border-radius: clamp(16px, 2vw, 24px);
  background: rgba(8,6,4,0.82);
  box-shadow: 0 24px 54px rgba(0,0,0,0.42), 0 0 24px rgba(255,106,0,0.09);
  transition: border-color .25s ease, box-shadow .25s ease, filter .25s ease;
}

.spin-card-inner img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(.92) brightness(.78);
  pointer-events: none;
  transition: transform .34s ease, filter .34s ease;
}

.spin-card-label {
  position: absolute;
  inset: auto .5rem .5rem .5rem;
  display: block;
  padding: .55rem .6rem;
  border: 1px solid rgba(255,154,56,0.16);
  border-radius: 14px;
  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(10px);
  transform: translateY(8px);
  opacity: .78;
  transition: opacity .25s ease, transform .25s ease, border-color .25s ease;
}

.spin-card-label strong,
.spin-card-label em {
  display: block;
}

.spin-card-label strong {
  color: #fff7ee;
  font-size: clamp(.72rem, 1vw, .9rem);
  font-weight: 950;
  letter-spacing: -.03em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.spin-card-label em {
  color: rgba(255,247,238,0.62);
  font-style: normal;
  font-size: clamp(.62rem, .9vw, .76rem);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.spin-card:hover .spin-card-inner,
.spin-card:focus-visible .spin-card-inner,
.spin-card.is-active .spin-card-inner {
  border-color: rgba(255,173,82,0.78);
  box-shadow: 0 30px 80px rgba(0,0,0,0.55), 0 0 42px rgba(255,106,0,0.3);
  filter: brightness(1.05);
}

.spin-card:hover img,
.spin-card:focus-visible img,
.spin-card.is-active img {
  transform: scale(1.055);
  filter: saturate(1.08) brightness(.96);
}

.spin-card:hover .spin-card-label,
.spin-card:focus-visible .spin-card-label,
.spin-card.is-active .spin-card-label {
  opacity: 1;
  transform: translateY(0);
  border-color: rgba(255,154,56,0.32);
}

.luly-spin-gallery.is-settled .spin-card-inner {
  animation: spinCardFloat 3.4s ease-in-out infinite;
  animation-delay: var(--float-delay, 0s);
}

.luly-spin-gallery.is-dragging .spin-card-inner,
.luly-spin-gallery.is-spinning .spin-card-inner {
  animation-play-state: paused;
}

.luly-spin-gallery.is-spinning .spin-card-inner {
  filter: saturate(1.12) brightness(.9);
}

.spin-caption {
  position: relative;
  z-index: 4;
  width: fit-content;
  max-width: min(100%, 620px);
  margin: -1.2rem auto 0;
  padding: .78rem 1rem;
  border: 1px solid rgba(255,154,56,0.24);
  border-radius: 999px;
  background: rgba(0,0,0,0.42);
  color: rgba(255,247,238,0.78);
  box-shadow: 0 18px 50px rgba(0,0,0,0.28);
  backdrop-filter: blur(12px);
  font-size: .92rem;
  font-weight: 900;
  text-align: center;
}

@keyframes spinHaloPulse {
  0%, 100% { transform: translate(-50%, -50%) scale(.98) rotate(0deg); opacity: .55; }
  50% { transform: translate(-50%, -50%) scale(1.04) rotate(16deg); opacity: .9; }
}

@keyframes spinCardFloat {
  0%, 100% { transform: translateY(0) rotateZ(0deg); }
  33% { transform: translateY(-6px) rotateZ(.35deg); }
  66% { transform: translateY(3px) rotateZ(-.28deg); }
}

@media (max-width: 767.98px) {
  .spin-gallery-shell { border-radius: 28px; }
  .spin-gallery-orbit { height: 440px; margin-top: .25rem; }
  .spin-caption { margin-top: -2.1rem; border-radius: 22px; }
  .spin-card { width: clamp(116px, 36vw, 146px); }
  .spin-card-label { inset: auto .38rem .38rem .38rem; padding: .44rem .48rem; }
  .spin-mini-status { border-radius: 26px; }
}

@media (prefers-reduced-motion: reduce) {
  .spin-orbit-glow,
  .luly-spin-gallery.is-settled .spin-card-inner {
    animation: none !important;
  }
}


/* === Clean image-only spin gallery requested update === */
.luly-spin-gallery.clean-image-spin {
  padding-top: clamp(6.5rem, 10vw, 9rem);
  padding-bottom: clamp(2.2rem, 5vw, 4.5rem);
  background:
    radial-gradient(circle at 50% 46%, rgba(255,106,0,0.18), transparent 34rem),
    radial-gradient(circle at 18% 30%, rgba(255,173,82,0.09), transparent 22rem),
    linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,106,0,0.035), rgba(0,0,0,0));
}

.clean-image-spin .spin-gallery-shell {
  min-height: clamp(500px, 60vw, 720px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-color: rgba(255,154,56,0.18);
  background:
    radial-gradient(circle at 50% 50%, rgba(255,106,0,0.11), transparent 32rem),
    linear-gradient(135deg, rgba(255,255,255,0.05), rgba(255,255,255,0.018));
}

.clean-image-spin .spin-gallery-orbit {
  width: 100%;
  height: clamp(500px, 60vw, 720px);
  margin: 0;
}

.clean-image-spin .spin-orbit-glow {
  width: min(88vw, 900px);
  opacity: .5;
}

.clean-image-spin .spin-center-core,
.clean-image-spin .spin-copy,
.clean-image-spin .spin-caption,
.clean-image-spin .spin-mini-status,
.clean-image-spin .spin-card-label {
  display: none !important;
}

.clean-image-spin .spin-card {
  width: clamp(166px, 19vw, 300px);
  aspect-ratio: 16 / 9;
}

.clean-image-spin .spin-card-inner {
  border-radius: clamp(16px, 1.9vw, 25px);
  border-color: rgba(255,154,56,0.26);
  background: rgba(8,6,4,0.9);
  box-shadow: 0 26px 62px rgba(0,0,0,0.48), 0 0 26px rgba(255,106,0,0.12);
}

.clean-image-spin .spin-card-inner img {
  filter: saturate(1.02) brightness(.96) contrast(1.02);
}

.clean-image-spin .spin-card:hover .spin-card-inner,
.clean-image-spin .spin-card:focus-visible .spin-card-inner,
.clean-image-spin .spin-card.is-active .spin-card-inner {
  border-color: rgba(255,173,82,0.82);
  box-shadow: 0 34px 90px rgba(0,0,0,0.58), 0 0 48px rgba(255,106,0,0.34);
}

.clean-image-spin .spin-card:hover img,
.clean-image-spin .spin-card:focus-visible img,
.clean-image-spin .spin-card.is-active img {
  filter: saturate(1.12) brightness(1.03) contrast(1.05);
}

@media (max-width: 767.98px) {
  .clean-image-spin .spin-gallery-shell { min-height: 470px; }
  .clean-image-spin .spin-gallery-orbit { height: 470px; }
  .clean-image-spin .spin-card { width: clamp(128px, 38vw, 170px); }
}

/* === Spin gallery drag/performance fix: image-only, 10 cards, no native browser dragging === */
.clean-image-spin .spin-gallery-orbit {
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  overscroll-behavior: contain;
  perspective: 1320px;
  perspective-origin: 50% 50%;
  contain: layout paint;
}

.clean-image-spin .spin-gallery-orbit.is-dragging {
  cursor: grabbing;
}

.clean-image-spin .spin-ring {
  transform: rotateY(var(--spin-angle, 0deg)) translateZ(0);
  will-change: transform;
}

.clean-image-spin .spin-card {
  width: clamp(154px, 17vw, 252px);
  aspect-ratio: 16 / 9;
  transform: translate3d(-50%, -50%, 0) rotateY(var(--item-angle, 0deg)) translateZ(var(--item-radius, 430px));
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
  will-change: transform;
}

.clean-image-spin .spin-card,
.clean-image-spin .spin-card *,
.clean-image-spin .spin-card img {
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
}

.clean-image-spin .spin-card-inner {
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: transform;
  box-shadow: 0 22px 48px rgba(0,0,0,0.44), 0 0 20px rgba(255,106,0,0.1);
}

.clean-image-spin .spin-card-inner img {
  pointer-events: none;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.clean-image-spin .spin-card:hover .spin-card-inner,
.clean-image-spin .spin-card:focus-visible .spin-card-inner,
.clean-image-spin .spin-card.is-active .spin-card-inner {
  box-shadow: 0 28px 68px rgba(0,0,0,0.52), 0 0 34px rgba(255,106,0,0.26);
}

@media (max-width: 767.98px) {
  .clean-image-spin .spin-card { width: clamp(118px, 36vw, 160px); }
}


/* === LULY auth/profile preview patch === */
.demo-login-box {
  display: grid;
  gap: .34rem;
  margin-top: 1rem;
  padding: .95rem 1rem;
  border: 1px solid rgba(255,154,56,.26);
  border-radius: 20px;
  background: rgba(255,106,0,.07);
  color: rgba(255,247,238,.76);
  font-size: .86rem;
}
.demo-login-box strong { color: #fff4e7; font-size: .92rem; }
.demo-login-box b { color: #ffb56b; }
.demo-login-fill {
  justify-self: start;
  margin-top: .35rem;
  border: 1px solid rgba(255,173,82,.4);
  border-radius: 999px;
  padding: .5rem .85rem;
  background: rgba(255,255,255,.055);
  color: #fff2df;
  font-weight: 850;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.demo-login-fill:hover { transform: translateY(-1px); background: rgba(255,106,0,.16); border-color: rgba(255,190,116,.7); }
.luly-profile-nav::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: .45rem;
  display: inline-block;
  border-radius: 999px;
  background: #ff8a22;
  box-shadow: 0 0 14px rgba(255,106,0,.9);
}
.profile-main { position: relative; overflow: hidden; }
.profile-main::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 16% 16%, rgba(255,106,0,.22), transparent 28rem),
    radial-gradient(circle at 86% 28%, rgba(255,173,82,.14), transparent 30rem),
    radial-gradient(circle at 50% 100%, rgba(255,106,0,.12), transparent 34rem);
  z-index: 0;
}
.profile-hero { padding-top: clamp(7.2rem, 9vw, 9rem); }
.profile-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(280px, .34fr) minmax(0, 1fr);
  gap: clamp(1.2rem, 2.8vw, 2rem);
  align-items: start;
}
.glass-panel,
.profile-user-card,
.profile-welcome,
.active-order-panel,
.profile-vibe-row article {
  border: 1px solid rgba(255,154,56,.24);
  background: linear-gradient(155deg, rgba(255,255,255,.082), rgba(255,255,255,.028));
  box-shadow: 0 28px 85px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-radius: 30px;
}
.profile-sidebar { position: sticky; top: 104px; }
.profile-user-card { padding: clamp(1.1rem, 2.4vw, 1.5rem); }
.profile-avatar {
  position: relative;
  width: 92px;
  height: 92px;
  margin-bottom: 1rem;
}
.profile-avatar img,
.profile-avatar span {
  position: absolute;
  inset: 0;
  width: 92px;
  height: 92px;
  border-radius: 28px;
  object-fit: cover;
  border: 1px solid rgba(255,173,82,.45);
  box-shadow: 0 0 44px rgba(255,106,0,.38);
}
.profile-avatar span {
  display: grid;
  place-items: center;
  color: rgba(255,247,238,.18);
  font-size: 4rem;
  font-weight: 900;
  transform: translate(12px, 8px) rotate(-8deg);
  z-index: -1;
}
.profile-user-card h1 {
  margin: .85rem 0 .2rem;
  color: #fff5e8;
  font-size: clamp(2rem, 3.4vw, 3rem);
  line-height: .95;
  font-weight: 900;
  letter-spacing: -.07em;
}
.profile-user-card p { color: rgba(255,247,238,.62); margin-bottom: 1rem; word-break: break-word; }
.profile-points-card {
  display: grid;
  gap: .18rem;
  padding: 1rem;
  border-radius: 22px;
  background: radial-gradient(circle at 85% 15%, rgba(255,173,82,.22), transparent 8rem), rgba(255,106,0,.08);
  border: 1px solid rgba(255,154,56,.28);
}
.profile-points-card span,
.profile-points-card em { color: rgba(255,247,238,.65); font-style: normal; }
.profile-points-card strong { color: #ffb56b; font-size: 1.55rem; line-height: 1; }
.profile-menu { display: grid; gap: .55rem; margin: 1rem 0; }
.profile-menu a {
  display: flex;
  align-items: center;
  gap: .7rem;
  padding: .8rem .85rem;
  border-radius: 18px;
  color: rgba(255,247,238,.78);
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
  font-weight: 850;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.profile-menu a:hover { transform: translateX(4px); background: rgba(255,106,0,.12); border-color: rgba(255,154,56,.34); color: #fff; }
.profile-menu span { color: #ff9d43; font-size: .8rem; }
.profile-logout {
  width: 100%;
  border: 1px solid rgba(255,154,56,.26);
  border-radius: 999px;
  padding: .78rem 1rem;
  background: rgba(255,255,255,.045);
  color: #fff2df;
  font-weight: 900;
}
.profile-logout:hover { background: rgba(255,106,0,.14); }
.profile-content { display: grid; gap: clamp(1rem, 2.2vw, 1.35rem); }
.profile-welcome,
.active-order-panel,
.profile-two-col > section,
.rewards-panel { padding: clamp(1.15rem, 2.4vw, 1.7rem); }
.profile-welcome h2,
.active-order-panel h2,
.profile-two-col h2,
.rewards-panel h2,
.footer-cta h2 {
  color: #fff4e6;
  font-weight: 900;
  letter-spacing: -.065em;
  line-height: .96;
}
.profile-welcome h2 { max-width: 840px; font-size: clamp(2.4rem, 5vw, 4.8rem); margin: .9rem 0 .8rem; }
.profile-welcome p,
.rewards-panel p { color: rgba(255,247,238,.7); max-width: 840px; }
.profile-quick-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
  margin-top: 1.2rem;
}
.profile-quick-stats div {
  padding: .95rem;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,154,56,.18);
}
.profile-quick-stats strong { display: block; color: #ffb56b; font-size: 1.55rem; line-height: 1; }
.profile-quick-stats span { color: rgba(255,247,238,.64); font-size: .86rem; }
.panel-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: start;
  margin-bottom: 1.1rem;
}
.panel-head h2 { font-size: clamp(1.85rem, 3.6vw, 3.2rem); margin: .7rem 0 0; }
.order-pill {
  flex: 0 0 auto;
  padding: .55rem .85rem;
  border-radius: 999px;
  border: 1px solid rgba(255,173,82,.4);
  color: #120805;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
  box-shadow: 0 14px 34px rgba(255,106,0,.24);
}
.active-order-grid {
  display: grid;
  grid-template-columns: minmax(240px, .82fr) minmax(0, 1fr);
  gap: 1.1rem;
  align-items: stretch;
}
.active-order-image {
  position: relative;
  display: block;
  min-height: 280px;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(255,154,56,.26);
  text-decoration: none;
  color: #fff;
}
.active-order-image img { width: 100%; height: 100%; min-height: 280px; object-fit: cover; transform: scale(1.02); transition: transform .35s ease; }
.active-order-image:hover img { transform: scale(1.06); }
.active-order-image span {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  padding: .5rem .75rem;
  border-radius: 999px;
  background: rgba(0,0,0,.62);
  border: 1px solid rgba(255,255,255,.16);
  color: #fff2df;
  font-weight: 850;
}
.active-order-details { display: flex; flex-direction: column; justify-content: center; gap: 1rem; }
.progress-copy { display: flex; justify-content: space-between; align-items: end; gap: 1rem; }
.progress-copy span { color: rgba(255,247,238,.68); font-weight: 800; }
.progress-copy strong { color: #ffb56b; font-size: clamp(2rem, 4vw, 3.6rem); line-height: .86; }
.profile-progress,
.reward-meter i {
  display: block;
  height: 12px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.08);
}
.profile-progress i,
.reward-meter i span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6a00, #ffc078);
  box-shadow: 0 0 24px rgba(255,106,0,.45);
}
.order-timeline { display: grid; gap: .65rem; }
.order-timeline div {
  position: relative;
  display: grid;
  grid-template-columns: 80px minmax(90px, .5fr) 1fr;
  gap: .7rem;
  align-items: center;
  padding: .75rem .85rem;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}
.order-timeline div::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(255,247,238,.22);
  position: absolute;
  left: -5px;
  top: 50%;
  transform: translateY(-50%);
}
.order-timeline div.done::before,
.order-timeline div.active::before { background: #ff8a22; box-shadow: 0 0 18px rgba(255,106,0,.7); }
.order-timeline div.active { border-color: rgba(255,154,56,.34); background: rgba(255,106,0,.10); }
.order-timeline span { color: #ffad52; font-size: .78rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.order-timeline strong { color: #fff3e2; }
.order-timeline em { color: rgba(255,247,238,.62); font-style: normal; font-size: .9rem; }
.profile-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, .92fr);
  gap: clamp(1rem, 2vw, 1.25rem);
}
.small-head h2 { font-size: clamp(1.55rem, 2.7vw, 2.35rem); }
.small-head a { color: #ffad52; text-decoration: none; font-weight: 900; }
.past-orders-list { display: grid; gap: .78rem; }
.past-orders-list article {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr) auto;
  gap: .85rem;
  align-items: center;
  padding: .72rem;
  border: 1px solid rgba(255,154,56,.16);
  border-radius: 20px;
  background: rgba(255,255,255,.035);
}
.past-orders-list img { width: 78px; height: 52px; border-radius: 14px; object-fit: cover; }
.past-orders-list strong { display: block; color: #fff3e2; }
.past-orders-list span { color: rgba(255,247,238,.58); font-size: .88rem; }
.past-orders-list em { color: #ffb56b; font-style: normal; font-weight: 900; font-size: .82rem; }
.reward-meter { display: grid; gap: .7rem; margin: 1rem 0; }
.reward-meter div { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.reward-meter strong { color: #fff3e2; }
.reward-meter span { color: rgba(255,247,238,.62); }
.reward-grid { display: grid; gap: .7rem; }
.reward-grid div {
  padding: .85rem;
  border-radius: 18px;
  border: 1px solid rgba(255,154,56,.18);
  background: rgba(255,106,0,.06);
}
.reward-grid strong { display: block; color: #fff3e2; }
.reward-grid span { color: rgba(255,247,238,.58); font-size: .88rem; }
.profile-vibe-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.profile-vibe-row article { padding: 1.1rem; }
.profile-vibe-row span { display: block; font-size: 1.65rem; margin-bottom: .4rem; }
.profile-vibe-row strong { color: #fff3e2; }
.profile-vibe-row p { color: rgba(255,247,238,.62); margin: .2rem 0 0; }
@media (max-width: 1199.98px) {
  .profile-shell { grid-template-columns: 1fr; }
  .profile-sidebar { position: static; }
  .profile-user-card { display: grid; grid-template-columns: auto 1fr; column-gap: 1rem; align-items: center; }
  .profile-points-card,
  .profile-menu,
  .profile-logout { grid-column: 1 / -1; }
}
@media (max-width: 991.98px) {
  .active-order-grid,
  .profile-two-col { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
  .profile-quick-stats,
  .profile-vibe-row { grid-template-columns: 1fr; }
  .panel-head { flex-direction: column; }
  .order-timeline div { grid-template-columns: 1fr; gap: .2rem; }
  .past-orders-list article { grid-template-columns: 72px 1fr; }
  .past-orders-list em { grid-column: 2; }
}

/* === Clean auth/profile refinement patch === */
.password-logo-field {
  position: relative;
}
.password-logo-field .form-control {
  padding-right: 3.45rem;
}
.password-logo-toggle {
  position: absolute;
  top: 50%;
  right: .7rem;
  width: 38px;
  height: 38px;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,154,56,.18);
  border-radius: 14px;
  background: rgba(0,0,0,.34);
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
.password-logo-toggle img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  opacity: .42;
  filter: grayscale(1) brightness(.62);
  transition: opacity .2s ease, filter .2s ease, transform .2s ease;
}
.password-logo-toggle:hover {
  border-color: rgba(255,154,56,.38);
  background: rgba(255,106,0,.08);
}
.password-logo-toggle.is-visible {
  border-color: rgba(255,174,92,.62);
  background: radial-gradient(circle at 50% 42%, rgba(255,130,20,.3), rgba(0,0,0,.28));
  box-shadow: 0 0 22px rgba(255,106,0,.32), inset 0 1px 0 rgba(255,255,255,.08);
}
.password-logo-toggle.is-visible img {
  opacity: 1;
  filter: none;
  transform: scale(1.06);
}
.luly-login-page .demo-login-box {
  display: none !important;
}

.profile-simple-page .profile-hero {
  padding-top: clamp(7rem, 8vw, 8.4rem);
  padding-bottom: clamp(2.5rem, 5vw, 4rem);
}
.profile-simple-page .profile-main::before {
  background:
    radial-gradient(circle at 13% 18%, rgba(255,106,0,.16), transparent 28rem),
    radial-gradient(circle at 82% 22%, rgba(255,173,82,.09), transparent 28rem),
    radial-gradient(circle at 52% 100%, rgba(255,106,0,.08), transparent 30rem);
}
.simple-profile-shell {
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 1.45rem);
}
.simple-profile-content {
  gap: clamp(.9rem, 1.8vw, 1.15rem);
}
.simple-profile-card,
.profile-simple-page .simple-welcome,
.profile-simple-page .simple-active-order,
.profile-simple-page .simple-profile-two-col > section,
.profile-simple-page .points-panel {
  border-radius: 26px;
  background: linear-gradient(155deg, rgba(255,255,255,.07), rgba(255,255,255,.026));
  box-shadow: 0 22px 58px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055);
}
.profile-card-top {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .95rem;
  align-items: center;
  margin-bottom: 1rem;
}
.profile-simple-page .profile-avatar {
  width: 74px;
  height: 74px;
  margin-bottom: 0;
}
.profile-simple-page .profile-avatar img,
.profile-simple-page .profile-avatar span {
  width: 74px;
  height: 74px;
  border-radius: 22px;
}
.profile-simple-page .profile-avatar span {
  font-size: 3.2rem;
  transform: translate(8px, 6px) rotate(-8deg);
}
.profile-simple-page .profile-user-card h1 {
  margin: .45rem 0 .15rem;
  font-size: clamp(1.55rem, 2.4vw, 2.25rem);
  letter-spacing: -.055em;
}
.profile-simple-page .profile-user-card p {
  margin: 0;
  font-size: .9rem;
}
.compact-points-card {
  padding: .9rem;
  border-radius: 20px;
}
.compact-points-card strong {
  font-size: 1.35rem;
}
.simple-profile-menu {
  gap: .42rem;
  margin: .85rem 0;
}
.simple-profile-menu a {
  padding: .72rem .82rem;
  border-radius: 16px;
}
.profile-simple-page .profile-logout {
  padding: .72rem 1rem;
}
.profile-simple-page .profile-welcome,
.profile-simple-page .active-order-panel,
.profile-simple-page .profile-two-col > section,
.profile-simple-page .points-panel {
  padding: clamp(1rem, 2vw, 1.35rem);
}
.profile-simple-page .profile-welcome h2 {
  font-size: clamp(2.1rem, 4.4vw, 3.8rem);
  margin: .65rem 0 .55rem;
}
.profile-simple-page .profile-welcome p,
.profile-simple-page .points-panel p {
  margin-bottom: 0;
  color: rgba(255,247,238,.66);
}
.simple-stats {
  gap: .65rem;
  margin-top: .95rem;
}
.simple-stats div {
  padding: .82rem .9rem;
  border-radius: 17px;
}
.simple-stats strong {
  font-size: 1.35rem;
}
.simple-panel-head {
  margin-bottom: .8rem;
}
.profile-simple-page .panel-head h2 {
  font-size: clamp(1.55rem, 2.8vw, 2.55rem);
  margin-top: .45rem;
}
.profile-simple-page .order-pill {
  padding: .48rem .78rem;
  font-size: .86rem;
}
.active-stage-card {
  display: grid;
  gap: .95rem;
  padding: clamp(1rem, 2vw, 1.25rem);
  border-radius: 22px;
  border: 1px solid rgba(255,154,56,.16);
  background: radial-gradient(circle at 90% 0%, rgba(255,106,0,.16), transparent 16rem), rgba(255,255,255,.03);
}
.stage-summary {
  display: grid;
  gap: .22rem;
}
.stage-summary span {
  color: #ffad52;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.stage-summary strong {
  color: #fff4e6;
  font-size: clamp(1.55rem, 3vw, 2.4rem);
  line-height: 1;
  letter-spacing: -.045em;
}
.stage-summary p {
  color: rgba(255,247,238,.65);
  margin: .15rem 0 0;
  max-width: 760px;
}
.profile-simple-page .progress-copy strong {
  font-size: clamp(1.8rem, 3vw, 2.7rem);
}
.clean-timeline {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
}
.clean-timeline div {
  grid-template-columns: 1fr;
  align-items: start;
  gap: .22rem;
  padding: .8rem;
}
.clean-timeline div::before {
  left: .8rem;
  top: -.5px;
  transform: translateY(-50%);
}
.clean-timeline span {
  color: #ffad52;
}
.clean-timeline em {
  font-size: .84rem;
}
.simple-profile-two-col {
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: clamp(.9rem, 1.8vw, 1.15rem);
}
.clean-orders-list {
  gap: .62rem;
}
.clean-orders-list article {
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: .78rem .85rem;
  border-radius: 17px;
}
.clean-orders-list .order-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ff8a22;
  box-shadow: 0 0 16px rgba(255,106,0,.65);
}
.clean-orders-list small {
  display: block;
  color: rgba(255,247,238,.58);
  font-size: .85rem;
  margin-top: .12rem;
}
.points-panel h2 {
  color: #ffb56b;
  font-size: clamp(2rem, 4vw, 3.1rem);
  margin: .6rem 0 .45rem;
}
.clean-reward-meter {
  margin: 1rem 0 1.05rem;
}
.clean-reward-meter div {
  display: grid;
  gap: .12rem;
}
.points-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,173,82,.38);
  border-radius: 999px;
  padding: .72rem 1rem;
  background: rgba(255,106,0,.1);
  color: #fff1df;
  text-decoration: none;
  font-weight: 900;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.points-action:hover {
  transform: translateY(-1px);
  background: rgba(255,106,0,.18);
  border-color: rgba(255,190,116,.62);
  color: #fff;
}
.profile-simple-page .profile-vibe-row,
.profile-simple-page .reward-grid,
.profile-simple-page .active-order-image {
  display: none !important;
}
.profile-simple-footer {
  padding-top: 2rem !important;
}
@media (max-width: 1199.98px) {
  .simple-profile-shell { grid-template-columns: 1fr; }
  .profile-card-top { grid-template-columns: auto 1fr; }
}
@media (max-width: 991.98px) {
  .clean-timeline,
  .simple-profile-two-col { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
  .simple-stats { grid-template-columns: 1fr; }
  .clean-orders-list article { grid-template-columns: auto 1fr; }
  .clean-orders-list em { grid-column: 2; }
  .profile-card-top { grid-template-columns: 1fr; }
}

/* === Profile order flow + XP tiers refinement === */
.profile-simple-page .tier-mini-card strong {
  display: block;
  color: #ffb56b;
  font-size: clamp(1.3rem, 2vw, 1.7rem);
  line-height: 1;
  margin: .2rem 0 .28rem;
}
.profile-simple-page .tier-mini-card em b {
  color: #fff2df;
  font-weight: 900;
}
.profile-simple-page .simple-welcome h2 span {
  color: #ffb56b;
}
.profile-simple-page .professional-order-flow {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.profile-simple-page .professional-order-flow div {
  min-height: 118px;
}
.profile-simple-page .professional-order-flow strong {
  display: block;
  line-height: 1.15;
}
.profile-simple-page .tier-panel {
  display: flex;
  flex-direction: column;
}
.profile-simple-page .tier-status-card {
  display: grid;
  gap: .2rem;
  margin-top: 1rem;
  padding: .8rem .9rem;
  border: 1px solid rgba(255,154,56,.18);
  border-radius: 18px;
  background: rgba(255,106,0,.075);
}
.profile-simple-page .tier-status-card strong {
  color: #fff2df;
  font-size: .98rem;
}
.profile-simple-page .tier-status-card span {
  color: rgba(255,247,238,.62);
  font-size: .88rem;
}
.profile-simple-page .tier-status-card b {
  color: #ffb56b;
}
.profile-simple-page .tier-ladder {
  display: grid;
  gap: .52rem;
  margin: .9rem 0 .65rem;
}
.profile-simple-page .tier-ladder article {
  display: grid;
  grid-template-columns: minmax(82px, 1fr) auto;
  gap: .12rem .65rem;
  align-items: center;
  padding: .66rem .75rem;
  border: 1px solid rgba(255,154,56,.12);
  border-radius: 15px;
  background: rgba(255,255,255,.028);
}
.profile-simple-page .tier-ladder article.current {
  border-color: rgba(255,154,56,.42);
  background: rgba(255,106,0,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.profile-simple-page .tier-ladder strong {
  color: #fff2df;
  line-height: 1.05;
}
.profile-simple-page .tier-ladder span {
  color: #ffb56b;
  font-size: .82rem;
  font-weight: 900;
  text-align: right;
}
.profile-simple-page .tier-ladder em {
  grid-column: 1 / -1;
  color: rgba(255,247,238,.58);
  font-size: .82rem;
  font-style: normal;
}
.profile-simple-page .tier-note {
  display: block;
  color: rgba(255,247,238,.52);
  font-size: .78rem;
  line-height: 1.45;
  margin-bottom: 1rem;
}
.profile-simple-page .tier-panel .points-action {
  margin-top: auto;
}
@media (max-width: 991.98px) {
  .profile-simple-page .professional-order-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .profile-simple-page .professional-order-flow { grid-template-columns: 1fr; }
  .profile-simple-page .professional-order-flow div { min-height: auto; }
  .profile-simple-page .tier-ladder article { grid-template-columns: 1fr; }
  .profile-simple-page .tier-ladder span { text-align: left; }
}


/* === Creator bonus thumbnail credits on profile === */
.profile-simple-page .simple-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.profile-simple-page .profile-bonus-mini {
  margin-top: .72rem;
  padding: .95rem;
  border: 1px solid rgba(255,181,107,.32);
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% 12%, rgba(255,181,107,.2), transparent 7rem),
    linear-gradient(135deg, rgba(255,106,0,.13), rgba(255,255,255,.032));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}
.profile-simple-page .profile-bonus-mini span {
  display: block;
  color: rgba(255,247,238,.62);
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.profile-simple-page .profile-bonus-mini strong {
  display: block;
  color: #fff4e6;
  font-size: clamp(1.2rem, 1.8vw, 1.45rem);
  line-height: 1.08;
  margin: .28rem 0 .22rem;
}
.profile-simple-page .profile-bonus-mini strong b {
  color: #ffb56b;
}
.profile-simple-page .profile-bonus-mini em {
  color: rgba(255,247,238,.62);
  font-size: .82rem;
  font-style: normal;
}
.profile-simple-page .creator-bonus-panel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: clamp(.8rem, 2vw, 1.1rem);
  align-items: center;
  padding: clamp(1rem, 2vw, 1.35rem);
  border-color: rgba(255,181,107,.34);
  background:
    radial-gradient(circle at 12% 10%, rgba(255,181,107,.2), transparent 15rem),
    radial-gradient(circle at 86% 0%, rgba(255,106,0,.18), transparent 18rem),
    linear-gradient(155deg, rgba(255,255,255,.075), rgba(255,255,255,.03));
  box-shadow: 0 22px 58px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06);
}
.profile-simple-page .creator-bonus-mark {
  width: clamp(64px, 7vw, 86px);
  height: clamp(64px, 7vw, 86px);
  display: grid;
  place-items: center;
  border-radius: 24px;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
  box-shadow: 0 18px 38px rgba(255,106,0,.24);
}
.profile-simple-page .creator-bonus-mark span {
  color: #120805;
  font-size: clamp(2.2rem, 4.5vw, 3.4rem);
  font-weight: 950;
  line-height: 1;
  letter-spacing: -.08em;
}
.profile-simple-page .creator-bonus-copy h2 {
  color: #fff4e6;
  font-size: clamp(1.45rem, 3vw, 2.45rem);
  line-height: .98;
  letter-spacing: -.05em;
  margin: .35rem 0 .35rem;
}
.profile-simple-page .creator-bonus-copy h2 span {
  color: #ffb56b;
}
.profile-simple-page .creator-bonus-copy p {
  color: rgba(255,247,238,.66);
  margin: 0;
  max-width: 680px;
}
.profile-simple-page .creator-bonus-side {
  display: grid;
  grid-template-columns: repeat(2, minmax(94px, 1fr));
  gap: .55rem;
  min-width: 250px;
}
.profile-simple-page .creator-bonus-side div {
  padding: .78rem .85rem;
  border: 1px solid rgba(255,154,56,.16);
  border-radius: 16px;
  background: rgba(0,0,0,.18);
}
.profile-simple-page .creator-bonus-side span {
  display: block;
  color: rgba(255,247,238,.58);
  font-size: .76rem;
  font-weight: 800;
}
.profile-simple-page .creator-bonus-side strong {
  display: block;
  color: #ffb56b;
  font-size: 1.25rem;
  line-height: 1.05;
  margin-top: .2rem;
}
.profile-simple-page .creator-bonus-action {
  white-space: nowrap;
}
@media (max-width: 1199.98px) {
  .profile-simple-page .creator-bonus-panel {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .profile-simple-page .creator-bonus-side,
  .profile-simple-page .creator-bonus-action {
    grid-column: 2;
  }
}
@media (max-width: 991.98px) {
  .profile-simple-page .simple-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .profile-simple-page .creator-bonus-panel {
    grid-template-columns: 1fr;
  }
  .profile-simple-page .creator-bonus-side,
  .profile-simple-page .creator-bonus-action {
    grid-column: auto;
  }
}
@media (max-width: 575.98px) {
  .profile-simple-page .simple-stats,
  .profile-simple-page .creator-bonus-side {
    grid-template-columns: 1fr;
  }
  .profile-simple-page .creator-bonus-mark {
    width: 68px;
    height: 68px;
    border-radius: 20px;
  }
}

/* === LULY internal admin / worker panels === */
.luly-ops-page {
  font-family: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: #fff7ee;
  background:
    radial-gradient(circle at 16% 0%, rgba(255,106,0,.12), transparent 24rem),
    radial-gradient(circle at 86% 12%, rgba(255,181,107,.08), transparent 26rem),
    #080605;
}
.luly-ops-page .ops-main { position: relative; overflow: hidden; }
.luly-ops-page .ops-hero { padding-top: clamp(7.3rem, 9vw, 9.4rem); }
.luly-ops-page .glass-panel {
  border: 1px solid rgba(255,154,56,.15);
  background: linear-gradient(160deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  border-radius: 28px;
  box-shadow: 0 24px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055);
}
.luly-ops-page .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: #ff9d43;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.luly-ops-page .ops-hero-grid,
.luly-ops-page .worker-top-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .8fr);
  gap: clamp(1rem, 2.2vw, 1.5rem);
  align-items: stretch;
}
.luly-ops-page .ops-title-block,
.luly-ops-page .worker-profile-card,
.luly-ops-page .worker-focus-card,
.luly-ops-page .ops-admin-profile {
  padding: clamp(1.2rem, 3vw, 2rem);
}
.luly-ops-page .ops-title-block h1,
.luly-ops-page .worker-profile-card h1 {
  color: #fff4e6;
  font-size: clamp(2.75rem, 7vw, 5.8rem);
  line-height: .88;
  letter-spacing: -.08em;
  margin: .65rem 0 .8rem;
}
.luly-ops-page .worker-focus-card h2 {
  color: #fff4e6;
  font-size: clamp(2.1rem, 4vw, 3.7rem);
  line-height: .94;
  letter-spacing: -.07em;
  margin: .55rem 0 .75rem;
}
.luly-ops-page .ops-title-block p,
.luly-ops-page .worker-focus-card p,
.luly-ops-page .worker-profile-card p {
  color: rgba(255,247,238,.66);
  max-width: 720px;
  margin: 0;
}
.luly-ops-page .ops-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.2rem;
}
.luly-ops-page .ops-primary-action,
.luly-ops-page .ops-secondary-action,
.luly-ops-page .ops-small-action,
.luly-ops-page .worker-project-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-weight: 900;
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.luly-ops-page .ops-primary-action {
  min-height: 46px;
  padding: .75rem 1.12rem;
  color: #150905;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
  box-shadow: 0 18px 36px rgba(255,106,0,.22);
}
.luly-ops-page .ops-secondary-action {
  min-height: 46px;
  padding: .75rem 1.12rem;
  color: #fff4e6;
  border: 1px solid rgba(255,154,56,.28);
  background: rgba(255,255,255,.045);
}
.luly-ops-page .ops-primary-action:hover,
.luly-ops-page .ops-secondary-action:hover,
.luly-ops-page .ops-small-action:hover,
.luly-ops-page .worker-project-actions button:hover {
  transform: translateY(-2px);
}
.luly-ops-page .ops-admin-profile { display: grid; align-content: space-between; gap: 1rem; }
.luly-ops-page .ops-admin-top,
.luly-ops-page .worker-profile-head {
  display: flex;
  align-items: center;
  gap: .9rem;
}
.luly-ops-page .ops-admin-avatar,
.luly-ops-page .worker-avatar {
  width: 70px;
  height: 70px;
  border-radius: 22px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  background: rgba(255,106,0,.14);
  border: 1px solid rgba(255,181,107,.24);
}
.luly-ops-page .ops-admin-avatar img { width: 48px; height: 48px; object-fit: contain; border-radius: 14px; }
.luly-ops-page .worker-avatar span { color: #ffb56b; font-size: 2rem; font-weight: 950; }
.luly-ops-page .ops-admin-top span,
.luly-ops-page .worker-tier-card span { display: block; color: rgba(255,247,238,.58); font-size: .8rem; font-weight: 800; }
.luly-ops-page .ops-admin-top strong,
.luly-ops-page .worker-tier-card strong { display: block; color: #fff4e6; font-size: 1.28rem; line-height: 1.1; }
.luly-ops-page .ops-admin-top em,
.luly-ops-page .worker-tier-card em { display: block; color: #ffb56b; font-size: .86rem; font-style: normal; margin-top: .2rem; }
.luly-ops-page .ops-security-list { display: grid; gap: .55rem; }
.luly-ops-page .ops-security-list span {
  display: flex;
  align-items: center;
  gap: .55rem;
  color: rgba(255,247,238,.72);
  padding: .68rem .75rem;
  border: 1px solid rgba(255,154,56,.12);
  border-radius: 16px;
  background: rgba(0,0,0,.16);
}
.luly-ops-page .ops-security-list i { color: #ff9d43; }
.luly-ops-page .ops-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .9rem;
  margin-top: .9rem;
}
.luly-ops-page .ops-stat-grid article { padding: 1rem; }
.luly-ops-page .ops-stat-grid span { display: block; color: rgba(255,247,238,.62); font-size: .82rem; font-weight: 900; }
.luly-ops-page .ops-stat-grid strong { display: block; color: #ffb56b; font-size: clamp(2rem, 4vw, 3.1rem); line-height: .92; margin: .45rem 0 .3rem; letter-spacing: -.06em; }
.luly-ops-page .ops-stat-grid em { color: rgba(255,247,238,.55); font-size: .82rem; font-style: normal; }
.luly-ops-page .ops-layout,
.luly-ops-page .worker-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.48fr) minmax(310px, .72fr);
  gap: clamp(1rem, 2.2vw, 1.35rem);
  align-items: start;
}
.luly-ops-page .ops-panel { padding: clamp(1rem, 2vw, 1.35rem); }
.luly-ops-page .ops-side-stack { display: grid; gap: clamp(1rem, 2vw, 1.35rem); }
.luly-ops-page .ops-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.luly-ops-page .ops-panel-head h2 {
  color: #fff4e6;
  font-size: clamp(1.45rem, 2.8vw, 2.45rem);
  line-height: .98;
  letter-spacing: -.055em;
  margin: .35rem 0 0;
}
.luly-ops-page .ops-panel-head.compact h2 { font-size: clamp(1.3rem, 2.2vw, 1.75rem); }
.luly-ops-page .ops-panel-head a { color: #ffb56b; font-weight: 900; text-decoration: none; }
.luly-ops-page .ops-filter-group {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: flex-end;
}
.luly-ops-page .ops-filter-group button {
  color: rgba(255,247,238,.68);
  border: 1px solid rgba(255,154,56,.14);
  background: rgba(255,255,255,.035);
  border-radius: 999px;
  padding: .5rem .78rem;
  font-size: .82rem;
  font-weight: 900;
}
.luly-ops-page .ops-filter-group button.active,
.luly-ops-page .ops-filter-group button:hover {
  color: #150905;
  border-color: transparent;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
}
.luly-ops-page .ops-table-head,
.luly-ops-page .ops-project-card {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(150px, .65fr) minmax(160px, .7fr) minmax(100px, .45fr) auto;
  gap: .75rem;
  align-items: center;
}
.luly-ops-page .ops-table-head {
  color: rgba(255,247,238,.42);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 0 .82rem .55rem;
}
.luly-ops-page .ops-project-list,
.luly-ops-page .worker-project-list { display: grid; gap: .72rem; }
.luly-ops-page .ops-project-card {
  border: 1px solid rgba(255,154,56,.13);
  border-radius: 21px;
  padding: .9rem;
  background: rgba(0,0,0,.18);
}
.luly-ops-page .ops-project-main strong,
.luly-ops-page .worker-project-head strong { display: block; color: #fff4e6; font-size: 1rem; line-height: 1.15; }
.luly-ops-page .ops-project-main span,
.luly-ops-page .worker-project-head span { display: block; color: rgba(255,247,238,.58); font-size: .82rem; margin-top: .16rem; }
.luly-ops-page .ops-tags { display: flex; flex-wrap: wrap; gap: .38rem; margin-top: .55rem; }
.luly-ops-page .ops-tags b {
  color: #ffb56b;
  border: 1px solid rgba(255,181,107,.18);
  background: rgba(255,106,0,.08);
  border-radius: 999px;
  padding: .27rem .46rem;
  font-size: .68rem;
  line-height: 1;
}
.luly-ops-page .ops-tags b.priority-high { color: #fff4e6; background: rgba(255,106,0,.22); }
.luly-ops-page .ops-worker-slot span,
.luly-ops-page .ops-status-slot span,
.luly-ops-page .ops-deadline span {
  display: block;
  color: rgba(255,247,238,.48);
  font-size: .72rem;
  font-weight: 900;
  margin-bottom: .28rem;
}
.luly-ops-page .ops-worker-slot strong,
.luly-ops-page .ops-status-slot strong,
.luly-ops-page .ops-deadline strong { display: block; color: #fff4e6; font-size: .92rem; margin-bottom: .38rem; }
.luly-ops-page .ops-worker-select,
.luly-ops-page .ops-status-select {
  width: 100%;
  color: #fff4e6;
  border: 1px solid rgba(255,154,56,.16);
  background: rgba(13,9,7,.98);
  border-radius: 12px;
  padding: .46rem .52rem;
  font-size: .8rem;
  outline: none;
}
.luly-ops-page .ops-small-action {
  color: #170b06;
  border: 0;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
  padding: .66rem .86rem;
  min-width: 82px;
}
.luly-ops-page .ops-worker-list,
.luly-ops-page .ops-activity-list,
.luly-ops-page .ops-tier-list,
.luly-ops-page .worker-xp-rules,
.luly-ops-page .worker-week-list { display: grid; gap: .62rem; }
.luly-ops-page .ops-worker-list article {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: .5rem;
  padding: .8rem;
  border: 1px solid rgba(255,154,56,.12);
  border-radius: 17px;
  background: rgba(0,0,0,.16);
}
.luly-ops-page .ops-worker-list strong { color: #fff4e6; }
.luly-ops-page .ops-worker-list span { display: block; color: rgba(255,247,238,.56); font-size: .8rem; }
.luly-ops-page .ops-worker-list em { color: #ffb56b; font-style: normal; font-weight: 900; }
.luly-ops-page .ops-worker-list i {
  grid-column: 1 / -1;
  display: block;
  height: 5px;
  border-radius: 999px;
  background: linear-gradient(90deg, #ff6a00, #ffb56b);
}
.luly-ops-page .ops-activity-list p {
  display: flex;
  gap: .55rem;
  align-items: flex-start;
  color: rgba(255,247,238,.63);
  margin: 0;
  padding: .7rem;
  border: 1px solid rgba(255,154,56,.1);
  border-radius: 15px;
  background: rgba(0,0,0,.14);
}
.luly-ops-page .ops-activity-list p span {
  width: 8px;
  height: 8px;
  margin-top: .45rem;
  border-radius: 50%;
  background: #ff9d43;
  flex: 0 0 auto;
}
.luly-ops-page .ops-activity-list strong { color: #fff4e6; }
.luly-ops-page .ops-tier-list div,
.luly-ops-page .worker-xp-rules p,
.luly-ops-page .worker-week-list span {
  display: flex;
  justify-content: space-between;
  gap: .7rem;
  align-items: center;
  padding: .72rem .8rem;
  border: 1px solid rgba(255,154,56,.12);
  border-radius: 16px;
  background: rgba(0,0,0,.15);
  margin: 0;
}
.luly-ops-page .ops-tier-list div.current { border-color: rgba(255,181,107,.38); background: rgba(255,106,0,.12); }
.luly-ops-page .ops-tier-list strong,
.luly-ops-page .worker-xp-rules strong { color: #fff4e6; }
.luly-ops-page .ops-tier-list span,
.luly-ops-page .worker-xp-rules span,
.luly-ops-page .worker-week-list span { color: rgba(255,247,238,.62); font-size: .84rem; }
.luly-ops-page .ops-panel small { display: block; color: rgba(255,247,238,.5); margin-top: .75rem; }
.luly-ops-page .worker-tier-card {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(255,181,107,.2);
  border-radius: 22px;
  background: rgba(0,0,0,.16);
}
.luly-ops-page .worker-meter,
.luly-ops-page .worker-score-card i {
  display: block;
  overflow: hidden;
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  margin: .85rem 0 .45rem;
}
.luly-ops-page .worker-meter i,
.luly-ops-page .worker-score-card i b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6a00, #ffb56b);
}
.luly-ops-page .worker-tier-card small { color: rgba(255,247,238,.55); }
.luly-ops-page .worker-project-card {
  padding: 1rem;
  border: 1px solid rgba(255,154,56,.13);
  border-radius: 22px;
  background: rgba(0,0,0,.18);
}
.luly-ops-page .worker-project-head {
  display: flex;
  justify-content: space-between;
  gap: .8rem;
  align-items: flex-start;
}
.luly-ops-page .worker-project-head em {
  white-space: nowrap;
  border-radius: 999px;
  padding: .44rem .62rem;
  font-size: .75rem;
  font-weight: 900;
  font-style: normal;
  color: #170b06;
  background: #ffb56b;
}
.luly-ops-page .worker-project-head em.status-todo { background: rgba(255,247,238,.84); }
.luly-ops-page .worker-project-head em.status-progress { background: #ff9d43; }
.luly-ops-page .worker-project-head em.status-review { background: #ffb56b; }
.luly-ops-page .worker-project-card p { color: rgba(255,247,238,.63); margin: .8rem 0; }
.luly-ops-page .worker-project-meta { display: flex; flex-wrap: wrap; gap: .45rem; }
.luly-ops-page .worker-project-meta span {
  color: rgba(255,247,238,.62);
  border: 1px solid rgba(255,154,56,.12);
  border-radius: 999px;
  padding: .38rem .58rem;
  font-size: .78rem;
  background: rgba(255,255,255,.03);
}
.luly-ops-page .worker-project-actions { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .85rem; }
.luly-ops-page .worker-project-actions button {
  color: #fff4e6;
  border: 1px solid rgba(255,154,56,.2);
  background: rgba(255,255,255,.045);
  padding: .62rem .82rem;
}
.luly-ops-page .worker-project-actions button:last-child {
  color: #170b06;
  border-color: transparent;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
}
.luly-ops-page .worker-score-card {
  padding: .9rem;
  border: 1px solid rgba(255,181,107,.18);
  border-radius: 20px;
  background: rgba(255,106,0,.08);
  margin-bottom: .75rem;
}
.luly-ops-page .worker-score-card strong { display: block; color: #fff4e6; font-size: 1.2rem; }
.luly-ops-page .worker-score-card span { color: #ffb56b; font-weight: 900; }
.luly-ops-page .worker-score-card em { color: rgba(255,247,238,.56); font-style: normal; font-size: .82rem; }
.luly-ops-page .ops-project-card.is-hidden,
.luly-ops-page .worker-project-card.is-hidden { display: none; }
.luly-ops-page .ops-project-card.is-updated,
.luly-ops-page .worker-project-card.is-updated { border-color: rgba(255,181,107,.5); box-shadow: 0 18px 44px rgba(255,106,0,.08); }
@media (max-width: 1199.98px) {
  .luly-ops-page .ops-hero-grid,
  .luly-ops-page .worker-top-grid,
  .luly-ops-page .ops-layout,
  .luly-ops-page .worker-layout { grid-template-columns: 1fr; }
  .luly-ops-page .ops-side-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .luly-ops-page .ops-side-stack .ops-panel:last-child { grid-column: 1 / -1; }
}
@media (max-width: 991.98px) {
  .luly-ops-page .ops-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .luly-ops-page .ops-table-head { display: none; }
  .luly-ops-page .ops-project-card { grid-template-columns: 1fr 1fr; }
  .luly-ops-page .ops-project-main { grid-column: 1 / -1; }
  .luly-ops-page .ops-small-action { justify-self: start; }
}
@media (max-width: 767.98px) {
  .luly-ops-page .ops-panel-head,
  .luly-ops-page .worker-project-head { flex-direction: column; align-items: stretch; }
  .luly-ops-page .ops-filter-group { justify-content: flex-start; }
  .luly-ops-page .ops-side-stack { grid-template-columns: 1fr; }
  .luly-ops-page .ops-side-stack .ops-panel:last-child { grid-column: auto; }
  .luly-ops-page .ops-project-card { grid-template-columns: 1fr; }
  .luly-ops-page .worker-project-head em { align-self: flex-start; }
}
@media (max-width: 575.98px) {
  .luly-ops-page .ops-stat-grid { grid-template-columns: 1fr; }
  .luly-ops-page .ops-title-block h1,
  .luly-ops-page .worker-profile-card h1 { font-size: 3rem; }
  .luly-ops-page .ops-admin-top,
  .luly-ops-page .worker-profile-head { align-items: flex-start; }
}
.luly-ops-page .worker-project-head em.status-done { background: #fff4e6; color: #170b06; }

/* === LULY role demo accounts === */
.demo-account-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
  margin: 1rem 0 .55rem;
}
.demo-account-card {
  border: 1px solid rgba(255, 181, 107, .18);
  background: linear-gradient(145deg, rgba(255, 106, 0, .12), rgba(255, 255, 255, .035));
  border-radius: 18px;
  padding: .82rem .78rem;
  color: #fff7ee;
  text-align: left;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.demo-account-card:hover,
.demo-account-card:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(255, 181, 107, .45);
  background: linear-gradient(145deg, rgba(255, 106, 0, .18), rgba(255, 255, 255, .055));
  outline: none;
}
.demo-account-card strong,
.demo-account-card span,
.demo-account-card em { display: block; }
.demo-account-card strong { font-size: .92rem; font-weight: 900; color: #fff4e6; }
.demo-account-card span { margin-top: .2rem; font-size: .72rem; color: rgba(255, 247, 238, .66); word-break: break-word; }
.demo-account-card em { margin-top: .28rem; font-style: normal; font-size: .7rem; color: #ffb56b; font-weight: 800; }
.demo-account-note { margin: 0 0 1rem; font-size: .78rem; color: rgba(255, 247, 238, .58); }
.ops-admin-top small {
  display: block;
  color: rgba(255, 247, 238, .48);
  font-size: .78rem;
  margin-top: .1rem;
}
.luly-ops-page .navbar-actions button.btn,
.luly-profile-page .navbar-actions button.btn {
  border-radius: 999px;
  font-weight: 800;
}
@media (max-width: 720px) {
  .demo-account-list { grid-template-columns: 1fr; }
}

/* === Cleaner role selector + top-right account button === */
.login-role-picker {
  margin: .85rem 0 .35rem;
  padding: .55rem .6rem;
  border: 1px solid rgba(255, 181, 107, .16);
  border-radius: 999px;
  background: rgba(255, 255, 255, .035);
  display: flex;
  align-items: center;
  gap: .55rem;
}
.login-role-label {
  flex: 0 0 auto;
  color: rgba(255, 247, 238, .58);
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding-left: .25rem;
}
.role-checker-row {
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .35rem;
}
.role-checker {
  min-height: 34px;
  border: 1px solid rgba(255, 181, 107, .16);
  border-radius: 999px;
  background: rgba(255, 255, 255, .035);
  color: rgba(255, 247, 238, .7);
  font-size: .78rem;
  font-weight: 850;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .38rem;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
.role-checker span {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: 1px solid rgba(255, 181, 107, .42);
  background: rgba(255, 255, 255, .04);
}
.role-checker:hover,
.role-checker:focus-visible {
  outline: none;
  transform: translateY(-1px);
  border-color: rgba(255, 181, 107, .38);
  color: #fff4e6;
}
.role-checker.active {
  border-color: rgba(255, 138, 34, .72);
  background: linear-gradient(135deg, rgba(255, 106, 0, .32), rgba(255, 181, 107, .16));
  color: #fff4e6;
}
.role-checker.active span {
  border-color: rgba(255, 193, 128, .9);
  background: #ff8a22;
  box-shadow: 0 0 12px rgba(255, 106, 0, .9);
}
.demo-account-note {
  margin: 0 0 1rem;
  font-size: .74rem;
  color: rgba(255, 247, 238, .5);
}
.account-nav-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 96px;
}
.navbar-actions .account-nav-button.active,
.navbar-actions .account-nav-button:hover {
  border-color: rgba(255, 138, 34, .72) !important;
  background: rgba(255, 106, 0, .12) !important;
  color: #ffb56b !important;
}
@media (max-width: 575.98px) {
  .login-role-picker {
    border-radius: 22px;
    align-items: stretch;
    flex-direction: column;
    padding: .7rem;
  }
  .login-role-label { padding-left: 0; }
  .role-checker-row { grid-template-columns: 1fr; }
  .role-checker { justify-content: flex-start; padding-inline: .8rem; }
  .account-nav-button { min-width: auto; }
}

/* === Role/account nav fit + strict role selector polish === */
.luly-profile-page .luly-navbar .navbar-nav,
.luly-ops-page .luly-navbar .navbar-nav {
  align-items: center;
}
.luly-profile-page .luly-navbar .navbar-actions,
.luly-ops-page .luly-navbar .navbar-actions {
  margin-left: .75rem;
}
.luly-profile-page .navbar-actions button.btn,
.luly-ops-page .navbar-actions button.btn {
  white-space: nowrap;
  padding-inline: .9rem;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .luly-profile-page .luly-navbar .container,
  .luly-ops-page .luly-navbar .container {
    max-width: 100%;
    padding-inline: .9rem;
  }
  .luly-profile-page .navbar-collapse,
  .luly-ops-page .navbar-collapse {
    padding-top: 0 !important;
  }
  .luly-profile-page .navbar-actions,
  .luly-ops-page .navbar-actions {
    flex-direction: row !important;
    align-items: center !important;
    margin-top: 0 !important;
    gap: .45rem !important;
  }
  .luly-profile-page .navbar-actions .btn,
  .luly-ops-page .navbar-actions .btn {
    width: auto !important;
    min-width: auto;
    padding: .42rem .72rem;
    font-size: .82rem;
  }
  .luly-profile-page .navbar-brand,
  .luly-ops-page .navbar-brand {
    gap: .45rem !important;
    margin-right: .75rem;
  }
  .luly-profile-page .navbar-brand span,
  .luly-ops-page .navbar-brand span {
    font-size: .94rem;
    letter-spacing: -.055em;
  }
  .luly-profile-page .navbar .brand-logo,
  .luly-ops-page .navbar .brand-logo {
    width: 38px !important;
    height: 38px !important;
    border-radius: 12px !important;
  }
  .luly-profile-page .nav-link,
  .luly-ops-page .nav-link {
    padding-left: .38rem !important;
    padding-right: .38rem !important;
    font-size: .86rem;
  }
}

@media (min-width: 768px) and (max-width: 899.98px) {
  .luly-profile-page .navbar-brand span,
  .luly-ops-page .navbar-brand span {
    font-size: .84rem;
  }
  .luly-profile-page .nav-link,
  .luly-ops-page .nav-link {
    padding-left: .28rem !important;
    padding-right: .28rem !important;
    font-size: .8rem;
  }
  .luly-profile-page .navbar-actions .btn,
  .luly-ops-page .navbar-actions .btn {
    padding: .38rem .58rem;
    font-size: .78rem;
  }
}

/* === Cleanup after role/profile update === */
/* Center the small orange pills/badges on the client profile. */
.profile-simple-page .eyebrow,
.profile-simple-page .order-pill,
.profile-simple-page .points-action,
.profile-simple-page .creator-bonus-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.1;
}

.profile-simple-page .order-pill {
  min-height: 44px;
  padding-inline: 1rem;
}

.profile-simple-page .creator-bonus-side div,
.profile-simple-page .profile-quick-stats div {
  text-align: center;
}

.profile-simple-page .creator-bonus-side span,
.profile-simple-page .creator-bonus-side strong,
.profile-simple-page .profile-quick-stats span,
.profile-simple-page .profile-quick-stats strong {
  text-align: center;
}

/* Add more breathing room before the delivery clarity section on the order page. */
.order-page .luly-delivery-clarity {
  margin-top: clamp(2.5rem, 6vw, 5rem);
  padding-top: clamp(4rem, 8vw, 7rem);
}

/* === Frontend cleanup / backend handoff layer === */
.form-status,
.order-form-status,
.contact-form-status {
  display: block;
  min-height: 1.35rem;
  margin: .9rem 0 0;
  color: rgba(255, 255, 255, .78);
  font-size: .92rem;
}

.contact-form-status {
  text-align: center;
}

.luly-api-ready-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-left: .75rem;
  padding: .42rem .7rem;
  border: 1px solid rgba(255, 106, 0, .35);
  border-radius: 999px;
  background: rgba(255, 106, 0, .1);
  color: #ffad66;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
}

.ops-action-group,
.worker-project-actions {
  align-items: center;
}

.ops-action-group {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.luly-detail-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 38px;
  padding: .65rem .9rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(255, 255, 255, .06);
  color: #fff;
  font-size: .82rem;
  font-weight: 800;
  line-height: 1;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.luly-detail-action:hover,
.luly-detail-action:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(255, 106, 0, .45);
  background: rgba(255, 106, 0, .12);
  outline: none;
}

.profile-detail-action {
  margin-left: auto;
}

.luly-order-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(4, 4, 8, .74);
  backdrop-filter: blur(16px);
}

.luly-order-modal.is-open {
  display: flex;
}

.luly-order-modal-card {
  position: relative;
  width: min(760px, 100%);
  max-height: min(86vh, 760px);
  overflow: auto;
  padding: clamp(1.25rem, 3vw, 2.35rem);
  border-radius: 32px;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .45);
}

.luly-order-modal-card h2 {
  margin: .55rem 0 1.15rem;
  color: #fff;
  font-size: clamp(1.55rem, 4vw, 2.35rem);
  line-height: 1.05;
}

.luly-order-modal-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 50%;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-size: 1.7rem;
  line-height: 1;
}

.luly-order-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
  margin-bottom: 1rem;
}

.luly-order-detail-grid p,
.luly-order-brief-box {
  margin: 0;
  padding: .9rem;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 18px;
  background: rgba(255, 255, 255, .045);
}

.luly-order-detail-grid span,
.luly-order-brief-box span {
  display: block;
  margin-bottom: .3rem;
  color: rgba(255, 255, 255, .52);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.luly-order-detail-grid strong,
.luly-order-brief-box p {
  color: #fff;
}

.luly-order-brief-box p {
  margin: 0;
  color: rgba(255, 255, 255, .78);
}

.luly-order-flow-mini {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto 1fr auto;
  align-items: center;
  gap: .5rem;
  margin: 1rem 0;
}

.luly-order-flow-mini span {
  color: rgba(255, 255, 255, .68);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.luly-order-flow-mini i {
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, rgba(255, 106, 0, .85), rgba(255, 255, 255, .16));
}

.luly-backend-note,
.luly-preview-note {
  margin: .9rem 0 0;
  color: rgba(255, 255, 255, .58);
  font-size: .88rem;
}

.clean-orders-list article[data-preview-id] {
  cursor: pointer;
  border-color: rgba(255, 106, 0, .22);
  background: rgba(255, 106, 0, .06);
}

.clean-orders-list article[data-preview-id]:hover {
  transform: translateY(-1px);
}

.backend-handoff-page .backend-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.backend-handoff-page .backend-card {
  padding: 1.15rem;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 22px;
  background: rgba(255, 255, 255, .05);
}

.backend-handoff-page code {
  color: #ffad66;
}

@media (max-width: 900px) {
  .luly-order-detail-grid,
  .backend-handoff-page .backend-card-grid {
    grid-template-columns: 1fr;
  }

  .profile-detail-action,
  .luly-api-ready-badge {
    margin-left: 0;
    margin-top: .6rem;
  }

  .luly-order-flow-mini {
    grid-template-columns: 1fr;
  }

  .luly-order-flow-mini i {
    display: none;
  }
}


/* MVP production polish: reset, order review, invoices */
.password-reset-panel,.order-confirm-box{margin:18px 0;padding:18px;border:1px solid rgba(255,122,24,.28);border-radius:22px;background:rgba(255,122,24,.06)}
.password-reset-panel h3,.order-confirm-box h3{margin:0 0 12px;color:#fff;font-weight:800}
.order-confirm-box .summary-row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.order-confirm-box .summary-row:last-child{border-bottom:0}
.order-drive-link-field small{display:block;margin-top:7px;color:rgba(255,255,255,.58)}
.order-confirmation-card,.invoice-card{max-width:860px;margin:80px auto;padding:28px;border:1px solid rgba(255,122,24,.26);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));box-shadow:0 30px 90px rgba(0,0,0,.28)}
.confirmation-grid,.invoice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}
.confirmation-grid div,.invoice-grid div{padding:14px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09)}
.confirmation-grid span,.invoice-grid span{display:block;color:rgba(255,255,255,.6);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.confirmation-grid strong,.invoice-grid strong{display:block;margin-top:4px;color:#fff}
@media(max-width:720px){.confirmation-grid,.invoice-grid{grid-template-columns:1fr}.order-confirmation-card,.invoice-card{margin:34px 14px;padding:20px}}

/* === Deploy polish: auth support, profile panels, account autofill === */
.auth-help-links{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.auth-help-links a{color:#ffad63;font-weight:800;text-decoration:none}
.auth-help-links a:hover{color:#fff0dc;text-decoration:underline}
.auth-support-panel{display:none;margin:20px 0;padding:20px;border:1px solid rgba(255,122,24,.32);border-radius:24px;background:linear-gradient(180deg,rgba(255,122,24,.09),rgba(18,11,7,.86));box-shadow:0 20px 50px rgba(0,0,0,.28)}
.auth-support-panel:target,.auth-support-panel.is-open{display:block}
.auth-support-panel .portal-form{padding:0;border:0;background:transparent;box-shadow:none}
.auth-support-panel h3{margin:0 0 14px;color:#fff5e8;font-weight:900}
.auth-support-panel .form-status{min-height:1.4rem;color:#ffbf80;font-weight:700}

body.luly-profile-page .luly-notification-panel,
body.luly-profile-page .account-settings-panel{margin:28px 0;padding:clamp(18px,2.3vw,30px);border:1px solid rgba(255,122,24,.26);border-radius:30px;background:radial-gradient(circle at top left,rgba(255,122,24,.14),transparent 34%),linear-gradient(180deg,rgba(22,15,10,.94),rgba(7,6,5,.96));box-shadow:0 28px 70px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05)}
body.luly-profile-page .luly-notification-panel .ops-panel-head,
body.luly-profile-page .account-settings-panel .ops-panel-head{align-items:center;border-bottom:1px solid rgba(255,122,24,.14);padding-bottom:16px;margin-bottom:18px}
body.luly-profile-page .luly-notification-panel h2,
body.luly-profile-page .account-settings-panel h2{font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.02;color:#fff7ee;margin:0}
body.luly-profile-page .luly-notification-actions{gap:10px}
body.luly-profile-page .luly-notification-read-all,
body.luly-profile-page .account-settings-panel .admin-mvp-button{background:linear-gradient(135deg,#ff8a1d,#ff4a00);color:#130a04;border:0;box-shadow:0 14px 32px rgba(255,90,0,.22)}
body.luly-profile-page .luly-notification-clear-read,
body.luly-profile-page .luly-notification-item .ops-small-action{border:1px solid rgba(255,122,24,.35);background:rgba(255,122,24,.08);color:#ffd2a3;border-radius:999px;padding:9px 13px;font-weight:800;text-decoration:none}
body.luly-profile-page .luly-notification-list{margin-top:8px}
body.luly-profile-page .luly-notification-item{background:rgba(255,255,255,.035);border-color:rgba(255,122,24,.16);border-radius:20px}
body.luly-profile-page .account-settings-grid{display:grid;grid-template-columns:1fr;gap:18px}
body.luly-profile-page .account-settings-panel .admin-mvp-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}
body.luly-profile-page .account-settings-panel .admin-mvp-form label{color:rgba(255,236,218,.72);font-size:.75rem;letter-spacing:.1em;font-weight:900}
body.luly-profile-page .account-settings-panel .admin-mvp-form input{min-height:44px;background:rgba(4,4,7,.78);border:1px solid rgba(255,122,24,.22);border-radius:14px;color:#fff6ec}
body.luly-profile-page .account-settings-panel .admin-mvp-form input:focus{border-color:#ff8a1d;box-shadow:0 0 0 3px rgba(255,122,24,.13)}
body.luly-profile-page .account-settings-panel .admin-mvp-actions.full{grid-column:1/-1;margin-top:8px}
.order-account-prefill-card{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 18px;background:linear-gradient(135deg,rgba(255,122,24,.13),rgba(255,122,24,.04));border-color:rgba(255,122,24,.34)}
.order-account-prefill-card strong{color:#fff3e5}
.order-account-prefill-card small{display:block;margin-top:4px;color:rgba(255,236,218,.68)}
.order-account-prefill-card .admin-mvp-button{white-space:nowrap;color:#160900}
@media (max-width: 760px){body.luly-profile-page .account-settings-panel .admin-mvp-form{grid-template-columns:1fr}.order-account-prefill-card{align-items:stretch;flex-direction:column}.auth-help-links{justify-content:flex-start}}
.luly-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important}

/* === Login auth support modals: keep forgot/verify forms out of page flow === */
body.luly-login-page.auth-support-modal-open {
  overflow: hidden;
}

body.luly-login-page.auth-support-modal-open::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(0, 0, 0, .72);
  backdrop-filter: blur(8px);
}

body.luly-login-page .auth-support-panel {
  position: fixed;
  top: 50%;
  left: 50%;
  width: min(92vw, 540px);
  max-height: min(86vh, 760px);
  overflow-y: auto;
  margin: 0;
  padding: clamp(20px, 3vw, 28px);
  border: 1px solid rgba(255, 122, 24, .36);
  border-radius: 30px;
  background:
    radial-gradient(circle at top left, rgba(255, 122, 24, .22), transparent 34%),
    linear-gradient(180deg, rgba(29, 17, 10, .98), rgba(9, 7, 6, .98));
  box-shadow: 0 34px 110px rgba(0, 0, 0, .62), inset 0 1px 0 rgba(255, 255, 255, .06);
  transform: translate(-50%, -48%) scale(.96);
  opacity: 0;
  pointer-events: none;
  z-index: 9991;
}

body.luly-login-page .auth-support-panel.is-open,
body.luly-login-page .auth-support-panel:target {
  display: block;
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, -50%) scale(1);
}

body.luly-login-page .auth-support-panel h3 {
  padding-right: 46px;
  font-size: clamp(1.55rem, 4.8vw, 2.15rem);
  line-height: 1.05;
}

body.luly-login-page .auth-support-panel .portal-form + .portal-form {
  margin-top: 1rem !important;
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 122, 24, .16);
}

.auth-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255, 122, 24, .34);
  border-radius: 999px;
  background: rgba(255, 122, 24, .1);
  color: #ffe5c7;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.auth-modal-close:hover,
.auth-modal-close:focus-visible {
  background: linear-gradient(135deg, #ff8a1d, #ff4a00);
  color: #120804;
  outline: none;
}

@media (max-width: 520px) {
  body.luly-login-page .auth-support-panel {
    width: calc(100vw - 24px);
    max-height: calc(100vh - 32px);
    padding: 18px;
    border-radius: 24px;
  }

  .auth-modal-close {
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
  }
}


/* === Client profile professional account + notification layout === */
body.luly-profile-page .client-profile-management-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:clamp(18px,2.4vw,28px);
  align-items:start;
  margin:clamp(22px,3vw,34px) 0;
}
body.luly-profile-page .client-account-zone,
body.luly-profile-page .client-notifications-zone{min-width:0;}
body.luly-profile-page .client-account-settings-panel,
body.luly-profile-page .client-notification-panel{
  height:100%;
  margin:0 !important;
  padding:clamp(18px,2.2vw,28px) !important;
  border-radius:30px !important;
  border:1px solid rgba(255,128,34,.24) !important;
  background:
    radial-gradient(circle at 16% 0%,rgba(255,122,24,.15),transparent 32%),
    linear-gradient(180deg,rgba(22,15,10,.96),rgba(8,7,6,.97)) !important;
  box-shadow:0 26px 65px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body.luly-profile-page .client-panel-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  padding-bottom:18px !important;
  margin-bottom:18px !important;
  border-bottom:1px solid rgba(255,122,24,.14) !important;
}
body.luly-profile-page .client-panel-head h2{font-size:clamp(1.45rem,2.5vw,2.05rem) !important;}
body.luly-profile-page .client-panel-head p{
  max-width:56ch;
  margin:.45rem 0 0;
  color:rgba(255,239,225,.64);
  line-height:1.55;
  font-size:.92rem;
}
body.luly-profile-page .client-panel-badge{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:9px 13px;
  border:1px solid rgba(255,122,24,.22);
  background:rgba(255,122,24,.08);
  color:#ffd2a3;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.luly-profile-page .client-panel-badge.is-verified{
  border-color:rgba(89,255,171,.3);
  background:rgba(89,255,171,.08);
  color:#a9ffd0;
}
body.luly-profile-page .client-panel-badge.is-unverified{
  border-color:rgba(255,184,86,.35);
  background:rgba(255,184,86,.08);
  color:#ffd394;
}
body.luly-profile-page .client-account-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}
body.luly-profile-page .client-account-summary article{
  min-width:0;
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));
}
body.luly-profile-page .client-account-summary span,
body.luly-profile-page .client-account-summary small{
  display:block;
  color:rgba(255,239,225,.56);
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
}
body.luly-profile-page .client-account-summary strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  margin-top:6px;
  color:#fff7ee;
  font-size:.94rem;
}
body.luly-profile-page .client-account-summary small{
  margin-top:5px;
  text-transform:none;
  letter-spacing:0;
  font-weight:600;
}
body.luly-profile-page .client-account-grid{
  gap:16px !important;
}
body.luly-profile-page .client-account-form,
body.luly-profile-page .client-password-form{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  padding:16px;
  border-radius:24px;
  border:1px solid rgba(255,122,24,.13);
  background:rgba(255,255,255,.025);
}
body.luly-profile-page .client-form-title{
  grid-column:1/-1;
  margin-bottom:2px;
}
body.luly-profile-page .client-form-title h3{
  margin:.25rem 0 .25rem;
  color:#fff7ee;
  font-size:1.05rem;
  font-weight:900;
}
body.luly-profile-page .client-form-title p{
  margin:0;
  color:rgba(255,239,225,.58);
  font-size:.86rem;
  line-height:1.5;
}
body.luly-profile-page .client-account-form label,
body.luly-profile-page .client-password-form label{
  color:rgba(255,239,225,.72) !important;
}
body.luly-profile-page .client-account-form input,
body.luly-profile-page .client-password-form input{
  min-height:46px !important;
  border-radius:16px !important;
  background:rgba(4,4,7,.76) !important;
}
body.luly-profile-page .client-notification-panel{display:flex;flex-direction:column;}
body.luly-profile-page .client-notification-metrics{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
body.luly-profile-page .client-notification-metrics span{
  display:grid;
  place-items:center;
  min-width:78px;
  padding:10px 12px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.035);
  color:rgba(255,239,225,.62);
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
body.luly-profile-page .client-notification-metrics strong{
  color:#fff7ee;
  font-size:1.15rem;
  line-height:1;
}
body.luly-profile-page .luly-notification-toolbar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
body.luly-profile-page .client-notification-panel .luly-notification-list{
  display:grid;
  gap:12px;
  max-height:560px;
  overflow:auto;
  padding-right:4px;
}
body.luly-profile-page .client-notification-panel .luly-notification-list::-webkit-scrollbar{width:8px;}
body.luly-profile-page .client-notification-panel .luly-notification-list::-webkit-scrollbar-thumb{background:rgba(255,122,24,.28);border-radius:999px;}
body.luly-profile-page .client-notification-panel .luly-notification-item{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:15px !important;
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018)) !important;
}
body.luly-profile-page .client-notification-panel .luly-notification-item.is-unread{
  border-color:rgba(255,122,24,.36) !important;
  background:linear-gradient(135deg,rgba(255,122,24,.14),rgba(255,255,255,.025)) !important;
}
body.luly-profile-page .notification-content{
  display:flex;
  align-items:flex-start;
  min-width:0;
  gap:12px;
}
body.luly-profile-page .notification-dot{
  width:10px;
  height:10px;
  flex:0 0 10px;
  margin-top:7px;
  border-radius:999px;
  background:rgba(255,255,255,.22);
  box-shadow:0 0 0 5px rgba(255,255,255,.03);
}
body.luly-profile-page .is-unread .notification-dot{
  background:#ff8a1d;
  box-shadow:0 0 0 6px rgba(255,122,24,.12);
}
body.luly-profile-page .client-notification-panel .luly-notification-item strong{
  color:#fff7ee;
  font-size:.96rem;
}
body.luly-profile-page .client-notification-panel .luly-notification-item span{
  color:rgba(255,239,225,.7);
  line-height:1.48;
}
body.luly-profile-page .client-notification-panel .luly-notification-item small{
  color:rgba(255,239,225,.45);
}
body.luly-profile-page .client-notification-panel .luly-notification-actions{
  justify-content:flex-end;
  align-items:center;
}
body.luly-profile-page .client-notification-empty{
  padding:22px;
  border-radius:22px;
  border:1px dashed rgba(255,122,24,.24);
  background:rgba(255,122,24,.045);
}
body.luly-profile-page .client-notification-empty strong,
body.luly-profile-page .client-notification-empty span{display:block;}
body.luly-profile-page .client-notification-empty strong{color:#fff7ee;}
body.luly-profile-page .client-notification-empty span{margin-top:6px;color:rgba(255,239,225,.62);}
@media (max-width: 1120px){
  body.luly-profile-page .client-profile-management-grid{grid-template-columns:1fr;}
  body.luly-profile-page .client-notification-panel .luly-notification-list{max-height:none;overflow:visible;padding-right:0;}
}
@media (max-width: 760px){
  body.luly-profile-page .client-panel-head{display:grid;}
  body.luly-profile-page .client-account-summary{grid-template-columns:1fr;}
  body.luly-profile-page .client-account-form,
  body.luly-profile-page .client-password-form{grid-template-columns:1fr !important;}
  body.luly-profile-page .client-notification-panel .luly-notification-item{grid-template-columns:1fr;}
  body.luly-profile-page .client-notification-panel .luly-notification-actions{justify-content:flex-start;}
}

/* === Client profile sub-page tabs === */
body.luly-profile-page .profile-tabbed-content{
  min-width:0;
}
body.luly-profile-page .profile-tab-panel{
  display:none;
  min-width:0;
}
body.luly-profile-page .profile-tab-panel.is-active{
  display:grid;
  gap:clamp(18px,2.2vw,28px);
  animation:lulyProfileTabFade .22s ease both;
}
body.luly-profile-page .profile-tab-panel[hidden]{
  display:none !important;
}
@keyframes lulyProfileTabFade{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}
body.luly-profile-page .profile-tab-panel > .glass-panel,
body.luly-profile-page .profile-tab-panel .client-account-settings-panel,
body.luly-profile-page .profile-tab-panel .client-notification-panel{
  margin:0 !important;
}
body.luly-profile-page .profile-tab-panel .simple-past-orders,
body.luly-profile-page .profile-tab-panel .tier-panel{
  width:100%;
}
body.luly-profile-page .simple-profile-menu a{
  position:relative;
  overflow:hidden;
}
body.luly-profile-page .simple-profile-menu a.is-active,
body.luly-profile-page .simple-profile-menu a[aria-current="page"]{
  color:#fff8ef;
  border-color:rgba(255,138,29,.55);
  background:
    radial-gradient(circle at 0% 50%,rgba(255,138,29,.28),transparent 46%),
    linear-gradient(135deg,rgba(255,122,24,.18),rgba(255,255,255,.045));
  box-shadow:0 16px 38px rgba(255,90,0,.16), inset 0 1px 0 rgba(255,255,255,.08);
  transform:translateX(4px);
}
body.luly-profile-page .simple-profile-menu a.is-active::after,
body.luly-profile-page .simple-profile-menu a[aria-current="page"]::after{
  content:"";
  position:absolute;
  right:14px;
  top:50%;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#ff8a1d;
  box-shadow:0 0 0 6px rgba(255,122,24,.13);
  transform:translateY(-50%);
}
body.luly-profile-page .simple-profile-menu a.is-active span,
body.luly-profile-page .simple-profile-menu a[aria-current="page"] span{
  color:#ffb56b;
}
body.luly-profile-page .client-account-zone,
body.luly-profile-page .client-notifications-zone{
  min-width:0;
}
body.luly-profile-page .profile-tab-panel#client-account .client-account-settings-panel,
body.luly-profile-page .profile-tab-panel#client-notifications .client-notification-panel{
  min-height:clamp(440px,58vh,650px);
}
body.luly-profile-page .profile-tab-panel#client-notifications .client-notification-panel .luly-notification-list{
  max-height:clamp(300px,48vh,560px);
}
body.luly-profile-page .profile-simple-footer{
  padding-top:clamp(30px,4vw,54px) !important;
}
@media (max-width: 991px){
  body.luly-profile-page .simple-profile-menu a.is-active,
  body.luly-profile-page .simple-profile-menu a[aria-current="page"]{
    transform:none;
  }
}
@media (max-width: 760px){
  body.luly-profile-page .profile-tab-panel.is-active{
    gap:16px;
  }
  body.luly-profile-page .simple-profile-menu a.is-active::after,
  body.luly-profile-page .simple-profile-menu a[aria-current="page"]::after{
    right:12px;
  }
  body.luly-profile-page .profile-tab-panel#client-account .client-account-settings-panel,
  body.luly-profile-page .profile-tab-panel#client-notifications .client-notification-panel{
    min-height:auto;
  }
}

/* === Final client profile tab layout polish === */
body.luly-profile-page.profile-simple-page .profile-hero {
  padding-top: clamp(6.8rem, 8vw, 8.6rem);
}
body.luly-profile-page.profile-simple-page .simple-profile-shell {
  width: min(100%, 1220px);
  margin-inline: auto;
  grid-template-columns: minmax(270px, 330px) minmax(0, 890px);
  justify-content: center;
  align-items: start;
  gap: clamp(1rem, 2.4vw, 2rem);
}
body.luly-profile-page .simple-profile-card {
  padding: clamp(1rem, 2vw, 1.35rem);
  border-radius: 30px;
}
body.luly-profile-page .profile-card-top {
  align-items: center;
}
body.luly-profile-page .simple-profile-card h1 {
  font-size: clamp(1.7rem, 2.8vw, 2.4rem);
  line-height: 1;
  margin-bottom: .28rem;
}
body.luly-profile-page .simple-profile-card p {
  font-size: .92rem;
  color: rgba(255,247,238,.62);
}
body.luly-profile-page .profile-content.profile-tabbed-content,
body.luly-profile-page .simple-profile-content.profile-tabbed-content {
  display: block;
  width: 100%;
  min-width: 0;
}
body.luly-profile-page .profile-tab-panel {
  display: none;
  width: min(100%, 890px);
  margin-inline: auto;
  min-width: 0;
}
body.luly-profile-page .profile-tab-panel.is-active {
  display: flex !important;
  flex-direction: column;
  gap: clamp(1rem, 2vw, 1.35rem);
  animation: lulyProfileTabFade .22s ease both;
}
body.luly-profile-page .profile-tab-panel[hidden] {
  display: none !important;
}
body.luly-profile-page .profile-tab-panel > .glass-panel,
body.luly-profile-page .profile-tab-panel .glass-panel,
body.luly-profile-page .client-account-zone > .glass-panel,
body.luly-profile-page .client-notifications-zone > .glass-panel {
  width: 100%;
  margin-inline: auto !important;
}
body.luly-profile-page .profile-tab-panel .simple-welcome,
body.luly-profile-page .profile-tab-panel .simple-active-order,
body.luly-profile-page .profile-tab-panel .simple-past-orders,
body.luly-profile-page .profile-tab-panel .tier-panel,
body.luly-profile-page .profile-tab-panel .creator-bonus-panel,
body.luly-profile-page .profile-tab-panel .client-account-settings-panel,
body.luly-profile-page .profile-tab-panel .client-notification-panel {
  padding: clamp(1.15rem, 2.6vw, 1.85rem);
  border-radius: 30px;
}
body.luly-profile-page .simple-welcome h2,
body.luly-profile-page .simple-active-order h2,
body.luly-profile-page .simple-past-orders h2,
body.luly-profile-page .tier-panel h2,
body.luly-profile-page .client-account-settings-panel h2,
body.luly-profile-page .client-notification-panel h2 {
  letter-spacing: -.05em;
  line-height: 1.02;
}
body.luly-profile-page .simple-welcome p,
body.luly-profile-page .stage-summary p,
body.luly-profile-page .tier-panel p,
body.luly-profile-page .client-panel-head p,
body.luly-profile-page .client-form-title p {
  max-width: 720px;
  color: rgba(255,247,238,.68);
  line-height: 1.6;
}
body.luly-profile-page .simple-profile-menu {
  gap: .65rem;
}
body.luly-profile-page .simple-profile-menu a {
  min-height: 51px;
  padding: .85rem .95rem;
  border-radius: 18px;
  font-size: .96rem;
  line-height: 1.1;
}
body.luly-profile-page .simple-profile-menu a.is-active,
body.luly-profile-page .simple-profile-menu a[aria-current="page"] {
  color: #fffaf3;
  border-color: rgba(255,138,29,.68);
  background:
    radial-gradient(circle at 0 50%, rgba(255,138,29,.32), transparent 50%),
    linear-gradient(135deg, rgba(255,122,24,.2), rgba(255,255,255,.055));
  box-shadow: 0 16px 38px rgba(255,90,0,.18), inset 0 1px 0 rgba(255,255,255,.09);
}
body.luly-profile-page .simple-profile-menu a.is-active::after,
body.luly-profile-page .simple-profile-menu a[aria-current="page"]::after {
  right: 16px;
}
body.luly-profile-page .simple-profile-menu a[href="order.html"] {
  margin-top: .2rem;
  border-color: rgba(255,181,107,.25);
}
body.luly-profile-page .active-stage-card,
body.luly-profile-page .client-account-summary article,
body.luly-profile-page .past-orders-list article,
body.luly-profile-page .tier-ladder article,
body.luly-profile-page .client-notification-panel .luly-notification-item,
body.luly-profile-page .client-notification-empty {
  background: rgba(10,7,6,.34);
  border-color: rgba(255,181,107,.14);
}
body.luly-profile-page .active-stage-card {
  padding: clamp(1rem, 2vw, 1.35rem);
  border: 1px solid rgba(255,181,107,.15);
  border-radius: 24px;
}
body.luly-profile-page .profile-quick-stats.simple-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
body.luly-profile-page .profile-quick-stats.simple-stats div {
  min-height: 92px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.luly-profile-page .clean-orders-list article {
  cursor: pointer;
  grid-template-columns: 16px minmax(0, 1fr) auto;
  min-height: 74px;
}
body.luly-profile-page .clean-orders-list article:hover {
  transform: translateY(-1px);
  border-color: rgba(255,138,29,.35);
  background: rgba(255,122,24,.08);
}
body.luly-profile-page .client-account-zone,
body.luly-profile-page .client-notifications-zone {
  width: 100%;
  min-width: 0;
}
body.luly-profile-page .client-account-settings-panel,
body.luly-profile-page .client-notification-panel {
  min-height: min(660px, calc(100vh - 170px));
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
body.luly-profile-page .client-account-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
}
body.luly-profile-page .client-account-grid,
body.luly-profile-page .account-settings-grid.client-account-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}
body.luly-profile-page .client-account-form,
body.luly-profile-page .client-password-form {
  padding: 1rem;
  border-radius: 24px;
  border: 1px solid rgba(255,181,107,.14);
  background: rgba(0,0,0,.14);
}
body.luly-profile-page .client-form-title {
  grid-column: 1 / -1;
  padding-bottom: .25rem;
}
body.luly-profile-page .admin-mvp-form label,
body.luly-profile-page .luly-comment-form label {
  color: rgba(255,247,238,.72);
}
body.luly-profile-page .admin-mvp-form input,
body.luly-profile-page .admin-mvp-form textarea,
body.luly-profile-page .admin-mvp-form select {
  min-height: 46px;
  border-radius: 15px;
}
body.luly-profile-page .client-notification-panel .luly-notification-toolbar {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(255,181,107,.12);
}
body.luly-profile-page .client-notification-panel .luly-notification-list {
  flex: 1 1 auto;
  max-height: none;
  overflow: visible;
}
body.luly-profile-page .client-panel-placeholder {
  justify-content: center;
}
@media (max-width: 1199.98px) {
  body.luly-profile-page.profile-simple-page .simple-profile-shell {
    grid-template-columns: 1fr;
    max-width: 920px;
  }
  body.luly-profile-page .profile-sidebar {
    position: static;
  }
  body.luly-profile-page .simple-profile-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.luly-profile-page .profile-tab-panel {
    max-width: 920px;
  }
}
@media (max-width: 767.98px) {
  body.luly-profile-page .simple-profile-menu {
    grid-template-columns: 1fr;
  }
  body.luly-profile-page .profile-quick-stats.simple-stats,
  body.luly-profile-page .client-account-summary {
    grid-template-columns: 1fr;
  }
  body.luly-profile-page .client-account-settings-panel,
  body.luly-profile-page .client-notification-panel {
    min-height: auto;
  }
  body.luly-profile-page .clean-orders-list article {
    grid-template-columns: 14px 1fr;
  }
  body.luly-profile-page .clean-orders-list article em {
    grid-column: 2;
    justify-self: start;
  }
}

/* === Final order details page polish === */
body.order-detail-page .ops-main {
  overflow: hidden;
}
body.order-detail-page .ops-hero {
  padding-top: clamp(7rem, 8vw, 8.6rem);
  padding-bottom: clamp(1.4rem, 3vw, 2.2rem);
}
body.order-detail-page .ops-hero .container,
body.order-detail-page .ops-dashboard .container {
  max-width: 1120px;
}
body.order-detail-page .ops-hero-grid,
body.order-detail-page .ops-layout,
body.order-detail-page .luly-order-live-grid {
  width: min(100%, 1120px);
  margin-inline: auto;
}
body.order-detail-page .ops-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(285px, .75fr);
  gap: clamp(1rem, 2vw, 1.35rem);
  align-items: stretch;
}
body.order-detail-page .ops-title-block,
body.order-detail-page .ops-admin-profile,
body.order-detail-page .ops-panel {
  border-radius: 30px;
  border-color: rgba(255,181,107,.2);
  background: linear-gradient(155deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
}
body.order-detail-page .ops-title-block,
body.order-detail-page .ops-admin-profile,
body.order-detail-page .ops-panel {
  padding: clamp(1.1rem, 2.4vw, 1.75rem);
}
body.order-detail-page .ops-title-block h1 {
  margin: .55rem 0 .8rem;
  color: #fff5e8;
  font-size: clamp(2.75rem, 6vw, 5.4rem);
  line-height: .95;
  letter-spacing: -.065em;
}
body.order-detail-page .ops-title-block p,
body.order-detail-page .backend-card p,
body.order-detail-page .luly-order-brief-box p,
body.order-detail-page .order-timeline em,
body.order-detail-page .worker-xp-rules span {
  color: rgba(255,247,238,.68);
  line-height: 1.6;
}
body.order-detail-page .ops-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.2rem;
}
body.order-detail-page .ops-primary-action,
body.order-detail-page .ops-secondary-action {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding-inline: 1rem;
  font-weight: 900;
  text-decoration: none;
}
body.order-detail-page .ops-admin-top {
  align-items: center;
}
body.order-detail-page .ops-admin-top strong {
  color: #fff7ee;
  font-size: clamp(1.2rem, 2.2vw, 1.6rem);
  line-height: 1.08;
  letter-spacing: -.03em;
}
body.order-detail-page .ops-admin-top em {
  display: inline-flex;
  width: fit-content;
  margin-top: .45rem;
  padding: .42rem .65rem;
  border-radius: 999px;
  color: #160905;
  background: linear-gradient(135deg, #ff6a00, #ffb56b);
  font-style: normal;
  font-weight: 900;
}
body.order-detail-page .ops-security-list {
  gap: .6rem;
  margin-top: 1rem;
}
body.order-detail-page .ops-security-list span {
  border-radius: 16px;
  background: rgba(0,0,0,.18);
}
body.order-detail-page .ops-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 350px);
  gap: clamp(1rem, 2vw, 1.35rem);
  align-items: start;
}
body.order-detail-page .ops-side-stack {
  display: grid;
  gap: clamp(1rem, 2vw, 1.35rem);
}
body.order-detail-page .ops-panel-head {
  align-items: center;
  margin-bottom: 1rem;
}
body.order-detail-page .ops-panel-head h2 {
  color: #fff4e6;
  font-size: clamp(1.55rem, 3vw, 2.5rem);
  line-height: 1.02;
  letter-spacing: -.05em;
}
body.order-detail-page .backend-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
}
body.order-detail-page .backend-card {
  min-height: 150px;
  border-radius: 22px;
  border-color: rgba(255,181,107,.14);
  background: rgba(0,0,0,.18);
}
body.order-detail-page .backend-card h3 {
  margin: .45rem 0 .35rem;
  color: #fff7ee;
  font-size: clamp(1.05rem, 1.9vw, 1.32rem);
  line-height: 1.12;
  letter-spacing: -.025em;
}
body.order-detail-page .luly-order-brief-box {
  margin-top: 1rem !important;
  padding: 1.05rem;
  border-radius: 22px;
  background: rgba(0,0,0,.18);
  white-space: pre-line;
}
body.order-detail-page .order-timeline div {
  grid-template-columns: 48px minmax(0, 1fr);
  gap: .25rem .7rem;
  padding: .85rem;
}
body.order-detail-page .order-timeline div em {
  grid-column: 2;
}
body.order-detail-page .worker-xp-rules p {
  align-items: flex-start;
  border-radius: 16px;
}
body.order-detail-page .worker-xp-rules a {
  color: #ffb56b;
  font-weight: 850;
  text-decoration: none;
}
body.order-detail-page .luly-order-live-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
  margin-top: clamp(1rem, 2vw, 1.35rem);
}
body.order-detail-page .luly-order-live-grid .luly-approval-panel {
  grid-column: 1 / -1;
}
body.order-detail-page .luly-order-live-item {
  padding: .9rem;
  border-radius: 18px;
  border: 1px solid rgba(255,181,107,.14);
  background: rgba(0,0,0,.16);
}
body.order-detail-page .luly-order-live-item strong {
  color: #fff5e8;
}
body.order-detail-page .luly-order-live-item span,
body.order-detail-page .luly-order-live-item small {
  color: rgba(255,247,238,.62);
}
body.order-detail-page .luly-comment-form select,
body.order-detail-page .luly-comment-form textarea {
  border-radius: 16px;
}
body.order-detail-page .footer-cta {
  padding-top: clamp(2rem, 4vw, 3rem) !important;
}
@media (max-width: 1199.98px) {
  body.order-detail-page .ops-hero-grid,
  body.order-detail-page .ops-layout {
    grid-template-columns: 1fr;
  }
  body.order-detail-page .ops-side-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  body.order-detail-page .backend-card-grid,
  body.order-detail-page .luly-order-live-grid,
  body.order-detail-page .ops-side-stack {
    grid-template-columns: 1fr;
  }
  body.order-detail-page .luly-order-live-grid .luly-approval-panel {
    grid-column: auto;
  }
}
@media (max-width: 575.98px) {
  body.order-detail-page .ops-title-block h1 {
    font-size: 2.85rem;
  }
  body.order-detail-page .ops-title-block,
  body.order-detail-page .ops-admin-profile,
  body.order-detail-page .ops-panel {
    border-radius: 24px;
  }
}

/* === Client profile tabs v2: WebStorm/direct preview consistency === */
body.luly-profile-page.profile-simple-page .profile-hero > .container{
  max-width: 1240px;
  margin-inline: auto;
}
body.luly-profile-page.profile-simple-page .simple-profile-shell{
  width: min(100%, 1180px) !important;
  margin-inline: auto !important;
  grid-template-columns: minmax(270px, 320px) minmax(0, 860px) !important;
  justify-content: center !important;
  align-items: start !important;
  gap: clamp(1rem, 2.2vw, 1.65rem) !important;
}
body.luly-profile-page .profile-content.profile-tabbed-content,
body.luly-profile-page .simple-profile-content.profile-tabbed-content{
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}
body.luly-profile-page .profile-tab-panel{
  display: none !important;
  width: min(100%, 860px) !important;
  max-width: 860px !important;
  margin-inline: auto !important;
  min-width: 0 !important;
}
body.luly-profile-page .profile-tab-panel.is-active,
body.luly-profile-page:not(.profile-tabs-ready) .profile-tab-panel#active-order,
body.luly-profile-page:not(.profile-tabs-ready) .profile-tab-panel:target{
  display: flex !important;
  flex-direction: column !important;
  gap: clamp(1rem, 2vw, 1.35rem) !important;
}
body.luly-profile-page:not(.profile-tabs-ready) .profile-tabbed-content:has(.profile-tab-panel:target) .profile-tab-panel#active-order:not(:target){
  display: none !important;
}
body.luly-profile-page.profile-tabs-ready .profile-tab-panel:not(.is-active),
body.luly-profile-page .profile-tab-panel[hidden]{
  display: none !important;
}
body.luly-profile-page .profile-tab-panel > .glass-panel,
body.luly-profile-page .profile-tab-panel .glass-panel,
body.luly-profile-page .client-account-zone > .glass-panel,
body.luly-profile-page .client-notifications-zone > .glass-panel{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
}
body.luly-profile-page .profile-tab-panel .simple-welcome,
body.luly-profile-page .profile-tab-panel .simple-active-order,
body.luly-profile-page .profile-tab-panel .simple-past-orders,
body.luly-profile-page .profile-tab-panel .tier-panel,
body.luly-profile-page .profile-tab-panel .creator-bonus-panel,
body.luly-profile-page .profile-tab-panel .client-account-settings-panel,
body.luly-profile-page .profile-tab-panel .client-notification-panel{
  padding: clamp(1.35rem, 2.5vw, 1.9rem) !important;
  border-radius: 30px !important;
  border-color: rgba(255, 138, 29, .24) !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 122, 24, .13), transparent 28rem),
    linear-gradient(155deg, rgba(255,255,255,.07), rgba(255,255,255,.022)) !important;
}
body.luly-profile-page .simple-past-orders .panel-head,
body.luly-profile-page .client-panel-head,
body.order-detail-page .ops-panel-head{
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 1rem !important;
}
body.luly-profile-page .simple-past-orders .panel-head h2,
body.luly-profile-page .client-account-settings-panel h2,
body.luly-profile-page .client-notification-panel h2{
  margin-top: .55rem !important;
  font-size: clamp(2.2rem, 4.4vw, 3.35rem) !important;
  letter-spacing: -.065em !important;
  line-height: .98 !important;
}
body.luly-profile-page .simple-past-orders .panel-head a,
body.luly-profile-page .points-action{
  flex: 0 0 auto;
  min-height: 40px;
  padding: .62rem .95rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 138, 29, .3);
  background: rgba(255, 122, 24, .08);
  color: #ffb56b !important;
  font-weight: 900;
  text-decoration: none;
}
body.luly-profile-page .clean-orders-list{
  gap: .75rem !important;
}
body.luly-profile-page .clean-orders-list article{
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: .95rem !important;
  min-height: 74px !important;
  padding: .95rem 1.05rem !important;
  border-radius: 20px !important;
}
body.luly-profile-page .clean-orders-list article strong{
  color: #fff3e6;
  font-size: clamp(.98rem, 1.6vw, 1.08rem);
  line-height: 1.2;
}
body.luly-profile-page .clean-orders-list article small{
  color: rgba(255, 247, 238, .62);
  font-size: .86rem;
  line-height: 1.35;
}
body.luly-profile-page .clean-orders-list article em{
  justify-self: end;
  white-space: nowrap;
  color: #ffb56b;
  font-size: .84rem;
}
body.luly-profile-page .simple-profile-menu a{
  cursor: pointer;
  user-select: none;
}
body.luly-profile-page .simple-profile-menu a.is-active,
body.luly-profile-page .simple-profile-menu a[aria-current="page"]{
  transform: translateX(3px);
}
body.luly-profile-page .client-account-settings-panel{
  min-height: auto !important;
  justify-content: flex-start !important;
}
body.luly-profile-page .client-account-summary{
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: .85rem !important;
  margin-bottom: 1rem !important;
}
body.luly-profile-page .client-account-summary article{
  padding: .95rem !important;
  border-radius: 20px !important;
}
body.luly-profile-page .client-account-grid,
body.luly-profile-page .account-settings-grid.client-account-grid{
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
}
body.luly-profile-page .client-account-form,
body.luly-profile-page .client-password-form{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .9rem !important;
  padding: 1rem !important;
  border-radius: 24px !important;
  border: 1px solid rgba(255, 181, 107, .14) !important;
  background: rgba(0,0,0,.16) !important;
}
body.luly-profile-page .client-form-title,
body.luly-profile-page .admin-mvp-actions.full{
  grid-column: 1 / -1 !important;
}
body.luly-profile-page .client-form-title h3{
  margin: .32rem 0 .25rem !important;
  color: #fff5e8 !important;
  font-size: clamp(1.12rem, 2vw, 1.35rem) !important;
  letter-spacing: -.025em;
}
body.luly-profile-page .client-form-title p{
  max-width: 68ch;
  color: rgba(255,247,238,.65) !important;
}
body.luly-profile-page .client-account-form label,
body.luly-profile-page .client-password-form label{
  display: grid !important;
  gap: .45rem !important;
  margin: 0 !important;
  color: rgba(255,247,238,.76) !important;
  font-weight: 800 !important;
}
body.luly-profile-page .client-account-form input,
body.luly-profile-page .client-password-form input{
  width: 100% !important;
  min-height: 48px !important;
  padding: .78rem .9rem !important;
  border-radius: 16px !important;
}
body.luly-profile-page .client-notification-panel{
  min-height: auto !important;
}
@media (max-width: 1199.98px){
  body.luly-profile-page.profile-simple-page .simple-profile-shell{
    grid-template-columns: 1fr !important;
    max-width: 920px !important;
  }
  body.luly-profile-page .profile-tab-panel{
    width: min(100%, 920px) !important;
    max-width: 920px !important;
  }
}
@media (max-width: 767.98px){
  body.luly-profile-page .simple-past-orders .panel-head,
  body.luly-profile-page .client-panel-head,
  body.order-detail-page .ops-panel-head{
    display: grid !important;
  }
  body.luly-profile-page .client-account-summary,
  body.luly-profile-page .client-account-form,
  body.luly-profile-page .client-password-form{
    grid-template-columns: 1fr !important;
  }
  body.luly-profile-page .clean-orders-list article{
    grid-template-columns: 16px 1fr !important;
  }
  body.luly-profile-page .clean-orders-list article em{
    grid-column: 2;
    justify-self: start;
  }
}

/* === Order details v2: centered professional detail page === */
body.order-detail-page .ops-main{
  overflow: hidden;
}
body.order-detail-page .ops-hero > .container,
body.order-detail-page .ops-dashboard > .container{
  max-width: 1180px !important;
  margin-inline: auto !important;
}
body.order-detail-page .ops-hero-grid,
body.order-detail-page .ops-layout,
body.order-detail-page .luly-order-live-grid{
  width: min(100%, 1120px) !important;
  margin-inline: auto !important;
}
body.order-detail-page .ops-hero-grid{
  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, .88fr) !important;
  gap: clamp(1rem, 2vw, 1.35rem) !important;
  align-items: stretch !important;
}
body.order-detail-page .ops-layout{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 360px) !important;
  gap: clamp(1rem, 2vw, 1.35rem) !important;
  align-items: start !important;
}
body.order-detail-page .ops-title-block,
body.order-detail-page .ops-admin-profile,
body.order-detail-page .ops-panel{
  padding: clamp(1.25rem, 2.5vw, 1.9rem) !important;
  border-radius: 30px !important;
}
body.order-detail-page .ops-title-block h1{
  max-width: 10ch;
  font-size: clamp(2.7rem, 5.6vw, 5.1rem) !important;
  letter-spacing: -.07em !important;
  line-height: .95 !important;
}
body.order-detail-page .ops-title-block p,
body.order-detail-page .backend-card p,
body.order-detail-page .luly-order-brief-box p,
body.order-detail-page .worker-xp-rules span,
body.order-detail-page .order-timeline em{
  color: rgba(255,247,238,.67) !important;
  line-height: 1.58 !important;
}
body.order-detail-page .backend-card-grid{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .85rem !important;
}
body.order-detail-page .backend-card{
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-height: 148px !important;
  padding: 1rem !important;
  border-radius: 22px !important;
}
body.order-detail-page .backend-card h3{
  color: #fff5e8 !important;
  font-size: clamp(1.05rem, 1.9vw, 1.35rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -.03em !important;
}
body.order-detail-page .luly-order-brief-box{
  margin-top: 1rem !important;
  padding: 1rem !important;
  border-radius: 22px !important;
}
body.order-detail-page .ops-side-stack{
  display: grid !important;
  gap: clamp(1rem, 2vw, 1.35rem) !important;
}
body.order-detail-page .order-timeline.clean-timeline,
body.order-detail-page .professional-order-flow{
  grid-template-columns: 1fr !important;
}
body.order-detail-page .order-timeline div{
  grid-template-columns: 46px minmax(0, 1fr) !important;
  gap: .25rem .7rem !important;
  align-items: start !important;
  min-height: auto !important;
}
body.order-detail-page .order-timeline div strong,
body.order-detail-page .order-timeline div em{
  grid-column: 2 !important;
}
@media (max-width: 1199.98px){
  body.order-detail-page .ops-hero-grid,
  body.order-detail-page .ops-layout{
    grid-template-columns: 1fr !important;
    max-width: 920px !important;
  }
  body.order-detail-page .ops-side-stack{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 900px){
  body.order-detail-page .backend-card-grid,
  body.order-detail-page .ops-side-stack,
  body.order-detail-page .luly-order-live-grid{
    grid-template-columns: 1fr !important;
  }
}


/* === LULY v3 final: consistent static/localhost profile, account forms, and details modal === */
body.luly-profile-page{
  --luly-bg-card: linear-gradient(155deg, rgba(255,255,255,.075), rgba(255,255,255,.022));
  --luly-border-soft: rgba(255, 138, 29, .24);
  --luly-text-main: #fff6ea;
  --luly-text-muted: rgba(255,247,238,.66);
  --luly-orange: #ff7a18;
}
body.luly-profile-page .luly-account-pro-panel{
  padding: clamp(1.25rem, 2.5vw, 1.9rem) !important;
  border-radius: 32px !important;
  border: 1px solid var(--luly-border-soft) !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,122,24,.14), transparent 24rem),
    linear-gradient(155deg, rgba(255,255,255,.07), rgba(255,255,255,.02)) !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
body.luly-profile-page .luly-account-hero{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  padding-bottom: 1.05rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid rgba(255,181,107,.13);
}
body.luly-profile-page .luly-account-hero h2{
  margin: .5rem 0 .45rem !important;
  color: var(--luly-text-main) !important;
  font-size: clamp(2.35rem, 4.7vw, 3.55rem) !important;
  line-height: .96 !important;
  letter-spacing: -.07em !important;
}
body.luly-profile-page .luly-account-hero p{
  max-width: 64ch;
  margin: 0;
  color: var(--luly-text-muted);
  font-size: .96rem;
  line-height: 1.62;
}
body.luly-profile-page .luly-account-summary-pro{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .85rem !important;
  margin: 0 0 1rem !important;
}
body.luly-profile-page .luly-account-summary-pro article{
  min-width: 0;
  padding: 1rem !important;
  border-radius: 22px !important;
  border: 1px solid rgba(255,181,107,.14) !important;
  background: rgba(0,0,0,.18) !important;
}
body.luly-profile-page .luly-account-summary-pro span,
body.luly-profile-page .luly-account-summary-pro small{
  display: block;
  color: rgba(255,247,238,.54);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.luly-profile-page .luly-account-summary-pro strong{
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: .45rem 0 .2rem;
  color: var(--luly-text-main);
  font-size: .98rem;
  line-height: 1.25;
}
body.luly-profile-page .luly-account-summary-pro small{
  color: rgba(255,247,238,.48);
  font-size: .72rem;
  letter-spacing: 0;
  text-transform: none;
}
body.luly-profile-page .luly-account-form-stack{
  display: grid;
  gap: 1rem;
}
body.luly-profile-page .luly-account-form-card{
  display: block !important;
  padding: 1.05rem !important;
  border-radius: 26px !important;
  border: 1px solid rgba(255,181,107,.14) !important;
  background: rgba(0,0,0,.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.luly-profile-page .luly-form-card-head{
  margin: 0 0 1rem;
}
body.luly-profile-page .luly-form-card-head h3{
  margin: .3rem 0 .3rem !important;
  color: var(--luly-text-main) !important;
  font-size: clamp(1.25rem, 2.25vw, 1.65rem) !important;
  font-weight: 900 !important;
  letter-spacing: -.04em !important;
  line-height: 1.05 !important;
}
body.luly-profile-page .luly-form-card-head p{
  margin: 0 !important;
  max-width: 68ch !important;
  color: var(--luly-text-muted) !important;
  line-height: 1.55 !important;
}
body.luly-profile-page .luly-field-grid{
  display: grid !important;
  gap: .9rem !important;
}
body.luly-profile-page .luly-field-grid.three{
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.luly-profile-page .luly-field{
  display: grid !important;
  gap: .5rem !important;
  margin: 0 !important;
  color: rgba(255,247,238,.76) !important;
  font-size: .86rem !important;
  font-weight: 850 !important;
  letter-spacing: -.01em !important;
  text-transform: none !important;
}
body.luly-profile-page .luly-field input{
  width: 100% !important;
  min-height: 52px !important;
  padding: .84rem .95rem !important;
  border: 1px solid rgba(255,181,107,.18) !important;
  border-radius: 17px !important;
  background: rgba(3,3,5,.82) !important;
  color: #fff8ef !important;
  font: 700 .98rem/1.2 Poppins, system-ui, sans-serif !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
  outline: none !important;
}
body.luly-profile-page .luly-field input::placeholder{color: rgba(255,247,238,.35) !important;}
body.luly-profile-page .luly-field input:focus{
  border-color: rgba(255,138,29,.72) !important;
  box-shadow: 0 0 0 4px rgba(255,122,24,.12), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.luly-profile-page .luly-form-actions{
  display: flex !important;
  align-items: center !important;
  gap: .85rem !important;
  flex-wrap: wrap !important;
  margin-top: 1rem !important;
}
body.luly-profile-page button.luly-account-save,
body.luly-profile-page .luly-account-save.admin-mvp-button,
body.luly-profile-page .luly-notification-read-all.admin-mvp-button{
  appearance: none !important;
  min-height: 46px !important;
  padding: .72rem 1.15rem !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #ff8a1d, #ff4a00) !important;
  color: #160905 !important;
  font: 950 .9rem/1 Poppins, system-ui, sans-serif !important;
  letter-spacing: -.01em !important;
  text-decoration: none !important;
  box-shadow: 0 16px 35px rgba(255,90,0,.25) !important;
  cursor: pointer !important;
}
body.luly-profile-page button.luly-account-save:hover,
body.luly-profile-page .luly-account-save.admin-mvp-button:hover{
  filter: brightness(1.07);
  transform: translateY(-1px);
}
body.luly-profile-page .luly-form-actions .admin-mvp-status{
  min-height: 1.2rem;
  margin: 0 !important;
  color: #ffbf80 !important;
  font-size: .84rem !important;
  font-weight: 750 !important;
}
body.luly-profile-page .clean-orders-list article{
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
}
body.luly-profile-page .clean-orders-list article .luly-mini-details,
body.luly-profile-page .luly-order-detail-trigger{
  appearance: none;
  border: 1px solid rgba(255,138,29,.34);
  border-radius: 999px;
  background: rgba(255,122,24,.08);
  color: #ffb56b;
  padding: .55rem .82rem;
  font: 900 .78rem/1 Poppins, system-ui, sans-serif;
  text-decoration: none;
  cursor: pointer;
}
body.luly-profile-page .clean-orders-list article .luly-mini-details:hover,
body.luly-profile-page .luly-order-detail-trigger:hover{
  background: linear-gradient(135deg, #ff8a1d, #ff4a00);
  color: #160905;
}
body.luly-profile-page .luly-order-detail-trigger{
  width: fit-content;
  margin-top: .8rem;
  padding: .7rem 1rem;
}
body.luly-order-modal-open{overflow:hidden;}
.luly-order-modal[hidden]{display:none !important;}
.luly-order-modal{
  position: fixed;
  inset: 0;
  z-index: 10020;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 2rem);
}
.luly-order-modal-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.76);
  backdrop-filter: blur(10px);
}
.luly-order-modal-card{
  position: relative;
  width: min(100%, 760px);
  max-height: min(86vh, 780px);
  overflow: auto;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid rgba(255,138,29,.34);
  border-radius: 34px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,122,24,.2), transparent 20rem),
    linear-gradient(155deg, rgba(27,18,12,.98), rgba(7,6,5,.98));
  box-shadow: 0 34px 110px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.055);
  outline: none;
  transform: translateY(8px) scale(.98);
  opacity: 0;
  transition: .16s ease;
}
.luly-order-modal.is-open .luly-order-modal-card{
  transform: translateY(0) scale(1);
  opacity: 1;
}
.luly-order-modal-close{
  position: absolute;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255,138,29,.34);
  border-radius: 999px;
  background: rgba(255,122,24,.09);
  color: #ffe7ce;
  font-size: 1.7rem;
  line-height: 1;
  cursor: pointer;
}
.luly-order-modal-close:hover{background:linear-gradient(135deg,#ff8a1d,#ff4a00);color:#160905;}
.luly-order-modal-head{padding-right:3.2rem;}
.luly-order-modal-head h2{
  margin: .5rem 0 .55rem;
  color: #fff6ea;
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: .98;
  letter-spacing: -.065em;
}
.luly-order-modal-head p{
  margin: 0;
  color: rgba(255,247,238,.68);
  line-height: 1.6;
}
.luly-order-modal-status span{
  display: inline-flex;
  margin: 1rem 0;
  padding: .52rem .8rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff8a1d, #ff4a00);
  color: #160905;
  font-weight: 950;
  font-size: .82rem;
}
.luly-order-modal-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: .85rem;
  margin-bottom: 1rem;
}
.luly-order-modal-grid article,
.luly-modal-timeline div{
  padding: .95rem;
  border: 1px solid rgba(255,181,107,.14);
  border-radius: 20px;
  background: rgba(0,0,0,.18);
}
.luly-order-modal-grid span,
.luly-modal-timeline small{
  display: block;
  color: rgba(255,247,238,.56);
  font-size: .75rem;
  font-weight: 850;
}
.luly-order-modal-grid strong,
.luly-modal-timeline strong{display:block;color:#fff6ea;line-height:1.22;}
.luly-order-modal-section{margin-top:1rem;}
.luly-modal-timeline{
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: .75rem;
  margin-top: .7rem;
}
.luly-modal-timeline b{
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  margin-bottom: .65rem;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: rgba(255,247,238,.68);
}
.luly-modal-timeline .done b,
.luly-modal-timeline .active b{background:linear-gradient(135deg,#ff8a1d,#ff4a00);color:#160905;}
.luly-modal-timeline .active{border-color:rgba(255,138,29,.4);box-shadow:0 14px 30px rgba(255,90,0,.12);}
.luly-order-modal-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem;}
.luly-modal-primary,.luly-modal-secondary{
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .72rem 1rem;
  font-weight: 950;
  text-decoration: none;
}
.luly-modal-primary{background:linear-gradient(135deg,#ff8a1d,#ff4a00);color:#160905;}
.luly-modal-secondary{border:1px solid rgba(255,138,29,.34);background:rgba(255,122,24,.08);color:#ffb56b;}
@media(max-width: 760px){
  body.luly-profile-page .luly-account-hero{display:grid;}
  body.luly-profile-page .luly-account-summary-pro,
  body.luly-profile-page .luly-field-grid.three,
  .luly-order-modal-grid,
  .luly-modal-timeline{grid-template-columns:1fr !important;}
  body.luly-profile-page .clean-orders-list article{grid-template-columns:16px 1fr !important;}
  body.luly-profile-page .clean-orders-list article .luly-mini-details{grid-column:2;justify-self:start;}
}

/* === LULY v4 profile stability, clean account forms and reliable details modal === */
body.luly-profile-page .client-account-settings-panel{
  width:min(100%, 920px) !important;
  margin-inline:auto !important;
  padding:clamp(1.15rem, 3vw, 2rem) !important;
  border:1px solid rgba(255,138,29,.28) !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 12% -8%, rgba(255,122,24,.24), transparent 20rem),
    linear-gradient(155deg, rgba(24,15,9,.95), rgba(8,6,5,.96)) !important;
  box-shadow:0 26px 80px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
body.luly-profile-page .luly-account-hero{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:1rem !important;
  align-items:start !important;
  padding-bottom:1.1rem !important;
  margin-bottom:1rem !important;
  border-bottom:1px solid rgba(255,138,29,.18) !important;
}
body.luly-profile-page .luly-account-hero h2{
  margin:.35rem 0 .35rem !important;
  color:#fff8ef !important;
  font-size:clamp(2.1rem, 5vw, 3.15rem) !important;
  line-height:.98 !important;
  letter-spacing:-.065em !important;
}
body.luly-profile-page .luly-account-hero p,
body.luly-profile-page .luly-form-card-head p{
  max-width:700px !important;
  margin:0 !important;
  color:rgba(255,247,238,.68) !important;
  font-size:.98rem !important;
  line-height:1.55 !important;
}
body.luly-profile-page .client-panel-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:36px !important;
  padding:.55rem .85rem !important;
  border:1px solid rgba(255,138,29,.38) !important;
  border-radius:999px !important;
  background:rgba(255,122,24,.09) !important;
  color:#ffb56b !important;
  font-size:.78rem !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}
body.luly-profile-page .client-panel-badge.is-verified{background:rgba(255,138,29,.16) !important;color:#ffd7a4 !important;}
body.luly-profile-page .client-panel-badge.is-unverified{background:rgba(255,255,255,.045) !important;color:rgba(255,247,238,.72) !important;}
body.luly-profile-page .luly-account-summary-pro{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:.9rem !important;
  margin:0 0 1rem !important;
}
body.luly-profile-page .luly-account-summary-pro article{
  min-width:0 !important;
  padding:1rem !important;
  border:1px solid rgba(255,181,107,.15) !important;
  border-radius:22px !important;
  background:rgba(0,0,0,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.luly-profile-page .luly-account-summary-pro span,
body.luly-profile-page .luly-account-summary-pro small{
  display:block !important;
  color:rgba(255,247,238,.52) !important;
  font-size:.74rem !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.03em !important;
}
body.luly-profile-page .luly-account-summary-pro strong{
  display:block !important;
  min-width:0 !important;
  margin:.35rem 0 .18rem !important;
  color:#fff8ef !important;
  font-size:1.02rem !important;
  line-height:1.2 !important;
  overflow-wrap:anywhere !important;
}
body.luly-profile-page .luly-account-form-stack{
  display:grid !important;
  gap:1rem !important;
}
body.luly-profile-page .client-account-settings-panel .luly-account-form-card,
body.luly-profile-page .client-account-settings-panel form.admin-mvp-form{
  display:grid !important;
  gap:1rem !important;
  width:100% !important;
  margin:0 !important;
  padding:1.05rem !important;
  border:1px solid rgba(255,181,107,.16) !important;
  border-radius:26px !important;
  background:linear-gradient(145deg, rgba(255,122,24,.055), rgba(0,0,0,.24)) !important;
  box-shadow:none !important;
}
body.luly-profile-page .luly-form-card-head{
  display:block !important;
}
body.luly-profile-page .luly-form-card-head h3{
  margin:.35rem 0 .25rem !important;
  color:#fff8ef !important;
  font-size:clamp(1.35rem, 2.6vw, 1.8rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.045em !important;
}
body.luly-profile-page .luly-field-grid.three{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:.85rem !important;
  align-items:end !important;
}
body.luly-profile-page .luly-field,
body.luly-profile-page .client-account-settings-panel form.admin-mvp-form > label{
  display:grid !important;
  gap:.5rem !important;
  margin:0 !important;
  color:rgba(255,247,238,.72) !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  line-height:1.2 !important;
}
body.luly-profile-page .client-account-settings-panel input,
body.luly-profile-page .client-account-settings-panel textarea,
body.luly-profile-page .client-account-settings-panel select{
  width:100% !important;
  min-height:52px !important;
  padding:.86rem 1rem !important;
  border:1px solid rgba(255,138,29,.22) !important;
  border-radius:18px !important;
  outline:none !important;
  background:rgba(0,0,0,.48) !important;
  color:#fff8ef !important;
  font:700 .98rem/1.2 Poppins, system-ui, sans-serif !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}
body.luly-profile-page .client-account-settings-panel input::placeholder{color:rgba(255,247,238,.38) !important;}
body.luly-profile-page .client-account-settings-panel input:focus{
  border-color:rgba(255,138,29,.72) !important;
  background:rgba(0,0,0,.62) !important;
  box-shadow:0 0 0 4px rgba(255,122,24,.12), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
body.luly-profile-page .luly-form-actions,
body.luly-profile-page .client-account-settings-panel .admin-mvp-actions.full{
  display:flex !important;
  align-items:center !important;
  gap:.85rem !important;
  flex-wrap:wrap !important;
  margin:0 !important;
}
body.luly-profile-page .client-account-settings-panel .admin-mvp-button,
body.luly-profile-page .client-account-settings-panel .luly-account-save{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:190px !important;
  min-height:48px !important;
  padding:.82rem 1.15rem !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#ff8a1d,#ff4a00) !important;
  color:#160905 !important;
  font:950 .9rem/1 Poppins, system-ui, sans-serif !important;
  text-decoration:none !important;
  box-shadow:0 16px 35px rgba(255,92,0,.22) !important;
  cursor:pointer !important;
}
body.luly-profile-page .client-account-settings-panel .admin-mvp-button:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 22px 45px rgba(255,92,0,.26) !important;
}
body.luly-profile-page .client-account-settings-panel .admin-mvp-button:disabled{
  opacity:.62 !important;
  cursor:wait !important;
}
body.luly-profile-page .client-account-settings-panel .admin-mvp-status{
  margin:0 !important;
  color:rgba(255,247,238,.64) !important;
  font-size:.86rem !important;
  line-height:1.35 !important;
}

body.luly-order-modal-open{overflow:hidden !important;}
.luly-order-modal:not(.is-open),
.luly-order-modal[hidden]{
  display:none !important;
  pointer-events:none !important;
  opacity:0 !important;
  backdrop-filter:none !important;
}
.luly-order-modal.is-open{
  position:fixed !important;
  inset:0 !important;
  z-index:10050 !important;
  display:grid !important;
  place-items:center !important;
  padding:clamp(1rem, 3vw, 2rem) !important;
  background:rgba(12,7,4,.40) !important;
  backdrop-filter:blur(16px) saturate(118%) !important;
  -webkit-backdrop-filter:blur(16px) saturate(118%) !important;
  opacity:1 !important;
}
.luly-order-modal-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(12,7,4,.28) !important;
}
.luly-profile-order-modal .luly-order-modal-card,
.luly-order-modal.is-open .luly-order-modal-card{
  position:relative !important;
  z-index:1 !important;
  width:min(100%, 780px) !important;
  max-height:min(86vh, 800px) !important;
  overflow:auto !important;
  padding:clamp(1.2rem, 3vw, 2.15rem) !important;
  border:1px solid rgba(255,138,29,.34) !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 10% -10%, rgba(255,122,24,.22), transparent 18rem),
    linear-gradient(155deg, rgba(27,18,12,.98), rgba(7,6,5,.985)) !important;
  box-shadow:0 34px 110px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.055) !important;
  outline:none !important;
  transform:translateY(0) scale(1) !important;
  opacity:1 !important;
}
.luly-order-modal-head h2{
  margin:.45rem 0 .55rem !important;
  color:#fff6ea !important;
  font-size:clamp(2rem, 5vw, 3.25rem) !important;
  line-height:.98 !important;
  letter-spacing:-.065em !important;
}
.luly-order-modal-head p{color:rgba(255,247,238,.68) !important;line-height:1.6 !important;}
.luly-order-modal-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:.85rem !important;}
.luly-order-modal-grid article,
.luly-modal-timeline div{border:1px solid rgba(255,181,107,.16) !important;border-radius:20px !important;background:rgba(0,0,0,.2) !important;}
@media(max-width: 760px){
  body.luly-profile-page .luly-account-hero,
  body.luly-profile-page .luly-account-summary-pro,
  body.luly-profile-page .luly-field-grid.three,
  .luly-order-modal-grid,
  .luly-modal-timeline{grid-template-columns:1fr !important;}
  body.luly-profile-page .client-account-settings-panel{border-radius:26px !important;}
  body.luly-profile-page .client-account-settings-panel .admin-mvp-button{width:100% !important;}
}


/* === Launch polish June 2026 === */
:root {
  --luly-text-soft: rgba(255, 247, 238, .72);
  --luly-text-muted: rgba(255, 247, 238, .58);
  --luly-panel-border: rgba(255, 138, 29, .22);
}
html { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
body { letter-spacing: -0.012em; }
p, li, small, label, input, textarea, select, button { letter-spacing: -0.01em; }
h1, h2, h3, h4, h5, h6 { letter-spacing: -0.055em; text-wrap: balance; }
.luly-section-lead, .login-muted, .pricing-description, .faq-card p, .trust-card p, .payment-card p, .launch-process-card p { line-height: 1.68; }
.luly-section h2, .portfolio-hero h1, .order-intro h1, .login-brand-copy h1 { max-width: 980px; }
.login-card h2, .login-card h3 { letter-spacing: -0.05em; }
.login-card .form-control, .login-card .form-select, .order-brief-form .form-control, .order-brief-form .form-select { min-height: 48px; font-weight: 650; }
.auth-secondary-help { margin: 1rem 0 0; padding: .95rem 1rem; border: 1px solid rgba(255, 181, 107, .16); border-radius: 20px; background: linear-gradient(135deg, rgba(255, 122, 24, .09), rgba(255, 255, 255, .035)); }
.auth-secondary-help strong { display: block; color: #fff4e6; font-weight: 900; }
.auth-secondary-help p { margin: .25rem 0 .55rem; color: var(--luly-text-muted); font-size: .86rem; line-height: 1.55; }
.auth-secondary-help a { color: #ffb56b; font-weight: 900; text-decoration: none; }
.auth-secondary-help a:hover { color: #fff2dd; text-decoration: underline; }
body.luly-login-page .auth-support-panel { width: min(94vw, 580px); border-radius: 34px; background: radial-gradient(circle at 0% 0%, rgba(255, 138, 29, .28), transparent 34%), radial-gradient(circle at 100% 8%, rgba(255, 190, 116, .11), transparent 28%), linear-gradient(180deg, rgba(32, 18, 10, .985), rgba(8, 7, 6, .99)); }
body.luly-login-page .auth-support-panel .login-muted { margin: -4px 0 1.05rem; color: var(--luly-text-soft); }
body.luly-login-page .auth-support-panel .portal-form + .portal-form { margin-top: 1.15rem !important; padding-top: 1.15rem; }
body.luly-login-page .auth-support-panel .form-label { font-weight: 850; color: rgba(255, 242, 225, .82); }
body.luly-login-page .auth-support-panel .form-control { min-height: 50px; border-radius: 16px; }
.auth-token-form { position: relative; }
.auth-token-form::before { content: "Code step"; display: inline-flex; margin-bottom: .65rem; padding: .28rem .6rem; border-radius: 999px; border: 1px solid rgba(255, 181, 107, .2); color: #ffb56b; font-size: .72rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.launch-process-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.launch-process-card, .payment-card, .manual-payment-note, .policy-card { border: 1px solid var(--luly-panel-border); border-radius: 26px; background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.025)); box-shadow: 0 24px 60px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05); }
.launch-process-card { padding: 1.15rem; }
.launch-process-card strong { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 16px; background: linear-gradient(135deg, #ff8a1d, #ff4a00); color: #160902; font-weight: 950; box-shadow: 0 14px 32px rgba(255,90,0,.25); }
.launch-process-card h3, .payment-card strong { margin: .85rem 0 .35rem; color: #fff4e6; font-weight: 950; }
.launch-process-card p, .payment-card p { margin: 0; color: var(--luly-text-soft); }
.payment-card { padding: 1.1rem; }
.payment-card i { color: #ff8a1d; font-size: 1.45rem; }
.payment-card strong { display: block; }
.manual-payment-note { margin: 1rem 0 1.2rem; padding: 1rem 1.1rem; }
.manual-payment-note strong { display: block; color: #fff4e6; font-weight: 950; }
.manual-payment-note p { margin: .35rem 0 0; color: var(--luly-text-soft); line-height: 1.62; }
.policy-main { padding-top: clamp(7rem, 10vw, 9rem); }
.policy-hero { max-width: 820px; margin-inline: auto; text-align: center; }
.policy-hero h1 { font-size: clamp(3rem, 8vw, 6.2rem); line-height: .9; color: #fff6ec; }
.policy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 2rem; }
.policy-card { padding: clamp(1.1rem, 2vw, 1.45rem); }
.policy-card h2 { color: #fff4e6; font-size: clamp(1.35rem, 2.5vw, 2rem); }
.policy-card p { color: var(--luly-text-soft); line-height: 1.7; margin: 0; }
.footer-links h3 { letter-spacing: -.035em; }
.luly-footer .footer-bottom p:last-child { color: rgba(255, 181, 107, .8); font-weight: 750; }
.package-features li { line-height: 1.45; }

/* === LULY v6 cleanup: clean login modal, profile actions and detail page === */
body.luly-login-page.auth-support-modal-open::before{
  background:rgba(6,4,3,.42) !important;
  backdrop-filter:blur(1px) saturate(105%) !important;
  -webkit-backdrop-filter:blur(1px) saturate(105%) !important;
}
body.luly-login-page .auth-support-panel{
  width:min(92vw, 560px) !important;
  max-height:min(88vh, 720px) !important;
  padding:clamp(1.15rem, 2.6vw, 1.7rem) !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,122,24,.18), transparent 18rem),
    linear-gradient(160deg, rgba(24,15,10,.985), rgba(8,6,5,.99)) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.54), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
body.luly-login-page .auth-support-panel h3{
  font-size:clamp(1.75rem, 4vw, 2.45rem) !important;
  letter-spacing:-.06em !important;
}
body.luly-login-page .auth-support-panel .login-muted{
  margin:.15rem 0 .95rem !important;
  line-height:1.55 !important;
}
body.luly-login-page .auth-support-panel .form-control{
  min-height:46px !important;
  border-radius:14px !important;
}
body.luly-login-page .auth-support-panel .portal-form + .portal-form{
  margin-top:.95rem !important;
  padding-top:.95rem !important;
}
.auth-token-form::before{content:none !important;display:none !important;}
body.luly-login-page .auth-secondary-help{display:none !important;}
body.luly-login-page .login-card{max-width:520px !important;}
body.luly-login-page .demo-account-note{margin:.65rem 0 1rem !important;font-size:.84rem !important;line-height:1.45 !important;}
body.luly-login-page .login-bottom-links{margin-top:1rem !important;}

body.luly-profile-page .luly-email-verification-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:1rem !important;
  align-items:center !important;
  margin:0 0 1rem !important;
  padding:1rem !important;
  border:1px solid rgba(255,181,107,.16) !important;
  border-radius:24px !important;
  background:linear-gradient(135deg, rgba(255,122,24,.09), rgba(0,0,0,.22)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.luly-profile-page .luly-email-verification-card h3{
  margin:.35rem 0 .25rem !important;
  color:#fff8ef !important;
  font-size:clamp(1.2rem, 2.3vw, 1.55rem) !important;
  line-height:1.1 !important;
}
body.luly-profile-page .luly-email-verification-card p{
  margin:0 !important;
  color:rgba(255,247,238,.66) !important;
  line-height:1.55 !important;
}
body.luly-profile-page .luly-email-verification-card .admin-mvp-button{
  white-space:nowrap !important;
  min-width:auto !important;
  padding:.82rem 1.05rem !important;
}

body.luly-profile-page .luly-order-card-actions,
.luly-order-modal-actions,
.detail-action-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:.7rem !important;
  align-items:center !important;
}
body.luly-profile-page .luly-order-card-actions{margin-top:1rem !important;}
body.luly-profile-page .luly-order-detail-trigger,
body.luly-profile-page .luly-order-page-link,
body.luly-profile-page .luly-mini-details,
.luly-modal-primary,
.luly-modal-secondary,
.detail-action-row a{
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  padding:.72rem 1rem !important;
  font:900 .88rem/1 Poppins, system-ui, sans-serif !important;
  text-decoration:none !important;
  border:1px solid rgba(255,138,29,.32) !important;
  cursor:pointer !important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}
body.luly-profile-page .luly-order-detail-trigger,
body.luly-profile-page .luly-mini-details,
.luly-modal-primary,
.detail-action-row .ops-primary-action{
  background:linear-gradient(135deg,#ff8a1d,#ff4a00) !important;
  color:#160905 !important;
  box-shadow:0 14px 34px rgba(255,90,0,.22) !important;
  border:0 !important;
}
body.luly-profile-page .luly-order-page-link,
.luly-modal-secondary,
.detail-action-row .ops-secondary-action{
  background:rgba(255,122,24,.08) !important;
  color:#ffbd7e !important;
}
body.luly-profile-page .luly-order-detail-trigger:hover,
body.luly-profile-page .luly-order-page-link:hover,
body.luly-profile-page .luly-mini-details:hover,
.detail-action-row a:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 18px 40px rgba(255,90,0,.18) !important;
}
body.luly-profile-page .clean-orders-list article{
  grid-template-columns:16px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:.85rem !important;
}
body.luly-profile-page .clean-orders-list article > em{display:none !important;}
body.luly-profile-page .active-stage-card{padding-bottom:1.1rem !important;}

.luly-order-modal.is-open{
  background:rgba(8,5,3,.38) !important;
  backdrop-filter:blur(1.5px) saturate(106%) !important;
  -webkit-backdrop-filter:blur(1.5px) saturate(106%) !important;
}
.luly-order-modal-backdrop{
  background:rgba(8,5,3,.24) !important;
  backdrop-filter:blur(1px) !important;
  -webkit-backdrop-filter:blur(1px) !important;
}
.luly-profile-order-modal .luly-order-modal-card,
.luly-order-modal.is-open .luly-order-modal-card{
  width:min(100%, 860px) !important;
  max-height:min(88vh, 760px) !important;
  border-radius:30px !important;
}
.luly-order-modal-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.luly-modal-timeline{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.luly-order-modal-grid article,
.luly-modal-timeline div{background:rgba(0,0,0,.28) !important;}

.detail-main-v2{padding-top:0 !important;}
.detail-hero-v2{padding-top:clamp(7rem, 11vw, 9rem) !important;padding-bottom:1.5rem !important;}
.detail-hero-card{
  padding:clamp(1.35rem, 3vw, 2.25rem) !important;
  border-radius:34px !important;
  border:1px solid rgba(255,138,29,.28) !important;
  background:
    radial-gradient(circle at 10% -10%, rgba(255,122,24,.26), transparent 22rem),
    linear-gradient(145deg, rgba(30,18,10,.95), rgba(8,6,5,.96)) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.detail-kicker-row{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:1rem !important;
  flex-wrap:wrap !important;
  margin-bottom:1rem !important;
}
.detail-kicker-row > strong{
  display:inline-flex !important;
  padding:.55rem .85rem !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#ff8a1d,#ff4a00) !important;
  color:#160905 !important;
  font-weight:950 !important;
}
.detail-title-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(220px,280px) !important;
  gap:1.2rem !important;
  align-items:end !important;
}
.detail-title-grid h1{
  margin:0 0 .6rem !important;
  color:#fff7ef !important;
  font-size:clamp(3rem, 8vw, 6.4rem) !important;
  line-height:.88 !important;
  letter-spacing:-.075em !important;
}
.detail-title-grid p{max-width:720px !important;margin:0 !important;color:rgba(255,247,238,.7) !important;line-height:1.65 !important;}
.detail-id-card{
  padding:1rem !important;
  border:1px solid rgba(255,181,107,.16) !important;
  border-radius:24px !important;
  background:rgba(0,0,0,.22) !important;
}
.detail-id-card span,.detail-id-card small{display:block;color:rgba(255,247,238,.56) !important;font-weight:850 !important;font-size:.78rem !important;}
.detail-id-card strong{display:block;margin:.35rem 0;color:#fff7ef !important;font-size:1.15rem !important;overflow-wrap:anywhere !important;}
.detail-action-row{margin-top:1.35rem !important;}
.detail-dashboard-v2{padding-top:0 !important;}
.detail-layout-v2{
  display:grid !important;
  grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr) !important;
  gap:1rem !important;
  align-items:start !important;
}
.detail-overview-panel,
.detail-side-v2 .ops-panel,
.luly-order-live-grid .ops-panel{
  border-radius:30px !important;
  border:1px solid rgba(255,138,29,.22) !important;
  background:linear-gradient(145deg, rgba(255,255,255,.065), rgba(0,0,0,.22)) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
.detail-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:.85rem !important;}
.detail-summary-grid .backend-card{border-radius:22px !important;background:rgba(0,0,0,.22) !important;border-color:rgba(255,181,107,.16) !important;}
.detail-summary-grid .backend-card h3{font-size:1.1rem !important;line-height:1.2 !important;letter-spacing:-.035em !important;color:#fff8ef !important;}
.detail-summary-grid .backend-card p{color:rgba(255,247,238,.64) !important;line-height:1.55 !important;}
.detail-brief-box{margin-top:1rem !important;border-radius:24px !important;background:rgba(0,0,0,.24) !important;}
.detail-side-v2{display:grid !important;gap:1rem !important;}
.compact-detail-flow{display:grid !important;gap:.65rem !important;}
.compact-detail-flow div{min-height:auto !important;}
.detail-link-list{display:grid !important;gap:.7rem !important;}
.detail-link-list a{
  display:grid !important;
  gap:.15rem !important;
  padding:.9rem 1rem !important;
  border:1px solid rgba(255,181,107,.16) !important;
  border-radius:20px !important;
  background:rgba(0,0,0,.2) !important;
  text-decoration:none !important;
}
.detail-link-list strong{color:#fff7ef !important;font-weight:950 !important;}
.detail-link-list span{color:rgba(255,247,238,.6) !important;font-size:.85rem !important;}
.luly-order-live-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1rem !important;
  margin-top:1rem !important;
}
.luly-order-live-list{display:grid !important;gap:.7rem !important;}
.luly-order-live-item{padding:.9rem 1rem !important;border-radius:18px !important;background:rgba(0,0,0,.22) !important;border:1px solid rgba(255,181,107,.13) !important;}
.luly-comment-form select,
.luly-comment-form textarea{border-radius:16px !important;background:rgba(0,0,0,.38) !important;border:1px solid rgba(255,138,29,.22) !important;color:#fff7ef !important;}

@media(max-width: 991.98px){
  .detail-title-grid,
  .detail-layout-v2,
  .luly-order-live-grid{grid-template-columns:1fr !important;}
  .detail-summary-grid{grid-template-columns:1fr !important;}
}
@media(max-width: 760px){
  body.luly-profile-page .luly-email-verification-card{grid-template-columns:1fr !important;}
  body.luly-profile-page .luly-email-verification-card .admin-mvp-button{width:100% !important;}
  body.luly-profile-page .clean-orders-list article{grid-template-columns:16px 1fr !important;}
  body.luly-profile-page .clean-orders-list article .luly-mini-details{grid-column:2 !important;justify-self:start !important;}
  .luly-order-modal-grid,.luly-modal-timeline{grid-template-columns:1fr !important;}
  .detail-title-grid h1{font-size:clamp(2.5rem, 14vw, 4.4rem) !important;}
}

/* === LULY v7 profile layout fixes === */
body.luly-profile-page .client-account-settings-panel .luly-account-form-card,
body.luly-profile-page .client-account-settings-panel form.admin-mvp-form{
  grid-template-columns:minmax(0,1fr) !important;
  align-items:stretch !important;
}
body.luly-profile-page .client-account-settings-panel .luly-form-card-head{
  max-width:760px !important;
}
body.luly-profile-page .client-account-settings-panel .luly-field-grid.three{
  width:100% !important;
  grid-template-columns:repeat(3, minmax(185px, 1fr)) !important;
  align-items:end !important;
}
body.luly-profile-page .client-account-settings-panel .luly-field input{
  min-width:0 !important;
  width:100% !important;
}
body.luly-profile-page .client-account-settings-panel .luly-form-actions{
  justify-content:flex-start !important;
  margin-top:.1rem !important;
}
body.luly-profile-page .simple-active-order .static-active-actions{
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:.62rem !important;
  margin-top:1.55rem !important;
}
body.luly-profile-page .simple-active-order .static-active-actions .luly-order-page-link{
  margin-top:.05rem !important;
}
body.luly-profile-page .profile-simple-footer{display:none !important;}
body.luly-profile-page .luly-footer{
  margin-top:0 !important;
}
body.auth-support-modal-open{
  overflow:hidden !important;
}
body.auth-support-modal-open::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:9990;
  background:rgba(6,4,3,.42);
  backdrop-filter:blur(1px) saturate(105%);
  -webkit-backdrop-filter:blur(1px) saturate(105%);
}
body .auth-support-panel{
  position:fixed;
  top:50%;
  left:50%;
  width:min(92vw, 560px);
  max-height:min(88vh, 720px);
  overflow-y:auto;
  margin:0;
  padding:clamp(1.15rem, 2.6vw, 1.7rem);
  border:1px solid rgba(255,122,24,.36);
  border-radius:28px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,122,24,.18), transparent 18rem),
    linear-gradient(160deg, rgba(24,15,10,.985), rgba(8,6,5,.99));
  box-shadow:0 28px 80px rgba(0,0,0,.54), inset 0 1px 0 rgba(255,255,255,.055);
  transform:translate(-50%, -48%) scale(.96);
  opacity:0;
  pointer-events:none;
  z-index:9991;
}
body .auth-support-panel.is-open,
body .auth-support-panel:target{
  display:block !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translate(-50%, -50%) scale(1) !important;
}
body .auth-support-panel h3{
  padding-right:46px;
  font-size:clamp(1.75rem, 4vw, 2.45rem);
  line-height:1.04;
  letter-spacing:-.06em;
}
body .auth-support-panel .login-muted{
  margin:.15rem 0 .95rem;
  line-height:1.55;
  color:rgba(255,247,238,.72);
}
body .auth-support-panel .portal-form + .portal-form{
  margin-top:.95rem !important;
  padding-top:.95rem;
  border-top:1px solid rgba(255,122,24,.16);
}
body .auth-support-panel .form-label{
  font-weight:850;
  color:rgba(255,242,225,.82);
}
body .auth-support-panel .form-control{
  min-height:46px;
  border-radius:14px;
}
@media(max-width: 900px){
  body.luly-profile-page .client-account-settings-panel .luly-field-grid.three{
    grid-template-columns:1fr !important;
  }
}
@media(max-width: 520px){
  body .auth-support-panel{
    width:calc(100vw - 24px);
    max-height:calc(100vh - 32px);
    padding:18px;
    border-radius:24px;
  }
}

/* === v8 requested fixes: sharp popups, blurred page background, active-order actions row === */
body.auth-support-modal-open,
body.luly-order-modal-open{
  overflow:hidden !important;
}

body.auth-support-modal-open::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:10040 !important;
  pointer-events:auto !important;
  background:rgba(6,4,3,.64) !important;
  backdrop-filter:blur(16px) saturate(118%) !important;
  -webkit-backdrop-filter:blur(16px) saturate(118%) !important;
}

body .auth-support-panel{
  z-index:10041 !important;
  isolation:isolate !important;
  filter:none !important;
  -webkit-filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,122,24,.23), transparent 18rem),
    radial-gradient(circle at 100% 8%, rgba(255,190,116,.12), transparent 16rem),
    linear-gradient(160deg, rgba(24,15,10,1), rgba(8,6,5,1)) !important;
  box-shadow:0 34px 110px rgba(0,0,0,.68), inset 0 1px 0 rgba(255,255,255,.06) !important;
  transform:translate3d(-50%, -48%, 0) scale(.96) !important;
  will-change:transform, opacity !important;
}

body .auth-support-panel.is-open,
body .auth-support-panel:target{
  transform:translate3d(-50%, -50%, 0) scale(1) !important;
}

body .auth-support-panel *,
.luly-order-modal-card *,
.luly-lightbox-card *{
  filter:none !important;
  -webkit-filter:none !important;
}

body .auth-support-panel .form-control{
  background:rgba(17,12,10,.96) !important;
  border-color:rgba(255,138,29,.32) !important;
  color:#fff7ef !important;
}

.luly-order-modal.is-open,
.luly-lightbox.is-open{
  background:rgba(8,5,3,.56) !important;
  backdrop-filter:blur(16px) saturate(118%) !important;
  -webkit-backdrop-filter:blur(16px) saturate(118%) !important;
}

.luly-order-modal-backdrop{
  background:rgba(8,5,3,.18) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.luly-order-modal-card,
.luly-lightbox-card{
  isolation:isolate !important;
  filter:none !important;
  -webkit-filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transform:translateZ(0) !important;
}

body.luly-profile-page .simple-active-order .static-active-actions{
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:.7rem !important;
  margin-top:1.55rem !important;
}

body.luly-profile-page .simple-active-order .static-active-actions .luly-order-detail-trigger,
body.luly-profile-page .simple-active-order .static-active-actions .luly-order-page-link{
  margin-top:0 !important;
}

@media(max-width: 420px){
  body.luly-profile-page .simple-active-order .static-active-actions .luly-order-detail-trigger,
  body.luly-profile-page .simple-active-order .static-active-actions .luly-order-page-link{
    width:100% !important;
  }
}


/* === LULY launch polish: trust, deliverables, payment clarity === */
.luly-proof-strip,.luly-deliverables-strip,.order-deliverables-table,.payment-methods-section,.contact-channels-section,.portfolio-proof{position:relative;overflow:hidden;}
.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.proof-card{border:1px solid rgba(255,181,107,.18);background:linear-gradient(145deg,rgba(255,106,0,.12),rgba(12,12,14,.78));border-radius:24px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.24);min-height:100%;}
.proof-card span{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:38px;border-radius:999px;background:rgba(255,106,0,.14);border:1px solid rgba(255,181,107,.26);color:#ffb56b;font-weight:900;margin-bottom:16px;}
.proof-card h3{font-size:1.05rem;color:#fff7ee;margin-bottom:8px;letter-spacing:-.03em;}
.proof-card p{color:rgba(255,247,238,.68);margin:0;line-height:1.6;}
.deliverable-list{display:grid;gap:14px;}
.deliverable-list div{padding:18px 20px;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid rgba(255,181,107,.16);display:grid;grid-template-columns:170px 1fr;gap:12px;align-items:start;}
.deliverable-list strong{color:#fff7ee;}
.deliverable-list span{color:rgba(255,247,238,.7);line-height:1.55;}
.deliverable-table{border:1px solid rgba(255,181,107,.18);border-radius:28px;overflow:hidden;background:rgba(10,10,13,.74);box-shadow:0 24px 80px rgba(0,0,0,.28);}
.deliverable-row{display:grid;grid-template-columns:1.1fr 1.6fr 1fr 1.3fr;gap:0;border-top:1px solid rgba(255,255,255,.07);}
.deliverable-row:first-child{border-top:0;}
.deliverable-row span{padding:16px 18px;color:rgba(255,247,238,.72);border-left:1px solid rgba(255,255,255,.07);line-height:1.45;}
.deliverable-row span:first-child{border-left:0;color:#fff7ee;font-weight:800;}
.deliverable-head{background:rgba(255,106,0,.14);}
.deliverable-head span{color:#ffbd7c!important;text-transform:uppercase;font-size:.78rem;letter-spacing:.08em;font-weight:900!important;}
.deliverable-footnote{margin:16px 0 0;color:rgba(255,247,238,.62);text-align:center;}
.payment-method-grid,.channel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.payment-method-card,.channel-card{display:block;text-decoration:none;color:inherit;border:1px solid rgba(255,181,107,.18);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,106,0,.09));border-radius:24px;padding:22px;min-height:100%;transition:transform .2s ease,border-color .2s ease,background .2s ease;}
.payment-method-card:hover,.channel-card:hover{transform:translateY(-4px);border-color:rgba(255,181,107,.35);background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,106,0,.14));}
.payment-method-card i,.channel-card i{font-size:1.35rem;color:#ff9442;margin-bottom:14px;display:inline-block;}
.payment-method-card h3,.channel-card h3{font-size:1.05rem;color:#fff7ee;margin-bottom:8px;letter-spacing:-.03em;}
.payment-method-card p,.channel-card p{color:rgba(255,247,238,.68);line-height:1.55;margin-bottom:12px;}
.channel-card strong{color:#ffbd7c;overflow-wrap:anywhere;}
.portfolio-live-words{color:rgba(255,247,238,.64);font-weight:800;letter-spacing:.02em;margin-bottom:12px!important;}
.policy-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.policy-card p{line-height:1.62;}
@media (max-width:1199px){.proof-grid,.payment-method-grid,.channel-grid,.policy-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.deliverable-row{grid-template-columns:1fr 1.4fr;}.deliverable-row span:nth-child(3){border-left:0;}.deliverable-row span{border-top:1px solid rgba(255,255,255,.05);}.deliverable-head span{border-top:0;}}
@media (max-width:767px){.proof-grid,.payment-method-grid,.channel-grid,.policy-grid{grid-template-columns:1fr;}.deliverable-list div{grid-template-columns:1fr;}.deliverable-row{grid-template-columns:1fr;}.deliverable-row span{border-left:0!important}.deliverable-head{display:none;}}

/* === LULY v9 requested frontend polish: signup role cleanup, centered copy, icon fallbacks, order detail typography === */
body.luly-login-page.portal-signup-active .login-role-picker,
body.luly-login-page .login-role-picker[hidden] {
  display: none !important;
}
body.luly-login-page .demo-account-note {
  width: min(100%, 470px) !important;
  margin: .75rem auto 1.05rem !important;
  padding: .72rem .9rem !important;
  border: 1px solid rgba(255, 181, 107, .16) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, .035) !important;
  color: rgba(255, 247, 238, .66) !important;
  text-align: center !important;
  font-size: .82rem !important;
  line-height: 1.55 !important;
}
body.luly-login-page.portal-signup-active .demo-account-note {
  margin-top: .65rem !important;
}

/* Font Awesome files are not bundled in the static ZIP, so these local fallbacks keep every icon visible. */
.fa,
.fas,
.far,
.fab,
i[class*="fa-"] {
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  speak: never;
}
.fa::before,
.fas::before,
.far::before,
.fab::before,
i[class*="fa-"]::before {
  display: inline-block !important;
  text-align: center !important;
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif !important;
}
.fa-youtube::before { content: "▶" !important; }
.fa-image::before { content: "▣" !important; }
.fa-images::before { content: "▧" !important; }
.fa-bullhorn::before { content: "✦" !important; }
.fa-layer-group::before { content: "▰" !important; }
.fa-paper-plane::before { content: "➤" !important; }
.fa-envelope::before { content: "✉" !important; }
.fa-discord::before { content: "◈" !important; }
.fa-question-circle::before { content: "?" !important; }
.fa-file-export::before { content: "↗" !important; }
.fa-sync-alt::before { content: "↻" !important; }
.fa-comments::before { content: "☰" !important; }
.fa-file-invoice::before { content: "▤" !important; }
.fa-link::before { content: "⌁" !important; }
.fa-download::before { content: "↓" !important; }
.fa-receipt::before { content: "▦" !important; }
.fa-paypal::before { content: "P" !important; }
.fa-gift::before { content: "✶" !important; }
.fa-lock::before { content: "⌾" !important; }
.fa-user-shield::before { content: "♜" !important; }
.fa-tasks::before { content: "✓" !important; }

.section-heading,
.order-intro,
.policy-hero,
.luly-delivery-clarity .section-heading,
.payment-methods-section .section-heading,
.contact-channels-section .section-heading,
.luly-contact-routing .section-heading,
.order-deliverables-table .section-heading,
.launch-process-section .section-heading,
.package-section .section-heading,
.portfolio-proof .section-heading,
.luly-proof-strip .section-heading,
.luly-deliverables-strip .section-heading {
  text-align: center !important;
}
.section-heading .eyebrow,
.order-intro .eyebrow,
.policy-hero .eyebrow,
.contact-channels-section .eyebrow,
.luly-contact-routing .eyebrow,
.payment-methods-section .eyebrow,
.order-deliverables-table .eyebrow,
.launch-process-section .eyebrow,
.package-section .eyebrow {
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}
.section-heading p,
.order-intro p,
.policy-hero p,
.luly-section-lead {
  margin-left: auto !important;
  margin-right: auto !important;
}

.luly-service-card,
.delivery-card,
.payment-card,
.payment-method-card,
.channel-card,
.contact-route-card,
.launch-process-card,
.proof-card,
.policy-card,
.faq-card,
.mini-info-card,
.trust-card,
.process-card,
.stat-card,
.brief-choice-card,
.brief-checklist-card,
.brief-item,
.flow-step,
.review-card,
.insight-card {
  text-align: center !important;
}
.luly-service-card i,
.delivery-card i,
.payment-card i,
.payment-method-card i,
.channel-card i,
.contact-route-card i,
.launch-process-card strong,
.proof-card span,
.trust-card strong,
.process-card span,
.stat-card strong,
.brief-item span,
.flow-step span,
.mini-info-card .eyebrow,
.faq-card .eyebrow {
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}
.luly-service-card p,
.delivery-card p,
.payment-card p,
.payment-method-card p,
.channel-card p,
.contact-route-card p,
.launch-process-card p,
.proof-card p,
.policy-card p,
.faq-card p,
.mini-info-card p,
.trust-card p,
.process-card p,
.stat-card p,
.brief-item p,
.flow-step p,
.review-card p,
.insight-card p {
  margin-left: auto !important;
  margin-right: auto !important;
}
.payment-card i,
.payment-method-card i,
.channel-card i,
.contact-route-card i,
.delivery-card i {
  display: inline-grid !important;
  place-items: center !important;
  width: 3rem !important;
  height: 3rem !important;
  margin-bottom: .95rem !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #ff8a1d, #ff4a00) !important;
  color: #180905 !important;
  box-shadow: 0 0 30px rgba(255, 106, 0, .28) !important;
}
.payment-card i { width: 2.7rem !important; height: 2.7rem !important; }

/* Typographic tuning for new order details and order modals. */
.detail-hero-v2 { padding-top: clamp(7.2rem, 9vw, 9.2rem) !important; }
.detail-hero-card {
  text-align: center !important;
  overflow: hidden !important;
}
.detail-kicker-row {
  justify-content: center !important;
}
.detail-title-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  place-items: center !important;
  text-align: center !important;
  gap: 1rem !important;
}
.detail-title-grid h1,
body.order-detail-page .ops-title-block h1 {
  max-width: 16ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: clamp(2.55rem, 7vw, 5.7rem) !important;
  line-height: .96 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}
.detail-title-grid p {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-wrap: balance;
}
.detail-id-card {
  width: min(100%, 340px) !important;
  margin-inline: auto !important;
  text-align: center !important;
}
.detail-action-row,
body.order-detail-page .ops-hero-actions {
  justify-content: center !important;
}
.detail-layout-v2 {
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr) !important;
}
.detail-overview-panel .ops-panel-head,
.detail-side-v2 .ops-panel-head,
.luly-order-live-grid .ops-panel-head {
  text-align: center !important;
  justify-content: center !important;
}
.detail-overview-panel .ops-panel-head .eyebrow,
.detail-side-v2 .ops-panel-head .eyebrow,
.luly-order-live-grid .ops-panel-head .eyebrow {
  margin-inline: auto !important;
}
.detail-summary-grid .backend-card {
  text-align: center !important;
  align-items: center !important;
  padding: 1.1rem !important;
}
.detail-summary-grid .backend-card .eyebrow {
  margin-inline: auto !important;
}
.detail-summary-grid .backend-card h3 {
  margin: .55rem 0 .35rem !important;
}
.detail-brief-box,
.luly-order-brief-box.detail-brief-box {
  text-align: left !important;
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.65 !important;
}
.compact-detail-flow div {
  grid-template-columns: 48px minmax(0, 1fr) !important;
  text-align: left !important;
}
.detail-link-list a {
  text-align: center !important;
}

.luly-order-modal-card {
  text-align: center !important;
  width: min(92vw, 900px) !important;
}
.luly-order-modal-card h2 {
  max-width: 18ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: clamp(1.8rem, 5vw, 3rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}
.luly-order-detail-grid p {
  text-align: center !important;
  border-color: rgba(255, 181, 107, .16) !important;
  background: rgba(0, 0, 0, .18) !important;
}
.luly-order-detail-grid span,
.luly-order-brief-box span {
  color: rgba(255, 181, 107, .72) !important;
}
.luly-order-brief-box {
  text-align: left !important;
}
.luly-order-flow-mini {
  justify-content: center !important;
  text-align: center !important;
}
.luly-backend-note {
  max-width: 62ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
  color: rgba(255, 247, 238, .64) !important;
  line-height: 1.6 !important;
}

@media (max-width: 991.98px) {
  .detail-layout-v2,
  .detail-summary-grid,
  .luly-order-detail-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 575.98px) {
  body.luly-login-page .demo-account-note { font-size: .78rem !important; }
  .detail-title-grid h1 { font-size: clamp(2.4rem, 13vw, 4.2rem) !important; }
  .luly-order-flow-mini { grid-template-columns: 1fr !important; gap: .45rem !important; }
  .luly-order-flow-mini i { display: none !important; }
}

/* === LULY v10 correction pass: remove quick access, fix optical centering, focused order details === */
body.luly-login-page .login-role-picker,
body.luly-login-page .demo-account-note {
  display: none !important;
}
body.luly-login-page .portal-tabs {
  margin-top: 1.15rem !important;
}

/* Make visible section headers genuinely centered, not just roughly aligned by Bootstrap rows. */
.section-heading,
.order-intro,
.policy-hero,
.portfolio-hero .portfolio-typing-inner,
.contact-hero .contact-hero-copy,
.luly-delivery-clarity .section-heading,
.payment-methods-section .section-heading,
.contact-channels-section .section-heading,
.luly-contact-routing .section-heading,
.order-deliverables-table .section-heading,
.launch-process-section .section-heading,
.package-section .section-heading,
.portfolio-proof .section-heading,
.luly-proof-strip .section-heading,
.luly-deliverables-strip .section-heading,
.luly-motion-lab .section-heading,
.luly-transform-lab .section-heading {
  width: min(100%, 920px) !important;
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
.section-heading .eyebrow,
.order-intro .eyebrow,
.policy-hero .eyebrow,
.portfolio-hero .portfolio-kicker,
.contact-hero .eyebrow,
.luly-motion-lab .eyebrow,
.luly-transform-lab .eyebrow {
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}
.section-heading h1,
.section-heading h2,
.order-intro h1,
.policy-hero h1,
.portfolio-hero h1,
.contact-hero h1,
.footer-cta h2,
.luly-motion-lab .section-heading h2,
.luly-transform-lab .section-heading h2 {
  width: min(100%, 860px) !important;
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  text-wrap: balance;
  letter-spacing: -0.055em !important;
}
.section-heading p,
.order-intro p,
.policy-hero p,
.portfolio-hero p,
.contact-hero p,
.luly-section-lead,
.footer-cta p {
  width: min(100%, 760px) !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  text-wrap: balance;
}

/* Rows that used one-sided copy now keep their visual layout but center their own headings/copy. */
.luly-wow-stack .row > [class*="col"]:first-child,
.luly-design-ladder .row > [class*="col"]:first-child,
.luly-transform-lab .row > [class*="col"]:first-child,
.luly-delivery-clarity .row > [class*="col"]:first-child,
.payment-methods-section .row > [class*="col"]:first-child,
.contact-channels-section .row > [class*="col"]:first-child,
.brand-cta-inner > div:first-child,
.order-form-copy {
  text-align: center !important;
}
.luly-wow-stack .row > [class*="col"]:first-child .eyebrow,
.luly-design-ladder .row > [class*="col"]:first-child .eyebrow,
.luly-transform-lab .row > [class*="col"]:first-child .eyebrow,
.luly-delivery-clarity .row > [class*="col"]:first-child .eyebrow,
.payment-methods-section .row > [class*="col"]:first-child .eyebrow,
.contact-channels-section .row > [class*="col"]:first-child .eyebrow,
.order-form-copy .eyebrow {
  margin-left: auto !important;
  margin-right: auto !important;
}
.luly-wow-stack .row > [class*="col"]:first-child h2,
.luly-design-ladder .row > [class*="col"]:first-child h2,
.luly-transform-lab .row > [class*="col"]:first-child h2,
.luly-delivery-clarity .row > [class*="col"]:first-child h2,
.payment-methods-section .row > [class*="col"]:first-child h2,
.contact-channels-section .row > [class*="col"]:first-child h2,
.order-form-copy h2 {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  text-wrap: balance;
  letter-spacing: -0.052em !important;
}
.luly-wow-stack .stack-points,
.luly-design-ladder .ladder-mini-points,
.order-note-list,
.brand-cta-actions,
.hero-actions,
.portfolio-typing-actions {
  justify-content: center !important;
}

/* Center card text and badges without breaking form fields or dashboard tables. */
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .luly-service-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .process-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .trust-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .proof-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .delivery-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .payment-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .payment-method-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .channel-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .contact-route-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .launch-process-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .faq-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .mini-info-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .brief-item,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .flow-step,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .review-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .insight-card,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .policy-card {
  text-align: center !important;
}
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .luly-service-card i,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .process-card span,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .proof-card span,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .trust-card strong,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .flow-step strong,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .brief-item strong,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .payment-card i,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .payment-method-card i,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .channel-card i,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .contact-route-card i,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .delivery-card i,
body:not(.admin-dashboard-page):not(.worker-dashboard-page):not(.luly-profile-page) .eyebrow {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Order details modal: fully centered title, label, status, timeline and actions. */
.luly-order-modal.is-open {
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(.8rem, 2vw, 1.4rem) !important;
}
.luly-profile-order-modal .luly-order-modal-card,
.luly-order-modal.is-open .luly-order-modal-card {
  width: min(94vw, 920px) !important;
  max-height: min(90vh, 780px) !important;
  margin: auto !important;
  padding: clamp(1.35rem, 3vw, 2.35rem) !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.luly-order-modal-head {
  width: min(100%, 820px) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
}
.luly-order-modal-head .eyebrow,
.luly-order-modal-section .eyebrow {
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}
.luly-order-modal-head h2 {
  width: min(100%, 680px) !important;
  max-width: 680px !important;
  margin: .62rem auto .65rem !important;
  text-align: center !important;
  line-height: 1 !important;
  letter-spacing: -0.04em !important;
  text-wrap: balance;
}
.luly-order-modal-head p {
  width: min(100%, 820px) !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  text-align: center !important;
  text-wrap: balance;
}
.luly-order-modal-status,
.luly-order-modal-section,
.luly-order-modal-grid,
.luly-modal-timeline,
.luly-order-modal-actions {
  width: 100% !important;
}
.luly-order-modal-status {
  display: flex !important;
  justify-content: center !important;
}
.luly-order-modal-grid article,
.luly-modal-timeline div {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}
.luly-order-modal-actions {
  justify-content: center !important;
  align-items: center !important;
}
.luly-order-modal-close {
  z-index: 3 !important;
}

/* Focused standalone order details page. */
.focused-order-details .detail-hero-card,
body.order-detail-page .detail-hero-card {
  text-align: center !important;
}
.focused-order-details .detail-title-grid,
body.order-detail-page .detail-title-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  justify-items: center !important;
  align-items: center !important;
  text-align: center !important;
}
.focused-order-details .detail-title-copy,
.focused-order-details .detail-title-copy p,
body.order-detail-page .detail-title-grid > div:first-child,
body.order-detail-page .detail-title-grid p {
  width: min(100%, 800px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
body.order-detail-page .detail-kicker-row {
  justify-content: center !important;
  text-align: center !important;
}
body.order-detail-page .detail-kicker-row .eyebrow,
body.order-detail-page .detail-kicker-row > strong {
  margin-left: auto !important;
  margin-right: auto !important;
}
body.order-detail-page .detail-title-grid h1 {
  max-width: 14ch !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
}
body.order-detail-page .detail-action-row {
  justify-content: center !important;
}
.focused-detail-layout {
  grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr) !important;
}
.detail-info-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .85rem !important;
  margin-top: 1rem !important;
}
.detail-info-grid article,
.detail-reference-box {
  padding: 1rem !important;
  border: 1px solid rgba(255,181,107,.16) !important;
  border-radius: 22px !important;
  background: rgba(0,0,0,.22) !important;
}
.detail-info-grid article {
  text-align: center !important;
}
.detail-info-grid span,
.detail-reference-box span {
  display: block !important;
  color: rgba(255,181,107,.72) !important;
  font-size: .76rem !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  margin-bottom: .45rem !important;
}
.detail-info-grid strong {
  display: block !important;
  color: #fff8ef !important;
  font-size: 1.08rem !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
  overflow-wrap: anywhere !important;
}
.detail-info-grid p,
.detail-reference-box p {
  margin: .35rem 0 0 !important;
  color: rgba(255,247,238,.64) !important;
  line-height: 1.55 !important;
}
.detail-reference-box {
  margin-top: 1rem !important;
  text-align: left !important;
}
body.order-detail-page .ops-panel-head.compact {
  justify-content: center !important;
  text-align: center !important;
}
body.order-detail-page .ops-panel-head.compact > div {
  width: 100% !important;
}
body.order-detail-page .ops-panel-head h2,
body.order-detail-page .ops-panel-head p {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
body.order-detail-page .luly-order-brief-box.detail-brief-box {
  text-align: left !important;
}
body.order-detail-page .order-notes-list a {
  cursor: pointer !important;
}
@media (max-width: 991.98px) {
  .focused-detail-layout,
  .detail-info-grid,
  .luly-order-modal-grid,
  .luly-modal-timeline {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 575.98px) {
  .luly-order-modal-close {
    top: .75rem !important;
    right: .75rem !important;
    width: 38px !important;
    height: 38px !important;
  }
  .luly-order-modal-head h2 {
    font-size: clamp(2rem, 12vw, 3.2rem) !important;
  }
  body.order-detail-page .detail-title-grid h1 {
    font-size: clamp(2.35rem, 12vw, 4rem) !important;
  }
}


/* === LULY v11 correction: keep Client / Worker / Admin only on Login, remove quick access text, restore real icons === */
body.luly-login-page .demo-account-note {
  display: none !important;
}
body.luly-login-page.portal-login-active .login-role-picker,
body.luly-login-page:not(.portal-signup-active) .login-role-picker.login-only-role-picker {
  display: flex !important;
  visibility: visible !important;
}
body.luly-login-page.portal-signup-active .login-role-picker,
body.luly-login-page .login-role-picker[hidden] {
  display: none !important;
  visibility: hidden !important;
}
body.luly-login-page .portal-tabs {
  margin-bottom: 1rem !important;
}
body.luly-login-page .login-role-picker {
  width: min(100%, 470px) !important;
  margin: 0 auto 1.08rem !important;
  justify-content: center !important;
  text-align: center !important;
}
body.luly-login-page .login-role-label {
  white-space: nowrap !important;
}
body.luly-login-page .role-checker-row {
  justify-content: center !important;
}

/* Real Font Awesome is loaded from CDN in the HTML; these rules undo the previous text fallback. */
.fa,
.fas,
.far,
.fab,
i[class*="fa-"] {
  display: inline-block !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-rendering: auto !important;
  line-height: 1 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}
.fas,
.fa,
i.fas[class*="fa-"] {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
}
.far,
i.far[class*="fa-"] {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 400 !important;
}
.fab,
i.fab[class*="fa-"] {
  font-family: "Font Awesome 5 Brands" !important;
  font-weight: 400 !important;
}
.fa-youtube::before { content: "\f167" !important; }
.fa-image::before { content: "\f03e" !important; }
.fa-images::before { content: "\f302" !important; }
.fa-bullhorn::before { content: "\f0a1" !important; }
.fa-layer-group::before { content: "\f5fd" !important; }
.fa-paper-plane::before { content: "\f1d8" !important; }
.fa-envelope::before { content: "\f0e0" !important; }
.fa-discord::before { content: "\f392" !important; }
.fa-question-circle::before { content: "\f059" !important; }
.fa-file-export::before { content: "\f56e" !important; }
.fa-sync-alt::before { content: "\f2f1" !important; }
.fa-comments::before { content: "\f086" !important; }
.fa-file-invoice::before { content: "\f570" !important; }
.fa-link::before { content: "\f0c1" !important; }
.fa-download::before { content: "\f019" !important; }
.fa-receipt::before { content: "\f543" !important; }
.fa-paypal::before { content: "\f1ed" !important; }
.fa-gift::before { content: "\f06b" !important; }
.fa-lock::before { content: "\f023" !important; }
.fa-user-shield::before { content: "\f505" !important; }
.fa-tasks::before { content: "\f0ae" !important; }
.fa-eye::before { content: "\f06e" !important; }
.fa-flask::before { content: "\f0c3" !important; }
.fa-magic::before { content: "\f0d0" !important; }
.fa-chevron-left::before { content: "\f053" !important; }
.fa-chevron-right::before { content: "\f054" !important; }
.fa-bolt::before { content: "\f0e7" !important; }
.fa-check-circle::before { content: "\f058" !important; }
.fa-comment-dots::before { content: "\f4ad" !important; }
.fa-fire::before { content: "\f06d" !important; }
.fa-medal::before { content: "\f5a2" !important; }
.fa-plus::before { content: "\f067" !important; }
.fa-sign-out-alt::before { content: "\f2f5" !important; }
.fa-star::before { content: "\f005" !important; }

@media (max-width: 575.98px) {
  body.luly-login-page .login-role-picker {
    align-items: stretch !important;
  }
  body.luly-login-page .role-checker-row {
    width: 100% !important;
  }
}


/* v12 admin full workspace restore */
body.admin-dashboard-page .admin-mvp-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:22px;
  margin-top:24px;
}
body.admin-dashboard-page .admin-mvp-two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
body.admin-dashboard-page .admin-tools-panel{
  overflow:hidden;
  position:relative;
}
body.admin-dashboard-page .admin-tools-panel::after{
  content:"";
  position:absolute;
  inset:auto -12% -48% 42%;
  width:420px;
  height:220px;
  background:radial-gradient(circle, rgba(255,106,0,.18), transparent 68%);
  pointer-events:none;
}
body.admin-dashboard-page .admin-quick-nav{
  display:grid;
  grid-template-columns:repeat(8,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
  position:relative;
  z-index:1;
}
body.admin-dashboard-page .admin-quick-nav a{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  border-radius:16px;
  border:1px solid rgba(255,122,24,.22);
  background:rgba(8,6,4,.62);
  color:#fff1e6;
  text-decoration:none;
  font-weight:850;
  font-size:.82rem;
  letter-spacing:-.01em;
  text-align:center;
}
body.admin-dashboard-page .admin-quick-nav a:hover{
  transform:translateY(-1px);
  border-color:rgba(255,122,24,.48);
  box-shadow:0 14px 34px rgba(255,92,0,.12);
}
body.admin-dashboard-page .admin-quick-nav i{
  color:#ff8a1d;
}
body.admin-dashboard-page .admin-mvp-list{
  display:grid;
  gap:14px;
}
body.admin-dashboard-page .admin-mvp-card{
  border:1px solid rgba(255,122,24,.14);
  border-radius:22px;
  padding:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
body.admin-dashboard-page .admin-mvp-card-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:12px;
}
body.admin-dashboard-page .admin-mvp-card-head strong,
body.admin-dashboard-page .admin-mvp-card strong{
  display:block;
  color:#fff5ea;
  font-size:1.02rem;
  font-weight:900;
}
body.admin-dashboard-page .admin-mvp-card-head span,
body.admin-dashboard-page .admin-mvp-card small,
body.admin-dashboard-page .admin-mvp-card span,
body.admin-dashboard-page .admin-mvp-card p{
  color:rgba(255,236,218,.68);
}
body.admin-dashboard-page .admin-mvp-form,
body.admin-dashboard-page .admin-mvp-fields{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
body.admin-dashboard-page .admin-mvp-form .full,
body.admin-dashboard-page .admin-mvp-fields .full{
  grid-column:1/-1;
}
body.admin-dashboard-page .admin-mvp-form label,
body.admin-dashboard-page .admin-mvp-fields label{
  display:grid;
  gap:7px;
  margin:0;
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:rgba(255,236,218,.68);
  font-weight:850;
}
body.admin-dashboard-page .admin-mvp-form input,
body.admin-dashboard-page .admin-mvp-form select,
body.admin-dashboard-page .admin-mvp-form textarea,
body.admin-dashboard-page .admin-mvp-fields input,
body.admin-dashboard-page .admin-mvp-fields select,
body.admin-dashboard-page .admin-mvp-fields textarea,
body.admin-dashboard-page .admin-mvp-card select{
  width:100%;
  border:1px solid rgba(255,122,24,.22);
  border-radius:14px;
  background:rgba(8,6,4,.78);
  color:#fff6ec;
  padding:10px 12px;
  outline:none;
}
body.admin-dashboard-page .admin-mvp-form textarea,
body.admin-dashboard-page .admin-mvp-fields textarea{
  min-height:74px;
  resize:vertical;
}
body.admin-dashboard-page .admin-mvp-form input:focus,
body.admin-dashboard-page .admin-mvp-form select:focus,
body.admin-dashboard-page .admin-mvp-form textarea:focus,
body.admin-dashboard-page .admin-mvp-fields input:focus,
body.admin-dashboard-page .admin-mvp-fields select:focus,
body.admin-dashboard-page .admin-mvp-fields textarea:focus{
  border-color:#ff8a1d;
  box-shadow:0 0 0 3px rgba(255,122,24,.12);
}
body.admin-dashboard-page .admin-mvp-actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-top:14px;
}
body.admin-dashboard-page .admin-mvp-actions.full{
  grid-column:1/-1;
}
body.admin-dashboard-page .admin-mvp-button{
  border:0;
  border-radius:999px;
  padding:10px 16px;
  background:linear-gradient(135deg,#ff8a1d,#ff4a00);
  color:#180900;
  font-weight:950;
  box-shadow:0 12px 28px rgba(255,89,0,.18);
}
body.admin-dashboard-page .admin-mvp-button:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 42px rgba(255,89,0,.25);
}
body.admin-dashboard-page .admin-mvp-button:disabled{
  opacity:.65;
  cursor:not-allowed;
}
body.admin-dashboard-page .admin-mvp-status{
  margin:0;
  color:rgba(255,236,218,.72);
  text-transform:none;
  letter-spacing:0;
  font-weight:700;
}
body.admin-dashboard-page .admin-mvp-analytics{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
}
body.admin-dashboard-page .analytics-mini-card{
  min-height:96px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  text-align:center;
}
body.admin-dashboard-page .analytics-mini-card strong{
  font-size:1.7rem;
  color:#ff8a1d;
}
body.admin-dashboard-page .analytics-mini-card span{
  font-size:.78rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
}
body.admin-dashboard-page .admin-empty-card{
  min-height:104px;
  display:grid;
  place-items:center;
  text-align:center;
  gap:6px;
}
body.admin-dashboard-page .admin-order-filters{
  margin:0 0 16px;
}
body.admin-dashboard-page .admin-mvp-mini-list{
  display:grid;
  gap:8px;
  margin-top:12px;
}
body.admin-dashboard-page .admin-mvp-mini-list p{
  margin:0;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.82);
}
@media (max-width: 1180px){
  body.admin-dashboard-page .admin-quick-nav{grid-template-columns:repeat(4,minmax(0,1fr));}
  body.admin-dashboard-page .admin-mvp-analytics{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width: 900px){
  body.admin-dashboard-page .admin-mvp-two,
  body.admin-dashboard-page .admin-mvp-form,
  body.admin-dashboard-page .admin-mvp-fields,
  body.admin-dashboard-page .admin-mvp-analytics{grid-template-columns:1fr;}
  body.admin-dashboard-page .admin-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 560px){
  body.admin-dashboard-page .admin-quick-nav{grid-template-columns:1fr;}
  body.admin-dashboard-page .admin-mvp-actions .ops-small-action,
  body.admin-dashboard-page .admin-mvp-button{width:100%; justify-content:center;}
}

/* === LULY v14 reliable icon fix ===
   The static Netlify ZIP does not ship Font Awesome webfont files, so some browsers showed
   private-use FontAwesome squares. These final rules replace every FA glyph used by the site
   with normal Unicode symbols that render without any external icon font. */
.fa,
.fas,
.far,
.fab,
i[class*="fa-"]{
  font-family: Arial, Helvetica, "Segoe UI Symbol", "Apple Color Emoji", "Segoe UI Emoji", sans-serif !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-rendering: auto !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}
.fa::before,
.fas::before,
.far::before,
.fab::before,
i[class*="fa-"]::before{
  display:inline-grid !important;
  place-items:center !important;
  font-family: Arial, Helvetica, "Segoe UI Symbol", "Apple Color Emoji", "Segoe UI Emoji", sans-serif !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align:center !important;
  content:"◆" !important;
}
.fa-youtube::before{content:"▶" !important;}
.fa-image::before{content:"▧" !important;}
.fa-images::before{content:"▧" !important;}
.fa-bullhorn::before{content:"⚑" !important;}
.fa-layer-group::before{content:"▰" !important;}
.fa-paper-plane::before{content:"➤" !important;}
.fa-envelope::before{content:"✉" !important;}
.fa-discord::before{content:"◈" !important;}
.fa-question-circle::before{content:"?" !important;}
.fa-file-export::before{content:"↗" !important;}
.fa-sync-alt::before{content:"↻" !important;}
.fa-comments::before{content:"☰" !important;}
.fa-file-invoice::before{content:"▤" !important;}
.fa-link::before{content:"⌁" !important;}
.fa-download::before{content:"↓" !important;}
.fa-receipt::before{content:"▦" !important;}
.fa-paypal::before{content:"P" !important;}
.fa-gift::before{content:"✶" !important;}
.fa-lock::before{content:"●" !important;}
.fa-user-shield::before{content:"♜" !important;}
.fa-tasks::before{content:"✓" !important;}
.fa-clipboard-list::before{content:"☑" !important;}
.fa-chart-line::before{content:"↗" !important;}
.fa-user-plus::before{content:"+" !important;}
.fa-inbox::before{content:"▾" !important;}
.fa-users::before{content:"◉" !important;}
.fa-paint-brush::before{content:"✎" !important;}
.fa-history::before{content:"↺" !important;}
.fa-file-csv::before{content:"▥" !important;}
.fa-eye::before{content:"◉" !important;}
.fa-flask::before{content:"⚗" !important;}
.fa-magic::before{content:"✦" !important;}
.fa-chevron-left::before{content:"‹" !important;}
.fa-chevron-right::before{content:"›" !important;}
.fa-bolt::before{content:"ϟ" !important;}
.fa-check-circle::before{content:"✓" !important;}
.fa-comment-dots::before{content:"…" !important;}
.fa-fire::before{content:"♨" !important;}
.fa-medal::before{content:"★" !important;}
.fa-plus::before{content:"+" !important;}
.fa-sign-out-alt::before{content:"↪" !important;}
.fa-star::before{content:"★" !important;}

/* make admin icons look intentional, not like missing-font placeholders */
body.admin-dashboard-page .admin-quick-nav i,
body.admin-dashboard-page .ops-security-list i,
body.admin-dashboard-page .ops-small-action i,
body.admin-dashboard-page .admin-mvp-button i{
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 auto !important;
  width:1.25em !important;
  height:1.25em !important;
  color:#ff9d43 !important;
}
body.admin-dashboard-page .admin-quick-nav i{
  width:1.7rem !important;
  height:1.7rem !important;
  border-radius:10px !important;
  background:rgba(255,138,29,.12) !important;
  box-shadow:inset 0 0 0 1px rgba(255,138,29,.18) !important;
}
body.admin-dashboard-page .ops-small-action i,
body.admin-dashboard-page .admin-mvp-button i{
  margin-right:.35rem !important;
}
body.admin-dashboard-page .admin-mvp-button i{
  color:#180900 !important;
}

/* v15 order workflow fixes */
.order-delivery-line{margin:14px 0 0;padding:12px 14px;border:1px solid rgba(255,122,24,.28);border-radius:16px;background:rgba(255,122,24,.08);color:rgba(255,255,255,.86);overflow-wrap:anywhere}
.order-delivery-line strong{color:#fff;margin-right:6px}
.order-delivery-line a{color:#ffb36b;text-decoration:none;font-weight:700}
.order-delivery-line a:hover{text-decoration:underline}
.worker-review-note{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:9px 12px;color:rgba(255,255,255,.72);font-size:.85rem}
.clean-orders-list article .luly-order-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 12px;background:rgba(255,122,24,.12);border:1px solid rgba(255,122,24,.28);color:#fff;text-decoration:none;font-weight:700;font-size:.85rem}
.clean-orders-list article .luly-order-page-link:hover{background:rgba(255,122,24,.22)}

/* === LULY v17 order workflow cleanup === */
/* Stop local/demo order notes from staying above real live orders. */
body.luly-profile-page [data-preview-orders-note]{display:none !important;}
body.luly-profile-page [data-live-loading-note]{margin:0;color:rgba(255,247,238,.65);}

/* Past order cards: keep action buttons normal size, not thin/circular. */
body.luly-profile-page .clean-orders-list article{
  grid-template-columns:16px minmax(0,1fr) auto auto !important;
  align-items:center !important;
  gap:.85rem !important;
}
body.luly-profile-page .clean-orders-list article .luly-mini-details,
body.luly-profile-page .clean-orders-list article .luly-order-page-link{
  min-width:94px !important;
  height:auto !important;
  min-height:42px !important;
  padding:.7rem 1rem !important;
  border-radius:999px !important;
  font-size:.9rem !important;
  line-height:1 !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}
body.luly-profile-page .clean-orders-list article .luly-order-page-link{
  background:linear-gradient(135deg,#ff8a1d,#ff4a00) !important;
  color:#160905 !important;
  border:0 !important;
  font-weight:900 !important;
}

/* Full order page: no narrow cards and no overflowing Drive/email text. */
body.order-detail-page .focused-detail-layout,
body.order-detail-page .detail-layout-v2{
  grid-template-columns:1fr !important;
  gap:1.25rem !important;
}
body.order-detail-page .detail-side-v2{display:block !important;}
body.order-detail-page .detail-overview-panel,
body.order-detail-page .detail-status-panel,
body.order-detail-page .luly-order-live-grid .ops-panel{
  overflow:hidden !important;
}
body.order-detail-page .detail-summary-grid,
body.order-detail-page .detail-info-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
body.order-detail-page .backend-card,
body.order-detail-page .detail-info-grid article,
body.order-detail-page .detail-reference-box,
body.order-detail-page .detail-brief-box,
body.order-detail-page [data-detail-delivery],
body.order-detail-page [data-detail-references],
body.order-detail-page [data-detail-contact]{
  min-width:0 !important;
  max-width:100% !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
body.order-detail-page .detail-summary-grid .backend-card p,
body.order-detail-page .detail-info-grid p,
body.order-detail-page .detail-reference-box p,
body.order-detail-page .detail-brief-box p{
  max-width:100% !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
body.order-detail-page .compact-detail-flow{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:.75rem !important;
}
body.order-detail-page .compact-detail-flow div{
  min-height:140px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:1rem !important;
}
body.order-detail-page .compact-detail-flow div.active{
  box-shadow:0 0 0 1px rgba(255,122,24,.42),0 18px 45px rgba(255,80,0,.12) !important;
}
body.order-detail-page .compact-detail-flow div.done:not(.active){
  opacity:.82 !important;
}
body.order-detail-page .detail-help-panel{display:none !important;}

/* Live order page: comments and approval sit side by side; old status-history panel is removed in JS and hidden as backup. */
body.order-detail-page .luly-order-live-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:1rem !important;
  align-items:start !important;
}
body.order-detail-page .luly-order-live-grid .luly-approval-panel{
  grid-column:auto !important;
}
body.order-detail-page .compact-live-panel{
  min-height:0 !important;
  padding:clamp(1rem,2vw,1.25rem) !important;
}
body.order-detail-page .compact-live-panel .ops-panel-head h2{
  font-size:clamp(1.35rem,2.4vw,2rem) !important;
}
body.order-detail-page .luly-order-live-list{
  max-height:260px !important;
  overflow:auto !important;
  padding-right:.25rem !important;
}
body.order-detail-page .luly-comment-form textarea{min-height:96px !important;}

/* Profile/Admin modal: one clean popup, no text overlaps, no ugly internal scroll on desktop. */
.luly-order-modal.is-open{
  overflow:hidden !important;
}
.luly-profile-order-modal .luly-order-modal-card,
.luly-order-modal.is-open .luly-order-modal-card{
  width:min(96vw,1040px) !important;
  max-height:none !important;
  overflow:visible !important;
  padding:clamp(1.1rem,2.2vw,1.75rem) !important;
}
.luly-order-modal-head h2{
  max-width:720px !important;
  font-size:clamp(1.9rem,4vw,3.2rem) !important;
  line-height:.98 !important;
  margin:.45rem auto .4rem !important;
}
.luly-order-modal-head p{
  max-width:780px !important;
  line-height:1.45 !important;
  font-size:.98rem !important;
}
.luly-order-modal-status{margin:.75rem 0 !important;}
.luly-order-modal-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:.7rem !important;
}
.luly-order-modal-grid article{
  min-height:92px !important;
  padding:.85rem !important;
  overflow:hidden !important;
}
.luly-order-modal-grid strong{
  font-size:.96rem !important;
  line-height:1.25 !important;
  max-width:100% !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.luly-order-modal-section{margin-top:.9rem !important;}
.luly-modal-timeline{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:.65rem !important;
}
.luly-modal-timeline > div{
  min-height:102px !important;
  padding:.8rem .55rem !important;
  border-radius:18px !important;
}
.luly-modal-timeline > div.active{box-shadow:0 0 0 1px rgba(255,122,24,.5),0 18px 42px rgba(255,90,0,.12) !important;}
.luly-order-modal-actions{margin-top:.9rem !important;}

/* Admin project list cleanup. */
body.admin-dashboard-page .ops-table-head{display:none !important;}
body.admin-dashboard-page .ops-project-card{
  grid-template-columns:minmax(220px,1.2fr) minmax(150px,.75fr) minmax(150px,.75fr) minmax(130px,.65fr) minmax(150px,.85fr) auto !important;
  align-items:center !important;
}
body.admin-dashboard-page .ops-project-card .ops-project-main strong,
body.admin-dashboard-page .ops-project-card .ops-project-main span,
body.admin-dashboard-page .ops-project-card .ops-order-business input{
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
body.admin-dashboard-page .ops-approval-summary{
  grid-column:1/-1 !important;
  margin-top:.75rem !important;
  padding:.85rem 1rem !important;
  border:1px solid rgba(255,181,107,.22) !important;
  border-radius:18px !important;
  background:rgba(255,122,24,.08) !important;
}
body.admin-dashboard-page .ops-approval-summary strong{display:block;color:#fff8ef !important;font-weight:950 !important;}
body.admin-dashboard-page .ops-approval-summary span{display:block;color:rgba(255,247,238,.72) !important;margin-top:.25rem !important;overflow-wrap:anywhere !important;}

/* Invoice wording: save as PDF button. */
@media print{
  .admin-mvp-actions{display:none !important;}
  body.invoice-page{background:#fff !important;color:#111 !important;}
  .invoice-card{box-shadow:none !important;border-color:#ddd !important;}
}

@media (max-width: 991.98px){
  body.order-detail-page .detail-summary-grid,
  body.order-detail-page .detail-info-grid,
  body.order-detail-page .compact-detail-flow,
  body.order-detail-page .luly-order-live-grid,
  .luly-order-modal-grid,
  .luly-modal-timeline,
  body.admin-dashboard-page .ops-project-card{
    grid-template-columns:1fr !important;
  }
  .luly-profile-order-modal .luly-order-modal-card,
  .luly-order-modal.is-open .luly-order-modal-card{
    max-height:min(92vh,840px) !important;
    overflow:auto !important;
  }
}
@media (max-width:575.98px){
  body.luly-profile-page .clean-orders-list article{grid-template-columns:16px 1fr !important;}
  body.luly-profile-page .clean-orders-list article .luly-mini-details,
  body.luly-profile-page .clean-orders-list article .luly-order-page-link{grid-column:2 !important;justify-self:start !important;}
}


/* === v18 final order/client/admin layout fixes === */
body.luly-profile-page .profile-quick-stats div:first-child strong,
body.luly-profile-page .simple-stats div:first-child strong{min-width:1ch;}
body.luly-profile-page .clean-orders-list article .luly-order-page-link,
body.luly-profile-page .clean-orders-list article .luly-mini-details{
  border-radius:999px !important;
  min-height:44px !important;
  padding:.72rem 1rem !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
body.luly-profile-page .clean-orders-list,
body.luly-profile-page .luly-notification-list,
body.luly-profile-page .client-notifications-zone{
  max-height:620px !important;
  overflow:auto !important;
  padding-right:.35rem !important;
}
body.luly-profile-page .luly-notification-list{max-height:430px !important;}
body.luly-profile-page .client-notification-panel{overflow:hidden !important;}

/* Admin queue: keep order cards inside the left panel and make long areas scroll instead of covering side widgets. */
body.admin-dashboard-page .ops-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr) !important;}
body.admin-dashboard-page .ops-project-panel{min-width:0 !important; overflow:hidden !important;}
body.admin-dashboard-page .ops-project-list{
  max-height:720px !important;
  overflow:auto !important;
  padding-right:.4rem !important;
  min-width:0 !important;
}
body.admin-dashboard-page .ops-project-card{
  grid-template-columns:minmax(0,1.25fr) minmax(125px,.7fr) minmax(135px,.7fr) minmax(112px,.55fr) !important;
  gap:.75rem !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
}
body.admin-dashboard-page .ops-project-card .ops-project-main,
body.admin-dashboard-page .ops-project-card .ops-worker-slot,
body.admin-dashboard-page .ops-project-card .ops-status-slot,
body.admin-dashboard-page .ops-project-card .ops-deadline,
body.admin-dashboard-page .ops-project-card .ops-order-business,
body.admin-dashboard-page .ops-project-card .ops-action-group{min-width:0 !important; max-width:100% !important;}
body.admin-dashboard-page .ops-project-card .ops-order-business{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:.65rem !important;
  align-items:start !important;
}
body.admin-dashboard-page .ops-project-card .ops-action-group{
  grid-column:1 / -1 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:.65rem !important;
  align-items:center !important;
}
body.admin-dashboard-page .ops-project-card .ops-order-business input,
body.admin-dashboard-page .ops-project-card .ops-order-business select{width:100% !important; min-width:0 !important;}
body.admin-dashboard-page .ops-side-stack{min-width:0 !important;}
body.admin-dashboard-page .ops-worker-list,
body.admin-dashboard-page .ops-activity-list,
body.admin-dashboard-page .ops-tier-list,
body.admin-dashboard-page .admin-mvp-list,
body.admin-dashboard-page .admin-mvp-mini-list,
body.admin-dashboard-page [data-admin-client-list],
body.admin-dashboard-page [data-admin-contact-list],
body.admin-dashboard-page [data-admin-outbox-list],
body.admin-dashboard-page [data-admin-audit-list]{
  max-height:410px !important;
  overflow:auto !important;
  padding-right:.35rem !important;
}
body.admin-dashboard-page .ops-worker-list{max-height:285px !important;}
body.admin-dashboard-page .ops-activity-list{max-height:310px !important;}

/* Full order page: compact summary, clickable long links and smaller progress panel. */
body.order-detail-page .detail-overview-panel,
body.order-detail-page .detail-status-panel{
  padding:clamp(.9rem,1.4vw,1.15rem) !important;
}
body.order-detail-page .detail-overview-panel .ops-panel-head,
body.order-detail-page .detail-status-panel .ops-panel-head{margin-bottom:.8rem !important;}
body.order-detail-page .detail-overview-panel .ops-panel-head h2,
body.order-detail-page .detail-status-panel .ops-panel-head h2{font-size:clamp(1.45rem,2.2vw,2.05rem) !important;}
body.order-detail-page .detail-summary-grid,
body.order-detail-page .detail-info-grid{
  gap:.7rem !important;
}
body.order-detail-page .backend-card,
body.order-detail-page .detail-info-grid article{
  min-height:118px !important;
  padding:.9rem !important;
  align-content:center !important;
}
body.order-detail-page .backend-card h3,
body.order-detail-page .detail-info-grid strong{font-size:1.05rem !important; line-height:1.2 !important;}
body.order-detail-page .backend-card p,
body.order-detail-page .detail-info-grid p{font-size:.9rem !important; line-height:1.45 !important;}
body.order-detail-page .detail-brief-box,
body.order-detail-page .detail-reference-box{padding:.85rem 1rem !important; margin-top:.7rem !important;}
body.order-detail-page .compact-detail-flow{
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr)) !important;
  gap:.6rem !important;
}
body.order-detail-page .compact-detail-flow div{
  min-height:92px !important;
  padding:.75rem !important;
  border-radius:18px !important;
}
body.order-detail-page .compact-detail-flow div span{font-size:.78rem !important;}
body.order-detail-page .compact-detail-flow div strong{font-size:.98rem !important;}
body.order-detail-page .compact-detail-flow div em{font-size:.78rem !important; line-height:1.25 !important;}
body.order-detail-page .luly-order-live-grid .ops-panel{max-height:520px !important; overflow:hidden !important;}
body.order-detail-page .luly-order-live-list{max-height:220px !important;}
body.order-detail-page .luly-comment-form textarea{min-height:78px !important;}
.luly-inline-live-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  max-width:100% !important;
  padding:.55rem .85rem !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#ff8a1d,#ff4a00) !important;
  color:#160905 !important;
  font-weight:950 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.luly-inline-link-preview{display:block !important; margin-top:.45rem !important; color:rgba(255,247,238,.52) !important; overflow-wrap:anywhere !important; word-break:break-word !important; font-size:.78rem !important;}

/* Details popup: approval status and long links stay compact. */
.luly-order-modal-grid strong .luly-inline-live-link,
.luly-order-modal-grid .luly-inline-live-link{font-size:.86rem !important; padding:.48rem .7rem !important;}
.luly-order-modal-grid strong{display:flex !important; align-items:center !important; justify-content:center !important; text-align:center !important;}
.luly-modal-timeline > div.done{opacity:.88 !important;}
.luly-modal-timeline > div.active{opacity:1 !important;}

@media (max-width:1199.98px){
  body.admin-dashboard-page .ops-layout{grid-template-columns:1fr !important;}
  body.admin-dashboard-page .ops-side-stack{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:991.98px){
  body.admin-dashboard-page .ops-project-card,
  body.admin-dashboard-page .ops-project-card .ops-order-business{grid-template-columns:1fr !important;}
  body.order-detail-page .detail-summary-grid,
  body.order-detail-page .detail-info-grid{grid-template-columns:1fr !important;}
  body.order-detail-page .luly-order-live-grid{grid-template-columns:1fr !important;}
}
@media (max-width:767.98px){
  body.admin-dashboard-page .ops-side-stack{grid-template-columns:1fr !important;}
  body.luly-profile-page .clean-orders-list,
  body.luly-profile-page .luly-notification-list,
  body.admin-dashboard-page .ops-project-list{max-height:520px !important;}
}
/* v18 small correction: keep comment/approval forms visible; only inner lists scroll. */
body.order-detail-page .luly-order-live-grid .ops-panel{max-height:none !important; overflow:visible !important;}

/* === v19 live portal polish: no demo flicker, compact queues, invoice/save PDF, 2-column details flow === */
.luly-loading-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1.1rem}
.luly-loading-strip span{height:56px;border-radius:18px;background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,122,24,.09),rgba(255,255,255,.035));border:1px solid rgba(255,122,24,.12);animation:lulyPulse 1.45s ease-in-out infinite}
@keyframes lulyPulse{0%,100%{opacity:.42}50%{opacity:.9}}

body.luly-profile-page [data-live-loading] .luly-section-lead{max-width:620px;margin-left:auto;margin-right:auto;text-align:center;color:rgba(255,247,238,.68)}
body.luly-profile-page .simple-active-order[data-live-loading]{text-align:center;min-height:220px;display:flex;flex-direction:column;justify-content:center}
body.luly-profile-page .simple-active-order[data-live-loading] .panel-head{justify-content:center;text-align:center}

/* Admin order cards: keep a logical vertical order and prevent overlap into right column. */
body.admin-dashboard-page .ops-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.72fr) !important;overflow:visible !important}
body.admin-dashboard-page .ops-project-panel{min-width:0 !important;overflow:hidden !important}
body.admin-dashboard-page .ops-project-list{max-height:680px !important;overflow:auto !important;padding-right:.45rem !important;display:grid !important;gap:.95rem !important}
body.admin-dashboard-page .ops-project-card{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:.85rem !important;align-items:start !important;padding:1rem !important;min-width:0 !important;overflow:hidden !important}
body.admin-dashboard-page .ops-project-card .ops-project-main{grid-column:1 / 2 !important;min-width:0 !important}
body.admin-dashboard-page .ops-project-card .ops-worker-slot{grid-column:2 / 3 !important;min-width:0 !important}
body.admin-dashboard-page .ops-project-card .ops-status-slot{grid-column:3 / 4 !important;min-width:0 !important}
body.admin-dashboard-page .ops-project-card .ops-deadline{grid-column:4 / 5 !important;min-width:0 !important}
body.admin-dashboard-page .ops-project-card .ops-order-business{grid-column:1 / -1 !important;display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:.72rem !important;margin-top:.25rem !important;align-items:end !important;min-width:0 !important}
body.admin-dashboard-page .ops-project-card .ops-order-business > span{grid-column:1 / -1 !important;color:#fff7ee !important;font-size:.92rem !important;font-weight:900 !important;text-transform:none !important;margin-bottom:-.25rem !important}
body.admin-dashboard-page .ops-project-card .ops-action-group{grid-column:1 / -1 !important;display:flex !important;flex-wrap:wrap !important;gap:.7rem !important;margin-top:.1rem !important;align-items:center !important;min-width:0 !important}
body.admin-dashboard-page .ops-project-card input,
body.admin-dashboard-page .ops-project-card select{min-width:0 !important;max-width:100% !important;width:100% !important}
body.admin-dashboard-page .ops-project-card .ops-order-business input,
body.admin-dashboard-page .ops-project-card .ops-order-business select{height:44px !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important}
body.admin-dashboard-page .ops-project-card .ops-approval-summary{grid-column:1 / -1 !important;margin-top:.55rem !important}
body.admin-dashboard-page .ops-project-main strong,
body.admin-dashboard-page .ops-project-main span{overflow-wrap:anywhere !important;word-break:normal !important}

/* Notifications: admin, worker and client panels stay compact with inner scroll. */
body.admin-dashboard-page .luly-notification-panel,
body.worker-dashboard-page .luly-notification-panel,
body.luly-ops-page .luly-notification-panel{max-height:560px !important;overflow:hidden !important;display:flex !important;flex-direction:column !important}
body.admin-dashboard-page .luly-notification-panel .ops-panel-head,
body.worker-dashboard-page .luly-notification-panel .ops-panel-head{flex:0 0 auto !important;margin-bottom:.8rem !important;align-items:center !important}
body.admin-dashboard-page .luly-notification-list,
body.worker-dashboard-page .luly-notification-list,
body.luly-ops-page .luly-notification-list{max-height:390px !important;overflow:auto !important;padding-right:.45rem !important;display:grid !important;gap:.75rem !important}
body.admin-dashboard-page .luly-notification-item,
body.worker-dashboard-page .luly-notification-item{display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;gap:.75rem !important;align-items:center !important;padding:.85rem !important;min-width:0 !important}
body.admin-dashboard-page .notification-content,
body.worker-dashboard-page .notification-content{min-width:0 !important}
body.admin-dashboard-page .notification-content span,
body.worker-dashboard-page .notification-content span{overflow-wrap:anywhere !important}
body.admin-dashboard-page .luly-notification-actions,
body.worker-dashboard-page .luly-notification-actions{display:flex !important;gap:.55rem !important;flex-wrap:wrap !important;justify-content:flex-end !important;min-width:0 !important}
body.admin-dashboard-page .luly-notification-actions .ops-small-action,
body.worker-dashboard-page .luly-notification-actions .ops-small-action,
body.admin-dashboard-page .luly-notification-actions .luly-detail-action,
body.worker-dashboard-page .luly-notification-actions .luly-detail-action{padding:.52rem .72rem !important;min-width:0 !important;white-space:nowrap !important}
body.luly-profile-page .client-notification-panel{max-height:590px !important;overflow:hidden !important}
body.luly-profile-page .client-notification-panel .luly-notification-list{max-height:405px !important;overflow:auto !important;padding-right:.45rem !important}

/* Worker lists and side panels keep manageable height. */
body.worker-dashboard-page .worker-project-list{max-height:620px !important;overflow:auto !important;padding-right:.45rem !important}
body.worker-dashboard-page .ops-side-stack .ops-panel .ops-tier-list,
body.worker-dashboard-page .ops-side-stack .worker-xp-rules,
body.worker-dashboard-page .ops-side-stack .worker-week-list{max-height:300px !important;overflow:auto !important;padding-right:.35rem !important}

/* Full details progress: 01 02 / 03 04 / 05 06 to reduce height. */
body.order-detail-page .detail-side-v2{min-width:0 !important}
body.order-detail-page .detail-status-panel{padding:1rem !important}
body.order-detail-page .detail-status-panel .ops-panel-head{text-align:center !important;justify-content:center !important;margin-bottom:.8rem !important}
body.order-detail-page .compact-detail-flow{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:.65rem !important;margin-top:.7rem !important}
body.order-detail-page .compact-detail-flow div{min-height:92px !important;padding:.72rem .8rem !important;border-radius:18px !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;text-align:center !important}
body.order-detail-page .compact-detail-flow div span{font-size:.78rem !important;margin:0 0 .25rem !important;color:#ffb56b !important;background:transparent !important;width:auto !important;height:auto !important}
body.order-detail-page .compact-detail-flow div strong{font-size:1rem !important;line-height:1.12 !important}
body.order-detail-page .compact-detail-flow div em{font-size:.78rem !important;line-height:1.25 !important;max-width:180px !important}
body.order-detail-page .compact-detail-flow div:before,
body.order-detail-page .compact-detail-flow div:after{display:none !important}
body.order-detail-page .detail-live-container{max-width:1180px !important}
body.order-detail-page .detail-overview-panel .backend-card,
body.order-detail-page .detail-info-grid article{min-height:104px !important}
body.order-detail-page .detail-reference-box p,
body.order-detail-page .detail-brief-box p{max-height:96px !important;overflow:auto !important;padding-right:.35rem !important}
body.order-detail-page .luly-order-live-list{max-height:260px !important;overflow:auto !important;padding-right:.35rem !important}

/* Details popup: compact 6-step timeline and reliable approved highlight. */
.luly-profile-order-modal .luly-modal-timeline{display:grid !important;grid-template-columns:repeat(6,minmax(96px,1fr)) !important;gap:.65rem !important;overflow:visible !important}
.luly-profile-order-modal .luly-modal-timeline > div{min-height:102px !important;padding:.75rem .55rem !important;border-radius:18px !important;text-align:center !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;min-width:0 !important}
.luly-profile-order-modal .luly-modal-timeline > div b{width:34px !important;height:34px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;border-radius:999px !important;background:rgba(255,122,24,.18) !important;color:#ffb56b !important;margin-bottom:.38rem !important}
.luly-profile-order-modal .luly-modal-timeline > div.active b{background:linear-gradient(135deg,#ff6a00,#ffb56b) !important;color:#160905 !important}
.luly-profile-order-modal .luly-modal-timeline > div strong{font-size:.92rem !important;line-height:1.12 !important}
.luly-profile-order-modal .luly-modal-timeline > div small{font-size:.72rem !important;line-height:1.2 !important;color:rgba(255,247,238,.6) !important}

/* Invoice page: only Save PDF wording/action. */
body.invoice-page [data-save-invoice-pdf]{white-space:nowrap !important}

@media (max-width:1199.98px){
  body.admin-dashboard-page .ops-layout{grid-template-columns:1fr !important}
  body.admin-dashboard-page .ops-project-card{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  body.admin-dashboard-page .ops-project-card .ops-project-main,
  body.admin-dashboard-page .ops-project-card .ops-worker-slot,
  body.admin-dashboard-page .ops-project-card .ops-status-slot,
  body.admin-dashboard-page .ops-project-card .ops-deadline{grid-column:auto !important}
  body.admin-dashboard-page .ops-project-card .ops-order-business{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width:767.98px){
  body.admin-dashboard-page .ops-project-card,
  body.admin-dashboard-page .ops-project-card .ops-order-business,
  body.order-detail-page .compact-detail-flow{grid-template-columns:1fr !important}
  body.admin-dashboard-page .luly-notification-item,
  body.worker-dashboard-page .luly-notification-item{grid-template-columns:1fr !important}
  body.admin-dashboard-page .luly-notification-actions,
  body.worker-dashboard-page .luly-notification-actions{justify-content:flex-start !important}
  .luly-profile-order-modal .luly-modal-timeline{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}


/* === v20 receipt PDF + 6-step full details progress === */
body.order-detail-page .compact-detail-flow{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:.55rem !important;
  margin-top:.65rem !important;
}
body.order-detail-page .compact-detail-flow div{
  min-height:82px !important;
  padding:.55rem .45rem !important;
  border-radius:16px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
body.order-detail-page .compact-detail-flow div span{
  font-size:.72rem !important;
  margin:0 0 .18rem !important;
  line-height:1 !important;
}
body.order-detail-page .compact-detail-flow div strong{
  font-size:.88rem !important;
  line-height:1.05 !important;
}
body.order-detail-page .compact-detail-flow div em{
  font-size:.68rem !important;
  line-height:1.16 !important;
  max-width:120px !important;
}
body.order-detail-page .detail-status-panel{padding:.9rem !important;}
body.order-detail-page .detail-status-panel .ops-panel-head{margin-bottom:.55rem !important;}
body.order-detail-page .detail-status-panel .ops-panel-head h2{font-size:1.65rem !important;}
body.order-detail-page .detail-status-panel .ops-panel-head p{font-size:.9rem !important;}
body.invoice-page .invoice-card{
  max-width:760px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025)) !important;
}
body.invoice-page .invoice-card:before{
  content:'LULYGRAPHICS RECEIPT / INVOICE';
  display:block;
  text-align:center;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#ffb56b;
  font-weight:900;
  font-size:.72rem;
  margin-bottom:.7rem;
}
body.invoice-page .invoice-grid{
  grid-template-columns:1fr !important;
  gap:.65rem !important;
  max-width:620px;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.invoice-page .invoice-grid div{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:1rem !important;
  min-height:48px !important;
  padding:.8rem 1rem !important;
  border-radius:14px !important;
}
body.invoice-page .invoice-grid span{margin:0 !important;}
body.invoice-page .invoice-grid strong{text-align:right !important;overflow-wrap:anywhere !important;}
body.invoice-page .manual-payment-note{max-width:620px;margin-left:auto;margin-right:auto;}
@media (max-width:1199.98px){
  body.order-detail-page .compact-detail-flow{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:767.98px){
  body.order-detail-page .compact-detail-flow{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body.invoice-page .invoice-grid div{display:block !important;}
  body.invoice-page .invoice-grid strong{text-align:left !important;}
}


/* === v21: only three fixes requested ===
   1) Full details progress is a real compact 6-column row.
   2) Invoice page visual style is restored to the older card/grid look.
   3) Save PDF uses the browser PDF save flow instead of a plain generated text PDF. */
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow,
body.order-detail-page .professional-order-flow.compact-detail-flow,
body.order-detail-page .compact-detail-flow{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:.6rem !important;
  margin-top:.7rem !important;
  align-items:stretch !important;
}
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div,
body.order-detail-page .professional-order-flow.compact-detail-flow > div,
body.order-detail-page .compact-detail-flow > div{
  min-height:88px !important;
  padding:.65rem .5rem !important;
  border-radius:17px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  grid-template-columns:none !important;
  gap:.2rem !important;
}
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div::before,
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div::after,
body.order-detail-page .professional-order-flow.compact-detail-flow > div::before,
body.order-detail-page .professional-order-flow.compact-detail-flow > div::after{display:none !important;content:none !important;}
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div span,
body.order-detail-page .professional-order-flow.compact-detail-flow > div span,
body.order-detail-page .compact-detail-flow > div span{
  display:block !important;
  grid-column:auto !important;
  width:auto !important;
  height:auto !important;
  margin:0 0 .2rem !important;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#ffb56b !important;
  font-size:.72rem !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
}
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div strong,
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div em,
body.order-detail-page .professional-order-flow.compact-detail-flow > div strong,
body.order-detail-page .professional-order-flow.compact-detail-flow > div em,
body.order-detail-page .compact-detail-flow > div strong,
body.order-detail-page .compact-detail-flow > div em{
  grid-column:auto !important;
  max-width:100% !important;
  text-align:center !important;
}
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div strong,
body.order-detail-page .professional-order-flow.compact-detail-flow > div strong,
body.order-detail-page .compact-detail-flow > div strong{font-size:.9rem !important;line-height:1.05 !important;}
body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow > div em,
body.order-detail-page .professional-order-flow.compact-detail-flow > div em,
body.order-detail-page .compact-detail-flow > div em{font-size:.68rem !important;line-height:1.14 !important;}
body.order-detail-page .detail-status-panel{padding:1rem !important;}
body.order-detail-page .detail-status-panel .ops-panel-head{margin-bottom:.65rem !important;}
@media(max-width:991.98px){
  body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow,
  body.order-detail-page .professional-order-flow.compact-detail-flow,
  body.order-detail-page .compact-detail-flow{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:575.98px){
  body.order-detail-page .order-timeline.clean-timeline.compact-detail-flow,
  body.order-detail-page .professional-order-flow.compact-detail-flow,
  body.order-detail-page .compact-detail-flow{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}

/* Restore invoice page to the older two-column card look. */
body.invoice-page .invoice-card{
  max-width:860px !important;
  margin:80px auto !important;
  padding:28px !important;
  border:1px solid rgba(255,122,24,.26) !important;
  border-radius:28px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.28) !important;
}
body.invoice-page .invoice-card:before{display:none !important;content:none !important;}
body.invoice-page .manual-payment-note{max-width:none !important;margin-left:0 !important;margin-right:0 !important;}
body.invoice-page .invoice-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:22px 0 !important;
  max-width:none !important;
}
body.invoice-page .invoice-grid div{
  display:block !important;
  min-height:auto !important;
  padding:14px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.09) !important;
}
body.invoice-page .invoice-grid span{display:block !important;margin:0 !important;color:rgba(255,255,255,.6) !important;font-size:.78rem !important;text-transform:uppercase !important;letter-spacing:.08em !important;}
body.invoice-page .invoice-grid strong{display:block !important;margin-top:4px !important;color:#fff !important;text-align:left !important;overflow-wrap:anywhere !important;}
@media(max-width:720px){
  body.invoice-page .invoice-grid{grid-template-columns:1fr !important;}
  body.invoice-page .invoice-card{margin:34px 14px !important;padding:20px !important;}
}
@media print{
  body.invoice-page{background:#fff !important;color:#111 !important;}
  body.invoice-page .invoice-card{margin:0 !important;max-width:100% !important;padding:22px !important;background:#fff !important;color:#111 !important;box-shadow:none !important;border:1px solid #d7d7d7 !important;}
  body.invoice-page .invoice-card .eyebrow,
  body.invoice-page .invoice-card h1,
  body.invoice-page .invoice-card p,
  body.invoice-page .invoice-card strong,
  body.invoice-page .invoice-card span{color:#111 !important;}
  body.invoice-page .manual-payment-note,
  body.invoice-page .invoice-grid div{background:#fff !important;border:1px solid #d7d7d7 !important;}
  body.invoice-page .admin-mvp-actions{display:none !important;}
}


/* === v22 hard fix: details progress columns and receipt PDF print style support === */
body.order-detail-page .detail-status-panel .compact-detail-flow,
body.order-detail-page .detail-status-panel .order-timeline.clean-timeline.professional-order-flow.compact-detail-flow{display:grid !important;grid-template-columns:repeat(6,minmax(0,1fr)) !important;gap:.55rem !important;align-items:stretch !important;}
body.order-detail-page .detail-status-panel .compact-detail-flow > div{grid-column:auto !important;width:auto !important;max-width:none !important;min-width:0 !important;margin:0 !important;min-height:86px !important;padding:.55rem .45rem !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;text-align:center !important;}
body.order-detail-page .detail-status-panel .compact-detail-flow > div::before,body.order-detail-page .detail-status-panel .compact-detail-flow > div::after{display:none !important;content:none !important;}
@media(max-width:991.98px){body.order-detail-page .detail-status-panel .compact-detail-flow{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media(max-width:575.98px){body.order-detail-page .detail-status-panel .compact-detail-flow{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}

/* v23 contact form polish */
body.contact-page .luly-contact-card{
  max-width: 100%;
}
body.contact-page .luly-contact-form-lead{
  color: rgba(255,255,255,.66);
  text-align: center;
  max-width: 560px;
  margin: -10px auto 22px;
  line-height: 1.55;
}
body.contact-page .luly-contact-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
body.contact-page .luly-field-label{
  display: block;
  color: rgba(255,184,104,.92);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin: 0 0 8px 2px;
}
body.contact-page .luly-select-input{
  appearance: none;
  min-height: 54px;
  color: #fff;
  background: rgba(255,255,255,.06);
}
body.contact-page .luly-select-input option{
  color: #111;
}
body.contact-page .contact-form-status{
  margin-top: 16px;
  padding: 12px 14px;
  border: 1px solid rgba(255,139,32,.2);
  border-radius: 16px;
  background: rgba(255,255,255,.035);
  color: rgba(255,255,255,.72);
  min-height: 48px;
}
body.contact-page .contact-form-status:empty{
  display: none;
}
body.contact-page .contact-form-status.is-success{
  color: #fff;
  border-color: rgba(255,139,32,.55);
  background: rgba(255,139,32,.13);
}
body.contact-page .contact-form-status.is-error{
  color: #ffd9d9;
  border-color: rgba(255,90,90,.45);
  background: rgba(255,80,80,.1);
}
body.contact-page .contact-form-status.is-loading{
  color: #ffe2bf;
}
body.admin-dashboard-page .luly-contact-inbox-list{
  max-height: 560px;
  overflow-y: auto;
  padding-right: 6px;
}
body.admin-dashboard-page .luly-contact-message-card{
  gap: 12px;
}
body.admin-dashboard-page .luly-contact-message-body{
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
  max-height: 180px;
  overflow-y: auto;
  padding-right: 4px;
}
body.admin-dashboard-page .luly-contact-message-meta{
  color: rgba(255,255,255,.55);
  font-weight: 800;
  font-size: .9rem;
  overflow-wrap: anywhere;
}
body.admin-dashboard-page .luly-contact-actions{
  align-items: center;
  flex-wrap: wrap;
}
body.admin-dashboard-page .luly-contact-actions .ops-small-action{
  text-decoration: none;
}
@media (max-width: 680px){
  body.contact-page .luly-contact-grid{
    grid-template-columns: 1fr;
    gap: 0;
  }
}

/* === v24 contact/admin inbox fix === */
body.contact-page .luly-contact-card{
  border: 1px solid rgba(255,139,32,.28) !important;
  background: linear-gradient(145deg, rgba(18,14,12,.92), rgba(6,5,4,.95)) !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.35) !important;
  padding: 34px 28px 26px !important;
  border-radius: 28px !important;
}
body.contact-page .contact100-form-title{
  color: #fff !important;
  padding-bottom: 12px !important;
  letter-spacing: -.04em !important;
  text-transform: uppercase !important;
}
body.contact-page .luly-contact-row{
  display: grid !important;
  gap: 14px !important;
  align-items: start !important;
  margin-bottom: 14px !important;
}
body.contact-page .luly-contact-row-even{grid-template-columns: repeat(2, minmax(0, 1fr)) !important;}
body.contact-page .luly-contact-row-email-order{grid-template-columns: minmax(0, 1.65fr) minmax(150px, .75fr) !important;}
body.contact-page .luly-contact-grid{display:block !important;}
body.contact-page .wrap-input100{
  background: transparent !important;
  border-radius: 18px !important;
  margin-bottom: 14px !important;
  overflow: visible !important;
}
body.contact-page .wrap-input100 .focus-input100{
  display: none !important;
}
body.contact-page .input100,
body.contact-page input.input100,
body.contact-page textarea.input100,
body.contact-page select.input100{
  height: auto !important;
  min-height: 56px !important;
  color: #fff !important;
  background: rgba(255,255,255,.035) !important;
  border: 1px solid rgba(255,139,32,.35) !important;
  border-radius: 18px !important;
  padding: 16px 18px !important;
  box-shadow: none !important;
}
body.contact-page textarea.input100{
  min-height: 140px !important;
  resize: vertical !important;
}
body.contact-page .input100::placeholder{color: rgba(255,255,255,.42) !important;}
body.contact-page .input100:focus{
  border-color: rgba(255,139,32,.82) !important;
  background: rgba(255,255,255,.055) !important;
  box-shadow: 0 0 0 4px rgba(255,139,32,.11) !important;
}
body.contact-page .luly-select-input option{color:#111 !important;background:#fff !important;}
body.contact-page .contact100-form-btn,
body.contact-page .contact100-form-btn:hover,
body.contact-page .contact100-form-btn:focus,
body.contact-page .contact100-form-btn:active{
  background: linear-gradient(135deg,#ff7a18,#ff4d00) !important;
  border: 0 !important;
  color: #111 !important;
  font-weight: 900 !important;
  text-transform: none !important;
  box-shadow: 0 18px 34px rgba(255,96,0,.22) !important;
}
body.contact-page .contact100-form-btn::before{display:none !important;content:none !important;}
body.contact-page .contact-order-hint{
  border-color: rgba(255,139,32,.28) !important;
  background: rgba(255,255,255,.025) !important;
}
body.admin-dashboard-page [data-ops-activity].ops-activity-list{
  max-height: 430px !important;
  overflow-y: auto !important;
  padding-right: 6px !important;
}
body.admin-dashboard-page .luly-admin-activity-card{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  padding:14px 16px !important;
  border:1px solid rgba(255,139,32,.16) !important;
  background:rgba(255,255,255,.025) !important;
  border-radius:18px !important;
  margin-bottom:10px !important;
}
body.admin-dashboard-page .luly-admin-activity-card.is-important{
  border-color:rgba(255,139,32,.62) !important;
  background:linear-gradient(135deg,rgba(255,139,32,.13),rgba(255,255,255,.025)) !important;
}
body.admin-dashboard-page .luly-admin-activity-card strong{display:block;color:#fff !important;font-size:.98rem !important;}
body.admin-dashboard-page .luly-admin-activity-card span{display:block;color:rgba(255,255,255,.68) !important;font-weight:700 !important;overflow-wrap:anywhere !important;}
body.admin-dashboard-page .luly-admin-activity-card small{display:block;color:rgba(255,255,255,.42) !important;margin-top:4px !important;}
body.admin-dashboard-page .luly-activity-actions{flex:0 0 auto !important;}
body.admin-dashboard-page .luly-contact-message-card.is-new-contact{
  border-color: rgba(255,139,32,.72) !important;
  background: linear-gradient(145deg, rgba(255,139,32,.12), rgba(255,255,255,.025)) !important;
}
body.admin-dashboard-page .luly-contact-message-card.is-new-contact .admin-mvp-card-head strong::after{
  content:' NEW';
  display:inline-block;
  margin-left:8px;
  color:#111;
  background:#ff8b20;
  border-radius:999px;
  padding:3px 8px;
  font-size:.7rem;
  letter-spacing:.08em;
}
@media (max-width: 720px){
  body.contact-page .luly-contact-card{padding:24px 16px !important;}
  body.contact-page .luly-contact-row,
  body.contact-page .luly-contact-row-even,
  body.contact-page .luly-contact-row-email-order{grid-template-columns:1fr !important;}
  body.admin-dashboard-page .luly-admin-activity-card{align-items:flex-start !important;flex-direction:column !important;}
}


/* LULY payment system upgrade */
.payment-info-page .payment-hero-section{padding-top:130px;}
.payment-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(1.2rem,4vw,2.4rem);align-items:center;padding:clamp(1.3rem,4vw,2.4rem);}
.payment-hero-grid h1{font-size:clamp(2.25rem,6vw,5rem);line-height:.95;letter-spacing:-.06em;margin-bottom:1rem;}
.payment-status-demo,.payment-system-card,.payment-safety-card{border:1px solid rgba(255,181,107,.18);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,106,0,.08));border-radius:26px;padding:clamp(1rem,2vw,1.35rem);box-shadow:0 24px 70px rgba(0,0,0,.25);}
.payment-status-demo span,.payment-status-demo p{color:rgba(255,247,238,.72);}.payment-status-demo strong{display:block;color:#fff;font-size:1.35rem;margin:.4rem 0;}
.payment-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:32px;}
.payment-system-card i{color:#ff9442;font-size:1.3rem;margin-bottom:14px;display:inline-block;}.payment-system-card strong{display:block;color:#fff4e6;font-size:1.05rem;margin-bottom:8px;}.payment-system-card p,.payment-safety-card p{color:rgba(255,247,238,.68);line-height:1.58;margin:0;}
.payment-methods-wide{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;padding:clamp(1.2rem,4vw,2rem);align-items:start;}.payment-method-list{display:grid;gap:12px;}.payment-method-list span{display:grid;gap:4px;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);}.payment-method-list b{color:#fff;}.payment-method-list em{font-style:normal;color:rgba(255,255,255,.66);}
.payment-safety-card h3{color:#fff4e6;font-size:1.1rem;margin-bottom:8px;}
.luly-inline-live-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#ffb56b;text-decoration:none;}.luly-inline-live-link:hover{text-decoration:underline;}.luly-inline-link-preview{display:block;margin-top:4px;color:rgba(255,255,255,.55);overflow-wrap:anywhere;text-transform:none;letter-spacing:0;font-size:.76rem;}
body.invoice-page .invoice-grid div:has([data-invoice-payment-link]) strong, body.order-confirmation-page .confirmation-grid div:has([data-confirm-payment-link]) strong{overflow-wrap:anywhere;}
@media(max-width:991.98px){.payment-hero-grid,.payment-methods-wide{grid-template-columns:1fr}.payment-system-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.payment-info-page .payment-hero-section{padding-top:110px;}}
@media(max-width:767.98px){.payment-system-grid{grid-template-columns:1fr}.payment-hero-grid h1{font-size:2.55rem;}}


/* LULY font-free SVG icon fix — works offline and on Netlify without Font Awesome webfonts. */
i[class*="fa-"]::before, .fa::before, .fas::before, .far::before, .fab::before {
  content: "" !important;
  display: inline-block !important;
  width: 1em !important;
  height: 1em !important;
  background-color: currentColor !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
  vertical-align: -0.08em !important;
}
.fa-youtube::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2218%22%20height%3D%2212%22%20rx%3D%224%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M10%209l5%203-5%203z%22%20fill%3D%22white%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-image::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Ccircle%20cx%3D%228.5%22%20cy%3D%229%22%20r%3D%221.5%22%2F%3E%3Cpath%20d%3D%22M4%2017l5-5%204%204%202-2%205%205%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-images::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%225%22%20width%3D%2215%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%2016V4a1%201%200%200%201%201-1h13%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%221.3%22%2F%3E%3Cpath%20d%3D%22M6%2017l4-4%203%203%202-2%204%204%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-bullhorn::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2013v-2l11-4v10L4%2013z%22%2F%3E%3Cpath%20d%3D%22M15%209c2%200%204-1%205-2v10c-1-1-3-2-5-2%22%2F%3E%3Cpath%20d%3D%22M6%2014l1.5%205h3L9%2013.5%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-layer-group::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203l9%205-9%205-9-5%209-5z%22%2F%3E%3Cpath%20d%3D%22M3%2012l9%205%209-5%22%2F%3E%3Cpath%20d%3D%22M3%2016l9%205%209-5%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-paper-plane::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011.5L21%203l-7%2018-3.5-6.5L3%2011.5z%22%2F%3E%3Cpath%20d%3D%22M10.5%2014.5L21%203%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-envelope::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M4%207l8%206%208-6%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-discord::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%207c3-2%207-2%2010%200%202%203%203%207%203%2010-2%202-4%203-6%203l-1.5-2h-1L10%2020c-2%200-4-1-6-3%200-3%201-7%203-10z%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2213%22%20r%3D%221%22%20fill%3D%22black%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2213%22%20r%3D%221%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-question-circle::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M9.8%209a2.4%202.4%200%201%201%203.7%202c-1%20.7-1.5%201.2-1.5%202.5%22%2F%3E%3Cpath%20d%3D%22M12%2017h.01%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-file-invoice::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h9l4%204v14H6z%22%2F%3E%3Cpath%20d%3D%22M15%203v5h4%22%2F%3E%3Cpath%20d%3D%22M9%2012h6M9%2016h6%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-external-link-alt::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%204h6v6%22%2F%3E%3Cpath%20d%3D%22M20%204l-9%209%22%2F%3E%3Cpath%20d%3D%22M18%2013v6H5V6h6%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-chart-line::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2019V5%22%2F%3E%3Cpath%20d%3D%22M4%2019h16%22%2F%3E%3Cpath%20d%3D%22M7%2015l4-4%203%202%205-6%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-clipboard-list::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%226%22%20y%3D%225%22%20width%3D%2212%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M9%205V3h6v2%22%2F%3E%3Cpath%20d%3D%22M9%2010h.01M12%2010h3M9%2014h.01M12%2014h3M9%2018h.01M12%2018h3%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-clipboard-check::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%226%22%20y%3D%225%22%20width%3D%2212%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M9%205V3h6v2%22%2F%3E%3Cpath%20d%3D%22M9%2013l2%202%204-5%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-history::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2012a8%208%200%201%200%202-5.3%22%2F%3E%3Cpath%20d%3D%22M4%204v5h5%22%2F%3E%3Cpath%20d%3D%22M12%208v5l3%202%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-inbox::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h16l2%209v5H2v-5l2-9z%22%2F%3E%3Cpath%20d%3D%22M2%2014h6l2%203h4l2-3h6%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-paint-brush::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%204l6%206-8%208-6-6%208-8z%22%2F%3E%3Cpath%20d%3D%22M6%2012c-3%201-4%203-3%206%201%202%204%203%207%201%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-shield-alt::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203l7%203v5c0%204.5-2.8%208-7%2010-4.2-2-7-5.5-7-10V6l7-3z%22%2F%3E%3Cpath%20d%3D%22M9%2012l2%202%204-4%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-tasks::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207l2%202%203-4%22%2F%3E%3Cpath%20d%3D%22M11%207h9%22%2F%3E%3Cpath%20d%3D%22M4%2014l2%202%203-4%22%2F%3E%3Cpath%20d%3D%22M11%2014h9%22%2F%3E%3Cpath%20d%3D%22M4%2020l2%202%203-4%22%2F%3E%3Cpath%20d%3D%22M11%2020h9%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-times::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%206l12%2012M18%206L6%2018%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-user-plus::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M3%2021c1-5%204-7%207-7s6%202%207%207%22%2F%3E%3Cpath%20d%3D%22M19%208v6M16%2011h6%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-user-shield::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M3%2020c1-4%203-6%206-6%202%200%203%20.5%204%201.5%22%2F%3E%3Cpath%20d%3D%22M17%2012l4%202v3c0%202-1.5%204-4%205-2.5-1-4-3-4-5v-3l4-2z%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-users::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%229%22%20r%3D%222.5%22%2F%3E%3Cpath%20d%3D%22M3%2020c1-4%203-6%206-6s5%202%206%206%22%2F%3E%3Cpath%20d%3D%22M15%2015c3%200%205%202%206%205%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
.fa-file-csv::before{--luly-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h9l4%204v14H6z%22%2F%3E%3Cpath%20d%3D%22M15%203v5h4%22%2F%3E%3Cpath%20d%3D%22M8%2013h8M8%2017h8%22%2F%3E%3C%2Fsvg%3E") !important;-webkit-mask-image:var(--luly-icon) !important;mask-image:var(--luly-icon) !important;}
i[class*="fa-"]::before{-webkit-mask-image:var(--luly-icon,url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%222%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")) !important;mask-image:var(--luly-icon,url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%222%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")) !important;}

/* v25 — crisp service icons (no icon-font dependency). */
.luly-service-card .luly-service-icon{
  display:inline-grid;
  place-items:center;
  width:3.1rem;
  height:3.1rem;
  margin:0 auto 1rem;
  border-radius:18px;
  background:linear-gradient(135deg,var(--luly-accent),var(--luly-accent-2));
  color:#170a00;
  box-shadow:0 0 32px rgba(255,106,0,.32);
}
.luly-service-card .luly-service-icon svg{
  width:25px;
  height:25px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  overflow:visible;
}
.luly-service-card .luly-service-icon svg .fill{
  fill:currentColor;
  stroke:none;
}


/* v26 — Contact icons use inline SVGs for perfect centering/size without icon-font dependency. */
body.contact-page .channel-card .luly-contact-icon,
body.contact-page .contact-route-card .luly-contact-icon{
  width:3.45rem;
  height:3.45rem;
  display:grid;
  place-items:center;
  margin:0 auto 1rem;
  flex:0 0 auto;
  border-radius:18px;
  background:linear-gradient(135deg,#ff8a1d,#ff5a00);
  color:#180905;
  box-shadow:0 0 30px rgba(255,106,0,.26), inset 0 1px 0 rgba(255,255,255,.18);
}
body.contact-page .channel-card .luly-contact-icon svg,
body.contact-page .contact-route-card .luly-contact-icon svg{
  width:1.55rem;
  height:1.55rem;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  overflow:visible;
}
body.contact-page .channel-card .luly-contact-icon svg .fill,
body.contact-page .contact-route-card .luly-contact-icon svg .fill{
  fill:currentColor;
  stroke:none;
}
body.contact-page .channel-card,
body.contact-page .contact-route-card{
  align-items:center;
}
@media(max-width:575.98px){
  body.contact-page .channel-card .luly-contact-icon,
  body.contact-page .contact-route-card .luly-contact-icon{width:3.15rem;height:3.15rem;border-radius:16px}
  body.contact-page .channel-card .luly-contact-icon svg,
  body.contact-page .contact-route-card .luly-contact-icon svg{width:1.4rem;height:1.4rem}
}

/* Portrait work in the Vault deserves portrait-friendly framing. */
.luly-vault-gallery .vault-item.tall img{object-position:center 28%;}

/* Animated LULYGraphics wordmark in the home hero */
.luly-wordmark-preview {
  min-height: clamp(320px, 35vw, 430px);
  display: grid;
  place-items: stretch;
  overflow: hidden;
}

.luly-wordmark-stage {
  position: relative;
  width: 100%;
  min-height: 100%;
  border-radius: 25px;
  border: 1px solid rgba(255, 154, 56, 0.24);
  overflow: hidden;
  display: grid;
  place-items: center;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% 48%, rgba(255, 116, 16, 0.12), transparent 24%),
    radial-gradient(circle at 22% 28%, rgba(255, 154, 56, 0.06), transparent 30%),
    linear-gradient(145deg, rgba(9, 7, 5, 0.98), rgba(2, 2, 2, 0.99));
}

.luly-wordmark-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 49.8%, rgba(255, 154, 56, 0.055) 50%, transparent 50.2%),
    linear-gradient(0deg, transparent 49.8%, rgba(255, 154, 56, 0.04) 50%, transparent 50.2%);
  opacity: .7;
}

.luly-wordmark-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at center, transparent 40%, rgba(0, 0, 0, 0.52) 100%);
  z-index: 5;
}

.luly-wordmark-glow {
  position: absolute;
  width: 58%;
  aspect-ratio: 1.8;
  border-radius: 50%;
  background: rgba(255, 111, 13, 0.22);
  filter: blur(48px);
  opacity: 0;
  transform: scale(.45);
  animation: lulyWordmarkGlow 6.4s cubic-bezier(.2,.75,.25,1) infinite;
}

.luly-letter-line {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 0;
  white-space: nowrap;
  perspective: 800px;
  filter: drop-shadow(0 9px 20px rgba(0,0,0,.48));
}

.luly-letter {
  display: inline-block;
  font-family: "Poppins", sans-serif;
  font-size: clamp(2.35rem, 5.3vw, 4.9rem);
  font-weight: 900;
  line-height: .95;
  letter-spacing: -.075em;
  transform-origin: 50% 70%;
  will-change: transform, opacity, filter;
  opacity: .22;
  filter: blur(2.5px);
  transform: translate(var(--x), var(--y)) rotate(var(--r)) scale(.78);
  animation: lulyLetterAssemble 6.4s cubic-bezier(.18,.8,.22,1) infinite;
  animation-delay: calc(var(--i) * 36ms);
}

.luly-letter-brand {
  color: #f8f3ed;
}

.luly-letter-graphics {
  color: #ff8a25;
}

.luly-letter:nth-child(4) {
  margin-right: .14em;
}

.luly-wordmark-spark {
  position: absolute;
  z-index: 4;
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: #ff9a38;
  box-shadow: 0 0 12px #ff7a00, 0 0 28px rgba(255,122,0,.8);
  opacity: 0;
  animation: lulySpark 6.4s ease-in-out infinite;
}

.spark-one { left: 27%; top: 34%; animation-delay: .18s; }
.spark-two { right: 25%; top: 60%; animation-delay: .48s; }
.spark-three { left: 52%; top: 27%; animation-delay: .72s; }

@keyframes lulyLetterAssemble {
  0%, 8% {
    opacity: .15;
    filter: blur(4px);
    transform: translate(var(--x), var(--y)) rotate(var(--r)) scale(.72);
  }
  24% {
    opacity: .82;
    filter: blur(.7px);
    transform: translate(calc(var(--x) * -.10), calc(var(--y) * -.08)) rotate(calc(var(--r) * -.15)) scale(1.08);
  }
  32%, 66% {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0) rotate(0) scale(1);
  }
  70% {
    transform: translateY(-4px) rotate(0) scale(1.015);
  }
  75% {
    transform: translateY(2px) rotate(0) scale(1);
  }
  81% {
    transform: translate(0,0) rotate(0) scale(1);
  }
  100% {
    opacity: .18;
    filter: blur(3px);
    transform: translate(var(--x), var(--y)) rotate(var(--r)) scale(.76);
  }
}

@keyframes lulyWordmarkGlow {
  0%, 18%, 92%, 100% { opacity: 0; transform: scale(.45); }
  30% { opacity: .65; transform: scale(1.03); }
  42%, 70% { opacity: .32; transform: scale(.88); }
  80% { opacity: .18; transform: scale(.78); }
}

@keyframes lulySpark {
  0%, 18%, 82%, 100% { opacity: 0; transform: scale(.4); }
  28% { opacity: 1; transform: scale(1.15); }
  37% { opacity: .25; transform: scale(.7); }
  48% { opacity: 0; transform: scale(.4); }
}

@media (prefers-reduced-motion: reduce) {
  .luly-letter,
  .luly-wordmark-glow,
  .luly-wordmark-spark {
    animation: none !important;
  }
  .luly-letter {
    opacity: 1;
    filter: none;
    transform: none;
  }
  .luly-wordmark-glow { opacity: .24; transform: scale(.9); }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .luly-letter { font-size: clamp(2.3rem, 6.8vw, 4.25rem); }
  .luly-wordmark-preview { min-height: 350px; }
}


/* Use the real LULYGraphics logo mark in Visual Impact and Design Path.
   The surrounding card sizes, motion and glow remain unchanged. */
.deck-core {
  overflow: hidden;
}

.deck-core > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: inherit;
}

.glow-logo-token > img {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 18px;
  border: 1px solid rgba(255,177,92,0.54);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 32px rgba(255,106,0,0.38);
}
