/* LuxBMI V22: Cloud Ascend + infrastructure scrollbar + cloud-node cursor.

   Brand details are deliberately quiet. Native scrolling and keyboard navigation remain intact. */



/* Firefox and other standard-property engines. Chromium/Safari get richer WebKit styling below. */

@supports (-moz-appearance: none) {

  html { scrollbar-width: thin; scrollbar-color: rgba(93,203,238,.73) rgba(26,29,63,.42); }

}



/* Browser-native page scrollbar, with indigo translucent rail / cyan-blue thumb / gold hairline. */

html::-webkit-scrollbar { width: 10px; }

html::-webkit-scrollbar-track {

  background: linear-gradient(180deg,rgba(13,22,52,.48),rgba(37,34,83,.53),rgba(8,23,54,.48));

  border-left: 1px solid rgba(209,174,102,.16);

}

html::-webkit-scrollbar-thumb {

  background:

    linear-gradient(165deg,rgba(130,224,246,.88),rgba(66,163,215,.83) 47%,rgba(84,90,176,.82)) padding-box,

    linear-gradient(180deg,rgba(218,184,108,.45),rgba(80,197,225,.18)) border-box;

  border: 2px solid transparent;

  border-radius: 999px;

}

html::-webkit-scrollbar-thumb:hover {

  background:

    linear-gradient(165deg,rgba(165,232,247,.95),rgba(72,178,220,.9) 47%,rgba(100,109,193,.9)) padding-box,

    linear-gradient(180deg,rgba(231,198,128,.58),rgba(92,209,236,.25)) border-box;

}

html::-webkit-scrollbar-corner { background:rgba(9,20,49,.5); }



/* Mobile browsers are free to preserve native overlay indicators where custom styling is unavailable. */

@media (pointer: coarse) {

  html::-webkit-scrollbar { width: 5px; }

  html::-webkit-scrollbar-thumb {

    background: linear-gradient(180deg,rgba(95,214,244,.67),rgba(92,91,176,.66));

    border: 1px solid rgba(209,178,113,.26);

  }

}



/* Our V22 cloud replaces Astra's default scroll-to-top control — no duplicate buttons. */

#ast-scroll-top { display:none !important; }



/* Real-looking, feathered atmospheric cloud asset with just an understated upward marker. */

.lux-cloud-top {

  position:fixed;

  right:max(17px,calc(env(safe-area-inset-right,0px) + 17px));

  bottom:max(17px,calc(env(safe-area-inset-bottom,0px) + 17px));

  z-index:85;

  display:grid;

  place-items:center;

  width:66px;height:54px;padding:0;margin:0;

  border:0;outline:none;background:transparent;

  opacity:0;visibility:hidden;pointer-events:none;

  cursor:pointer;

  transform:translateY(4px);

  transition:opacity .22s ease,transform .22s ease,visibility .22s ease;

  -webkit-tap-highlight-color:transparent;

}

.lux-cloud-top.is-visible {

  opacity:.75;visibility:visible;pointer-events:auto;transform:translateY(0);

}

.lux-cloud-top__cloud {

  display:block;width:68px;height:46px;object-fit:contain;

  filter:drop-shadow(0 3px 7px rgba(0,10,30,.25));

}

.lux-cloud-top__arrow {

  position:absolute;left:50%;top:51%;width:22px;height:22px;

  transform:translate(-50%,-50%);

  fill:none;stroke:rgba(230,189,111,.82);

  stroke-width:3.7;stroke-linecap:round;stroke-linejoin:round;

  filter:drop-shadow(0 1px 2px rgba(1,13,32,.65));

}

@media(hover:hover) and (pointer:fine) {

  .lux-cloud-top:hover {opacity:.90;transform:translateY(-2px);}

}

.lux-cloud-top:focus-visible {

  opacity:1;outline:2px solid rgba(236,196,112,.9);outline-offset:2px;border-radius:30px;

}

.lux-cloud-top:active {opacity:1;transform:scale(.96);}

body.lux-audio-prompt-open .lux-cloud-top,

body.lux-menu-open .lux-cloud-top {

  opacity:0;visibility:hidden;pointer-events:none;

}

@media(max-width:680px) {

  .lux-cloud-top {

    width:60px;height:52px;

    right:max(12px,calc(env(safe-area-inset-right,0px) + 12px));

    bottom:max(12px,calc(env(safe-area-inset-bottom,0px) + 12px));

  }

  .lux-cloud-top__cloud {width:60px;height:42px;}

  .lux-cloud-top__arrow {width:21px;height:21px;}

  .lux-cloud-top.is-visible {opacity:.75;}

}

@media(prefers-reduced-motion:reduce) {

  .lux-cloud-top {transition:none !important;}

}

/* Superseded by luxbmi-cursors.css, loaded after all theme styles. */
