@tailwind base;@tailwind components;@tailwind utilities;:root{--bg-primary: #faf8ff;--bg-secondary: #ffffff;--bg-tertiary: #f5f3ff;--text-primary: #1e1b4b;--text-secondary: #4c1d95;--text-muted: #6b21a8;--border-color: rgba(124, 58, 237, .1);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .18);--shadow-color: rgba(31, 38, 135, .15)}[data-theme=dark]{--bg-primary: #0f0a1e;--bg-secondary: #1a1625;--bg-tertiary: #251e35}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.6;transition:background-color .3s ease,color .3s ease;overflow-x:hidden}@layer components{.card{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 1px 3px #0000001a}.card-hover{transition:all .2s ease}.card-hover:hover{box-shadow:0 4px 6px -1px #0000001a}.btn-primary{background:var(--primary);color:#fff;border:none;transition:all .2s ease}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.input-field{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);transition:all .2s ease}.input-field:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.input-field::placeholder{color:var(--text-muted)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-hover)}::selection{background-color:var(--primary);color:#fff}::-moz-selection{background-color:var(--primary);color:#fff}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:768px){html{font-size:14px}button,a,input,select,textarea{min-height:44px}}@media print{body{background:#fff;color:#000}.card{background:#fff;border:1px solid #e5e7eb;box-shadow:none}}.spinner{border:3px solid var(--primary);border-top:3px solid var(--primary-hover);border-radius:50%;width:40px;height:40px;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
