/* Shared fixed-position header geometry across every route. */
.workspace>header,.home-page .workspace>header,.training-workspace>header{position:sticky;top:0;z-index:60;box-sizing:border-box;height:60px;min-height:60px;max-height:60px;padding:10px 20px;display:flex;flex-wrap:nowrap;align-items:center;gap:12px;background:#fff;box-shadow:0 3px 18px #244a6a08;border:0}
#menu,.home-page #menu,.training-workspace #menu{width:76px;min-width:76px;height:40px;min-height:40px;padding:8px 10px;font-size:14px;line-height:24px;border:0;border-radius:10px;box-shadow:0 2px 8px #25456216}
.workspace>header .game-switch{margin-left:auto;padding:4px;border:0;border-radius:10px;background:#f1f5fa;height:40px;box-sizing:border-box;display:flex;flex:none}
.workspace>header .game-switch button,.home-page .game-switch button,.training-workspace .game-switch button{height:32px;min-height:32px;padding:6px 12px;font-size:12px;line-height:20px;border-radius:7px;white-space:nowrap}
main#app.training-main{height:calc(100dvh - 60px)}
@media(max-width:600px){.workspace>header,.home-page .workspace>header,.training-workspace>header{padding:10px 14px;gap:8px}}
.menu-backdrop{position:fixed;inset:60px 0 0;z-index:44;border:0;border-radius:0;background:#162d4938;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 180ms ease,visibility 180ms;transform:none!important}
.shell:has(.sidebar.open)>.menu-backdrop{opacity:1;visibility:visible;pointer-events:auto}
.shell>.sidebar{top:60px;height:calc(100dvh - 60px);max-height:calc(100dvh - 60px);padding-top:24px;z-index:45}
@media(prefers-reduced-motion:reduce){.menu-backdrop{transition:none}}
.workspace>header .game-switch{width:180px;gap:0}
.workspace>header .game-switch button{width:86px;flex:1;box-sizing:border-box}

/* One permanent page scrollbar on every route; never reserve a second outer gutter. */
html,html:has(.training-workspace){height:100%;overflow:hidden;scrollbar-gutter:auto}
body{height:100%;overflow:hidden}
.shell{height:100dvh;min-height:0}
.shell>.workspace,.shell>.workspace.training-workspace{height:100dvh;min-width:0;width:100%;overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:auto;overflow-anchor:none}
main#app.training-main{overflow:visible;scrollbar-gutter:auto;max-width:none;width:100%;margin:0}
/* Prevent accidental selection from interrupting training drag gestures. */
.training-no-select,.training-no-select *{-webkit-user-select:none;user-select:none}
.training-no-select input,.training-no-select textarea,.training-no-select [contenteditable="true"],.training-no-select [contenteditable="true"] *{-webkit-user-select:text;user-select:text}
.auth-panel{width:min(420px,100%);margin:auto}.auth-panel form{display:grid;gap:16px}.auth-panel label{display:grid;gap:8px}.auth-panel input{width:100%;min-width:0}.auth-panel .tabs{margin:20px 0}.auth-captcha-row{display:flex;align-items:center;gap:12px}.auth-captcha-row input{flex:1}.auth-captcha-row button{padding:0;flex:0 0 180px;background:transparent}.auth-captcha-row img{display:block;border-radius:10px}.auth-panel #auth-status{margin:0;color:#a53a35;min-height:20px}.my-empty{text-align:center;padding:48px 24px}.inline-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:inherit}.my-empty .inline-actions{justify-content:center}.my-account{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:20px 0}.my-account button{margin-left:auto}.my-lineups{display:grid;gap:20px}.my-lineup{padding:24px}.my-lineup .section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.my-units{display:flex;flex-wrap:wrap;gap:16px;margin:18px 0 24px}.my-units>div{width:70px;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:12px}.my-units>div>img{width:52px;height:52px;object-fit:cover;border-radius:10px}.my-stars{color:#a67914;letter-spacing:2px}.my-items{display:flex;gap:2px;min-height:22px}.my-items button{padding:0;background:transparent}.my-items img{display:block;width:22px;height:22px}.planner-reserve{padding:18px}.planner-reserve img{width:40px;height:40px;object-fit:cover}.planner-reserve button{display:inline-flex;align-items:center;gap:8px;margin:6px}
@media(max-width:480px){.auth-captcha-row{gap:8px}.auth-captcha-row button{flex-basis:150px}.auth-captcha-row img{width:150px;height:auto}.my-lineup{padding:18px}.my-account{gap:10px}.my-account span:first-child{overflow-wrap:anywhere}}

.comp-actions [data-save-comp].is-saved{background:#e5f2ea;color:#26734b;box-shadow:inset 0 0 0 1px #cce4d5}.comp-actions [data-save-comp].is-saved:hover{background:#d9ecdf}.saved-comp-grid{gap:12px}.saved-comp-card{grid-template-areas:"heading traits actions" "heading units actions";padding-bottom:35px}.saved-comp-card .comp-card-heading{align-self:center}.my-account{margin:12px 0 16px;font-size:13px}.saved-comp-card .comp-units{flex-wrap:wrap}.saved-comp-card .comp-unit{flex:1 1 42px}.saved-comp-card .comp-traits{gap:4px}#my-count{font-size:14px;font-weight:600}#my-status{color:#a53a35}
@media(max-width:1000px){.saved-comp-card{grid-template-areas:"heading traits" "heading units" "actions actions";padding-bottom:16px}.saved-comp-card .comp-actions{margin-top:24px}}
@media(max-width:680px){.saved-comp-card{grid-template-areas:"heading" "traits" "units" "actions";row-gap:10px}.saved-comp-card .comp-actions{margin-top:24px}.my-account{gap:8px}.my-account span:first-child{overflow-wrap:anywhere}}
.saved-comp-card .comp-units{row-gap:38px}
.asset-progress{position:fixed;bottom:12px;left:14px;z-index:100;background:#edf5fcf2;color:#3d6786;box-shadow:0 3px 15px #244a6415;padding:8px 12px;border-radius:9px;font-size:11px;pointer-events:none}

/* Keep training surfaces at the reference width on wide screens. */
main#app.training-main{max-width:1160px;margin-inline:auto;box-sizing:border-box}

