/* Keep shared player-card anatomy, assets, typography and team colors intact. */
.home-solo{margin:12px 0 0}
.home-solo .section-label,.home-multiplayer-label{font-size:11px;margin-bottom:8px}
.home-solo-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.home-solo-options form{margin:0;min-width:0}
.home-solo-button{width:100%;height:100%;text-align:left;padding:9px 12px;background:transparent;border:1px solid var(--line);border-radius:8px;color:var(--cream)}
.home-solo-button strong{display:block;font:600 19px/1.1 var(--font-display)}
.home-solo-button span{display:block;font-size:11px;line-height:1.4;color:var(--muted);margin-top:4px}
.home-solo-button:hover{background:var(--surface);border-color:var(--muted)}
.page-home .home-card-zone{transform:none;max-height:none}.page-home .home-feed-panel{position:static}
.page-home .container{height:auto;min-height:calc(100dvh - 48px)}
.page-home .home-main{height:auto;min-height:calc(100dvh - 100px)}.page-home .home-screen,.page-home .home-layout{height:auto}

.solo-page .container{max-width:1920px;padding:14px clamp(20px,2.2vw,40px)}
.solo-screen{margin:auto;position:relative}
.solo-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:40px;margin-bottom:14px}
.solo-heading h1{font:700 30px/1.1 var(--font-display)}
.solo-money{display:flex;align-items:center;gap:28px}
.solo-money>div{display:flex;align-items:baseline;gap:8px}
.solo-money span{font-size:13px;color:var(--muted)}
.solo-money strong{font:700 28px/1 var(--font-display);font-variant-numeric:tabular-nums}
.solo-money>div:last-child strong{color:var(--orange)}
.solo-screen[data-state=complete] .solo-money{visibility:hidden}
/* Errors don't push a fitted board below the viewport. */
.solo-screen>.game-error{position:absolute;top:44px;left:50%;transform:translateX(-50%);z-index:20;max-width:640px;width:max-content;box-shadow:var(--shadow);font-size:13px;pointer-events:none}
.solo-budget #solo-play{display:grid;grid-template-rows:minmax(0,1fr) 44px;gap:12px;min-height:0}
.solo-board-section{min-height:0}
.solo-board{display:grid;grid-template-rows:repeat(5,minmax(0,1fr));gap:10px;height:100%}
.solo-board .tier-row{display:grid;grid-template-columns:repeat(var(--tier-size,5),minmax(0,1fr));gap:12px;min-height:0;height:100%}
.solo-board-actions{display:flex;align-items:center;gap:20px}
.solo-board-actions>p{color:var(--muted);font-size:13px}
.solo-board-actions .home-btn{margin-left:auto;width:220px;min-height:44px;padding:10px 20px}
.solo-clear{padding:6px 0;background:transparent;border:0;color:var(--muted);font-size:12px}
.solo-clear:hover{color:var(--cream)}
.solo-screen .budget-player-slot{position:relative;width:100%;height:100%;padding:0;min-width:0;min-height:0;border:0;background:none;border-radius:9px;text-align:left}
.solo-screen .budget-player-slot:disabled{opacity:1}
.solo-screen .budget-player-slot.is-unavailable{opacity:.32!important;cursor:default}
.solo-screen .budget-player-slot.is-selected{box-shadow:0 0 0 3px var(--orange)}
.solo-screen .budget-player-slot:not(.is-unavailable):hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 0 2px #b9d3e5}
.solo-screen .budget-player-slot.is-selected:hover{box-shadow:0 0 0 3px var(--orange)}
.solo-card-note{position:absolute;right:6px;bottom:6px;z-index:5;font-size:10px;font-weight:800;line-height:1.2;padding:3px 5px;border-radius:4px;color:var(--cream);background:var(--surface-3);pointer-events:none}
.is-selected>.solo-card-note{background:var(--orange);color:var(--ink)}
/* The desktop board gets the remaining viewport, not five independently sized rows. */
@media(min-width:1100px) and (min-height:680px){
  .solo-budget[data-state=playing]{height:calc(100dvh - 76px);display:grid;grid-template-rows:40px minmax(0,1fr);gap:14px}
  .solo-budget[data-state=playing] .solo-heading{margin:0}
}
/* Below desktop size, keep readable cards and allow scrolling. */
@media(max-width:1099px),(max-height:679px){
  .solo-budget #solo-play{grid-template-rows:auto 44px}
  .solo-board .tier-row{height:120px}
  .solo-board-section{overflow-x:auto;padding:3px}
  .solo-board{min-width:1000px}
}

.solo-draft-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:14px 0 18px}
.solo-draft-heading h2{font:700 32px/1.1 var(--font-display);text-transform:uppercase;color:var(--orange)}
.solo-draft-heading p{font-size:13px;color:var(--muted)}
.solo-choices{display:grid;grid-template-columns:repeat(var(--solo-choices,5),minmax(0,1fr));gap:14px}
/* Choices, accumulated picks and results use the same landscape composition. */
.solo-choices>.budget-player-slot,.solo-draft-roster .roster-list>li{height:auto;aspect-ratio:2/1;min-width:0;min-height:0}
.solo-draft-roster{margin-top:34px;border-top:1px solid var(--line);padding-top:20px}
.solo-roster-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:12px}
.solo-roster-heading .panel-title{height:auto;margin:0;font-size:12px}
.solo-roster-heading>span{color:var(--muted);font-size:13px}
.solo-screen .roster-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:none;gap:14px}
.solo-screen .roster-empty-card{height:100%;min-height:0;font-size:12px}

.solo-result{margin:0 auto;padding-bottom:8px}
#solo-result-title:focus{outline:none}
.solo-result-actions{display:flex;margin-top:22px;align-items:center}
.solo-result-actions form{margin:0;width:220px}
.solo-result-actions .home-btn{min-height:44px;padding:10px 20px}
.solo-result.is-revealing .solo-result-roster>div{animation:solo-card-arrive .28s both;animation-delay:calc(var(--card-index)*45ms)}
@keyframes solo-card-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.solo-unavailable{max-width:560px;margin:80px auto;text-align:center}.solo-unavailable h1{font:700 40px var(--font-display)}.solo-unavailable p{margin:20px 0}.solo-unavailable form{margin:24px auto;max-width:250px}
@media(max-width:1050px){.solo-choices{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.solo-draft-roster .roster-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
@media(max-width:600px){.home-solo-options{grid-template-columns:1fr}.solo-heading{gap:12px;flex-wrap:wrap}.solo-heading h1{font-size:28px}.solo-money{gap:16px}.solo-money strong{font-size:24px}.solo-money span{font-size:11px}.solo-draft-heading{align-items:flex-start;flex-direction:column;gap:8px}.solo-board-actions{gap:12px}.solo-board-actions .home-btn{width:auto}}
@media(prefers-reduced-motion:reduce){.solo-result.is-revealing .solo-result-roster>div{animation:none}.solo-screen .budget-player-slot{transition:none}}
