.promotor-course-head-actions { display: flex; gap: 9px; align-items: center; }
.promotor-bulk-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 30px; align-items: center; margin-bottom: 25px; padding: 27px 30px; overflow: hidden; border-radius: 20px; color: #fff; background: radial-gradient(circle at 82% -20%, rgba(49,189,255,.65), transparent 42%), linear-gradient(135deg, #071e4d, #0870ef); box-shadow: 0 20px 45px rgba(5,56,133,.18); }
.promotor-bulk-hero .promotor-eyebrow { color: #7edcff !important; }
.promotor-bulk-hero h1 { max-width: 700px; margin: 7px 0 9px; color: #fff; font-size: clamp(1.65rem, 3.5vw, 2.7rem); line-height: 1.06; letter-spacing: -.045em; }
.promotor-bulk-hero p:not(.promotor-eyebrow) { max-width: 720px; margin: 0; color: rgba(255,255,255,.76); font-size: .74rem; line-height: 1.65; }
.promotor-bulk-balance { display: grid; min-width: 145px; padding: 18px; border: 1px solid rgba(255,255,255,.22); border-radius: 15px; background: rgba(255,255,255,.11); backdrop-filter: blur(8px); text-align: center; }
.promotor-bulk-balance small, .promotor-bulk-balance span { color: rgba(255,255,255,.72); font-size: .57rem; font-weight: 700; }
.promotor-bulk-balance strong { margin: 3px 0 1px; color: #fff; font-size: 1.65rem; }
.promotor-bulk-start-head { align-items: center; }
.promotor-bulk-form { padding-bottom: 15px; }
.promotor-bulk-course { max-width: 760px; }
.promotor-bulk-tabs { display: inline-flex; gap: 4px; margin: 7px 0 16px; padding: 4px; border: 1px solid #d8e4f1; border-radius: 11px; background: #f5f8fc; }
.promotor-bulk-tabs button { padding: 9px 14px; border: 0; border-radius: 8px; color: #64748a; background: transparent; font: inherit; font-size: .66rem; font-weight: 850; cursor: pointer; }
.promotor-bulk-tabs button.is-active { color: #086cf0; background: #fff; box-shadow: 0 3px 10px rgba(17,61,113,.09); }
.promotor-bulk-panel { padding: 3px 0 5px; }
.promotor-bulk-panel[hidden] { display: none; }
.promotor-bulk-panel textarea { width: 100%; height: auto; min-height: 150px; padding: 13px; resize: vertical; line-height: 1.55; }
.promotor-bulk-panel textarea:focus, .promotor-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(8,112,239,.1); }
.promotor-bulk-drop { position: relative; display: grid !important; min-height: 180px; margin-bottom: 14px !important; place-items: center; align-content: center; padding: 24px; border: 2px dashed #b9cde5; border-radius: 15px; color: var(--navy) !important; background: linear-gradient(180deg, #fbfdff, #f5f9fe); text-align: center; cursor: pointer; transition: .18s ease; }
.promotor-bulk-drop:hover, .promotor-bulk-drop.is-dragging { border-color: var(--blue); background: #eff7ff; transform: translateY(-1px); }
.promotor-bulk-drop input { position: absolute; width: 1px !important; height: 1px !important; opacity: 0; pointer-events: none; }
.promotor-bulk-drop strong { font-size: .78rem; }
.promotor-bulk-drop small { color: var(--muted); font-size: .61rem; font-weight: 500; }
.promotor-bulk-drop em { max-width: 100%; margin-top: 5px; color: var(--blue); font-size: .62rem; font-style: normal; overflow-wrap: anywhere; }
.promotor-bulk-upload-icon { display: grid; width: 39px; height: 39px; margin-bottom: 5px; place-items: center; border-radius: 11px; color: #fff; background: linear-gradient(135deg, #1283ff, #0754cf); font-size: 1.05rem; box-shadow: 0 9px 20px rgba(8,101,224,.2); }
.promotor-bulk-format { padding: 18px 23px 23px; border-top: 1px solid var(--line); background: #fafcff; }
.promotor-bulk-format > strong { display: block; margin-bottom: 10px; color: var(--navy); font-size: .66rem; }
.promotor-bulk-format > div { display: flex; gap: 7px; flex-wrap: wrap; }
.promotor-bulk-format span { padding: 6px 9px; border: 1px solid #d8e5f2; border-radius: 8px; color: #53667f; background: #fff; font-size: .59rem; font-weight: 750; }
.promotor-bulk-preview { scroll-margin-top: 95px; }
.promotor-bulk-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 18px 23px; border-bottom: 1px solid var(--line); background: #fbfdff; }
.promotor-bulk-summary > div { display: grid; gap: 4px; padding: 13px; border: 1px solid #dfe8f2; border-radius: 11px; background: #fff; }
.promotor-bulk-summary small { color: var(--muted); font-size: .57rem; }
.promotor-bulk-summary strong { color: var(--navy); font-size: .9rem; }
.promotor-bulk-summary .is-positive strong { color: #08734c; }
.promotor-bulk-summary .is-danger strong { color: #b12e3c; }
.promotor-bulk-inline-alert { margin: 15px 23px; }
.promotor-bulk-table td { vertical-align: top; line-height: 1.45; }
.promotor-bulk-table td strong { color: var(--navy); }
.promotor-bulk-table tr.is-invalid { background: #fff9f9; }
.promotor-bulk-table tr.is-valid { background: #fcfffd; }
.promotor-bulk-ok { color: #08734c; font-size: .62rem; font-weight: 850; white-space: nowrap; }
.promotor-bulk-errors { min-width: 205px; margin: 0; padding-left: 16px; color: #a52f3b; font-size: .61rem; line-height: 1.5; }
.promotor-muted { color: var(--muted); font-size: .61rem; }
.promotor-bulk-confirm { display: flex; gap: 18px; align-items: center; justify-content: space-between; padding: 19px 23px; border-top: 1px solid var(--line); background: #f8fbff; }
.promotor-bulk-confirm form { display: flex; width: 100%; gap: 18px; align-items: center; justify-content: space-between; }
.promotor-bulk-confirm label { display: flex; gap: 9px; align-items: center; color: #40536d; font-size: .66rem; line-height: 1.5; }
.promotor-bulk-confirm input[type="checkbox"] { width: 17px; height: 17px; accent-color: var(--blue); }
.promotor-bulk-confirm > div { display: grid; gap: 4px; }
.promotor-bulk-confirm > div strong { color: #a52f3b; font-size: .7rem; }
.promotor-bulk-confirm > div span { color: var(--muted); font-size: .62rem; }
.promotor-bulk-success .promotor-card-head { background: linear-gradient(135deg, #f0fbf6, #f7fbff); }
.promotor-bulk-check { display: grid; width: 45px; height: 45px; place-items: center; border-radius: 50%; color: #fff; background: #0b9763; font-size: 1.15rem; font-weight: 900; }
.promotor-bulk-credential-note { margin: 16px 23px; padding: 11px 13px; border: 1px solid #ffe0a9; border-radius: 10px; color: #694714; background: #fff9ed; font-size: .65rem; }
.promotor-bulk-credential-note strong { margin-right: 5px; }
.promotor-bulk-password { display: inline-block; padding: 4px 7px; border: 1px solid #cfe0f2; border-radius: 6px; color: #0754cf; background: #f4f9ff; font-size: .68rem; user-select: all; }
.promotor-bulk-success-actions { display: flex; gap: 9px; padding: 18px 23px; border-top: 1px solid var(--line); }
@media (max-width: 900px) {
  .promotor-bulk-summary { grid-template-columns: repeat(2, 1fr); }
  .promotor-bulk-confirm, .promotor-bulk-confirm form { align-items: flex-start; flex-direction: column; }
  .promotor-course-head-actions { align-items: flex-end; flex-direction: column; }
}
@media (max-width: 650px) {
  .promotor-bulk-hero { grid-template-columns: 1fr; padding: 23px; }
  .promotor-bulk-balance { grid-template-columns: auto auto auto; min-width: 0; align-items: center; text-align: left; }
  .promotor-bulk-balance strong { margin: 0 5px; }
  .promotor-bulk-summary { grid-template-columns: 1fr 1fr; padding: 14px; }
  .promotor-bulk-tabs { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .promotor-bulk-start-head { align-items: flex-start; flex-direction: column; }
  .promotor-bulk-success-actions { flex-direction: column; }
  .promotor-course-head-actions { width: 100%; align-items: stretch; }
  .promotor-course-head-actions .promotor-button { justify-content: center; }
}
