/* Luwei pelo Mundo: identity layer for TREK v5.0.1.
   Deliberately presentation-only: no routing, permissions, app state, or data changes. */
html.luwei-nexus {
  color-scheme: dark;
  --luwei-ink: #09090e;
  --luwei-panel: #111017;
  --luwei-raised: #1a1722;
  --luwei-fg: #f7f4ff;
  --luwei-muted: #b9abc9;
  --luwei-violet: #7b24ff;
  --luwei-fuchsia: #f421a6;
  --luwei-orange: #ff733d;
  --luwei-border: rgba(177, 133, 255, .20);
  --luwei-aurora: linear-gradient(115deg,#7b24ff 0%,#bf18ff 29%,#f421a6 61%,#ff733d 100%);
  --bg-primary: #09090e;
  --bg-secondary: #111017;
  --bg-tertiary: #1a1722;
  --bg-card: #14111d;
  --bg-elevated: rgba(24,18,33,.94);
  --bg-input: #1a1722;
  --bg-hover: rgba(179,129,255,.12);
  --bg-selected: rgba(165,91,255,.22);
  --text-primary: #f7f4ff;
  --text-secondary: #d6cae4;
  --text-muted: #a999bf;
  --text-faint: #8b7e9a;
  --border-primary: rgba(177,133,255,.23);
  --border-secondary: rgba(177,133,255,.14);
  --border-faint: rgba(177,133,255,.11);
  --accent: #bf63fc;
  --accent-text: #170b24;
  --accent-on: #bf63fc;
  --accent-hover: #d58bff;
  --accent-subtle: rgba(158,80,255,.15);
  --sidebar-bg: rgba(16,12,23,.90);
  --sidebar-shadow: 0 20px 80px rgba(0,0,0,.32),0 0 0 1px rgba(190,138,255,.12);
  --scrollbar-track: #120e1b;
  --scrollbar-thumb: #534161;
  --scrollbar-hover: #74578b;
}
html.luwei-nexus body {
  background: var(--luwei-ink);
  color: var(--luwei-fg);
  accent-color: #b873f9;
}
html.luwei-nexus ::selection {background: rgba(178,91,255,.40);color:#fff;}
html.luwei-nexus :is(a,button,input,textarea,select,[role="button"]):focus-visible {
  outline: 2px solid #e4a9ff !important;
  outline-offset: 3px;
}
html.luwei-nexus :is(input,textarea,select) {
  caret-color:#ed8af8;
}
html.luwei-nexus :is(button,[role="button"]):not(:disabled){
  transition: background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
html.luwei-nexus :is(button,[role="button"]):not(:disabled):active{transform:scale(.99)}
html.luwei-nexus :is([class*="rounded-"],[class*="card"],[class*="panel"]) {
  border-color:var(--luwei-border);
}
/* Login: retain TREK form components, session handling and validation. */
html.luwei-nexus body:has(.lg-panel) #root > div > div:last-child {
  background: radial-gradient(ellipse 85% 64% at 95% 0%,rgba(115,31,190,.20),transparent 70%),
              radial-gradient(ellipse 67% 55% at 0% 100%,rgba(199,43,148,.12),transparent 69%),
              #0d0a14 !important;
  color:var(--luwei-fg);
}
html.luwei-nexus .lg-panel {
  background:radial-gradient(ellipse at 3% 15%,rgba(145,33,255,.34),transparent 51%),
             radial-gradient(ellipse at 97% 88%,rgba(255,112,55,.19),transparent 45%),
             linear-gradient(137deg,#080710 5%,#171020 50%,#0c0814 100%) !important;
  border-right:1px solid rgba(204,134,251,.17);
}
html.luwei-nexus .lg-panel::after {
  content:"";
  position:absolute;
  inset:0;
  border-right:1px solid transparent;
  pointer-events:none;
  background:linear-gradient(120deg,transparent 22%,rgba(195,109,255,.035) 50%,transparent 79%);
}
html.luwei-nexus .lg-panel .login-aurora{
  opacity:.68;
  filter:hue-rotate(40deg) saturate(1.4);
}
html.luwei-nexus .lg-panel img.luwei-brand-image {
  width:clamp(170px,20vw,285px) !important;
  height:170px !important;
  max-width:100%;
  object-fit:contain;
  filter:drop-shadow(0 10px 35px rgba(167,49,255,.16)) !important;
}
html.luwei-nexus .lg-panel h2{
  font-family:inherit !important;
  font-size:clamp(30px,3.2vw,48px) !important;
  line-height:1.14 !important;
  text-transform:none !important;
  letter-spacing:-.04em !important;
  white-space:normal !important;
  background:var(--luwei-aurora);
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent !important;
  -webkit-text-fill-color:transparent;
  text-shadow:none !important;
}
html.luwei-nexus .lg-panel p{
  width:100%;
  max-width:min(480px, 100%);
  margin-inline:auto;
  text-wrap:balance;
  overflow-wrap:normal;
  max-width:440px;
  white-space:normal !important;
  color:#c4b4d2 !important;
  text-shadow:none !important;
  margin-inline:auto;
}
html.luwei-nexus .mobile-logo img.luwei-brand-image{
  width:164px !important;
  height:98px !important;
  object-fit:contain;
}
html.luwei-nexus .luwei-brand-kicker{
  display:block;
  margin:-8px 0 22px;
  font-size:11px;
  font-weight:750;
  letter-spacing:.27em;
  text-transform:uppercase;
  color:#d9a4fd;
}
html.luwei-nexus button[type="submit"]:not(:disabled) {
  background:var(--luwei-aurora) !important;
  color:white !important;
  border-color:transparent !important;
  box-shadow:0 10px 38px rgba(154,45,230,.20);
  font-weight:650;
}
html.luwei-nexus button[type="submit"]:not(:disabled):hover{
  box-shadow:0 11px 44px rgba(187,62,227,.31);
  filter:brightness(1.07);
}
html.luwei-nexus body:has(.lg-panel) input:not([type="checkbox"]):not([type="radio"]) {
  background:rgba(26,20,36,.88) !important;
  border-color:rgba(192,154,236,.25) !important;
  color:#faf5ff !important;
}
html.luwei-nexus body:has(.lg-panel) input::placeholder{color:#9686aa !important}
html.luwei-nexus body:has(.lg-panel) :is(h1,h2,h3,label,p) { color:var(--luwei-fg); }
html.luwei-nexus body:has(.lg-panel) .mobile-logo p {color:#c9a8dc !important;}
html.luwei-nexus .luwei-app-wordmark{color:var(--luwei-fg);font-weight:700;}
html.luwei-nexus .luwei-app-wordmark::after{
  content:" · LUWEI PELO MUNDO";
  color:#c88afc;
  font-size:.60em;
  letter-spacing:.06em;
  vertical-align:middle;
}
@media(max-width:1023px){
 html.luwei-nexus body:has(.lg-panel) #root > div > div:last-child{padding:24px 18px !important;}
 html.luwei-nexus .mobile-logo img.luwei-brand-image{height:88px !important;}
}
@media(prefers-reduced-motion:reduce){
 html.luwei-nexus :is(button,[role="button"]) {transition:none !important;}
 html.luwei-nexus .lg-panel .login-aurora{animation:none !important;}
}
/* Login surface refinements after real desktop/mobile visual inspection. */
html.luwei-nexus body:has(.lg-panel) .lg-panel + div {
  background:
    radial-gradient(ellipse 75% 52% at 100% 0%,rgba(116,33,218,.27),transparent 75%),
    radial-gradient(ellipse 95% 62% at 0% 100%,rgba(231,67,131,.17),transparent 80%),
    #0b0911 !important;
  color:#f8f3ff !important;
}
html.luwei-nexus body:has(.lg-panel) .lg-panel + div div:has(>form) {
  background:rgba(22,17,31,.94) !important;
  border:1px solid rgba(191,131,249,.26) !important;
  border-radius:22px !important;
  box-shadow:0 26px 90px rgba(3,2,12,.45),0 0 0 1px rgba(221,164,255,.035) !important;
  backdrop-filter:blur(18px);
}
html.luwei-nexus body:has(.lg-panel) .lg-panel + div :is(h1,h2,h3,label,strong) {
  color:#f7f0ff !important;
}
html.luwei-nexus body:has(.lg-panel) .lg-panel + div p {
  color:#beafcc !important;
}
html.luwei-nexus body:has(.lg-panel) .lg-panel + div :is(a,button):not([type="submit"]){
  color:#d0a0ff;
}
html.luwei-nexus body:has(.lg-panel) [aria-label="Change language"] {
  background:rgba(27,22,40,.90) !important;
  color:#e8d9f5 !important;
  border:1px solid rgba(189,134,244,.23) !important;
}
html.luwei-nexus .mobile-logo img.luwei-brand-image{
  width:220px !important;
  height:155px !important;
}
html.luwei-nexus .lg-panel img.luwei-brand-image{
  width:335px !important;
  height:235px !important;
}
html.luwei-nexus .mobile-logo {
  margin-bottom:18px !important;
}
html.luwei-nexus body:has(.lg-panel) .lg-panel + div .luwei-brand-kicker{
  color:#d8a3ff !important;
  margin:-12px 0 26px;
}
@media (max-width: 500px) {
  html.luwei-nexus body:has(.lg-panel) .lg-panel + div div:has(>form) {
    padding:28px 22px !important;
  }
}
/* Reinforce secondary-copy contrast on the dark login card. */
html.luwei-nexus body:has(.lg-panel) .lg-panel + div :is(span,small,a,button:not([type="submit"])) {
  color:#cfbfdf !important;
}
html.luwei-nexus body:has(.lg-panel) .lg-panel + div a:hover {
  color:#f0b0fa !important;
}

/* LUWEI TREK | Flow Projects Glass + Aurora Light
 * Source reference: Luwei-Soft-House/luwei-flow/src/features/projetos-v2/styles/projetos-v2.css
 * v6: full-application theme, respects TREK's .dark and [data-no-transparency].
 */
html.luwei-nexus {
  --lw-signature: linear-gradient(110deg,#7c3aed 0%,#c4089f 55%,#fd7d02 100%);
  --lw-rad-card:22px;
  --lw-glass-blur:blur(22px) saturate(160%);
  --lw-focus:#a78bfa;
  --lw-anim:cubic-bezier(.2,.8,.2,1);
}
html.luwei-nexus.dark {
  color-scheme:dark;
  --luwei-ink:#050507;
  --luwei-panel:#0b0b0d;
  --luwei-raised:#101013;
  --luwei-fg:#f4f4f5;
  --luwei-muted:#a1a1aa;
  --luwei-border:rgba(255,255,255,.09);
  --bg-primary:#050507;
  --bg-secondary:#0b0b0d;
  --bg-tertiary:#101013;
  --bg-card:#0d0d12;
  --bg-elevated:rgba(20,20,26,.86);
  --bg-input:#181821;
  --bg-hover:rgba(255,255,255,.055);
  --bg-selected:rgba(124,58,237,.19);
  --text-primary:#f4f4f5;
  --text-secondary:#c3c3cc;
  --text-muted:#a1a1aa;
  --text-faint:#8b8b94;
  --border-primary:rgba(255,255,255,.13);
  --border-secondary:rgba(255,255,255,.075);
  --border-faint:rgba(255,255,255,.06);
  --accent:#a78bfa;
  --accent-text:#101015;
  --accent-on:#a78bfa;
  --accent-hover:#c4b5fd;
  --accent-subtle:rgba(124,58,237,.16);
  --sidebar-bg:rgba(12,12,18,.78);
  --tooltip-bg:#17171e;
  --scrollbar-track:#0a0a0f;
  --scrollbar-thumb:#43404d;
  --lw-glass:rgba(18,18,26,.58);
  --lw-glass-soft:rgba(255,255,255,.035);
  --lw-glass-border:rgba(255,255,255,.09);
  --lw-glass-hi:rgba(255,255,255,.055);
  --lw-glass-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 60px rgba(0,0,0,.40);
  --lw-glow-shadow:0 30px 70px rgba(0,0,0,.36),0 0 50px rgba(196,8,159,.14);
  --lw-ambient:radial-gradient(ellipse 74% 60% at 100% 0%,rgba(109,49,197,.09),transparent 74%),radial-gradient(ellipse 64% 46% at 0% 100%,rgba(159,37,128,.07),transparent 73%);
}
html.luwei-nexus:not(.dark) {
  color-scheme:light;
  --luwei-ink:#f7f5fb;
  --luwei-panel:#ffffff;
  --luwei-raised:#f1eef9;
  --luwei-fg:#1c1927;
  --luwei-muted:#696477;
  --luwei-border:rgba(79,46,128,.14);
  --bg-primary:#f7f5fb;
  --bg-secondary:#f2eff9;
  --bg-tertiary:#eeeaf5;
  --bg-card:#ffffff;
  --bg-elevated:rgba(255,255,255,.88);
  --bg-input:#fff;
  --bg-hover:rgba(92,53,161,.06);
  --bg-selected:rgba(124,58,237,.12);
  --text-primary:#221c32;
  --text-secondary:#4e465e;
  --text-muted:#665f75;
  --text-faint:#777184;
  --border-primary:rgba(62,42,93,.18);
  --border-secondary:rgba(62,42,93,.10);
  --border-faint:rgba(62,42,93,.075);
  --accent:#6d28d9;
  --accent-text:#fff;
  --accent-on:#6d28d9;
  --accent-hover:#7c3aed;
  --accent-subtle:rgba(124,58,237,.11);
  --sidebar-bg:rgba(255,255,255,.83);
  --tooltip-bg:#fff;
  --scrollbar-track:#f2eff9;
  --scrollbar-thumb:#c3bbd7;
  --lw-glass:rgba(255,255,255,.72);
  --lw-glass-soft:rgba(255,255,255,.48);
  --lw-glass-border:rgba(58,38,100,.11);
  --lw-glass-hi:rgba(255,255,255,.66);
  --lw-glass-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 18px 40px rgba(43,26,77,.095);
  --lw-glow-shadow:0 22px 52px rgba(87,51,139,.10),0 0 39px rgba(173,88,232,.13);
  --lw-ambient:radial-gradient(ellipse 65% 52% at 100% 0%,rgba(201,174,249,.25),transparent 77%),radial-gradient(ellipse 50% 44% at 0% 100%,rgba(253,196,224,.24),transparent 80%);
}
html.luwei-nexus body {
  background:var(--lw-ambient),var(--bg-primary) !important;
  color:var(--text-primary) !important;
  accent-color:var(--accent);
}
html.luwei-nexus :is(#root,main) {color:var(--text-primary)}
html.luwei-nexus .trek-dash {
  --glass-bg:var(--lw-glass);
  --glass-border:var(--lw-glass-border);
  --glass-blur:var(--lw-glass-blur);
  --glass-highlight:linear-gradient(180deg,var(--lw-glass-hi),transparent 40%);
}
html.luwei-nexus :is(header,nav,[role="navigation"]) {
  --sidebar-bg:var(--lw-glass);
}
html.luwei-nexus header:not(.lg-panel *) {
  border-color:var(--border-faint) !important;
  backdrop-filter:blur(18px) saturate(135%);
  -webkit-backdrop-filter:blur(18px) saturate(135%);
}
html.luwei-nexus :is(input,textarea,select) {
  background-color:var(--bg-input);
  color:var(--text-primary);
  border-color:var(--border-primary);
}
html.luwei-nexus :is(input,textarea,select):focus-visible {
  outline:2px solid var(--accent) !important;
  outline-offset:2px;
}
html.luwei-nexus :is([role="dialog"],[role="menu"],[role="listbox"]) {
  background:var(--bg-elevated);
  color:var(--text-primary);
  border-color:var(--lw-glass-border);
  backdrop-filter:blur(22px) saturate(160%);
  -webkit-backdrop-filter:blur(22px) saturate(160%);
}
html.luwei-nexus .luwei-glass-card {
  position:relative;
  isolation:isolate;
  border-radius:var(--lw-rad-card) !important;
  border:1px solid var(--lw-glass-border) !important;
  background:linear-gradient(180deg,var(--lw-glass-hi),transparent 40%),var(--lw-glass) !important;
  backdrop-filter:var(--lw-glass-blur);
  -webkit-backdrop-filter:var(--lw-glass-blur);
  box-shadow:var(--lw-glass-shadow) !important;
  transition:transform .25s var(--lw-anim),box-shadow .25s,border-color .25s !important;
}
html.luwei-nexus .luwei-glass-card::after {
  content:"";
  position:absolute;
  inset:0;
  padding:1px;
  border-radius:inherit;
  background:var(--lw-signature);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s;
}
html.luwei-nexus .luwei-glass-card:is(:hover,:focus-within){
  border-color:color-mix(in srgb,var(--accent) 35%,var(--lw-glass-border)) !important;
  box-shadow:var(--lw-glow-shadow) !important;
  transform:translateY(-3px);
}
html.luwei-nexus .luwei-glass-card:is(:hover,:focus-within)::after {opacity:1}
html.luwei-nexus .luwei-nav-wordmark {
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  font-weight:750;
  color:var(--text-primary);
  font-size:13px;
  letter-spacing:-.025em;
  line-height:1.05;
  white-space:nowrap;
}
html.luwei-nexus .luwei-nav-wordmark small {
  font-size:9px;
  letter-spacing:.11em;
  font-weight:600;
  color:var(--accent);
  text-transform:uppercase;
}
html.luwei-nexus .luwei-nav-logo {
  width:33px !important;
  height:33px !important;
  object-fit:contain;
  flex-shrink:0;
}
html.luwei-nexus .luwei-nav-brand {
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-width:fit-content;
}
html.luwei-nexus:not(.dark) .lg-panel {
  background:radial-gradient(ellipse at 0% 20%,rgba(154,104,240,.18),transparent 54%),radial-gradient(ellipse at 100% 85%,rgba(254,117,164,.13),transparent 49%),linear-gradient(140deg,#fbf9ff,#f3edff 56%,#fff4fa) !important;
  border-color:var(--lw-glass-border) !important;
}
html.luwei-nexus:not(.dark) .lg-panel :is(h2,p) {
  color:var(--text-primary) !important;
  -webkit-text-fill-color:initial;
  text-shadow:none !important;
}
html.luwei-nexus:not(.dark) .lg-panel h2 {
  background:var(--lw-signature);
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
html.luwei-nexus:not(.dark) .lg-panel + div {
  background:var(--lw-ambient),#f7f5fb !important;
  color:var(--text-primary) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div div:has(>form){
  background:rgba(255,255,255,.83) !important;
  border:1px solid rgba(83,43,139,.13) !important;
  box-shadow:var(--lw-glass-shadow) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div :is(h1,h2,h3,label,strong){
  color:var(--text-primary) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div :is(p,small,span,a,button:not([type="submit"])){
  color:var(--text-secondary) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) input:not([type="checkbox"]):not([type="radio"]){
  background:#fff !important;
  border-color:rgba(84,55,118,.22) !important;
  color:var(--text-primary) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) input::placeholder{color:#7b728b !important}
html.luwei-nexus:not(.dark) .luwei-brand-kicker {color:#6d28d9}
html.luwei-nexus:not(.dark) [aria-label="Change language"] {
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(83,43,139,.14) !important;
  color:var(--text-primary) !important;
}
html.luwei-nexus.dark .lg-panel {background:radial-gradient(ellipse 75% 60% at 0% 25%,rgba(106,32,188,.24),transparent 72%),radial-gradient(ellipse at 100% 90%,rgba(186,46,145,.15),transparent 54%),linear-gradient(135deg,#08080c,#131019) !important}
html.luwei-nexus.dark .lg-panel + div {background:var(--lw-ambient),#07070a !important}
html.luwei-nexus[data-no-transparency] .luwei-glass-card {
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  background:var(--bg-card) !important;
}
html.luwei-nexus[data-no-transparency] :is(header,[role="dialog"],[role="menu"]) {
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
@media(max-width:700px){
  html.luwei-nexus .luwei-glass-card {border-radius:16px !important}
  html.luwei-nexus .luwei-nav-wordmark {font-size:11px}
  html.luwei-nexus .luwei-nav-logo {width:27px !important;height:27px !important}
}
@media(prefers-reduced-motion:reduce){
  html.luwei-nexus .luwei-glass-card {transition:none !important;transform:none !important}
  html.luwei-nexus .luwei-glass-card::after {transition:none !important}
}
/* TREK login uses inline backgrounds; this needs higher specificity than legacy dark login overrides. */
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div,
html.luwei-nexus:not(.dark) body:has(.lg-panel) #root > div:has(.lg-panel) > div:last-child {
  background:var(--lw-ambient),#f7f5fb !important;
  color:var(--text-primary) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div div:has(>form) {
  background:rgba(255,255,255,.88) !important;
  color:var(--text-primary) !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div :is(.mobile-logo,.luwei-brand-kicker,p){
  color:var(--text-secondary) !important;
  text-shadow:none !important;
}
html.luwei-nexus:not(.dark) body:has(.lg-panel) .lg-panel + div .luwei-brand-kicker {
  color:#6d28d9 !important;
}

/* LUWEI TREK v7: REAL TREK 5.0.1 surfaces, not speculative card selectors.
   Dashboard token names were verified against client/src/styles/dashboard.css.
   Uses the same Flow Projetos v2 glass physics and accent border. */
html.luwei-nexus.dark .trek-dash {
  --bg:#050507; --bg-2:#0d0d12; --surface:#121118; --surface-2:#191722;
  --ink:#f4f4f5; --ink-2:#c4bfcd; --ink-3:#a4a0af;
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.17);
  --accent-ink:#d8b4fe; --accent-soft:rgba(124,58,237,.16);
}
html.luwei-nexus:not(.dark) .trek-dash {
  --bg:#f7f5fb; --bg-2:#eeeaf8; --surface:#fff; --surface-2:#f5f1fc;
  --ink:#241b36; --ink-2:#514662; --ink-3:#6b627b;
  --line:rgba(80,48,129,.14); --line-2:rgba(80,48,129,.24);
  --accent-ink:#6d28d9; --accent-soft:rgba(124,58,237,.11);
}
html.luwei-nexus .trek-dash {
  --glass-bg:linear-gradient(180deg,var(--lw-glass-hi),transparent 40%),var(--lw-glass);
  --glass-border:var(--lw-glass-border);
  --glass-shadow:var(--lw-glass-shadow);
  --glass-shadow-hover:var(--lw-glow-shadow);
  --glass-highlight:inset 0 1px 0 var(--lw-glass-hi);
  --glass-blur:blur(22px) saturate(160%);
  --r-lg:22px;--r-xl:22px;
  background:var(--lw-ambient),var(--bg) !important;
  color:var(--ink);
}
html.luwei-nexus .trek-dash-scroll {
  background:transparent;
}
html.luwei-nexus .trek-dash .atlas-card,
html.luwei-nexus .trek-dash .tool,
html.luwei-nexus .trek-dash .trip-card,
html.luwei-nexus .trek-dash .add-trip-card,
html.luwei-nexus .trek-dash .pass-card {
  position:relative;
  isolation:isolate;
  border-radius:22px !important;
  border:1px solid var(--lw-glass-border) !important;
  background:linear-gradient(180deg,var(--lw-glass-hi),transparent 40%),var(--lw-glass) !important;
  box-shadow:var(--lw-glass-shadow) !important;
  backdrop-filter:blur(22px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(160%) !important;
  transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s,border-color .25s !important;
}
html.luwei-nexus .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card)::after {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg,#7c3aed,#c4089f 52%,#fd7d02);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s;
}
html.luwei-nexus .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card):is(:hover,:focus-within){
  transform:translateY(-4px);
  box-shadow:var(--lw-glow-shadow) !important;
  border-color:color-mix(in srgb,var(--accent) 45%,var(--lw-glass-border)) !important;
}
html.luwei-nexus .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card):is(:hover,:focus-within)::after {opacity:1}
html.luwei-nexus .trek-dash .atlas-card.passport {
  background:
    radial-gradient(ellipse 110% 130% at 95% 0%,rgba(253,125,2,.24),transparent 55%),
    radial-gradient(ellipse 140% 100% at 4% 100%,rgba(196,8,159,.29),transparent 65%),
    linear-gradient(133deg,#2a0f65,#6a1eaf 56%,#b63688) !important;
  border-color:rgba(206,156,255,.35) !important;
  color:white;
}
html.luwei-nexus .trek-dash .atlas-card.passport .value {color:#fff}
html.luwei-nexus .trek-dash .atlas-card.passport .delta {color:#f0dafd}
html.luwei-nexus .trek-dash .atlas-card .value {
  letter-spacing:-.05em;
  font-weight:650;
}
html.luwei-nexus .trek-dash .atlas-card:not(.passport) .value {
  color:var(--ink);
}
html.luwei-nexus .trek-dash .add-trip-card {
  border-style:dashed !important;
  border-color:color-mix(in srgb,var(--accent) 38%,var(--lw-glass-border)) !important;
}
html.luwei-nexus .trek-dash .add-trip-card .circ,
html.luwei-nexus .trek-dash .fab-new-trip,
html.luwei-nexus .trek-dash .btn-primary {
  background:linear-gradient(110deg,#7c3aed,#c4089f 55%,#fd7d02) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 10px 32px rgba(127,43,192,.22);
}
html.luwei-nexus .trek-dash .sec-title {
  color:var(--ink);
  letter-spacing:-.04em;
}
html.luwei-nexus .trek-dash .tool-title {
  color:var(--ink-2);
  font-weight:650;
}
html.luwei-nexus .trek-dash .page {
  background:transparent;
}
html.luwei-nexus .trek-dash .seg {
  border:1px solid var(--lw-glass-border);
  background:var(--lw-glass-soft);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
html.luwei-nexus .trek-dash .seg button.on {
  background:linear-gradient(115deg,rgba(124,58,237,.22),rgba(196,8,159,.11)) !important;
  border:1px solid color-mix(in srgb,var(--accent) 25%,transparent) !important;
  color:var(--ink) !important;
}
html.luwei-nexus .trek-dash .dash-search,
html.luwei-nexus .trek-dash .fx-field,
html.luwei-nexus .trek-dash .tz-dot {
  background:var(--lw-glass-soft) !important;
  border:1px solid var(--lw-glass-border);
}
html.luwei-nexus .trek-dash .dash-search input {
  background:transparent !important;
  color:var(--ink) !important;
}
html.luwei-nexus .trek-nav-pill {
  border:1px solid var(--lw-glass-border) !important;
  background:var(--lw-glass) !important;
  backdrop-filter:blur(22px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(160%) !important;
  box-shadow:var(--lw-glass-shadow) !important;
}
html.luwei-nexus .trek-nav-pill [aria-current="page"],
html.luwei-nexus .trek-nav-pill .active {
  background:var(--accent-subtle) !important;
  color:var(--accent) !important;
}
html.luwei-nexus div.fixed.top-0.inset-x-0 {
  background:var(--lw-glass) !important;
  border-bottom:1px solid var(--lw-glass-border) !important;
  backdrop-filter:blur(22px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(160%) !important;
}
html.luwei-nexus a[href="/dashboard"] .luwei-nav-logo {
  width:32px !important;
  height:32px !important;
  object-fit:contain;
  flex:none;
}
html.luwei-nexus a[href="/dashboard"].luwei-nav-brand {
  gap:9px;
  min-width:max-content;
}
html.luwei-nexus a[href="/dashboard"] .luwei-nav-wordmark {
  font-size:13px;
  letter-spacing:-.02em;
  color:var(--text-primary);
}
html.luwei-nexus a[href="/dashboard"] .luwei-nav-wordmark small {
  color:var(--accent);
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
}
html.luwei-nexus section.bg-surface-secondary.rounded-2xl,
html.luwei-nexus section[class*="bg-surface-secondary"][class*="rounded-"],
html.luwei-nexus aside[class*="bg-surface-secondary"][class*="rounded-"],
html.luwei-nexus div[class*="lg:flex"][class*="bg-surface-secondary"][class*="rounded-"] {
  border:1px solid var(--lw-glass-border) !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,var(--lw-glass-hi),transparent 40%),var(--lw-glass) !important;
  box-shadow:var(--lw-glass-shadow) !important;
  backdrop-filter:blur(22px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(160%) !important;
}
html.luwei-nexus section[class*="bg-surface-secondary"][class*="rounded-"] > div:first-child {
  border-color:var(--lw-glass-border) !important;
  background:color-mix(in srgb,var(--accent) 8%,var(--lw-glass)) !important;
}
html.luwei-nexus .bg-surface-tertiary {
  background-color:var(--bg-tertiary) !important;
}
html.luwei-nexus .bg-surface-secondary {
  background-color:var(--bg-secondary) !important;
}
html.luwei-nexus .bg-surface-card {
  background-color:var(--bg-card) !important;
}
html.luwei-nexus[data-no-transparency] .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card),
html.luwei-nexus[data-no-transparency] section[class*="bg-surface-secondary"][class*="rounded-"] {
  background:var(--bg-card) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
@media(max-width:720px) {
 html.luwei-nexus .trek-dash .atlas-card,
 html.luwei-nexus .trek-dash .tool,
 html.luwei-nexus .trek-dash .trip-card {border-radius:17px !important;}
 html.luwei-nexus .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card):hover {
   transform:none !important;
 }
}
@media(prefers-reduced-motion:reduce){
 html.luwei-nexus .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card) {
   transition:none !important;
 }
}

/* Per-theme elevation for persistent TREK dashboard cards. */
html.luwei-nexus:not(.dark) .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card) {
 border-color:rgba(58,38,100,.14) !important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 18px 40px rgba(43,26,77,.10) !important;
}
html.luwei-nexus.dark .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card) {
 border-color:rgba(255,255,255,.11) !important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 60px rgba(0,0,0,.4) !important;
}
html.luwei-nexus .trek-dash :is(.atlas-card,.tool,.trip-card,.add-trip-card,.pass-card):is(:hover,:focus-within) {
 box-shadow:var(--lw-glow-shadow) !important;
 border-color:color-mix(in srgb,var(--accent) 45%,var(--lw-glass-border)) !important;
}


/* Família Luwei: project knowledge logos, preserved across Aurora/Flow themes. */
html.luwei-nexus.dark .lg-panel img.luwei-brand-image {
  width: min(460px, 85%) !important;
  height: 186px !important;
  object-fit: contain;
}
html.luwei-nexus:not(.dark) .lg-panel img.luwei-brand-image {
  width: min(320px, 75%) !important;
  height: 210px !important;
  object-fit: contain;
}
html.luwei-nexus .mobile-logo img.luwei-brand-image {
  max-width: min(280px, 80vw) !important;
  object-fit: contain !important;
}
html.luwei-nexus.dark .mobile-logo img.luwei-brand-image {
  height: 104px !important;
  width: min(300px, 85vw) !important;
}
html.luwei-nexus:not(.dark) .mobile-logo img.luwei-brand-image {
  height: 155px !important;
  width: min(230px, 70vw) !important;
}
html.luwei-nexus a[href="/dashboard"] .luwei-nav-logo {
  width: 32px !important;
  height: 32px !important;
}
html.luwei-nexus .luwei-nav-wordmark {
  font-size: 12.5px;
  letter-spacing: -0.015em;
  line-height: 1.08;
}
@media(max-width: 700px) {
  html.luwei-nexus .mobile-logo img.luwei-brand-image {
    max-width: min(250px, 78vw) !important;
  }
}
