:root{--paper:#f6f3e7;--ink:#15382b;--muted:#6c7065;--gold:#baa15e;--line:#c7bb95}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'Segoe UI',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #967324;outline-offset:4px}h1:focus,h2:focus{outline:none}.skip{position:fixed;left:16px;top:-70px;z-index:10;padding:12px;background:var(--paper)}.skip:focus{top:12px}
.auth-layout{display:grid;grid-template-columns:52% 48%;min-height:100svh}.garden{position:sticky;top:0;height:100svh;min-height:620px;display:flex;flex-direction:column;justify-content:space-between;padding:44px 58px 62px;color:#fffbea;background:linear-gradient(180deg,#162f273d,transparent 30%,#10291f17 50%,#10271dde),url('assets/landing-greenhouse.webp') 78% center/cover}.brand{display:inline-flex;align-items:center;gap:14px;width:max-content;text-shadow:0 2px 16px #16321a55}.brand svg{width:46px;height:60px}.brand span{font:29px/1.05 Georgia,serif;letter-spacing:3px}.garden-copy .eyebrow{color:#e9e2c5;letter-spacing:2px;font-size:11px;margin:0 0 24px}.garden h2{font:clamp(50px,5.25vw,82px)/1.02 Georgia,serif;letter-spacing:-2px;margin:0 0 24px}.garden-copy>p:last-child{font:23px/1.5 Georgia,serif;margin:0}
.form-side{padding:95px clamp(28px,5.6vw,86px) 50px;position:relative;display:flex;align-items:center;justify-content:center}.back-home{position:absolute;right:clamp(28px,4vw,62px);top:28px;font-size:13px;color:#5e6859}.back-home span{margin-right:7px}.back-home:hover,.forgot:hover,.return-login:hover{text-decoration:underline;text-underline-offset:4px}.form-content{width:100%;max-width:560px}.mode-switch{display:flex;width:min(410px,100%);margin:0 auto 37px;border:1px solid var(--gold);border-radius:40px;padding:3px}.mode-switch a{flex:1;text-align:center;padding:12px;border-radius:30px;font-size:16px}.mode-switch a[aria-current=page]{background:var(--ink);color:#fffbed}h1{font:clamp(38px,3.65vw,58px)/1.08 Georgia,serif;letter-spacing:-1.7px;text-align:center;margin:0 0 16px}.subtitle{color:var(--muted);text-align:center;margin:0;line-height:1.6}.demo-note{text-align:center;font-size:13px;color:#856c2f;background:#e9dfbd55;border:1px solid #dacfaa88;border-radius:8px;padding:10px 12px;margin:25px 0 27px}.field{margin:0 0 22px}.field label{display:block;font-size:14px;margin-bottom:8px}.field input{width:100%;height:54px;border:1px solid var(--line);border-radius:10px;padding:0 17px;background:#fcfaf366;color:var(--ink);min-width:0;box-shadow:none}.field input::placeholder{color:#83877d;opacity:1}.field input:focus{border-color:#657b50}.password-wrap{position:relative}.password-wrap input{padding-right:56px}.reveal{position:absolute;right:4px;top:4px;width:46px;height:46px;display:grid;place-items:center;border:0;background:none;color:var(--ink);border-radius:8px}.reveal[aria-pressed=true]{background:#dce4d2}.forgot{display:block;text-align:right;font-size:13px;margin:-6px 0 26px}.button{width:100%;min-height:54px;border-radius:40px;display:flex;align-items:center;justify-content:center;gap:17px;padding:14px 18px;font-size:15px;border:1px solid var(--ink);transition:background .15s,transform .15s}.primary{background:var(--ink);color:#fffbed}.primary:hover{background:#264f39}.secondary{background:transparent;color:var(--ink)}.secondary:hover{background:#e8eddf}.divider{display:flex;align-items:center;gap:15px;font-size:12px;color:#7c8075;margin:24px 0}.divider:before,.divider:after{content:'';height:1px;background:#d9d8c9;flex:1}.privacy-note{text-align:center;color:#76796d;font-size:12px;line-height:1.7;margin:28px 0 0}.return-login{display:block;text-align:center;font-size:13px;margin:23px auto 0;width:max-content;max-width:100%}.field-error{color:#9a3829;font-size:12px;margin:6px 0 0}.field input[aria-invalid=true]{border-color:#ac5140;background:#fff4ee}.feedback{padding:12px 15px;border-radius:8px;background:#e5ebd8;font-size:13px;line-height:1.5}.success-view{text-align:center}.success-mark{margin:0 auto 25px;width:82px;height:82px;border-radius:50%;background:#e3e9d4;color:#4d6841;display:grid;place-items:center;border:1px solid #b9c697}.success-mark .icon{width:36px;height:36px}.eyebrow{font-size:10px;letter-spacing:2px;color:#798467}.success-view h2{font:48px/1.12 Georgia,serif;letter-spacing:-1.3px;margin:16px 0 20px}.course-summary{display:flex;align-items:center;gap:18px;padding:24px 0;border-block:1px solid #d4d5c5;margin:32px 0;text-align:left}.course-summary>svg{width:38px;height:50px;color:#637846;flex-shrink:0}.course-summary small{font-size:9px;letter-spacing:1.7px;color:var(--muted)}.course-summary h3{font:22px/1.2 Georgia,serif;margin:6px 0}.course-summary p{font-size:12px;color:var(--muted);margin:0}.register .mode-switch{margin-bottom:28px}.register h1{font-size:clamp(35px,3.1vw,49px)}.register .demo-note{margin:20px 0}.register .field{margin-bottom:17px}.register .privacy-note{margin-top:23px}.reset .mode-switch{display:none}.reset .demo-note{margin-top:28px}
@media(min-width:1600px){.form-side{padding-inline:8vw}}@media(max-width:1100px){.auth-layout{grid-template-columns:44% 56%}.garden{padding:36px 32px 50px}.garden h2{font-size:58px}.garden-copy>p:last-child{font-size:20px}.form-side{padding-inline:40px}h1{font-size:45px}}
@media(max-width:700px){.auth-layout{display:block}.garden{position:relative;height:225px;min-height:0;padding:22px 24px;background-position:78% 48%}.brand{gap:9px}.brand svg{width:28px;height:39px}.brand span{font-size:18px;letter-spacing:2px}.garden-copy .eyebrow,.garden-copy>p:last-child{display:none}.garden h2{font-size:35px;line-height:1.05;margin:0;letter-spacing:-.7px}.garden h2 br{display:none}.garden-copy{max-width:280px}.form-side{padding:64px 24px 34px}.back-home{top:20px;right:24px;font-size:12px}.mode-switch{margin-bottom:27px}.mode-switch a{padding:10px;font-size:14px}h1{font-size:39px;letter-spacing:-1.2px}.subtitle{font-size:14px}.demo-note{margin:20px 0 24px;font-size:12px}.field{margin-bottom:20px}.field input{font-size:16px}.success-view h2{font-size:38px}.register h1{font-size:36px}.success-mark{width:66px;height:66px}.course-summary h3{font-size:20px}.button{font-size:14px}.privacy-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
