#lobbyPilot{position:fixed;inset:0;z-index:100;overflow:auto;display:block;padding: max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom));box-sizing:border-box}
#lobbyPilot.hidden{display:none}
#lobbyPilot .lobby-card{animation:none;width:min(760px,100%);box-sizing:border-box;margin:0 auto;padding:22px}
#lobbyPilot .lobby-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
#lobbyPilot .lobby-header .sheet-open{flex:none;margin:0}
/* The shared solo cards own their buttons; avoid the lobby's generic yellow-button chrome. */
#lobbyPilot .classes .cls-pick{min-height:0;box-shadow:none}
#lobbyPilot .classes .spec-chip{margin:0}
#lobbyPilot h1{font-size:clamp(26px,6vw,38px);margin:8px 0}
#lobbyPilot h2{font-size:19px;margin:12px 0}
#lobbyPilot p{line-height:1.5;font-size:14px}
#lobbyPilot button:where(:not(.cls-pick):not(.spec-chip)),#lobbyPilot select{min-height:48px;font:700 15px system-ui;border:2px solid var(--mb-ink);border-radius:12px;padding:10px 14px;cursor:pointer}
#lobbyPilot button:where(:not(.cls-pick):not(.spec-chip)){background:var(--mb-yellow);color:var(--mb-ink);box-shadow:0 3px 0 var(--mb-ink);margin:5px 5px 7px 0}
#lobbyPilot button:disabled{opacity:.5;cursor:default}
#lobbyPilot button:focus-visible,#lobbyPilot select:focus-visible{outline:3px solid white;outline-offset:3px}
#lobbyPilot .lobby-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:20px 0}
#lobbyPilot .lobby-steps button{padding:8px 3px;font-size:12px;margin:0;background:#e8edff}
#lobbyPilot .lobby-steps [aria-current=step]{background:var(--mb-yellow)}
#lobbyPilot .lobby-teams{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#lobbyPilot .lobby-team{min-width:0;background:#19245b88;padding:12px;border-radius:16px;border-top:4px solid #69d8ff}
#lobbyPilot .lobby-team+section{border-color:#ffb186}
#lobbyPilot .lobby-seat{border:1px solid #8296dc;border-radius:10px;padding:10px;margin:8px 0;min-height:48px}
#lobbyPilot .lobby-seat span{display:block;font-size:12px;margin-top:5px;color:#e0e8ff}
#lobbyPilot .is-ready{border-color:#90edbb;background:#204c57}
#lobbyPilot .lobby-classes{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
#lobbyPilot .lobby-classes small{display:block;font-weight:400;margin-top:5px}
#lobbyPilot .lobby-classes [aria-pressed=true]{outline:3px solid #fff;outline-offset:1px}
#lobbyPilot .lobby-content{margin-top:22px}
#lobbyPilot .lobby-ability{display:block;background:#18235d66;border-radius:10px;padding:10px;margin:9px 0}
#lobbyPilot .lobby-ability>span{display:block;font-size:12px;margin-bottom:6px}
#lobbyPilot select{display:block;width:100%;background:#edf2ff;color:#1d2140}
#lobbyPilot small{line-height:1.5}
#lobbyPilot .lobby-ability small,#lobbyPilot .lobby-advice{display:block;margin-top:6px;color:#e2eaff}
#lobbyPilot .lobby-error,#lobbyPilot .lobby-message{color:#ffe196}
@media(max-width:400px){#lobbyPilot .lobby-card{padding:14px}#lobbyPilot .lobby-team{padding:8px}#lobbyPilot .lobby-seat{padding:8px;font-size:13px}}
#lobbyPilot .lobby-team-fold summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:700}
#lobbyPilot .lobby-steps{margin:12px 0}
#lobbyPilot .lobby-content{margin-top:12px}
#lobbyPilot .lobby-class-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;margin:12px 0 18px}
#lobbyPilot .lobby-class-choice small{grid-column:1}
#lobbyPilot .lobby-class-choice h2{grid-column:1;font-size:18px;margin:0}
#lobbyPilot .lobby-class-choice button{grid-column:2;grid-row:1/3;max-width:132px;font-size:13px;margin:0;padding:8px}
#lobbyPilot .lobby-classes{grid-template-columns:repeat(3,minmax(0,1fr))}
#lobbyPilot .lobby-classes button{font-size:14px;margin:0;box-shadow:none}
#lobbyPilot .setup-slots{margin:12px 0}
#lobbyPilot .setup-slots button{margin:0;padding:5px 0;min-height:54px;border:1px solid #b59856;border-radius:8px;background:#17264b;color:white;box-shadow:none}
@media(max-width:650px) and (orientation:portrait){#lobbyPilot .lobby-classes{grid-template-columns:repeat(2,minmax(0,1fr))}#lobbyPilot .lobby-classes button{padding:8px}}
