html,body{height:100%;width:100%;min-height:0;overflow:hidden;overscroll-behavior:none}body{position:relative}.app{width:100%;max-width:430px;height:var(--app-height,100dvh);max-height:var(--app-height,100dvh);min-height:0!important;margin:0 auto!important;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;border-top:0;border-bottom:0;box-shadow:6px 0 0 #182b4c08}main{min-width:0;min-height:0!important;max-height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:calc(20px + env(safe-area-inset-top,0px)) 18px 24px;scrollbar-width:thin}nav{position:relative!important;bottom:auto!important;left:auto!important;transform:none!important;width:100%;max-width:none;z-index:5;padding:8px 6px calc(10px + env(safe-area-inset-bottom,0px));flex-shrink:0}nav[hidden]{display:none!important}.app.login-mode{grid-template-rows:minmax(0,1fr)}.app.login-mode main{padding:calc(22px + env(safe-area-inset-top,0px)) 25px calc(22px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column}.login-view{width:100%;margin:auto 0}.login-kicker{font:11px var(--pixel);color:var(--blue);letter-spacing:.8px;margin-bottom:24px}.login-logo{display:flex;justify-content:center;margin-bottom:24px}.login-logo .mascot{width:92px;height:92px;box-shadow:5px 5px 0 #ccdad1}.login-view h1{justify-content:center;font-size:30px;margin:0 0 12px}.login-tagline{text-align:center;font:13px/1.8 var(--pixel);color:var(--muted)}.login-benefits{border-top:2px dashed #bbc8b9;border-bottom:2px dashed #bbc8b9;padding:18px 0;margin:25px 0;display:grid;gap:12px}.login-benefits p{display:flex;align-items:center;gap:10px;font-size:13px}.login-benefits .pixel-icon{width:17px;height:17px;color:var(--blue)}.google-placeholder{width:100%;height:48px;border:1px solid #b3b9bd;display:flex;align-items:center;justify-content:center;gap:12px;background:white;font:14px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#6b7280;border-radius:4px;margin-bottom:10px}.google-mark{width:20px;height:20px;flex-shrink:0}#google-button{display:flex;justify-content:center;min-height:48px;margin-bottom:9px}.login-note{font-size:12px;line-height:1.75;text-align:center;color:var(--muted);margin:13px 0}.login-error{color:#b34235;text-align:center;font-size:12px;line-height:1.7;min-height:20px;margin-top:10px}.guest-link{display:block;width:100%;text-align:center;padding:14px 4px;font:12px var(--pixel);color:var(--blue);text-decoration:underline;text-underline-offset:4px}.login-footer{font:10px/1.7 var(--pixel);text-align:center;color:#788676;margin-top:28px}.account-card{margin:17px 0 12px;padding:14px;border:1px solid #a5b7bb;background:#f0f4ec}.account-name{font-weight:700;font-size:14px}.account-email{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.save-status{font-size:11px;color:#4f7860;margin-top:6px}.account-action{font:11px var(--pixel);color:var(--blue);padding:10px 0;text-decoration:underline;display:block}dialog{max-height:calc(var(--app-height,100dvh) - 28px)}#toast{bottom:calc(85px + env(safe-area-inset-bottom,0px));max-width:min(380px,90vw)}.snack{min-height:0}@media(max-width:370px){main{padding-left:14px;padding-right:14px}.app.login-mode main{padding-left:19px;padding-right:19px}.login-view h1{font-size:26px}.login-tagline{font-size:12px}}@media(max-height:640px){.login-logo .mascot{width:62px;height:62px}.login-kicker{margin-bottom:15px}.login-benefits{margin:18px 0;padding:12px 0}.login-logo{margin-bottom:16px}.login-footer{margin-top:15px}}
