/* Additions only. All original Webstudio design rules remain in styles.css. */
[hidden] { display: none !important; }
.account-dropdown { position:fixed; z-index:1000; box-sizing:border-box; width:clamp(220px,19vw,310px); max-width:calc(100vw - 24px); background:#d8f1f6; color:#3c5b4e; border:1px solid #64af98; border-radius:12px; padding:8px; box-shadow:0 8px 25px #3c5b4e30; font:clamp(15px,1.2vw,19px)/1.5 Arial,sans-serif; white-space:normal; }
.account-dropdown a,.account-dropdown button { display:block; box-sizing:border-box; width:100%; border:0; background:transparent; text-align:left; color:inherit; text-decoration:none; padding:10px 12px; font:inherit; cursor:pointer; border-radius:7px; }
.account-dropdown a:hover,.account-dropdown button:hover,.account-dropdown :focus-visible { background:#a8dccb; outline:2px solid #3c5b4e; outline-offset:-2px; }
#account-toggle { cursor:pointer; }
.account-initial { display:flex; width:3vw; height:3vw; align-items:center; justify-content:center; border-radius:50%; background:#3c5b4e; color:#d8f1f6; font:bold 1.8vw/1 Arial,sans-serif; }
.site-notice { position:fixed; z-index:1200; bottom:20px; left:50%; transform:translateX(-50%); box-sizing:border-box; width:max-content; max-width:min(92vw,600px); padding:16px 22px; border:1px solid #64af98; border-radius:12px; box-shadow:0 5px 20px #3c5b4e30; background:#f3fcf9; color:#3c5b4e; font:16px/1.45 Arial,sans-serif; white-space:normal; }
.site-notice[data-error=true] { border-color:#9b3c3c; color:#783232; }
.site-notice button { font:inherit; color:inherit; background:none; border:0; padding:4px 0; text-decoration:underline; cursor:pointer; display:block; }
.account-action { background:#64af98; color:#fff; border:0; padding:12px 20px; margin:12px; font:16px/1.4 Arial,sans-serif; cursor:pointer; }
button:disabled,[aria-disabled=true] { cursor:wait; }
input:focus-visible,textarea:focus-visible { outline:2px solid #418c6e; outline-offset:2px; }

/* Reference account card proportions, with matching added Google action. */
.auth-section{height:auto!important;min-height:75vw;padding:3.75vw 0}
.auth-card{width:60%;height:auto;min-height:67.5vw;justify-content:space-between;gap:0;padding:0}
body[data-page=sign-up] .auth-section{min-height:90vw;padding:4.5vw 0}
body[data-page=sign-up] .auth-card{min-height:81vw}
.auth-card>img{width:auto;height:16.875vw;max-width:none}
body[data-page=sign-up] .auth-card>img{height:20.25vw}
.auth-card>h1{font-size:3.5vw;height:auto;margin:1vw 0}
.auth-card>p,.auth-card>.field-group{width:60%}
.auth-card p{font-size:2vw}
.auth-card .field-label{font-size:2.5vw;margin:2vw 0 1vw;line-height:inherit}
.auth-card input{width:100%;height:4.5vw;font-size:2.5vw;box-sizing:border-box}
.auth-card #submit-form,.auth-card .google-login{
 display:flex;align-items:center;justify-content:center;box-sizing:border-box;
 width:35%;height:3.055556vw;min-height:3.055556vw;
 padding:.3vw .5vw;flex-shrink:0;font-size:1.5vw;line-height:1.2;margin:1.35vw auto 1vw;
}
.auth-card #submit-form:last-child,.auth-card .google-login{margin-bottom:6.75vw}
.google-login{
 display:flex;align-items:center;justify-content:center;box-sizing:border-box;
 width:60%;max-width:22.222222vw;height:3.055556vw;min-height:3.055556vw;max-height:3.055556vw;
 padding:0.555556vw 0.833333vw;margin:0 auto;flex-shrink:0;font-size:1.111111vw;line-height:1.2;
}
.auth-card #submit-form{margin-top:0}
.google-login{gap:0.694444vw;border:0.069444vw solid #357b5f;border-radius:0;background:transparent;color:#244f3e;font-family:Arial,sans-serif;font-weight:500;cursor:pointer}
.google-login img{display:block;width:1.388889vw;height:1.388889vw;flex-shrink:0}
.google-login:hover{background:transparent;box-shadow:inset 0 0 0 0.069444vw #357b5f}
.google-login:focus-visible{outline:0.138889vw solid #357b5f;outline-offset:0.208333vw}
.google-login:disabled{opacity:.6;cursor:wait}
.form-trap{position:absolute!important;left:-694.444444vw!important;width:0.069444vw!important;height:0.069444vw!important;overflow:hidden!important}
