

#prep-v2-screen.prep-v2-screen {
  
  left: 216px;
  background:
    radial-gradient(900px 540px at 18% -12%, rgba(19, 176, 196, .11), transparent 64%),
    radial-gradient(760px 520px at 98% 0%, rgba(123, 70, 225, .11), transparent 65%),
    #071018;
  overflow: hidden;
}

@media (max-width: 1366px), (max-height: 820px) {
  #prep-v2-screen.prep-v2-screen { left: 190px; }
}

#prep-v2-content.prep-v2-content {
  height: 100%;
  overflow: auto;
  scrollbar-color: rgba(71, 198, 211, .36) transparent;
}

.rwprep-shell {
  box-sizing: border-box;
  width: min(1660px, 100%);
  min-height: 100%;
  margin: 0 auto;
  padding: clamp(18px, 2vw, 30px);
  color: #eaf4fa;
  font-family: Inter, sans-serif;
}

.rwprep-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}

.rwprep-title {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
}

.rwprep-team-mark {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  border: 1px solid rgba(79, 209, 220, .22);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(39, 180, 194, .12), rgba(6, 15, 24, .75));
  box-shadow: inset 0 0 26px rgba(51, 203, 215, .07), 0 18px 34px -24px #000;
}

.rwprep-team-mark img,
.rwprep-team-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.rwprep-title small,
.rwprep-calendar-head small,
.rwprep-section-title small,
.rwprep-inspector-head small,
.rwprep-summary-card small,
.rwprep-modal-head small {
  display: block;
  color: #49cbd6;
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.rwprep-title h1 {
  margin: 2px 0 0;
  color: #f3f8fb;
  font-family: Rajdhani, sans-serif;
  font-size: clamp(32px, 3vw, 48px);
  font-weight: 800;
  letter-spacing: .02em;
  line-height: .95;
}

.rwprep-title p {
  margin: 5px 0 0;
  color: #8198a9;
  font-size: 11.5px;
}

.rwprep-top-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.rwprep-top-actions button {
  min-height: 39px;
  padding: 0 16px;
  border: 1px solid rgba(107, 155, 178, .25);
  border-radius: 10px;
  color: #bcd0dd;
  background: rgba(10, 22, 33, .72);
  font: 800 11px Inter, sans-serif;
  cursor: pointer;
  transition: .16s ease;
}

.rwprep-top-actions button:hover {
  border-color: rgba(70, 207, 219, .5);
  color: #effbff;
  transform: translateY(-1px);
}

.rwprep-top-actions .is-dashboard {
  color: #dffaff;
  border-color: rgba(55, 201, 216, .38);
  background: linear-gradient(180deg, rgba(34, 139, 155, .2), rgba(11, 37, 48, .62));
}

.rwprep-summary {
  display: grid;
  grid-template-columns: 1.45fr repeat(3, minmax(160px, .75fr));
  gap: 10px;
  margin-bottom: 12px;
}

.rwprep-summary-card {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 76px;
  padding: 13px 15px;
  overflow: hidden;
  border: 1px solid rgba(106, 157, 180, .16);
  border-radius: 14px;
  background:
    linear-gradient(120deg, rgba(17, 35, 49, .78), rgba(8, 18, 28, .9));
  box-shadow: inset 0 1px rgba(255,255,255,.018);
}

.rwprep-summary-card::after {
  position: absolute;
  content: "";
  inset: auto -35px -55px auto;
  width: 120px;
  height: 100px;
  border-radius: 50%;
  background: rgba(48, 197, 209, .045);
  filter: blur(2px);
}

.rwprep-summary-card.is-next {
  border-color: rgba(226, 178, 74, .23);
  background:
    radial-gradient(240px 90px at 12% 120%, rgba(213, 160, 45, .11), transparent 80%),
    linear-gradient(120deg, rgba(31, 34, 40, .84), rgba(11, 20, 29, .92));
}

.rwprep-summary-card > div:last-child {
  min-width: 0;
}

.rwprep-summary-card small {
  margin-bottom: 3px;
  color: #6f8fa2;
  letter-spacing: .11em;
}

.rwprep-summary-card b {
  display: block;
  overflow: hidden;
  color: #edf6fb;
  font-family: Rajdhani, sans-serif;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.rwprep-summary-card b em {
  color: #698293;
  font-size: 13px;
  font-style: normal;
}

.rwprep-summary-card > div > span {
  display: block;
  margin-top: 3px;
  color: #71899a;
  font-size: 10px;
}

.rwprep-summary-icon,
.rwprep-stat-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  margin-right: 12px;
  border: 1px solid rgba(213, 168, 64, .28);
  border-radius: 12px;
  color: #efc35f;
  background: rgba(198, 145, 34, .09);
  font: 800 20px Rajdhani, sans-serif;
}

.rwprep-summary-logo {
  width: 34px !important;
  height: 34px !important;
  object-fit: contain;
}

.rwprep-stat-icon {
  border-color: rgba(141, 113, 223, .28);
  color: #a88bea;
  background: rgba(124, 88, 216, .09);
}

.rwprep-stat-icon.is-teal {
  border-color: rgba(54, 205, 210, .28);
  color: #42d5d8;
  background: rgba(40, 190, 195, .09);
}

.rwprep-stat-icon.is-orange {
  border-color: rgba(226, 138, 65, .28);
  color: #eb9b55;
  background: rgba(218, 117, 35, .09);
}

.rwprep-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, .58fr);
  gap: 12px;
  align-items: stretch;
}

.rwprep-calendar-card,
.rwprep-inspector,
.rwprep-upcoming,
.rwprep-philosophy {
  border: 1px solid rgba(96, 151, 175, .17);
  border-radius: 16px;
  background: rgba(7, 17, 26, .78);
  box-shadow: 0 22px 46px -38px #000;
}

.rwprep-calendar-card {
  min-width: 0;
  padding: 16px;
}

.rwprep-calendar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 1px 3px 13px;
}

.rwprep-calendar-head h2 {
  margin: 2px 0 0;
  color: #eff7fb;
  font: 800 26px Rajdhani, sans-serif;
}

.rwprep-month-nav {
  display: grid;
  grid-template-columns: 34px minmax(126px, auto) 34px;
  align-items: center;
  overflow: hidden;
  border: 1px solid rgba(97, 152, 177, .22);
  border-radius: 10px;
  background: rgba(12, 26, 38, .72);
}

.rwprep-month-nav span {
  padding: 0 12px;
  color: #b9ccd7;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}

.rwprep-month-nav button {
  height: 34px;
  border: 0;
  color: #7ce0e7;
  background: transparent;
  font-size: 22px;
  cursor: pointer;
}

.rwprep-month-nav button:hover:not(:disabled) {
  background: rgba(71, 200, 211, .1);
}

.rwprep-month-nav button:disabled {
  color: #405462;
  cursor: default;
}

.rwprep-weekdays,
.rwprep-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.rwprep-weekdays {
  border: 1px solid rgba(92, 145, 168, .13);
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
  background: rgba(15, 31, 43, .55);
}

.rwprep-weekdays span {
  padding: 7px 4px;
  color: #678194;
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .1em;
  text-align: center;
}

.rwprep-calendar-grid {
  overflow: hidden;
  border: 1px solid rgba(92, 145, 168, .13);
  border-radius: 0 0 10px 10px;
}

.rwprep-day {
  position: relative;
  min-width: 0;
  min-height: 78px;
  padding: 7px;
  overflow: hidden;
  border: 0;
  border-right: 1px solid rgba(93, 145, 167, .105);
  border-bottom: 1px solid rgba(93, 145, 167, .105);
  color: #a8bbc7;
  background: rgba(9, 20, 30, .46);
  text-align: left;
  cursor: pointer;
  transition: background .14s, box-shadow .14s;
}

.rwprep-day:nth-child(7n) { border-right: 0; }
.rwprep-day:nth-last-child(-n + 7) { border-bottom: 0; }

.rwprep-day:hover {
  z-index: 1;
  background: rgba(18, 40, 54, .72);
  box-shadow: inset 0 0 0 1px rgba(64, 198, 209, .28);
}

.rwprep-day.is-selected {
  z-index: 2;
  background:
    radial-gradient(120px 70px at 100% 100%, rgba(57, 203, 210, .12), transparent 80%),
    rgba(14, 38, 50, .86);
  box-shadow: inset 0 0 0 1px #31c7cf, 0 0 18px rgba(41, 194, 203, .08);
}

.rwprep-day.is-out { opacity: .28; }
.rwprep-day.is-past { opacity: .45; }
.rwprep-day.has-match { background: rgba(42, 34, 23, .48); }
.rwprep-day.has-scrim { background: rgba(17, 46, 48, .58); }
.rwprep-day.has-camp { background: rgba(43, 29, 70, .45); }

.rwprep-day-number {
  display: block;
  color: #97acb9;
  font: 800 11px Rajdhani, sans-serif;
}

.rwprep-day-event {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  margin-top: 7px;
  padding: 5px 6px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 7px;
  background: rgba(0,0,0,.18);
}

.rwprep-day-event > span:last-child {
  min-width: 0;
}

.rwprep-day-event b,
.rwprep-day-event small {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.rwprep-day-event b {
  color: #daaf58;
  font-size: 7.5px;
  letter-spacing: .07em;
}

.rwprep-day-event small {
  margin-top: 1px;
  color: #bac9d2;
  font-size: 8.5px;
}

.rwprep-day-event.is-scrim b { color: #50d4d6; }
.rwprep-day-event.is-camp b { color: #ad8af2; }
.rwprep-plane { color: #b395f5; font-size: 17px; }

.rwprep-day-logo {
  width: 22px !important;
  height: 22px !important;
  flex: 0 0 22px;
  object-fit: contain;
}

.rwprep-today-dot {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #42d4d7;
  box-shadow: 0 0 8px #42d4d7;
}

.rwprep-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 12px 2px 0;
  color: #6e8493;
  font-size: 9px;
  font-weight: 700;
}

.rwprep-legend span {
  display: flex;
  align-items: center;
  gap: 6px;
}

.rwprep-legend i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
}
.rwprep-legend i.is-match { background: #d9aa4f; }
.rwprep-legend i.is-scrim { background: #43cdcf; }
.rwprep-legend i.is-camp { background: #9d78e8; }
.rwprep-legend i.is-today { border: 1px solid #3fced3; background: transparent; }

.rwprep-inspector {
  min-height: 100%;
  overflow: hidden;
}

.rwprep-inspector-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 17px;
  border-bottom: 1px solid rgba(95, 147, 169, .13);
  background: linear-gradient(135deg, rgba(19, 39, 53, .64), rgba(8, 18, 27, .18));
}

.rwprep-inspector-head h3 {
  margin: 3px 0 0;
  color: #eaf4f9;
  font: 800 19px Rajdhani, sans-serif;
  text-transform: capitalize;
}

.rwprep-inspector-head > span {
  flex: 0 0 auto;
  padding: 4px 7px;
  border: 1px solid rgba(87, 203, 208, .28);
  border-radius: 999px;
  color: #5ed5d8;
  background: rgba(42, 186, 192, .08);
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
}

.rwprep-inspector-head > span.is-match {
  color: #e0b75e;
  border-color: rgba(224, 183, 94, .28);
  background: rgba(190, 138, 36, .08);
}

.rwprep-inspector-head > span.is-camp {
  color: #b394f2;
  border-color: rgba(179, 148, 242, .28);
  background: rgba(131, 87, 218, .08);
}

.rwprep-inspector-body {
  padding: 17px;
}

.rwprep-free-copy {
  padding: 9px 4px 15px;
  text-align: center;
}

.rwprep-free-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0 auto 9px;
  border: 1px solid rgba(68, 206, 211, .27);
  border-radius: 50%;
  color: #55d6d9;
  background: rgba(46, 192, 197, .08);
}

.rwprep-free-copy h4,
.rwprep-booked h4,
.rwprep-camp-selected h4 {
  margin: 0;
  color: #eaf4f9;
  font: 800 20px Rajdhani, sans-serif;
}

.rwprep-free-copy p,
.rwprep-inspector-note,
.rwprep-booked p,
.rwprep-camp-selected p {
  margin: 5px 0 0;
  color: #7f95a4;
  font-size: 10.5px;
  line-height: 1.5;
}

.rwprep-action-list {
  display: grid;
  gap: 8px;
  margin-top: 4px;
}

.rwprep-primary-action,
.rwprep-camp-action {
  display: grid;
  grid-template-columns: 34px 1fr 14px;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  padding: 9px 11px;
  border: 1px solid rgba(54, 201, 207, .3);
  border-radius: 11px;
  color: #e9fbfc;
  background: linear-gradient(120deg, rgba(39, 162, 170, .15), rgba(12, 37, 46, .42));
  text-align: left;
  cursor: pointer;
}

.rwprep-primary-action:disabled {
  opacity: .46;
  cursor: default;
}

.rwprep-camp-action {
  border-color: rgba(159, 125, 231, .3);
  background: linear-gradient(120deg, rgba(117, 78, 202, .14), rgba(30, 24, 49, .44));
}

.rwprep-primary-action > span,
.rwprep-camp-action > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  color: #4bd5d7;
  background: rgba(40, 191, 195, .11);
  font-size: 17px;
}

.rwprep-camp-action > span {
  color: #b292f3;
  background: rgba(137, 92, 224, .11);
}

.rwprep-primary-action b,
.rwprep-primary-action small,
.rwprep-camp-action b,
.rwprep-camp-action small {
  display: block;
}

.rwprep-primary-action b,
.rwprep-camp-action b { font-size: 11px; }
.rwprep-primary-action small,
.rwprep-camp-action small { margin-top: 2px; color: #77909f; font-size: 9px; }
.rwprep-primary-action i,
.rwprep-camp-action i { color: #6e8c9a; font-size: 20px; font-style: normal; }

.rwprep-match-card {
  display: grid;
  grid-template-columns: 1fr 34px 1fr;
  align-items: center;
  gap: 8px;
  padding: 13px 8px;
  border: 1px solid rgba(212, 166, 70, .19);
  border-radius: 12px;
  background: rgba(174, 121, 29, .055);
}

.rwprep-match-card > span {
  color: #8c7550;
  font: 800 16px Rajdhani, sans-serif;
  text-align: center;
}

.rwprep-match-team {
  display: grid;
  justify-items: center;
  gap: 6px;
  min-width: 0;
  text-align: center;
}

.rwprep-match-logo {
  width: 44px !important;
  height: 44px !important;
  object-fit: contain;
}

.rwprep-match-team b {
  max-width: 100%;
  overflow: hidden;
  color: #dce8ee;
  font-size: 9px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.rwprep-booked,
.rwprep-camp-selected {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px;
  border: 1px solid rgba(61, 205, 209, .2);
  border-radius: 12px;
  background: rgba(39, 163, 170, .07);
}

.rwprep-booked-logo {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  border-radius: 12px;
  background: rgba(0,0,0,.15);
}

.rwprep-booked small,
.rwprep-camp-selected small {
  color: #4dd3d6;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .1em;
}

.rwprep-camp-selected {
  border-color: rgba(162, 127, 232, .22);
  background: rgba(116, 78, 192, .07);
}

.rwprep-camp-selected > span {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  border-radius: 12px;
  color: #b99bf5;
  background: rgba(139, 96, 224, .12);
  font-size: 22px;
}

.rwprep-result-mini {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin-top: 9px;
}

.rwprep-result-mini span {
  padding: 8px;
  border: 1px solid rgba(95, 148, 170, .13);
  border-radius: 8px;
  color: #6f8796;
  background: rgba(255,255,255,.018);
  font-size: 8px;
  text-align: center;
}

.rwprep-result-mini b {
  display: block;
  margin-top: 2px;
  color: #dce8ee;
  font-size: 12px;
}

.rwprep-danger-btn {
  width: 100%;
  margin-top: 10px;
  padding: 9px;
  border: 1px solid rgba(225, 87, 102, .25);
  border-radius: 9px;
  color: #e98e98;
  background: rgba(151, 42, 54, .07);
  font: 800 9px Inter, sans-serif;
  cursor: pointer;
}

.rwprep-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, .58fr);
  gap: 12px;
  margin-top: 12px;
}

.rwprep-upcoming { padding: 15px; }

.rwprep-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.rwprep-section-title h3 {
  margin: 2px 0 0;
  color: #e8f2f7;
  font: 800 17px Rajdhani, sans-serif;
}

.rwprep-section-title > span {
  color: #617989;
  font-size: 9px;
}

.rwprep-upcoming-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.rwprep-upcoming-item {
  display: grid;
  grid-template-columns: 45px 30px 1fr 10px;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 49px;
  padding: 7px 9px;
  border: 1px solid rgba(91, 145, 167, .13);
  border-radius: 9px;
  color: #dce8ee;
  background: rgba(255,255,255,.018);
  text-align: left;
  cursor: pointer;
}

.rwprep-upcoming-item:hover { border-color: rgba(67, 203, 210, .28); }
.rwprep-upcoming-date { color: #55cdd2; font-size: 8px; font-weight: 900; text-transform: uppercase; }
.rwprep-upcoming-logo { width: 25px !important; height: 25px !important; object-fit: contain; }
.rwprep-upcoming-item > span:nth-child(3) { min-width: 0; }
.rwprep-upcoming-item b,
.rwprep-upcoming-item small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.rwprep-upcoming-item b { font-size: 9.5px; }
.rwprep-upcoming-item small { margin-top: 2px; color: #6e8594; font-size: 8px; }
.rwprep-upcoming-item i { color: #607886; font-style: normal; }

.rwprep-upcoming-empty {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 56px;
  padding: 8px 10px;
  border: 1px dashed rgba(91, 145, 167, .17);
  border-radius: 9px;
  color: #6b8493;
}
.rwprep-upcoming-empty > span { font-size: 18px; }
.rwprep-upcoming-empty b,
.rwprep-upcoming-empty small { display: block; }
.rwprep-upcoming-empty b { color: #a9bac5; font-size: 9.5px; }
.rwprep-upcoming-empty small { margin-top: 2px; font-size: 8px; }

.rwprep-philosophy {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  border-color: rgba(207, 168, 79, .19);
  background:
    radial-gradient(160px 100px at 0 100%, rgba(215, 163, 51, .09), transparent 80%),
    rgba(15, 19, 23, .72);
}

.rwprep-philosophy > span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border: 1px solid rgba(218, 175, 76, .25);
  border-radius: 50%;
  color: #d9b058;
  background: rgba(190, 137, 28, .08);
  font: italic 800 17px Georgia, serif;
}

.rwprep-philosophy small { color: #c59b45; font-size: 8.5px; font-weight: 900; letter-spacing: .08em; }
.rwprep-philosophy p { margin: 4px 0 0; color: #7b8d99; font-size: 9.5px; line-height: 1.45; }

.rwprep-modal-root {
  position: fixed;
  z-index: 100003;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 18px;
  background: rgba(2, 7, 11, .78);
  backdrop-filter: blur(7px);
}

.rwprep-modal {
  width: min(590px, 96vw);
  max-height: min(92vh, 860px);
  overflow: auto;
  border: 1px solid rgba(86, 181, 192, .27);
  border-radius: 18px;
  color: #e8f2f7;
  background:
    radial-gradient(440px 220px at 0 0, rgba(42, 189, 198, .1), transparent 70%),
    linear-gradient(160deg, #0d1b26, #081019 70%);
  box-shadow: 0 38px 100px -34px #000;
}

.rwprep-modal.is-wide { width: min(920px, 96vw); }

.rwprep-modal-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 22px 17px;
  border-bottom: 1px solid rgba(93, 153, 174, .15);
}

.rwprep-modal-head h2 {
  margin: 3px 0 0;
  color: #f2f8fb;
  font: 800 28px Rajdhani, sans-serif;
  text-transform: capitalize;
}

.rwprep-modal-head p {
  max-width: 680px;
  margin: 4px 0 0;
  color: #7e96a6;
  font-size: 10px;
  line-height: 1.45;
}

.rwprep-modal-head > button {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border: 1px solid rgba(101, 151, 173, .2);
  border-radius: 9px;
  color: #8da3b1;
  background: rgba(255,255,255,.025);
  font-size: 20px;
  cursor: pointer;
}

.rwprep-modal-body {
  display: grid;
  gap: 19px;
  padding: 18px 22px;
}

.rwprep-step {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 9px;
}

.rwprep-step > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  border: 1px solid rgba(66, 208, 214, .34);
  border-radius: 7px;
  color: #50d2d7;
  background: rgba(48, 193, 199, .08);
  font: 800 10px Inter, sans-serif;
}

.rwprep-step.is-camp > span {
  color: #b59af1;
  border-color: rgba(170, 137, 235, .34);
  background: rgba(139, 97, 218, .08);
}

.rwprep-step b,
.rwprep-step small { display: block; }
.rwprep-step b { color: #dfeaf0; font-size: 10px; }
.rwprep-step small { margin-top: 2px; color: #6c8594; font-size: 8.5px; }

.rwprep-partners {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.rwprep-partner {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 70px;
  padding: 9px;
  border: 1px solid rgba(89, 143, 166, .15);
  border-radius: 10px;
  color: #dce8ee;
  background: rgba(255,255,255,.018);
  text-align: left;
  cursor: pointer;
}

.rwprep-partner.is-selected {
  border-color: #3ac9cf;
  background: linear-gradient(120deg, rgba(40, 180, 188, .13), rgba(15, 44, 54, .22));
  box-shadow: inset 0 0 0 1px rgba(58, 201, 207, .2);
}

.rwprep-partner-logo {
  width: 36px !important;
  height: 36px !important;
  object-fit: contain;
}

.rwprep-partner > span { min-width: 0; }
.rwprep-partner b,
.rwprep-partner small,
.rwprep-partner em { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.rwprep-partner b { font-size: 10px; }
.rwprep-partner small { margin-top: 2px; color: #6d8696; font-size: 8px; }
.rwprep-partner em { margin-top: 3px; color: #8fa3af; font-size: 7.5px; font-style: normal; }
.rwprep-partner > i { align-self: start; color: #568797; font-size: 7px; font-style: normal; font-weight: 900; }

.rwprep-focus-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
}

.rwprep-focus {
  min-height: 78px;
  padding: 8px 6px;
  border: 1px solid rgba(89, 143, 166, .14);
  border-radius: 9px;
  color: #bdcad2;
  background: rgba(255,255,255,.015);
  text-align: center;
  cursor: pointer;
}

.rwprep-focus.is-selected {
  border-color: rgba(58, 201, 207, .64);
  color: #f0fbfc;
  background: rgba(42, 175, 182, .1);
}

.rwprep-focus span,
.rwprep-focus b,
.rwprep-focus small { display: block; }
.rwprep-focus span { color: #54d3d7; font-size: 17px; }
.rwprep-focus b { margin-top: 3px; font-size: 8.5px; }
.rwprep-focus small { display: -webkit-box; margin-top: 3px; overflow: hidden; color: #617988; font-size: 7px; line-height: 1.25; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

.rwprep-roster-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.rwprep-roster-options button {
  display: grid;
  grid-template-columns: 29px 1fr;
  column-gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(89, 143, 166, .15);
  border-radius: 9px;
  color: #bdcad2;
  background: rgba(255,255,255,.016);
  text-align: left;
  cursor: pointer;
}

.rwprep-roster-options button.is-selected {
  border-color: rgba(58, 201, 207, .55);
  background: rgba(42, 175, 182, .09);
}

.rwprep-roster-options span {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border-radius: 8px;
  color: #4fd0d4;
  background: rgba(44, 188, 194, .09);
}
.rwprep-roster-options b { font-size: 9px; }
.rwprep-roster-options small { color: #677f8e; font-size: 7.5px; }

.rwprep-modal-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 22px;
  border-top: 1px solid rgba(93, 153, 174, .15);
  background: rgba(4, 11, 17, .35);
}

.rwprep-modal-footer > div {
  display: flex;
  align-items: center;
  gap: 9px;
}
.rwprep-modal-footer small { display: block; color: #66808f; font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.rwprep-modal-footer b { display: block; margin-top: 2px; color: #dbe8ee; font-size: 10px; }
.rwprep-footer-logo { width: 29px !important; height: 29px !important; object-fit: contain; }

.rwprep-confirm-btn {
  min-height: 39px;
  padding: 0 18px;
  border: 0;
  border-radius: 9px;
  color: #041013;
  background: linear-gradient(135deg, #54dbe0, #29aeb7);
  box-shadow: 0 10px 22px -14px rgba(70, 215, 222, .7);
  font: 900 9px Inter, sans-serif;
  cursor: pointer;
}
.rwprep-confirm-btn span { margin-left: 10px; }
.rwprep-confirm-btn:disabled { opacity: .42; cursor: default; }
.rwprep-confirm-btn.is-camp {
  color: #120b22;
  background: linear-gradient(135deg, #bea3f6, #8a63d9);
  box-shadow: 0 10px 22px -14px rgba(166, 128, 234, .7);
}

.rwprep-destinations {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.rwprep-destination {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 8px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(112, 91, 164, .25);
  border-radius: 10px;
  color: #d8ccef;
  background: rgba(118, 80, 194, .045);
  text-align: left;
  cursor: pointer;
}

.rwprep-destination.is-selected {
  border-color: #a887eb;
  background: rgba(135, 93, 218, .12);
  box-shadow: inset 0 0 0 1px rgba(168, 135, 235, .16);
}
.rwprep-destination:disabled { opacity: .38; cursor: default; }
.rwprep-destination-flag { grid-row: 1 / span 2; font-size: 24px; }
.rwprep-destination > span:nth-child(2) { min-width: 0; }
.rwprep-destination b,
.rwprep-destination small,
.rwprep-destination em { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.rwprep-destination b { font-size: 9px; }
.rwprep-destination small { margin-top: 2px; color: #75688d; font-size: 7.5px; }
.rwprep-destination em { margin-top: 3px; color: #9986bb; font-size: 7px; font-style: normal; }
.rwprep-destination strong { grid-column: 2; color: #bba4e7; font-size: 9px; }

.rwprep-camp-focus-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.rwprep-camp-focus {
  display: grid;
  grid-template-columns: 34px 1fr;
  align-items: center;
  gap: 8px;
  padding: 9px;
  border: 1px solid rgba(112, 91, 164, .2);
  border-radius: 9px;
  color: #cfc2e8;
  background: rgba(118, 80, 194, .035);
  text-align: left;
  cursor: pointer;
}
.rwprep-camp-focus.is-selected { border-color: rgba(167, 133, 235, .67); background: rgba(135, 93, 218, .1); }
.rwprep-camp-focus > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 8px; background: rgba(134, 92, 217, .1); font-size: 17px; }
.rwprep-camp-focus b,
.rwprep-camp-focus small { display: block; }
.rwprep-camp-focus b { font-size: 8.5px; }
.rwprep-camp-focus small { margin-top: 2px; color: #756a89; font-size: 7px; line-height: 1.25; }

.rwprep-cash { display: block !important; }
.rwprep-cash span { display: block; color: #6e6087; font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.rwprep-cash b { color: #d1bfef; font: 800 15px Rajdhani, sans-serif; }

.rwprep-logo-fallback {
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: #60d3d8;
  background: rgba(55, 192, 198, .1);
  font: 800 10px Rajdhani, sans-serif;
}

@media (max-width: 1180px) {
  .rwprep-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rwprep-workspace,
  .rwprep-bottom { grid-template-columns: minmax(0, 1fr) 310px; }
  .rwprep-day { min-height: 70px; }
  .rwprep-focus-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  #prep-v2-screen.prep-v2-screen { overflow: auto; }
  .rwprep-shell { padding: 16px; }
  .rwprep-workspace,
  .rwprep-bottom { grid-template-columns: 1fr; }
  .rwprep-inspector { min-height: 0; }
  .rwprep-day { min-height: 66px; padding: 5px; }
  .rwprep-day-event { padding: 4px; }
  .rwprep-day-event small { display: none; }
  .rwprep-upcoming-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .rwprep-topbar { align-items: flex-start; }
  .rwprep-title p { display: none; }
  .rwprep-team-mark { width: 46px; height: 46px; flex-basis: 46px; }
  .rwprep-team-mark img { width: 34px; height: 34px; }
  .rwprep-top-actions button:first-child { display: none; }
  .rwprep-top-actions .is-dashboard { padding: 0 10px; font-size: 9px; }
  .rwprep-summary { grid-template-columns: 1fr 1fr; }
  .rwprep-summary-card { min-height: 62px; padding: 9px; }
  .rwprep-summary-card.is-next { grid-column: 1 / -1; }
  .rwprep-summary-icon,
  .rwprep-stat-icon { width: 36px; height: 36px; flex-basis: 36px; margin-right: 8px; }
  .rwprep-calendar-card { padding: 10px; }
  .rwprep-calendar-head { align-items: flex-end; }
  .rwprep-calendar-head h2 { font-size: 21px; }
  .rwprep-month-nav { grid-template-columns: 30px 96px 30px; }
  .rwprep-month-nav span { padding: 0 5px; font-size: 9px; }
  .rwprep-day { min-height: 48px; }
  .rwprep-day-event { position: absolute; right: 5px; bottom: 5px; width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; }
  .rwprep-day-event > * { display: none !important; }
  .rwprep-day.has-match .rwprep-day-event { background: #d9aa4f; }
  .rwprep-day.has-scrim .rwprep-day-event { background: #43cdcf; }
  .rwprep-day.has-camp .rwprep-day-event { background: #9d78e8; }
  .rwprep-legend { gap: 9px; }
  .rwprep-upcoming-list { grid-template-columns: 1fr; }
  .rwprep-partners,
  .rwprep-roster-options,
  .rwprep-camp-focus-grid { grid-template-columns: 1fr; }
  .rwprep-focus-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rwprep-destinations { grid-template-columns: 1fr 1fr; }
  .rwprep-modal-footer { align-items: stretch; flex-direction: column; }
  .rwprep-confirm-btn { width: 100%; }
}
