:root{--bg-deep: #0a0a12;--bg-mid: #0f0f1a;--bg-card: rgba(18, 18, 32, .65);--bg-card-solid: #121220;--rose: #e8a0b4;--rose-soft: rgba(232, 160, 180, .15);--rose-glow: rgba(232, 160, 180, .3);--lavender: #b8a9d4;--lavender-soft: rgba(184, 169, 212, .12);--gold: #d4b896;--gold-soft: rgba(212, 184, 150, .15);--moonlight: #c8c4d8;--starlight: #e8e4f0;--text-primary: #e8e4f0;--text-secondary: #9a94a8;--text-muted: #6a6478;--border-subtle: rgba(184, 169, 212, .08);--border-glow: rgba(232, 160, 180, .2);--font-display: "Cormorant Garamond", "Georgia", serif;--font-body: "DM Sans", "Helvetica Neue", sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-pill: 100px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--bg-deep);color:var(--text-primary);min-height:100vh;overflow-x:hidden;line-height:1.6}#root{min-height:100vh;position:relative}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--lavender-soft);border-radius:100px}::-webkit-scrollbar-thumb:hover{background:#b8a9d440}::selection{background:var(--rose-soft);color:var(--rose)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;letter-spacing:.02em;line-height:1.3}a{color:var(--rose);text-decoration:none;transition:opacity .3s ease}a:hover{opacity:.8}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes gentlePulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes softFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.fade-in-up{animation:fadeInUp .8s ease forwards}.glass-card{background:var(--bg-card);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:0 4px 32px #0000004d,inset 0 1px #ffffff08}
