:root{--color-primary: #4f46e5;--color-secondary: #0f172a;--color-accent: #6366f1;--color-background: #f8fafc;--color-text: #0f172a;--color-primary-light: #818cf8;--color-primary-dark: #3730a3;--color-secondary-light: #334155;--color-secondary-dark: #020617;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--spacing-base: 2.5rem;--spacing-half: 1.25rem;--spacing-quarter: .625rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.5rem;--radius-xl: 2rem;--radius-2xl: 2.5rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--transition-fast: .15s ease-in-out;--transition-base: .3s ease-in-out;--transition-slow: .5s ease-in-out}*{transition:color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out,box-shadow .3s ease-in-out}*:not(.no-transition){transition-property:color,background-color,border-color,box-shadow,fill,stroke;transition-duration:.3s;transition-timing-function:ease-in-out}.no-transition,[class*=translate],[class*=scale],[class*=rotate]{transition:transform .3s ease-in-out!important}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-accent{background-color:var(--color-accent)}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-accent{color:var(--color-accent)}.border-primary{border-color:var(--color-primary)}.border-secondary{border-color:var(--color-secondary)}.border-accent{border-color:var(--color-accent)}.btn-primary{background-color:var(--color-primary);color:#fff;padding:1.25rem 2rem;border-radius:var(--radius-2xl);font-weight:900;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;box-shadow:var(--shadow-xl);transition:var(--transition-base)}.btn-primary:hover{opacity:.9;transform:translateY(-2px);box-shadow:var(--shadow-2xl)}.btn-secondary{background-color:var(--color-secondary);color:#fff;padding:1.25rem 2rem;border-radius:var(--radius-2xl);font-weight:900;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;box-shadow:var(--shadow-xl);transition:var(--transition-base)}.btn-secondary:hover{opacity:.9;transform:translateY(-2px);box-shadow:var(--shadow-2xl)}.card-themed{background:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--spacing-base);transition:var(--transition-base)}.card-themed:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.logo-container{width:3rem;height:3rem;background-color:var(--color-primary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.5rem;box-shadow:var(--shadow-lg)}.sidebar-themed{background:#fff;border-right:1px solid rgba(0,0,0,.05)}.sidebar-themed.dark{background:var(--color-secondary);border-right:1px solid rgba(255,255,255,.05)}.nav-item-active{background-color:rgba(var(--color-primary),.1);color:var(--color-primary)}.badge-primary{background-color:var(--color-primary);color:#fff;padding:.25rem .75rem;border-radius:9999px;font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.input-themed{background-color:#00000005;border:2px solid rgba(0,0,0,.05);border-radius:var(--radius-xl);padding:1rem 1.5rem;font-weight:700;transition:var(--transition-base)}.input-themed:focus{outline:none;border-color:var(--color-primary);background-color:#fff}@keyframes pulse-primary{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse-primary{animation:pulse-primary 2s cubic-bezier(.4,0,.6,1) infinite}.gradient-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%)}.gradient-secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-light) 100%)}.overlay-primary{background-color:var(--color-primary);opacity:.9}.divider-primary{height:1px;background-color:var(--color-primary);opacity:.2}.spinner-primary{border:4px solid rgba(var(--color-primary),.1);border-top-color:var(--color-primary);border-radius:50%;width:2rem;height:2rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){:root{--spacing-base: 2rem;--spacing-half: 1rem}}@media(prefers-color-scheme:dark){:root{--color-background: #0f172a;--color-text: #f8fafc}}@media print{.btn-primary,.btn-secondary{box-shadow:none}.card-themed{box-shadow:none;border:1px solid #e5e7eb}}@layer utilities{.bg-primary{background-color:var(--color-primary)!important}.bg-primary-light{background-color:var(--color-primary-light)!important}.bg-primary-dark{background-color:var(--color-primary-dark)!important}.bg-primary-10{background-color:var(--color-primary-10)!important}.bg-primary-20{background-color:var(--color-primary-20)!important}.bg-primary-50{background-color:var(--color-primary-50)!important}.text-primary{color:var(--color-primary)!important}.text-primary-light{color:var(--color-primary-light)!important}.text-primary-dark{color:var(--color-primary-dark)!important}.border-primary{border-color:var(--color-primary)!important}.border-primary-light{border-color:var(--color-primary-light)!important}.border-primary-20{border-color:var(--color-primary-20)!important}.hover\:bg-primary:hover{background-color:var(--color-primary)!important}.hover\:bg-primary-hover:hover{background-color:var(--color-primary-hover)!important}.hover\:text-primary:hover{color:var(--color-primary)!important}.hover\:border-primary:hover{border-color:var(--color-primary)!important}.focus\:border-primary:focus{border-color:var(--color-primary)!important}.focus\:ring-primary:focus{--tw-ring-color: var(--color-primary) !important}.active\:bg-primary:active{background-color:var(--color-primary)!important}.bg-secondary{background-color:var(--color-secondary)!important}.bg-secondary-light{background-color:var(--color-secondary-light)!important}.bg-secondary-dark{background-color:var(--color-secondary-dark)!important}.text-secondary{color:var(--color-secondary)!important}.text-secondary-light{color:var(--color-secondary-light)!important}.border-secondary{border-color:var(--color-secondary)!important}.bg-accent{background-color:var(--color-accent)!important}.text-accent{color:var(--color-accent)!important}.border-accent{border-color:var(--color-accent)!important}.shadow-primary{box-shadow:0 10px 15px -3px var(--color-primary-20),0 4px 6px -2px var(--color-primary-10)!important}.shadow-primary-lg{box-shadow:0 20px 25px -5px var(--color-primary-20),0 10px 10px -5px var(--color-primary-10)!important}.bg-gradient-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%)!important}.bg-gradient-secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-light) 100%)!important}.ring-primary{--tw-ring-color: var(--color-primary) !important}.divide-primary>:not([hidden])~:not([hidden]){border-color:var(--color-primary-20)!important}.placeholder-primary::placeholder{color:var(--color-primary-50)!important}.fill-primary{fill:var(--color-primary)!important}.stroke-primary{stroke:var(--color-primary)!important}.caret-primary{caret-color:var(--color-primary)!important}.accent-primary{accent-color:var(--color-primary)!important}}@layer components{.btn-primary{@apply bg-primary text-white py-5 px-8 rounded-[2.5rem] font-black text-xs uppercase tracking-widest shadow-xl transition-all hover:opacity-90 active:scale-95;}.btn-secondary{@apply bg-secondary text-white py-5 px-8 rounded-[2.5rem] font-black text-xs uppercase tracking-widest shadow-xl transition-all hover:opacity-90 active:scale-95;}.btn-outline-primary{@apply bg-white text-primary border-2 border-primary py-5 px-8 rounded-[2.5rem] font-black text-xs uppercase tracking-widest transition-all hover:bg-primary hover:text-white active:scale-95;}.input-primary{@apply bg-slate-50 border-2 border-slate-200 rounded-[2.5rem] px-8 py-6 outline-none focus:border-primary font-bold text-lg transition-all shadow-sm;}.card-primary{@apply bg-white rounded-[2.5rem] shadow-lg p-8 transition-all hover:shadow-xl hover:-translate-y-1;}.badge-primary{@apply bg-primary text-white px-4 py-2 rounded-full text-xs font-black uppercase tracking-wider;}.badge-primary-outline{@apply bg-primary-10 text-primary border-2 border-primary px-4 py-2 rounded-full text-xs font-black uppercase tracking-wider;}.link-primary{@apply text-primary hover:text-primary-dark underline font-bold transition-colors;}.divider-primary{@apply h-px bg-primary-20 my-4;}.spinner-primary{@apply border-4 border-primary-20 border-t-primary rounded-full w-8 h-8 animate-spin;}.progress-primary{@apply bg-slate-200 rounded-full overflow-hidden;}.progress-primary-bar{@apply bg-primary h-full rounded-full transition-all duration-500;}.alert-primary{@apply bg-primary-10 border-2 border-primary-20 text-primary rounded-2xl p-4 font-bold;}.nav-item-active{@apply bg-primary-10 text-primary font-black;}.logo-container{@apply w-12 h-12 bg-primary rounded-2xl flex items-center justify-center text-white font-black text-xl shadow-lg;}}@layer utilities{.animate-pulse-primary{animation:pulse-primary 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-primary{0%,to{opacity:1}50%{opacity:.5}}.animate-bounce-primary{animation:bounce-primary 1s infinite}@keyframes bounce-primary{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}}@layer utilities{@media(max-width:768px){.btn-primary,.btn-secondary{@apply py-4 px-6 text-[10px];}}}@media print{.btn-primary,.btn-secondary{@apply shadow-none;}.card-primary{@apply shadow-none border border-slate-200;}}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes confetti{0%{transform:translateY(-10vh) rotate(0);opacity:1}to{transform:translateY(110vh) rotate(720deg);opacity:0}}.animate-confetti{animation:confetti linear forwards}
