*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0a;--text:#fafafa;--text-muted:#737373;--accent:#e5e5e5;--font:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}body{justify-content:center;align-items:center;min-height:100vh;display:flex}#root{width:100%;max-width:480px;padding:2rem}header{padding:1.5rem 2rem;position:fixed;top:0}header:has(.login){right:0}header:has(.back){left:0}.login,.back{color:var(--text-muted);letter-spacing:.05em;cursor:pointer;font-size:.875rem;font-family:var(--font);background:0 0;border:none;text-decoration:none;transition:color .2s}.login:hover,.back:hover{color:var(--text)}main{flex-direction:column;gap:3rem;display:flex}.hero{text-align:center}h1{letter-spacing:-.02em;margin-bottom:.5rem;font-size:3rem;font-weight:300}.tagline{color:var(--text-muted);font-size:1.125rem;font-weight:300}.links{justify-content:center;gap:2rem;display:flex}.links a{color:var(--text-muted);letter-spacing:.05em;text-transform:lowercase;font-size:.875rem;text-decoration:none;transition:color .2s}.links a:hover{color:var(--text)}.services{border-top:1px solid #1a1a1a;padding-top:2rem}h2{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1rem;font-size:.75rem;font-weight:400}ul{flex-direction:column;gap:.5rem;list-style:none;display:flex}li{color:var(--accent);font-size:1rem;font-weight:300}.login-page{text-align:center}.login-page h1{margin-bottom:2rem}form{flex-direction:column;gap:1rem;display:flex}input{font-family:var(--font);color:var(--text);background:0 0;border:1px solid #262626;border-radius:4px;padding:.875rem 1rem;font-size:1rem;transition:border-color .2s}input::placeholder{color:var(--text-muted)}input:focus{border-color:#404040;outline:none}button{background:var(--text);color:var(--bg);font-family:var(--font);cursor:pointer;border:none;border-radius:4px;padding:.875rem 1rem;font-size:1rem;font-weight:500;transition:opacity .2s}button:hover{opacity:.9}button:disabled{opacity:.5;cursor:not-allowed}.error{color:#ef4444;margin-bottom:1rem;font-size:.875rem}.divider{align-items:center;gap:1rem;margin:1.5rem 0;display:flex}.divider:before,.divider:after{content:"";background:#262626;flex:1;height:1px}.divider span{color:var(--text-muted);font-size:.875rem}.github-btn{color:var(--text);background:0 0;border:1px solid #262626;width:100%}.github-btn:hover{opacity:1;border-color:#404040}.signup-link{color:var(--text-muted);margin-top:1.5rem;font-size:.875rem}.signup-link a{color:var(--text);text-decoration:none}.signup-link a:hover{text-decoration:underline}.service-menu{z-index:100;padding:1.5rem 2rem;position:fixed;top:0;left:0}.menu-toggle{width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #262626;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex;position:relative}.menu-toggle:hover{color:var(--text);border-color:#404040}.menu-icon,.close-icon{justify-content:center;align-items:center;transition:all .25s;display:flex;position:absolute}.menu-icon.hidden{opacity:0;transform:rotate(-90deg)scale(.8)}.close-icon.hidden{opacity:0;transform:rotate(90deg)scale(.8)}.menu-dropdown{opacity:0;visibility:hidden;transform-origin:0 0;background:#111;border:1px solid #262626;border-radius:12px;flex-direction:column;gap:.25rem;padding:.5rem;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:calc(100% - .25rem);left:1.5rem;transform:translateY(-8px)scale(.95)}.menu-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.menu-item{width:40px;height:40px;color:var(--text-muted);opacity:0;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:flex;position:relative;transform:translate(-8px)}.menu-dropdown.open .menu-item{opacity:1;transition-delay:var(--delay);transform:translate(0)}.menu-item:hover{color:var(--text);background:#1a1a1a}.menu-item-icon{justify-content:center;align-items:center;display:flex}.menu-item-name{font-family:var(--font);white-space:nowrap;opacity:0;pointer-events:none;padding:.375rem .75rem;font-size:.8125rem;font-weight:600;transition:all .15s;position:absolute;top:50%;left:calc(100% + .75rem);transform:translateY(-50%)translate(-4px)}.menu-item:hover .menu-item-name{opacity:.7;transform:translateY(-50%)translate(0)}@media (width<=480px){#root{padding:1.5rem}h1{font-size:2.5rem}.links{gap:1.5rem}}
