@import "https://fonts.googleapis.com/css2?family=Lexend:wght@300;400;500;600;700&family=Prata&display=swap";:root{--bg-canvas:oklch(98.8% .003 145);--bg-surface:oklch(99.4% .002 145);--text-main:oklch(20% .018 160);--text-muted:oklch(42% .012 160);--text-inverse:oklch(98% .003 145);--color-mint:oklch(88% .08 145);--color-teal:oklch(82% .06 195);--color-blue:oklch(80% .07 240);--accent-mint:oklch(55% .12 145);--accent-teal:oklch(50% .1 195);--accent-blue:oklch(48% .14 240);--accent-gold:oklch(75% .08 85);--bg-footer:oklch(14% .012 160);--bg-footer-card:oklch(18% .015 160);--space-2xs:clamp(.5rem, .45vw + .35rem, .75rem);--space-xs:clamp(.75rem, .6vw + .55rem, 1.1rem);--space-sm:clamp(1rem, .8vw + .75rem, 1.5rem);--space-md:clamp(1.5rem, 1.2vw + 1.1rem, 2.2rem);--space-lg:clamp(2.2rem, 1.8vw + 1.6rem, 3.3rem);--space-xl:clamp(3.3rem, 2.7vw + 2.4rem, 5rem);--space-2xl:clamp(5rem, 4vw + 3.6rem, 7.5rem);--space-3xl:clamp(7.5rem, 6vw + 5.4rem, 11rem);--font-heading:"Prata", serif;--font-body:"Lexend", sans-serif;--fs-xs:clamp(.72rem, .1vw + .69rem, .8rem);--fs-sm:clamp(.85rem, .15vw + .8rem, .95rem);--fs-base:clamp(.98rem, .2vw + .93rem, 1.1rem);--fs-md:clamp(1.2rem, .4vw + 1.1rem, 1.45rem);--fs-lg:clamp(1.5rem, .6vw + 1.35rem, 1.95rem);--fs-xl:clamp(1.9rem, 1vw + 1.65rem, 2.6rem);--fs-2xl:clamp(2.4rem, 1.6vw + 2rem, 3.5rem);--fs-3xl:clamp(3rem, 2.8vw + 2.3rem, 4.8rem);--sheet-border:1px solid oklch(90% .006 150);--sheet-border-dark:1px solid oklch(24% .01 160);--shadow-subtle:0 4px 30px oklch(0% 0 0/.015);--shadow-medium:0 10px 40px oklch(0% 0 0/.025);--ease-expo:cubic-bezier(.16, 1, .3, 1);--transition-smooth:all .5s var(--ease-expo);--transition-fast:all .25s var(--ease-expo)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-canvas);color:var(--text-main);font-family:var(--font-body);font-size:16px;font-weight:300;line-height:1.65}body{flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}main{flex:1}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-canvas)}::-webkit-scrollbar-thumb{background:oklch(85% .005 150);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:oklch(75% .01 150)}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.015em;font-weight:400;line-height:1.15}h1{font-size:var(--fs-3xl)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl)}h4{font-size:var(--fs-lg)}p{font-size:var(--fs-base);color:var(--text-muted);max-width:72ch}a{color:inherit;transition:var(--transition-fast);text-decoration:none}ul,ol{list-style:none}img{object-fit:cover;max-width:100%;height:auto;display:block}.container{width:100%;max-width:1300px;padding:0 var(--space-md);margin:0 auto}.section-padding{padding:var(--space-2xl) 0}.asymmetric-grid{gap:var(--space-xl);grid-template-columns:1.2fr .8fr;align-items:center;display:grid}@media (width<=968px){.asymmetric-grid{gap:var(--space-lg);grid-template-columns:1fr}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--space-2xs);font-family:var(--font-body);font-size:var(--fs-sm);cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:9999px;padding:.9em 2.2em;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background-color:var(--text-main);color:var(--text-inverse);box-shadow:var(--shadow-subtle);border:1px solid var(--text-main)}.btn-primary:after{content:"";transition:var(--transition-smooth);background-color:oklch(100% 0 0/.08);position:absolute;inset:0;transform:translateY(101%)}.btn-primary:hover{box-shadow:var(--shadow-medium);border-color:var(--accent-mint);transform:translateY(-2px)}.btn-primary:hover:after{transform:translateY(0)}.btn-secondary{color:var(--text-main);background-color:#0000;border:1px solid oklch(70% .01 160)}.btn-secondary:hover{border-color:var(--text-main);background-color:oklch(94% .005 160);transform:translateY(-2px)}.sheet-layered{background-color:var(--bg-surface);border:var(--sheet-border);box-shadow:var(--shadow-subtle);transition:var(--transition-smooth);border-radius:20px;position:relative}.sheet-layered:hover{box-shadow:var(--shadow-medium);transform:translateY(-4px)}@media (prefers-reduced-motion:no-preference){html.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease-expo), transform .7s var(--ease-expo);transition-delay:calc(var(--reveal-index,0) * 80ms);transform:translateY(26px)}html.js [data-reveal=left]{transform:translate(-40px)}html.js [data-reveal=right]{transform:translate(40px)}html.js [data-reveal=scale]{transform:scale(.94)}html.js [data-reveal].is-visible{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page{background:radial-gradient(circle at top left, oklch(88% .08 145/.4), transparent 28rem), radial-gradient(circle at bottom right, oklch(80% .07 240/.24), transparent 26rem), var(--bg-canvas);place-items:center;width:100%;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.auth-shell{border:var(--sheet-border);background:var(--bg-surface);width:min(1080px,100%);min-height:min(720px,100vh - 2rem);box-shadow:var(--shadow-medium);border-radius:28px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.85fr);display:grid;overflow:hidden}.auth-panel{background:linear-gradient(oklch(99.8% .004 145) 0%,oklch(98.6% .006 145) 100%);flex-direction:column;justify-content:center;gap:clamp(1.25rem,2.5vw,2rem);padding:clamp(1.5rem,4vw,3.25rem);display:flex}.auth-topbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand-link{color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;width:42px;height:42px;box-shadow:var(--shadow-subtle);background:#fff;border-radius:12px}.brand-copy{font-size:var(--fs-sm);letter-spacing:-.01em}.brand-copy strong{color:var(--accent-mint)}.back-link{color:var(--text-muted);font-size:var(--fs-xs);letter-spacing:.02em;transition:var(--transition-fast);align-items:center;gap:.4rem;font-weight:600;text-decoration:none;display:inline-flex}.back-link-icon{transition:transform .2s var(--ease-expo);flex-shrink:0}.back-link:hover{color:var(--accent-mint)}.back-link:hover .back-link-icon{transform:translate(-2px)}.auth-content{flex-direction:column;gap:1.5rem;width:min(440px,100%);display:flex}.auth-intro{gap:.65rem;display:grid}.auth-intro h1{font-family:var(--font-heading);letter-spacing:-.03em;margin:0;font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.08}.auth-intro p{max-width:34ch;color:var(--text-muted);font-size:var(--fs-sm);margin:.65rem 0 0;line-height:1.65}.trust-list{border-top:1px solid oklch(92% .005 150);flex-wrap:wrap;gap:.55rem 1rem;margin:.5rem 0 0;padding:1.25rem 0 0;list-style:none;display:flex}.trust-list li{color:var(--text-muted);font-size:var(--fs-xs);align-items:center;gap:.4rem;font-weight:500;display:inline-flex}.trust-icon{color:var(--accent-mint);font-size:.55rem}.auth-visual{isolation:isolate;background:var(--bg-footer);min-height:100%;display:grid;position:relative;overflow:hidden}.auth-visual:before{content:"";z-index:1;background:linear-gradient(oklch(14% .012 160/.08),oklch(14% .012 160/.72)),radial-gradient(circle at 25% 20%,oklch(88% .08 145/.32),#0000 18rem);grid-area:1/1}.auth-image{object-fit:cover;grid-area:1/1;width:100%;height:100%;min-height:720px;display:block}.visual-overlay{z-index:2;color:var(--text-inverse);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:oklch(14% .012 160/.52);border:1px solid oklch(100% 0 0/.22);border-radius:18px;grid-area:1/1;place-self:center stretch;margin-inline:clamp(1.25rem,3vw,2rem);padding:1.15rem 1.25rem}.overlay-kicker{color:var(--color-mint);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:700}.visual-overlay p{color:var(--text-inverse);margin:.55rem 0 0;font-size:clamp(.95rem,1.4vw,1.15rem);line-height:1.55}.cred-field{gap:.45rem;display:grid}.cred-field-label{color:var(--text-main);font-size:var(--fs-xs);letter-spacing:.03em;font-weight:600}.cred-input-box{width:100%;min-height:50px;transition:var(--transition-fast);background:#fff;border:1px solid oklch(90% .006 150);border-radius:14px;align-items:center;padding:0 .95rem;display:flex}.cred-input-box:focus-within{border-color:var(--accent-mint);background:#fff;box-shadow:0 0 0 4px oklch(88% .08 145/.28)}.cred-input-box-input{width:100%;color:var(--text-main);font-size:var(--fs-sm);background:0 0;border:none;outline:none}.cred-input-box-input::placeholder{color:oklch(62% .012 160)}.cred-input-box--password{gap:.35rem;padding-right:.45rem}.cred-input-box--password .cred-input-box-input{flex:1;min-width:0}.password-toggle{color:oklch(55% .012 160);cursor:pointer;width:36px;height:36px;transition:var(--transition-fast);background:0 0;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.password-toggle:hover{color:var(--text-main);background:oklch(96% .004 150)}.password-toggle:focus-visible{outline:2px solid var(--accent-mint);outline-offset:2px}.password-toggle-icon[hidden]{display:none}.cred-submit-or-switch-button{width:100%;min-height:50px;font-size:var(--fs-sm);cursor:pointer;transition:var(--transition-fast);border-radius:14px;font-weight:700}.cred-submit-or-switch-button--primary{border:1px solid var(--accent-mint);color:#fff;background:var(--accent-mint)}.cred-submit-or-switch-button--primary:hover{transform:translateY(-1px);box-shadow:0 12px 28px oklch(55% .12 145/.22)}.cred-submit-or-switch-button--secondary{color:var(--text-main);background:#fff;border:1px solid oklch(90% .006 150)}.cred-submit-or-switch-button--ghost{width:auto;min-height:auto;color:var(--accent-mint);background:0 0;border:0;padding:0}.auth-error{color:var(--destructive,oklch(52% .18 25));font-size:var(--fs-xs);margin:0;font-weight:600}.auth-status{color:var(--accent-mint);font-size:var(--fs-xs);margin:0;font-weight:600}.auth-form{gap:1rem;display:grid}.auth-form-meta{font-size:var(--fs-xs);color:var(--text-muted);justify-content:space-between;align-items:center;gap:1rem;display:flex}.auth-divider{color:var(--text-muted);font-size:var(--fs-xs);align-items:center;gap:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:oklch(90% .006 150);flex:1;height:1px}.auth-switch{text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.auth-switch a{color:var(--accent-mint);font-weight:600;text-decoration:none}@media (width<=860px){.auth-shell{grid-template-columns:1fr}.auth-visual{order:-1;min-height:240px}.auth-image{min-height:240px}.auth-content{width:100%}}@media (width<=520px){.auth-page{padding:0}.auth-shell{border:0;border-radius:0;min-height:100vh}.auth-panel{padding:1.15rem}.back-link{font-size:.7rem}.trust-list{flex-direction:column;align-items:flex-start}}.login-container{width:100%}.login-form{flex-direction:column;gap:1.15rem;display:flex}.login-cred-input-container{gap:1rem;display:grid}.login-form-meta{justify-content:space-between;align-items:center;gap:1rem;margin-top:-.15rem;display:flex}.remember-me{color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;align-items:center;gap:.5rem;display:inline-flex}.remember-me input{width:1rem;height:1rem;accent-color:var(--accent-mint)}.forgot-link{color:var(--accent-mint);font-size:var(--fs-sm);font-weight:600;text-decoration:none}.forgot-link:hover{text-decoration:underline}.login-switch{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;border-top:1px solid oklch(92% .005 150);margin:1.35rem 0 0;padding-top:1.25rem}.login-switch-link{color:var(--accent-mint);font-weight:700;text-decoration:none}.login-switch-link:hover{text-decoration:underline}.login-container-title{font-family:var(--font-heading);letter-spacing:-.02em;margin-bottom:.5rem;font-size:clamp(1.5rem,2.4vw,1.9rem);display:block}.signup-helper-text{color:oklch(42% .012 160);margin:-.2rem 0 1rem;font-size:.9rem;line-height:1.6}.signup-cred-input-container{grid-template-columns:1fr;gap:.7rem;display:grid}.signup-button-container{grid-template-columns:1fr;gap:.75rem;margin-top:1rem;display:grid}
