/* Ambient light: soft color fields, finite interactions, quiet continuous motion. */
[data-ambient]{position:relative;isolation:isolate;--ambient-play:paused}
[data-ambient].aura-active{--ambient-play:running}
.q-ambient{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;border-radius:inherit;contain:paint}
.q-ambient-field{position:absolute;inset:-15%;transform:translate(var(--aura-x,0px),var(--aura-y,0px));transition:transform 1800ms cubic-bezier(.16,1,.3,1)}
.q-ambient-light{position:absolute;display:block;width:70%;height:100%;border-radius:50%;background:radial-gradient(ellipse,rgba(77,135,255,.23),rgba(117,159,255,.09) 36%,transparent 68%);top:-30%;left:25%;animation:aura-drift-one 18s ease-in-out infinite alternate;animation-play-state:var(--ambient-play)}
.q-ambient-light:nth-child(2){left:-28%;top:10%;background:radial-gradient(ellipse,rgba(71,130,246,.18),rgba(130,173,255,.08) 40%,transparent 70%);animation-name:aura-drift-two;animation-duration:22s;animation-delay:-9s}
.q-ambient-light:nth-child(3){left:58%;top:28%;width:58%;background:radial-gradient(ellipse,rgba(76,199,240,.19),rgba(105,209,242,.05) 40%,transparent 70%);animation-name:aura-drift-three;animation-duration:25s;animation-delay:-13s}
[data-ambient-tone=dark] .q-ambient-light{background:radial-gradient(ellipse,rgba(49,117,255,.46),rgba(43,109,238,.13) 40%,transparent 70%)}
[data-ambient-tone=dark] .q-ambient-light:nth-child(2){background:radial-gradient(ellipse,rgba(65,117,249,.3),rgba(64,114,235,.1) 40%,transparent 70%)}
[data-ambient-tone=dark] .q-ambient-light:nth-child(3){background:radial-gradient(ellipse,rgba(51,203,245,.28),rgba(47,150,237,.08) 40%,transparent 70%)}
.q-hero-lab .q-ambient{z-index:-2}
.q-hero-lab .q-ambient-light{width:110%;height:125%;top:-45%;left:-20%}
.q-hero-lab .q-ambient-light:nth-child(2){top:10%;left:20%}
.q-hero-lab .q-ambient-light:nth-child(3){top:15%;left:-10%}
.q-software .q-ambient-light{opacity:.75}
.q-hardware .q-ambient-light{height:70%;top:-14%}
.q-hardware .q-ambient-light:nth-child(2){top:45%;left:-23%}
.q-hardware .q-ambient-light:nth-child(3){top:52%;left:54%}
@keyframes aura-drift-one{from{transform:translate(-12%,-4%) scale(.95) rotate(-8deg)}to{transform:translate(17%,15%) scale(1.2) rotate(14deg)}}
@keyframes aura-drift-two{from{transform:translate(0,12%) scale(1)}to{transform:translate(22%,-14%) scale(1.18)}}
@keyframes aura-drift-three{from{transform:translate(9%,0) scale(1.08)}to{transform:translate(-22%,-19%) scale(.9)}}
@keyframes q-levitate{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes q-light-orbit{from{rotate:0deg}to{rotate:360deg}}
@media(prefers-reduced-motion:no-preference){
  .q-board-float{animation:q-board-arrive 1000ms var(--q-ease) 100ms both,q-levitate 8s ease-in-out 1100ms infinite;animation-play-state:running,var(--ambient-play)}
  .q-code-slip{animation:q-code-arrive 900ms var(--q-ease) 350ms both,q-levitate 7s ease-in-out 2800ms infinite;animation-play-state:running,var(--ambient-play)}
  .q-core-photo{animation:q-levitate 10s ease-in-out infinite;animation-play-state:var(--ambient-play)}
  .q-orbit-one{animation:q-light-orbit 35s linear infinite;animation-play-state:var(--ambient-play)}
  .q-orbit-one:after{content:'';position:absolute;width:5px;height:5px;border-radius:50%;left:50%;top:-3px;background:#dceeff;box-shadow:0 0 12px 2px #b4d9ff80}
  .q-product,.q-workspace{transition:transform 350ms cubic-bezier(.16,1,.3,1),box-shadow 350ms ease,border-color 250ms ease}
  .q-product:hover{box-shadow:0 18px 34px -23px #315deb60}
}
.ambient-toggle{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid #ffffff30;color:#d6e1f6;min-height:36px;padding:7px 11px;border-radius:6px;font:inherit;font-size:10px;cursor:pointer;transition:background 180ms ease,border-color 180ms ease}
.ambient-toggle:hover{background:#ffffff10;border-color:#ffffff70}.ambient-toggle i{font-size:15px}
html[data-effects=paused] .q-ambient-light,html[data-effects=paused] .q-core-photo,html[data-effects=paused] .q-orbit-one{animation-play-state:paused!important}
html[data-effects=paused] .q-board-float,html[data-effects=paused] .q-code-slip{animation-play-state:running,paused!important;rotate:0deg!important}
html[data-effects=paused] .q-ambient-field{transform:none;transition:none}
html[data-motion-suspended] [data-ambient]{--ambient-play:paused}
@media(max-width:640px){.q-ambient-light{width:110%;height:75%;left:-20%;top:-5%;opacity:.8}.q-ambient-light:nth-child(2){left:-35%;top:35%}.q-ambient-light:nth-child(3){left:20%;top:55%}.q-hero-lab .q-ambient-light{opacity:1}.ambient-toggle{font-size:11px;min-height:40px}}
@media(prefers-reduced-motion:reduce){.q-ambient-light,.q-board-float,.q-code-slip,.q-core-photo,.q-orbit-one{animation:none!important}.q-ambient-field{transform:none!important;transition:none!important}.ambient-toggle{display:none}}
