/* GlassSurface (non-React) implementation
   Goal: match @react-bits/GlassSurface-JS-CSS fallback look:
   - white frost (not fully transparent)
   - strong blur + saturation + brightness
   - soft inner highlights + outer shadow
*/

:root {
  /* default tokens */
  --gs-bg: rgba(255, 255, 255, 0.14);
  --gs-blur: 10px;
  --gs-saturate: 1.8;
  --gs-brightness: 1.1;
  --gs-border: rgba(255, 255, 255, 0.18);

  --gs-shadow:
    0 8px 32px 0 rgba(31, 38, 135, 0.20),
    0 2px 16px 0 rgba(31, 38, 135, 0.10),
    inset 0 1px 0 0 rgba(255, 255, 255, 0.40),
    inset 0 -1px 0 0 rgba(255, 255, 255, 0.20);
}

@media (prefers-color-scheme: dark) {
  :root {
    --gs-bg: rgba(255, 255, 255, 0.08);
    --gs-brightness: 1.2;
    --gs-border: rgba(255, 255, 255, 0.16);
  }
}

/* base class */
.glass-surface {
  position: relative;
  overflow: hidden;
  background: var(--gs-bg);
  backdrop-filter: blur(var(--gs-blur)) saturate(var(--gs-saturate)) brightness(var(--gs-brightness));
  -webkit-backdrop-filter: blur(var(--gs-blur)) saturate(var(--gs-saturate)) brightness(var(--gs-brightness));
  border: 1px solid var(--gs-border);
  box-shadow: var(--gs-shadow);
}

/* if browser doesn't support backdrop-filter */
@supports not (backdrop-filter: blur(10px)) {
  .glass-surface {
    background: rgba(255, 255, 255, 0.40);
    box-shadow:
      inset 0 1px 0 0 rgba(255, 255, 255, 0.50),
      inset 0 -1px 0 0 rgba(255, 255, 255, 0.30);
  }

  .glass-surface::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.15);
    border-radius: inherit;
    z-index: 0;
  }

  .glass-surface > * {
    position: relative;
    z-index: 1;
  }
}

