:root{--bg-primary: #121212;--bg-secondary: #1e1e1e;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .6);--accent-color: #1976d2;--accent-light: #64b5f6;--border-color: rgba(255, 255, 255, .1);--shadow-color: rgba(0, 0, 0, .5);--color-divider: rgba(255, 255, 255, .3)}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--text-primary: #0f172a;--text-secondary: rgba(15, 23, 42, .7);--accent-color: #1976d2;--accent-light: #64b5f6;--border-color: rgba(15, 23, 42, .1);--shadow-color: rgba(15, 23, 42, .08);--input-bg: #ffffff;--card-bg: #ffffff;--gradient-start: rgba(25, 118, 210, .05);--gradient-end: rgba(25, 118, 210, .02);--text-disabled: rgba(15, 23, 42, .4);--color-divider: rgba(15, 23, 42, .2)}html,body{padding:0;margin:0;font-family:Inter,sans-serif;overscroll-behavior:none;touch-action:none;min-height:100vh;font-size:16px;min-height:-webkit-fill-available;height:100%;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.tl-watermark_SEE-LICENSE{display:none!important}.login-container{display:flex;align-items:center;justify-content:center;height:100vh;background-color:var(--bg-primary);color:var(--text-primary);position:relative;overflow:hidden;transition:background-color .3s ease,color .3s ease}.login-gradient-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% 50%,rgba(25,118,210,.2) 0%,transparent 70%);z-index:0}[data-theme=light] .login-gradient-bg{background:radial-gradient(circle at 50% 50%,var(--gradient-start) 0%,var(--gradient-end) 100%)}.login-grid{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(25,118,210,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(25,118,210,.05) 1px,transparent 1px);background-size:40px 40px;z-index:-1;transform:perspective(500px) rotateX(60deg) translateY(150px) translateZ(-300px);transform-origin:center;animation:grid-move 20s linear infinite;opacity:.5}[data-theme=light] .login-grid{background-image:linear-gradient(rgba(25,118,210,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(25,118,210,.03) 1px,transparent 1px);opacity:.7}.login-card{width:380px;padding:40px;background-color:#121212d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;box-shadow:0 0 30px #1976d226;border:1px solid rgba(255,255,255,.05);z-index:1;transform:translateY(20px);opacity:0;transition:all .6s ease}[data-theme=light] .login-card{background-color:var(--card-bg);border:1px solid var(--border-color);box-shadow:0 20px 60px #0000000d,0 0 0 1px #0f172a05;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.login-card.animate-in{transform:translateY(0);opacity:1}.login-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:30px}.logo-icon{width:80px;height:80px;margin-bottom:15px;object-fit:contain}.logo-text{font-family:Roboto,sans-serif;font-size:1.8rem;font-weight:700;color:#fff;margin:0;background:linear-gradient(45deg,#1976d2,#64b5f6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.login-form{width:100%}.form-title{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;margin-bottom:5px;color:#fff}.form-subtitle{font-family:Roboto,sans-serif;font-size:.9rem;color:#fff9;margin-bottom:25px}.form-group{margin-bottom:20px}.form-label{display:block;font-family:Roboto,sans-serif;font-size:.85rem;color:#fffc;margin-bottom:8px}.input-wrapper{position:relative;border:1px solid rgba(255,255,255,.1);border-radius:6px;transition:all .3s ease}.input-wrapper:focus-within{border-color:#64b5f6;box-shadow:0 0 0 2px #64b5f633}.input-icon{position:absolute;top:50%;left:15px;transform:translateY(-50%);color:#ffffff80}.form-input{width:100%;padding:12px 15px 12px 45px;background-color:#ffffff0d;border:none;border-radius:6px;font-family:Inter,sans-serif;font-size:.95rem;color:#fff;outline:none;transition:all .3s ease}.form-input::placeholder{color:#ffffff4d}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-input:-webkit-autofill,.form-input:-webkit-autofill:hover,.form-input:-webkit-autofill:focus,.form-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px rgba(255,255,255,.05) inset!important;-webkit-text-fill-color:white!important;transition:background-color 5000s ease-in-out 0s}.error-message{display:block;font-family:Inter,sans-serif;font-size:.8rem;color:#ef5350;margin-top:5px}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.remember-me{display:flex;align-items:center}.checkbox{width:16px;height:16px;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;margin-right:8px;cursor:pointer;accent-color:#1976d2}.checkbox-label{font-family:Inter,sans-serif;font-size:.85rem;color:#fff9;cursor:pointer}.forgot-password{font-family:Inter,sans-serif;font-size:.85rem;color:#64b5f6;text-decoration:none;transition:color .3s ease}.forgot-password:hover{color:#90caf9}.forgot-password:disabled{opacity:.5;cursor:not-allowed}.login-button{width:100%;padding:12px;background:linear-gradient(45deg,#1976d2,#64b5f6);color:#fff;border:none;border-radius:6px;font-family:Roboto,sans-serif;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.login-button:hover{transform:translateY(-2px);box-shadow:0 0 20px #1976d280}.login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:all .6s ease}.login-button:hover:before{left:100%}.login-button.disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.button-spinner{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.button-spinner div{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}[data-theme=light] .button-spinner div{width:20px;height:20px;border:3px solid rgba(25,118,210,.3);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.login-footer{margin-top:25px;text-align:center}.login-footer p{font-family:Inter,sans-serif;font-size:.85rem;color:#fff9}.register-link{color:#64b5f6;text-decoration:none;font-weight:500;transition:color .3s ease}.register-link:hover{color:#90caf9}[data-theme=light] .form-title{color:var(--text-primary);text-shadow:0 1px 2px rgba(0,0,0,.05);font-weight:700}[data-theme=light] .form-subtitle{color:var(--text-primary);font-weight:500;margin-bottom:30px}[data-theme=light] .form-label{color:var(--text-primary);font-weight:600;letter-spacing:.5px;margin-bottom:10px}[data-theme=light] .input-wrapper{border-color:var(--border-color);background-color:var(--input-bg);border-radius:8px;overflow:hidden}[data-theme=light] .input-wrapper:focus-within{border-color:var(--accent-light);box-shadow:0 0 0 3px #64b5f633;background-color:#fff}[data-theme=light] .input-icon{color:var(--text-secondary);transition:color .3s ease;padding:0 5px}[data-theme=light] .input-wrapper:focus-within .input-icon{color:var(--accent-light)}[data-theme=light] .form-input{background-color:transparent;color:var(--text-primary);border:1px solid transparent;font-weight:400;letter-spacing:.25px;padding:14px 15px 14px 45px}[data-theme=light] .form-input::placeholder{color:var(--text-secondary);font-weight:300}[data-theme=light] .form-input:focus{color:var(--text-primary)}[data-theme=light] .form-input:disabled{color:var(--text-disabled);background-color:#f1f5f9}[data-theme=light] .form-input:-webkit-autofill,[data-theme=light] .form-input:-webkit-autofill:hover,[data-theme=light] .form-input:-webkit-autofill:focus,[data-theme=light] .form-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--input-bg) inset!important;-webkit-text-fill-color:var(--text-primary)!important;transition:background-color 5000s ease-in-out 0s}[data-theme=light] .form-group{margin-bottom:24px}[data-theme=light] .error-message{color:#dc2626;font-weight:500;font-size:.8rem;margin-top:6px}[data-theme=light] .checkbox{background-color:var(--input-bg);border-color:var(--border-color);accent-color:var(--accent-color);transition:all .2s ease}[data-theme=light] .checkbox:hover{border-color:#0f172a33}[data-theme=light] .checkbox-label{color:var(--text-secondary);font-weight:400;transition:color .2s ease}[data-theme=light] .checkbox-label:hover{color:var(--text-primary)}[data-theme=light] .login-footer p{color:var(--text-secondary);font-weight:400}[data-theme=light] .forgot-password{color:var(--accent-color);font-weight:500;position:relative;overflow:hidden}[data-theme=light] .forgot-password:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--accent-light);transition:width .3s ease}[data-theme=light] .forgot-password:hover{color:var(--accent-light)}[data-theme=light] .forgot-password:hover:after{width:100%}[data-theme=light] .register-link{color:var(--accent-color);font-weight:500;position:relative;overflow:hidden}[data-theme=light] .register-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--accent-light);transition:width .3s ease}[data-theme=light] .register-link:hover{color:var(--accent-light)}[data-theme=light] .register-link:hover:after{width:100%}[data-theme=light] .logo-text{background:linear-gradient(45deg,var(--accent-color),var(--accent-light));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 2px 4px rgba(25,118,210,.1)}[data-theme=light] .login-button{background:linear-gradient(135deg,var(--accent-color),var(--accent-light));box-shadow:0 4px 15px #1976d240;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;position:relative;overflow:hidden;z-index:1}[data-theme=light] .login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:all .6s ease;z-index:-1}[data-theme=light] .login-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #1976d259;letter-spacing:.5px}[data-theme=light] .login-button:hover:before{left:100%}[data-theme=light] .login-button:active{transform:translateY(-1px);box-shadow:0 4px 15px #1976d240}[data-theme=light] .login-button.disabled{background:linear-gradient(135deg,#a0a0a0,#ccc);box-shadow:none;transform:none;letter-spacing:normal}[data-theme=light] .login-card.animate-in{animation:none}html,*{box-sizing:border-box}.tldraw__editor{position:fixed;inset:0;overflow:hidden;background-color:var(--bg-primary);transition:background-color .3s ease;will-change:transform;contain:strict}.custom-progress-bar{background-color:#00e468}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background-color:var(--bg-primary);overflow:hidden;position:relative;transition:background-color .3s ease}.loading-container:before{content:"";position:absolute;width:200%;height:200%;background:radial-gradient(circle,rgba(25,118,210,.1) 0%,transparent 70%);animation:pulse 4s infinite}.loading-title{font-family:Roboto,sans-serif;font-size:1.2rem;font-weight:300;letter-spacing:3px;color:var(--text-primary);margin-bottom:2rem;text-transform:uppercase;position:relative;animation:glow 2s infinite alternate}.loading-spinner{position:relative;width:80px;height:80px;margin-bottom:2rem}.loading-spinner div{position:absolute;border:2px solid transparent;border-top-color:#1976d2;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner div:nth-child(1){width:80px;height:80px}.loading-spinner div:nth-child(2){top:10px;left:10px;width:60px;height:60px;animation-duration:1.2s;border-top-color:#64b5f6}.loading-spinner div:nth-child(3){top:20px;left:20px;width:40px;height:40px;animation-duration:1.4s;border-top-color:#bbdefb}.loading-progress{width:120px;height:2px;background-color:#ffffff1a;border-radius:1px;overflow:hidden;position:relative}.loading-progress-bar{position:absolute;top:0;left:0;height:100%;width:40%;background:linear-gradient(90deg,#1976d2,#64b5f6);box-shadow:0 0 10px #64b5f6b3;transform:translate(-150%);animation:loading-progress 1.2s ease-in-out infinite}.loading-text{margin-top:1.5rem;font-family:Roboto,sans-serif;font-size:.8rem;color:#fff9;letter-spacing:1px}[data-theme=light] .loading-text{color:var(--text-secondary);font-weight:400}.loading-text span{display:inline-block;animation:wave 1.5s infinite}.loading-text span:nth-child(2){animation-delay:.1s}.loading-text span:nth-child(3){animation-delay:.2s}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes glow{0%{text-shadow:0 0 5px rgba(25,118,210,.5),0 0 10px rgba(25,118,210,.3)}to{text-shadow:0 0 10px rgba(25,118,210,.8),0 0 20px rgba(25,118,210,.5)}}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.05);opacity:.7}to{transform:translate(-50%,-50%) scale(1);opacity:.5}}@keyframes wave{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes loading-progress{0%{transform:translate(-150%)}to{transform:translate(400%)}}.not-found-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background-color:var(--bg-primary);color:var(--text-primary);text-align:center;padding:0 20px;position:relative;overflow:hidden;perspective:1000px;transition:background-color .3s ease,color .3s ease}.not-found-container:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 35%,rgba(25,118,210,.15) 0%,transparent 25%),radial-gradient(circle at 75% 65%,rgba(100,181,246,.1) 0%,transparent 25%);z-index:0}.not-found-glitch-container{position:relative;z-index:1}.not-found-title{font-family:Roboto,sans-serif;font-size:10rem;font-weight:900;margin:0;position:relative;color:transparent;text-shadow:none}.not-found-title:before,.not-found-title:after{content:"404";position:absolute;top:0;left:0;right:0;background:linear-gradient(45deg,#1976d2,#64b5f6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.not-found-title:before{animation:glitch-1 3s infinite linear alternate-reverse;clip-path:polygon(0 0,100% 0,100% 45%,0 45%);transform:translate(-2px);opacity:.8}.not-found-title:after{animation:glitch-2 2.7s infinite linear alternate-reverse;clip-path:polygon(0 60%,100% 60%,100% 100%,0 100%);transform:translate(2px);opacity:.8}.not-found-subtitle{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:300;margin:1rem 0 2rem;opacity:.8;letter-spacing:2px;text-transform:uppercase;position:relative;animation:pulse-text 4s infinite}.not-found-button{display:inline-block;background:linear-gradient(45deg,#1976d2,#64b5f6);color:#fff;padding:15px 30px;border-radius:30px;text-decoration:none;font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;letter-spacing:2px;text-transform:uppercase;transition:all .3s ease;box-shadow:0 0 20px #1976d280;position:relative;overflow:hidden;z-index:1}.not-found-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,#64b5f6,#1976d2);opacity:0;z-index:-1;transition:opacity .3s ease}.not-found-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 0 30px #1976d2b3}.not-found-button:hover:before{opacity:1}.not-found-grid{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(25,118,210,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(25,118,210,.05) 1px,transparent 1px);background-size:40px 40px;z-index:-1;transform:perspective(500px) rotateX(60deg) translateY(150px) translateZ(-300px);transform-origin:center;animation:grid-move 20s linear infinite;opacity:.5}.not-found-particles{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.particle{position:absolute;width:3px;height:3px;background-color:#64b5f699;border-radius:50%;animation:float-up 15s linear infinite;--x-offset: 0px}@keyframes glitch-1{0%,to{transform:translate(-2px) translateY(0)}20%{transform:translate(2px) translateY(-2px)}40%{transform:translate(-2px) translateY(2px)}60%{transform:translate(4px) translateY(-1px) scale(1.01)}80%{transform:translate(-4px) translateY(1px)}}@keyframes glitch-2{0%,to{transform:translate(2px) translateY(0)}25%{transform:translate(-2px) translateY(2px)}50%{transform:translate(4px) translateY(-4px) scale(.99)}75%{transform:translate(-6px) translateY(4px)}}@keyframes pulse-text{0%,to{opacity:.8}50%{opacity:.5}}@keyframes grid-move{0%{background-position:0 0}to{background-position:0 1000px}}@keyframes float-up{0%{transform:translateY(100vh) translate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100vh) translate(var(--x-offset));opacity:0}}
