@charset "UTF-8";@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/inter-latin-v20.woff2) format("woff2")}@font-face{font-family:Fredoka;font-style:normal;font-weight:500 700;font-display:swap;src:url(/assets/fonts/fredoka-latin-v17.woff2) format("woff2")}:root{--gigo-green-900: #0e1f19;--gigo-green-800: #16302a;--gigo-green-700: #1f4238;--gigo-green-600: #2c5a4c;--gigo-orange-500: #f2660d;--gigo-orange-600: #d9560a;--gigo-orange-100: #fde7d7;--gigo-cream-50: #fbf9f5;--gigo-cream-100: #f5f0e7;--gigo-sage-400: #9ba199;--gigo-sage-600: #4e5a4e;--color-bg: var(--gigo-cream-100);--color-surface: var(--gigo-cream-50);--color-text: var(--gigo-green-800);--color-muted: var(--gigo-sage-600);--color-border: #e3dccd;--color-primary: var(--gigo-green-800);--color-primary-hover: var(--gigo-green-700);--color-accent: var(--gigo-orange-500);--color-accent-hover: var(--gigo-orange-600);--color-error-bg: #fdeceb;--color-error-text: #b0351c;--radius: 12px;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Fredoka", var(--font-body)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);overflow-x:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}a{color:var(--color-primary)}.auth-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:1rem;background:radial-gradient(circle at 15% 15%,var(--gigo-orange-100),transparent 45%),var(--gigo-cream-100)}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) * 1.5);padding:2rem;width:100%;max-width:360px;display:flex;flex-direction:column;gap:.35rem;box-shadow:0 12px 32px #0e1f1914}.auth-card app-gigo-logo{display:block;margin:0 auto 1.25rem;width:fit-content}.auth-card h1{margin:0 0 1rem;font-size:1.4rem;text-align:center}.auth-card label{font-size:.85rem;font-weight:600;margin-top:.5rem}.auth-card input{padding:.55rem .65rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem}.auth-card input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.auth-card button{margin-top:1.25rem;padding:.65rem;border:none;border-radius:var(--radius);background:var(--color-primary);color:#fff;font-size:1rem;font-weight:600;cursor:pointer}.auth-card button:hover:not(:disabled){background:var(--color-primary-hover)}.auth-card button:disabled{opacity:.6;cursor:not-allowed}.field-error{color:var(--color-error-text);font-size:.8rem;margin:.15rem 0 0}.error-banner{background:var(--color-error-bg);color:var(--color-error-text);border-radius:var(--radius);padding:.6rem .75rem;font-size:.9rem;margin:0 0 .5rem}.success-banner{background:#e3f1ea;color:var(--gigo-green-800);border-radius:var(--radius);padding:.6rem .75rem;font-size:.9rem;margin:0 0 .5rem}.auth-hint{margin:0 0 .5rem;font-size:.9rem;color:var(--color-muted);text-align:center}.auth-forgot{align-self:flex-end;margin-top:.4rem;font-size:.8rem;text-decoration:none}.auth-switch{margin-top:1rem;font-size:.85rem;text-align:center;color:var(--color-muted)}.auth-switch a{color:var(--color-primary);text-decoration:none;font-weight:600}
