.team-panel { border-top: 1px solid var(--line); padding-top: 24px; }
.team-grant { margin-bottom: 28px; }
.team-panel .section-head { padding-bottom: 16px; }
.team-panel h3 { margin: 0; }
.team-fields label,.team-member form > label { margin: 0; }
.team-fields { display: grid; grid-template-columns: minmax(0, 2fr) minmax(180px, 1fr); gap: 16px; }
.permission-options { border: 0; padding: 16px 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.permission-options legend { padding: 16px 0 0; font-weight: 700; }
.permission-options p { grid-column: 1 / -1; margin: 0; font-size: 14px; }
body .permission-options label { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; margin: 0; }
.permission-options input { flex: 0 0 16px; }
.team-member { border-top: 1px solid var(--line); padding: 16px 0; }
.team-member summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.team-member summary > span:first-child { min-width: 0; }
.team-member small { display: block; color: var(--muted); overflow-wrap: anywhere; }
.team-member form { padding-top: 20px; }
.team-audit { border-top: 1px solid var(--line); padding-top: 20px; margin-top: 20px; }
.team-audit summary { cursor: pointer; }
.team-audit p { padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 14px; overflow-wrap: anywhere; }
.team-audit small { color: var(--muted); }
body .danger { color: var(--danger); }
body .team-panel button.secondary,body .training-toolbar button.secondary { min-height: 40px; padding: 9px 14px; }
body #refreshTeam { width: 40px; padding: 9px; }
body .help-button { width: 36px; min-width: 36px; min-height: 36px; height: 36px; border-radius: 50%; padding: 0; font-size: 19px; align-self: flex-start; margin: 6px 12px; }
.guide-menu { width: min(480px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); overflow: auto; }
.guide-menu h2 { font-size: 22px; margin: 0; }
.guide-courses { display: grid; gap: 8px; margin-top: 20px; }
body .guide-courses button { justify-content: space-between; text-align: left; }
.guide-menu p { font-size: 15px; line-height: 1.5; }
.guide-focus { position: fixed; z-index: 1000; pointer-events: none; border: 2px solid var(--accent); border-radius: 6px; box-shadow: 0 0 0 4px var(--accent-soft); }
.guide-coach { position: fixed; z-index: 1001; width: min(360px, calc(100vw - 24px)); padding: 18px; background: var(--surface-2); color: var(--text); border: 1px solid var(--accent); border-radius: 8px; box-shadow: 0 12px 38px #0008; outline: none; overflow: visible; }
.guide-coach h3 { font-size: 18px; line-height: 1.35; margin: 12px 0 8px; }
.guide-coach p { font-size: 14px; line-height: 1.5; margin: 0 0 18px; overflow-wrap: anywhere; }
.guide-head,.guide-actions { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.guide-head small { color: var(--muted); }
body .guide-head button { min-height: 28px; width: 28px; height: 28px; padding: 3px; }
.guide-arrow { position: absolute; width: 12px; height: 12px; background: var(--surface-2); transform: rotate(45deg); }
.guide-coach[data-side="top"] .guide-arrow { top: -7px; left: var(--pointer-x); border-left: 1px solid var(--accent); border-top: 1px solid var(--accent); }
.guide-coach[data-side="bottom"] .guide-arrow { bottom: -7px; left: var(--pointer-x); border-right: 1px solid var(--accent); border-bottom: 1px solid var(--accent); }
.guide-coach[data-side="left"] .guide-arrow { left: -7px; top: var(--pointer-y); border-left: 1px solid var(--accent); border-bottom: 1px solid var(--accent); }
@media (max-width: 700px) {
  .team-fields,.permission-options { grid-template-columns: minmax(0, 1fr); }
  .team-member summary { align-items: flex-start; font-size: 14px; }
  .team-panel .actions { flex-wrap: wrap; }
  .guide-coach { padding: 14px; }
  body .guide-actions button { font-size: 13px; padding: 8px 10px; }
}
@media (max-height: 480px) { .guide-coach { overflow-y: auto; } }
