: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, hsl(220 20% 12%) 0%, hsl(220 20% 8%) 100%);--gradient-glow: radial-gradient(ellipse at center, hsl(185 80% 50% / .15) 0%, transparent 70%);--shadow-glow: 0 0 60px -10px hsl(185 80% 50% / .3);--shadow-glow-accent: 0 0 40px -10px hsl(142 70% 50% / .4);--shadow-card: 0 8px 32px -8px hsl(220 25% 2% / .8);--font-display: "Outfit", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}.cgn-auth-page{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1rem;overflow:hidden;background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--font-display);-webkit-font-smoothing:antialiased}.cgn-auth-glow{position:absolute;border-radius:9999px;pointer-events:none;animation:cgn-auth-pulse 4s ease-in-out infinite}.cgn-auth-glow--primary{top:25%;left:25%;width:400px;height:400px;background-color:hsl(var(--primary) / .1);filter:blur(120px)}.cgn-auth-glow--accent{right:25%;bottom:25%;width:300px;height:300px;background-color:hsl(var(--accent) / .1);filter:blur(100px);animation-delay:.3s}.cgn-auth-overlay{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to bottom,hsl(var(--background)),hsl(var(--background) / .95),hsl(var(--background)))}.cgn-auth-grid{position:relative;z-index:10;display:grid;width:100%;max-width:64rem}.cgn-auth-card{height:100%;border:1px solid hsl(var(--border) / .5);border-radius:var(--radius);background-image:var(--gradient-card);color:hsl(var(--card-foreground));box-shadow:var(--shadow-card);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cgn-auth-card__header{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 1.5rem .5rem;text-align:center}.cgn-auth-card__logo{height:3rem;width:auto;margin:0 auto}.cgn-auth-card__title{margin:0;font-size:1.5rem;font-weight:600;line-height:1;letter-spacing:-.025em;color:hsl(var(--foreground))}.cgn-auth-card__description{margin:.5rem 0 0;font-size:.875rem;color:hsl(var(--muted-foreground))}.cgn-auth-card__body{padding:1rem 1.5rem 1.5rem}.cgn-auth-form{display:flex;flex-direction:column;gap:1rem}.cgn-auth-field{display:flex;flex-direction:column;gap:.5rem}.cgn-auth-field__label{font-size:.875rem;font-weight:500;line-height:1;color:hsl(var(--foreground))}.cgn-auth-field__control{position:relative}.cgn-auth-field__icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:hsl(var(--muted-foreground));pointer-events:none}.cgn-auth-input{display:flex;width:100%;height:2.5rem;padding:.5rem .75rem .5rem 2.5rem;font-family:inherit;font-size:1rem;color:hsl(var(--foreground));background-color:hsl(var(--secondary) / .5);border:1px solid hsl(var(--border) / .5);border-radius:calc(var(--radius) - 2px);transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s}.cgn-auth-input--revealable{padding-right:2.5rem}.cgn-auth-input::placeholder{color:hsl(var(--muted-foreground))}.cgn-auth-input:focus-visible{outline:none;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))}.cgn-auth-input:disabled{cursor:not-allowed;opacity:.5}.cgn-auth-input--code{padding-left:2.5rem;text-align:center;font-family:var(--font-mono);letter-spacing:.1em}.cgn-auth-field__reveal{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;padding:0;color:hsl(var(--muted-foreground));background:none;border:none;cursor:pointer;transition:color .15s}.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{font-size:.875rem;font-weight:500;color:hsl(var(--destructive))}.cgn-auth-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:hsl(var(--destructive) / .1);border:1px solid hsl(var(--destructive) / .3);border-radius:calc(var(--radius) - 2px)}.cgn-auth-row{display:flex;align-items:center;justify-content:space-between}.cgn-auth-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:400;color:hsl(var(--muted-foreground));cursor:pointer}.cgn-auth-checkbox input{appearance:none;-webkit-appearance:none;flex-shrink:0;width:1rem;height:1rem;margin:0;background-color:hsl(var(--secondary) / .5);border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 8px);cursor:pointer;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-size:contain;background-repeat:no-repeat;background-position:center}.cgn-auth-checkbox input:focus-visible{outline:none;box-shadow:0 0 0 2px hsl(var(--background)),0 0 0 4px hsl(var(--ring))}.cgn-auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;height:2.5rem;padding:.5rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;white-space:nowrap;border-radius:var(--radius);cursor:pointer;transition:all .3s}.cgn-auth-btn:focus-visible{outline:none;box-shadow:0 0 0 2px hsl(var(--background)),0 0 0 4px hsl(var(--ring))}.cgn-auth-btn:disabled{pointer-events:none;opacity:.5}.cgn-auth-btn--primary{font-weight:600;color:hsl(var(--primary-foreground));background-color:hsl(var(--primary));border:none;box-shadow:0 10px 15px -3px hsl(var(--primary) / .3),0 4px 6px -4px hsl(var(--primary) / .3)}.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{font-size:.875rem;color:hsl(var(--primary));background:none;border:none;padding:0;cursor:pointer;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{width:1rem;height:1rem;border:2px solid hsl(var(--primary-foreground) / .3);border-top-color:currentColor;border-radius:9999px;animation:cgn-auth-spin 1s linear infinite}.cgn-auth-divider{display:flex;align-items:center;gap:.5rem;margin:1rem 0}.cgn-auth-divider:before,.cgn-auth-divider:after{content:"";flex:1;border-top:1px solid hsl(var(--border) / .5)}.cgn-auth-divider__label{font-size:.75rem;text-transform:uppercase;color:hsl(var(--muted-foreground))}.cgn-auth-card__footer{margin-top:1.5rem;text-align:center;font-size:.875rem;color:hsl(var(--muted-foreground))}.cgn-auth-card__footer .cgn-auth-link{font-weight:500}.cgn-auth-legal{position:relative;z-index:10;margin-top:1.5rem;text-align:center;font-size:.75rem;color:hsl(var(--muted-foreground))}.cgn-auth-legal a{color:inherit;text-decoration:underline;transition:color .15s}.cgn-auth-legal a:hover{color:hsl(var(--foreground))}.cgn-auth-panel{display:none;position:relative;overflow:hidden;border:1px solid hsl(var(--border) / .5);border-left:0;border-radius:0 var(--radius) var(--radius) 0;background-color:hsl(var(--surface-overlay));background-image:var(--gradient-glow)}.cgn-auth-panel:before{content:"";position:absolute;top:50%;left:50%;width:40%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:9999px;background-image:radial-gradient(circle,hsl(var(--primary) / .25) 0%,hsl(var(--primary) / .05) 45%,transparent 70%);animation:cgn-auth-pulse 4s ease-in-out infinite}.cgn-auth-panel__canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.cgn-auth-panel__glow{position:absolute;border-radius:9999px;pointer-events:none;animation:cgn-auth-pulse 4s ease-in-out infinite}.cgn-auth-panel__glow--one{top:25%;right:25%;width:300px;height:300px;background-color:hsl(var(--primary) / .2);filter:blur(100px)}.cgn-auth-panel__glow--two{bottom:33%;left:33%;width:200px;height:200px;background-color:hsl(var(--accent) / .15);filter:blur(80px)}.cgn-auth-panel__veil{position:absolute;inset:0;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%)}.cgn-auth-panel__overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:3rem 0;pointer-events:none;text-align:center}.cgn-auth-panel__badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;color:hsl(var(--muted-foreground));background-color:hsl(var(--secondary) / .3);border:1px solid hsl(var(--border) / .3);border-radius:9999px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cgn-auth-panel__badge:before{content:"";width:.5rem;height:.5rem;border-radius:9999px;background-color:hsl(var(--accent));animation:cgn-auth-pulse 2s ease-in-out infinite}.cgn-auth-panel__mark{display:grid;place-items:center;width:3.5rem;height:3.5rem;margin:0 auto 1rem;color:hsl(var(--primary));background-color:hsl(var(--primary) / .1);border:1px solid hsl(var(--primary) / .2);border-radius:var(--radius);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.cgn-auth-panel__title{margin:0;font-size:1.5rem;font-weight:600;color:hsl(var(--foreground))}.cgn-auth-panel__tagline{margin:.25rem 0 0;font-size:.875rem;font-weight:500;background-image:linear-gradient(135deg,hsl(var(--primary)),#67dae4);-webkit-background-clip:text;background-clip:text;color:transparent}.cgn-auth-panel__features{display:flex;align-items:center;gap:1.5rem;font-size:.625rem;color:hsl(var(--muted-foreground) / .7)}.cgn-auth-panel__features span{display:inline-flex;align-items:center;gap:.5rem}.cgn-auth-panel__features hr{width:1px;height:1rem;margin:0;border:0;background-color:hsl(var(--border) / .5)}@media(min-width:1024px){.cgn-auth-grid{grid-template-columns:minmax(380px,1fr) 2fr}.cgn-auth-card{border-right:0;border-radius:var(--radius) 0 0 var(--radius)}.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%;line-height:1.5;box-sizing:border-box}.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{grid-template-columns:minmax(340px,.85fr) minmax(0,1.45fr);width:min(100%,64rem);min-height:34rem;overflow:hidden;border:1px solid hsl(var(--border) / .5);border-radius:var(--radius);background:hsl(var(--surface-overlay));box-shadow:var(--shadow-card)}.cgn-login-card{display:flex;min-height:34rem;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,4.5rem);border:0;border-radius:0;background:var(--gradient-card);box-shadow:none;text-align:center}.cgn-login-mark{display:grid;width:3.25rem;height:3.25rem;place-items:center;margin:0 auto 1.5rem;border:1px solid hsl(var(--primary) / .2);border-radius:var(--radius);background:hsl(var(--primary) / .1);color:hsl(var(--primary));font-size:1.2rem;font-weight:750;box-shadow:var(--shadow-glow)}.cgn-login-eyebrow{margin:0;color:hsl(var(--primary));font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.cgn-login-card h1{margin:.65rem 0 0;color:hsl(var(--foreground));font-size:1.5rem;font-weight:600;letter-spacing:-.025em}.cgn-login-copy{max-width:23rem;margin:1rem auto 2rem;color:hsl(var(--muted-foreground));font-size:.94rem;line-height:1.6}.cgn-login-button{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:.75rem;padding:.9rem 1rem;border:1px solid hsl(var(--primary));border-radius:.6rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font:inherit;font-weight:650;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;box-shadow:var(--shadow-glow)}.cgn-login-button:hover:not(:disabled):not([aria-disabled=true]){transform:translateY(-1px);filter:brightness(.92);box-shadow:0 0 60px -10px hsl(var(--primary) / .5)}.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{display:grid;width:1.3rem;height:1.3rem;place-items:center;border-radius:50%;background:hsl(var(--background));color:hsl(var(--primary));font-family:Arial,sans-serif;font-size:.78rem;font-weight:700}.cgn-login-note{margin:1rem 0 0;color:hsl(var(--muted-foreground));font-size:.73rem;line-height:1.55}.cgn-login-alert{margin-top:1rem;padding:.75rem 1rem;border:1px solid;border-radius:.5rem;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{min-height:34rem;border:0;border-radius:0}@media(min-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(min-width:761px)and (max-width:1023px){.cgn-login-layout .cgn-auth-panel{display:block}}@media(max-width:760px){.cgn-login-layout{display:block;min-height:0;max-width:32rem}.cgn-login-card{min-height:31rem}.cgn-login-layout .cgn-auth-panel{display:none}}
