/* showdown-wait.css */
/* CLASSROOM SHOWDOWN — the waiting room (showdown-wait.js): a 1920×1080
   stage zoomed to fit, over the settings scene (#waitView in
   showdown-host.css). Panels borrow .sb-panel from showdown-board.css. */
.sw-root{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;padding:22px 40px 74px}   /* v2.75.26 — room under the foot for the corner buttons */
.sw-logo{position:absolute;left:30px;top:18px;width:300px;filter:drop-shadow(0 8px 14px rgba(20,27,45,.3))}
.sw-head{display:flex;gap:20px;align-items:stretch;margin-left:220px}
.sw-joinp{display:flex;align-items:center;gap:18px;padding:12px 30px 12px 22px;min-width:560px}
.sw-globe{width:70px;height:70px;object-fit:contain}
.sw-join-lab{font-size:20px;font-weight:800;color:#5F6B8A}
.sw-join-url{font-family:var(--display);font-size:38px;font-weight:700;color:var(--ink);line-height:1.1}
.sw-join-sub{font-size:19px;font-weight:800;color:var(--royal)}
.sw-codep{display:flex;flex-direction:column;align-items:center;padding:10px 26px 12px;min-width:440px}
.sw-code-lab{font-size:17px;font-weight:900;letter-spacing:.12em;color:var(--ink)}
.sw-code-row{display:flex;align-items:center;justify-content:center;margin-top:2px}
.sw-code-ray{width:38px;flex:0 0 auto;position:relative;z-index:1}
.sw-code-ray:first-child{margin-right:-9px}
.sw-code + .sw-code-ray{margin-left:-9px}
.sw-code{
  flex:0 0 auto;padding:6px 30px 8px;text-align:center;border-radius:20px;
  background:url(showdown/btn/code-badge.webp) center / 100% 100% no-repeat;
  font-family:var(--display);font-size:64px;font-weight:700;letter-spacing:.08em;
  font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.1;
}
.sw-count{margin-top:4px;font-size:18px;font-weight:900;color:var(--royal)}
.sw-title{
  margin-top:14px;font-family:var(--display);font-size:40px;font-weight:700;letter-spacing:.06em;color:#fff;
  text-shadow:0 3px 0 rgba(23,27,85,.45),0 10px 24px rgba(23,27,85,.35);
}
.sw-grid{
  flex:1;min-height:0;width:100%;margin-top:10px;display:grid;gap:16px;align-content:start;
  grid-template-columns:repeat(2,1fr);
}
.sw-grid-md{grid-template-columns:repeat(3,1fr)}
.sw-grid-sm{grid-template-columns:repeat(3,1fr)}
.sw-grid-xs{grid-template-columns:repeat(4,1fr)}
.sw-team{
  background:linear-gradient(180deg,#FFFFFF,#F1F8FF);border:4px solid var(--tc,#7E858F);border-radius:30px;
  box-shadow:0 14px 34px rgba(20,85,170,.2);padding:14px 16px;min-height:0;display:flex;flex-direction:column;gap:10px;
}
.sw-team-top{display:flex;align-items:center;gap:12px}
.sw-team-av{width:64px;height:64px}
.sw-grid-sm .sw-team-av,.sw-grid-xs .sw-team-av{width:48px;height:48px}
.sw-team-name{font-family:var(--display);font-size:30px;font-weight:700;color:var(--tc,#171B55);line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sw-grid-sm .sw-team-name,.sw-grid-xs .sw-team-name{font-size:24px}
.sw-team-tx{min-width:0}
.sw-team-sub{font-size:16px;font-weight:800;color:#5F6B8A;margin-top:2px}
.sw-members{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}
.sw-member{
  display:inline-flex;align-items:center;gap:6px;padding:4px 14px 4px 5px;border-radius:999px;
  background:#F1F8FF;border:2px solid var(--line-soft,#DCEFFF);font-size:18px;font-weight:800;color:var(--ink);max-width:100%;
}
.sw-member-cap{border-color:#F3C845;background:#FFF9E5}
.sw-member-av{width:40px;height:40px}
.sw-grid-xs .sw-member{font-size:15px}
.sw-grid-xs .sw-member-av{width:32px;height:32px}
.sw-crown{width:20px;height:20px;object-fit:contain}
.sw-member-nick{font-size:13px;font-weight:700;color:#5F6B8A}
.sw-empty{font-size:16px;font-weight:800;color:#9AA4BF;padding:6px 4px}
/* v2.75.32 — the team name is a tap (showdown-teamadmin.js): a bare button. */
button.sw-team-name{display:block;max-width:100%;padding:0;border:0;background:transparent;text-align:left;font-family:var(--display)}
/* v2.75.32 — crowded teams shrink to fit (showdown-wait.js fitDensity).
   The pill list takes what is left of the card and clips; the script
   steps sw-d1 … sw-d4 until nothing is clipped. */
.sw-team{overflow:hidden}
.sw-members{flex:1 1 auto;min-height:0;overflow:hidden}
.sw-d1 .sw-members{gap:6px}
.sw-d1 .sw-member{font-size:16px;padding:3px 12px 3px 4px;gap:5px}
.sw-d1 .sw-member-av{width:32px;height:32px}
.sw-d1 .sw-member-nick{font-size:12px}
.sw-d2 .sw-team{padding:10px 12px;gap:7px}
.sw-d2 .sw-team-av{width:44px;height:44px}
.sw-d2 .sw-team-name{font-size:22px}
.sw-d2 .sw-team-sub{font-size:14px}
.sw-d2 .sw-members{gap:5px}
.sw-d2 .sw-member{font-size:14px;padding:2px 10px 2px 3px;gap:4px;border-width:1.5px}
.sw-d2 .sw-member-av{width:26px;height:26px}
.sw-d2 .sw-member-nick{font-size:11px}
.sw-d2 .sw-crown{width:16px;height:16px}
.sw-d3 .sw-team{padding:8px 10px;gap:6px;border-width:3px;border-radius:22px}
.sw-d3 .sw-team-av{width:36px;height:36px}
.sw-d3 .sw-team-name{font-size:19px}
.sw-d3 .sw-team-sub{font-size:12.5px}
.sw-d3 .sw-members{gap:4px}
.sw-d3 .sw-member{font-size:13px;padding:2px 9px 2px 2px;gap:4px;border-width:1.5px}
.sw-d3 .sw-member-av{width:22px;height:22px}
.sw-d3 .sw-member-nick{display:none}
.sw-d3 .sw-crown{width:14px;height:14px}
.sw-d4 .sw-team{padding:6px 8px;gap:4px;border-width:3px;border-radius:18px}
.sw-d4 .sw-team-av{width:30px;height:30px}
.sw-d4 .sw-team-name{font-size:17px}
.sw-d4 .sw-team-sub{font-size:11.5px}
.sw-d4 .sw-members{gap:3px}
.sw-d4 .sw-member{font-size:12px;padding:1px 8px 1px 2px;gap:3px;border-width:1px}
.sw-d4 .sw-member-av{width:18px;height:18px}
.sw-d4 .sw-member-nick{display:none}
.sw-d4 .sw-crown{width:12px;height:12px}
/* v2.75.26 — the foot is a centred stack: the hint in a panel like the rest
   of the page (ink on white, not white on scenery), the button under it. */
.sw-foot{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:12px;width:100%}
.sw-hint{width:auto;flex:0 0 auto;padding:10px 26px;border-radius:999px;font-size:18px;font-weight:800;color:#5F6B8A;line-height:1.35;text-align:center;max-width:1500px}
.sw-go{height:76px;padding:0 40px 22px;font-size:30px;flex:0 0 auto}   /* v2.75.26 — the label sits higher on the pill (was 13px) */
.sw-go img{height:.85em}
