html.auth-pending body{visibility:hidden}
html[data-user="guest"] img:not(.leaflet-tile):not(.leaflet-marker-icon):not(.leaflet-marker-shadow),html[data-user="guest"] .piece{user-select:none;-webkit-user-drag:none}
html[data-user="guest"] .upload-section{display:none!important}
html[data-user="guest"] .delete-photo{display:none!important}
.session-entry{border-top:1px solid #795365;margin-top:6px;padding-top:8px;color:#e09aa4;font-size:13px}
.session-entry span{display:block;padding:8px 16px}
.session-entry button{display:block;width:100%;text-align:left;border:0;background:transparent;color:#f4e7de;padding:12px 16px;cursor:pointer;font:inherit}
.session-entry button:hover{background:#513343}
.guest-notice{max-width:992px;margin:12px auto;padding:12px 20px;border:1px solid #795365;border-radius:8px;background:#30242e;color:#e4bec7;font-size:13px;line-height:1.6}
.login-page{min-height:100svh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 15%,#4c2c3c88,transparent 55%),radial-gradient(ellipse at 85% 85%,#5c452733,transparent 50%),#171319;padding:28px 18px}
.login-card{width:min(100%,460px);padding:clamp(28px,6vw,48px);border:1px solid #795365;border-radius:20px;background:#241b25;box-shadow:0 28px 90px #0004;text-align:center}
.login-heart{display:block;font-size:46px;color:#e09aa4;margin-bottom:18px}
.login-card h1{font-size:clamp(34px,7vw,44px);letter-spacing:-1px;line-height:1.2;margin:18px 0}
.login-card p{line-height:1.7}.login-users{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0 22px}
.login-users button{padding:18px 12px;font-size:18px;border-radius:10px}
.login-users button[aria-pressed="true"]{background:#513343;border-color:#e09aa4;box-shadow:0 0 0 1px #e09aa4}
.login-card label{text-align:left;font-size:14px;gap:10px}.login-card input{width:100%;box-sizing:border-box;padding:15px;border:1px solid #795365;border-radius:8px;background:#171319;color:#f4e7de;text-align:center;font:24px Georgia;letter-spacing:12px}
.login-submit,.login-guest{width:100%;padding:14px;margin-top:18px;font-size:15px;border-radius:8px}.login-guest{margin-top:0;background:transparent}.login-divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:#b99da5;font-size:12px}.login-divider:before,.login-divider:after{content:"";height:1px;background:#513945;flex:1}.login-error{min-height:24px;color:#ffbdc7!important;font-size:13px;margin:12px 0 0}.login-note{font-size:12px!important;margin:12px 0 0}.login-card button:disabled{opacity:.6;cursor:wait}
.login-card{padding:28px 32px}.login-heart{font-size:30px;margin-bottom:12px}.login-card h1{font-size:36px;margin:14px 0}.login-card p{margin:10px 0;line-height:1.5}.login-users{margin:20px 0 18px}.login-users button{padding:13px 12px}.login-card input{padding:12px}.login-submit{margin-top:14px}.login-card .login-error{min-height:18px;margin:8px 0 0}.login-divider{margin:16px 0}.login-card .login-note{margin:12px 0 0}@media(max-width:380px){.login-card{padding:24px 20px}.login-card h1{font-size:32px}}
