:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1a1a1a;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#6366f1;text-decoration:inherit}a:hover{color:#4f46e5}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:#fff}#root{width:100%;min-height:100vh}h1{font-size:3.2em;line-height:1.1;color:#1a1a1a;font-weight:800;letter-spacing:-.02em}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s}button:focus,button:focus-visible{outline:2px solid #6366f1;outline-offset:2px}*{box-sizing:border-box}/*! tailwindcss v4.1.15 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid}}}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--color-bg-primary:#fff;--color-bg-secondary:#f8f9fa;--color-bg-tertiary:#f1f3f5;--color-text-primary:#1a1a1a;--color-text-secondary:#4a5568;--color-text-tertiary:#718096;--color-accent:#6366f1;--color-accent-hover:#4f46e5;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a}:root.dark-mode{--color-bg-primary:#0f172a;--color-bg-secondary:#1e293b;--color-bg-tertiary:#334155;--color-text-primary:#f1f5f9;--color-text-secondary:#cbd5e1;--color-text-tertiary:#94a3b8;--color-accent:#818cf8;--color-accent-hover:#6366f1;--color-border:#334155;--color-border-light:#1e293b;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080}*{-webkit-tap-highlight-color:#6366f11a;-webkit-touch-callout:none}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;touch-action:manipulation;scroll-behavior:smooth}body{background:var(--color-bg-primary);color:var(--color-text-primary);transition:background-color .3s,color .3s}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{background:var(--color-bg-primary);min-height:100vh;padding-top:70px}.scroll-container{overflow-x:hidden}.navbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-light);z-index:1000;background:#fffc;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;transition:background-color .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}:root.dark-mode .navbar{background:#0f172acc}.nav-logo{flex:1;align-items:center;gap:.75rem;display:flex}.logo-image{width:auto;height:2rem;display:block}.logo-text{color:var(--color-text-primary);letter-spacing:-.5px;font-size:1.25rem;font-weight:700}.nav-center{align-items:center;gap:2rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.nav-link{color:var(--color-text-secondary);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-link:hover{color:var(--color-text-primary)}.nav-right{flex:1;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.btn-login{border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem 1.25rem;font-size:.95rem;font-weight:500;transition:all .2s}.btn-login:hover{background:var(--color-bg-tertiary);border-color:var(--color-text-tertiary)}.btn-start-coding-link{text-decoration:none}.btn-start-coding{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .2s}.btn-start-coding:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.mobile-menu-container{display:none;position:relative}.mobile-menu-icon{cursor:pointer;color:var(--color-text-primary);background:0 0;border:none;border-radius:8px;padding:.5rem;transition:all .2s;display:none}.mobile-menu-icon:hover{background:var(--color-bg-tertiary)}.mobile-menu-icon:focus{outline:2px solid var(--color-accent);outline-offset:2px}.mobile-dropdown-menu{background:var(--color-bg-primary);border-left:1px solid var(--color-border);border-bottom:1px solid var(--color-border);width:250px;max-width:100vw;box-shadow:var(--shadow-lg);z-index:999;animation:.3s ease-out slideInRight;position:fixed;top:70px;right:0}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.mobile-menu-header{border-bottom:1px solid var(--color-border);justify-content:flex-end;padding:1rem;display:flex}.mobile-menu-close{cursor:pointer;color:var(--color-text-primary);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.mobile-menu-close:hover{background:var(--color-bg-tertiary)}.mobile-menu-link{color:var(--color-text-primary);border-bottom:1px solid var(--color-border-light);padding:1rem 1.5rem;font-weight:500;text-decoration:none;transition:all .2s;display:block}.mobile-menu-link:hover{background:var(--color-bg-secondary);color:var(--color-accent)}.mobile-menu-backdrop{z-index:998;background:#00000080;animation:.2s ease-out fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.profile-container{margin-right:.5rem;position:relative}.profile-button{cursor:pointer;background:0 0;border:none;padding:0}.profile-circle{background:var(--color-accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.profile-button:hover .profile-circle{transform:scale(1.05);box-shadow:0 4px 12px #6366f14d}.profile-dropdown{background:var(--color-bg-primary);border:1px solid var(--color-border);min-width:180px;box-shadow:var(--shadow-lg);z-index:1000;border-radius:12px;padding:.5rem;animation:.2s ease-out dropdownSlide;position:absolute;top:calc(100% + .5rem);right:0}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{width:100%;color:var(--color-text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.dropdown-item:hover{background:var(--color-bg-tertiary)}.dropdown-item.logout{color:#ef4444}.dropdown-item.logout:hover{background:#ef44441a}.hero-section{background:var(--color-bg-primary);padding:4rem 2rem}.hero-container{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;width:100%;max-width:1200px;margin:0 auto;display:grid}.hero-left{text-align:left}.hero-headline{color:var(--color-text-primary);letter-spacing:-.02em;margin-bottom:1rem;font-size:3rem;font-weight:800;line-height:1.1}.hero-headline .programming-text{color:var(--color-accent)}.hero-headline .subtitle-text{color:var(--color-text-secondary);font-size:.65em;font-weight:600}.hero-tagline{color:var(--color-text-secondary);margin-bottom:1rem;font-size:1.25rem;font-weight:500}.hero-subheadline{color:var(--color-text-tertiary);max-width:500px;margin-bottom:2rem;font-size:1.05rem;line-height:1.6}.hero-cta{align-items:center;gap:1rem;display:flex}.btn-cta-primary{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-cta-primary:hover{background:var(--color-accent-hover);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #6366f14d}.btn-cta-secondary{border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;background:0 0;border-radius:10px;padding:.875rem 1.75rem;font-size:1rem;font-weight:500;transition:all .2s}.btn-cta-secondary:hover{border-color:var(--color-text-tertiary);background:var(--color-bg-tertiary)}.hero-right{position:relative}.ide-mockup{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #00000014}.ide-header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.ide-dots{gap:.5rem;display:flex}.dot{border-radius:50%;width:10px;height:10px}.dot.red{background-color:#ff5f56}.dot.yellow{background-color:#ffbd2e}.dot.green{background-color:#27c93f}.ide-title{color:var(--color-text-secondary);font-family:SF Mono,Courier New,monospace;font-size:.875rem}.ide-body{background:var(--color-bg-primary);min-height:400px;padding:1.5rem}.code-editor{gap:1rem;font-family:SF Mono,Courier New,monospace;font-size:.9rem;display:flex}.code-line-num{color:var(--color-text-tertiary);text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-right:1px solid var(--color-border-light);flex-direction:column;padding-right:1rem;display:flex}.code-line-num span{line-height:1.6}.code-content{color:var(--color-text-primary);flex:1}.code-content>div{line-height:1.6}.keyword{color:#d73a49;font-weight:600}.function{color:#6f42c1}.string{color:#032f62}.comment{color:#6a737d;font-style:italic}.number{color:#005cc5}.floating-element{background:var(--color-bg-primary);border:1px solid var(--color-border);box-shadow:var(--shadow-md);border-radius:8px;padding:.5rem 1rem;font-size:.875rem;animation:3s ease-in-out infinite floatUpDown;position:absolute}.run-button{color:var(--color-accent);align-items:center;gap:.5rem;font-weight:600;display:flex;top:15px;right:15px}.console-output{color:#27c93f;flex-direction:column;gap:.3rem;display:flex;bottom:20px;left:20px}.output-label{color:var(--color-text-tertiary);text-transform:uppercase;font-size:.75rem}.output-text{color:#27c93f;font-size:.85rem;font-weight:500}@keyframes floatUpDown{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.content-section{background:var(--color-bg-primary)}.benefits-section{background:var(--color-bg-secondary);padding:5rem 2rem}.benefits-container{max-width:1200px;margin:0 auto}.benefits-header{text-align:center;margin-bottom:3rem}.benefits-title{color:var(--color-text-primary);letter-spacing:-.02em;margin-bottom:1rem;font-size:2.5rem;font-weight:800}.highlight-text{color:var(--color-accent)}.benefits-subtitle{color:var(--color-text-secondary);font-size:1.125rem}.benefits-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.benefit-card{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:12px;padding:2rem;transition:all .3s,background-color .3s,border-color .3s}.benefit-card:hover{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:0 8px 24px #6366f11a}.benefit-number{background:var(--color-bg-secondary);width:40px;height:40px;color:var(--color-accent);border-radius:10px;justify-content:center;align-items:center;margin-bottom:1rem;font-size:1.125rem;font-weight:700;display:flex}.benefit-title{color:var(--color-text-primary);margin-bottom:.75rem;font-size:1.25rem;font-weight:700}.benefit-description{color:var(--color-text-secondary);font-size:.95rem;line-height:1.6}.benefits-cta{text-align:center;margin-top:3rem}.btn-benefits-primary{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-benefits-primary:hover{background:var(--color-accent-hover);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #6366f14d}.faq-section{background:var(--color-bg-primary);padding:5rem 2rem}.faq-container{max-width:900px;margin:0 auto}.faq-header{text-align:center;margin-bottom:3rem}.faq-title{color:var(--color-text-primary);margin-bottom:1rem;font-size:2.5rem;font-weight:800}.faq-subtitle{color:var(--color-text-secondary);font-size:1.125rem}.faq-grid{flex-direction:column;gap:1rem;display:flex}.faq-item{background:var(--color-bg-primary);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;padding:1.5rem;transition:all .2s,background-color .3s,border-color .3s}.faq-item:hover{border-color:var(--color-accent)}.faq-item.active{border-color:var(--color-accent);background:var(--color-bg-secondary)}.faq-question-wrapper{justify-content:space-between;align-items:center;gap:1rem;display:flex}.faq-question{color:var(--color-text-primary);margin:0;font-size:1.125rem;font-weight:600}.faq-icon{color:var(--color-text-tertiary);flex-shrink:0;transition:transform .2s}.faq-item.active .faq-icon{color:var(--color-accent);transform:rotate(180deg)}.faq-answer{max-height:0;color:var(--color-text-secondary);line-height:1.6;transition:max-height .3s;overflow:hidden}.faq-item.active .faq-answer{max-height:1000px;margin-top:1rem}.faq-answer p{margin:.5rem 0}.faq-answer ul{margin:.5rem 0;padding-left:1.5rem}.faq-answer li{margin:.25rem 0}.site-footer{background:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:3rem 2rem 2rem}.footer-content{max-width:1200px;margin:0 auto}.footer-grid{grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:2rem;display:grid}.footer-column h4{color:var(--color-text-primary);margin-bottom:1rem;font-weight:600}.footer-column a{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.95rem;text-decoration:none;transition:color .2s;display:block}.footer-column a:hover{color:var(--color-accent)}.footer-logo{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.footer-logo-image{width:32px;height:32px}.footer-logo-text{color:var(--color-text-primary);font-size:1.25rem;font-weight:700}.footer-description{color:var(--color-text-secondary);margin-bottom:1rem;font-size:.95rem;line-height:1.6}.footer-socials{align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.social-icon{width:24px;height:24px;color:var(--color-text-secondary);justify-content:center;align-items:center;text-decoration:none;transition:color .2s;display:flex}.social-icon:hover{color:var(--color-accent)}.demo-modal-backdrop{z-index:2000;background:#000000b3;animation:.2s ease-out fadeIn;position:fixed;inset:0}.demo-modal{background:var(--color-bg-primary);z-index:2001;border-radius:16px;width:90%;max-width:900px;height:90vh;max-height:600px;animation:.3s ease-out modalSlide;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 20px 60px #0000004d}@keyframes modalSlide{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.demo-modal-close{background:var(--color-bg-secondary);cursor:pointer;width:40px;height:40px;color:var(--color-text-primary);z-index:2002;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.demo-modal-close:hover{background:var(--color-accent);color:#fff}.demo-modal iframe{border-radius:16px}.dark-mode-toggle-container{z-index:999;position:fixed;bottom:2rem;left:2rem}.dark-mode-toggle{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;font-size:.95rem;font-weight:500;transition:all .3s;display:flex;box-shadow:0 4px 12px #6366f14d}.dark-mode-toggle:hover{background:var(--color-accent-hover);transform:scale(1.1);box-shadow:0 6px 20px #6366f166}.dark-mode-toggle:active{transform:scale(.95)}.toggle-icon{color:#fff;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.toggle-icon svg{transition:transform .3s}.dark-mode-toggle:hover .toggle-icon svg{transform:rotate(20deg)}.toggle-text{display:none}@media(max-width:768px){.navbar{padding:1rem}.mobile-menu-container{display:flex}.mobile-menu-icon{justify-content:center;align-items:center;display:flex}.nav-center{display:none}.nav-link{color:var(--color-text-secondary);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-link:hover{color:var(--color-text-primary)}.nav-link:focus{outline:2px solid var(--color-accent);outline-offset:-2px}.nav-right{display:flex}.hero-container{grid-template-columns:1fr;gap:2rem;padding:2rem 0}.hero-headline{font-size:2rem}.hero-tagline{font-size:1.125rem}.hero-subheadline{font-size:1rem}.hero-cta{flex-direction:column;width:100%}.btn-cta-primary,.btn-cta-secondary{text-align:center;width:100%}.benefits-grid,.footer-grid{grid-template-columns:1fr}.dark-mode-toggle-container{bottom:1.5rem;left:1.5rem}.dark-mode-toggle{width:48px;height:48px}.toggle-icon{width:20px;height:20px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}.login-container{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fff;overflow:hidden}.login-left{display:flex;align-items:center;justify-content:center;padding:2rem;background:#fff}.login-card{width:100%;max-width:420px;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-right{display:flex;align-items:center;justify-content:center;padding:2rem;background:#6366f1;position:relative;overflow:hidden}.login-graphics{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3rem;position:relative;z-index:1}.graphic-container{position:relative;width:300px;height:300px;display:flex;align-items:center;justify-content:center}.floating-code{position:absolute;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;gap:1.5rem}.code-block{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.875rem 1.25rem;font-family:SF Mono,Courier New,monospace;font-size:.85rem;color:#ffffffe6;animation:float 6s ease-in-out infinite;white-space:nowrap}.code-1{animation-delay:0s;transform:translate(-40px)}.code-2{animation-delay:1s;transform:translate(40px)}.code-3{animation-delay:2s;transform:translate(-20px)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.code-keyword{color:#fbbf24;font-weight:600}.code-var{color:#60a5fa}.code-string{color:#34d399}.code-func{color:#f472b6}.floating-shapes{position:absolute;width:100%;height:100%}.shape{position:absolute;border-radius:50%;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);animation:pulse 4s ease-in-out infinite}.shape-1{width:60px;height:60px;top:20%;right:10%;animation-delay:0s}.shape-2{width:40px;height:40px;bottom:25%;left:15%;animation-delay:1s}.shape-3{width:80px;height:80px;top:50%;left:5%;animation-delay:2s}.shape-4{width:50px;height:50px;bottom:15%;right:20%;animation-delay:1.5s}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.2);opacity:.8}}.gradient-orb{position:absolute;border-radius:50%;filter:blur(40px);opacity:.4;animation:orbFloat 8s ease-in-out infinite}.orb-1{width:200px;height:200px;background:#ffffff4d;top:10%;left:10%;animation-delay:0s}.orb-2{width:150px;height:150px;background:#fff3;bottom:20%;right:15%;animation-delay:2s}.orb-3{width:180px;height:180px;background:#ffffff40;top:50%;right:5%;animation-delay:4s}@keyframes orbFloat{0%,to{transform:translate(0)}25%{transform:translate(30px,-30px)}50%{transform:translateY(30px)}75%{transform:translate(-30px,-20px)}}.tech-icon{width:200px;height:200px;position:absolute;animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.graphics-text{text-align:center;color:#fff;max-width:320px;position:relative;z-index:2}.graphics-text h2{font-size:2rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-.02em}.graphics-text p{font-size:1rem;opacity:.95;margin-bottom:1.5rem;line-height:1.6}.feature-list{display:flex;flex-direction:column;gap:.75rem}.feature-item{display:flex;align-items:center;gap:.75rem;font-size:.95rem;opacity:.9}.feature-icon{width:24px;height:24px;color:#fff;flex-shrink:0;stroke:currentColor}.login-header{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:2rem}.login-logo{width:50px;height:50px}.login-title{font-size:1.75rem;font-weight:700;color:#1a1a1a;text-align:center}.oauth-buttons{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.oauth-button{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#1f2937;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.oauth-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000014;border-color:#cbd5e1}.oauth-button svg{flex-shrink:0}.divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:#718096;font-size:.875rem}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid #e2e8f0}.divider span{padding:0 1rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-error,.login-success{display:flex;align-items:center;gap:.5rem;padding:1rem;border-radius:8px;font-size:.875rem;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626}.login-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#16a34a}.form-group{display:flex;flex-direction:column;gap:.5rem}.password-header{display:flex;justify-content:space-between;align-items:center}.form-label{color:#4a5568;font-size:.875rem;font-weight:500}.forgot-password-link{background:transparent;border:none;color:#6366f1;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .3s ease;padding:0}.forgot-password-link:hover{color:#4f46e5;text-decoration:underline}.form-input{padding:.875rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#1a1a1a;font-size:1rem;transition:all .3s ease}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-input::-moz-placeholder{color:#a0aec0}.form-input::placeholder{color:#a0aec0}.login-button{padding:1rem;background:#6366f1;border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #6366f14d;background:#4f46e5}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.signup-prompt{text-align:center;margin-top:1.5rem;color:#718096;font-size:.875rem}.signup-link{background:transparent;border:none;color:#6366f1;font-weight:600;cursor:pointer;transition:color .3s ease;padding:0;text-decoration:none}.signup-link:hover{color:#4f46e5;text-decoration:underline}.login-footer{margin-top:2rem;text-align:center}.back-button{background:transparent;border:none;color:#718096;font-size:.875rem;cursor:pointer;transition:color .3s ease;padding:.5rem 1rem}.back-button:hover{color:#4a5568}.profile-info{display:flex;flex-direction:column;gap:1.5rem}.profile-avatar{display:flex;justify-content:center;margin-bottom:1rem}.profile-circle-large{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#a855f7);display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.5rem;font-weight:700;box-shadow:0 8px 24px #6366f166}.profile-value{padding:.875rem 1rem;background:#0a0e2780;border:1px solid rgba(99,102,241,.2);border-radius:8px;color:#cbd5e1;font-size:.95rem;word-break:break-all}@media(max-width:1024px){.login-container{grid-template-columns:1fr}.login-right{display:none}.login-left{padding:1.5rem}}@media(max-width:640px){.login-left{padding:1rem}.login-card{padding:2rem 1.5rem;max-width:100%}.login-title{font-size:1.5rem}.login-logo{width:40px;height:40px}.profile-circle-large{width:80px;height:80px;font-size:2rem}.oauth-button{padding:.75rem .875rem;font-size:.9rem}.form-input{padding:.75rem .875rem;font-size:16px}.login-button{padding:.875rem}}
