:root{--color-page: #000103;--color-surface: #583714;--color-elevated: #583714;--color-gold: #EEB349;--color-gold-light: #F0E8C6;--color-gold-dark: #BB630C;--color-gold-glow: rgba(238, 179, 73, .3);--color-gold-subtle: rgba(238, 179, 73, .15);--color-gold-dim: rgba(238, 179, 73, .1);--color-success: #22c55e;--color-success-glow: rgba(34, 197, 94, .3);--color-error: #ef4444;--color-error-glow: rgba(239, 68, 68, .3);--color-warning: #f59e0b;--color-info: #3b82f6;--color-text-primary: #F0E8C6;--color-text-secondary: #938C7D;--color-text-muted: rgba(147, 140, 125, .7);--color-text-disabled: rgba(147, 140, 125, .4);--font-display: "Playfair Display", serif;--font-body: "Instrument Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .5);--shadow-xl: 0 25px 50px rgba(0, 0, 0, .6);--shadow-gold: 0 0 30px rgba(212, 175, 55, .3);--shadow-gold-lg: 0 0 50px rgba(212, 175, 55, .4);--focus-ring: 0 0 0 2px var(--color-page), 0 0 0 4px var(--color-gold)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{font-family:var(--font-body);background-color:var(--color-page);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring)}button:focus-visible,[role=button]:focus-visible{outline:none;box-shadow:var(--focus-ring)}a:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 3px var(--color-gold-dim)}.skip-link{position:absolute;top:-100%;left:50%;transform:translate(-50%);background:var(--color-gold);color:var(--color-page);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-weight:600;z-index:9999;transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-4)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#fff3}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}::-moz-selection{background:var(--color-gold);color:var(--color-page)}::selection{background:var(--color-gold);color:var(--color-page)}button,a,[role=button],.clickable{cursor:pointer}.text-balance{text-wrap:balance}@keyframes pulse-gold{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.spinner{width:20px;height:20px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}.spinner-gold{border-top-color:var(--color-gold)}.input-error{border-color:var(--color-error)!important;box-shadow:0 0 0 3px var(--color-error-glow)}.input-success{border-color:var(--color-success)!important;box-shadow:0 0 0 3px var(--color-success-glow)}.error-message{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-1)}.success-message{color:var(--color-success);font-size:var(--text-sm);margin-top:var(--space-1)}
