/* Ajustements des pages réseau : n'introduit pas de nouvelle direction artistique. */
.workspace.net-solo{grid-template-columns:minmax(0,1fr)}
/* Le parcours joueur reprend le rail de la maquette, piloté par l'état partagé. */
.workspace.net-team{grid-template-columns:226px minmax(0,1fr)}
.team-rail{position:sticky;top:16px}
.team-rail nav button:disabled{opacity:.65;cursor:default}
.team-rail .rail-resources{display:grid;gap:8px;border-top:1px solid #b89a5f55;padding-top:12px}
.team-rail .rail-resources :is(button,a){display:block;width:100%;margin:0;padding:9px 10px;color:#e5e4d3;font-size:13px;line-height:1.35;text-align:left}
.team-rail .rail-resources a{border-radius:5px;text-underline-offset:3px}
.team-rail .rail-resources [hidden]{display:none}
.team-rail .rail-resources :is(button,a):hover{background:#3d5447;color:#fff2cf}
@media(max-width:1100px){.workspace.net-team{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:760px){
  .workspace.net-team{display:block}
  .team-rail{position:static;margin-bottom:12px}
  .team-rail nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:6px}
  .team-rail nav button{width:100%;min-width:0;margin:0;white-space:normal;font-size:12px}
  .team-rail .rail-resources{grid-template-columns:1fr 1fr;gap:6px;padding-top:8px}
  .team-rail .rail-resources :is(button,a){font-size:12px;padding:8px}
}
.net-connection{display:inline-flex;align-items:center;gap:8px;font-size:12px;padding:5px 10px;border:1px solid #a58c55;border-radius:20px}
.net-connection::before{content:'';width:9px;height:9px;border-radius:50%;background:#c4382d}
.net-connection.online::before{background:#4c9a52}
.config-required{max-width:860px;margin:30px auto}
.config-required code,.config-required pre{background:#f1efe6;color:#2b3329;border:1px solid #c9c2a8;border-radius:4px;padding:2px 6px}
.config-required pre{padding:12px;overflow:auto;font-size:12px}
.secret-box{font:700 20px ui-monospace,monospace;letter-spacing:1px;background:#f6f3e6;border:1px dashed #8c7b4f;padding:10px 14px;display:inline-block;user-select:all}
.net-error{color:#a3271f;font-weight:650}
.gm-follow-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}
@media(max-width:1000px){.gm-follow-grid{grid-template-columns:1fr}}
.gm-card-mini{max-width:260px}
.hand-family{margin:12px 0 4px;font-size:13px;text-transform:uppercase;letter-spacing:.6px}
