body{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
.pwa-tools{margin:16px 0}.pwa-tools summary{cursor:pointer;min-height:44px;padding:12px 0}.pwa-tools button{min-height:44px}
.pwa-account-section{border-bottom:1px solid #c9d2c5;padding:4px 0 18px;margin-bottom:18px}.pwa-account-section h3{margin:12px 0}.pwa-account-section button,.pwa-install-dialog button{min-height:44px}.pwa-account-section .sync-message{font-weight:700}.pwa-account-section [data-pwa-help]{background:#f0f2e9;padding:16px;margin-top:16px}.pwa-account-section ol,.pwa-install-dialog ol{padding-left:22px}.pwa-account-section li,.pwa-install-dialog li{margin-bottom:12px}.pwa-install-state:empty{display:none}.entry-install{margin-top:24px;border-top:1px solid #c9d2c5;padding-top:16px;font-size:14px}.entry-install [data-pwa-help]{text-align:left}
#pwa-update{position:sticky;bottom:0;z-index:20;margin:0;padding-bottom:calc(14px + env(safe-area-inset-bottom))}
#pwa-update button{display:block;min-height:44px;margin-top:10px}#pwa-update-error{margin:8px 0 0}
.offline-banner{padding:12px 18px;background:#f5e9c8;color:#51431e}.offline-banner button{margin-left:10px;min-height:44px}
.mobile-game-nav{display:none}.sync-message{font-size:13px;line-height:1.5}
.save-dot,.sync-message,.save-error-details{overflow-wrap:anywhere}.topbar{height:auto;min-height:66px;padding-block:12px}.save-error-details:not(:empty){border-left:3px solid #b74c37;padding:0 0 0 12px;margin:18px 0}
[hidden]{display:none!important}
@media(max-width:800px){
 body:has(.shell){padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 button,.compact,.sidebar nav button,.online-account button{min-height:44px}
 input,select,.lineup select{font-size:16px;min-height:44px}
 .online-account{gap:8px}.online-account>span{flex:1 1 100%}
 .sidebar nav{display:none}.sidebar.pwa-menu-open nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible}
 .sidebar.pwa-menu-open nav button{white-space:normal}.sidebar.pwa-menu-open footer{display:block}
 .mobile-game-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:15;gap:2px;background:#183d35;padding:8px 6px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #436457}
 .mobile-game-nav button{font-size:12px;padding:8px 3px;min-height:48px;background:#254c40;border:0;color:#fff}.mobile-game-nav button.active{background:#e7b858;color:#193c34}
 .topbar{font-size:11px;line-height:1.5;flex-wrap:wrap;gap:5px;min-height:48px}
 .pagehead{flex-wrap:wrap}.toolbar label{flex-wrap:wrap}.lineup{min-width:830px}
 dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:18px}
 #toast{bottom:calc(84px + env(safe-area-inset-bottom))}#pwa-update{bottom:calc(70px + env(safe-area-inset-bottom))}
}

.checkpoint-list{display:grid;gap:8px;margin-top:16px}.checkpoint-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:12px 16px}.checkpoint-card p{margin:4px 0}.checkpoint-card .eyebrow{letter-spacing:1px;font-size:10px}.checkpoint-card button{flex-shrink:0}.checkpoint-card div{min-width:0;overflow-wrap:anywhere}@media(max-width:540px){.checkpoint-card{align-items:stretch;flex-direction:column;gap:8px;padding:12px}.checkpoint-card button{align-self:flex-start}}
