:root{--background:220 25% 6%;--foreground:210 20% 92%;--card:220 20% 10%;--card-foreground:210 20% 92%;--popover:220 20% 10%;--popover-foreground:210 20% 92%;--primary:185 80% 50%;--primary-foreground:220 25% 6%;--accent:142 70% 50%;--accent-foreground:220 25% 6%;--secondary:220 20% 14%;--secondary-foreground:210 20% 80%;--muted:220 15% 15%;--muted-foreground:215 15% 55%;--destructive:0 65% 50%;--destructive-foreground:210 20% 92%;--border:220 15% 18%;--input:220 15% 18%;--ring:185 80% 50%;--radius:.75rem;--glow-primary:185 80% 50%;--glow-accent:142 70% 50%;--surface-elevated:220 20% 12%;--surface-overlay:220 20% 8%;--gradient-card:linear-gradient(180deg, #181d25 0%, #101318 100%);--gradient-glow:radial-gradient(ellipse at center, #1ad4e626 0%, transparent 70%);--shadow-glow:0 0 60px -10px #1ad4e64d;--shadow-glow-accent:0 0 40px -10px #26d96866;--shadow-card:0 8px 32px -8px #040506cc;--font-display:"Outfit", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace}.cgn-auth-page{background-color:hsl(var(--background));min-height:100vh;color:hsl(var(--foreground));font-family:var(--font-display);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:center;align-items:center;padding:1rem;display:flex;position:relative;overflow:hidden}.cgn-auth-glow{pointer-events:none;border-radius:9999px;animation:4s ease-in-out infinite cgn-auth-pulse;position:absolute}.cgn-auth-glow--primary{background-color:hsl(var(--primary) / .1);filter:blur(120px);width:400px;height:400px;top:25%;left:25%}.cgn-auth-glow--accent{background-color:hsl(var(--accent) / .1);filter:blur(100px);width:300px;height:300px;animation-delay:.3s;bottom:25%;right:25%}.cgn-auth-overlay{pointer-events:none;background-image:linear-gradient(to bottom, hsl(var(--background)) 0%, hsl(var(--background) / .95) 50%, hsl(var(--background)) 100%);position:absolute;inset:0}.cgn-auth-grid{z-index:10;width:100%;max-width:64rem;display:grid;position:relative}.cgn-auth-card{border:1px solid hsl(var(--border) / .5);border-radius:var(--radius);background-image:var(--gradient-card);height:100%;color:hsl(var(--card-foreground));box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(4px)}.cgn-auth-card__header{text-align:center;flex-direction:column;gap:1rem;padding:1.5rem 1.5rem .5rem;display:flex}.cgn-auth-card__logo{width:auto;height:3rem;margin:0 auto}.cgn-auth-card__title{letter-spacing:-.025em;color:hsl(var(--foreground));margin:0;font-size:1.5rem;font-weight:600;line-height:1}.cgn-auth-card__description{color:hsl(var(--muted-foreground));margin:.5rem 0 0;font-size:.875rem}.cgn-auth-card__body{padding:1rem 1.5rem 1.5rem}.cgn-auth-form{flex-direction:column;gap:1rem;display:flex}.cgn-auth-field{flex-direction:column;gap:.5rem;display:flex}.cgn-auth-field__label{color:hsl(var(--foreground));font-size:.875rem;font-weight:500;line-height:1}.cgn-auth-field__control{position:relative}.cgn-auth-field__icon{width:1rem;height:1rem;color:hsl(var(--muted-foreground));pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.cgn-auth-input{width:100%;height:2.5rem;color:hsl(var(--foreground));background-color:hsl(var(--secondary) / .5);border:1px solid hsl(var(--border) / .5);border-radius:calc(var(--radius) - 2px);padding:.5rem .75rem .5rem 2.5rem;font-family:inherit;font-size:1rem;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s;display:flex}.cgn-auth-input--revealable{padding-right:2.5rem}.cgn-auth-input::placeholder{color:hsl(var(--muted-foreground))}.cgn-auth-input:focus-visible{border-color:hsl(var(--primary) / .5);background-color:hsl(var(--secondary) / .7);box-shadow:0 0 0 2px hsl(var(--background)), 0 0 0 4px hsl(var(--ring));outline:none}.cgn-auth-input:disabled{cursor:not-allowed;opacity:.5}.cgn-auth-input--code{text-align:center;font-family:var(--font-mono);letter-spacing:.1em;padding-left:2.5rem}.cgn-auth-field__reveal{color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:none;align-items:center;padding:0;transition:color .15s;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.cgn-auth-field__reveal:hover{color:hsl(var(--foreground))}.cgn-auth-field__reveal:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:.25rem}.cgn-auth-field__error,.cgn-auth-error{color:hsl(var(--destructive));font-size:.875rem;font-weight:500}.cgn-auth-error{background-color:hsl(var(--destructive) / .1);border:1px solid hsl(var(--destructive) / .3);border-radius:calc(var(--radius) - 2px);align-items:center;gap:.5rem;padding:.75rem;display:flex}.cgn-auth-row{justify-content:space-between;align-items:center;display:flex}.cgn-auth-checkbox{color:hsl(var(--muted-foreground));cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;font-weight:400;display:flex}.cgn-auth-checkbox input{appearance:none;background-color:hsl(var(--secondary) / .5);border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 8px);cursor:pointer;flex-shrink:0;width:1rem;height:1rem;margin:0;transition:background-color .15s,border-color .15s}.cgn-auth-checkbox input:hover{border-color:hsl(var(--primary) / .5)}.cgn-auth-checkbox input:checked{background-color:hsl(var(--primary));border-color:hsl(var(--primary));background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230b0e13' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain}.cgn-auth-checkbox input:focus-visible{box-shadow:0 0 0 2px hsl(var(--background)), 0 0 0 4px hsl(var(--ring));outline:none}.cgn-auth-btn{white-space:nowrap;border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;width:100%;height:2.5rem;padding:.5rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .3s;display:inline-flex}.cgn-auth-btn:focus-visible{box-shadow:0 0 0 2px hsl(var(--background)), 0 0 0 4px hsl(var(--ring));outline:none}.cgn-auth-btn:disabled{pointer-events:none;opacity:.5}.cgn-auth-btn--primary{color:hsl(var(--primary-foreground));background-color:hsl(var(--primary));box-shadow:0 10px 15px -3px hsl(var(--primary) / .3), 0 4px 6px -4px hsl(var(--primary) / .3);border:none;font-weight:600}.cgn-auth-btn--primary:hover{background-color:hsl(var(--primary) / .9);box-shadow:0 10px 15px -3px hsl(var(--primary) / .5), 0 4px 6px -4px hsl(var(--primary) / .5);transform:scale(1.02)}.cgn-auth-btn--primary:active{transform:scale(.98)}.cgn-auth-btn--outline{color:hsl(var(--foreground));background-color:hsl(var(--secondary) / .5);border:1px solid hsl(var(--border) / .5)}.cgn-auth-btn--outline:hover{background-color:hsl(var(--secondary) / .7);border-color:hsl(var(--primary) / .5)}.cgn-auth-link{color:hsl(var(--primary));cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem;text-decoration:none;transition:color .15s}.cgn-auth-link:hover{color:hsl(var(--primary) / .8)}.cgn-auth-link:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:.25rem}.cgn-auth-spinner{border:2px solid hsl(var(--primary-foreground) / .3);border-top-color:currentColor;border-radius:9999px;width:1rem;height:1rem;animation:1s linear infinite cgn-auth-spin}.cgn-auth-divider{align-items:center;gap:.5rem;margin:1rem 0;display:flex}.cgn-auth-divider:before,.cgn-auth-divider:after{content:"";border-top:1px solid hsl(var(--border) / .5);flex:1}.cgn-auth-divider__label{text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:.75rem}.cgn-auth-card__footer{text-align:center;color:hsl(var(--muted-foreground));margin-top:1.5rem;font-size:.875rem}.cgn-auth-card__footer .cgn-auth-link{font-weight:500}.cgn-auth-legal{z-index:10;text-align:center;color:hsl(var(--muted-foreground));margin-top:1.5rem;font-size:.75rem;position:relative}.cgn-auth-legal a{color:inherit;text-decoration:underline;transition:color .15s}.cgn-auth-legal a:hover{color:hsl(var(--foreground))}.cgn-auth-panel{border:1px solid hsl(var(--border) / .5);border-radius:0 var(--radius) var(--radius) 0;background-color:hsl(var(--surface-overlay));background-image:var(--gradient-glow);border-left:0;display:none;position:relative;overflow:hidden}.cgn-auth-panel:before{content:"";aspect-ratio:1;background-image:radial-gradient(circle, hsl(var(--primary) / .25) 0%, hsl(var(--primary) / .05) 45%, transparent 70%);border-radius:9999px;width:40%;animation:4s ease-in-out infinite cgn-auth-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cgn-auth-panel__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.cgn-auth-panel__glow{pointer-events:none;border-radius:9999px;animation:4s ease-in-out infinite cgn-auth-pulse;position:absolute}.cgn-auth-panel__glow--one{background-color:hsl(var(--primary) / .2);filter:blur(100px);width:300px;height:300px;top:25%;right:25%}.cgn-auth-panel__glow--two{background-color:hsl(var(--accent) / .15);filter:blur(80px);width:200px;height:200px;bottom:33%;left:33%}.cgn-auth-panel__veil{pointer-events:none;background-image:linear-gradient(to left, transparent 60%, hsl(var(--background) / .8) 100%), linear-gradient(to top, hsl(var(--background) / .5) 0%, transparent 40%, hsl(var(--background) / .5) 100%);position:absolute;inset:0}.cgn-auth-panel__overlay{pointer-events:none;text-align:center;flex-direction:column;justify-content:space-between;align-items:center;padding:3rem 0;display:flex;position:absolute;inset:0}.cgn-auth-panel__badge{color:hsl(var(--muted-foreground));background-color:hsl(var(--secondary) / .3);border:1px solid hsl(var(--border) / .3);-webkit-backdrop-filter:blur(4px);border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;display:inline-flex}.cgn-auth-panel__badge:before{content:"";background-color:hsl(var(--accent));border-radius:9999px;width:.5rem;height:.5rem;animation:2s ease-in-out infinite cgn-auth-pulse}.cgn-auth-panel__mark{width:3.5rem;height:3.5rem;color:hsl(var(--primary));background-color:hsl(var(--primary) / .1);border:1px solid hsl(var(--primary) / .2);border-radius:var(--radius);-webkit-backdrop-filter:blur(4px);place-items:center;margin:0 auto 1rem;display:grid}.cgn-auth-panel__title{color:hsl(var(--foreground));margin:0;font-size:1.5rem;font-weight:600}.cgn-auth-panel__tagline{background-image:linear-gradient(135deg, hsl(var(--primary)) 0%, #67dae4 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:.25rem 0 0;font-size:.875rem;font-weight:500}.cgn-auth-panel__features{color:hsl(var(--muted-foreground) / .7);align-items:center;gap:1.5rem;font-size:.625rem;display:flex}.cgn-auth-panel__features span{align-items:center;gap:.5rem;display:inline-flex}.cgn-auth-panel__features hr{background-color:hsl(var(--border) / .5);border:0;width:1px;height:1rem;margin:0}@media (width>=1024px){.cgn-auth-grid{grid-template-columns:minmax(380px,1fr) 2fr}.cgn-auth-card{border-radius:var(--radius) 0 0 var(--radius);border-right:0}.cgn-auth-panel{display:block}.cgn-auth-input{font-size:.875rem}}@keyframes cgn-auth-pulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes cgn-auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.cgn-auth-glow,.cgn-auth-panel:before,.cgn-auth-panel__glow,.cgn-auth-panel__badge:before{animation:none}.cgn-auth-btn--primary:hover,.cgn-auth-btn--primary:active{transform:none}.cgn-auth-spinner{animation-duration:2s}}.cgn-auth-page{--warning:35 85% 55%;box-sizing:border-box;line-height:1.5}.cgn-auth-page *,.cgn-auth-page :before,.cgn-auth-page :after{box-sizing:border-box}.cgn-login-layout .cgn-auth-panel__title{letter-spacing:-.02em}.cgn-login-layout{border:1px solid hsl(var(--border) / .5);border-radius:var(--radius);background:hsl(var(--surface-overlay));width:min(100%,64rem);min-height:34rem;box-shadow:var(--shadow-card);grid-template-columns:minmax(340px,.85fr) minmax(0,1.45fr);overflow:hidden}.cgn-login-card{background:var(--gradient-card);min-height:34rem;box-shadow:none;text-align:center;border:0;border-radius:0;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,4.5rem);display:flex}.cgn-login-mark{border:1px solid hsl(var(--primary) / .2);border-radius:var(--radius);background:hsl(var(--primary) / .1);width:3.25rem;height:3.25rem;color:hsl(var(--primary));box-shadow:var(--shadow-glow);place-items:center;margin:0 auto 1.5rem;font-size:1.2rem;font-weight:750;display:grid}.cgn-login-eyebrow{color:hsl(var(--primary));letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:700}.cgn-login-card h1{color:hsl(var(--foreground));letter-spacing:-.025em;margin:.65rem 0 0;font-size:1.5rem;font-weight:600}.cgn-login-copy{max-width:23rem;color:hsl(var(--muted-foreground));margin:1rem auto 2rem;font-size:.94rem;line-height:1.6}.cgn-login-button{border:1px solid hsl(var(--primary));background:hsl(var(--primary));width:100%;color:hsl(var(--primary-foreground));font:inherit;cursor:pointer;box-shadow:var(--shadow-glow);border-radius:.6rem;justify-content:center;align-items:center;gap:.75rem;padding:.9rem 1rem;font-weight:650;transition:transform .14s,box-shadow .14s,filter .14s;display:inline-flex}.cgn-login-button:hover:not(:disabled):not([aria-disabled=true]){filter:brightness(.92);box-shadow:0 0 60px -10px hsl(var(--primary) / .5);transform:translateY(-1px)}.cgn-login-button:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:3px}.cgn-login-button:disabled,.cgn-login-button[aria-disabled=true]{cursor:wait;opacity:.68}.cgn-login-google{background:hsl(var(--background));width:1.3rem;height:1.3rem;color:hsl(var(--primary));border-radius:50%;place-items:center;font-family:Arial,sans-serif;font-size:.78rem;font-weight:700;display:grid}.cgn-login-note{color:hsl(var(--muted-foreground));margin:1rem 0 0;font-size:.73rem;line-height:1.55}.cgn-login-alert{border:1px solid;border-radius:.5rem;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem}.cgn-login-alert--warning{border-color:hsl(var(--warning) / .25);background:hsl(var(--warning) / .1);color:#f4bd71}.cgn-login-alert--error{border-color:hsl(var(--destructive) / .25);background:hsl(var(--destructive) / .1);color:#e87d7d}.cgn-login-layout .cgn-auth-panel{border:0;border-radius:0;min-height:34rem}@media (width>=1024px){.cgn-login-layout{grid-template-columns:minmax(340px,.85fr) minmax(0,1.45fr)}.cgn-login-card{border-right:0;border-radius:0}}@media (width>=761px) and (width<=1023px){.cgn-login-layout .cgn-auth-panel{display:block}}@media (width<=760px){.cgn-login-layout{max-width:32rem;min-height:0;display:block}.cgn-login-card{min-height:31rem}.cgn-login-layout .cgn-auth-panel{display:none}}
