*{box-sizing:border-box;padding:0;margin:0}:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--secondary:#8b5cf6;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--background:#f8fafc;--surface:#fff;--surface-elevated:#fff;--text-primary:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--border:#e2e8f0;--border-light:#f1f5f9;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--radius:0.75rem;--radius-sm:0.5rem;--radius-lg:1rem}body,html{max-width:100vw;overflow-x:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);background-attachment:fixed;min-height:100vh}body{color:var(--text-primary);line-height:1.6}a{color:inherit;text-decoration:none}.loading-spinner{display:inline-block;width:20px;height:20px;border-radius:50%;border:3px solid rgba(99,102,241,.1);border-top:3px solid var(--primary);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(1turn)}}.error-message{background:linear-gradient(135deg,#fee2e2,#fecaca);color:var(--error);border-radius:var(--radius);border:1px solid #fca5a5}.error-message,.success-message{padding:1rem 1.5rem;margin:1rem 0;box-shadow:var(--shadow);font-weight:500;display:flex;align-items:center;gap:.5rem}.success-message{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:var(--success);border-radius:var(--radius);border:1px solid #86efac}*{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--background);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}