*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--purple-rgb: 187,100,255;--pink-rgb: 255,102,196;--purple: #BB64FF;--pink: #FF66C4;--bg: #0a0a0a;--card: #141414;--border: rgba(187,100,255,.15);--input-bg: #1c1c1c;--text: #e5e7eb;--muted: #9ca3af;--heading-font: "Inter", sans-serif;--body-font: "Inter", sans-serif;--grad-start: var(--purple);--grad-end: var(--pink);--page-grad: radial-gradient(ellipse at top, rgba(187,100,255,.12) 0%, transparent 60%), #0a0a0a}:root[data-theme=wedding]{--purple-rgb: 212,175,55;--pink-rgb: 248,195,200;--purple: #D4AF37;--pink: #F8C3C8;--bg: #FAFAF9;--card: #FFFFFF;--border: rgba(212,175,55,.25);--input-bg: #FFFFFF;--text: #4A4A4A;--muted: #8C8C8C;--heading-font: "Cormorant Garamond", serif;--body-font: "Nunito Sans", sans-serif;--grad-start: #D4AF37;--grad-end: #E6C27A;--page-grad: radial-gradient(ellipse at top, rgba(212,175,55,.08) 0%, transparent 60%), #FAFAF9}body{font-family:var(--body-font);background:var(--bg);color:var(--text);min-height:100vh}h1,h2,h3,.heading{font-family:var(--heading-font)}input,select,textarea{font-family:inherit;background:var(--input-bg);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:.75rem 1rem;font-size:.9rem;width:100%;outline:none;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #bb64ff26}input::placeholder,textarea::placeholder{color:#6b7280}button{cursor:pointer;font-family:inherit}.btn-primary{background:linear-gradient(135deg,var(--purple),var(--pink));color:#fff;border:none;border-radius:12px;padding:.9rem 2rem;font-size:1rem;font-weight:600;transition:opacity .2s,transform .1s}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--card);border:1px solid var(--border);border-radius:16px}.gradient-text{background:linear-gradient(135deg,var(--purple),var(--pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0f0f0f}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}
