/* idcub · 主题配置变体：圆角、图片比例与强制浅色。
   组件与依赖说明：../docs/CSS-ARCHITECTURE.md。 */

[data-radius="soft"] {
  --nv-radius-sm: .5rem;
  --nv-radius-md: .75rem;
  --nv-radius-lg: 1rem;
  --nv-radius-xl: 1.5rem;
  --nv-radius-2xl: 2rem;
  --nv-radius-card: 1rem;
  --nv-radius-btn: .75rem;
  --nv-radius-chip: .625rem;
  --nv-radius-sheet: 1.25rem;
}

[data-radius="rounded"] {
  --nv-radius-sm: .625rem;
  --nv-radius-md: 1rem;
  --nv-radius-lg: 1.25rem;
  --nv-radius-xl: 1.75rem;
  --nv-radius-2xl: 2.25rem;
  --nv-radius-card: 1rem;
  --nv-radius-btn: .75rem;
  --nv-radius-chip: .625rem;
  --nv-radius-sheet: 1.5rem;
}

[data-radius="square"] {
  --nv-radius-sm: .25rem;
  --nv-radius-md: .375rem;
  --nv-radius-lg: .5rem;
  --nv-radius-xl: .75rem;
  --nv-radius-2xl: 1rem;
  --nv-radius-card: .375rem;
  --nv-radius-btn: .375rem;
  --nv-radius-chip: .25rem;
  --nv-radius-sheet: .5rem;
  --nv-glass: rgba(255, 255, 255, .94);
  --nv-glass-strong: rgba(255, 255, 255, .98);
  --nv-blur: saturate(180%);
  --nv-blur-strong: saturate(190%);
}

[data-card-ratio="square"] {
  --nv-card-ratio: 1 / 1;
}

[data-card-ratio="tall"] {
  --nv-card-ratio: 3 / 4;
}

[data-card-ratio="wide"] {
  --nv-card-ratio: 4 / 3;
}

[data-force-light] {
  color-scheme: light;
}

[data-force-light] .nv-header,
[data-force-light] .nv-drawer,
[data-force-light] .nv-drop__menu,
[data-force-light] .nv-buybar {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.nv-header .nv-btn {
  border-radius: var(--nv-radius-pill);
  white-space: nowrap;
}

.nv-btn--white {
  background-image: var(--nv-gradient);
  border-color: transparent;
  color: var(--nv-text-on-solid, #fff);
  border-radius: var(--nv-radius-pill);
  font-weight: var(--nv-weight-bold);
  box-shadow: var(--nv-shadow-brand);
}

.nv-btn--white:hover:not(:disabled) {
  color: var(--nv-text-on-solid, #fff);
  filter: brightness(1.06);
  transform: translateY(-1px);
  box-shadow: 0 14px 30px -14px rgba(var(--nv-brand-rgb), 0.55);
  box-shadow: 0 14px 30px -14px color-mix(in srgb, var(--nv-brand) 55%, transparent);
}

.nv-btn--glass {
  background-color: transparent;
  border-color: var(--nv-border-strong, var(--nv-border));
  color: var(--nv-text-primary);
  border-radius: var(--nv-radius-pill);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.nv-btn--glass:hover:not(:disabled) {
  background-color: var(--nv-brand-soft);
  border-color: var(--nv-border-brand);
  color: var(--nv-brand-ink);
}

.nv-header .nv-icon-btn {
  border-radius: var(--nv-radius-pill);
  color: var(--nv-text-secondary);
}

.nv-header .nv-icon-btn:hover {
  background-color: var(--nv-brand-softer);
  color: var(--nv-brand-ink);
}

.nv-header .nv-user-btn:hover {
  background-color: var(--nv-brand-softer);
  box-shadow: 0 0 0 2px var(--nv-brand-soft);
}
