/* Constrain the scrolling row itself, not just the glass panel's paint. */
.garden-mode .world>#garden-dock.garden-glass{overflow:hidden!important}
.garden-mode #garden-dock>#garden-body{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;align-items:stretch!important;overflow:hidden!important}
.garden-mode #garden-body .garden-picker{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;align-self:stretch!important;justify-content:flex-start!important;overflow-x:auto!important;overflow-y:hidden!important;padding:6px 3px 8px!important;scroll-padding-inline:6px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9aaf9b #edf1e39c}
.garden-picker::-webkit-scrollbar{height:6px}.garden-picker::-webkit-scrollbar-track{background:#edf1e39c;border-radius:9px}.garden-picker::-webkit-scrollbar-thumb{background:#9aaf9b;border-radius:9px;border:1px solid #edf1e3}
.login-screen{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));overflow:auto;background:radial-gradient(ellipse at 25% 20%,#f8e7da 0,transparent 55%),radial-gradient(ellipse at 80% 80%,#dbe7df 0,transparent 55%),#f0ede6;color:#4b5d55;font-family:inherit}
.login-screen:before,.login-screen:after{content:'';position:fixed;width:300px;height:300px;border:1px solid #fff9;border-radius:50%;pointer-events:none}.login-screen:before{left:-130px;bottom:-140px;box-shadow:0 0 0 35px #ffffff18,0 0 0 75px #ffffff12}.login-screen:after{right:-180px;top:-140px;box-shadow:0 0 0 45px #ffffff30}
.login-card{position:relative;width:min(450px,100%);padding:25px 30px 20px;border:1px solid #fff;border-radius:26px;background:linear-gradient(145deg,#fffefa,#fcfbf4ed);box-shadow:0 20px 60px #65736826,0 3px 9px #6c775c16;box-sizing:border-box}
.login-brand{text-align:center}.login-logo{width:235px;height:91px;object-fit:contain}.login-brand p{font-size:12px;margin:0 0 12px;color:#8a816d;letter-spacing:.08em}.login-cats,.login-brand>span{display:none}
.login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;margin-bottom:16px;border-radius:13px;background:#edf0e7;border:1px solid #e0e6da}.login-tabs button{border:0;border-radius:10px;min-height:36px;background:transparent;color:#8a9488;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.login-tabs button[aria-pressed=true]{background:#fffdf5;color:#517967;box-shadow:0 2px 5px #6e7f5617}
#entry-form{display:flex;flex-direction:column;gap:11px}.login-screen label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700;letter-spacing:.04em}.login-screen input{box-sizing:border-box;width:100%;min-width:0;height:40px;padding:8px 12px;border:1px solid #d7dccb;border-radius:11px;background:#fffefa;color:#3c554a;font:inherit;font-size:14px;outline-offset:2px}.login-screen input:focus{outline:2px solid #88ab99}.entry-password{position:relative;display:flex}.entry-password input{padding-right:42px}.entry-password button{position:absolute;right:4px;top:4px;display:grid;place-items:center;border:0;background:transparent;color:#708877;border-radius:9px;width:33px;height:32px}.entry-password svg{width:20px;height:20px;fill:none!important}
.login-screen .entry-primary{width:100%;min-height:42px;padding:9px 15px;border:1px solid #618b76;border-radius:12px;color:#fffdf1;background:linear-gradient(140deg,#6e9880,#4f7967);box-shadow:inset 0 1px #ffffff4d,0 3px 6px #5b7e6b22;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.forgot-link{align-self:flex-end;padding:0;border:0;background:none;font:inherit;font-size:11px;color:#7d917e;cursor:pointer}
.entry-divider{display:flex;align-items:center;gap:10px;margin:14px 0 10px;color:#9a9f90;font-size:10px;white-space:nowrap}.entry-divider:before,.entry-divider:after{content:'';height:1px;flex:1;background:#e1e5d9}.entry-providers{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.entry-providers button{min-height:34px;border:1px solid #d6ddce;border-radius:10px;background:#fffef9;color:#647667;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.login-screen button:disabled{opacity:.45;cursor:not-allowed}.entry-guest{display:block;margin:12px auto 0;padding:5px 10px;border:0;background:transparent;color:#779080;font:inherit;font-size:12px;cursor:pointer}.entry-guest span{padding-left:9px}.entry-feedback{margin:8px 0 0;font-size:11px;color:#9a6564;min-height:0;line-height:1.5}.entry-feedback:empty{display:none}.entry-loading{padding:25px;text-align:center;font-size:14px;color:#718575}.auth-locked #toast{display:none!important}.auth-locked #modal,.auth-locked #welcome{visibility:hidden!important}
@media(orientation:landscape) and (max-height:550px){.login-screen{padding:12px max(16px,env(safe-area-inset-left))}.login-card{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(280px,1.2fr);gap:25px;width:min(740px,100%);padding:20px 25px}.login-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;border-right:1px solid #dfe5d6;padding-right:23px}.login-logo{width:100%;max-width:230px;height:90px}.login-brand p{line-height:1.7;max-width:190px;font-size:11px;margin:0}.login-cats{display:flex;justify-content:center;width:100%;height:115px}.login-cats img{width:55%;height:100%;object-fit:contain}.login-cats img+img{margin-left:-15px}.login-brand>span{display:block;font-size:9px;color:#969c87;line-height:1.6;margin-top:9px}.login-tabs{margin-bottom:10px}.login-tabs button{min-height:31px}#entry-form{gap:7px}.login-screen label{gap:3px;font-size:10px}.login-screen input{height:34px;font-size:13px}.entry-password button{top:2px;height:30px}.login-screen .entry-primary{min-height:35px;padding:6px 12px}.entry-divider{margin:10px 0 7px}.entry-providers button{min-height:30px}.entry-guest{margin-top:7px;font-size:11px}.entry-feedback{font-size:10px}}
@media(orientation:landscape) and (max-height:350px){.login-card{padding:11px 17px;gap:18px;grid-template-columns:minmax(130px,.7fr) minmax(260px,1.3fr)}.login-brand{padding-right:16px}.login-logo{height:75px}.login-cats{height:90px}.login-brand>span{display:none}.login-tabs{margin-bottom:7px;padding:3px}.login-tabs button{min-height:27px}#entry-form{gap:5px}.login-screen input{height:30px}.entry-password button{height:27px}.login-screen .entry-primary{min-height:31px}.entry-divider{margin:6px 0}.entry-providers button{min-height:27px}.entry-guest{margin-top:4px;padding:4px}.login-screen label{font-size:9px}}
@media(prefers-reduced-motion:reduce){.login-screen *{scroll-behavior:auto}}

@media(orientation:landscape) and (max-height:550px){.login-card{padding-top:16px;padding-bottom:16px}}
@media(orientation:landscape) and (max-height:350px){.login-card{padding-top:11px;padding-bottom:11px}.login-screen label{font-size:0;line-height:0;gap:0}.entry-divider{margin:7px 0}.entry-feedback{line-height:1.4}}

.username-status{font-size:11px;line-height:1.4;letter-spacing:0;font-weight:500;min-height:0}.username-status:empty{display:none}.username-status[data-state=error]{color:#bd3f4c}.username-status[data-state=ok]{color:#37795c}.username-status[data-state=checking],.username-status[data-state=pending]{color:#7f806c}input[aria-invalid=true]{border-color:#c95b67!important;box-shadow:0 0 0 2px #c95b6715}.account-binding{margin:16px 0;padding:12px;border:1px solid #d2dccb;border-radius:14px}.account-binding summary{cursor:pointer;font-weight:700}.account-binding form{margin-top:14px}.login-screen .username-status{font-size:10px}
@media(orientation:landscape) and (max-height:550px){#entry-form.entry-register{display:grid;grid-template-columns:1fr 1fr;align-items:start;column-gap:8px}.entry-register .entry-primary{grid-column:1/-1}.entry-register label{min-width:0}.entry-register input{font-size:11px;padding:6px 8px}}

@media(min-height:551px) and (max-height:780px){.login-card{padding-top:16px;padding-bottom:16px}.login-logo{height:75px}#entry-form{gap:8px}.entry-divider{margin-top:10px}}
