*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-text: #111111;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-border: #e5e7eb;--color-border-strong: #d1d5db;--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-primary-bg: #eff6ff;--color-primary-soft: #bfdbfe;--color-success: #16a34a;--color-success-bg: #dcfce7;--color-success-soft: #86efac;--color-warning: #d97706;--color-warning-bg: #fef3c7;--color-streak: #ea580c;--color-streak-bg: #ffedd5;--color-danger: #dc2626;--color-danger-bg: #fee2e2;--radius: 12px;--radius-sm: 8px}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}button{cursor:pointer;font-family:inherit;transition:transform .1s,opacity .1s,background .15s,border-color .15s,color .15s}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font-family:inherit;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--color-primary)!important}.no-select{user-select:none;-webkit-user-select:none}.scroll-y{overflow-y:auto}.scroll-y::-webkit-scrollbar{width:6px}.scroll-y::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}@keyframes pulseSuccess{0%{transform:scale(1);box-shadow:0 0 #16a34ab3}50%{transform:scale(1.05);box-shadow:0 0 0 18px #16a34a00}to{transform:scale(1);box-shadow:0 0 #16a34a00}}.pulse-success{animation:pulseSuccess 1.4s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-up{animation:slideUp .3s ease-out}@keyframes pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.pop{animation:pop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes confetti{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-200px) rotate(720deg);opacity:0}}.confetti-piece{position:absolute;pointer-events:none;animation:confetti 1.5s ease-out forwards}@keyframes toastSlide{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.toast-slide{animation:toastSlide .3s ease-out}
