.modal.gang-creator-modal { width: min(960px, 96vw); max-height: 92vh; overflow: auto; padding: 30px; }
.creator-heading h2 { margin: 4px 0; font-size: 22px; }
.creator-heading p { margin: 0 0 24px; color: #76808b; font-size: 11px; }
.creator-columns { display: grid; grid-template-columns: minmax(280px, .9fr) minmax(340px, 1.1fr); gap: 24px; }
.creator-columns > section { min-width: 0; }
.member-directory { padding-left: 24px; border-left: 1px solid #293039; }
.directory-head { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 12px; }
.directory-head h3 { margin: 0 0 3px; font-size: 13px; }
.directory-head p { margin: 0; color: #69737e; font-size: 9px; }
.directory-head > span { padding: 4px 7px; color: var(--green); background: #30d89b12; border-radius: 5px; font-size: 8px; font-weight: 700; }
.member-directory > .search { width: 100%; margin-bottom: 9px; }
.discord-member-list { max-height: 342px; overflow: auto; border: 1px solid #293039; border-radius: 9px; background: #0c1014; }
.discord-member { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 8px 11px; border-bottom: 1px solid #20262d; cursor: pointer; transition: background .15s; }
.discord-member:last-child { border-bottom: 0; }
.discord-member:hover { background: #151a20; }
.discord-member.disabled { cursor: default; opacity: .48; }
.discord-member input { width: 14px; height: 14px; min-height: 0; accent-color: var(--accent); }
.discord-member img { width: 32px; height: 32px; object-fit: cover; border-radius: 9px; background: #242a31; }
.discord-member > span { min-width: 0; flex: 1; }
.discord-member strong, .discord-member small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.discord-member strong { font-size: 10px; }
.discord-member small { margin-top: 2px; color: #65707b; font-size: 8px; }
.discord-member em { color: #7f8994; font-size: 8px; font-style: normal; }
.creator-note { display: flex; flex-direction: column; gap: 4px; margin-top: 16px; padding: 12px; background: #0e1216; border: 1px solid #293039; border-radius: 8px; }
.creator-note strong { color: var(--green); font-size: 9px; }
.creator-note span { color: #6f7984; font-size: 8px; line-height: 1.5; }
.grade-builder { margin-top: 2px; }
.grade-builder-head { display: flex; align-items: center; justify-content: space-between; }
.grade-builder-head .btn { height: 27px; padding: 0 9px; font-size: 9px; }
.grade-fixed,.custom-grade-row { display: grid; grid-template-columns: 26px 1fr auto; align-items: center; gap: 9px; min-height: 39px; padding: 6px 8px; background: #0e1216; border: 1px solid #293039; }
.grade-fixed:first-of-type { border-radius: 8px 8px 0 0; }
.grade-fixed.boss { border-radius: 0 0 8px 8px; }
.grade-fixed b,.custom-grade-row b { display: grid; place-items: center; width: 24px; height: 24px; background: var(--accent); border-radius: 6px; font-size: 9px; }
.grade-fixed span { font-size: 10px; font-weight: 700; }
.grade-fixed em { color: #6f7984; font-size: 8px; font-style: normal; }
.custom-grade-row { border-top: 0; padding-right: 6px; }
.custom-grade-row input { height: 28px; }
.custom-grade-row button { width: 27px; height: 27px; border: 0; border-radius: 6px; background: #2a1817; color: #ff7665; cursor: pointer; }
.grade-notice { color: #7b858f; font-size: 8px; line-height: 1.5; margin-top: 5px; }
.creator-actions { padding-top: 18px; margin-top: 22px; border-top: 1px solid #293039; }
.directory-loading { display: grid; min-height: 240px; place-content: center; text-align: center; }
.directory-loading span { width: 28px; height: 28px; margin: auto; border: 2px solid #2b323a; border-top-color: var(--accent); border-radius: 50%; animation: spin .7s linear infinite; }
.directory-loading h2 { margin: 13px 0 4px; font-size: 16px; }
.directory-loading p { margin: 0; color: #69737e; font-size: 9px; }
.crew-picker-head { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.crew-picker-head .search { flex: 1; width: auto; }
.crew-picker-head span { color: var(--green); font-size: 9px; font-weight: 700; }
.crew-directory { max-height: 410px; }

@media (max-width: 760px) {
  .creator-columns { grid-template-columns: 1fr; }
  .member-directory { padding: 20px 0 0; border-top: 1px solid #293039; border-left: 0; }
}
