.button{border-radius:var(--radius-sm,8px);cursor:pointer;box-sizing:border-box;border:none;outline:none;justify-content:center;align-items:center;padding-block:.75rem;padding-inline:1.35rem;font-family:inherit;font-size:.925rem;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.button.primary-button{color:#fff;background:#0057ff;box-shadow:0 2px 8px #0057ff3d}.button.primary-button:hover{background:#0047db;transform:translateY(-1px);box-shadow:0 4px 14px #0057ff59}.button.primary-button:active{background:#0039b3;transform:translateY(0)}.button.primary-button:disabled{color:#94a3b8;cursor:not-allowed;box-shadow:none;background:#cbd5e1;transform:none}.button.secondary-button{color:#0f172a;background:#fff;border:1px solid #e5e3dc}.button.secondary-button:hover{background:#f3f2ee;border-color:#d8d5cc;transform:translateY(-1px)}:root{--primary:#0057ff;--primary-hover:#0047db;--primary-active:#0039b3;--primary-light:#eff4ff;--primary-border:#bfdbfe;--background:#f8f7f4;--surface:#fff;--surface-subtle:#f3f2ee;--surface-hover:#eceae4;--border:#e5e3dc;--border-subtle:#efece6;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-light:#94a3b8;--danger:#dc2626;--danger-light:#fef2f2;--danger-border:#fecaca;--success:#059669;--success-light:#ecfdf5;--success-border:#a7f3d0;--warning:#d97706;--warning-light:#fffbeb;--warning-border:#fde68a;--shadow-sm:0 1px 2px #0f172a0a;--shadow-md:0 4px 16px -2px #0f172a0f, 0 2px 6px -1px #0f172a0a;--shadow-lg:0 12px 32px -4px #0f172a14, 0 4px 12px -2px #0f172a0a;--radius-sm:6px;--radius-md:10px;--radius-lg:14px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{background-color:var(--background);width:100%;min-height:100vh;color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.highlight{color:var(--primary);font-weight:700}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:#0057ff40;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}.loading-screen{box-sizing:border-box;z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#f8f7f4d9;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:2rem;display:flex;position:fixed;top:0;left:0}.loading-container{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:440px;box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 2rem;display:flex}.loader-orb{justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative}.loader-orb .orb-glow{background:radial-gradient(circle,#0057ff26 0%,#0000 70%);width:100%;height:100%;animation:2s ease-in-out infinite orbPulse;position:absolute}.loader-orb .orb-outer{border:3px solid var(--border-subtle);border-top-color:var(--primary);border-radius:50%;width:100%;height:100%;animation:1s linear infinite orbRotate;position:absolute}.loader-orb .orb-inner{border:2px solid #0000;border-left-color:var(--primary);border-radius:50%;width:65%;height:65%;animation:1.5s linear infinite orbRotateCounter;position:absolute}.loader-orb .orb-core{background:var(--primary);border-radius:50%;width:14px;height:14px;box-shadow:0 0 10px #0057ff66}.loading-text h2{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:.5rem;font-size:1.35rem;font-weight:700}.loading-text p{color:var(--text-muted);font-size:.925rem;line-height:1.5}.loading-progress-bar{background:var(--surface-subtle);border-radius:9999px;width:200px;height:4px;overflow:hidden}.loading-progress-bar .progress-fill{background:linear-gradient(90deg, var(--primary-light), var(--primary), var(--primary-light));background-size:200% 100%;border-radius:9999px;width:100%;height:100%;animation:1.5s linear infinite progressMove}@keyframes orbPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes orbRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes orbRotateCounter{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes progressMove{0%{background-position:0 0}to{background-position:200% 0}}.error-screen{background-color:var(--background);box-sizing:border-box;z-index:9999;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:2rem;display:flex;position:fixed;top:0;left:0}.error-container{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;gap:1.25rem;padding:2.75rem 2rem;display:flex}.error-icon-container{background:var(--danger-light);border:1px solid var(--danger-border);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin-bottom:.25rem;display:flex}.error-icon-container .error-icon{color:var(--danger)}.error-text h2{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:.5rem;font-size:1.4rem;font-weight:700}.error-text p{color:var(--text-muted);word-break:break-word;font-size:.925rem;line-height:1.6}.error-actions{justify-content:center;gap:.75rem;width:100%;margin-top:.75rem;display:flex}.error-actions .button{border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;padding:.7rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.error-actions .primary-button{background:var(--primary);color:#fff;border:none;box-shadow:0 2px 8px #0057ff40}.error-actions .primary-button:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 14px #0057ff59}.error-actions .secondary-button{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.error-actions .secondary-button:hover{background:var(--surface-subtle);border-color:var(--border);transform:translateY(-1px)}
