*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#203c32;background:#fbfcf9}button,input,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.portal{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.story{background:#e8f1e6;padding:40px 56px;display:flex;flex-direction:column;position:relative;overflow:hidden}.brand{font-size:26px;font-weight:750;letter-spacing:-1px;color:#287a55}.story-content{max-width:530px;margin:auto 0;padding:50px 0 30px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#598169}.story h1{font-size:clamp(36px,4vw,60px);font-weight:650;line-height:1.13;letter-spacing:-2px;margin:20px 0}.story-content>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#617565}.story-footer,.story-note{font-size:12px;color:#617565}.story-footer{margin-top:25px}.story-note{text-align:center;margin-top:12px}.pet-art{height:225px;position:relative;max-width:390px;margin:30px auto 0;border-bottom:2px solid #9fbda0}.sun{position:absolute;background:#f7d99d;border-radius:50%;width:80px;height:80px;right:20px;top:0}.cat,.dog{position:absolute;border-radius:55% 55% 20% 20%;bottom:0;display:grid;place-items:center}.cat{background:#bfd0b3;width:125px;height:155px;left:35px;transform:rotate(-5deg)}.cat:before,.cat:after{content:"";position:absolute;top:-17px;border-left:25px solid transparent;border-right:25px solid transparent;border-bottom:45px solid #bfd0b3}.cat:before{left:0}.cat:after{right:0}.dog{background:#dcbea0;width:145px;height:175px;right:45px;transform:rotate(5deg)}.dog:before,.dog:after{content:"";position:absolute;top:10px;background:#bd9475;width:35px;height:80px;border-radius:50%}.dog:before{left:-15px;transform:rotate(15deg)}.dog:after{right:-15px;transform:rotate(-15deg)}.pet-art b{font-size:30px;color:#4e5a43;font-weight:400;margin-top:-40px}.leaf{position:absolute;bottom:18px;right:0;font-size:44px;color:#67926d}.entry{display:flex;justify-content:center;align-items:center;padding:50px 40px}.login-card{width:100%;max-width:400px}.login-card h2{font-size:32px;letter-spacing:-1px;margin:14px 0}.login-card>p:not(.eyebrow){font-size:14px;line-height:1.6;color:#7b877f}.google-button{border:1px solid #d9e1d8;display:flex;gap:12px;align-items:center;justify-content:center;border-radius:10px;padding:14px;background:white;font-size:14px;font-weight:600;margin-top:30px}.google-mark{font-weight:750;font-size:21px;color:#4285f4}.divider{display:flex;align-items:center;gap:15px;font-size:11px;color:#869087;margin:24px 0}.divider:before,.divider:after{content:"";height:1px;background:#e0e6df;flex:1}label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}input{display:block;width:100%;border:1px solid #d9e1d8;border-radius:9px;background:white;padding:14px;font:inherit;margin-top:8px;color:#203c32}input::placeholder{color:#9ba39d;font-weight:400}input:focus{outline:2px solid #619b78;outline-offset:2px}.password-wrap{position:relative}.password-wrap input{padding-right:65px}.password-wrap button{position:absolute;right:12px;top:14px;border:0;background:none;color:#698572;cursor:pointer;font-size:12px}.submit{display:flex;justify-content:center;gap:20px;width:100%;border:0;background:#267b54;color:white;padding:15px;border-radius:9px;font-size:14px;font-weight:600;cursor:pointer}.submit:hover{background:#1b6240}button:disabled{opacity:.6;cursor:wait}#login-status{min-height:22px;color:#8a5535;font-size:13px}.switch{text-align:center;margin-top:25px}.switch button{border:0;background:none;color:#267b54;font-weight:650;cursor:pointer}.privacy-note{text-align:center;font-size:11px!important;margin-top:40px}.hint{font-size:11px;color:#77887a;margin-top:-10px}[hidden]{display:none!important}:focus-visible{outline:2px solid #619b78;outline-offset:3px}@media(max-width:800px){.story{padding:25px 30px}.story h1{font-size:36px}.portal{grid-template-columns:42% 58%}.entry{padding:40px 25px}.pet-art{transform:scale(.8);transform-origin:center bottom}.story-content{padding:20px 0}.story-content>p:not(.eyebrow){font-size:14px}}@media(max-width:600px){.portal{display:block}.story{padding:24px}.story-content,.story-footer{display:none}.entry{padding:35px 24px}.login-card{max-width:420px}.login-card h2{font-size:30px}}

.resend{display:block;margin:12px auto;border:0;background:none;color:#267b54;font-size:12px;cursor:pointer;padding:8px}
