
:root {
  --cloud-primary: #1f3b5c;
  --cloud-primary-dark: #142437;
  --cloud-primary-soft: #294966;
  --cloud-accent: #2da56a;
  --cloud-accent-soft: #37b877;
  --cloud-dark: #102033;
  --cloud-muted: #6b7788;
  --cloud-page-bg: #eef2f7;
  --cloud-card: #ffffff;
  --cloud-border: #dce4ef;
  --cloud-field-bg: #f8fbff;
  --cloud-field-border: #d6dfeb;
}

.cloud-login-body {
  min-height: 100vh;
  background:
    radial-gradient(circle at top left, rgba(74, 116, 164, 0.24), transparent 34%),
    radial-gradient(circle at bottom right, rgba(41, 73, 102, 0.28), transparent 36%),
    linear-gradient(135deg, #16273c 0%, #0d1a2a 100%);
  font-family: "Roboto Condensed", "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

.cloud-page-body {
  min-height: 100vh;
  background: var(--cloud-page-bg);
  color: #263241;
  font-family: "Roboto Condensed", "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

.cloud-shell {
  width: calc(100% - 32px);
  margin: 18px auto 0;
}

.cloud-login-wrap {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.cloud-login-card {
  width: 100%;
  max-width: 470px;
  background: rgba(255, 255, 255, 0.97);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 24px;
  box-shadow: 0 24px 58px rgba(6, 17, 30, .30);
  backdrop-filter: blur(10px);
  padding: 28px 30px 24px;
}

.cloud-login-card-wide {
  max-width: 620px;
}

.cloud-login-brand {
  text-align: center;
  margin-bottom: 22px;
}

.cloud-login-icon {
  width: 62px;
  height: 62px;
  border-radius: 20px;
  background: linear-gradient(135deg, var(--cloud-primary), #238d8d);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  margin-bottom: 14px;
  box-shadow: 0 16px 35px rgba(31, 59, 92, .28);
}

.cloud-login-brand h1 {
  font-size: clamp(1.24rem, 3vw, 1.9rem);
  font-weight: 300;
  color: var(--cloud-primary-dark);
  margin: 0;
  white-space: nowrap;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

.cloud-login-brand p,
.cloud-login-foot {
  color: #728196;
  margin: 10px 0 0;
  font-weight: 400;
}

.cloud-login-brand p {
  font-size: 1rem;
}

.cloud-login-card .form-label,
.cloud-card .form-label {
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  font-weight: 400;
  margin-bottom: 8px;
}

.cloud-login-card .form-control,
.cloud-card .form-control,
.cloud-card .form-select {
  background: var(--cloud-field-bg);
  border: 1px solid var(--cloud-field-border);
  border-radius: 12px;
  min-height: 44px;
  font-size: 1rem;
  padding: 0.62rem 0.85rem;
  color: var(--cloud-primary-dark);
  box-shadow: none;
}

.cloud-login-card .form-control:focus,
.cloud-card .form-control:focus,
.cloud-card .form-select:focus {
  background: #fff;
  border-color: rgba(31, 59, 92, .65);
  box-shadow: 0 0 0 .24rem rgba(31, 59, 92, .12);
}

.cloud-login-card .btn-primary,
.cloud-card .btn-primary,
.cloud-navbar .btn-primary {
  min-height: 46px;
  border-radius: 12px;
  border: none;
  background: linear-gradient(135deg, var(--cloud-primary), var(--cloud-primary-soft));
  font-weight: 500;
  font-size: 1.08rem;
  letter-spacing: -0.01em;
  box-shadow: 0 14px 24px rgba(31, 59, 92, .20);
}

.cloud-login-card .btn-primary:hover,
.cloud-login-card .btn-primary:focus,
.cloud-login-card .btn-primary:active,
.cloud-card .btn-primary:hover,
.cloud-card .btn-primary:focus,
.cloud-card .btn-primary:active,
.cloud-navbar .btn-primary:hover,
.cloud-navbar .btn-primary:focus,
.cloud-navbar .btn-primary:active {
  background: linear-gradient(135deg, #1b3552, #23415f) !important;
  box-shadow: 0 18px 32px rgba(31, 59, 92, .28);
}

.cloud-login-card .alert,
.cloud-card .alert {
  border-radius: 14px;
}

.cloud-login-foot {
  font-size: 12px;
  text-align: center;
  margin-top: 18px;
}

.cloud-navbar {
  min-height: 84px;
  background: linear-gradient(135deg, #142437, #223a57);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 26px;
  border-radius: 20px;
  box-shadow: 0 14px 32px rgba(0, 28, 80, 0.16);
}

.cloud-navbar-brand {
  min-width: 0;
}

.cloud-navbar-title {
  font-size: clamp(1.55rem, 2.2vw, 2.05rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.03em;
  white-space: nowrap;
}

.cloud-navbar-sub {
  opacity: .88;
  font-size: 1rem;
  font-weight: 400;
  margin-top: 5px;
}

.cloud-navbar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cloud-navbar-info {
  text-align: right;
  color: #fff;
  line-height: 1.08;
  margin-right: 8px;
}

.cloud-navbar-info-title {
  font-size: 1.15rem;
  font-weight: 600;
}

.cloud-navbar-info-sub {
  font-size: 0.95rem;
  opacity: .82;
}

.cloud-navbar .btn {
  border-radius: 10px;
  padding: 0.58rem 1rem;
  font-size: 1rem;
  min-height: 46px;
}

.cloud-navbar .btn-outline-light {
  border-color: rgba(255, 255, 255, .75);
  color: #fff;
}

.cloud-navbar .btn-outline-light:hover,
.cloud-navbar .btn-outline-light:focus {
  background: rgba(255, 255, 255, .12);
  color: #fff;
  border-color: #fff;
}

.cloud-container {
  width: 100%;
  margin: 20px auto 28px;
}

.cloud-container-narrow {
  max-width: 880px;
}

.cloud-card {
  background: var(--cloud-card);
  border-radius: 20px;
  padding: 24px;
  border: 1px solid var(--cloud-border);
  box-shadow: 0 10px 26px rgba(16, 35, 62, .08);
}

.cloud-page-title {
  font-size: 2rem;
  font-weight: 600;
  color: var(--cloud-dark);
  margin: 0;
  letter-spacing: -0.03em;
}

.cloud-page-subtitle {
  margin: 6px 0 0;
  color: var(--cloud-muted);
  font-size: 1rem;
}

.cloud-empty {
  text-align: center;
  padding: 48px 18px;
  color: var(--cloud-muted);
}

.cloud-empty i {
  font-size: 54px;
  color: #9aa9ba;
  margin-bottom: 14px;
}

.cloud-empty h2 {
  font-size: 22px;
  color: var(--cloud-dark);
  font-weight: 600;
}

.cloud-table {
  margin-top: 10px;
}

.cloud-table th {
  color: #536172;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-weight: 600;
  border-bottom-color: #d5dfeb;
  white-space: nowrap;
}

.cloud-table td {
  border-bottom-color: #e5ebf3;
  padding-top: 16px;
  padding-bottom: 16px;
  vertical-align: middle;
}

.cloud-table .badge {
  border-radius: 10px;
  font-weight: 600;
  letter-spacing: 0;
  padding: .45em .7em;
}

.cloud-torneios-card {
  padding: 28px 34px;
}

.cloud-exec-cell {
  min-width: 270px;
}

.cloud-progress-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.cloud-progress-meta strong {
  color: var(--cloud-primary-dark);
  font-size: 1.08rem;
  min-width: 44px;
}

.cloud-progress-meta span {
  color: var(--cloud-muted);
  font-size: .95rem;
  text-align: right;
}

.cloud-progress-track {
  position: relative;
  height: 11px;
  border-radius: 999px;
  background: #e9eff7;
  border: 1px solid #d6e0ed;
  overflow: hidden;
  margin-bottom: 8px;
}

.cloud-progress-bar {
  height: 100%;
  width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cloud-accent), var(--cloud-accent-soft));
}

.cloud-app-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.cloud-app-info {
  line-height: 1.15;
  color: #fff;
  margin-right: 8px;
}

.cloud-app-torneio {
  font-weight: 800;
  font-size: 14px;
}

.cloud-app-user,
.cloud-app-status {
  opacity: .8;
  font-size: 12px;
}

.cloud-app-status[data-status="salvo"] {
  color: #9dffbf;
}

.cloud-app-status[data-status="pendente"],
.cloud-app-status[data-status="salvando"] {
  color: #ffe083;
}

.cloud-app-status[data-status="erro"] {
  color: #ffb4b4;
  font-weight: 700;
}

.cloud-flash-app {
  margin: 0 0 16px;
}

@media (max-width: 1200px) {
  .cloud-exec-cell {
    min-width: 230px;
  }
}

@media (max-width: 992px) {
  .cloud-shell {
    width: calc(100% - 20px);
    margin-top: 10px;
  }

  .cloud-navbar {
    align-items: flex-start;
    flex-direction: column;
    padding: 18px 18px;
  }

  .cloud-navbar-title {
    white-space: normal;
  }

  .cloud-navbar-actions {
    width: 100%;
    flex-wrap: wrap;
  }

  .cloud-navbar-info {
    width: 100%;
    text-align: left;
    margin-right: 0;
  }
}

@media (max-width: 768px) {
  .cloud-login-wrap {
    padding: 18px;
  }

  .cloud-login-card {
    max-width: 100%;
    padding: 24px 18px 20px;
    border-radius: 22px;
  }

  .cloud-login-icon {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    margin-bottom: 14px;
  }

  .cloud-login-brand h1 {
    font-size: clamp(1.02rem, 5vw, 1.28rem);
  }

  .cloud-login-brand p {
    font-size: 0.92rem;
  }

  .cloud-navbar-actions .btn {
    flex: 1 1 calc(50% - 8px);
  }

  .cloud-container {
    margin-top: 14px;
  }

  .cloud-card,
  .cloud-torneios-card {
    padding: 18px;
    border-radius: 18px;
  }

  .cloud-page-title {
    font-size: 1.75rem;
  }

  .cloud-page-subtitle {
    font-size: 1rem;
  }

  .cloud-progress-meta {
    flex-direction: column;
    align-items: flex-start;
  }

  .cloud-progress-meta span {
    text-align: left;
  }
}


.cloud-status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 76px;
  padding: .42rem .7rem;
  border-radius: 999px;
  color: #fff;
  font-size: .84rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

.cloud-status-open {
  background: linear-gradient(135deg, #1f6feb, #2f7bf2);
}

.cloud-status-running {
  background: linear-gradient(135deg, #2da56a, #37b877);
}

.cloud-status-closed {
  background: linear-gradient(135deg, #6b7280, #4b5563);
}

.cloud-status-archived {
  background: linear-gradient(135deg, #8b5cf6, #6d28d9);
}

.cloud-actions-stack {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.cloud-readonly-alert {
  border-radius: 16px;
  border-color: #f3d58d;
}

.cloud-readonly #btnZerarTudo,
.cloud-readonly [data-zerar-tudo-mobile],
.cloud-readonly [data-zerar-categoria] {
  display: none !important;
}

.cloud-readonly .head-actions button,
.cloud-readonly .agenda-toolbar button,
.cloud-readonly .agenda-mobile-card button:not(.agenda-mobile-tab) {
  opacity: .55;
}

.cloud-app-status[data-status="bloqueado"] {
  color: #ffe083;
  font-weight: 700;
}


.cloud-modal .modal-content {
  border: 0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 26px 70px rgba(16, 35, 62, .28);
}

.cloud-modal .modal-header {
  background: linear-gradient(135deg, #142437, #223a57);
  color: #fff;
  border-bottom: 0;
  padding: 18px 22px;
}

.cloud-modal .modal-title {
  font-size: 1.35rem;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.cloud-modal .modal-body {
  padding: 22px 22px 14px;
  color: var(--cloud-dark);
  font-size: 1.02rem;
}

.cloud-modal .modal-footer {
  border-top: 1px solid #e5ebf3;
  padding: 14px 22px 18px;
}

.cloud-modal .btn {
  border-radius: 11px;
  min-height: 42px;
  padding-left: 18px;
  padding-right: 18px;
  font-weight: 500;
}

.cloud-modal .btn-warning {
  color: #1b2430;
  background: linear-gradient(135deg, #ffc247, #f59f00);
  border: none;
  box-shadow: 0 12px 22px rgba(245, 159, 0, .22);
}

.cloud-modal-progress-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin: 16px 0;
}

.cloud-modal-progress-box > div {
  border: 1px solid var(--cloud-border);
  background: #f8fbff;
  border-radius: 14px;
  padding: 14px;
}

.cloud-modal-progress-box strong {
  display: block;
  font-size: 1.55rem;
  line-height: 1;
  color: var(--cloud-primary-dark);
}

.cloud-modal-progress-box span {
  display: block;
  margin-top: 6px;
  color: var(--cloud-muted);
  font-size: .94rem;
}

/* Cloud v1.09 - configuração de categorias */
.cloud-container-wide {
  max-width: 1320px;
}

.cloud-section-title {
  color: var(--cloud-dark);
  font-size: 1.45rem;
  font-weight: 600;
  margin: 0;
  letter-spacing: -0.02em;
}

.cloud-help-pill {
  color: var(--cloud-primary-dark);
  background: #f4f8fc;
  border: 1px solid var(--cloud-border);
  border-radius: 999px;
  padding: 8px 12px;
  font-size: .95rem;
}

.cloud-category-config-wrap {
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  overflow: auto;
  background: #fff;
}

.cloud-category-config-table {
  margin: 0;
  min-width: 980px;
}

.cloud-category-config-table th {
  color: #536172;
  background: #f8fbff;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-weight: 600;
  border-bottom: 1px solid var(--cloud-border);
  white-space: nowrap;
}

.cloud-category-config-table td {
  border-bottom: 1px solid #edf2f7;
}

.cloud-category-config-table tbody tr:last-child td {
  border-bottom: none;
}

.cloud-category-config-table .form-control-sm,
.cloud-category-config-table .form-select-sm {
  min-height: 36px;
  border-radius: 10px;
}

.cloud-category-check {
  width: 1.15rem;
  height: 1.15rem;
}

.cloud-form-note {
  color: var(--cloud-muted);
  background: #f8fbff;
  border: 1px solid var(--cloud-border);
  border-radius: 14px;
  padding: 12px 14px;
}

/* Cloud v1.10 - cadastro de categorias uma a uma */
.cloud-category-builder {
  border: 1px solid var(--cloud-border);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
}

.cloud-category-builder-form {
  background: linear-gradient(180deg, #f8fbff, #ffffff);
  padding: 18px;
  border-bottom: 1px solid var(--cloud-border);
}

.cloud-category-list-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 0 18px;
}

.cloud-category-list-head h3 {
  color: var(--cloud-dark);
  font-size: 1.24rem;
  font-weight: 600;
  margin: 0;
  letter-spacing: -0.02em;
}

.cloud-category-list-head p {
  color: var(--cloud-muted);
  margin: 4px 0 0;
  font-size: .98rem;
}

.cloud-category-count {
  color: var(--cloud-primary-dark);
  background: #f4f8fc;
  border: 1px solid var(--cloud-border);
  border-radius: 999px;
  padding: 7px 12px;
  white-space: nowrap;
  font-size: .92rem;
  font-weight: 500;
}

.cloud-category-empty {
  margin: 14px 18px 18px;
  border: 1px dashed #c9d7e8;
  background: #f8fbff;
  border-radius: 16px;
  padding: 22px;
  color: var(--cloud-muted);
  text-align: center;
}

.cloud-category-empty i {
  display: block;
  color: #9aa9ba;
  font-size: 2rem;
  margin-bottom: 8px;
}

.cloud-category-empty strong {
  display: block;
  color: var(--cloud-dark);
  font-size: 1.1rem;
  font-weight: 600;
}

.cloud-category-empty span {
  display: block;
  margin-top: 4px;
}

.cloud-category-list {
  display: grid;
  gap: 12px;
  padding: 14px 18px 18px;
}

.cloud-category-item {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px solid var(--cloud-border);
  background: #fdfefe;
  border-radius: 16px;
  padding: 14px;
  box-shadow: 0 8px 18px rgba(16, 35, 62, .05);
}

.cloud-category-order {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: linear-gradient(135deg, #142437, #223a57);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.1rem;
}

.cloud-category-main strong {
  display: block;
  color: var(--cloud-dark);
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 8px;
}

.cloud-category-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cloud-category-tags span {
  display: inline-flex;
  align-items: center;
  border: 1px solid #dbe6f3;
  background: #f4f8fc;
  color: #40536b;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: .9rem;
  line-height: 1;
}

.cloud-category-actions {
  display: inline-flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.cloud-category-actions .btn {
  border-radius: 10px;
}

.cloud-modal .btn-danger {
  color: #fff;
  background: linear-gradient(135deg, #dc3545, #b42332);
  border: none;
  box-shadow: 0 12px 22px rgba(220, 53, 69, .20);
}

@media (max-width: 768px) {
  .cloud-category-list-head {
    flex-direction: column;
  }

  .cloud-category-item {
    grid-template-columns: 46px minmax(0, 1fr);
  }

  .cloud-category-actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }

  .cloud-category-actions .btn {
    flex: 1 1 auto;
  }
}

.cloud-system-check-box {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 16px;
  align-items: flex-start;
}

.cloud-system-check-icon {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.45rem;
  box-shadow: 0 14px 26px rgba(16, 35, 62, .14);
}

.cloud-system-check-icon.ok {
  background: linear-gradient(135deg, #2da56a, #37b877);
}

.cloud-system-check-icon.erro {
  background: linear-gradient(135deg, #dc3545, #b42332);
}

.cloud-system-check-detail {
  margin-top: 12px;
  border: 1px solid #f0d0d4;
  background: #fff7f8;
  color: #8a1f2d;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: .94rem;
}

/* Cloud v1.20 - premiação e planejamento inteligente */
.cloud-planner-box {
  border: 1px solid #dbe6f3;
  background: linear-gradient(180deg, #f8fbff, #ffffff);
  border-radius: 18px;
  padding: 16px 18px;
}

.cloud-planner-box strong {
  color: var(--cloud-dark);
  font-size: 1.1rem;
  font-weight: 600;
}

.cloud-planner-box p {
  color: var(--cloud-muted);
  margin: 4px 0 12px;
}

.cloud-planner-tip {
  border: 1px solid #dbe6f3;
  background: #fff;
  border-radius: 14px;
  padding: 12px 14px;
  color: #40536b;
  min-height: 44px;
  display: flex;
  align-items: center;
}

.cloud-smart-summary {
  border: 1px solid #dbe6f3;
  background: #f8fbff;
  border-radius: 18px;
  padding: 16px;
}

.cloud-smart-summary h3 {
  color: var(--cloud-dark);
  font-size: 1.12rem;
  font-weight: 600;
  margin: 0 0 12px;
}

.cloud-smart-empty {
  color: var(--cloud-muted);
}

.cloud-smart-group {
  border: 1px solid #dbe6f3;
  border-radius: 16px;
  background: #fff;
  padding: 12px;
  margin-top: 10px;
}

.cloud-smart-group.ok {
  border-color: #bfe5cf;
  background: #fbfffd;
}

.cloud-smart-group.alerta {
  border-color: #f1d78a;
  background: #fffdf3;
}

.cloud-smart-head,
.cloud-smart-line {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.cloud-smart-head strong {
  color: var(--cloud-primary-dark);
  font-size: 1.08rem;
}

.cloud-smart-head span,
.cloud-smart-line span,
.cloud-smart-group p {
  color: var(--cloud-muted);
}

.cloud-smart-group p {
  margin: 6px 0 10px;
}

.cloud-smart-line {
  border-top: 1px solid #edf2f8;
  padding-top: 8px;
  margin-top: 8px;
}

.cloud-smart-line strong {
  color: var(--cloud-dark);
}


/* Cloud v1.27 - categorias incluídas em tabela */
.cloud-category-list {
  display: block;
  padding: 14px 18px 18px;
}

.cloud-category-list-table {
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
}

.cloud-category-list-table table {
  min-width: 1060px;
}

.cloud-category-list-table th {
  color: #536172;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-weight: 600;
  background: #f7fafe;
  border-bottom-color: #d5dfeb;
  white-space: nowrap;
}

.cloud-category-list-table td {
  border-bottom-color: #e5ebf3;
  vertical-align: middle;
  padding-top: 12px;
  padding-bottom: 12px;
}

.cloud-category-list-table tbody tr:last-child td {
  border-bottom: 0;
}

.cloud-cat-table-ordem {
  width: 72px;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  text-align: center;
}

.cloud-cat-table-categoria {
  min-width: 180px;
}

.cloud-cat-table-categoria strong {
  color: var(--cloud-dark);
}

.cloud-cat-table-premiacao {
  min-width: 220px;
}

.cloud-cat-table-acoes {
  white-space: nowrap;
  min-width: 170px;
}

.cloud-cat-table-acoes .btn + .btn {
  margin-left: 6px;
}

.cloud-category-mobile-list {
  display: none;
}

.cloud-category-mobile-item {
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  box-shadow: 0 8px 18px rgba(16, 35, 62, .05);
}

.cloud-category-mobile-head {
  display: flex;
  align-items: center;
  gap: 12px;
}

.cloud-category-mobile-head strong,
.cloud-category-mobile-head small {
  display: block;
}

.cloud-category-mobile-head strong {
  color: var(--cloud-dark);
  font-size: 1.08rem;
}

.cloud-category-mobile-head small {
  color: var(--cloud-muted);
  margin-top: 2px;
}

.cloud-category-mobile-details {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.cloud-category-mobile-details span {
  display: inline-flex;
  border: 1px solid #dbe6f3;
  background: #f4f8fc;
  color: #40536b;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: .9rem;
  line-height: 1;
}

.cloud-category-mobile-wide {
  width: 100%;
  border-radius: 12px !important;
  line-height: 1.25 !important;
}

@media (max-width: 900px) {
  .cloud-category-list-table {
    display: none;
  }

  .cloud-category-mobile-list {
    display: grid;
    gap: 12px;
  }
}


/* Cloud v1.29 - ordem das categorias por arrastar e soltar no novo torneio */
.cloud-cat-table-drag-head {
  width: 42px;
}

.cloud-cat-table-drag {
  width: 42px;
  text-align: center;
}

.cloud-drag-handle {
  width: 34px;
  height: 34px;
  border: 1px solid var(--cloud-border);
  border-radius: 10px;
  background: #f7fafe;
  color: var(--cloud-muted);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  padding: 0;
}

.cloud-drag-handle:hover {
  background: #eef4fb;
  color: var(--cloud-primary-dark);
}

.cloud-drag-handle:active {
  cursor: grabbing;
}

.cloud-category-list-table tbody tr.dragging,
.cloud-category-mobile-item.dragging {
  opacity: .55;
}

.cloud-category-list-table tbody tr.drag-over td {
  background: #f4f8fc;
}

.cloud-category-mobile-item.drag-over {
  border-color: #8fb3d9;
  background: #f7fbff;
}

.cloud-category-mobile-head {
  align-items: flex-start;
}

.cloud-drag-handle-mobile {
  flex: 0 0 auto;
}

@media (max-width: 900px) {
  .cloud-category-mobile-head {
    gap: 10px;
  }
}

/* Cloud v1.31 - ações dos torneios com tamanho uniforme */
.cloud-actions-stack {
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.cloud-actions-stack .btn {
  min-width: 104px;
  justify-content: center;
  display: inline-flex;
  align-items: center;
}

.cloud-actions-stack form {
  margin: 0;
}

@media (max-width: 768px) {
  .cloud-actions-stack {
    width: 100%;
    justify-content: flex-start;
  }

  .cloud-actions-stack .btn {
    min-width: 112px;
  }
}


/* Cloud v1.34 - meus torneios mobile e padronização de botões */
.cloud-action-btn {
  min-width: 102px;
  justify-content: center;
}
/* Cloud v1.152 - torneios compactos no tablet/celular */
.cloud-torneio-mobile-accordion {
  padding: 0;
  overflow: hidden;
}

.cloud-torneio-mobile-accordion summary {
  list-style: none;
}

.cloud-torneio-mobile-accordion summary::-webkit-details-marker {
  display: none;
}

.cloud-torneio-mobile-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 15px 16px;
  cursor: pointer;
}

.cloud-torneio-mobile-summary-main {
  min-width: 0;
}

.cloud-torneio-mobile-summary-main h3 {
  margin: 0;
  color: var(--cloud-dark);
  font-size: 1.12rem;
  font-weight: 700;
  line-height: 1.18;
}

.cloud-torneio-mobile-summary-main p {
  margin: 5px 0 0;
  color: var(--cloud-muted);
  font-size: .9rem;
  line-height: 1.3;
}

.cloud-torneio-mobile-summary-icon {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #edf4fb;
  color: #173a5c;
  border: 1px solid #d8e5f2;
  transition: transform .2s ease, background .2s ease;
}

.cloud-torneio-mobile-accordion[open] .cloud-torneio-mobile-summary {
  border-bottom: 1px solid #e5edf5;
  background: #f9fbff;
}

.cloud-torneio-mobile-accordion[open] .cloud-torneio-mobile-summary-icon {
  transform: rotate(180deg);
  background: #173a5c;
  color: #fff;
  border-color: #173a5c;
}

.cloud-torneio-mobile-body {
  padding: 14px;
}

.cloud-mobile-action-btn {
  width: 100%;
  min-height: 40px;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px;
  text-align: center;
  line-height: 1.1;
  background: #173a5c;
  border-color: #173a5c;
  color: #fff;
}

.cloud-mobile-action-btn i,
.cloud-mobile-action-btn span {
  display: inline-flex;
  align-items: center;
}

.cloud-mobile-action-btn:hover,
.cloud-mobile-action-btn:focus {
  background: #204a73;
  border-color: #204a73;
  color: #fff;
}

@media (max-width: 1199.98px) {
  .cloud-torneio-mobile-card {
    padding: 0;
  }

  .cloud-torneio-mobile-head {
    margin-bottom: 8px;
  }

  .cloud-torneio-mobile-head p {
    margin-top: 0;
  }

  .cloud-torneio-mobile-actions {
    grid-template-columns: 1fr;
  }

  .cloud-torneio-mobile-actions .cloud-status-form,
  .cloud-torneio-mobile-actions .btn,
  .cloud-torneio-mobile-actions .cloud-status-form button {
    width: 100%;
  }
}


.cloud-torneios-mobile {
  display: grid;
  gap: 14px;
}

.cloud-torneio-mobile-card {
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  background: #fbfdff;
  padding: 14px;
}

.cloud-torneio-mobile-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.cloud-torneio-mobile-head h3 {
  margin: 0;
  color: var(--cloud-dark);
  font-size: 1.18rem;
  font-weight: 600;
  line-height: 1.15;
}

.cloud-torneio-mobile-head p {
  margin: 4px 0 0;
  color: var(--cloud-muted);
  font-size: .88rem;
}

.cloud-torneio-mobile-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 10px;
}

.cloud-torneio-mobile-meta span {
  display: block;
  color: var(--cloud-muted);
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-torneio-mobile-meta strong {
  display: block;
  color: var(--cloud-dark);
  font-size: .96rem;
  line-height: 1.25;
  margin-top: 2px;
}

.cloud-torneio-mobile-foot {
  margin-top: 8px;
  font-size: .84rem;
}

.cloud-torneio-mobile-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 12px;
}

.cloud-torneio-mobile-actions .btn,
.cloud-torneio-mobile-actions .cloud-status-form,
.cloud-torneio-mobile-actions .cloud-status-form button {
  width: 100%;
}

.cloud-status-form-full {
  grid-column: 1 / -1;
}

@media (max-width: 768px) {
  .cloud-navbar-sub {
    display: none;
  }
}

@media (max-width: 575px) {
  .cloud-navbar-title {
    font-size: 1.05rem;
    white-space: normal;
  }

  .cloud-navbar-info-title {
    font-size: 1rem;
  }

  .cloud-page-title {
    font-size: 1.45rem;
  }

  .cloud-page-subtitle {
    font-size: .95rem;
  }

  .cloud-torneios-card > .d-flex {
    align-items: flex-start !important;
  }
}

/* Cloud v1.39 - Administração e cobranças */
.cloud-admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, .8fr);
  gap: 16px;
  align-items: stretch;
}

.cloud-admin-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cloud-admin-kpis > div {
  border: 1px solid var(--cloud-border);
  background: #f8fbff;
  border-radius: 14px;
  padding: 12px;
}

.cloud-admin-kpis strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: 1.3rem;
  line-height: 1.05;
}

.cloud-admin-kpis span {
  color: var(--cloud-muted);
  font-size: .9rem;
}

.cloud-payment-details {
  min-width: 260px;
}

.cloud-payment-details summary {
  color: var(--cloud-primary-dark);
  cursor: pointer;
  font-weight: 600;
  font-size: .92rem;
}

.cloud-public-shell {
  width: min(620px, calc(100% - 28px));
  min-height: 100vh;
  margin: 0 auto;
  display: flex;
  align-items: center;
  padding: 28px 0;
}

.cloud-public-card {
  width: 100%;
}

.cloud-public-head {
  text-align: center;
}

.cloud-public-head h1 {
  margin: 10px 0 4px;
  color: var(--cloud-dark);
  font-weight: 600;
}

.cloud-public-head p {
  color: var(--cloud-muted);
  margin: 0 0 18px;
}

.cloud-public-payment-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid var(--cloud-border);
  background: #f8fbff;
  border-radius: 14px;
  padding: 12px 14px;
  margin-bottom: 14px;
}

.cloud-public-payment-box span {
  color: var(--cloud-muted);
}

.cloud-public-summary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.cloud-public-summary > div {
  border: 1px solid var(--cloud-border);
  background: #fbfdff;
  border-radius: 14px;
  padding: 12px;
}

.cloud-public-summary span {
  display: block;
  color: var(--cloud-muted);
  font-size: .86rem;
}

.cloud-public-summary strong {
  display: block;
  color: var(--cloud-dark);
  font-size: 1.05rem;
  margin-top: 2px;
}

.cloud-public-total {
  grid-column: 1 / -1;
  background: #f4f8fc !important;
}

.cloud-public-total strong {
  font-size: 1.7rem;
  color: var(--cloud-primary-dark);
}

.cloud-public-pay-actions {
  display: grid;
  gap: 12px;
}

.cloud-public-qr {
  display: grid;
  gap: 10px;
  justify-items: center;
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  padding: 14px;
  background: #fff;
}

.cloud-public-qr img {
  width: 220px;
  height: 220px;
  max-width: 100%;
}

@media (max-width: 992px) {
  .cloud-admin-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .cloud-admin-kpis,
  .cloud-public-summary {
    grid-template-columns: 1fr;
  }

  .cloud-public-total {
    grid-column: auto;
  }

  .cloud-payment-details {
    min-width: 0;
  }
}


/* Cloud v1.40 - senha e recuperação */
.cloud-link-muted {
  color: #536172;
  font-size: .92rem;
  text-decoration: none;
}

.cloud-link-muted:hover,
.cloud-link-muted:focus {
  color: var(--cloud-primary-dark);
  text-decoration: underline;
}


/* Cloud v1.41 - recuperação de senha no localhost */
.cloud-local-reset-box {
  overflow: hidden;
}

.cloud-local-reset-box p {
  color: #36546d;
  font-size: .92rem;
  line-height: 1.3;
}

.cloud-local-reset-box .btn {
  white-space: normal;
}


/* Cloud v1.43 - publicação do torneio e página pública dos atletas */
.cloud-public-status-on {
  background: linear-gradient(135deg, #2da56a, #37b877);
}

.cloud-public-status-off {
  background: linear-gradient(135deg, #9ca3af, #6b7280);
}

.cloud-mobile-status-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

.cloud-public-torneio-shell {
  width: min(1180px, calc(100% - 28px));
  margin: 18px auto 32px;
}

.cloud-public-hero {
  border-radius: 24px;
  background:
    radial-gradient(circle at top left, rgba(55, 184, 119, .22), transparent 28%),
    linear-gradient(135deg, #142437, #223a57);
  color: #fff;
  padding: clamp(24px, 5vw, 46px);
  box-shadow: 0 22px 48px rgba(16, 32, 51, .20);
}

.cloud-public-hero-content {
  max-width: 920px;
}

.cloud-public-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 1px solid rgba(255, 255, 255, .24);
  background: rgba(255, 255, 255, .12);
  border-radius: 999px;
  padding: 7px 12px;
  font-size: .92rem;
  font-weight: 600;
  margin-bottom: 14px;
}

.cloud-public-hero h1 {
  font-size: clamp(2rem, 5vw, 3.8rem);
  line-height: .98;
  letter-spacing: -.045em;
  margin: 0 0 12px;
  font-weight: 300;
}

.cloud-public-hero p {
  color: rgba(255, 255, 255, .82);
  font-size: 1.15rem;
  margin: 0 0 20px;
  max-width: 720px;
}

.cloud-public-hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cloud-public-hero-meta span {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .10);
  border-radius: 12px;
  padding: 8px 11px;
  color: rgba(255, 255, 255, .92);
}

.cloud-public-main {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}

.cloud-public-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.cloud-public-kpis > div {
  background: #fff;
  border: 1px solid var(--cloud-border);
  border-radius: 18px;
  padding: 14px 16px;
  box-shadow: 0 10px 26px rgba(16, 32, 51, .06);
}

.cloud-public-kpis span {
  display: block;
  color: var(--cloud-muted);
  font-size: .92rem;
}

.cloud-public-kpis strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: 1.85rem;
  line-height: 1;
  margin-top: 4px;
}

.cloud-public-section-card {
  padding: 20px;
}

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

.cloud-public-section-title h2 {
  color: var(--cloud-primary-dark);
  font-size: 1.45rem;
  margin: 0;
  font-weight: 600;
}

.cloud-public-section-title p {
  color: var(--cloud-muted);
  margin: 3px 0 0;
}

.cloud-public-category-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cloud-public-category-card,
.cloud-public-draw-card {
  border: 1px solid var(--cloud-border);
  background: #fbfdff;
  border-radius: 18px;
  padding: 14px;
}

.cloud-public-category-head,
.cloud-public-draw-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
}

.cloud-public-category-head h3,
.cloud-public-draw-head h3 {
  color: var(--cloud-primary-dark);
  font-size: 1.18rem;
  line-height: 1.1;
  margin: 0;
  font-weight: 700;
}

.cloud-public-category-head span,
.cloud-public-draw-head span {
  color: var(--cloud-muted);
  font-size: .92rem;
}

.cloud-public-chip {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 700;
  font-size: .82rem;
}

.cloud-public-chip.success {
  background: #e6f7ee;
  color: #0b6b3a;
}

.cloud-public-chip.warning {
  background: #fff3cd;
  color: #8a5d00;
}

.cloud-public-category-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.cloud-public-category-info > div {
  background: #fff;
  border: 1px solid #e5edf6;
  border-radius: 12px;
  padding: 9px 10px;
}

.cloud-public-category-info span {
  display: block;
  color: var(--cloud-muted);
  font-size: .78rem;
  line-height: 1.1;
}

.cloud-public-category-info strong {
  display: block;
  color: var(--cloud-dark);
  font-size: .98rem;
  line-height: 1.1;
  margin-top: 3px;
}

.cloud-public-prize {
  margin-top: 10px;
  border-radius: 12px;
  padding: 9px 10px;
  background: #fff7e6;
  color: #80520f;
  font-weight: 600;
}

.cloud-public-games-summary {
  border-radius: 999px;
  padding: 7px 11px;
  background: #f4f8fc;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  white-space: nowrap;
}

.cloud-public-draw-list {
  display: grid;
  gap: 14px;
}

.cloud-public-groups-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cloud-public-group-box {
  background: #fff;
  border: 1px solid #e5edf6;
  border-radius: 14px;
  padding: 12px;
}

.cloud-public-group-box h4 {
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  margin: 0 0 8px;
  font-weight: 700;
}

.cloud-public-group-box ol {
  margin: 0;
  padding-left: 18px;
  color: #263241;
}

.cloud-public-group-box li + li {
  margin-top: 3px;
}

.cloud-public-games-table {
  border: 1px solid #e3ebf4;
  border-radius: 12px;
  overflow: hidden;
}

.cloud-public-games-table th {
  background: #f4f8fc !important;
  color: #536172;
  text-transform: uppercase;
  font-size: .78rem;
  letter-spacing: .03em;
}

.cloud-public-games-table td,
.cloud-public-games-table th {
  padding: 9px 10px !important;
  border-color: #e3ebf4 !important;
}

.cloud-public-winner {
  color: #0b6b3a !important;
  font-weight: 700;
}

.cloud-empty.compact {
  padding: 24px 18px;
}

@media (max-width: 992px) {
  .cloud-public-kpis,
  .cloud-public-category-grid,
  .cloud-public-groups-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 575px) {
  .cloud-mobile-status-stack {
    align-items: flex-start;
  }

  .cloud-public-torneio-shell {
    width: calc(100% - 20px);
    margin-top: 10px;
  }

  .cloud-public-hero {
    border-radius: 18px;
    padding: 22px 18px;
  }

  .cloud-public-hero-meta span {
    width: 100%;
  }

  .cloud-public-kpis,
  .cloud-public-category-grid,
  .cloud-public-groups-grid,
  .cloud-public-category-info {
    grid-template-columns: 1fr;
  }

  .cloud-public-section-title {
    flex-direction: column;
  }

  .cloud-public-section-card {
    padding: 14px;
  }
}

/* Cloud v1.44 - vitrine pública de torneios na tela inicial */
.cloud-login-body-public {
  align-items: flex-start;
}

.cloud-login-public-shell {
  width: min(1280px, calc(100% - 32px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 28px 0;
  display: flex;
  align-items: center;
}

.cloud-login-public-grid {
  width: 100%;
  display: grid;
  grid-template-columns: 420px minmax(0, 1fr);
  gap: 22px;
  align-items: stretch;
}

.cloud-login-card-public {
  max-width: none;
  align-self: start;
}

.cloud-public-home-card {
  background: rgba(255, 255, 255, 0.97);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 24px;
  box-shadow: 0 24px 58px rgba(6, 17, 30, .25);
  backdrop-filter: blur(10px);
  padding: 24px;
  min-width: 0;
}

.cloud-public-home-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.cloud-public-home-kicker {
  display: inline-flex;
  align-items: center;
  color: #0b6b3a;
  background: #e6f7ee;
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 700;
  font-size: .86rem;
  margin-bottom: 10px;
}

.cloud-public-home-head h2 {
  color: var(--cloud-primary-dark);
  font-size: clamp(1.55rem, 2.3vw, 2.1rem);
  line-height: 1.02;
  font-weight: 400;
  letter-spacing: -.03em;
  margin: 0;
}

.cloud-public-home-head p {
  color: var(--cloud-muted);
  font-size: 1.02rem;
  line-height: 1.35;
  margin: 8px 0 0;
  max-width: 720px;
}

.cloud-public-filter-form {
  display: grid;
  grid-template-columns: minmax(180px, 1.5fr) minmax(140px, .85fr) 90px auto;
  gap: 10px;
  align-items: end;
  background: #f7faff;
  border: 1px solid #dce4ef;
  border-radius: 18px;
  padding: 12px;
  margin-bottom: 14px;
}

.cloud-public-filter-form .form-label {
  color: var(--cloud-primary-dark);
  font-size: .92rem;
  font-weight: 500;
  margin-bottom: 6px;
}

.cloud-public-filter-form .form-control,
.cloud-public-filter-form .form-select {
  min-height: 42px;
  border-radius: 12px;
  border-color: var(--cloud-field-border);
  background: #fff;
  color: var(--cloud-primary-dark);
  box-shadow: none;
}

.cloud-public-filter-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.cloud-public-filter-actions .btn {
  min-height: 42px;
  border-radius: 12px;
  white-space: nowrap;
  font-weight: 600;
}

.cloud-public-home-list {
  display: grid;
  gap: 12px;
  max-height: 62vh;
  overflow-y: auto;
  padding-right: 4px;
}

.cloud-public-home-list::-webkit-scrollbar {
  width: 8px;
}

.cloud-public-home-list::-webkit-scrollbar-thumb {
  background: #cbd6e5;
  border-radius: 999px;
}

.cloud-public-home-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  border: 1px solid #dce4ef;
  border-radius: 18px;
  background: #fff;
  padding: 14px;
}

.cloud-public-home-item-main {
  min-width: 0;
}

.cloud-public-home-item-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 7px;
}

.cloud-public-home-item h3 {
  color: var(--cloud-primary-dark);
  font-size: 1.25rem;
  line-height: 1.08;
  font-weight: 700;
  margin: 0;
  min-width: 0;
}

.cloud-public-home-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
  color: #5f6e80;
  font-size: .92rem;
  line-height: 1.15;
  margin-bottom: 10px;
}

.cloud-public-home-meta span {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.cloud-public-home-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin-bottom: 10px;
}

.cloud-public-home-stats > div {
  border: 1px solid #e5edf6;
  background: #f9fbfe;
  border-radius: 12px;
  padding: 8px 9px;
}

.cloud-public-home-stats span {
  display: block;
  color: var(--cloud-muted);
  font-size: .74rem;
  line-height: 1;
  margin-bottom: 4px;
}

.cloud-public-home-stats strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: .96rem;
  line-height: 1.05;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cloud-public-home-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.cloud-public-home-cats span {
  border-radius: 999px;
  background: #eef4fb;
  color: #294966;
  padding: 5px 8px;
  font-size: .82rem;
  font-weight: 700;
  line-height: 1;
}

.cloud-public-home-item-action .btn {
  border-radius: 12px;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  font-weight: 600;
}

.cloud-public-empty-home {
  border: 1px dashed #ccd8e6;
  background: #f8fbff;
  border-radius: 18px;
  padding: 24px 16px;
  text-align: center;
  color: var(--cloud-muted);
  display: grid;
  gap: 6px;
  justify-items: center;
}

.cloud-public-empty-home i {
  font-size: 2rem;
  color: #8fa0b4;
  margin-bottom: 3px;
}

.cloud-public-empty-home strong {
  color: var(--cloud-primary-dark);
  font-size: 1.1rem;
}

@media (max-width: 1080px) {
  .cloud-login-public-shell {
    align-items: flex-start;
  }

  .cloud-login-public-grid {
    grid-template-columns: 1fr;
    max-width: 760px;
    margin: 0 auto;
  }

  .cloud-login-card-public {
    width: 100%;
    max-width: none;
  }

  .cloud-public-home-list {
    max-height: none;
    overflow-y: visible;
    padding-right: 0;
  }
}

@media (max-width: 720px) {
  .cloud-login-public-shell {
    width: calc(100% - 20px);
    padding: 12px 0;
  }

  .cloud-login-public-grid {
    gap: 12px;
  }

  .cloud-login-card-public,
  .cloud-public-home-card {
    border-radius: 20px;
    padding: 18px;
  }

  .cloud-public-filter-form {
    grid-template-columns: 1fr 1fr;
  }

  .cloud-public-filter-form > div:first-child {
    grid-column: 1 / -1;
  }

  .cloud-public-filter-actions {
    grid-column: 1 / -1;
  }

  .cloud-public-filter-actions .btn {
    flex: 1;
  }

  .cloud-public-home-item {
    grid-template-columns: 1fr;
  }

  .cloud-public-home-item-action .btn {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .cloud-login-brand h1 {
    white-space: normal;
  }

  .cloud-public-home-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-public-filter-form {
    grid-template-columns: 1fr;
  }

  .cloud-public-filter-form > div:first-child,
  .cloud-public-filter-actions {
    grid-column: auto;
  }

  .cloud-public-home-item-title-row {
    flex-direction: column;
    align-items: flex-start;
  }
}


/* Cloud v1.45 - ajustes da vitrine pública */
.cloud-public-home-card .btn-primary {
  min-height: 42px;
  border-radius: 12px;
  border: none;
  background: linear-gradient(135deg, var(--cloud-primary), var(--cloud-primary-soft)) !important;
  color: #fff !important;
  font-weight: 600;
  letter-spacing: -0.01em;
  box-shadow: 0 12px 22px rgba(31, 59, 92, .18);
}

.cloud-public-home-card .btn-primary:hover,
.cloud-public-home-card .btn-primary:focus,
.cloud-public-home-card .btn-primary:active {
  background: linear-gradient(135deg, #1b3552, #23415f) !important;
  color: #fff !important;
  box-shadow: 0 16px 28px rgba(31, 59, 92, .26);
}

.cloud-public-home-item {
  align-items: stretch;
}

.cloud-public-home-item-action {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.cloud-public-home-item-action .btn {
  height: 42px;
  padding-left: 16px;
  padding-right: 16px;
}

@media (max-width: 720px) {
  .cloud-public-home-item-action {
    justify-content: stretch;
  }
}


/* Cloud v1.47 - vitrine pública mobile e alinhamento do botão do torneio */
.cloud-mobile-public-cta {
  display: none;
  margin-top: 14px;
}

.cloud-public-mobile-open {
  min-height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(31, 59, 92, .18);
  background: #eef4fb;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  box-shadow: none;
}

.cloud-public-mobile-open:hover,
.cloud-public-mobile-open:focus {
  background: #e1ebf6;
  color: var(--cloud-primary-dark);
}

.cloud-public-mobile-back {
  display: none;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 12px;
  border: 1px solid #dce4ef;
  background: #f7faff;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  font-size: .9rem;
  text-decoration: none;
  white-space: nowrap;
}

@media (min-width: 721px) {
  .cloud-public-home-item-action {
    align-items: flex-start;
    padding-top: 70px;
  }
}

@media (max-width: 720px) {
  .cloud-mobile-public-cta {
    display: block;
  }

  .cloud-login-public-grid {
    display: block;
  }

  .cloud-public-home-card {
    display: none;
    margin-top: 12px;
  }

  .cloud-public-home-card:target {
    display: block;
  }

  .cloud-public-mobile-back {
    display: inline-flex;
  }

  .cloud-public-home-head {
    align-items: flex-start;
  }

  .cloud-public-home-item-action {
    padding-top: 0;
  }
}

@media (max-width: 480px) {
  .cloud-public-home-head {
    display: grid;
    gap: 10px;
  }

  .cloud-public-mobile-back {
    width: 100%;
  }
}


/* Cloud v1.48 - botões de retorno na página pública do torneio */
.cloud-public-nav-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 20px;
}

.cloud-public-nav-btn {
  min-height: 42px;
  border-radius: 13px;
  padding: 10px 14px;
  font-weight: 700;
  line-height: 1.1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-shadow: none;
}

.cloud-public-nav-primary {
  border: 1px solid rgba(255, 255, 255, .22) !important;
  background: rgba(255, 255, 255, .15) !important;
  color: #fff !important;
}

.cloud-public-nav-primary:hover,
.cloud-public-nav-primary:focus {
  background: rgba(255, 255, 255, .22) !important;
  color: #fff !important;
}

.cloud-public-nav-secondary {
  border: 1px solid rgba(255, 255, 255, .26) !important;
  background: #fff !important;
  color: var(--cloud-primary-dark) !important;
  box-shadow: 0 12px 26px rgba(16, 32, 51, .14);
}

.cloud-public-nav-secondary:hover,
.cloud-public-nav-secondary:focus {
  background: #eef4fb !important;
  color: var(--cloud-primary-dark) !important;
}

.cloud-public-bottom-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 2px;
  padding: 8px 0 4px;
}

.cloud-public-bottom-actions .cloud-public-nav-primary {
  border-color: rgba(31, 59, 92, .18) !important;
  background: linear-gradient(135deg, var(--cloud-primary), var(--cloud-primary-soft)) !important;
  color: #fff !important;
  box-shadow: 0 12px 22px rgba(31, 59, 92, .18);
}

.cloud-public-bottom-actions .cloud-public-nav-secondary {
  border-color: #dce4ef !important;
}

.cloud-card .cloud-public-nav-primary {
  border-color: rgba(31, 59, 92, .18) !important;
  background: linear-gradient(135deg, var(--cloud-primary), var(--cloud-primary-soft)) !important;
  color: #fff !important;
}

.cloud-card .cloud-public-nav-secondary {
  border-color: #dce4ef !important;
}

@media (max-width: 575px) {
  .cloud-public-nav-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    margin-top: 16px;
  }

  .cloud-public-nav-btn {
    width: 100%;
  }

  .cloud-public-bottom-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
  }
}


/* Cloud v1.50 - nota do formato Super X */
.superx-note {
  border: 1px solid rgba(29, 78, 111, .18);
  border-radius: 14px;
  background: #eef6fb;
  color: #173451;
  padding: 10px 12px;
  font-size: .95rem;
  line-height: 1.35;
}


/* Cloud v1.60 - página pública com grupos compactos e jogos em duas linhas */
.cloud-public-group-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cloud-public-group-card,
.cloud-public-score-card {
  background: #fff;
  border: 1px solid #e5edf6;
  border-radius: 16px;
  padding: 12px;
}

.cloud-public-score-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.cloud-public-score-head h4 {
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  margin: 0;
  font-weight: 700;
}

.cloud-public-score-head span {
  color: var(--cloud-muted);
  font-size: .84rem;
  font-weight: 700;
  background: #f4f8fc;
  border-radius: 999px;
  padding: 5px 9px;
}

.cloud-public-ranking-table {
  border: 1px solid #e3ebf4;
  border-radius: 12px;
  overflow: hidden;
}

.cloud-public-ranking-table th {
  background: #f4f8fc !important;
  color: #536172;
  text-transform: uppercase;
  font-size: .74rem;
  letter-spacing: .03em;
}

.cloud-public-ranking-table td,
.cloud-public-ranking-table th {
  padding: 8px 9px !important;
  border-color: #e3ebf4 !important;
}

.cloud-public-ranking-table tr.is-leader td {
  background: #edf8f1;
}

.cloud-public-match-list {
  display: grid;
  gap: 8px;
}

.cloud-public-match-item {
  border: 1px solid #dfe8f2;
  border-radius: 14px;
  overflow: hidden;
  background: #fbfdff;
}

.cloud-public-match-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-bottom: 1px solid #e6eef7;
  background: #f8fbff;
}

.cloud-public-match-label {
  color: var(--cloud-primary-dark);
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.cloud-public-match-status {
  color: var(--cloud-muted);
  font-size: .78rem;
  font-weight: 700;
}

.cloud-public-match-status.done {
  color: #0b6b3a;
}

.cloud-public-match-status.special {
  color: #8a5d00;
}

.cloud-public-match-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-top: 1px solid #e6eef7;
}

.cloud-public-match-line:first-of-type {
  border-top: 0;
}

.cloud-public-match-line .team-name {
  min-width: 0;
  color: var(--cloud-dark);
  font-weight: 600;
}

.cloud-public-match-line .team-score {
  text-align: right;
  color: var(--cloud-primary-dark);
  font-size: 1.08rem;
  font-weight: 800;
}

.cloud-public-match-line.winner .team-name,
.cloud-public-match-line.winner .team-score {
  color: #0b6b3a;
}

@media (max-width: 992px) {
  .cloud-public-group-cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .cloud-public-score-head {
    flex-direction: row;
    align-items: center;
  }

  .cloud-public-match-meta {
    flex-direction: column;
    align-items: flex-start;
  }

  .cloud-public-match-line {
    grid-template-columns: minmax(0, 1fr) 32px;
    padding: 9px 10px;
  }

  .cloud-public-match-line .team-name {
    font-size: .93rem;
    line-height: 1.2;
  }

  .cloud-public-match-line .team-score {
    font-size: 1rem;
  }
}


/* Cloud v1.61 - destaque do nome do torneio no topo do cabeçalho público */
.cloud-public-hero-status {
  margin-top: 2px;
  margin-bottom: 14px;
}

@media (max-width: 575px) {
  .cloud-public-hero-status {
    margin-bottom: 12px;
  }
}


/* Cloud v1.62 - fundação da área do atleta */
.cloud-athlete-login-shortcuts {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #dce4ef;
}

.cloud-athlete-login-title {
  color: #6b7788;
  font-size: .82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 8px;
}

.cloud-athlete-login-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.cloud-athlete-login-buttons .btn {
  border-radius: 12px;
  font-weight: 700;
}

.cloud-athlete-shell,
.cloud-policy-shell {
  width: min(980px, calc(100% - 28px));
  margin: 36px auto;
}

.cloud-athlete-card,
.cloud-policy-card {
  padding: 26px;
}

.cloud-athlete-head {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  margin-bottom: 18px;
}

.cloud-athlete-head h1,
.cloud-policy-card h1 {
  color: var(--cloud-primary-dark);
  font-size: 2rem;
  font-weight: 500;
  margin: 6px 0 4px;
}

.cloud-athlete-head p,
.cloud-policy-card .lead {
  color: var(--cloud-muted);
  margin: 0;
  font-size: 1.04rem;
}

.cloud-athlete-grid.two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.cloud-field-hint {
  display: block;
  color: #718197;
  font-size: .78rem;
  margin-top: 4px;
  line-height: 1.2;
}

.cloud-lgpd-box {
  margin-top: 16px;
  padding: 14px;
  border: 1px solid #cfe1f1;
  background: #f8fbff;
  border-radius: 16px;
  color: #32465c;
}

.cloud-lgpd-box a {
  color: var(--cloud-primary-dark);
  font-weight: 700;
}

.cloud-athlete-actions,
.cloud-policy-actions,
.cloud-athlete-dashboard-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 18px;
}

.cloud-login-secondary-actions {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: 16px;
  font-size: .92rem;
}

.cloud-login-secondary-actions a {
  color: var(--cloud-primary-dark);
  font-weight: 700;
  text-decoration: none;
}

.cloud-athlete-dashboard-hero {
  border-radius: 22px;
  padding: 28px;
  background: linear-gradient(135deg, #143f3c 0%, #193655 45%, #223a57 100%);
  color: #fff;
  box-shadow: 0 18px 44px rgba(16, 32, 51, .16);
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-end;
  margin-bottom: 18px;
}

.cloud-athlete-dashboard-hero h1 {
  font-size: 2.25rem;
  font-weight: 400;
  margin: 12px 0 4px;
}

.cloud-athlete-dashboard-hero p {
  margin: 0;
  color: rgba(255,255,255,.88);
}

.cloud-athlete-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: 16px;
}

.cloud-athlete-info-card {
  padding: 20px;
}

.cloud-athlete-info-card h2 {
  color: var(--cloud-primary-dark);
  font-size: 1.35rem;
  margin: 0 0 12px;
  font-weight: 700;
}

.cloud-athlete-info-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cloud-athlete-info-list > div {
  background: #f8fbff;
  border: 1px solid #e3ebf4;
  border-radius: 13px;
  padding: 10px 12px;
}

.cloud-athlete-info-list span {
  display: block;
  color: var(--cloud-muted);
  font-size: .78rem;
  line-height: 1.1;
}

.cloud-athlete-info-list strong {
  display: block;
  color: var(--cloud-dark);
  font-size: .98rem;
  line-height: 1.15;
  margin-top: 4px;
  word-break: break-word;
}

.cloud-next-list {
  display: grid;
  gap: 10px;
}

.cloud-next-list > div {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  border: 1px solid #e3ebf4;
  background: #f8fbff;
  border-radius: 14px;
  padding: 11px 12px;
}

.cloud-next-list i {
  color: var(--cloud-primary-dark);
  font-size: 1.05rem;
  text-align: center;
}

.cloud-policy-card h2 {
  color: var(--cloud-primary-dark);
  font-size: 1.18rem;
  font-weight: 700;
  margin-top: 18px;
}

.cloud-policy-card p {
  color: #405168;
  line-height: 1.45;
}

@media (max-width: 767px) {
  .cloud-athlete-grid.two,
  .cloud-athlete-dashboard-grid,
  .cloud-athlete-info-list {
    grid-template-columns: 1fr;
  }

  .cloud-athlete-head {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .cloud-athlete-head .cloud-login-icon {
    margin: 0 auto;
  }

  .cloud-athlete-dashboard-hero {
    flex-direction: column;
    align-items: flex-start;
    padding: 22px 18px;
  }

  .cloud-athlete-dashboard-actions,
  .cloud-athlete-actions,
  .cloud-policy-actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .cloud-athlete-login-buttons {
    grid-template-columns: 1fr;
  }
}


/* Cloud v1.63 - refinamentos do cadastro do atleta */
.cloud-athlete-ufcidade {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.cloud-athlete-uf-field .form-select {
  text-align: center;
  font-weight: 700;
}

.cloud-athlete-actions .btn {
  min-height: 42px;
  border-radius: 12px;
  font-weight: 700;
}

.cloud-athlete-actions .btn-outline-secondary {
  border-color: #9aa8b8;
  color: var(--cloud-primary-dark);
  background: #fff;
}

.cloud-athlete-actions .btn-outline-secondary:hover {
  color: #fff;
  background: var(--cloud-primary);
  border-color: var(--cloud-primary);
}

.cloud-athlete-form .was-validated .form-control:invalid,
.cloud-athlete-form .was-validated .form-select:invalid {
  border-color: #dc3545;
}

@media (max-width: 575px) {
  .cloud-athlete-shell {
    width: calc(100% - 20px);
    margin: 10px auto 22px;
  }

  .cloud-athlete-card {
    padding: 18px 14px;
  }

  .cloud-athlete-head {
    grid-template-columns: 1fr;
    gap: 10px;
    text-align: left;
  }

  .cloud-athlete-head .cloud-login-icon {
    width: 54px;
    height: 54px;
    border-radius: 16px;
    font-size: 22px;
    margin-bottom: 0;
  }

  .cloud-athlete-head h1 {
    font-size: 1.65rem;
  }

  .cloud-athlete-grid.two,
  .cloud-athlete-ufcidade {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .cloud-athlete-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cloud-athlete-actions .btn {
    width: 100%;
  }

  .cloud-lgpd-box {
    padding: 12px;
    font-size: .95rem;
  }
}

/* Cloud v1.64 - nome nos torneios e sigla da cidade do atleta */
.cloud-athlete-localidade {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) 112px;
  gap: 12px;
  align-items: start;
  grid-column: 1 / -1;
}

.cloud-athlete-city-code-field .form-control {
  text-align: center;
  font-weight: 700;
  letter-spacing: .06em;
}

.cloud-player-city-code,
.cloud-public-player-city {
  display: block;
  margin-top: 2px;
  color: #7b8da4;
  font-size: .72rem;
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.cloud-public-match-line .team-name-wrap {
  min-width: 0;
  display: block;
}

.cloud-public-match-line .team-name-wrap .team-name {
  display: block;
}

.cloud-public-ranking-table .ranking-name-wrap {
  display: block;
  min-width: 0;
}

.cloud-public-ranking-table .ranking-name-wrap strong {
  display: block;
  font-weight: 700;
}

@media (max-width: 575px) {
  .cloud-athlete-localidade {
    grid-template-columns: 74px minmax(0, 1fr);
  }

  .cloud-athlete-city-code-field {
    grid-column: 1 / -1;
  }

  .cloud-athlete-city-code-field .form-control {
    text-align: left;
  }
}


/* Cloud v1.65 - perfil do atleta e login com botões padronizados */
.cloud-login-secondary-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.cloud-login-secondary-buttons .btn {
  border-radius: 12px;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  color: var(--cloud-primary-dark);
  border-color: #9aa8b8;
  text-decoration: none;
}

.cloud-login-secondary-buttons .btn:hover {
  color: #fff;
  background: var(--cloud-primary);
  border-color: var(--cloud-primary);
}

@media (max-width: 575px) {
  .cloud-login-secondary-buttons {
    grid-template-columns: 1fr;
  }
}

/* Cloud v1.67 - busca pública compacta e inscrição online do atleta */
.cloud-public-filter-form-v067 {
  grid-template-columns: minmax(220px, 1.7fr) minmax(150px, 1fr) 90px 130px auto;
}

.cloud-public-search-start i {
  color: var(--cloud-primary);
}

.cloud-public-search-result-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 14px 0 10px;
  color: var(--cloud-primary-dark);
}

.cloud-public-search-result-head strong {
  font-size: 1rem;
}

.cloud-public-search-result-head span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #eef5ff;
  color: #48617d;
  font-weight: 700;
  font-size: .86rem;
}

.cloud-public-home-list-compact {
  gap: 10px;
}

.cloud-public-home-item-compact {
  padding: 14px 14px;
  border-radius: 16px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.cloud-public-home-item-compact h3 {
  font-size: 1.08rem;
  margin-bottom: 2px;
}

.cloud-public-home-meta-compact {
  gap: 8px 12px;
  font-size: .88rem;
  margin-top: 2px;
}

.cloud-public-home-mini-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.cloud-public-home-mini-stats span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f3f7fb;
  border: 1px solid #dce7f2;
  color: #496076;
  font-size: .78rem;
  font-weight: 700;
}

.cloud-public-home-cats-compact {
  margin-top: 8px;
  gap: 5px;
}

.cloud-public-home-cats-compact span {
  font-size: .74rem;
  padding: 3px 8px;
}

.cloud-public-home-item-action-compact {
  align-self: stretch;
  display: flex;
  align-items: center;
}

.cloud-public-home-item-action-compact .btn {
  min-height: 40px;
  border-radius: 12px;
  padding-left: 16px;
  padding-right: 16px;
  white-space: nowrap;
}

.cloud-public-chip.muted {
  background: #eef1f5;
  color: #64748b;
}

.cloud-public-category-action {
  margin-top: 14px;
}

.cloud-public-category-action .btn {
  border-radius: 12px;
  min-height: 42px;
  font-weight: 800;
}

.cloud-athlete-narrow-shell {
  max-width: 760px;
}

.cloud-athlete-form-card {
  padding: 26px;
  border-radius: 22px;
}

.cloud-athlete-form-head {
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 18px;
}

.cloud-athlete-form-head h1 {
  margin: 8px 0 4px;
  color: var(--cloud-primary-dark);
  font-size: 2rem;
  line-height: 1.05;
}

.cloud-athlete-form-head p {
  margin: 0;
  color: #6c7a8d;
}

.cloud-athlete-inscription-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}

.cloud-athlete-inscription-summary > div {
  border: 1px solid #dce6f1;
  border-radius: 14px;
  background: #f8fbff;
  padding: 12px;
  min-width: 0;
}

.cloud-athlete-inscription-summary span,
.cloud-athlete-inscription-summary small {
  display: block;
  color: #71839a;
  font-size: .78rem;
  font-weight: 600;
}

.cloud-athlete-inscription-summary strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  line-height: 1.12;
  margin: 3px 0;
}

.cloud-public-note {
  padding: 12px 14px;
  border-radius: 14px;
  background: #eef7ff;
  border: 1px solid #d8e9fb;
  color: #405974;
  font-weight: 600;
}

.cloud-invite-created {
  text-align: center;
}

.cloud-invite-created-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--cloud-primary), var(--cloud-accent));
  color: #fff;
  font-size: 24px;
  margin-bottom: 12px;
}

.cloud-invite-created h2 {
  color: var(--cloud-primary-dark);
  margin-bottom: 6px;
}

.cloud-invite-created p {
  color: #65758a;
  margin-bottom: 14px;
}

.cloud-copy-link-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 10px;
  border-radius: 16px;
  background: #f8fbff;
  border: 1px solid #dce6f1;
}

.cloud-copy-link-box input {
  font-size: .88rem;
}

.cloud-athlete-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cloud-athlete-form-actions .btn {
  min-height: 42px;
  border-radius: 12px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 900px) {
  .cloud-public-filter-form-v067 {
    grid-template-columns: 1fr 1fr;
  }

  .cloud-public-filter-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 575px) {
  .cloud-public-filter-form-v067,
  .cloud-public-home-item-compact,
  .cloud-athlete-inscription-summary,
  .cloud-copy-link-box,
  .cloud-athlete-form-head {
    grid-template-columns: 1fr;
  }

  .cloud-public-search-result-head,
  .cloud-athlete-form-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .cloud-public-home-item-action-compact .btn,
  .cloud-athlete-form-actions .btn {
    width: 100%;
  }

  .cloud-athlete-form-card {
    padding: 18px 14px;
  }

  .cloud-athlete-form-head h1 {
    font-size: 1.6rem;
  }
}

/* Cloud v1.68 - busca do atleta, status de inscrição e recuperação de convite */
.cloud-athlete-search-shell {
  width: min(1120px, calc(100% - 28px));
  margin: 36px auto;
}

.cloud-athlete-search-card {
  min-height: 620px;
}

.cloud-athlete-search-head h1 {
  color: var(--cloud-primary-dark);
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  font-weight: 400;
  letter-spacing: -.03em;
  line-height: 1.04;
  margin: 0;
}

.cloud-athlete-search-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
}

.cloud-athlete-search-actions .btn {
  border-radius: 12px;
  min-height: 40px;
  font-weight: 800;
}

.cloud-athlete-search-results {
  max-height: none;
}

.cloud-public-athlete-status {
  display: inline-flex;
  align-items: center;
  width: 100%;
  margin-top: 12px;
  padding: 8px 10px;
  border-radius: 12px;
  background: #e8f7ed;
  color: #0b6b3a;
  font-weight: 800;
  font-size: .9rem;
}

.cloud-public-athlete-status.pending {
  background: #fff7df;
  color: #8a5b00;
}

.cloud-invite-replace-box {
  border-top: 1px solid #dce6f1;
  padding-top: 14px;
  display: grid;
  gap: 8px;
  justify-items: center;
}

.cloud-invite-replace-box small {
  color: #74849a;
  font-weight: 600;
}

.cloud-athlete-wide-card {
  grid-column: 1 / -1;
}

.cloud-athlete-invite-list {
  display: grid;
  gap: 10px;
}

.cloud-athlete-invite-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border-radius: 14px;
  background: #f8fbff;
  border: 1px solid #dce6f1;
}

.cloud-athlete-invite-item strong,
.cloud-athlete-invite-item span {
  display: block;
}

.cloud-athlete-invite-item strong {
  color: var(--cloud-primary-dark);
  font-size: 1rem;
}

.cloud-athlete-invite-item span {
  color: #708199;
  font-size: .86rem;
  margin-top: 2px;
}

.cloud-athlete-invite-item .btn {
  border-radius: 12px;
  min-height: 38px;
  font-weight: 800;
}

@media (max-width: 700px) {
  .cloud-athlete-search-shell {
    width: min(100% - 18px, 1120px);
    margin: 14px auto;
  }

  .cloud-athlete-search-card {
    min-height: auto;
    padding: 18px 14px;
  }

  .cloud-athlete-search-head,
  .cloud-athlete-invite-item {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cloud-athlete-search-actions,
  .cloud-athlete-invite-item .btn {
    width: 100%;
  }

  .cloud-athlete-search-actions .btn {
    width: 100%;
  }
}


/* Cloud v1.69 - cabeçalho público mais limpo para atletas */
.cloud-public-hero-meta.cloud-public-hero-meta-text {
  gap: 8px 16px;
  margin-top: 2px;
  margin-bottom: 18px;
}

.cloud-public-hero-meta.cloud-public-hero-meta-text span {
  border: 0;
  background: transparent;
  border-radius: 0;
  padding: 0;
  color: rgba(255, 255, 255, .86);
  font-size: .98rem;
  line-height: 1.35;
}

.cloud-public-hero-meta.cloud-public-hero-meta-text i {
  color: rgba(255, 255, 255, .82);
}

.cloud-public-nav-actions .cloud-public-nav-btn,
.cloud-public-bottom-actions .cloud-public-nav-btn {
  min-width: 168px;
}

@media (max-width: 575px) {
  .cloud-public-hero-meta.cloud-public-hero-meta-text {
    display: grid;
    grid-template-columns: 1fr;
    gap: 5px;
    margin-bottom: 16px;
  }

  .cloud-public-hero-meta.cloud-public-hero-meta-text span {
    font-size: .94rem;
  }

  .cloud-public-nav-actions .cloud-public-nav-btn,
  .cloud-public-bottom-actions .cloud-public-nav-btn {
    min-width: 0;
    width: 100%;
  }
}


/* Cloud v1.71 - status encerrado na página pública do torneio */
.cloud-public-hero-meta.cloud-public-hero-meta-text .cloud-public-event-status {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-weight: 700;
}

.cloud-public-hero-meta.cloud-public-hero-meta-text .cloud-public-event-status.is-closed {
  color: #ffd6a6;
}

.cloud-public-hero-meta.cloud-public-hero-meta-text .cloud-public-event-status.is-closed i {
  color: #ffd6a6;
}

.cloud-public-nav-disabled,
.cloud-public-nav-disabled:disabled {
  border: 1px solid rgba(255, 255, 255, .18) !important;
  background: rgba(255, 255, 255, .10) !important;
  color: rgba(255, 255, 255, .72) !important;
  opacity: 1 !important;
  cursor: not-allowed;
  box-shadow: none !important;
}

.cloud-public-bottom-actions .cloud-public-nav-disabled,
.cloud-public-bottom-actions .cloud-public-nav-disabled:disabled {
  border-color: #d7e0ec !important;
  background: #eef3f8 !important;
  color: #64748b !important;
}


/* Cloud v1.72 - destaque discreto para a arena no cabeçalho público */
.cloud-public-arena-highlight {
  margin-top: 8px;
  margin-bottom: 7px;
  display: grid;
  gap: 1px;
}

.cloud-public-arena-highlight span {
  color: rgba(255, 255, 255, .62);
  font-size: .76rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.cloud-public-arena-highlight strong {
  color: #fff;
  font-size: 1.28rem;
  line-height: 1.16;
  font-weight: 700;
  letter-spacing: -.01em;
}

.cloud-public-arena-highlight i {
  color: rgba(255, 255, 255, .84);
}

@media (max-width: 575px) {
  .cloud-public-arena-highlight {
    margin-top: 6px;
    margin-bottom: 8px;
  }

  .cloud-public-arena-highlight strong {
    font-size: 1.12rem;
  }
}


/* Cloud v1.73 - arena sem rótulo superior no cabeçalho público */
.cloud-public-arena-highlight {
  display: block;
}

/* Cloud v1.74 - portal único de entrada: atleta, organizador e busca de torneios */
.cloud-login-unified-shell {
  align-items: center;
}

.cloud-login-unified-grid {
  grid-template-columns: 430px minmax(0, 1fr);
}

.cloud-login-unified-card {
  align-self: center;
}

.cloud-entry-switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: -2px 0 16px;
}

.cloud-entry-switch .btn {
  min-height: 44px;
  border-radius: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  white-space: nowrap;
}

.cloud-login-mode-title {
  border: 1px solid #dce4ef;
  background: #f7faff;
  border-radius: 16px;
  padding: 12px 14px;
  margin-bottom: 14px;
}

.cloud-login-mode-title strong,
.cloud-login-current-box strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: 1.12rem;
  line-height: 1.1;
}

.cloud-login-mode-title span,
.cloud-login-current-box span {
  display: block;
  color: var(--cloud-muted);
  font-size: .94rem;
  line-height: 1.25;
  margin-top: 4px;
}

.cloud-login-current-box {
  border: 1px solid #cde9d8;
  background: #f1fbf5;
  border-radius: 16px;
  padding: 14px;
}

.cloud-login-current-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  margin-top: 12px;
}

.cloud-login-current-actions .btn,
.cloud-login-unified-secondary .btn {
  min-height: 42px;
  border-radius: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-login-unified-secondary {
  grid-template-columns: 1fr 1fr;
}

.cloud-login-unified-search-card .cloud-public-home-list {
  max-height: 56vh;
}

.cloud-login-unified-search-card .cloud-public-home-item-action-compact .btn {
  min-width: 86px;
}

@media (max-width: 1080px) {
  .cloud-login-unified-shell {
    align-items: flex-start;
  }

  .cloud-login-unified-grid {
    grid-template-columns: 1fr;
    max-width: 820px;
  }

  .cloud-login-unified-card {
    align-self: auto;
  }
}

@media (max-width: 720px) {
  .cloud-login-unified-shell .cloud-public-home-card {
    display: block;
    margin-top: 12px;
  }

  .cloud-login-unified-shell .cloud-public-mobile-back,
  .cloud-login-unified-shell .cloud-mobile-public-cta {
    display: none !important;
  }

  .cloud-login-unified-secondary,
  .cloud-login-current-actions,
  .cloud-entry-switch {
    grid-template-columns: 1fr;
  }

  .cloud-login-unified-card .cloud-login-brand {
    margin-bottom: 14px;
  }

  .cloud-login-unified-card .cloud-login-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    margin-bottom: 10px;
  }

  .cloud-login-mode-title {
    padding: 11px 12px;
  }
}


/* Cloud v1.75 - inscritos públicos por categoria */
.cloud-public-inscritos-box {
  border: 1px solid rgba(108, 133, 166, 0.22);
  background: rgba(248, 251, 255, 0.78);
  border-radius: 14px;
  padding: 10px 11px;
  margin-top: 12px;
}

.cloud-public-inscritos-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #10223a;
  font-size: 0.95rem;
  margin-bottom: 8px;
}

.cloud-public-inscritos-head span {
  min-width: 30px;
  height: 24px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e7f0fb;
  color: #1f4368;
  font-weight: 800;
  font-size: 0.82rem;
}

.cloud-public-inscritos-empty {
  color: #6b7b93;
  font-size: 0.86rem;
  padding: 5px 2px 2px;
}

.cloud-public-inscritos-list {
  display: grid;
  gap: 6px;
  max-height: 220px;
  overflow: auto;
  padding-right: 2px;
}

.cloud-public-inscrito-row {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border-radius: 11px;
  background: #ffffff;
  border: 1px solid rgba(108, 133, 166, 0.16);
}

.cloud-public-inscrito-order {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #f1f6fd;
  color: #496280;
  font-size: 0.78rem;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-public-inscrito-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.cloud-public-inscrito-main strong {
  color: #071c35;
  font-size: 0.92rem;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.cloud-public-inscrito-main small {
  color: #718097;
  font-size: 0.7rem;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 800;
  text-transform: uppercase;
}

.cloud-public-inscrito-status {
  align-self: center;
  border-radius: 999px;
  padding: 3px 8px;
  background: #fff6d9;
  color: #8a6000;
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

.cloud-public-inscrito-row.is-waiting {
  background: #fffdf5;
  border-color: rgba(206, 155, 26, 0.22);
}

@media (max-width: 575px) {
  .cloud-public-inscritos-box {
    padding: 9px;
  }

  .cloud-public-inscritos-list {
    max-height: 260px;
  }

  .cloud-public-inscrito-row {
    grid-template-columns: 22px minmax(0, 1fr) auto;
    gap: 7px;
    padding: 7px;
  }

  .cloud-public-inscrito-main strong {
    font-size: 0.9rem;
  }
}


/* Cloud v1.76 - login limpo e busca de torneios em página separada */
.cloud-login-only-shell {
  align-items: center;
  justify-content: center;
}

.cloud-login-only-grid {
  grid-template-columns: minmax(320px, 430px);
  justify-content: center;
}

.cloud-login-only-card {
  width: 100%;
}

.cloud-entry-switch {
  grid-template-columns: 1fr 1fr;
}

.cloud-entry-switch .btn {
  width: 100%;
  min-width: 0;
  padding-left: 8px;
  padding-right: 8px;
  text-align: center;
}

.cloud-search-page-shell {
  width: min(1100px, calc(100% - 32px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 28px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cloud-search-page-card {
  width: 100%;
}

.cloud-search-page-head {
  align-items: flex-start;
}

.cloud-search-page-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.cloud-search-page-actions .btn {
  min-height: 40px;
  border-radius: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.cloud-search-page-filter {
  margin-bottom: 14px;
}

@media (max-width: 720px) {
  .cloud-login-only-shell,
  .cloud-search-page-shell {
    width: calc(100% - 20px);
    padding: 12px 0;
    align-items: flex-start;
  }

  .cloud-login-only-grid {
    grid-template-columns: 1fr;
    max-width: 430px;
  }

  .cloud-entry-switch {
    grid-template-columns: 1fr 1fr;
  }

  .cloud-entry-switch .btn {
    font-size: .92rem;
  }

  .cloud-search-page-head {
    flex-direction: column;
  }

  .cloud-search-page-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .cloud-search-page-actions .btn {
    width: 100%;
  }
}

@media (max-width: 380px) {
  .cloud-entry-switch .btn {
    font-size: .86rem;
    letter-spacing: -.01em;
  }
}


/* Cloud v1.78 - login único centralizado e botões de perfil padronizados */
body.cloud-login-body.cloud-login-body-public {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cloud-login-only-shell {
  width: 100%;
  max-width: 100%;
  min-height: 100vh;
  margin: 0;
  padding: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cloud-login-only-grid {
  width: min(430px, 100%);
  max-width: 430px;
  display: block;
  margin: 0 auto;
}

.cloud-login-only-card {
  width: 100%;
  max-width: 430px;
  margin: 0 auto;
}

.cloud-entry-switch {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px;
  width: 100%;
  margin: 0 0 16px;
}

.cloud-entry-switch .btn {
  width: 100%;
  min-width: 0;
  min-height: 46px;
  padding: 8px 8px;
  border-radius: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  font-size: 0.98rem;
  font-weight: 700;
  line-height: 1.1;
  white-space: nowrap;
}

.cloud-entry-switch .btn i {
  margin-right: 0 !important;
}

@media (max-width: 575px) {
  body.cloud-login-body.cloud-login-body-public {
    align-items: center;
  }

  .cloud-login-only-shell {
    width: 100%;
    min-height: 100svh;
    padding: 14px;
    align-items: center;
  }

  .cloud-login-only-grid {
    width: 100%;
    max-width: 430px;
  }

  .cloud-login-only-card {
    padding: 24px 18px 20px;
    border-radius: 22px;
  }

  .cloud-entry-switch {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .cloud-entry-switch .btn {
    min-height: 46px;
    font-size: 0.92rem;
  }
}

@media (max-width: 360px) {
  .cloud-entry-switch .btn {
    font-size: 0.86rem;
    padding-left: 6px;
    padding-right: 6px;
  }
}


/* Cloud v1.79 - botões padronizados na área do atleta e busca de torneios */
.cloud-athlete-dashboard-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  width: min(760px, 100%);
  margin-top: 0;
  align-items: stretch;
}

.cloud-athlete-dashboard-actions .cloud-public-nav-btn {
  width: 100%;
  min-height: 44px;
  padding: 10px 10px;
  border-radius: 13px;
  white-space: nowrap;
  font-size: .94rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-search-page-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(130px, 1fr));
  gap: 8px;
  align-items: stretch;
  justify-content: flex-end;
  min-width: 280px;
}

.cloud-search-page-actions .btn {
  width: 100%;
  min-height: 42px;
}

@media (max-width: 1100px) {
  .cloud-athlete-dashboard-actions {
    width: min(640px, 100%);
  }

  .cloud-athlete-dashboard-actions .cloud-public-nav-btn {
    font-size: .9rem;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (max-width: 767px) {
  .cloud-athlete-dashboard-actions {
    width: 100%;
    grid-template-columns: 1fr;
    margin-top: 12px;
  }

  .cloud-athlete-dashboard-actions .cloud-public-nav-btn {
    min-height: 46px;
  }
}

@media (max-width: 575px) {
  .cloud-search-page-actions {
    width: 100%;
    min-width: 0;
    grid-template-columns: 1fr;
  }
}


/* Cloud v1.81 - área do atleta com três botões iguais e visual mais leve */
.cloud-athlete-dashboard-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: min(620px, 100%);
  gap: 10px;
}

.cloud-athlete-dashboard-actions .cloud-public-nav-btn {
  min-height: 46px;
  padding: 11px 14px;
  border-radius: 11px;
  font-size: 1rem;
  font-weight: 800;
}

@media (max-width: 1100px) {
  .cloud-athlete-dashboard-actions {
    width: min(600px, 100%);
  }

  .cloud-athlete-dashboard-actions .cloud-public-nav-btn {
    font-size: .96rem;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 767px) {
  .cloud-athlete-dashboard-actions {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .cloud-athlete-dashboard-actions .cloud-public-nav-btn {
    min-height: 46px;
    font-size: 1rem;
  }
}


/* Cloud v1.82 - correção da busca de torneios no celular
   A regra antiga da vitrine pública escondia qualquer .cloud-public-home-card no mobile.
   A busca separada usa esse card, então precisa permanecer visível. */
@media (max-width: 720px) {
  .cloud-search-page-shell {
    min-height: 100svh;
    width: calc(100% - 20px);
    padding: 14px 0 24px;
    align-items: flex-start;
    justify-content: center;
  }

  .cloud-search-page-card {
    display: block !important;
    margin-top: 0;
    padding: 18px;
  }
}

@media (max-width: 575px) {
  .cloud-search-page-filter {
    grid-template-columns: 1fr !important;
  }

  .cloud-search-page-filter > div,
  .cloud-search-page-filter > div:first-child,
  .cloud-search-page-filter .cloud-public-filter-actions {
    grid-column: auto !important;
  }
}

/* Cloud v1.94 - telemetria do atleta */
.cloud-athlete-telemetry-shell {
  width: min(1220px, calc(100% - 28px));
}

.cloud-athlete-dashboard-hero-clean h1 {
  margin-top: 0;
}

.cloud-athlete-telemetry-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 16px;
}

.cloud-athlete-telemetry-kpi {
  background: #fff;
  border: 1px solid #dce6f1;
  border-radius: 16px;
  padding: 13px 14px;
  box-shadow: 0 12px 28px rgba(16, 32, 51, .08);
  min-width: 0;
}

.cloud-athlete-telemetry-kpi span,
.cloud-athlete-telemetry-kpi small {
  display: block;
  color: #63758c;
  line-height: 1.1;
}

.cloud-athlete-telemetry-kpi span {
  font-size: .74rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.cloud-athlete-telemetry-kpi strong {
  display: block;
  margin: 5px 0 3px;
  color: var(--cloud-primary-dark);
  font-size: 1.35rem;
  line-height: 1;
}

.cloud-athlete-telemetry-kpi small {
  font-size: .78rem;
  font-weight: 700;
}

.cloud-athlete-telemetry-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  gap: 16px;
  margin-bottom: 16px;
}

.cloud-athlete-telemetry-main-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr);
}

.cloud-athlete-telemetry-card {
  padding: 20px;
}

.cloud-athlete-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.cloud-athlete-section-head h2 {
  margin: 0 0 2px;
  color: var(--cloud-primary-dark);
  font-size: 1.25rem;
  font-weight: 800;
}

.cloud-athlete-section-head p {
  margin: 0;
  color: var(--cloud-muted);
  font-size: .96rem;
}

.cloud-athlete-chart-wrap {
  position: relative;
  height: 310px;
  width: 100%;
}

.cloud-athlete-stat-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cloud-athlete-stat-list > div,
.cloud-athlete-empty-box {
  background: #f8fbff;
  border: 1px solid #dce6f1;
  border-radius: 14px;
  padding: 12px;
}

.cloud-athlete-stat-list span {
  display: block;
  color: #677992;
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-athlete-stat-list strong {
  display: block;
  margin-top: 4px;
  color: var(--cloud-primary-dark);
  font-size: 1.35rem;
  line-height: 1;
}

.cloud-athlete-empty-box {
  color: #65768e;
  font-weight: 700;
  text-align: center;
}

.cloud-athlete-finance-mini {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.cloud-athlete-finance-mini span {
  background: #f8fbff;
  border: 1px solid #dce6f1;
  border-radius: 999px;
  padding: 5px 10px;
  color: #64758a;
  font-size: .86rem;
  font-weight: 700;
  white-space: nowrap;
}

.cloud-athlete-finance-mini strong {
  color: var(--cloud-primary-dark);
}

.cloud-athlete-table-wrap {
  border: 1px solid #dce6f1;
  border-radius: 15px;
  overflow: hidden;
}

.cloud-athlete-telemetry-table {
  margin: 0;
}

.cloud-athlete-telemetry-table th {
  background: #f0f5fb;
  color: #173a5c;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .025em;
}

.cloud-athlete-telemetry-table td {
  border-color: #e2eaf3;
}

.cloud-athlete-telemetry-table td small {
  display: block;
  color: #708099;
  font-size: .8rem;
  line-height: 1.1;
  margin-top: 2px;
}

.cloud-athlete-history-list,
.cloud-athlete-partner-list {
  display: grid;
  gap: 10px;
}

.cloud-athlete-history-item,
.cloud-athlete-partner-item {
  background: #f8fbff;
  border: 1px solid #dce6f1;
  border-radius: 14px;
  padding: 12px;
}

.cloud-athlete-history-item strong,
.cloud-athlete-history-item span,
.cloud-athlete-history-item small,
.cloud-athlete-partner-item strong,
.cloud-athlete-partner-item span,
.cloud-athlete-partner-item small {
  display: block;
}

.cloud-athlete-history-item strong,
.cloud-athlete-partner-item strong {
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  line-height: 1.1;
}

.cloud-athlete-history-item span,
.cloud-athlete-partner-item span {
  color: #697a91;
  margin-top: 3px;
  line-height: 1.1;
}

.cloud-athlete-history-item small,
.cloud-athlete-partner-item small {
  color: #173a5c;
  font-weight: 800;
  margin-top: 6px;
}

@media (max-width: 1100px) {
  .cloud-athlete-telemetry-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cloud-athlete-telemetry-grid,
  .cloud-athlete-telemetry-main-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .cloud-athlete-telemetry-shell {
    width: min(100% - 18px, 1220px);
    margin: 14px auto;
  }

  .cloud-athlete-telemetry-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-athlete-telemetry-kpi {
    padding: 11px;
  }

  .cloud-athlete-telemetry-kpi strong {
    font-size: 1.18rem;
  }

  .cloud-athlete-chart-wrap {
    height: 250px;
  }

  .cloud-athlete-stat-list,
  .cloud-athlete-info-list {
    grid-template-columns: 1fr;
  }

  .cloud-athlete-section-head,
  .cloud-athlete-finance-mini {
    display: grid;
    justify-content: stretch;
  }

  .cloud-athlete-finance-mini span {
    border-radius: 12px;
  }
}


/* Cloud v1.80 - refinamento login e solicitação de organizador */
.cloud-login-helper-note {
  margin: 12px 0 10px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(30, 116, 191, 0.08);
  border: 1px solid rgba(30, 116, 191, 0.14);
  color: #46627f;
  font-size: 0.96rem;
  line-height: 1.35;
}

.cloud-login-athlete-actions,
.cloud-login-organizer-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cloud-request-shell {
  width: min(1080px, calc(100% - 28px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 26px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cloud-request-card {
  width: 100%;
  background: rgba(255, 255, 255, 0.97);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 28px;
  box-shadow: 0 24px 58px rgba(6, 17, 30, .24);
  backdrop-filter: blur(10px);
  padding: 26px;
}

.cloud-request-grid {
  display: grid;
  grid-template-columns: minmax(270px, 340px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.cloud-request-side,
.cloud-request-form-wrap {
  min-width: 0;
}

.cloud-request-brand {
  text-align: left;
  margin-bottom: 18px;
}

.cloud-request-brand .cloud-login-icon {
  margin-left: 0;
}

.cloud-request-note,
.cloud-request-panel {
  border-radius: 18px;
  padding: 16px 16px 15px;
  margin-bottom: 14px;
  border: 1px solid rgba(30, 116, 191, 0.14);
  background: rgba(163, 221, 255, 0.18);
}

.cloud-request-note strong,
.cloud-request-panel h3 {
  color: var(--cloud-primary-dark);
}

.cloud-request-note p,
.cloud-request-panel p,
.cloud-request-bullets,
.cloud-request-checklist {
  color: #45617d;
}

.cloud-request-panel h3 {
  margin-bottom: 10px;
  font-size: 1.08rem;
}

.cloud-request-panel-light {
  background: rgba(246, 248, 252, 0.96);
}

.cloud-request-checklist,
.cloud-request-bullets {
  list-style: none;
  padding: 0;
  margin: 0;
}

.cloud-request-checklist li,
.cloud-request-bullets li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 9px;
  line-height: 1.42;
}

.cloud-request-checklist li:last-child,
.cloud-request-bullets li:last-child {
  margin-bottom: 0;
}

.cloud-request-checklist i {
  color: #2c8b57;
  margin-top: 2px;
}

.cloud-request-side-actions {
  margin-top: 2px;
}

.cloud-request-side-actions .btn {
  min-height: 44px;
  border-radius: 14px;
  font-weight: 700;
}

.cloud-request-form-wrap {
  padding: 4px 6px 4px 2px;
}

.cloud-request-form-head {
  margin-bottom: 16px;
}

.cloud-request-form-head h2 {
  color: var(--cloud-primary-dark);
  font-size: 1.46rem;
  margin-bottom: 4px;
}

.cloud-request-form-head p {
  color: #627b95;
  margin-bottom: 0;
}

.cloud-form-section-title {
  margin: 16px 0 10px;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  font-size: 1.02rem;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(20, 41, 70, 0.10);
}

.cloud-form-section-title:first-of-type {
  margin-top: 0;
}

.cloud-request-actions {
  margin-top: 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.cloud-request-actions .btn {
  min-height: 46px;
  border-radius: 14px;
  font-weight: 700;
  min-width: 170px;
}

@media (max-width: 920px) {
  .cloud-request-shell {
    width: min(820px, calc(100% - 22px));
    padding: 18px 0;
  }

  .cloud-request-card {
    padding: 20px;
    border-radius: 24px;
  }

  .cloud-request-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .cloud-request-form-wrap {
    padding: 0;
  }
}

@media (max-width: 575px) {
  .cloud-login-helper-note {
    font-size: 0.92rem;
  }

  .cloud-login-athlete-actions,
  .cloud-login-organizer-actions,
  .cloud-login-secondary-buttons {
    grid-template-columns: 1fr;
  }

  .cloud-request-shell {
    width: calc(100% - 16px);
    min-height: 100svh;
    padding: 10px 0;
  }

  .cloud-request-card {
    border-radius: 22px;
    padding: 18px 14px;
  }

  .cloud-request-brand {
    margin-bottom: 14px;
  }

  .cloud-request-panel,
  .cloud-request-note {
    padding: 14px;
    border-radius: 16px;
  }

  .cloud-request-form-head h2 {
    font-size: 1.28rem;
  }

  .cloud-request-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .cloud-request-actions .btn,
  .cloud-request-side-actions .btn {
    width: 100%;
    min-width: 0;
  }
}


/* Cloud v1.81 - login sem botão redundante e cadastro enxuto do organizador */
.cloud-login-organizer-actions {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr) !important;
}

.cloud-login-organizer-actions .btn,
.cloud-login-athlete-actions .btn {
  white-space: nowrap;
  word-break: keep-all;
  min-height: 48px;
}

.cloud-login-organizer-actions .btn {
  font-size: 0.93rem;
  padding-left: 6px;
  padding-right: 6px;
}

.cloud-request-shell-clean {
  width: min(960px, calc(100% - 28px));
  padding: 26px 0;
}

.cloud-request-card-clean {
  padding: 28px 32px 30px;
}

.cloud-request-clean-head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(20, 41, 70, 0.10);
}

.cloud-request-clean-head .cloud-login-icon {
  flex: 0 0 auto;
  margin: 0;
}

.cloud-request-clean-head h1 {
  margin: 0 0 4px;
  color: var(--cloud-primary-dark);
  font-size: 1.72rem;
  font-weight: 500;
}

.cloud-request-clean-head p {
  margin: 0;
  color: #627b95;
  font-size: 1.02rem;
}

.cloud-request-clean-form .cloud-form-section-title {
  margin-top: 18px;
}

.cloud-request-clean-warning {
  margin-top: 18px;
  padding: 12px 14px;
  border-radius: 15px;
  background: rgba(30, 116, 191, 0.08);
  border: 1px solid rgba(30, 116, 191, 0.13);
  color: #405c78;
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.35;
}

.cloud-request-clean-warning i {
  color: var(--cloud-primary-dark);
}

@media (max-width: 575px) {
  .cloud-login-organizer-actions,
  .cloud-login-athlete-actions {
    grid-template-columns: 1fr !important;
  }

  .cloud-login-organizer-actions .btn,
  .cloud-login-athlete-actions .btn {
    font-size: 0.96rem;
  }

  .cloud-request-shell-clean {
    width: calc(100% - 16px);
    padding: 10px 0;
  }

  .cloud-request-card-clean {
    padding: 18px 14px 20px;
    border-radius: 22px;
  }

  .cloud-request-clean-head {
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
    padding-bottom: 14px;
  }

  .cloud-request-clean-head .cloud-login-icon {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    font-size: 1.25rem;
  }

  .cloud-request-clean-head h1 {
    font-size: 1.42rem;
  }

  .cloud-request-clean-head p {
    font-size: 0.95rem;
  }

  .cloud-request-clean-form .cloud-form-section-title {
    margin-top: 14px;
  }
}

@media (max-width: 390px) {
  .cloud-entry-switch .btn,
  .cloud-login-organizer-actions .btn,
  .cloud-login-athlete-actions .btn {
    font-size: 0.9rem;
  }
}


/* Cloud v1.82 - meu cadastro do organizador */
.cloud-profile-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.cloud-profile-badges {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.cloud-profile-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 18px;
  align-items: start;
}

.cloud-profile-info-list {
  display: grid;
  gap: 10px;
}

.cloud-profile-info-list > div {
  padding: 12px 14px;
  border-radius: 15px;
  background: #f8fbff;
  border: 1px solid #dce7f3;
}

.cloud-profile-info-list span {
  display: block;
  color: #6b7d90;
  font-size: .92rem;
  line-height: 1.15;
  margin-bottom: 3px;
}

.cloud-profile-info-list strong {
  color: var(--cloud-primary-dark);
  font-size: 1.03rem;
  line-height: 1.2;
  word-break: break-word;
}

.cloud-profile-side-card .btn {
  min-height: 44px;
  border-radius: 13px;
  font-weight: 700;
}

@media (max-width: 992px) {
  .cloud-profile-grid {
    grid-template-columns: 1fr;
  }

  .cloud-profile-side-card {
    order: -1;
  }
}

@media (max-width: 575px) {
  .cloud-profile-head {
    align-items: stretch;
  }

  .cloud-profile-badges {
    justify-content: flex-start;
  }
}


/* Cloud v1.82 - Mercado Pago OAuth e ajustes de campos mascarados */
.cloud-mp-card {
  max-width: 980px;
  margin: 0 auto;
}

.cloud-mp-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.cloud-mp-status-badge {
  font-size: .95rem;
  border-radius: 999px;
  padding: 9px 13px;
  white-space: nowrap;
}

.cloud-mp-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
  gap: 16px;
}

.cloud-mp-panel {
  border: 1px solid rgba(20, 41, 70, 0.10);
  border-radius: 18px;
  padding: 16px;
  background: rgba(255,255,255,.72);
}

.cloud-mp-panel-soft {
  background: rgba(30, 116, 191, 0.07);
  border-color: rgba(30, 116, 191, 0.13);
}

.cloud-mp-panel h2 {
  color: var(--cloud-primary-dark);
  font-size: 1.16rem;
  margin: 0 0 12px;
}

.cloud-mp-panel p {
  color: #48647e;
}

.cloud-code-break {
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: .92rem;
}

@media (max-width: 780px) {
  .cloud-mp-head {
    flex-direction: column;
  }

  .cloud-mp-grid {
    grid-template-columns: 1fr;
  }
}


/* Cloud v2.00 - Pix da inscrição do atleta */
.cloud-pix-modal .modal-content {
  border: 0;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
}
.cloud-pix-modal .modal-header {
  background: linear-gradient(135deg, #142437, #21496d);
  color: #fff;
  border-bottom: 0;
  align-items: flex-start;
}
.cloud-pix-modal .modal-header small { color: rgba(255,255,255,.78); }
.cloud-pix-modal .btn-close { filter: invert(1); opacity: .9; }
.cloud-pix-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}
.cloud-pix-summary div {
  background: #f6f9fd;
  border: 1px solid #dce6f1;
  border-radius: 14px;
  padding: 9px 11px;
  min-width: 0;
}
.cloud-pix-summary span {
  display: block;
  color: #6c7d91;
  font-size: .86rem;
}
.cloud-pix-summary strong {
  display: block;
  color: #142437;
  font-size: 1.03rem;
  overflow-wrap: anywhere;
}
.cloud-pix-qr-wrap {
  display: flex;
  justify-content: center;
  margin: 8px 0 10px;
}
.cloud-pix-qr-wrap img {
  width: 190px;
  height: 190px;
  object-fit: contain;
  border-radius: 16px;
  border: 1px solid #dce6f1;
  padding: 8px;
  background: #fff;
}
.cloud-pix-code {
  font-size: .82rem;
  line-height: 1.25;
  resize: none;
}
.cloud-pix-waiting {
  border-radius: 14px;
  padding: 10px 12px;
  background: #fff8e6;
  border: 1px solid #ffdda6;
  color: #725300;
}
@media (max-width: 575px) {
  .cloud-pix-modal .modal-dialog { margin: 10px; }
  .cloud-pix-summary { grid-template-columns: 1fr; }
  .cloud-pix-qr-wrap img { width: 160px; height: 160px; }
}

.cloud-payment-pending-list { display: grid; gap: 10px; }
.cloud-payment-pending-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #dce6f1;
  border-radius: 16px;
  background: #f8fbff;
}
.cloud-payment-pending-item strong { display: block; color: #142437; }
.cloud-payment-pending-item span { display: block; color: #6b7f96; }
.cloud-payment-pending-right { display: flex; align-items: center; gap: 10px; }
@media (max-width: 575px) {
  .cloud-payment-pending-item { align-items: stretch; flex-direction: column; }
  .cloud-payment-pending-right { justify-content: space-between; }
}


/* Cloud v1.86 - Novo torneio: categorias em uma linha no desktop */
@media (min-width: 1200px) {
  .cloud-category-builder-form .cloud-cat-inline-row {
    display: grid;
    grid-template-columns:
      minmax(150px, 1.05fr)
      minmax(112px, .72fr)
      minmax(88px, .56fr)
      minmax(94px, .62fr)
      minmax(72px, .46fr)
      minmax(90px, .58fr)
      minmax(86px, .56fr)
      minmax(165px, 1.22fr)
      minmax(118px, .66fr);
    gap: 10px;
    align-items: end;
    margin-left: 0;
    margin-right: 0;
  }

  .cloud-category-builder-form .cloud-cat-inline-row > [class*="col-"] {
    width: auto;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    flex: unset;
  }

  .cloud-category-builder-form .cloud-cat-inline-row .form-label {
    white-space: nowrap;
    font-size: .92rem;
  }

  .cloud-category-builder-form .cloud-cat-inline-row .form-control,
  .cloud-category-builder-form .cloud-cat-inline-row .form-select {
    min-height: 42px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .cloud-category-builder-form .cloud-cat-inline-actions {
    align-self: end;
  }

  .cloud-category-builder-form .cloud-cat-inline-actions-inner {
    display: grid;
    gap: 6px;
  }

  .cloud-category-builder-form .cloud-cat-inline-actions .btn {
    width: 100%;
    min-height: 42px;
    padding-left: 8px;
    padding-right: 8px;
    white-space: nowrap;
  }
}

@media (max-width: 1199.98px) {
  .cloud-category-builder-form .cloud-cat-inline-actions-inner {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
    width: 100%;
  }

  .cloud-category-builder-form .cloud-cat-inline-actions .btn {
    min-height: 42px;
  }
}

@media (max-width: 575px) {
  .cloud-category-builder-form .cloud-cat-inline-actions-inner {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cloud-category-builder-form .cloud-cat-inline-actions .btn {
    width: 100%;
  }
}



/* Cloud v1.88 - Novo torneio: modo demonstração e cards de categorias */
.cloud-demo-switch-card {
  height: 100%;
  padding: 16px 18px;
  border: 1px solid #d8e5f2;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f9fbfe 100%);
  box-shadow: 0 10px 24px rgba(16, 35, 62, .05);
}

.cloud-demo-switch-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.cloud-demo-switch-copy {
  min-width: 0;
}

.cloud-demo-switch-title {
  display: block;
  margin: 0;
  color: var(--cloud-dark);
  font-size: 1.05rem;
  font-weight: 700;
  cursor: pointer;
}

.cloud-demo-switch-subtitle {
  margin-top: 5px;
  color: var(--cloud-muted);
  font-size: .93rem;
  line-height: 1.45;
}

.cloud-demo-switch-control {
  flex: 0 0 auto;
  min-height: 32px;
  display: flex;
  align-items: center;
}

.cloud-demo-switch-control .form-check-input {
  float: none;
  margin: 0;
  width: 3rem;
  height: 1.6rem;
  cursor: pointer;
}

.cloud-category-summary-grid-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.cloud-category-summary-card {
  position: relative;
  overflow: hidden;
  border: 1px solid #dfe7f1;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  box-shadow: 0 12px 24px rgba(16, 35, 62, .06);
  padding: 0;
}

.cloud-category-summary-topline {
  height: 4px;
  background: linear-gradient(90deg, var(--cloud-primary) 0%, #4aa3ff 100%);
}

.cloud-category-summary-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px 12px;
}

.cloud-category-summary-title-wrap {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  flex: 1 1 auto;
}

.cloud-category-summary-title-box {
  min-width: 0;
}

.cloud-category-summary-title-box strong {
  display: block;
  color: var(--cloud-dark);
  font-size: 1rem;
  line-height: 1.2;
}

.cloud-category-summary-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
}

.cloud-category-summary-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #edf4fb;
  border: 1px solid #d8e5f2;
  color: #4f647b;
  font-size: .78rem;
  font-weight: 600;
  line-height: 1.15;
}

.cloud-category-summary-career {
  flex: 0 0 auto;
  max-width: 190px;
  text-align: center;
  border-radius: 999px;
  padding: 8px 10px;
  font-size: .77rem;
  line-height: 1.2;
  font-weight: 700;
  border: 1px solid #d8e6f3;
  background: #f5f9fe;
  color: var(--cloud-primary-dark);
}

.cloud-category-summary-career.is-valid {
  background: #eef8f0;
  border-color: #c7e6cd;
  color: #22663a;
}

.cloud-category-summary-career.is-recreational {
  background: #fff8e6;
  border-color: #eed89c;
  color: #6b4d0c;
}

.cloud-category-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 0 16px 14px;
}

.cloud-category-summary-info {
  border: 1px solid #e4edf7;
  border-radius: 14px;
  background: #f8fbff;
  padding: 10px 11px;
  min-width: 0;
}

.cloud-category-summary-info span {
  display: block;
  color: #6a7e94;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 4px;
  line-height: 1.2;
  font-weight: 700;
}

.cloud-category-summary-info strong {
  display: block;
  color: var(--cloud-dark);
  font-size: .92rem;
  line-height: 1.3;
  word-break: break-word;
}

.cloud-category-summary-info-wide {
  grid-column: 1 / -1;
}

.cloud-category-summary-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 16px 15px;
  border-top: 1px solid #e7eef6;
  background: #fbfdff;
}

.cloud-category-summary-actions .btn {
  min-width: 110px;
}

@media (max-width: 1199.98px) {
  .cloud-category-summary-grid-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .cloud-demo-switch-head {
    align-items: center;
  }

  .cloud-category-summary-head {
    flex-direction: column;
  }

  .cloud-category-summary-career {
    width: 100%;
    max-width: none;
  }

  .cloud-category-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .cloud-demo-switch-card {
    padding: 14px;
  }

  .cloud-demo-switch-head {
    align-items: flex-start;
    gap: 10px;
  }

  .cloud-demo-switch-title {
    font-size: 1rem;
  }

  .cloud-demo-switch-subtitle {
    font-size: .88rem;
  }

  .cloud-category-summary-head,
  .cloud-category-summary-grid,
  .cloud-category-summary-actions {
    padding-left: 12px;
    padding-right: 12px;
  }

  .cloud-category-summary-grid,
  .cloud-category-summary-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cloud-category-summary-actions .btn {
    width: 100%;
    min-width: 0;
  }
}

/* Cloud v1.87 - Novo torneio mais compacto */
.cloud-torneio-main-grid,
.cloud-torneio-dates-grid {
  display: grid;
  gap: 12px;
}

.cloud-torneio-main-grid {
  grid-template-columns: 2.2fr 1.5fr 1.15fr .5fr;
}

.cloud-torneio-dates-grid {
  grid-template-columns: 1fr 1fr 1fr 1fr .78fr;
}

.cloud-torneio-main-grid .form-label,
.cloud-torneio-dates-grid .form-label {
  white-space: nowrap;
  margin-bottom: 6px;
}

.cloud-torneio-main-grid .form-control,
.cloud-torneio-dates-grid .form-control {
  min-height: 40px;
}

.cloud-weekday-hint {
  display: inline-flex;
  align-items: center;
  margin-left: 6px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #eef4fb;
  border: 1px solid #dbe7f4;
  color: #60758e;
  font-size: .78rem;
  font-weight: 700;
  vertical-align: middle;
}

@media (max-width: 1199.98px) {
  .cloud-torneio-main-grid {
    grid-template-columns: 1.8fr 1.3fr 1fr .55fr;
  }

  .cloud-torneio-dates-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .cloud-torneio-main-grid,
  .cloud-torneio-dates-grid {
    grid-template-columns: 1fr;
  }

  .cloud-weekday-hint {
    margin-left: 4px;
  }
}

/* Ajuste fino da linha de categorias no novo torneio */
@media (min-width: 1200px) {
  .cloud-category-builder-form .cloud-cat-inline-row {
    grid-template-columns:
      minmax(138px, 1fr)
      minmax(106px, .68fr)
      minmax(84px, .48fr)
      minmax(88px, .54fr)
      minmax(64px, .40fr)
      minmax(78px, .46fr)
      minmax(72px, .42fr)
      minmax(168px, 1.08fr)
      minmax(144px, .74fr);
  }

  .cloud-category-builder-form .cloud-cat-inline-row .form-label {
    font-size: .9rem;
  }

  .cloud-category-builder-form .cloud-cat-inline-actions .btn {
    padding-left: 10px;
    padding-right: 10px;
    font-size: .96rem;
  }
}


/* Cloud v1.88 - confirmação automática do Pix do atleta */
.cloud-pix-actions .btn[disabled] {
  opacity: .72;
  cursor: wait;
}

.cloud-pix-waiting-ok {
  background: #dff6e8 !important;
  border-color: #9bd9b4 !important;
  color: #0f6b38 !important;
}

.cloud-pix-waiting-error {
  background: #fff4d5 !important;
  border-color: #f0cf78 !important;
  color: #805c00 !important;
}

/* Cloud v1.30 - cobrança Pix agrupada compacta */
.cloud-public-shell-wide {
  width: min(1040px, calc(100% - 28px));
}

.cloud-public-layout {
  width: 100%;
}

.cloud-public-layout.has-side {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .85fr);
  gap: 18px;
  align-items: start;
}

.cloud-public-card-main {
  min-width: 0;
}

.cloud-public-head-compact h1 {
  margin-top: 8px;
  font-size: clamp(1.85rem, 2vw, 2.5rem);
}

.cloud-public-head-compact p {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.cloud-public-alert-compact {
  padding: 12px 14px;
}

.cloud-public-summary-compact > div {
  padding: 11px 12px;
}

.cloud-public-qr-compact img {
  width: 190px;
  height: 190px;
}

.cloud-public-action-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}

.cloud-public-side-card {
  min-width: 0;
}

.cloud-public-side-head h2 {
  margin: 0;
  color: var(--cloud-dark);
  font-size: 1.2rem;
  font-weight: 600;
}

.cloud-public-side-head p {
  margin: 6px 0 0;
  color: var(--cloud-muted);
  font-size: .94rem;
}

.cloud-public-side-kpis {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 14px;
}

.cloud-public-side-kpis > div {
  border: 1px solid var(--cloud-border);
  background: #f8fbff;
  border-radius: 14px;
  padding: 11px 12px;
}

.cloud-public-side-kpis span {
  display: block;
  color: var(--cloud-muted);
  font-size: .82rem;
}

.cloud-public-side-kpis strong {
  display: block;
  color: var(--cloud-dark);
  font-size: 1.25rem;
}

.cloud-public-side-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.cloud-public-side-item {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  border: 1px solid var(--cloud-border);
  background: #fbfdff;
  border-radius: 14px;
  padding: 11px 12px;
}

.cloud-public-side-item-num {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #e7f0fb;
  color: var(--cloud-primary-dark);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.cloud-public-side-item-title {
  color: var(--cloud-dark);
  font-weight: 600;
  line-height: 1.25;
}

.cloud-public-side-item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.cloud-public-side-item-meta span {
  display: inline-flex;
  align-items: center;
  border: 1px solid #dbe6f3;
  background: #fff;
  color: #40536b;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: .8rem;
  line-height: 1;
}

@media (max-width: 900px) {
  .cloud-public-layout.has-side {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .cloud-public-action-grid,
  .cloud-public-side-kpis {
    grid-template-columns: 1fr;
  }

  .cloud-public-qr-compact img {
    width: 176px;
    height: 176px;
  }
}


/* Cloud v2.10 - acabamento para tablet/iPad e menos redundância nas inscrições */
@media (min-width: 768px) and (max-width: 1180px) {
  :root {
    --shell-x: 16px;
    --shell-top: 14px;
    --header-h: 74px;
  }

  .app-header {
    border-radius: 18px;
  }

  .app-header .container-fluid {
    padding-left: 16px;
    padding-right: 16px;
    gap: 10px !important;
  }

  .app-header .container-fluid > div:first-child {
    flex: 0 0 auto;
    min-width: 205px;
    max-width: 255px;
  }

  .app-header h1 {
    font-size: clamp(1.08rem, 2.1vw, 1.34rem);
    line-height: 1.05;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .app-credit {
    font-size: .68rem;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 255px;
  }

  .cloud-app-info {
    display: none !important;
  }

  .cloud-app-actions {
    flex: 1 1 auto;
    min-width: 0;
    gap: 6px;
    flex-wrap: nowrap;
    justify-content: flex-end;
  }

  .cloud-app-actions .btn {
    white-space: nowrap;
    flex: 0 0 auto;
    min-height: 32px;
    padding: .36rem .52rem;
    font-size: .8rem;
    line-height: 1.1;
  }

  .cloud-app-actions .btn i {
    margin-right: .25rem !important;
  }
}

@media (min-width: 992px) and (max-width: 1080px) {
  :root {
    --sidebar-w: 205px;
  }

  .app-sidebar {
    padding: 12px;
    gap: 7px;
  }

  .menu-btn {
    padding: 9px 10px;
    font-size: .95rem;
  }

  .sidebar-footer .btn {
    font-size: .86rem;
  }

  .app-main {
    padding-left: calc(var(--shell-x) + var(--sidebar-w) + 16px);
    padding-right: var(--shell-x);
  }

  #formInscricao {
    display: grid;
    grid-template-columns:
      minmax(125px, 1.05fr)
      minmax(105px, .78fr)
      minmax(135px, 1fr)
      minmax(135px, 1fr)
      minmax(96px, .62fr);
    gap: 8px;
    align-items: end;
  }

  #formInscricao > [class*="col-"] {
    width: auto;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }

  #formInscricao .form-label {
    margin-bottom: 5px;
    font-size: .9rem;
  }

  #formInscricao .form-control,
  #formInscricao .form-select {
    min-height: 38px;
    padding-left: 10px;
    padding-right: 10px;
  }

  #btnAdicionarInscricao {
    width: 100%;
    min-height: 38px;
    padding: .46rem .55rem !important;
    font-size: .82rem;
    line-height: 1.1;
    white-space: nowrap;
  }
}

@media (max-width: 991.98px) {
  .app-header .container-fluid > div:first-child {
    min-width: 0;
  }

  .cloud-app-actions .btn[data-bs-toggle="offcanvas"] {
    flex: 0 0 auto;
  }

  .dupla-card-lista {
    grid-template-columns: 30px minmax(0, 1fr) auto;
  }
}

@media (max-width: 767.98px) {
  #formInscricao {
    row-gap: 10px !important;
  }

  #formInscricao .form-label {
    margin-bottom: 5px;
  }

  .inscricao-grupo > .d-flex:first-child {
    align-items: flex-start !important;
  }
}

/* Cloud v1.88 - Novo torneio: formação das duplas */
.cloud-category-list-table table {
  min-width: 1160px;
}

@media (min-width: 1200px) {
  .cloud-category-builder-form .cloud-cat-inline-row {
    grid-template-columns:
      minmax(140px, .98fr)
      minmax(108px, .66fr)
      minmax(82px, .50fr)
      minmax(88px, .56fr)
      minmax(124px, .74fr)
      minmax(68px, .42fr)
      minmax(88px, .54fr)
      minmax(82px, .52fr)
      minmax(150px, 1.05fr)
      minmax(112px, .62fr);
  }
}

.cloud-invite-message {
  font-size: .95rem;
  line-height: 1.35;
  resize: vertical;
}

/* Cloud v1.89 - ajustes convite de dupla e pagamento com origem do convite */
.cloud-invite-status-grid,
.cloud-dupla-context-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cloud-invite-status-grid > div,
.cloud-dupla-context-grid > div {
  text-align: left;
  padding: 10px 12px;
  border-radius: 14px;
  background: #f8fbff;
  border: 1px solid #dce6f1;
}

.cloud-invite-status-grid span,
.cloud-dupla-context-grid span {
  display: block;
  color: #71839a;
  font-size: .78rem;
  font-weight: 700;
}

.cloud-invite-status-grid strong,
.cloud-dupla-context-grid strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  line-height: 1.16;
  margin-top: 3px;
}

.cloud-invite-message {
  min-height: 150px;
  overflow: auto;
}

.cloud-invite-actions .btn {
  flex: 1 1 160px;
  min-width: 150px;
}

.cloud-dupla-context {
  padding: 12px;
  border-radius: 16px;
  background: #eef7ff;
  border: 1px solid #d8e9fb;
}

.cloud-dupla-context-title {
  color: var(--cloud-primary-dark);
  font-weight: 900;
  margin-bottom: 10px;
}

.cloud-dupla-context-full {
  grid-column: 1 / -1;
}

@media (max-width: 575px) {
  .cloud-invite-status-grid,
  .cloud-dupla-context-grid {
    grid-template-columns: 1fr;
  }

  .cloud-invite-actions .btn {
    width: 100%;
    min-width: 0;
  }
}

/* Cloud v1.87 - Convites múltiplos e cancelamento pelo atleta */
.cloud-invite-pending-list {
  text-align: left;
  padding: 14px;
  border-radius: 18px;
  background: #f8fbff;
  border: 1px solid #dce6f1;
}
.cloud-invite-pending-list h2,
.cloud-invite-pending-list p {
  text-align: center;
}
.cloud-payment-pending-right form {
  margin: 0;
}
@media (max-width: 575px) {
  .cloud-payment-pending-right {
    flex-wrap: wrap;
  }
  .cloud-payment-pending-right .btn,
  .cloud-payment-pending-right form,
  .cloud-payment-pending-right form .btn {
    width: 100%;
  }
}


/* Área do atleta - ações financeiras */
.cloud-athlete-table-actions {
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  gap: .35rem;
  flex-wrap: wrap;
}

.cloud-athlete-table-actions .btn {
  min-width: 92px;
}

@media (max-width: 768px) {
  .cloud-athlete-table-actions {
    display: flex;
    justify-content: flex-start;
  }
  .cloud-athlete-table-actions .btn,
  .cloud-athlete-table-actions form {
    width: 100%;
  }
  .cloud-athlete-table-actions .btn {
    min-width: 100%;
  }
}

/* Cloud v1.90 - Carreira do Atleta / Regras de Evolução */
.cloud-navbar-responsive { position: relative; }
.cloud-nav-toggle {
  display: none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.08);
  color: #fff;
  align-items: center;
  justify-content: center;
  font-size: 1.05rem;
}

.carreira-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 16px;
}
.carreira-hero-main,
.carreira-version-summary { min-height: 100%; }
.carreira-eyebrow {
  display: block;
  color: var(--cloud-muted);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 5px;
}
.carreira-status-badge { font-size: .82rem; padding: 8px 12px; }
.carreira-flow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.carreira-flow span {
  min-width: 46px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #eef5fc;
  border: 1px solid #d6e4f2;
  color: var(--cloud-primary-dark);
  font-weight: 800;
}
.carreira-flow i { color: #7b8da2; }
.carreira-version-summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
}
.carreira-version-summary strong { color: var(--cloud-primary-dark); font-size: 1.35rem; }
.carreira-version-summary span { color: #40546a; }
.carreira-version-summary small { color: var(--cloud-muted); line-height: 1.35; margin-top: 8px; }
.carreira-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 16px;
  align-items: start;
}
.carreira-layout aside { position: sticky; top: 16px; }
.carreira-card-title { margin-bottom: 18px; }
.carreira-card-title > div { display: flex; align-items: flex-start; gap: 12px; }
.carreira-card-title > div > span {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  background: var(--cloud-primary);
  color: #fff;
  font-weight: 800;
}
.carreira-card-title h2 { margin: 0 0 3px; color: var(--cloud-primary-dark); font-size: 1.12rem; font-weight: 800; }
.carreira-card-title p { margin: 0; color: var(--cloud-muted); line-height: 1.35; }
.carreira-note {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  border: 1px solid #d8e7f5;
  background: #f3f8fd;
  border-radius: 13px;
  padding: 11px 13px;
  color: #38536d;
  line-height: 1.4;
}
.carreira-note i { color: var(--cloud-primary); margin-top: 2px; }
.carreira-points-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.carreira-point-card {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px 12px;
  padding: 14px;
  border: 1px solid var(--cloud-border);
  border-radius: 15px;
  background: #fbfdff;
}
.carreira-point-card > i {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  background: #eaf3fb;
  color: var(--cloud-primary);
}
.carreira-point-card > span { font-weight: 750; color: var(--cloud-primary-dark); }
.carreira-point-card .input-group { grid-column: 1 / -1; }
.carreira-muted-list {
  color: var(--cloud-muted);
  border-top: 1px dashed #dce4ed;
  padding-top: 12px;
  line-height: 1.4;
}
.carreira-muted-list span { color: #4c6075; font-weight: 750; }
.carreira-rules-table {
  width: 100%;
  min-width: 820px;
  table-layout: fixed;
}
.carreira-rules-table th { white-space: nowrap; color: #50657b; font-size: .82rem; }
.carreira-rules-table th:nth-child(1),
.carreira-rules-table td:nth-child(1) { width: 105px; }
.carreira-rules-table th:nth-child(2),
.carreira-rules-table td:nth-child(2) { width: 86px; }
.carreira-rules-table th:nth-child(3),
.carreira-rules-table td:nth-child(3) { width: 88px; }
.carreira-rules-table th:nth-child(4),
.carreira-rules-table td:nth-child(4) { width: 94px; }
.carreira-rules-table th:nth-child(5),
.carreira-rules-table td:nth-child(5) { width: 150px; }
.carreira-rules-table th:nth-child(6),
.carreira-rules-table td:nth-child(6) { width: 72px; }
.carreira-rules-table td:nth-child(5) .form-control { min-width: 58px; }
.carreira-rules-table td:nth-child(5) .input-group-text {
  white-space: nowrap;
  padding-left: .6rem;
  padding-right: .6rem;
}
.carreira-rules-table td:last-child { min-width: 180px; }
.carreira-rules-mobile { display: none; }
.carreira-rule-card {
  border: 1px solid var(--cloud-border);
  border-radius: 15px;
  padding: 13px;
  background: #fbfdff;
  margin-bottom: 10px;
}
.carreira-rule-card label { color: #53677c; font-size: .82rem; font-weight: 650; }
.carreira-rule-card .form-control,
.carreira-rule-card .form-select { margin-top: 4px; }
.carreira-switch-box {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 10px 14px;
  border-radius: 12px;
  background: #f6f9fc;
  border: 1px solid var(--cloud-border);
  box-sizing: border-box;
}
.carreira-switch-box.form-check {
  padding-left: 14px;
}
.carreira-switch-box .form-check-input {
  float: none;
  margin: 0;
  position: static;
  flex: 0 0 auto;
}
.carreira-switch-box .form-check-label {
  margin: 0;
  line-height: 1.35;
  color: var(--cloud-primary-dark);
}
.carreira-actions-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.carreira-actions-card > div:first-child { display: flex; flex-direction: column; gap: 3px; }
.carreira-actions-card strong { color: var(--cloud-primary-dark); }
.carreira-actions-card span { color: var(--cloud-muted); }
.carreira-version-list { display: flex; flex-direction: column; gap: 8px; }
.carreira-version-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 11px;
  border: 1px solid var(--cloud-border);
  border-radius: 13px;
  color: inherit;
  text-decoration: none;
  background: #fff;
}
.carreira-version-item:hover,
.carreira-version-item.active { border-color: #8fb1d3; background: #f1f7fd; }
.carreira-version-item > div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.carreira-version-item strong { color: var(--cloud-primary-dark); }
.carreira-version-item span:not(.badge) { color: var(--cloud-muted); font-size: .82rem; }
.carreira-history-list { display: flex; flex-direction: column; gap: 12px; max-height: 520px; overflow: auto; }
.carreira-history-item { display: flex; gap: 10px; border-bottom: 1px solid #e7edf4; padding-bottom: 11px; }
.carreira-history-item > i { color: var(--cloud-primary); margin-top: 3px; }
.carreira-history-item > div { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.carreira-history-item strong { color: var(--cloud-primary-dark); text-transform: capitalize; }
.carreira-history-item span { color: #53687e; line-height: 1.3; }
.carreira-history-item small { color: var(--cloud-muted); }

.carreira-category-badge,
.cloud-career-seal {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: .79rem;
  font-weight: 750;
  line-height: 1.2;
}
.carreira-valida {
  color: #14633d;
  background: #e7f7ef;
  border: 1px solid #bfe8d1;
}
.carreira-recreativa {
  color: #6a4d0e;
  background: #fff7df;
  border: 1px solid #ecdba6;
}
.cloud-public-category-head .cloud-career-seal { margin-top: 8px; }
.cloud-career-message {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  margin-bottom: 14px;
}
.cloud-career-message i { margin-top: 2px; }
.cloud-career-message.carreira-valida,
.cloud-career-message.carreira-recreativa { border-style: solid; }

@media (max-width: 1199.98px) {
  .carreira-layout { grid-template-columns: minmax(0, 1fr) 285px; }
}
@media (max-width: 991.98px) {
  .cloud-navbar-responsive { align-items: center; }
  .cloud-nav-toggle { display: inline-flex; margin-left: auto; }
  .cloud-navbar-responsive [data-cloud-nav-menu] {
    display: none;
    flex-basis: 100%;
    width: 100%;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.18);
  }
  .cloud-navbar-responsive [data-cloud-nav-menu].is-open { display: flex; }
  .cloud-navbar-responsive [data-cloud-nav-menu] .btn { width: 100%; }
  .carreira-layout { grid-template-columns: 1fr; }
  .carreira-layout aside { position: static; }
}
@media (max-width: 767.98px) {
  .carreira-hero-grid { grid-template-columns: 1fr; }
  .carreira-points-grid { grid-template-columns: 1fr; }
  .carreira-rules-desktop { display: none; }
  .carreira-rules-mobile { display: block; }
  .carreira-actions-card { align-items: stretch; flex-direction: column; }
  .carreira-actions-card .btn { flex: 1 1 auto; }
}
@media (max-width: 575.98px) {
  .carreira-flow { gap: 5px; }
  .carreira-flow span { min-width: 38px; height: 36px; }
  .carreira-flow i { font-size: .78rem; }
  .carreira-category-badge,
  .cloud-career-seal { white-space: normal; }
}

/* Ajustes de especificidade dos selos nas páginas públicas */
.cloud-public-category-head .cloud-career-seal.carreira-valida,
.cloud-public-draw-head .cloud-career-seal.carreira-valida {
  color: #14633d;
  font-size: .79rem;
}
.cloud-public-category-head .cloud-career-seal.carreira-recreativa,
.cloud-public-draw-head .cloud-career-seal.carreira-recreativa {
  color: #6a4d0e;
  font-size: .79rem;
}
.cloud-public-draw-head > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
}

/* ==========================================================
   Fase 2B/2D inicial - Minha Carreira do atleta
   ========================================================== */
.cloud-career-page-shell {
  width: min(1220px, calc(100% - 28px));
  max-width: none;
}

.cloud-career-page-hero {
  margin-bottom: 18px;
}

.cloud-career-eyebrow {
  display: block;
  color: rgba(255,255,255,.74);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  margin-bottom: 5px;
}

.cloud-career-athlete-name {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 4px 0 7px;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
}

.cloud-career-athlete-name i {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  color: #16324f;
  background: rgba(255,255,255,.92);
}

.cloud-career-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) repeat(2, minmax(160px, .55fr));
  gap: 14px;
  margin-bottom: 14px;
}

.cloud-career-main-card {
  grid-row: span 2;
  padding: 22px;
  background:
    radial-gradient(circle at top right, rgba(65, 121, 177, .13), transparent 34%),
    #fff;
}

.cloud-career-main-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.cloud-career-card-label,
.cloud-career-kpi-card > span {
  display: block;
  color: var(--cloud-muted);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.cloud-career-current-level {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1.05;
  margin-top: 4px;
}

.cloud-career-next-level {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #48627d;
  font-weight: 650;
  margin-top: 7px;
}

.cloud-career-status-badge {
  border-radius: 999px;
  padding: 8px 11px;
  font-size: .78rem;
}

.cloud-career-general-progress {
  margin-top: 22px;
}

.cloud-career-progress-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 7px;
  color: #50657b;
}

.cloud-career-progress-head strong {
  color: var(--cloud-primary-dark);
}

.cloud-career-progress {
  height: 11px;
  background: #e8eef5;
  border-radius: 999px;
  overflow: hidden;
}

.cloud-career-progress .progress-bar,
.cloud-career-preview-progress .progress-bar {
  background: linear-gradient(90deg, var(--cloud-primary), #2f7bb4, var(--cloud-accent));
  border-radius: 999px;
}

.cloud-career-message {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 18px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid #d6e4f2;
  background: #f4f9ff;
  color: #284c70;
  line-height: 1.35;
}

.cloud-career-message.is-achieved {
  border-color: #bfe8d1;
  background: #eaf8f1;
  color: #17603d;
}

.cloud-career-message i {
  margin-top: 2px;
}

.cloud-career-rule-summary {
  display: grid;
  gap: 4px;
  margin-top: 16px;
  padding-top: 15px;
  border-top: 1px dashed #dbe4ee;
}

.cloud-career-rule-summary > span {
  color: var(--cloud-muted);
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.cloud-career-rule-summary strong {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  color: var(--cloud-primary-dark);
  font-size: 1.03rem;
}

.cloud-career-rule-summary em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 28px;
  padding: 0 9px;
  border-radius: 999px;
  background: var(--cloud-primary);
  color: #fff;
  font-style: normal;
  font-size: .78rem;
}

.cloud-career-rule-summary small {
  color: var(--cloud-muted);
}

.cloud-career-kpi-card {
  min-height: 128px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 17px;
}

.cloud-career-kpi-card > strong {
  color: var(--cloud-primary-dark);
  font-size: 2rem;
  line-height: 1;
  margin: 7px 0 5px;
}

.cloud-career-kpi-card > small {
  color: var(--cloud-muted);
}

.cloud-career-kpi-card.is-warning {
  border-color: #ead9a4;
  background: #fffbef;
}

.cloud-career-progress-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  margin-bottom: 14px;
}

.cloud-career-path-card {
  padding: 18px;
}

.cloud-career-path-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.cloud-career-path-icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: #edf5fc;
  color: var(--cloud-primary);
}

.cloud-career-path-head span,
.cloud-career-path-head strong {
  display: block;
}

.cloud-career-path-head span {
  color: var(--cloud-muted);
  font-size: .82rem;
}

.cloud-career-path-head strong {
  color: var(--cloud-primary-dark);
  font-size: 1.3rem;
}

.cloud-career-path-card > small {
  display: block;
  color: var(--cloud-muted);
  margin-top: 10px;
}

.cloud-career-operator-pill {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border: 1px dashed #c9d5e3;
  border-radius: 16px;
  background: rgba(255,255,255,.7);
  text-align: center;
}

.cloud-career-operator-pill span {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--cloud-primary);
  color: #fff;
  font-weight: 800;
}

.cloud-career-operator-pill small {
  max-width: 70px;
  color: var(--cloud-muted);
  line-height: 1.1;
}

.cloud-career-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .7fr);
  gap: 14px;
  margin-bottom: 14px;
}

.cloud-career-chart-card,
.cloud-career-breakdown-card,
.cloud-career-history-card {
  padding: 20px;
}

.cloud-career-chart-wrap {
  min-height: 320px;
  height: 320px;
}

.cloud-career-breakdown-list {
  display: grid;
  gap: 9px;
}

.cloud-career-breakdown-list > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 12px;
  border: 1px solid var(--cloud-border);
  border-radius: 13px;
  background: #fbfdff;
}

.cloud-career-breakdown-list span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #425b74;
}

.cloud-career-breakdown-list i {
  width: 25px;
  color: var(--cloud-primary);
  text-align: center;
}

.cloud-career-breakdown-list strong {
  color: var(--cloud-primary-dark);
  font-size: 1.15rem;
}

.cloud-career-history-table-wrap {
  border: 1px solid var(--cloud-border);
  border-radius: 15px;
  overflow: hidden;
}

.cloud-career-history-table {
  min-width: 1050px;
}

.cloud-career-history-table thead th {
  color: #53677c;
  font-size: .76rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  background: #f6f9fc;
  white-space: nowrap;
}

.cloud-career-history-table td,
.cloud-career-history-table th {
  padding: 11px 12px;
  border-color: #e5ebf2;
}

.cloud-career-result-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  white-space: nowrap;
}

.cloud-career-result-label i {
  color: #d59a12;
}

.cloud-career-history-mobile {
  display: none;
}

.cloud-career-history-mobile-item {
  display: grid;
  gap: 4px;
  padding: 13px;
  border: 1px solid var(--cloud-border);
  border-radius: 14px;
  background: #fff;
}

.cloud-career-history-mobile-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.cloud-career-history-mobile-item > strong {
  color: var(--cloud-primary-dark);
}

.cloud-career-history-mobile-item > span,
.cloud-career-history-mobile-item > small {
  color: var(--cloud-muted);
}

.cloud-career-footnote {
  border-radius: 14px;
}

/* Resumo da carreira na página principal do atleta */
.cloud-career-preview-card {
  overflow: hidden;
}

.cloud-career-preview-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1.2fr) repeat(3, minmax(130px, .65fr));
  gap: 10px;
}

.cloud-career-preview-grid > div {
  padding: 12px 13px;
  border: 1px solid var(--cloud-border);
  border-radius: 13px;
  background: #fbfdff;
}

.cloud-career-preview-grid span,
.cloud-career-preview-grid strong,
.cloud-career-preview-grid small {
  display: block;
}

.cloud-career-preview-grid span {
  color: var(--cloud-muted);
  font-size: .76rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-career-preview-grid strong {
  color: var(--cloud-primary-dark);
  font-size: 1.28rem;
  margin-top: 4px;
}

.cloud-career-preview-grid small {
  color: var(--cloud-muted);
  margin-top: 2px;
}

.cloud-career-preview-level {
  background: linear-gradient(135deg, #f3f8fd, #fff) !important;
}

.cloud-career-preview-progress {
  height: 9px;
  margin: 13px 0 9px;
  border-radius: 999px;
  background: #e8eef5;
}

.cloud-career-preview-message {
  color: #48627d;
  line-height: 1.35;
}

@media (max-width: 1100px) {
  .cloud-career-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cloud-career-main-card {
    grid-column: 1 / -1;
    grid-row: auto;
  }
  .cloud-career-content-grid {
    grid-template-columns: 1fr;
  }
  .cloud-career-preview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .cloud-career-overview-grid,
  .cloud-career-progress-grid,
  .cloud-career-preview-grid {
    grid-template-columns: 1fr;
  }
  .cloud-career-operator-pill {
    min-height: 82px;
  }
  .cloud-career-main-top,
  .cloud-career-history-mobile-head {
    align-items: flex-start;
  }
  .cloud-career-history-table-wrap {
    display: none;
  }
  .cloud-career-history-mobile {
    display: grid;
    gap: 10px;
  }
  .cloud-career-chart-wrap {
    min-height: 275px;
    height: 275px;
  }
}

@media (max-width: 575.98px) {
  .cloud-career-main-card,
  .cloud-career-chart-card,
  .cloud-career-breakdown-card,
  .cloud-career-history-card {
    padding: 15px;
  }
  .cloud-career-main-top {
    flex-direction: column;
  }
  .cloud-career-status-badge {
    align-self: flex-start;
  }
  .cloud-career-history-mobile-head {
    flex-direction: column;
  }
}

/* Carreira do Atleta - correções preservadas separadas do histórico principal */
.cloud-career-corrections-card {
  margin-top: 14px;
  padding: 0;
  overflow: hidden;
}

.cloud-career-corrections-card details {
  width: 100%;
}

.cloud-career-corrections-card summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  cursor: pointer;
  list-style: none;
  background: #fffaf0;
}

.cloud-career-corrections-card summary::-webkit-details-marker {
  display: none;
}

.cloud-career-corrections-card summary::after {
  content: '\f078';
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  color: #8b6a1a;
  transition: transform .18s ease;
}

.cloud-career-corrections-card details[open] summary::after {
  transform: rotate(180deg);
}

.cloud-career-corrections-card summary > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.cloud-career-corrections-intro {
  margin: 0;
  padding: 14px 20px;
  color: #6c5a30;
  border-top: 1px solid #f0dfad;
  background: #fffdf7;
}

.cloud-career-corrections-card .cloud-career-history-table-wrap {
  margin: 0 20px 20px;
}

.cloud-career-corrections-table {
  min-width: 860px;
}

.cloud-career-corrections-table tbody tr {
  background: #fffdf8;
}

.cloud-career-corrections-mobile {
  padding: 0 15px 15px;
}

.cloud-career-corrections-mobile .cloud-career-history-mobile-item {
  background: #fffdf8;
  border-color: #ead9a4;
}

@media (max-width: 575.98px) {
  .cloud-career-corrections-card summary {
    padding: 14px 15px;
    align-items: flex-start;
  }

  .cloud-career-corrections-intro {
    padding: 12px 15px;
  }
}

/* Cloud v1.96 - Identificador social, confirmação e convite interno de dupla */
.cloud-partner-search {
  position: relative;
}
.cloud-partner-results {
  display: none;
  margin-top: 10px;
  border: 1px solid #d8e6f4;
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 16px 34px rgba(18, 42, 70, .08);
}
.cloud-partner-results.is-open { display: block; }
.cloud-partner-results-head {
  padding: 12px 14px 10px;
  border-bottom: 1px solid #e7eef6;
  background: #f7fbff;
}
.cloud-partner-results-head strong {
  display: block;
  color: var(--cloud-primary-dark);
  font-size: .92rem;
  margin-bottom: 2px;
}
.cloud-partner-results-head span {
  color: var(--cloud-muted);
  font-size: .82rem;
}
.cloud-partner-results-columns {
  display: grid;
  grid-template-columns: minmax(150px, 1.2fr) minmax(120px, 1fr) minmax(130px, 1fr) 130px;
  gap: 12px;
  padding: 10px 14px;
  background: #fbfdff;
  border-bottom: 1px solid #e7eef6;
}
.cloud-partner-results-columns span {
  color: #6d8094;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.cloud-partner-results-list {
  display: flex;
  flex-direction: column;
}
.cloud-partner-result-item {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(150px, 1.2fr) minmax(120px, 1fr) minmax(130px, 1fr) 130px;
  gap: 12px;
  align-items: center;
  text-align: left;
  border: 0;
  border-bottom: 1px solid #e8eef5;
  background: #fff;
  padding: 12px 14px;
  color: var(--cloud-primary-dark);
  transition: background .12s ease;
}
.cloud-partner-result-item:last-child { border-bottom: 0; }
.cloud-partner-result-item:hover,
.cloud-partner-result-item:focus { background: #f4f9ff; }
.cloud-partner-result-item:focus-visible {
  outline: 0;
  box-shadow: inset 0 0 0 2px rgba(45, 111, 177, .18);
}
.cloud-partner-result-cell {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cloud-partner-result-label {
  display: none;
  color: #6d8094;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.cloud-partner-result-value {
  color: var(--cloud-primary-dark);
  font-size: .94rem;
  line-height: 1.25;
  word-break: break-word;
}
.cloud-partner-result-value.is-strong {
  font-size: .98rem;
  font-weight: 800;
}
.cloud-partner-result-action {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  color: var(--cloud-primary);
  font-size: .86rem;
  font-weight: 700;
  white-space: nowrap;
}
.cloud-partner-empty {
  padding: 15px 14px;
  color: var(--cloud-muted);
  font-size: .9rem;
}
@media (max-width: 767.98px) {
  .cloud-partner-results-columns {
    display: none;
  }
  .cloud-partner-result-item {
    grid-template-columns: 1fr;
    gap: 7px;
    padding: 12px 13px;
  }
  .cloud-partner-result-cell {
    gap: 1px;
  }
  .cloud-partner-result-label {
    display: block;
  }
  .cloud-partner-result-action {
    justify-content: flex-start;
    padding-top: 3px;
  }
}
.cloud-partner-selected {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 132px;
  align-items: center;
  gap: 12px;
  border: 1px solid #b9d6f2;
  border-radius: 14px;
  padding: 12px 13px;
  background: #f3f8fe;
}
.cloud-partner-selected > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cloud-partner-selected strong { color: var(--cloud-primary-dark); }
.cloud-partner-selected span { color: var(--cloud-muted); font-size: .86rem; }
.cloud-partner-change-btn {
  width: 132px;
  min-height: 42px;
  padding-left: 14px;
  padding-right: 14px;
  white-space: nowrap;
}
@media (max-width: 767.98px) {
  .cloud-partner-selected {
    grid-template-columns: 1fr;
  }
  .cloud-partner-change-btn {
    width: 100%;
  }
}
.cloud-payment-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.cloud-payment-choice-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 13px;
  border: 1px solid var(--cloud-border);
  border-radius: 14px;
  background: #fbfdff;
  cursor: pointer;
}
.cloud-payment-choice-item:has(input:checked) {
  border-color: #77aee4;
  background: #eef6ff;
  box-shadow: inset 0 0 0 1px rgba(34, 95, 155, .08);
}
.cloud-payment-choice-item input { margin-top: 4px; }
.cloud-payment-choice-item span { display: flex; flex-direction: column; gap: 3px; }
.cloud-payment-choice-item strong { color: var(--cloud-primary-dark); }
.cloud-payment-choice-item small { color: var(--cloud-muted); line-height: 1.3; }
.cloud-social-handle {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 9px;
  background: #eaf3fb;
  color: var(--cloud-primary-dark);
  font-weight: 700;
  font-size: .82rem;
}
.cloud-confirmation-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.cloud-invite-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.cloud-invite-dashboard-card {
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  padding: 14px;
  background: #fbfdff;
}
.cloud-invite-dashboard-card h3 { margin: 0 0 10px; color: var(--cloud-primary-dark); font-size: 1rem; }
.cloud-invite-dashboard-card .cloud-athlete-invite-item { padding: 10px 0; border-bottom: 1px solid #e7edf5; }
.cloud-invite-dashboard-card .cloud-athlete-invite-item:last-child { border-bottom: 0; }
@media (max-width: 767.98px) {
  .cloud-payment-choice,
  .cloud-invite-dashboard-grid { grid-template-columns: 1fr; }
}

/* Cloud v1.100 - Gênero de atletas e categorias */
.cloud-category-gender-seal {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-top: 7px;
  padding: 5px 9px;
  border: 1px solid #cfe0f1;
  border-radius: 999px;
  background: #f4f8fc;
  color: #294967;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.15;
}

/* Cloud v1.101 - Novo torneio em abas e editor profissional de categorias */
.cloud-tournament-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.cloud-tournament-tab {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 12px 14px;
  border: 1px solid #cfddeb;
  border-radius: 15px;
  background: #fff;
  color: #28445f;
  text-align: left;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.cloud-tournament-tab > span {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #edf4fb;
  color: #23486b;
  font-weight: 800;
}
.cloud-tournament-tab > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.cloud-tournament-tab strong {
  font-size: 1rem;
  color: inherit;
}
.cloud-tournament-tab small {
  color: #718398;
  font-size: .82rem;
}
.cloud-tournament-tab b {
  min-width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #edf4fb;
  color: #23486b;
  font-size: .8rem;
}
.cloud-tournament-tab.is-active {
  border-color: #173a5c;
  background: linear-gradient(135deg, #173a5c 0%, #224d76 100%);
  color: #fff;
  box-shadow: 0 10px 22px rgba(23, 58, 92, .16);
}
.cloud-tournament-tab.is-active > span,
.cloud-tournament-tab.is-active b {
  background: rgba(255,255,255,.16);
  color: #fff;
}
.cloud-tournament-tab.is-active small { color: #d9e7f5; }
.cloud-tab-panel-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
.cloud-category-editor-card {
  border: 1px solid #d5e2ef;
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 10px 24px rgba(18, 42, 70, .06);
}
.cloud-category-editor-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 17px 18px;
  border-bottom: 1px solid #dce7f2;
  background: linear-gradient(135deg, #163a5c 0%, #234f78 100%);
  color: #fff;
}
.cloud-category-editor-eyebrow {
  display: block;
  margin-bottom: 3px;
  color: #cfe2f5;
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.cloud-category-editor-header h3 {
  margin: 0 0 3px;
  color: #fff;
  font-size: 1.18rem;
  font-weight: 800;
}
.cloud-category-editor-header p {
  margin: 0;
  color: #dce9f6;
  font-size: .9rem;
  line-height: 1.35;
}
.cloud-category-editor-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 7px 10px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
  color: #fff;
  font-size: .8rem;
  font-weight: 700;
  white-space: nowrap;
}
.cloud-category-editor-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 16px;
  background: #f7faff;
}
.cloud-category-editor-panel {
  min-width: 0;
  border: 1px solid #d9e5f1;
  border-radius: 15px;
  background: #fff;
  padding: 14px;
}
.cloud-category-editor-panel-title {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 11px;
  padding-bottom: 9px;
  border-bottom: 1px solid #e7eef6;
  color: #183b5d;
  font-size: .92rem;
  font-weight: 800;
}
.cloud-category-editor-field {
  display: grid;
  grid-template-columns: 145px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 6px 0;
}
.cloud-category-editor-field > label {
  margin: 0;
  color: #4e6479;
  font-size: .86rem;
  font-weight: 700;
}
.cloud-category-editor-field > div { min-width: 0; }
.cloud-category-editor-field .form-control,
.cloud-category-editor-field .form-select {
  min-height: 40px;
  font-size: .92rem;
}
.cloud-category-editor-field-top { align-items: start; }
.cloud-category-editor-field-top > label { padding-top: 10px; }
.cloud-category-editor-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  padding: 13px 16px 16px;
  background: #f7faff;
  border-top: 1px solid #dce7f2;
}
.cloud-category-editor-actions .btn { min-width: 160px; }
@media (max-width: 991.98px) {
  .cloud-category-editor-columns { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
  .cloud-tournament-tabs { grid-template-columns: 1fr; }
  .cloud-tournament-tab { padding: 10px 12px; }
  .cloud-tab-panel-actions,
  .cloud-category-editor-actions {
    align-items: stretch;
    flex-direction: column-reverse;
  }
  .cloud-tab-panel-actions .btn,
  .cloud-category-editor-actions .btn { width: 100%; min-width: 0; }
  .cloud-category-builder-form { padding: 10px; }
  .cloud-category-editor-header {
    flex-direction: column;
    padding: 14px;
  }
  .cloud-category-editor-status { white-space: normal; }
  .cloud-category-editor-columns { padding: 10px; gap: 10px; }
  .cloud-category-editor-panel { padding: 11px; }
  .cloud-category-editor-field {
    grid-template-columns: 1fr;
    gap: 4px;
    padding: 5px 0;
  }
  .cloud-category-editor-field-top > label { padding-top: 0; }
}

/* Cloud v1.102 - categorias incluídas organizadas no celular */
.cloud-category-mobile-info-grid,
.cloud-category-mobile-values {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 12px;
}

.cloud-category-mobile-info,
.cloud-category-mobile-values > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 10px 11px;
  border: 1px solid #dbe6f2;
  border-radius: 12px;
  background: #f8fbff;
}

.cloud-category-mobile-info:nth-child(odd):last-child,
.cloud-category-mobile-values > .is-wide {
  grid-column: 1 / -1;
}

.cloud-category-mobile-info > span,
.cloud-category-mobile-values > div > span,
.cloud-category-mobile-career > span {
  color: #6b7f94;
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1.2;
  text-transform: uppercase;
}

.cloud-category-mobile-info > strong,
.cloud-category-mobile-values > div > strong {
  color: #183754;
  font-size: .92rem;
  font-weight: 750;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.cloud-category-mobile-career {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 9px;
  padding: 11px 12px;
  border: 1px solid #d8e5f2;
  border-radius: 12px;
}

.cloud-category-mobile-career > strong {
  color: #183754;
  font-size: .9rem;
  line-height: 1.3;
}

.cloud-category-mobile-career.is-valid {
  background: #edf9f3;
  border-color: #bde5cf;
}

.cloud-category-mobile-career.is-valid > strong {
  color: #17633e;
}

.cloud-category-mobile-career.is-recreational {
  background: #fff8e6;
  border-color: #eed89c;
}

.cloud-category-mobile-career.is-recreational > strong {
  color: #6b4d0c;
}

.cloud-category-mobile-item > .cloud-category-actions {
  width: 100%;
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid #e5edf5;
}

@media (max-width: 575.98px) {
  .cloud-category-mobile-item {
    padding: 12px;
  }

  .cloud-category-mobile-head > div {
    min-width: 0;
  }

  .cloud-category-mobile-head small {
    line-height: 1.35;
  }

  .cloud-category-mobile-item > .cloud-category-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-category-mobile-item > .cloud-category-actions .btn {
    width: 100%;
  }
}

@media (max-width: 370px) {
  .cloud-category-mobile-info-grid,
  .cloud-category-mobile-values,
  .cloud-category-mobile-item > .cloud-category-actions {
    grid-template-columns: 1fr;
  }

  .cloud-category-mobile-info:nth-child(odd):last-child,
  .cloud-category-mobile-values > .is-wide {
    grid-column: auto;
  }
}


/* RankingBT v140 - identidade visual oficial */
.cloud-navbar-title-logo {
  display: flex;
  align-items: center;
  min-width: 0;
}
.cloud-brand-logo-link {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  text-decoration: none;
}
.cloud-brand-logo {
  display: block;
  width: auto;
  object-fit: contain;
}
.cloud-brand-logo-full {
  height: 52px;
  max-width: min(330px, 100%);
}
.cloud-brand-logo-mark {
  display: none;
  height: 48px;
  max-width: 76px;
}
.cloud-navbar-actions .btn {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.cloud-login-brand-logo {
  display: block;
  width: min(330px, 86%);
  height: auto;
  margin: 0 auto 14px;
}
.cloud-login-brand-logo + .cloud-login-icon {
  display: none;
}
.cloud-public-hero-brand {
  display: inline-flex;
  margin-bottom: 18px;
  text-decoration: none;
}
.cloud-public-hero-logo {
  display: block;
  width: min(330px, 72vw);
  height: auto;
}
.cloud-athlete-hero-brand {
  display: inline-flex;
  margin-bottom: 12px;
  text-decoration: none;
}
.cloud-athlete-hero-brand img {
  display: block;
  width: min(220px, 56vw);
  height: auto;
}
@media (min-width: 1200px) {
  .cloud-navbar-actions .btn {
    min-width: 116px;
    padding-left: .78rem;
    padding-right: .78rem;
  }
}
@media (max-width: 767.98px) {
  .cloud-brand-logo-full { display: none; }
  .cloud-brand-logo-mark { display: block; }
  .cloud-navbar {
    min-height: 76px;
  }
  .cloud-navbar-sub {
    font-size: .82rem;
    margin-top: 2px;
  }
  .cloud-public-hero-logo {
    width: min(260px, 76vw);
  }
  .cloud-athlete-hero-brand img {
    width: min(190px, 58vw);
  }
}

.cloud-athlete-card-brand {
  display: inline-flex;
  align-items: center;
  margin: 0 0 18px;
  text-decoration: none;
}
.cloud-athlete-card-brand img {
  display: block;
  width: min(280px, 72vw);
  height: auto;
}
@media (max-width: 575.98px) {
  .cloud-athlete-card-brand {
    display: flex;
    justify-content: center;
    margin-bottom: 14px;
  }
  .cloud-athlete-card-brand img {
    width: min(230px, 76vw);
  }
}


/* RankingBT v141 - refinamento da tela de login */
.cloud-login-brand-clean {
  margin-bottom: 18px;
}
.cloud-login-brand-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 104px;
  margin: -4px -6px 12px;
  padding: 17px 22px;
  border-radius: 19px;
  background: linear-gradient(135deg, #10243d 0%, #183b5b 100%);
  border: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 0 12px 26px rgba(12, 34, 57, .16);
}
.cloud-login-brand-clean .cloud-login-brand-logo {
  width: min(330px, 94%);
  max-height: 78px;
  object-fit: contain;
  margin: 0 auto;
}
.cloud-login-brand-clean > p {
  margin: 0;
  color: #687b91;
  font-size: .98rem;
  line-height: 1.3;
}
@media (max-width: 575.98px) {
  .cloud-login-brand-clean {
    margin-bottom: 15px;
  }
  .cloud-login-brand-panel {
    min-height: 90px;
    margin: -3px -2px 10px;
    padding: 14px 16px;
    border-radius: 17px;
  }
  .cloud-login-brand-clean .cloud-login-brand-logo {
    width: min(300px, 96%);
    max-height: 66px;
  }
  .cloud-login-brand-clean > p {
    font-size: .92rem;
  }
}

/* RankingBT v150 - padronização da marca, arquivamento e consulta pública de atletas */
.cloud-athlete-card-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 92px;
  margin: 0 0 20px;
  padding: 14px 20px;
  border-radius: 18px;
  background: linear-gradient(135deg, #10243d 0%, #183b5b 100%);
  border: 1px solid rgba(255,255,255,.08);
  text-decoration: none;
  box-shadow: 0 12px 26px rgba(15, 36, 61, .14);
}
.cloud-athlete-card-brand img {
  display: block;
  width: min(285px, 70vw);
  max-height: 64px;
  object-fit: contain;
}
@media (max-width: 575.98px) {
  .cloud-athlete-card-brand {
    min-height: 82px;
    margin-bottom: 16px;
    padding: 12px 16px;
    border-radius: 16px;
  }
  .cloud-athlete-card-brand img { width: min(245px, 72vw); max-height: 56px; }
}

.cloud-category-block-message {
  display: block;
  margin-top: 7px;
  color: #a33a3a;
  font-size: .82rem;
  line-height: 1.3;
}

.cloud-archive-filter {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 8px;
  padding: 5px;
  border: 1px solid var(--cloud-border);
  border-radius: 14px;
  background: #f5f8fc;
}
.cloud-archive-filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 10px;
  color: #51657a;
  font-weight: 700;
  text-decoration: none;
}
.cloud-archive-filter-btn span {
  min-width: 24px;
  padding: 2px 7px;
  border-radius: 999px;
  background: #e5edf6;
  color: #324b65;
  text-align: center;
  font-size: .78rem;
}
.cloud-archive-filter-btn.active {
  background: var(--cloud-primary-dark);
  color: #fff;
  box-shadow: 0 6px 14px rgba(15, 36, 61, .16);
}
.cloud-archive-filter-btn.active span { background: rgba(255,255,255,.17); color: #fff; }
.cloud-archived-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.cloud-archived-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--cloud-border);
  border-radius: 18px;
  background: #fbfcfe;
  box-shadow: 0 8px 20px rgba(16, 35, 62, .05);
}
.cloud-archived-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.cloud-archived-card-head h2 { margin: 8px 0 2px; color: var(--cloud-primary-dark); font-size: 1.15rem; }
.cloud-archived-card-head p { margin: 0; color: var(--cloud-muted); }
.cloud-archived-card-head > i { color: #8b9aae; font-size: 1.5rem; }
.cloud-archived-card-meta { display: grid; grid-template-columns: 1fr; gap: 8px; }
.cloud-archived-card-meta div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid #e3eaf2;
  border-radius: 10px;
  background: #fff;
}
.cloud-archived-card-meta span { color: var(--cloud-muted); font-size: .82rem; }
.cloud-archived-card-meta strong { color: #334d67; font-size: .88rem; text-align: right; }
@media (max-width: 1100px) { .cloud-archived-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 650px) {
  .cloud-archive-filter { display: grid; width: 100%; grid-template-columns: 1fr 1fr; }
  .cloud-archive-filter-btn { padding: 8px 9px; font-size: .86rem; }
  .cloud-archived-grid { grid-template-columns: 1fr; }
}

.cloud-athlete-public-search-card { overflow: hidden; }
.cloud-athlete-public-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}
.cloud-athlete-public-privacy {
  max-width: 330px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid #cfe1f2;
  border-radius: 14px;
  background: #f2f8fe;
  color: #3d5873;
  font-size: .86rem;
  line-height: 1.35;
}
.cloud-athlete-public-privacy i { color: var(--cloud-primary); margin-top: 2px; }
.cloud-athlete-public-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1.35fr) minmax(190px, 1fr) 90px auto;
  gap: 12px;
  align-items: end;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid #e4ebf3;
}
.cloud-athlete-public-filter-actions { display: flex; gap: 8px; }
.cloud-athlete-public-filter-actions .btn { min-height: 42px; white-space: nowrap; }
.cloud-athlete-public-results {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.cloud-athlete-public-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--cloud-border);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 9px 22px rgba(16, 35, 62, .06);
}
.cloud-athlete-public-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.cloud-athlete-public-card-head h2 { margin: 0; color: var(--cloud-primary-dark); font-size: 1.18rem; }
.cloud-athlete-public-card-head div > span { color: var(--cloud-primary); font-weight: 700; font-size: .88rem; }
.cloud-athlete-public-level {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #eaf3fc;
  color: #244d75;
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
}
.cloud-athlete-public-location {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 10px 11px;
  border: 1px solid #e2eaf3;
  border-radius: 12px;
  background: #f9fbfd;
}
.cloud-athlete-public-location span { color: var(--cloud-muted); font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.cloud-athlete-public-location strong { color: #334d67; }
.cloud-athlete-public-profile-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 26px;
  border-radius: 22px;
  background: linear-gradient(135deg, #12354b 0%, #203d61 100%);
  color: #fff;
  box-shadow: 0 16px 32px rgba(15,36,61,.15);
}
.cloud-athlete-public-profile-hero h1 { margin: 2px 0 8px; font-size: 2rem; font-weight: 500; }
.cloud-athlete-public-profile-hero .carreira-eyebrow { color: #cbd9e8; }
.cloud-athlete-public-profile-meta { display: flex; flex-wrap: wrap; gap: 8px; }
.cloud-athlete-public-profile-meta span {
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  font-size: .86rem;
}
.cloud-athlete-public-profile-category {
  min-width: 190px;
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 16px;
  background: rgba(255,255,255,.08);
}
.cloud-athlete-public-profile-category span { display: block; color: #cad8e8; font-size: .76rem; text-transform: uppercase; letter-spacing: .06em; }
.cloud-athlete-public-profile-category strong { display: block; margin-top: 4px; font-size: 1.2rem; }
.cloud-athlete-public-career-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.cloud-athlete-public-career-kpis article {
  padding: 15px;
  border: 1px solid var(--cloud-border);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(16,35,62,.05);
}
.cloud-athlete-public-career-kpis span, .cloud-athlete-public-career-kpis small { display: block; color: var(--cloud-muted); }
.cloud-athlete-public-career-kpis span { font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.cloud-athlete-public-career-kpis strong { display: block; margin: 5px 0 2px; color: var(--cloud-primary-dark); font-size: 1.55rem; }
.cloud-athlete-public-rule { padding: 6px 10px; border-radius: 999px; background: #eaf3fc; color: #244d75; font-weight: 800; font-size: .82rem; }
.cloud-athlete-public-progress-row {
  display: grid;
  grid-template-columns: 90px 70px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}
.cloud-athlete-public-progress-row > span { color: #52677c; font-weight: 700; }
.cloud-athlete-public-progress-row > strong { color: var(--cloud-primary-dark); }
.cloud-athlete-public-progress-row > div { height: 10px; overflow: hidden; border-radius: 999px; background: #e6edf5; }
.cloud-athlete-public-progress-row i { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, #204a75, #29a978); }
.cloud-athlete-public-history-table { min-width: 900px; }
.cloud-athlete-public-history-mobile { display: grid; gap: 10px; }
.cloud-athlete-public-history-mobile article { padding: 13px; border: 1px solid #dfe8f1; border-radius: 14px; background: #fbfdff; }
.cloud-athlete-public-history-mobile article > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cloud-athlete-public-history-mobile h3 { margin: 8px 0 3px; color: var(--cloud-primary-dark); font-size: 1rem; }
.cloud-athlete-public-history-mobile p, .cloud-athlete-public-history-mobile small { margin: 0; color: var(--cloud-muted); }
@media (max-width: 1100px) {
  .cloud-athlete-public-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cloud-athlete-public-filters { grid-template-columns: 1fr 1fr 90px; }
  .cloud-athlete-public-filter-actions { grid-column: 1 / -1; }
}
@media (max-width: 767.98px) {
  .cloud-athlete-public-title, .cloud-athlete-public-profile-hero { align-items: stretch; flex-direction: column; }
  .cloud-athlete-public-privacy { max-width: none; }
  .cloud-athlete-public-filters { grid-template-columns: 1fr; }
  .cloud-athlete-public-filter-actions { grid-column: auto; display: grid; grid-template-columns: 1fr; }
  .cloud-athlete-public-results, .cloud-athlete-public-career-kpis { grid-template-columns: 1fr; }
  .cloud-athlete-public-profile-category { min-width: 0; }
  .cloud-athlete-public-progress-row { grid-template-columns: 1fr auto; }
  .cloud-athlete-public-progress-row > div { grid-column: 1 / -1; }
}


/* Cloud v1.151 - logo completa no perfil público e cards mobile da área do atleta */
.cloud-athlete-dashboard-grid > *,
.cloud-athlete-telemetry-main-grid > * {
  min-width: 0;
}

.cloud-athlete-info-card {
  min-width: 0;
  max-width: 100%;
}

.cloud-athlete-history-item,
.cloud-athlete-history-item strong,
.cloud-athlete-history-item span,
.cloud-athlete-history-item small {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.cloud-athlete-finance-mobile {
  display: grid;
  gap: 12px;
}

.cloud-athlete-finance-mobile-card {
  min-width: 0;
  border: 1px solid #dce6f1;
  border-radius: 16px;
  background: #fbfdff;
  padding: 13px;
}

.cloud-athlete-finance-mobile-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e4ebf3;
}

.cloud-athlete-finance-mobile-head > div {
  min-width: 0;
}

.cloud-athlete-finance-mobile-head strong,
.cloud-athlete-finance-mobile-head small {
  display: block;
}

.cloud-athlete-finance-mobile-head strong {
  color: var(--cloud-primary-dark);
  font-size: 1rem;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.cloud-athlete-finance-mobile-head small {
  margin-top: 3px;
  color: var(--cloud-muted);
  font-size: .8rem;
}

.cloud-athlete-finance-mobile-head .badge {
  flex: 0 0 auto;
  max-width: 46%;
  white-space: normal;
  text-align: center;
}

.cloud-athlete-finance-mobile-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 10px;
}

.cloud-athlete-finance-mobile-grid > div {
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid #e2eaf3;
  border-radius: 12px;
  background: #fff;
}

.cloud-athlete-finance-mobile-grid span,
.cloud-athlete-finance-mobile-grid strong {
  display: block;
}

.cloud-athlete-finance-mobile-grid span {
  color: #6a7c92;
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-athlete-finance-mobile-grid strong {
  margin-top: 3px;
  color: var(--cloud-primary-dark);
  font-size: .92rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.cloud-athlete-finance-mobile-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.cloud-athlete-finance-mobile-actions form,
.cloud-athlete-finance-mobile-actions .btn {
  width: 100%;
}

@media (max-width: 767.98px) {
  .cloud-navbar-public-profile .cloud-navbar-title-logo {
    flex: 1 1 auto;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-full {
    display: block;
    width: min(185px, 56vw);
    height: auto;
    max-width: none;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-mark {
    display: none;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-link {
    width: auto;
  }

  .cloud-athlete-table-wrap {
    max-width: 100%;
    overflow: hidden;
  }

  .cloud-athlete-history-list,
  .cloud-athlete-history-item {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 390px) {
  .cloud-athlete-finance-mobile-grid,
  .cloud-athlete-finance-mobile-actions {
    grid-template-columns: 1fr;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-full {
    width: min(165px, 52vw);
  }
}

/* RankingBT v151 - autodeclaração esportiva protegida e logo pública ampliada */
.cloud-athlete-declaration-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
  padding: 16px 17px;
  border: 1px solid #cfe0f1;
  border-radius: 17px;
  background: linear-gradient(135deg, #f7fbff 0%, #eef6ff 100%);
}
.cloud-athlete-declaration-card.is-pending {
  border-color: #efd99b;
  background: linear-gradient(135deg, #fffdf6 0%, #fff7df 100%);
}
.cloud-athlete-declaration-card.is-locked {
  border-color: #c9e4d7;
  background: linear-gradient(135deg, #f5fcf8 0%, #eaf7f0 100%);
}
.cloud-athlete-declaration-icon {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: #183b5b;
  color: #fff;
  box-shadow: 0 8px 18px rgba(24, 59, 91, .14);
}
.cloud-athlete-declaration-card.is-pending .cloud-athlete-declaration-icon {
  background: #b07812;
}
.cloud-athlete-declaration-card.is-locked .cloud-athlete-declaration-icon {
  background: #237653;
}
.cloud-athlete-declaration-card strong {
  display: block;
  margin-bottom: 4px;
  color: var(--cloud-primary-dark);
  font-size: 1rem;
}
.cloud-athlete-declaration-card p,
.cloud-athlete-declaration-card small {
  display: block;
  margin: 0;
  color: #52677c;
  line-height: 1.42;
}
.cloud-athlete-declaration-card small {
  margin-top: 5px;
  font-size: .84rem;
}
.cloud-athlete-declaration-confirm {
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid #efd99b;
  border-radius: 15px;
  background: #fff9e8;
  color: #5e4a18;
}
.cloud-athlete-declaration-confirm .form-check-label {
  line-height: 1.42;
}
.cloud-athlete-declaration-confirm .form-check-input:checked {
  background-color: #183b5b;
  border-color: #183b5b;
}
@media (max-width: 767.98px) {
  .cloud-navbar-public-profile .cloud-brand-logo-full {
    width: min(210px, 60vw);
  }
  .cloud-athlete-declaration-card {
    gap: 11px;
    padding: 14px;
  }
  .cloud-athlete-declaration-icon {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
  }
}
@media (max-width: 390px) {
  .cloud-navbar-public-profile .cloud-brand-logo-full {
    width: min(190px, 58vw);
  }
  .cloud-athlete-declaration-card {
    flex-direction: column;
  }
}


/* RankingBT v152 - cabeçalho público mobile com logo ampla e menu alinhado */
@media (max-width: 767.98px) {
  .cloud-navbar-public-profile {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    min-height: 104px;
    padding: 16px 18px;
    gap: 12px;
  }

  .cloud-navbar-public-profile .cloud-navbar-brand {
    flex: 1 1 auto;
    min-width: 0;
  }

  .cloud-navbar-public-profile .cloud-navbar-title-logo,
  .cloud-navbar-public-profile .cloud-brand-logo-link {
    width: 100%;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-full {
    display: block;
    width: min(245px, calc(100vw - 138px));
    height: auto;
    max-width: 100%;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-mark {
    display: none;
  }

  .cloud-navbar-public-profile .cloud-nav-toggle {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    margin-left: 0;
    align-self: center;
  }

  .cloud-navbar-public-profile [data-cloud-nav-menu] {
    order: 3;
    flex-basis: 100%;
    width: 100%;
  }
}

@media (max-width: 390px) {
  .cloud-navbar-public-profile {
    padding: 14px 15px;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-full {
    width: min(218px, calc(100vw - 126px));
  }

  .cloud-navbar-public-profile .cloud-nav-toggle {
    flex-basis: 46px;
    width: 46px;
    height: 46px;
  }
}


/* RankingBT v151 - Meus torneios responsivo em cards e cabeçalho organizado no tablet */
@media (max-width: 1199.98px) {
  .cloud-navbar-responsive {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    padding: 16px 18px;
    min-height: 82px;
  }

  .cloud-navbar-responsive .cloud-navbar-brand {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
  }

  .cloud-navbar-responsive .cloud-brand-logo-full {
    display: block;
    height: 46px;
    max-width: min(285px, 62vw);
  }

  .cloud-navbar-responsive .cloud-brand-logo-mark {
    display: none;
  }

  .cloud-navbar-responsive .cloud-nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    margin-left: auto;
  }

  .cloud-navbar-responsive [data-cloud-nav-menu] {
    display: none;
    flex: 1 0 100%;
    width: 100%;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.18);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .cloud-navbar-responsive [data-cloud-nav-menu].is-open {
    display: grid;
  }

  .cloud-navbar-responsive [data-cloud-nav-menu] .cloud-navbar-info {
    grid-column: 1 / -1;
    width: 100%;
    text-align: left;
    margin: 0 0 4px;
  }

  .cloud-navbar-responsive [data-cloud-nav-menu] .btn {
    width: 100%;
    min-width: 0;
    min-height: 42px;
  }

  .cloud-torneios-mobile {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }

  .cloud-torneio-mobile-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    padding: 16px;
  }

  .cloud-torneio-mobile-head {
    min-width: 0;
  }

  .cloud-torneio-mobile-head > div:first-child {
    min-width: 0;
  }

  .cloud-torneio-mobile-head h3,
  .cloud-torneio-mobile-head p,
  .cloud-torneio-mobile-meta strong,
  .cloud-torneio-mobile-foot {
    overflow-wrap: anywhere;
  }

  .cloud-torneio-mobile-actions {
    margin-top: auto;
    padding-top: 12px;
  }
}

@media (max-width: 767.98px) {
  .cloud-navbar-responsive .cloud-brand-logo-full {
    display: block;
    height: 40px;
    max-width: min(235px, 68vw);
  }

  .cloud-navbar-responsive .cloud-brand-logo-mark {
    display: none;
  }

  .cloud-navbar-responsive [data-cloud-nav-menu] {
    grid-template-columns: 1fr;
  }

  .cloud-torneios-mobile {
    grid-template-columns: 1fr;
  }

  .cloud-torneio-mobile-actions {
    grid-template-columns: 1fr;
  }

  .cloud-status-form-full {
    grid-column: auto;
  }
}

@media (min-width: 1200px) {
  .cloud-torneios-mobile {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Cloud v1.52 - Ajustes finais: perfil do atleta, torneios no tablet e carreira */
.cloud-athlete-profile-page {
  padding-top: 0;
}
.cloud-athlete-profile-navbar {
  position: sticky;
  top: 0;
  z-index: 1040;
  width: min(1420px, calc(100% - 32px));
  margin: 16px auto 0;
  padding: 14px 18px;
  border-radius: 20px;
  background: linear-gradient(135deg, #132b43 0%, #1d3b5d 100%);
  box-shadow: 0 14px 32px rgba(12, 31, 50, .18);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.cloud-athlete-profile-brand {
  display: flex;
  align-items: center;
  min-width: 0;
}
.cloud-athlete-profile-brand img {
  display: block;
  height: 54px;
  width: auto;
  max-width: min(320px, 34vw);
  object-fit: contain;
}
.cloud-athlete-profile-nav {
  display: grid;
  grid-template-columns: repeat(4, 150px);
  gap: 8px;
  justify-content: end;
}
.cloud-athlete-profile-nav .btn {
  min-height: 42px;
  width: 150px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  font-weight: 700;
}
.cloud-athlete-profile-shell {
  margin-top: 16px;
}
.cloud-athlete-profile-save .btn {
  min-width: 210px;
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .carreira-hero-grid,
  .carreira-layout {
    grid-template-columns: minmax(0, 1fr) 285px;
  }
  .cloud-torneio-mobile-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cloud-torneio-mobile-actions .btn,
  .cloud-torneio-mobile-actions .cloud-status-form,
  .cloud-torneio-mobile-actions .cloud-status-form button {
    width: 100%;
    min-height: 38px;
  }
  .cloud-status-form-full {
    grid-column: auto;
  }
  .cloud-athlete-profile-navbar {
    align-items: flex-start;
  }
  .cloud-athlete-profile-brand img {
    height: 48px;
    max-width: 270px;
  }
  .cloud-athlete-profile-nav {
    grid-template-columns: repeat(2, 150px);
  }
}

@media (max-width: 991.98px) {
  .cloud-athlete-profile-navbar {
    width: min(100% - 20px, 760px);
    align-items: flex-start;
    flex-direction: column;
  }
  .cloud-athlete-profile-brand {
    width: 100%;
    justify-content: flex-start;
  }
  .cloud-athlete-profile-brand img {
    height: 48px;
    max-width: min(300px, 76vw);
  }
  .cloud-athlete-profile-nav {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cloud-athlete-profile-nav .btn {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .cloud-athlete-profile-navbar {
    margin-top: 8px;
    padding: 12px;
    border-radius: 17px;
    gap: 12px;
  }
  .cloud-athlete-profile-brand img {
    height: 42px;
    max-width: 82vw;
  }
  .cloud-athlete-profile-nav {
    grid-template-columns: 1fr;
  }
  .cloud-athlete-profile-nav .btn {
    min-height: 40px;
  }
  .cloud-athlete-profile-shell {
    margin-top: 10px;
  }
  .cloud-athlete-profile-save .btn {
    width: 100%;
    min-width: 0;
  }
}


/* RankingBT v153 - alinhamento tablet da Carreira e cabeçalho do cadastro do atleta */
.cloud-nav-back {
  display: none;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .carreira-hero-grid,
  .carreira-layout {
    grid-template-columns: minmax(0, 1fr) 240px !important;
    gap: 16px !important;
  }

  .carreira-version-summary,
  .carreira-layout > aside {
    width: 100%;
    min-width: 0;
  }

  .cloud-navbar-responsive .cloud-nav-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 92px;
    width: 92px;
    height: 44px;
    margin-left: auto;
    margin-right: 8px;
    white-space: nowrap;
  }

  .cloud-navbar-responsive .cloud-nav-toggle {
    margin-left: 0 !important;
  }

  .cloud-athlete-profile-navbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 1040 !important;
    width: min(100% - 28px, 1420px) !important;
    margin: 14px auto 0 !important;
    padding: 14px 16px !important;
    min-height: 86px !important;
    border-radius: 20px !important;
    background: linear-gradient(135deg, #132b43 0%, #1d3b5d 100%) !important;
    box-shadow: 0 14px 32px rgba(12,31,50,.18) !important;
    display: grid !important;
    grid-template-columns: minmax(220px, 1fr) auto !important;
    align-items: center !important;
    gap: 16px !important;
  }

  .cloud-athlete-profile-brand {
    min-width: 0 !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .cloud-athlete-profile-brand img {
    display: block !important;
    width: auto !important;
    height: 52px !important;
    max-width: 300px !important;
    object-fit: contain !important;
  }

  .cloud-athlete-profile-nav {
    width: auto !important;
    display: grid !important;
    grid-template-columns: repeat(2, 150px) !important;
    gap: 8px !important;
    justify-content: end !important;
    align-items: stretch !important;
  }

  .cloud-athlete-profile-nav .btn {
    width: 150px !important;
    min-width: 150px !important;
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
  }

  .cloud-athlete-profile-shell {
    margin-top: 16px !important;
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-profile-navbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 1040 !important;
    width: calc(100% - 20px) !important;
    margin: 10px auto 0 !important;
    padding: 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #132b43 0%, #1d3b5d 100%) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .cloud-athlete-profile-brand {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .cloud-athlete-profile-brand img {
    height: 44px !important;
    width: auto !important;
    max-width: 84vw !important;
    object-fit: contain !important;
  }

  .cloud-athlete-profile-nav {
    width: 100% !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .cloud-athlete-profile-nav .btn {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* RankingBT v154 - cabeçalho responsivo da área de cobranças */
.cloud-admin-billing-controls,
.cloud-nav-logout-x {
  display: none;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-admin-billing-navbar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    min-height: 86px;
    padding: 14px 16px;
  }

  .cloud-admin-billing-navbar .cloud-navbar-brand {
    flex: 0 0 220px;
    min-width: 0;
  }

  .cloud-admin-billing-navbar .cloud-brand-logo-full {
    display: block !important;
    height: 44px;
    max-width: 218px;
  }

  .cloud-admin-billing-navbar .cloud-brand-logo-mark,
  .cloud-admin-billing-navbar .cloud-navbar-sub,
  .cloud-admin-billing-navbar .cloud-navbar-info,
  .cloud-admin-billing-navbar .cloud-admin-billing-logout-desktop,
  .cloud-admin-billing-navbar .cloud-nav-toggle {
    display: none !important;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] {
    display: flex !important;
    flex: 1 1 auto;
    flex-basis: auto;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    gap: 6px;
    align-items: center;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] .btn {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
    min-height: 40px;
    padding: .42rem .34rem;
    font-size: .76rem;
    line-height: 1.05;
    border-radius: 9px;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] .btn i {
    margin-right: .2rem !important;
  }

  .cloud-admin-billing-controls {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    margin-left: 0;
  }

  .cloud-admin-billing-navbar .cloud-nav-logout-x {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: #dc3545;
    border: 1px solid #dc3545;
    color: #fff;
    font-size: 1.05rem;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(220, 53, 69, .18);
  }

  .cloud-admin-billing-navbar .cloud-nav-logout-x:hover,
  .cloud-admin-billing-navbar .cloud-nav-logout-x:focus {
    background: #bb2d3b;
    border-color: #b02a37;
    color: #fff;
  }
}

@media (max-width: 767.98px) {
  .cloud-admin-billing-navbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    min-height: 82px;
    padding: 14px 16px;
  }

  .cloud-admin-billing-navbar .cloud-navbar-brand {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
  }

  .cloud-admin-billing-navbar .cloud-brand-logo-full {
    display: block !important;
    height: 40px;
    max-width: min(225px, 58vw);
  }

  .cloud-admin-billing-navbar .cloud-brand-logo-mark,
  .cloud-admin-billing-navbar .cloud-navbar-sub,
  .cloud-admin-billing-navbar .cloud-admin-billing-logout-desktop {
    display: none !important;
  }

  .cloud-admin-billing-controls {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    margin-left: auto;
  }

  .cloud-admin-billing-navbar .cloud-nav-toggle,
  .cloud-admin-billing-navbar .cloud-nav-logout-x {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    margin: 0;
    border-radius: 11px;
  }

  .cloud-admin-billing-navbar .cloud-nav-logout-x {
    background: #dc3545;
    border: 1px solid #dc3545;
    color: #fff;
    font-size: 1.05rem;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(220, 53, 69, .18);
  }

  .cloud-admin-billing-navbar .cloud-nav-logout-x:hover,
  .cloud-admin-billing-navbar .cloud-nav-logout-x:focus {
    background: #bb2d3b;
    border-color: #b02a37;
    color: #fff;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] {
    display: none;
    flex: 1 0 100%;
    width: 100%;
    margin-top: 2px;
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.18);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu].is-open {
    display: grid;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] .cloud-navbar-info {
    grid-column: 1 / -1;
    width: 100%;
    margin: 0 0 3px;
    text-align: left;
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] .btn {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: .55rem .45rem;
    font-size: .9rem;
  }
}

@media (max-width: 420px) {
  .cloud-admin-billing-navbar .cloud-brand-logo-full {
    height: 36px;
    max-width: min(195px, 54vw);
  }

  .cloud-admin-billing-navbar [data-cloud-nav-menu] {
    grid-template-columns: 1fr;
  }
}

/* Cloud v1.153 - solicitação de organizador com cabeçalho padrão */
.cloud-public-request-body {
  overflow-x: hidden;
}

.cloud-public-request-shell {
  width: min(1120px, calc(100% - 28px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 18px 0 26px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 16px;
}

.cloud-public-page-header {
  position: sticky;
  top: 10px;
  z-index: 40;
  width: 100%;
  min-height: 88px;
  padding: 16px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-radius: 24px;
  background: linear-gradient(135deg, #163454 0%, #102846 100%);
  box-shadow: 0 18px 38px rgba(8, 24, 42, .22);
}

.cloud-public-page-brand {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.cloud-public-page-logo {
  display: block;
  height: 54px;
  width: auto;
  max-width: min(320px, 48vw);
}

.cloud-public-page-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
}

.cloud-public-submit-btn {
  min-height: 46px;
  padding: .7rem 1rem;
  border-radius: 14px;
  font-weight: 700;
  min-width: 150px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-public-close-btn {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ef4444;
  color: #fff;
  text-decoration: none;
  font-size: 1.15rem;
  box-shadow: 0 10px 24px rgba(239, 68, 68, .25);
}

.cloud-public-close-btn:hover,
.cloud-public-close-btn:focus {
  background: #dc2626;
  color: #fff;
}

.cloud-public-request-card {
  width: 100%;
  max-width: none;
  margin: 0;
  flex: 0 0 auto;
}

.cloud-public-request-card .cloud-request-clean-form {
  width: 100%;
}

@media (max-width: 991.98px) {
  .cloud-public-request-shell {
    width: min(920px, calc(100% - 22px));
    padding-top: 14px;
  }

  .cloud-public-page-header {
    min-height: 82px;
    border-radius: 22px;
    padding: 14px 16px;
  }

  .cloud-public-page-logo {
    height: 46px;
    max-width: min(280px, 52vw);
  }

  .cloud-public-submit-btn {
    min-width: 132px;
    min-height: 44px;
  }

  .cloud-public-close-btn {
    width: 44px;
    height: 44px;
  }
}

@media (max-width: 575.98px) {
  .cloud-public-request-shell {
    width: calc(100% - 16px);
    padding-top: 10px;
    gap: 12px;
  }

  .cloud-public-page-header {
    top: 8px;
    min-height: 76px;
    padding: 12px 14px;
    border-radius: 20px;
    gap: 12px;
  }

  .cloud-public-page-logo {
    height: 40px;
    max-width: min(220px, 56vw);
  }

  .cloud-public-page-actions {
    gap: 8px;
  }

  .cloud-public-submit-btn {
    min-width: 0;
    padding: .62rem .82rem;
    font-size: .92rem;
  }

  .cloud-public-submit-btn span {
    display: none;
  }

  .cloud-public-submit-btn i {
    margin-right: 0 !important;
  }

  .cloud-public-close-btn {
    width: 42px;
    height: 42px;
    border-radius: 13px;
  }

  .cloud-public-request-card {
    padding-top: 18px;
  }
}

/* RankingBT v155 - consulta pública das regras da carreira */
.cloud-career-rules-page,
.cloud-career-rules-athlete-shell {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.cloud-career-rules-page-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  width: 100%;
}

.cloud-career-rules-eyebrow {
  display: block;
  margin-bottom: 4px;
  color: #4f6d89;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.cloud-career-rules-version {
  flex: 0 0 auto;
  min-width: 178px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid #d9e6f2;
  background: #f6faff;
  text-align: right;
}

.cloud-career-rules-version span,
.cloud-career-rules-version small,
.cloud-career-rules-version strong {
  display: block;
}

.cloud-career-rules-version span {
  color: #6b7f93;
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-career-rules-version strong {
  margin-top: 2px;
  color: #173a5c;
  font-size: 1.12rem;
}

.cloud-career-rules-version small {
  margin-top: 2px;
  color: #708399;
}

.cloud-career-rules-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.cloud-career-rules-summary-card {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
}

.cloud-career-rules-summary-icon {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: #eaf3fb;
  color: #173a5c;
  font-size: 1.1rem;
}

.cloud-career-rules-summary-card.is-active .cloud-career-rules-summary-icon {
  background: #e9f7ee;
  color: #237244;
}

.cloud-career-rules-summary-card span,
.cloud-career-rules-summary-card strong,
.cloud-career-rules-summary-card small {
  display: block;
}

.cloud-career-rules-summary-card span {
  color: #6a7e93;
  font-size: .77rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-career-rules-summary-card strong {
  color: #102d4a;
  font-size: 1.12rem;
  line-height: 1.15;
  margin-top: 2px;
}

.cloud-career-rules-summary-card small {
  color: #718398;
  margin-top: 3px;
  line-height: 1.3;
}

.cloud-career-rules-section-head h2,
.cloud-career-rules-downgrade-card h2,
.cloud-career-rules-important-card h2,
.cloud-career-rules-empty h2 {
  margin: 0;
  color: #102d4a;
  font-size: 1.28rem;
  font-weight: 700;
}

.cloud-career-rules-section-head p,
.cloud-career-rules-downgrade-card p,
.cloud-career-rules-important-card p,
.cloud-career-rules-empty p {
  margin: 4px 0 0;
  color: #61758a;
}

.cloud-career-rules-points-card {
  width: 100%;
}

.cloud-career-rules-points-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 15px;
}

.cloud-career-rules-point-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #e0e9f3;
  border-radius: 15px;
  background: #f8fbff;
}

.cloud-career-rules-point-item i {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: #173a5c;
  color: #fff;
}

.cloud-career-rules-point-item span {
  color: #4d6278;
  font-weight: 600;
}

.cloud-career-rules-point-item strong {
  color: #102d4a;
  white-space: nowrap;
}

.cloud-career-rules-upgrade-section {
  width: 100%;
}

.cloud-career-rules-section-head-outside {
  padding: 2px 2px 0;
  margin-bottom: 12px;
}

.cloud-career-rules-upgrade-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.cloud-career-rules-upgrade-card {
  padding: 0;
  overflow: hidden;
}

.cloud-career-rules-upgrade-card.is-disabled {
  opacity: .68;
}

.cloud-career-rules-upgrade-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: linear-gradient(135deg, #173a5c 0%, #234f78 100%);
  color: #fff;
}

.cloud-career-rules-upgrade-card > header span,
.cloud-career-rules-upgrade-card > header strong {
  display: block;
}

.cloud-career-rules-upgrade-card > header > div > span {
  color: #cfe0f0;
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.cloud-career-rules-upgrade-card > header > div > strong {
  margin-top: 2px;
  font-size: 1.12rem;
}

.cloud-career-rules-upgrade-card > header > div > strong i {
  margin: 0 6px;
  font-size: .86rem;
}

.cloud-career-rules-status {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.22);
  font-size: .75rem;
  font-weight: 700;
}

.cloud-career-rules-status.is-active {
  background: #daf3e3;
  border-color: #daf3e3;
  color: #1b6637;
}

.cloud-career-rules-criteria {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 12px;
  padding: 16px;
}

.cloud-career-rules-criteria > div:not(.cloud-career-rules-operator) {
  padding: 12px;
  border: 1px solid #e2eaf3;
  border-radius: 15px;
  background: #f8fbff;
  text-align: center;
}

.cloud-career-rules-criteria span,
.cloud-career-rules-criteria strong,
.cloud-career-rules-criteria small {
  display: block;
}

.cloud-career-rules-criteria span {
  color: #6b7e92;
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.cloud-career-rules-criteria > div:not(.cloud-career-rules-operator) strong {
  color: #102d4a;
  font-size: 1.55rem;
  line-height: 1;
  margin-top: 4px;
}

.cloud-career-rules-operator {
  min-width: 82px;
  text-align: center;
}

.cloud-career-rules-operator strong {
  width: 48px;
  height: 48px;
  margin: 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #173a5c;
  color: #fff;
  font-size: 1rem;
}

.cloud-career-rules-operator small {
  margin-top: 5px;
  color: #708399;
  font-size: .72rem;
  line-height: 1.2;
}

.cloud-career-rules-card-footer {
  display: grid;
  gap: 8px;
  padding: 0 16px 16px;
}

.cloud-career-rules-card-footer > div {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 9px 10px;
  border-radius: 12px;
  background: #f3f7fb;
  color: #566b80;
  line-height: 1.3;
}

.cloud-career-rules-card-footer i {
  margin-top: 2px;
  color: #173a5c;
}

.cloud-career-rules-downgrade-card,
.cloud-career-rules-important-card,
.cloud-career-rules-empty {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
}

.cloud-career-rules-downgrade-icon,
.cloud-career-rules-important-card > div:first-child,
.cloud-career-rules-empty > i {
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: #edf4fb;
  color: #173a5c;
  font-size: 1.18rem;
}

.cloud-career-rules-downgrade-content {
  min-width: 0;
  flex: 1 1 auto;
}

.cloud-career-rules-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 13px;
  background: #fff8e6;
  border: 1px solid #edd99f;
  color: #6b5318;
}

.cloud-career-rules-important-card {
  background: #f4f9fe;
}

.cloud-career-rules-empty {
  align-items: center;
}

.cloud-career-rules-athlete-head {
  margin-top: 0;
}

.cloud-career-rules-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.cloud-career-rules-navbar .cloud-nav-logout-x {
  width: 44px;
  height: 44px;
  display: none;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #dc3545;
  border: 1px solid #dc3545;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(220, 53, 69, .18);
}

.cloud-career-rules-navbar .cloud-nav-logout-x:hover,
.cloud-career-rules-navbar .cloud-nav-logout-x:focus {
  background: #bb2d3b;
  border-color: #b02a37;
  color: #fff;
}

@media (min-width: 1200px) {
  .cloud-career-rules-navbar .cloud-nav-toggle {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-career-rules-navbar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    min-height: 84px;
    padding: 14px 16px;
  }

  .cloud-career-rules-navbar .cloud-navbar-brand {
    flex: 0 0 230px;
    min-width: 0;
  }

  .cloud-career-rules-navbar .cloud-brand-logo-full {
    display: block !important;
    height: 44px;
    max-width: 225px;
  }

  .cloud-career-rules-navbar .cloud-brand-logo-mark,
  .cloud-career-rules-navbar .cloud-navbar-sub,
  .cloud-career-rules-navbar .cloud-navbar-info,
  .cloud-career-rules-navbar .cloud-nav-toggle,
  .cloud-career-rules-navbar .cloud-career-rules-logout-desktop {
    display: none !important;
  }

  .cloud-career-rules-navbar .cloud-nav-logout-x {
    display: inline-flex;
  }

  .cloud-career-rules-navbar [data-cloud-nav-menu] {
    display: flex !important;
    flex: 1 1 auto;
    flex-basis: auto;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    gap: 6px;
    align-items: center;
  }

  .cloud-career-rules-navbar [data-cloud-nav-menu] .btn {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
    min-height: 40px;
    padding: .42rem .38rem;
    font-size: .78rem;
    line-height: 1.05;
    border-radius: 9px;
  }

  .cloud-career-rules-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cloud-career-rules-points-grid,
  .cloud-career-rules-upgrade-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-career-rules-point-item:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 767.98px) {
  .cloud-career-rules-page,
  .cloud-career-rules-athlete-shell {
    gap: 12px;
  }

  .cloud-career-rules-navbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    min-height: 82px;
    padding: 14px 16px;
  }

  .cloud-career-rules-navbar .cloud-navbar-brand {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
  }

  .cloud-career-rules-navbar .cloud-brand-logo-full {
    display: block !important;
    height: 40px;
    max-width: min(225px, 57vw);
  }

  .cloud-career-rules-navbar .cloud-brand-logo-mark,
  .cloud-career-rules-navbar .cloud-navbar-sub,
  .cloud-career-rules-navbar .cloud-navbar-info,
  .cloud-career-rules-navbar .cloud-career-rules-logout-desktop {
    display: none !important;
  }

  .cloud-career-rules-navbar .cloud-nav-toggle,
  .cloud-career-rules-navbar .cloud-nav-logout-x {
    display: inline-flex;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    margin: 0;
  }

  .cloud-career-rules-navbar [data-cloud-nav-menu] {
    display: none;
    flex: 1 0 100%;
    width: 100%;
    margin-top: 2px;
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.18);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .cloud-career-rules-navbar [data-cloud-nav-menu].is-open {
    display: grid;
  }

  .cloud-career-rules-navbar [data-cloud-nav-menu] .btn {
    width: 100%;
    min-width: 0;
  }

  .cloud-career-rules-page-head {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  .cloud-career-rules-version {
    min-width: 0;
    width: 100%;
    text-align: left;
  }

  .cloud-career-rules-summary-grid,
  .cloud-career-rules-points-grid,
  .cloud-career-rules-upgrade-grid {
    grid-template-columns: 1fr;
  }

  .cloud-career-rules-point-item:last-child {
    grid-column: auto;
  }

  .cloud-career-rules-criteria {
    gap: 8px;
    padding: 14px 12px;
  }

  .cloud-career-rules-operator {
    min-width: 62px;
  }

  .cloud-career-rules-operator strong {
    width: 42px;
    height: 42px;
  }

  .cloud-career-rules-downgrade-card,
  .cloud-career-rules-important-card,
  .cloud-career-rules-empty {
    gap: 12px;
  }

  .cloud-career-rules-downgrade-icon,
  .cloud-career-rules-important-card > div:first-child,
  .cloud-career-rules-empty > i {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
    border-radius: 14px;
  }
}

@media (max-width: 420px) {
  .cloud-career-rules-navbar [data-cloud-nav-menu] {
    grid-template-columns: 1fr;
  }

  .cloud-career-rules-criteria {
    grid-template-columns: 1fr;
  }

  .cloud-career-rules-operator {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .cloud-career-rules-operator strong {
    margin: 0;
  }

  .cloud-career-rules-operator small {
    margin: 0;
    text-align: left;
  }
}

/* RankingBT v160 - página pública do torneio organizada em abas */
.cloud-public-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 16px;
  padding: 8px;
  border: 1px solid #d7e3ef;
  border-radius: 18px;
  background: #f7faff;
  box-shadow: 0 10px 24px rgba(16, 35, 62, .05);
}
.cloud-public-tab {
  min-height: 48px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: transparent;
  color: #294967;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-weight: 700;
  transition: .18s ease;
}
.cloud-public-tab:hover { background: #eaf2fa; }
.cloud-public-tab.is-active {
  background: #173a5c;
  border-color: #173a5c;
  color: #fff;
  box-shadow: 0 9px 20px rgba(23, 58, 92, .18);
}
.cloud-public-tab-panel { display: none; }
.cloud-public-tab-panel.is-active { display: block; }
.cloud-public-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.cloud-public-overview-grid article {
  padding: 14px;
  border: 1px solid #dfe9f3;
  border-radius: 16px;
  background: #f8fbff;
}
.cloud-public-overview-grid span,
.cloud-public-overview-grid small { display: block; color: #6a7f95; }
.cloud-public-overview-grid span { font-size: .76rem; text-transform: uppercase; font-weight: 700; letter-spacing: .04em; }
.cloud-public-overview-grid strong { display: block; color: #122f4c; margin: 5px 0 2px; font-size: 1.03rem; }
.cloud-public-overview-categories { margin-top: 14px; display: grid; gap: 9px; }
.cloud-public-overview-category {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) minmax(120px, .6fr) minmax(150px, .75fr);
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #e0e9f2;
  border-radius: 14px;
}
.cloud-public-overview-category strong,
.cloud-public-overview-category small { display: block; }
.cloud-public-overview-category small { color: #75889c; }
.cloud-public-overview-category > span { text-align: center; padding: 7px 10px; border-radius: 999px; background: #eef4fa; color: #3c5874; font-size: .84rem; font-weight: 700; }
.cloud-public-overview-category > span.is-published { background: #e8f7ed; color: #277243; }
.cloud-public-group-members { display: grid; gap: 7px; }
.cloud-public-group-members > div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
  border-radius: 11px;
  background: #f7faff;
  border: 1px solid #e3ebf4;
}
.cloud-public-group-members > div > span { grid-row: 1 / span 2; width: 27px; height: 27px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #173a5c; color: #fff; font-size: .78rem; font-weight: 700; }
.cloud-public-group-members strong,
.cloud-public-group-members small { display: block; }
.cloud-public-group-members small { color: #75889b; }
.cloud-public-elimination-list { display: grid; gap: 16px; }
.cloud-public-elimination-phases { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 13px; }
.cloud-public-elimination-phase { padding: 12px; border: 1px solid #dfe8f2; border-radius: 15px; background: #f9fbfe; }
.cloud-public-elimination-phase h4 { margin: 0 0 10px; color: #173a5c; font-size: 1rem; }
.cloud-public-elimination-phase .cloud-public-match-item + .cloud-public-match-item { margin-top: 9px; }
@media (max-width: 991.98px) {
  .cloud-public-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cloud-public-overview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cloud-public-overview-category { grid-template-columns: minmax(0, 1fr) auto; }
  .cloud-public-overview-category > span:last-child { grid-column: 1 / -1; }
}
@media (max-width: 575.98px) {
  .cloud-public-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 7px; }
  .cloud-public-tab { justify-content: center; min-height: 43px; padding: 0 8px; font-size: .88rem; }
  .cloud-public-tab:last-child { grid-column: 1 / -1; }
  .cloud-public-overview-grid { grid-template-columns: 1fr; }
  .cloud-public-overview-category { grid-template-columns: 1fr; align-items: stretch; }
  .cloud-public-overview-category > span,
  .cloud-public-overview-category > span:last-child { grid-column: auto; text-align: left; }
  .cloud-public-elimination-phases { grid-template-columns: 1fr; }
}

/* RankingBT v160 - manutenção administrativa */
.admin-maintenance-hero { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.admin-maintenance-kpis { display: grid; grid-template-columns: repeat(3, minmax(120px, 1fr)); gap: 10px; min-width: min(100%, 460px); }
.admin-maintenance-kpis > div { padding: 12px 14px; border: 1px solid #dfe8f2; border-radius: 15px; background: #f8fbff; }
.admin-maintenance-kpis strong, .admin-maintenance-kpis span { display: block; }
.admin-maintenance-kpis strong { color: #173a5c; font-size: 1.35rem; }
.admin-maintenance-kpis span { color: #6d8196; font-size: .84rem; }
.admin-maintenance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
.admin-maintenance-danger { border-color: #f0b6b6; }
.admin-maintenance-form .form-control,
.admin-maintenance-form .form-select { min-height: 45px; }
@media (max-width: 991.98px) {
  .admin-maintenance-hero { flex-direction: column; align-items: stretch; }
  .admin-maintenance-kpis { min-width: 0; width: 100%; }
  .admin-maintenance-grid { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
  .admin-maintenance-kpis { grid-template-columns: 1fr; }
}

/* RankingBT v161 - painel administrativo e edição segura do downgrade */
.carreira-downgrade-edit-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid #f2d28a;
  border-radius: 16px;
  background: #fff8e5;
}

.carreira-downgrade-edit-callout > div {
  min-width: 0;
}

.carreira-downgrade-edit-callout strong,
.carreira-downgrade-edit-callout span {
  display: block;
}

.carreira-downgrade-edit-callout strong {
  color: #6b4d0c;
  font-size: 1rem;
}

.carreira-downgrade-edit-callout span {
  margin-top: 4px;
  color: #705d32;
  line-height: 1.4;
}

.carreira-downgrade-edit-callout .btn {
  flex: 0 0 auto;
  min-width: 200px;
}

.cloud-admin-home-navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 92px;
  padding: 16px 20px;
}

.cloud-admin-home-navbar .cloud-navbar-brand {
  min-width: 0;
}

.cloud-admin-home-navbar .cloud-brand-logo-full {
  display: block;
  height: 50px;
  max-width: 300px;
}

.cloud-admin-home-navbar .cloud-brand-logo-mark {
  display: none;
}

.cloud-admin-home-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  flex: 0 0 auto;
}

.cloud-admin-home-user {
  text-align: right;
  color: #fff;
}

.cloud-admin-home-user strong,
.cloud-admin-home-user span {
  display: block;
}

.cloud-admin-home-user strong {
  font-size: 1.02rem;
  line-height: 1.15;
}

.cloud-admin-home-user span {
  margin-top: 2px;
  color: #cbdbea;
  font-size: .84rem;
}

.cloud-admin-home-logout {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ef4444;
  color: #fff;
  text-decoration: none;
  font-size: 1.12rem;
  box-shadow: 0 10px 22px rgba(239, 68, 68, .22);
}

.cloud-admin-home-logout:hover,
.cloud-admin-home-logout:focus {
  background: #dc2626;
  color: #fff;
}

.cloud-admin-home-panel {
  padding: 20px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.cloud-admin-home-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 17px;
}

.cloud-admin-home-eyebrow {
  display: block;
  margin-bottom: 3px;
  color: #55728e;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.cloud-admin-home-panel h1 {
  margin: 0;
  color: var(--cloud-primary-dark);
  font-size: 1.65rem;
  font-weight: 700;
}

.cloud-admin-home-panel p {
  margin: 5px 0 0;
  color: var(--cloud-muted);
}

.cloud-admin-home-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 11px;
  border-radius: 999px;
  background: #eaf3fb;
  border: 1px solid #d4e3f0;
  color: #214b70;
  font-size: .84rem;
  font-weight: 700;
}

.cloud-admin-home-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.cloud-admin-home-item {
  min-width: 0;
  min-height: 88px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid #d9e5f1;
  border-radius: 16px;
  background: #fff;
  color: var(--cloud-primary-dark);
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(16, 35, 62, .045);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.cloud-admin-home-item:hover,
.cloud-admin-home-item:focus {
  transform: translateY(-2px);
  border-color: #9ebbd5;
  box-shadow: 0 12px 24px rgba(16, 35, 62, .09);
  color: var(--cloud-primary-dark);
}

.cloud-admin-home-item > i {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: #173a5c;
  color: #fff;
  font-size: 1.05rem;
}

.cloud-admin-home-item span {
  min-width: 0;
}

.cloud-admin-home-item strong,
.cloud-admin-home-item small {
  display: block;
}

.cloud-admin-home-item strong {
  font-size: .98rem;
  line-height: 1.15;
}

.cloud-admin-home-item small {
  margin-top: 4px;
  color: #6a7e93;
  font-size: .8rem;
  line-height: 1.28;
}

.cloud-admin-home-item-new > i {
  background: #2c7a57;
}

@media (max-width: 1199.98px) {
  .cloud-admin-home-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cloud-admin-home-navbar {
    min-height: 84px;
    padding: 14px 16px;
  }

  .cloud-admin-home-navbar .cloud-brand-logo-full {
    height: 45px;
    max-width: min(275px, 55vw);
  }
}

@media (max-width: 767.98px) {
  .carreira-downgrade-edit-callout {
    flex-direction: column;
    align-items: stretch;
  }

  .carreira-downgrade-edit-callout .btn {
    width: 100%;
    min-width: 0;
  }

  .cloud-admin-home-navbar {
    min-height: 78px;
    gap: 10px;
    padding: 12px 14px;
  }

  .cloud-admin-home-navbar .cloud-brand-logo-full {
    height: 39px;
    max-width: min(220px, 58vw);
  }

  .cloud-admin-home-user {
    display: none;
  }

  .cloud-admin-home-logout {
    width: 42px;
    height: 42px;
    border-radius: 13px;
  }

  .cloud-admin-home-panel {
    padding: 16px;
  }

  .cloud-admin-home-panel-head {
    flex-direction: column;
    margin-bottom: 14px;
  }

  .cloud-admin-home-panel h1 {
    font-size: 1.4rem;
  }

  .cloud-admin-home-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  .cloud-admin-home-item {
    min-height: 102px;
    flex-direction: column;
    align-items: flex-start;
    gap: 9px;
    padding: 12px;
  }

  .cloud-admin-home-item > i {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }
}

@media (max-width: 420px) {
  .cloud-admin-home-grid {
    grid-template-columns: 1fr;
  }

  .cloud-admin-home-item {
    min-height: 78px;
    flex-direction: row;
    align-items: center;
  }
}

/* =========================================================
   Comunidade RankingBT / Minha Rede
   ========================================================= */
.cloud-network-shell { width: min(1240px, calc(100% - 24px)); }
.cloud-network-hero { margin-bottom: 16px; }
.cloud-network-eyebrow { display: inline-flex; align-items: center; gap: 7px; margin: 8px 0 4px; font-size: .82rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #ffd65a; }
.cloud-network-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.cloud-network-summary article { display: flex; align-items: center; gap: 13px; min-height: 92px; padding: 17px 19px; background: #fff; border: 1px solid #dbe5ef; border-radius: 18px; box-shadow: 0 9px 24px rgba(20, 45, 70, .07); }
.cloud-network-summary article > i { width: 44px; height: 44px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; background: #edf5ff; color: #1766a6; font-size: 1.15rem; }
.cloud-network-summary strong, .cloud-network-summary span { display: block; }
.cloud-network-summary strong { color: #142b43; font-size: 1.32rem; font-weight: 700; line-height: 1.05; }
.cloud-network-summary span { color: #6d7e8f; margin-top: 4px; }
.cloud-network-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.cloud-network-section-head h2 { margin: 0; color: #173a5a; font-size: 1.22rem; font-weight: 700; }
.cloud-network-section-head p { margin: 4px 0 0; color: #718095; }
.cloud-network-search-form { max-width: 840px; }
.cloud-network-search-form .input-group-text { background: #f5f8fc; color: #42627d; font-weight: 700; }
.cloud-network-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cloud-network-person-card { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px; border: 1px solid #dce6ef; border-radius: 17px; background: #fbfdff; transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.cloud-network-person-card:hover { transform: translateY(-1px); border-color: #b9cee1; box-shadow: 0 8px 20px rgba(20, 53, 82, .07); }
.cloud-network-person-card.is-request { background: #f7fbff; border-color: #bdd7ef; }
.cloud-network-person-main { min-width: 0; flex: 1; display: flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; }
.cloud-network-person-main > div { min-width: 0; }
.cloud-network-person-main h3 { margin: 0; color: #163752; font-size: 1.03rem; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cloud-network-person-main span, .cloud-network-person-main small { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cloud-network-person-main span { color: #1c74b7; font-size: .91rem; }
.cloud-network-person-main small { color: #7a8998; margin-top: 2px; }
.cloud-network-avatar { width: 58px; height: 58px; flex: 0 0 58px; border-radius: 18px; object-fit: cover; border: 2px solid #fff; box-shadow: 0 3px 12px rgba(31, 69, 101, .14); }
.cloud-network-avatar-initials { display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(145deg, #1a5f94, #193c61); color: #fff; font-weight: 700; font-size: 1.05rem; }
.cloud-network-person-actions { flex: 0 0 auto; display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 6px; }
.cloud-network-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.cloud-network-settings-grid .form-label { font-weight: 600; color: #29465f; }
.cloud-network-toggle-field { display: flex; align-items: center; min-height: 70px; padding: 13px 15px; border: 1px solid #dce6ef; border-radius: 14px; background: #f8fbfe; }
.cloud-network-toggle-field label strong, .cloud-network-toggle-field label small { display: block; }
.cloud-network-toggle-field label small { color: #748497; margin-top: 2px; }
.cloud-network-settings-actions { grid-column: 1 / -1; }
.cloud-network-photo-layout { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 22px; align-items: start; }
.cloud-network-photo-preview { width: 180px; height: 180px; border-radius: 30px; overflow: hidden; display: flex; align-items: center; justify-content: center; background: linear-gradient(145deg, #1d6498, #183b5f); color: #fff; font-size: 2.5rem; font-weight: 700; box-shadow: 0 12px 28px rgba(17, 51, 80, .17); }
.cloud-network-photo-preview img { width: 100%; height: 100%; object-fit: cover; }
.cloud-network-photo-form small { display: block; margin-top: 6px; color: #758497; }
.cloud-network-blocked-list { display: grid; gap: 8px; }
.cloud-network-blocked-list article { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 13px; border: 1px solid #e0e7ef; border-radius: 13px; }
.cloud-network-blocked-list strong, .cloud-network-blocked-list span { display: block; }
.cloud-network-blocked-list span { color: #718095; font-size: .9rem; }
.cloud-network-lgpd-form { display: grid; grid-template-columns: minmax(200px, .6fr) minmax(300px, 1.4fr) auto; align-items: end; gap: 12px; }
.cloud-network-lgpd-form .btn { min-height: 38px; }
.cloud-network-profile-hero { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 22px; border-radius: 24px; background: linear-gradient(135deg, #173a5c 0%, #1c5f90 100%); color: #fff; box-shadow: 0 16px 38px rgba(20, 52, 81, .18); }
.cloud-network-profile-hero .cloud-network-avatar { width: 92px; height: 92px; flex-basis: 92px; border-radius: 25px; font-size: 1.55rem; }
.cloud-network-profile-hero h1 { margin: 0; font-size: 2rem; font-weight: 500; }
.cloud-network-profile-hero-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-top: 6px; color: #dfeeff; }
.cloud-network-profile-category { min-width: 145px; text-align: center; padding: 14px 18px; border: 1px solid rgba(255,255,255,.25); border-radius: 18px; background: rgba(255,255,255,.09); }
.cloud-network-profile-category span, .cloud-network-profile-category strong { display: block; }
.cloud-network-profile-category span { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: #cfe6f8; }
.cloud-network-profile-category strong { font-size: 1.45rem; margin-top: 2px; }
.cloud-network-profile-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }
.cloud-network-private-card { text-align: center; padding: 38px 24px; }
.cloud-network-private-card > i { font-size: 2.2rem; color: #55738e; margin-bottom: 12px; }
.cloud-network-upcoming-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.cloud-network-upcoming-grid article { padding: 14px; border: 1px solid #dde7ef; border-radius: 15px; background: #f8fbfe; }
.cloud-network-upcoming-grid h3 { font-size: 1rem; margin: 0 0 4px; color: #173b5a; }
.cloud-network-upcoming-grid span, .cloud-network-upcoming-grid small { display: block; color: #718095; }

@media (max-width: 900px) {
  .cloud-network-grid, .cloud-network-settings-grid { grid-template-columns: 1fr; }
  .cloud-network-lgpd-form { grid-template-columns: 1fr; align-items: stretch; }
  .cloud-network-upcoming-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .cloud-network-shell { width: min(100% - 16px, 1240px); }
  .cloud-network-summary { grid-template-columns: 1fr; gap: 8px; }
  .cloud-network-summary article { min-height: 74px; }
  .cloud-network-person-card { align-items: flex-start; flex-direction: column; }
  .cloud-network-person-actions { width: 100%; justify-content: flex-start; padding-left: 70px; }
  .cloud-network-photo-layout { grid-template-columns: 1fr; }
  .cloud-network-photo-preview { width: 150px; height: 150px; border-radius: 25px; }
  .cloud-network-profile-hero { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
  .cloud-network-profile-hero .cloud-network-profile-category { grid-column: 1 / -1; width: 100%; }
  .cloud-network-profile-hero h1 { font-size: 1.55rem; }
  .cloud-network-upcoming-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   RankingBT v135 - cadastro unificado e padronização Minha Rede
   ========================================================= */
.cloud-profile-unified-navbar {
  width: min(1240px, calc(100% - 32px)) !important;
  display: grid !important;
  grid-template-columns: minmax(220px, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
}

.cloud-profile-unified-navbar .cloud-athlete-profile-brand img,
.cloud-network-main-header .cloud-athlete-hero-brand img {
  display: block;
  width: auto;
  height: 54px;
  max-width: min(320px, 42vw);
  object-fit: contain;
}

.cloud-profile-main-nav,
.cloud-network-header-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(145px, 1fr)) 46px;
  align-items: stretch;
  gap: 9px;
}

.cloud-profile-header-btn {
  min-height: 46px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 12px;
  background: #fff !important;
  color: var(--cloud-primary-dark) !important;
  box-shadow: 0 10px 22px rgba(10, 29, 48, .16);
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.cloud-profile-header-btn:hover,
.cloud-profile-header-btn:focus {
  background: #eef4fb !important;
  color: var(--cloud-primary-dark) !important;
  border-color: #fff !important;
}

.cloud-profile-logout-x,
.cloud-public-profile-logout-x {
  width: 46px;
  height: 46px;
  min-width: 46px;
  align-self: center;
}

.cloud-profile-unified-shell {
  width: min(1240px, calc(100% - 32px));
}

.cloud-profile-unified-card {
  padding: 24px;
}

.cloud-profile-title-head {
  margin-bottom: 18px;
}

.cloud-profile-title-head h1 {
  margin: 0 0 4px;
  color: var(--cloud-primary-dark);
  font-size: clamp(1.65rem, 2.4vw, 2.15rem);
  font-weight: 500;
}

.cloud-profile-title-head p {
  margin: 0;
  color: #697b8e;
}

.cloud-profile-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 8px;
  border: 1px solid #dce6ef;
  border-radius: 17px;
  background: #f3f7fb;
}

.cloud-profile-tab {
  min-width: 0;
  min-height: 64px;
  padding: 10px 14px;
  border: 1px solid transparent;
  border-radius: 13px;
  color: #496075;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  transition: .16s ease;
}

.cloud-profile-tab > i {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  background: #e5edf5;
  color: #31536f;
}

.cloud-profile-tab span,
.cloud-profile-tab strong,
.cloud-profile-tab small {
  display: block;
}

.cloud-profile-tab strong {
  color: inherit;
  font-size: 1rem;
  line-height: 1.1;
}

.cloud-profile-tab small {
  margin-top: 3px;
  color: #77899a;
  font-size: .83rem;
}

.cloud-profile-tab:hover,
.cloud-profile-tab:focus {
  background: #fff;
  color: #183b5b;
}

.cloud-profile-tab.is-active {
  border-color: rgba(31, 59, 92, .18);
  background: linear-gradient(135deg, var(--cloud-primary), var(--cloud-primary-soft));
  color: #fff;
  box-shadow: 0 10px 22px rgba(31, 59, 92, .18);
}

.cloud-profile-tab.is-active > i {
  background: rgba(255,255,255,.16);
  color: #fff;
}

.cloud-profile-tab.is-active small {
  color: rgba(255,255,255,.78);
}

.cloud-profile-tab-panel {
  padding-top: 20px;
}

.cloud-profile-section-intro {
  padding-bottom: 15px;
  border-bottom: 1px solid #e3eaf2;
}

.cloud-network-inner-card {
  margin-top: 15px;
  padding: 20px;
  border: 1px solid #dce6ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(20, 45, 70, .05);
}

.cloud-network-action-btn,
.cloud-network-form-button,
.cloud-network-search-button {
  min-height: 42px;
  border-radius: 11px;
  padding: 9px 14px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.cloud-network-form-button {
  min-width: 180px;
}

.cloud-network-search-button {
  min-width: 125px;
}

.cloud-network-person-actions .cloud-network-action-btn {
  min-height: 36px;
  padding: 7px 11px;
  border-radius: 10px;
  font-size: .88rem;
}

.cloud-network-inline-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.cloud-network-photo-form input[type="file"]::file-selector-button {
  min-height: 38px;
  margin: -10px 12px -10px -14px;
  padding: 8px 13px;
  border: 0;
  border-right: 1px solid #d6dfeb;
  background: #eaf1f8;
  color: #173a5a;
  font-weight: 700;
}

.cloud-network-main-header {
  align-items: center;
}

.cloud-network-header-copy {
  min-width: 0;
}

.cloud-network-main-header h1 {
  margin-top: 15px;
}

.cloud-network-header-actions {
  flex: 0 0 auto;
  min-width: 410px;
}

.cloud-network-search-card .input-group > .form-control,
.cloud-network-search-card .input-group > .input-group-text,
.cloud-network-search-card .input-group > .btn {
  min-height: 46px;
}

.cloud-network-blocked-list .cloud-network-action-btn {
  min-height: 38px;
}

.cloud-navbar-public-profile .cloud-brand-logo-full {
  display: block !important;
  height: 48px !important;
  width: auto !important;
  max-width: min(285px, 42vw) !important;
  object-fit: contain !important;
}

.cloud-navbar-public-profile .cloud-brand-logo-mark {
  display: none !important;
}

.cloud-navbar-public-profile .cloud-public-profile-logout-x {
  flex: 0 0 46px;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-profile-unified-navbar {
    width: min(100% - 24px, 1240px) !important;
    grid-template-columns: minmax(200px, 1fr) auto !important;
    padding: 13px 15px !important;
  }

  .cloud-profile-unified-navbar .cloud-athlete-profile-brand img,
  .cloud-network-main-header .cloud-athlete-hero-brand img {
    height: 48px;
    max-width: 270px;
  }

  .cloud-profile-main-nav,
  .cloud-network-header-actions {
    grid-template-columns: repeat(2, minmax(126px, 1fr)) 44px;
    gap: 8px;
  }

  .cloud-profile-header-btn {
    min-height: 44px;
    padding: 9px 10px;
    font-size: .94rem;
  }

  .cloud-profile-logout-x,
  .cloud-public-profile-logout-x {
    width: 44px;
    height: 44px;
    min-width: 44px;
  }

  .cloud-profile-unified-shell,
  .cloud-network-shell {
    width: min(100% - 24px, 1240px);
  }

  .cloud-network-header-actions {
    min-width: 360px;
  }
}

@media (max-width: 767.98px) {
  .cloud-profile-unified-navbar {
    width: calc(100% - 16px) !important;
    margin: 8px auto 0 !important;
    padding: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .cloud-profile-unified-navbar .cloud-athlete-profile-brand {
    width: 100% !important;
  }

  .cloud-profile-unified-navbar .cloud-athlete-profile-brand img,
  .cloud-network-main-header .cloud-athlete-hero-brand img {
    height: 42px !important;
    width: auto !important;
    max-width: min(245px, 76vw) !important;
  }

  .cloud-profile-main-nav,
  .cloud-network-header-actions {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 42px;
    gap: 7px;
  }

  .cloud-profile-header-btn {
    min-width: 0;
    min-height: 42px;
    padding: 8px 7px;
    font-size: .9rem;
  }

  .cloud-profile-logout-x,
  .cloud-public-profile-logout-x {
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 12px;
  }

  .cloud-profile-unified-shell {
    width: calc(100% - 16px);
    margin-top: 10px !important;
  }

  .cloud-profile-unified-card {
    padding: 16px;
  }

  .cloud-profile-title-head {
    grid-template-columns: 1fr !important;
    text-align: center;
  }

  .cloud-profile-title-head .cloud-login-icon {
    margin: 0 auto 4px;
  }

  .cloud-profile-tabs {
    gap: 7px;
    padding: 7px;
  }

  .cloud-profile-tab {
    min-height: 58px;
    padding: 8px;
    gap: 7px;
  }

  .cloud-profile-tab > i {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }

  .cloud-profile-tab strong {
    font-size: .92rem;
  }

  .cloud-profile-tab small {
    font-size: .73rem;
  }

  .cloud-profile-tab-panel {
    padding-top: 15px;
  }

  .cloud-network-inner-card {
    padding: 16px;
    border-radius: 16px;
  }

  .cloud-network-main-header {
    padding: 18px 16px !important;
    align-items: stretch !important;
  }

  .cloud-network-header-actions {
    min-width: 0;
    margin-top: 4px;
  }

  .cloud-network-main-header h1 {
    margin-top: 12px;
  }

  .cloud-network-section-head {
    flex-direction: column;
    align-items: stretch;
  }

  .cloud-network-section-head > .btn {
    width: 100%;
  }

  .cloud-network-action-btn,
  .cloud-network-form-button {
    width: 100%;
    min-width: 0;
  }

  .cloud-network-search-form .input-group {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .cloud-network-search-form .input-group-text {
    border-radius: 12px 0 0 12px !important;
  }

  .cloud-network-search-form .form-control {
    border-radius: 0 12px 12px 0 !important;
  }

  .cloud-network-search-button {
    width: 100%;
    grid-column: 1 / -1;
    margin-top: 8px;
    border-radius: 11px !important;
  }

  .cloud-network-person-actions {
    padding-left: 0 !important;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-network-person-actions form,
  .cloud-network-person-actions .cloud-network-action-btn {
    width: 100%;
  }

  .cloud-network-person-actions .badge {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .cloud-network-lgpd-form .cloud-network-form-button {
    min-height: 46px;
  }

  .cloud-network-blocked-list article {
    align-items: stretch;
    flex-direction: column;
  }

  .cloud-network-blocked-list form,
  .cloud-network-blocked-list .cloud-network-action-btn {
    width: 100%;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-full {
    display: block !important;
    height: 40px !important;
    max-width: min(220px, 64vw) !important;
  }

  .cloud-navbar-public-profile .cloud-brand-logo-mark {
    display: none !important;
  }
}

@media (max-width: 390px) {
  .cloud-profile-main-nav,
  .cloud-network-header-actions {
    grid-template-columns: minmax(0, 1fr) 42px;
  }

  .cloud-profile-main-nav .cloud-profile-header-btn:first-child,
  .cloud-network-header-actions .cloud-profile-header-btn:first-child {
    grid-column: 1 / 2;
  }

  .cloud-profile-main-nav .cloud-profile-header-btn:nth-child(2),
  .cloud-network-header-actions .cloud-profile-header-btn:nth-child(2) {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .cloud-profile-main-nav .cloud-profile-logout-x,
  .cloud-network-header-actions .cloud-profile-logout-x {
    grid-column: 2;
    grid-row: 1;
  }

  .cloud-profile-tab {
    flex-direction: column;
    text-align: center;
  }

  .cloud-profile-tab small {
    display: none;
  }
}

/* =========================================================
   RankingBT v136 - cabeçalho global e fixo da área do atleta
   ========================================================= */
.cloud-athlete-global-header {
  position: sticky;
  top: 0;
  z-index: 1045;
  width: 100%;
  padding: 12px 16px 0;
  background: linear-gradient(180deg, rgba(239, 244, 249, .98) 0%, rgba(239, 244, 249, .92) 72%, rgba(239, 244, 249, 0) 100%);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.cloud-athlete-global-bar {
  width: min(1240px, 100%);
  min-height: 112px;
  margin: 0 auto;
  padding: 14px 16px;
  border-radius: 22px;
  background: linear-gradient(115deg, #123f43 0%, #1d3b5d 48%, #1f3b5c 100%);
  box-shadow: 0 16px 36px rgba(18, 43, 68, .16);
  display: grid;
  grid-template-columns: minmax(210px, 255px) minmax(0, 1fr) 48px;
  align-items: center;
  gap: 14px;
}

.cloud-athlete-global-brand-wrap {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}

.cloud-athlete-global-brand {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  text-decoration: none;
}

.cloud-athlete-global-brand img {
  display: block;
  width: auto;
  height: 52px;
  max-width: 100%;
  object-fit: contain;
}

.cloud-athlete-global-user {
  max-width: 100%;
  color: rgba(255, 255, 255, .78);
  font-size: .89rem;
  line-height: 1.15;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cloud-athlete-global-menu {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(118px, 1fr));
  gap: 8px;
}

.cloud-athlete-global-link {
  min-width: 0;
  min-height: 40px;
  padding: 8px 9px;
  border: 1px solid rgba(255, 255, 255, .26);
  border-radius: 11px;
  background: #fff;
  color: #143553;
  box-shadow: 0 8px 18px rgba(9, 28, 47, .13);
  text-decoration: none;
  font-size: .89rem;
  font-weight: 800;
  line-height: 1.08;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
  transition: transform .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}

.cloud-athlete-global-link i {
  flex: 0 0 auto;
}

.cloud-athlete-global-link span {
  min-width: 0;
}

.cloud-athlete-global-link:hover,
.cloud-athlete-global-link:focus {
  background: #edf4fb;
  color: #102f4c;
  border-color: #fff;
  transform: translateY(-1px);
}

.cloud-athlete-global-link.is-active {
  border-color: #f8c83d;
  background: #fff4c7;
  color: #173752;
  box-shadow: 0 0 0 2px rgba(248, 200, 61, .18), 0 8px 18px rgba(9, 28, 47, .13);
}

.cloud-athlete-global-logout,
.cloud-athlete-global-toggle {
  width: 46px;
  height: 46px;
  min-width: 46px;
  border: 0;
  border-radius: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.18rem;
  text-decoration: none;
  transition: transform .15s ease, filter .15s ease;
}

.cloud-athlete-global-logout {
  background: #f2474b;
  color: #fff;
  box-shadow: 0 10px 22px rgba(242, 71, 75, .24);
}

.cloud-athlete-global-logout:hover,
.cloud-athlete-global-logout:focus {
  color: #fff;
  filter: brightness(.94);
  transform: translateY(-1px);
}

.cloud-athlete-global-toggle {
  display: none;
  background: #fff;
  color: #173752;
  cursor: pointer;
}

.cloud-athlete-page-intro {
  margin-bottom: 16px;
  padding: 18px 20px;
  border: 1px solid #dce6ef;
  border-radius: 19px;
  background: #fff;
  box-shadow: 0 11px 28px rgba(18, 43, 68, .08);
  display: flex;
  align-items: center;
  gap: 14px;
}

.cloud-athlete-page-intro-icon {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 14px;
  background: linear-gradient(135deg, #173f5f, #1e7f83);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
}

.cloud-athlete-page-intro h1 {
  margin: 0;
  color: #123553;
  font-size: clamp(1.55rem, 2.5vw, 2rem);
  font-weight: 500;
  line-height: 1.08;
}

.cloud-athlete-page-intro p {
  margin: 5px 0 0;
  color: #65798d;
  line-height: 1.35;
}

.cloud-athlete-global-page-main {
  padding-top: 14px !important;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-athlete-global-header {
    padding: 10px 12px 0;
  }

  .cloud-athlete-global-bar {
    min-height: 118px;
    grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) 44px;
    gap: 10px;
    padding: 12px 13px;
    border-radius: 20px;
  }

  .cloud-athlete-global-brand img {
    height: 46px;
  }

  .cloud-athlete-global-user {
    font-size: .82rem;
  }

  .cloud-athlete-global-menu {
    grid-template-columns: repeat(3, minmax(110px, 1fr));
    gap: 7px;
  }

  .cloud-athlete-global-link {
    min-height: 40px;
    padding: 7px;
    font-size: .84rem;
  }

  .cloud-athlete-global-logout {
    width: 44px;
    height: 44px;
    min-width: 44px;
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-global-header {
    padding: 8px 8px 0;
    background: linear-gradient(180deg, rgba(239, 244, 249, .99) 0%, rgba(239, 244, 249, .94) 82%, rgba(239, 244, 249, 0) 100%);
  }

  .cloud-athlete-global-bar {
    min-height: 0;
    padding: 11px;
    border-radius: 17px;
    grid-template-columns: minmax(0, 1fr) 42px 42px;
    gap: 8px;
  }

  .cloud-athlete-global-brand-wrap {
    gap: 2px;
  }

  .cloud-athlete-global-brand img {
    height: 39px;
    max-width: min(235px, 66vw);
  }

  .cloud-athlete-global-user {
    font-size: .75rem;
  }

  .cloud-athlete-global-toggle {
    display: inline-flex;
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 11px;
  }

  .cloud-athlete-global-logout {
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 11px;
  }

  .cloud-athlete-global-menu {
    grid-column: 1 / -1;
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    padding-top: 3px;
  }

  .cloud-athlete-global-menu.is-open {
    display: grid;
  }

  .cloud-athlete-global-link {
    min-height: 43px;
    padding: 8px 7px;
    font-size: .86rem;
  }

  .cloud-athlete-page-intro {
    margin-bottom: 12px;
    padding: 15px;
    border-radius: 16px;
    align-items: flex-start;
  }

  .cloud-athlete-page-intro-icon {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
    border-radius: 12px;
  }

  .cloud-athlete-page-intro h1 {
    font-size: 1.45rem;
  }

  .cloud-athlete-page-intro p {
    font-size: .93rem;
  }

  .cloud-athlete-global-page-main {
    padding-top: 10px !important;
  }
}

@media (max-width: 430px) {
  .cloud-athlete-global-brand img {
    height: 36px;
    max-width: min(205px, 61vw);
  }

  .cloud-athlete-global-user {
    display: none;
  }

  .cloud-athlete-global-menu {
    grid-template-columns: 1fr;
  }

  .cloud-athlete-page-intro {
    gap: 10px;
  }
}

.cloud-page-body .cloud-search-page-shell.cloud-athlete-global-page-main {
  min-height: 0;
  padding-top: 14px;
  align-items: flex-start;
}

.cloud-search-page-nav-note {
  max-width: 280px;
  padding: 10px 12px;
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #f4f8fc;
  color: #587088;
  font-size: .9rem;
  line-height: 1.3;
  display: inline-flex;
  align-items: flex-start;
}

@media (max-width: 767.98px) {
  .cloud-search-page-nav-note {
    max-width: none;
    width: 100%;
  }
}

/* =========================================================
   RankingBT v137 - largura, identidade e menu responsivo
   ========================================================= */
.cloud-athlete-global-page-main {
  width: min(1240px, calc(100% - 32px)) !important;
  max-width: 1240px !important;
  margin: 14px auto 36px !important;
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  box-sizing: border-box;
}

.cloud-athlete-global-page-main > * {
  max-width: 100%;
  box-sizing: border-box;
}

.cloud-page-body .cloud-search-page-shell.cloud-athlete-global-page-main {
  width: min(1240px, calc(100% - 32px)) !important;
  min-height: 0;
  margin: 14px auto 36px !important;
  padding: 0 !important;
  align-items: flex-start;
}

.cloud-athlete-global-bar {
  grid-template-columns: minmax(225px, 255px) minmax(0, 1fr) 46px;
  gap: 14px;
}

.cloud-athlete-global-brand-wrap {
  gap: 7px;
}

.cloud-athlete-global-brand img {
  height: 48px;
}

.cloud-athlete-global-identity {
  max-width: 100%;
  display: flex;
  align-items: center;
  gap: 9px;
}

.cloud-athlete-global-avatar {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border: 2px solid rgba(255, 255, 255, .78);
  border-radius: 50%;
  background: #174f70;
  color: #fff;
  box-shadow: 0 6px 14px rgba(4, 20, 34, .18);
  object-fit: cover;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-athlete-global-avatar-initials {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .02em;
}

.cloud-athlete-global-user {
  min-width: 0;
  max-width: 100%;
  color: #fff;
  line-height: 1.08;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  white-space: normal;
}

.cloud-athlete-global-user small {
  color: rgba(255, 255, 255, .72);
  font-size: .76rem;
  font-weight: 500;
}

.cloud-athlete-global-user strong {
  max-width: 100%;
  color: #fff;
  font-size: 1.08rem;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cloud-athlete-global-menu {
  grid-template-columns: repeat(4, minmax(128px, 154px));
  justify-content: end;
  align-content: center;
}

.cloud-athlete-global-link {
  min-height: 39px;
  padding: 7px 9px;
  font-size: .85rem;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-athlete-global-header {
    padding: 10px 12px 0;
  }

  .cloud-athlete-global-bar {
    min-height: 0;
    padding: 12px 13px;
    grid-template-columns: minmax(0, 1fr) 44px 44px;
    gap: 9px;
  }

  .cloud-athlete-global-brand-wrap {
    min-width: 0;
    flex-direction: row;
    align-items: center;
    gap: 14px;
  }

  .cloud-athlete-global-brand img {
    height: 44px;
    max-width: 235px;
  }

  .cloud-athlete-global-avatar {
    width: 38px;
    height: 38px;
    min-width: 38px;
  }

  .cloud-athlete-global-user strong {
    font-size: 1rem;
  }

  .cloud-athlete-global-toggle {
    display: inline-flex;
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 12px;
  }

  .cloud-athlete-global-logout {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 12px;
  }

  .cloud-athlete-global-menu {
    grid-column: 1 / -1;
    display: none;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    padding-top: 3px;
  }

  .cloud-athlete-global-menu.is-open {
    display: grid;
  }

  .cloud-athlete-global-link {
    min-height: 42px;
    width: 100%;
    padding: 8px;
    font-size: .87rem;
  }

  .cloud-athlete-global-page-main,
  .cloud-page-body .cloud-search-page-shell.cloud-athlete-global-page-main {
    width: min(1240px, calc(100% - 24px)) !important;
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-global-page-main,
  .cloud-page-body .cloud-search-page-shell.cloud-athlete-global-page-main {
    width: calc(100% - 16px) !important;
    margin: 10px auto 28px !important;
  }

  .cloud-athlete-global-brand-wrap {
    gap: 5px;
  }

  .cloud-athlete-global-brand img {
    height: 36px;
    max-width: min(205px, 65vw);
  }

  .cloud-athlete-global-identity {
    gap: 7px;
  }

  .cloud-athlete-global-avatar {
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-width: 1px;
  }

  .cloud-athlete-global-avatar-initials {
    font-size: .67rem;
  }

  .cloud-athlete-global-user {
    display: flex;
  }

  .cloud-athlete-global-user small {
    font-size: .68rem;
  }

  .cloud-athlete-global-user strong {
    font-size: .88rem;
  }

  .cloud-athlete-global-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 430px) {
  .cloud-athlete-global-brand img {
    height: 33px;
    max-width: min(188px, 61vw);
  }

  .cloud-athlete-global-avatar {
    width: 30px;
    height: 30px;
    min-width: 30px;
  }

  .cloud-athlete-global-user {
    display: flex;
  }

  .cloud-athlete-global-user strong {
    font-size: .82rem;
  }

  .cloud-athlete-global-menu {
    grid-template-columns: 1fr;
  }
}

/* Posicionamento explícito evita que o menu expansível desloque o botão de saída. */
.cloud-athlete-global-brand-wrap {
  grid-column: 1;
  grid-row: 1;
}

.cloud-athlete-global-menu {
  grid-column: 2;
  grid-row: 1;
}

.cloud-athlete-global-logout {
  grid-column: 3;
  grid-row: 1;
}

@media (max-width: 1199.98px) {
  .cloud-athlete-global-toggle {
    grid-column: 2;
    grid-row: 1;
  }

  .cloud-athlete-global-menu {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .cloud-athlete-global-logout {
    grid-column: 3;
    grid-row: 1;
  }
}

/* =========================================================
   RankingBT v138 - avatar móvel e menu compacto em duas colunas
   ========================================================= */
.cloud-athlete-global-avatar-frame {
  width: 40px;
  height: 40px;
  min-width: 40px;
  flex: 0 0 40px;
  position: relative;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, .78);
  border-radius: 50%;
  background: #174f70;
  color: #fff;
  box-shadow: 0 6px 14px rgba(4, 20, 34, .18);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-athlete-global-avatar-frame .cloud-athlete-global-avatar {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  object-fit: cover;
  display: block;
}

.cloud-athlete-global-avatar-frame .cloud-athlete-global-avatar-initials {
  display: flex;
  align-items: center;
  justify-content: center;
}

.cloud-athlete-global-avatar-frame .cloud-athlete-global-avatar[hidden] {
  display: none !important;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-athlete-global-avatar-frame {
    width: 38px;
    height: 38px;
    min-width: 38px;
    flex-basis: 38px;
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-global-bar {
    grid-template-columns: minmax(0, 1fr) 42px 42px;
    column-gap: 14px;
    row-gap: 8px;
  }

  .cloud-athlete-global-brand-wrap {
    overflow: visible;
  }

  .cloud-athlete-global-identity {
    min-height: 32px;
    overflow: visible;
  }

  .cloud-athlete-global-avatar-frame {
    width: 32px;
    height: 32px;
    min-width: 32px;
    flex-basis: 32px;
    border-width: 1px;
  }

  .cloud-athlete-global-menu,
  .cloud-athlete-global-menu.is-open {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  .cloud-athlete-global-link {
    min-height: 40px;
    padding: 7px 5px;
    gap: 4px;
    font-size: .79rem;
    line-height: 1.08;
  }

  .cloud-athlete-global-link span {
    white-space: normal;
  }
}

@media (max-width: 430px) {
  .cloud-athlete-global-avatar-frame {
    width: 30px;
    height: 30px;
    min-width: 30px;
    flex-basis: 30px;
  }

  .cloud-athlete-global-menu,
  .cloud-athlete-global-menu.is-open {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-athlete-global-link {
    min-height: 39px;
    padding: 6px 4px;
    font-size: .75rem;
  }
}

@media (max-width: 350px) {
  .cloud-athlete-global-bar {
    column-gap: 10px;
  }

  .cloud-athlete-global-link {
    font-size: .71rem;
  }
}


/* =========================================================
   RankingBT v139 - busca móvel, perfil compacto e fotos seguras
   ========================================================= */
.cloud-network-search-form {
  width: 100%;
}

.cloud-network-search-form .input-group {
  width: 100%;
}

.cloud-network-profile-action-btn {
  min-height: 38px !important;
  width: auto !important;
  padding: 8px 12px !important;
  border: 1px solid rgba(255, 255, 255, .65) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #173a5a !important;
  box-shadow: 0 7px 16px rgba(8, 31, 51, .16) !important;
  font-size: .88rem !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
}

.cloud-network-profile-action-btn:hover,
.cloud-network-profile-action-btn:focus {
  border-color: #fff !important;
  background: #edf4fb !important;
  color: #102f4c !important;
}

.cloud-network-profile-actions form {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 !important;
}

@media (max-width: 767.98px) {
  .cloud-network-search-form,
  .cloud-network-search-form .input-group {
    width: 100% !important;
    max-width: none !important;
  }

  .cloud-network-search-form .input-group {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    align-items: stretch !important;
  }

  .cloud-network-search-form .input-group-text {
    width: 44px !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .cloud-network-search-form .form-control {
    width: 100% !important;
    min-width: 0 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  .cloud-network-search-button {
    width: 100% !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }
}

@media (max-width: 680px) {
  .cloud-network-profile-hero {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px 12px !important;
    padding: 15px !important;
    border-radius: 20px !important;
  }

  .cloud-network-profile-hero > .cloud-network-avatar {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    flex-basis: 72px !important;
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    border-radius: 20px !important;
    font-size: 1.32rem !important;
  }

  .cloud-network-profile-hero > div:nth-child(2) {
    min-width: 0;
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  .cloud-network-profile-hero .carreira-eyebrow {
    margin: 0 0 2px !important;
    font-size: .69rem !important;
    line-height: 1 !important;
  }

  .cloud-network-profile-hero h1 {
    margin: 0 !important;
    font-size: 1.36rem !important;
    line-height: 1.05 !important;
  }

  .cloud-network-profile-hero-meta {
    gap: 3px 10px !important;
    margin-top: 4px !important;
    font-size: .86rem !important;
    line-height: 1.15 !important;
  }

  .cloud-network-profile-actions {
    width: 100%;
    margin-top: 8px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
  }

  .cloud-network-profile-actions form {
    display: inline-flex !important;
    width: auto !important;
    flex: 0 1 auto !important;
  }

  .cloud-network-profile-actions .cloud-network-profile-action-btn {
    width: auto !important;
    min-height: 34px !important;
    padding: 6px 9px !important;
    border-radius: 9px !important;
    font-size: .78rem !important;
  }

  .cloud-network-profile-actions .badge {
    min-height: 25px;
    display: inline-flex;
    align-items: center;
    font-size: .72rem;
  }

  .cloud-network-profile-category {
    min-width: 0 !important;
    width: 100% !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
    padding: 7px 10px !important;
    border-radius: 12px !important;
    text-align: left !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  .cloud-network-profile-category span {
    font-size: .66rem !important;
  }

  .cloud-network-profile-category strong {
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1 !important;
  }
}

@media (max-width: 380px) {
  .cloud-network-profile-hero {
    grid-template-columns: 64px minmax(0, 1fr) !important;
    padding: 13px !important;
    gap: 9px 10px !important;
  }

  .cloud-network-profile-hero > .cloud-network-avatar {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    flex-basis: 64px !important;
    border-radius: 18px !important;
  }

  .cloud-network-profile-hero h1 {
    font-size: 1.22rem !important;
  }

  .cloud-network-profile-actions .cloud-network-profile-action-btn {
    padding: 6px 7px !important;
    font-size: .73rem !important;
  }
}

/* =========================================================
   RankingBT v140 - perfil social compacto e fotos persistentes
   ========================================================= */
.cloud-network-profile-hero {
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
}

.cloud-network-profile-avatar-column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  min-width: 104px;
}

.cloud-network-profile-avatar-column .cloud-network-avatar {
  width: 92px;
  height: 92px;
  flex: 0 0 92px;
  border-radius: 24px;
  object-fit: cover;
}

.cloud-network-profile-level {
  display: block;
  width: 100%;
  max-width: 132px;
  padding: 5px 9px;
  border: 1px solid rgba(255, 255, 255, .30);
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  color: #fff;
  font-size: .92rem;
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
}

.cloud-network-profile-summary {
  min-width: 0;
}

.cloud-network-profile-actions.is-friend-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 150px));
  gap: 8px !important;
}

.cloud-network-profile-actions.is-friend-actions form,
.cloud-network-profile-actions.is-friend-actions .cloud-network-profile-action-btn {
  width: 100% !important;
}

.cloud-network-profile-note {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 10px;
  border-radius: 9px;
  background: rgba(255,255,255,.14);
  color: #fff;
  font-size: .82rem;
  font-weight: 700;
}

.cloud-network-photo-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  padding: 9px 11px;
  border: 1px solid #cfdceb;
  border-radius: 10px;
  background: #f5f8fc;
  color: #47647f;
  font-size: .88rem;
}

.cloud-network-photo-status.is-ok {
  border-color: #b8dfc7;
  background: #f1fbf5;
  color: #247044;
}

@media (max-width: 680px) {
  .cloud-network-profile-hero {
    grid-template-columns: 74px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px 12px !important;
    padding: 14px !important;
  }

  .cloud-network-profile-avatar-column {
    min-width: 0;
    width: 74px;
    gap: 6px;
  }

  .cloud-network-profile-avatar-column .cloud-network-avatar {
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    flex-basis: 68px !important;
    border-radius: 18px !important;
    font-size: 1.25rem !important;
  }

  .cloud-network-profile-level {
    width: 74px;
    padding: 4px 5px;
    font-size: .76rem;
    white-space: normal;
  }

  .cloud-network-profile-summary {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  .cloud-network-profile-hero h1 {
    font-size: 1.32rem !important;
    line-height: 1.05 !important;
  }

  .cloud-network-profile-hero-meta {
    display: grid !important;
    gap: 2px !important;
    margin-top: 4px !important;
    font-size: .82rem !important;
  }

  .cloud-network-profile-actions {
    margin-top: 8px !important;
  }

  .cloud-network-profile-actions.is-friend-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100%;
  }

  .cloud-network-profile-actions.is-friend-actions form {
    min-width: 0;
  }

  .cloud-network-profile-actions.is-friend-actions .cloud-network-profile-action-btn {
    min-height: 34px !important;
    padding: 6px 7px !important;
    font-size: .76rem !important;
  }
}

@media (max-width: 360px) {
  .cloud-network-profile-hero {
    grid-template-columns: 66px minmax(0, 1fr) !important;
    gap: 9px !important;
    padding: 12px !important;
  }

  .cloud-network-profile-avatar-column,
  .cloud-network-profile-level {
    width: 66px;
  }

  .cloud-network-profile-avatar-column .cloud-network-avatar {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    flex-basis: 62px !important;
  }

  .cloud-network-profile-level {
    font-size: .70rem;
  }
}

.cloud-unified-career-section {
  display: grid;
  gap: 16px;
  margin-bottom: 18px;
}

.cloud-unified-career-section > .cloud-career-overview-grid,
.cloud-unified-career-section > .cloud-career-progress-grid,
.cloud-unified-career-section > .cloud-career-content-grid,
.cloud-unified-career-section > .cloud-card,
.cloud-unified-career-section > .alert {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.cloud-unified-operations-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 4px 0 12px;
  padding: 0 2px;
}

.cloud-unified-operations-head h2 {
  margin: 0;
  color: var(--cloud-primary-dark);
  font-size: 1.22rem;
  font-weight: 800;
}

.cloud-unified-operations-head p {
  margin: 3px 0 0;
  color: var(--cloud-muted);
  font-size: .92rem;
}

@media (max-width: 680px) {
  .cloud-unified-career-section {
    gap: 12px;
    margin-bottom: 14px;
  }

  .cloud-unified-operations-head h2 {
    font-size: 1.08rem;
  }

  .cloud-unified-operations-head p {
    font-size: .82rem;
  }
}

/* =========================================================
   Comunidade RankingBT - Fase 2.1: conquistas e promoções
   ========================================================= */
.cloud-career-achievements-card,
.cloud-network-achievements-card {
  overflow: hidden;
}

.cloud-network-achievements-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.cloud-network-achievement {
  min-width: 0;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid #dce6f2;
  border-radius: 16px;
  background: #f8fbff;
}

.cloud-network-achievement-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: #e8f2fc;
  color: #17466f;
  font-size: 1.25rem;
}

.cloud-network-achievement strong {
  display: block;
  color: #0d2a49;
  font-size: 1rem;
  line-height: 1.1;
}

.cloud-network-achievement p {
  margin: 4px 0 3px;
  color: #5d7290;
  font-size: .88rem;
  line-height: 1.25;
}

.cloud-network-achievement small {
  color: #7b8da5;
  font-size: .78rem;
}

.cloud-network-achievement.is-bronze .cloud-network-achievement-icon { background: #f4e3d6; color: #9b5e32; }
.cloud-network-achievement.is-silver .cloud-network-achievement-icon { background: #e9eef4; color: #62758b; }
.cloud-network-achievement.is-gold .cloud-network-achievement-icon { background: #fff1bd; color: #9b6a00; }
.cloud-network-achievement.is-special .cloud-network-achievement-icon { background: #e7f6f5; color: #087a78; }

.cloud-network-promotions {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #e2eaf3;
}

.cloud-network-promotions > h3 {
  margin: 0 0 10px;
  color: #153555;
  font-size: 1.03rem;
}

.cloud-network-promotions > article {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  padding: 10px 0;
}

.cloud-network-promotions > article + article {
  border-top: 1px dashed #dbe5ef;
}

.cloud-network-promotions > article > span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e4f5ed;
  color: #198754;
}

.cloud-network-promotions strong {
  display: block;
  color: #113455;
  line-height: 1.15;
}

.cloud-network-promotions p {
  margin: 3px 0;
  color: #5e728c;
  font-size: .9rem;
}

.cloud-network-promotions small {
  color: #7c8ca0;
  font-size: .8rem;
}

@media (max-width: 991.98px) {
  .cloud-network-achievements-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .cloud-network-achievements-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .cloud-network-achievement {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    padding: 11px;
    border-radius: 14px;
  }

  .cloud-network-achievement-icon {
    width: 42px;
    height: 42px;
    border-radius: 13px;
    font-size: 1.05rem;
  }

  .cloud-network-achievement strong { font-size: .95rem; }
  .cloud-network-achievement p { font-size: .83rem; }
  .cloud-network-promotions > article { padding: 8px 0; }
}

/* =========================================================
   RankingBT v143 - ações de foto, consentimento e LGPD
   ========================================================= */
.cloud-network-card-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
}

.cloud-network-card-actions .cloud-network-action-btn,
.cloud-network-card-actions .cloud-network-form-button {
  width: 190px;
  min-width: 190px;
  min-height: 42px;
}

.cloud-network-lgpd-form {
  grid-template-columns: minmax(200px, .6fr) minmax(300px, 1.4fr);
}

.cloud-network-consent-hint {
  margin-top: 10px !important;
  padding: 9px 11px;
  border: 1px solid #d6e3ef;
  border-radius: 11px;
  background: #f6f9fc;
  color: #587087 !important;
  line-height: 1.35;
}

.cloud-network-photo-actions {
  padding-top: 2px;
}

@media (max-width: 900px) {
  .cloud-network-lgpd-form {
    grid-template-columns: 1fr;
  }

  .cloud-network-card-actions {
    justify-content: flex-end;
  }
}

@media (max-width: 680px) {
  .cloud-network-card-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .cloud-network-card-actions .cloud-network-action-btn,
  .cloud-network-card-actions .cloud-network-form-button {
    width: 100%;
    min-width: 0;
    padding-left: 10px;
    padding-right: 10px;
    font-size: .9rem;
  }
}

@media (max-width: 360px) {
  .cloud-network-card-actions {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   RankingBT v144 - Fase 2.2: inscrições futuras confirmadas
   ========================================================= */
.cloud-network-upcoming-section {
  overflow: hidden;
}

.cloud-network-upcoming-head {
  margin-bottom: 14px;
}

.cloud-network-upcoming-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.cloud-network-upcoming-grid .cloud-network-upcoming-card {
  min-width: 0;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  padding: 14px;
  border: 1px solid #d9e5f1;
  border-radius: 17px;
  background: #f8fbff;
  box-shadow: 0 8px 20px rgba(20, 55, 88, .06);
}

.cloud-network-upcoming-card-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: linear-gradient(145deg, #e6f2fc, #d8ebf9);
  color: #17466f;
  font-size: 1.2rem;
}

.cloud-network-upcoming-card-body {
  min-width: 0;
}

.cloud-network-upcoming-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.cloud-network-upcoming-title-row h3 {
  min-width: 0;
  margin: 0;
  color: #102f4f;
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.cloud-network-upcoming-grid .cloud-network-upcoming-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 7px;
  border-radius: 999px;
  background: #e8f7ef;
  color: #1d7a49;
  font-size: .72rem;
  font-weight: 800;
  white-space: nowrap;
}

.cloud-network-upcoming-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.cloud-network-upcoming-tags span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  padding: 5px 8px;
  border: 1px solid #d9e5ef;
  border-radius: 9px;
  background: #fff;
  color: #365a78;
  font-size: .79rem;
  font-weight: 700;
}

.cloud-network-upcoming-details {
  display: grid;
  gap: 5px;
  margin-top: 9px;
}

.cloud-network-upcoming-details p {
  display: grid;
  grid-template-columns: 17px minmax(0, 1fr);
  align-items: start;
  gap: 6px;
  margin: 0;
  color: #657a91;
  font-size: .83rem;
  line-height: 1.25;
}

.cloud-network-upcoming-details p i {
  margin-top: 2px;
  color: #2d638c;
  text-align: center;
}

.cloud-network-upcoming-details p.is-private {
  color: #8492a3;
  font-style: italic;
}

.cloud-network-upcoming-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 11px;
}

.cloud-network-upcoming-actions .cloud-network-action-btn {
  min-width: 118px;
  min-height: 34px;
  padding: 6px 10px;
  font-size: .82rem;
}

.cloud-network-upcoming-empty {
  min-height: 160px;
}

.cloud-career-upcoming-section {
  margin-top: 0;
}

@media (max-width: 991.98px) {
  .cloud-network-upcoming-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .cloud-network-upcoming-head {
    align-items: flex-start;
  }

  .cloud-network-upcoming-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .cloud-network-upcoming-grid .cloud-network-upcoming-card {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    padding: 11px;
    border-radius: 14px;
  }

  .cloud-network-upcoming-card-icon {
    width: 42px;
    height: 42px;
    border-radius: 13px;
    font-size: 1.05rem;
  }

  .cloud-network-upcoming-title-row h3 {
    font-size: .96rem;
  }

  .cloud-network-upcoming-grid .cloud-network-upcoming-status {
    padding: 3px 6px;
    font-size: .67rem;
  }

  .cloud-network-upcoming-tags {
    gap: 5px;
    margin-top: 6px;
  }

  .cloud-network-upcoming-tags span {
    padding: 4px 7px;
    font-size: .74rem;
  }

  .cloud-network-upcoming-details {
    margin-top: 7px;
  }

  .cloud-network-upcoming-details p {
    font-size: .79rem;
  }

  .cloud-network-upcoming-actions {
    margin-top: 8px;
  }

  .cloud-network-upcoming-actions .cloud-network-action-btn {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 380px) {
  .cloud-network-upcoming-title-row {
    display: grid;
  }

  .cloud-network-upcoming-grid .cloud-network-upcoming-status {
    justify-self: start;
  }
}

/* v145 - consolidação das atividades automáticas da Comunidade */
.rede-activity-admin-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.rede-activity-admin-kpi {
  min-height: 92px;
  padding: 14px 16px;
  border: 1px solid #dfe8f2;
  border-radius: 16px;
  background: #f8fbff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.rede-activity-admin-kpi strong {
  color: #173a5c;
  font-size: 1.5rem;
  line-height: 1;
}
.rede-activity-admin-kpi span {
  margin-top: 7px;
  color: #6d8196;
  font-size: .86rem;
}
@media (max-width: 991.98px) {
  .rede-activity-admin-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .rede-activity-admin-kpis { grid-template-columns: 1fr; }
}

/* =========================================================
   RankingBT v146 - feed esportivo automático da Minha Rede
   ========================================================= */
.cloud-network-feed-card {
  overflow: hidden;
}

.cloud-network-feed-head {
  align-items: center;
  margin-bottom: 14px;
}

.cloud-network-feed-private-note {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 11px;
  border: 1px solid #d7e5ef;
  border-radius: 999px;
  background: #f2f7fb;
  color: #48667f;
  font-size: .82rem;
  font-weight: 700;
  white-space: nowrap;
}

.cloud-network-feed-filters {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  padding: 10px;
  border: 1px solid #dce7f0;
  border-radius: 15px;
  background: #f7fafc;
}

.cloud-network-feed-filter {
  min-width: 0;
  min-height: 39px;
  padding: 8px 9px;
  border: 1px solid #d6e2ec;
  border-radius: 11px;
  background: #fff;
  color: #21435f;
  text-decoration: none;
  font-size: .85rem;
  font-weight: 800;
  line-height: 1.05;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}

.cloud-network-feed-filter:hover,
.cloud-network-feed-filter:focus {
  border-color: #9eb9cf;
  background: #edf5fb;
  color: #163b5b;
  transform: translateY(-1px);
}

.cloud-network-feed-filter.is-active {
  border-color: #1b6987;
  background: linear-gradient(135deg, #173f5f, #1d747c);
  color: #fff;
  box-shadow: 0 7px 16px rgba(23, 63, 95, .17);
}

.cloud-network-feed-list {
  margin-top: 14px;
  display: grid;
  gap: 10px;
}

.cloud-network-feed-item {
  position: relative;
  min-width: 0;
  padding: 15px;
  border: 1px solid #dce6ef;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(18, 43, 68, .055);
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 13px;
}

.cloud-network-feed-item::before {
  content: '';
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 0;
  width: 4px;
  border-radius: 0 6px 6px 0;
  background: #5f7e98;
}

.cloud-network-feed-item.is-result::before { background: #176d83; }
.cloud-network-feed-item.is-achievement::before { background: #c58d13; }
.cloud-network-feed-item.is-registration::before { background: #2878b6; }
.cloud-network-feed-item.is-promotion::before { background: #16845f; }
.cloud-network-feed-item.is-category::before { background: #8056a8; }
.cloud-network-feed-item.is-pair::before { background: #cc6a38; }

.cloud-network-feed-avatar-wrap {
  width: 62px;
  height: 62px;
  position: relative;
}

.cloud-network-feed-avatar-wrap > a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.cloud-network-feed-avatar {
  width: 62px !important;
  height: 62px !important;
  flex: 0 0 62px !important;
  border-radius: 18px !important;
}

.cloud-network-feed-type-icon {
  position: absolute;
  right: -4px;
  bottom: -4px;
  width: 25px;
  height: 25px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #173f5f;
  color: #fff;
  box-shadow: 0 4px 10px rgba(18, 43, 68, .2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: .67rem;
}

.cloud-network-feed-content {
  min-width: 0;
}

.cloud-network-feed-meta {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.cloud-network-feed-athlete {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 7px;
  flex-wrap: wrap;
}

.cloud-network-feed-athlete a,
.cloud-network-feed-athlete strong {
  color: #163b5b;
  font-size: 1rem;
  font-weight: 800;
  text-decoration: none;
}

.cloud-network-feed-athlete a:hover,
.cloud-network-feed-athlete a:focus {
  text-decoration: underline;
}

.cloud-network-feed-athlete span {
  color: #778b9e;
  font-size: .82rem;
}

.cloud-network-feed-date {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #74889a;
  font-size: .78rem;
  white-space: nowrap;
}

.cloud-network-feed-message {
  margin-top: 8px;
}

.cloud-network-feed-type-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 5px;
  color: #5a7287;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.cloud-network-feed-message h3 {
  margin: 0;
  color: #173a58;
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.22;
}

.cloud-network-feed-message p {
  margin: 5px 0 0;
  color: #5f7387;
  font-size: .9rem;
  line-height: 1.35;
}

.cloud-network-feed-actions {
  margin-top: 11px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.cloud-network-feed-actions .cloud-network-action-btn,
.cloud-network-feed-footer .cloud-network-action-btn,
.cloud-network-feed-footer .cloud-network-form-button {
  min-width: 126px;
  min-height: 37px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-network-feed-footer {
  margin-top: 14px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.cloud-network-feed-empty {
  margin-top: 14px;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-network-feed-filters {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .cloud-network-feed-head {
    align-items: flex-start;
  }

  .cloud-network-feed-private-note {
    width: 100%;
    justify-content: center;
    white-space: normal;
    text-align: center;
  }

  .cloud-network-feed-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    padding: 8px;
  }

  .cloud-network-feed-filter {
    min-height: 38px;
    padding: 7px 6px;
    font-size: .8rem;
  }

  .cloud-network-feed-item {
    padding: 12px 11px 12px 13px;
    border-radius: 15px;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 10px;
  }

  .cloud-network-feed-avatar-wrap {
    width: 48px;
    height: 48px;
  }

  .cloud-network-feed-avatar {
    width: 48px !important;
    height: 48px !important;
    flex-basis: 48px !important;
    border-radius: 14px !important;
    font-size: .84rem !important;
  }

  .cloud-network-feed-type-icon {
    width: 22px;
    height: 22px;
    right: -4px;
    bottom: -4px;
    font-size: .6rem;
  }

  .cloud-network-feed-meta {
    display: block;
  }

  .cloud-network-feed-athlete {
    gap: 5px;
  }

  .cloud-network-feed-athlete a,
  .cloud-network-feed-athlete strong {
    font-size: .93rem;
  }

  .cloud-network-feed-date {
    margin-top: 2px;
    font-size: .72rem;
  }

  .cloud-network-feed-message {
    margin-top: 6px;
  }

  .cloud-network-feed-message h3 {
    font-size: .96rem;
  }

  .cloud-network-feed-message p {
    font-size: .83rem;
  }

  .cloud-network-feed-actions {
    margin-top: 9px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-network-feed-actions .cloud-network-action-btn {
    min-width: 0;
    width: 100%;
    padding-right: 6px;
    padding-left: 6px;
    font-size: .79rem;
  }

  .cloud-network-feed-footer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-network-feed-footer > * {
    width: 100%;
    min-width: 0 !important;
  }
}

@media (max-width: 390px) {
  .cloud-network-feed-item {
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 9px;
  }

  .cloud-network-feed-avatar-wrap,
  .cloud-network-feed-avatar {
    width: 43px !important;
    height: 43px !important;
    flex-basis: 43px !important;
  }

  .cloud-network-feed-filter {
    font-size: .76rem;
  }
}

@media (max-width: 767.98px) {
  .cloud-network-feed-actions > :only-child,
  .cloud-network-feed-footer > :only-child {
    grid-column: 1 / -1;
  }
}

/* v147 - convites de participação enviados pelo organizador */
.cloud-organizer-invite-list {
  display: grid;
  gap: 12px;
}

.cloud-organizer-invite-item {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border: 1px solid #dce5ef;
  border-radius: 16px;
  background: #fbfdff;
}

.cloud-organizer-invite-icon {
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #eaf2fb;
  color: #123b66;
  font-size: 1.1rem;
}

.cloud-organizer-invite-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.cloud-organizer-invite-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.cloud-organizer-invite-main > span,
.cloud-organizer-invite-main > small,
.cloud-organizer-invite-main > p {
  color: #64748b;
}

.cloud-organizer-invite-main > p {
  margin-top: 4px;
  font-size: .82rem;
}

.cloud-organizer-invite-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(112px, 1fr));
  gap: 8px;
}

.cloud-organizer-invite-actions .btn {
  width: 100%;
}

@media (max-width: 991.98px) {
  .cloud-organizer-invite-item {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .cloud-organizer-invite-actions {
    grid-column: 1 / -1;
    justify-self: end;
  }
}

@media (max-width: 575.98px) {
  .cloud-organizer-invite-item {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 10px;
    padding: 11px;
  }

  .cloud-organizer-invite-icon {
    width: 38px;
    height: 38px;
  }

  .cloud-organizer-invite-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .cloud-organizer-invite-actions {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Cloud v1.149 - Avisos de participação em formação */
.cloud-organizer-invite-item.is-accepted {
  border-color: #b9d5eb;
  background: #f7fbff;
}

.cloud-organizer-invite-item.is-accepted .cloud-organizer-invite-icon {
  background: #dceefb;
  color: #135d8f;
}

.cloud-invite-waiting-note {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 7px 11px;
  border: 1px solid #b9d5eb;
  border-radius: 10px;
  background: #eef7fd;
  color: #135d8f;
  font-size: .82rem;
  font-weight: 700;
  white-space: nowrap;
}

.cloud-network-formation-notice {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  padding: 13px 15px;
  border-color: #b9dbe3;
  background: #f3fbfd;
}

.cloud-network-formation-icon {
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: #dff4f7;
  color: #176b78;
  font-size: 1.05rem;
}

.cloud-network-formation-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.cloud-network-formation-main strong {
  color: #123b66;
  font-size: 1rem;
}

.cloud-network-formation-main span {
  color: #61758b;
  font-size: .86rem;
}

@media (max-width: 767.98px) {
  .cloud-network-formation-notice {
    grid-template-columns: 40px minmax(0, 1fr);
    padding: 12px;
  }

  .cloud-network-formation-icon {
    width: 40px;
    height: 40px;
  }

  .cloud-network-formation-notice .btn {
    grid-column: 1 / -1;
    width: 100%;
  }

  .cloud-invite-waiting-note {
    width: 100%;
    white-space: normal;
    text-align: center;
  }
}


/* Cloud v1.150 - Aviso de convites e ações padronizadas */
.cloud-pending-request-alert {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  padding: 12px 14px;
  border: 1px solid #efcf72;
  border-radius: 16px;
  background: #fff8dc;
  color: #624900;
  box-shadow: 0 8px 22px rgba(99, 74, 0, .08);
}

.cloud-pending-request-icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: #ffe08a;
  color: #735500;
  font-size: 1.05rem;
}

.cloud-pending-request-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.cloud-pending-request-copy strong {
  font-size: 1rem;
  line-height: 1.2;
}

.cloud-pending-request-copy span {
  color: #78662c;
  font-size: .86rem;
}

.cloud-pending-request-button {
  min-width: 154px;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  white-space: nowrap;
}

.cloud-organizer-invite-actions form,
.cloud-invite-response-actions form {
  width: 100%;
  margin: 0;
}

.cloud-organizer-invite-actions .cloud-invite-response-btn,
.cloud-invite-response-actions .cloud-invite-response-btn {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .52rem .75rem;
  border-radius: 11px;
  font-weight: 800;
  line-height: 1.1;
}

.cloud-invite-response-actions {
  width: min(250px, 100%);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

@media (max-width: 991.98px) {
  .cloud-pending-request-alert {
    grid-template-columns: 40px minmax(0, 1fr) auto;
  }

  .cloud-pending-request-icon {
    width: 40px;
    height: 40px;
  }
}

@media (max-width: 575.98px) {
  .cloud-pending-request-alert {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 9px;
    padding: 11px;
  }

  .cloud-pending-request-icon {
    width: 38px;
    height: 38px;
  }

  .cloud-pending-request-button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .cloud-invite-response-actions {
    width: 100%;
  }
}

/* Cloud v1.151 - cortesia do organizador e escolha de parceiro pelo atleta */
.cloud-organizer-invite-courtesy {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 7px;
  padding: 8px 10px;
  border: 1px solid #bfe7cf;
  border-radius: 11px;
  background: #f2fbf6;
  color: #17653a;
  font-size: .82rem;
  line-height: 1.35;
}

.cloud-organizer-invite-courtesy > i {
  margin-top: 2px;
  flex: 0 0 auto;
}

.cloud-organizer-invite-courtesy span {
  min-width: 0;
}

.cloud-organizer-invite-courtesy strong,
.cloud-organizer-invite-courtesy small {
  display: block;
}

.cloud-organizer-invite-courtesy small {
  margin: 1px 0 2px;
  color: #4f7f64;
}

.cloud-athlete-partner-picker {
  grid-column: 1 / -1;
  margin-top: 2px;
  padding: 13px;
  border: 1px solid #c9d9ea;
  border-radius: 14px;
  background: #f5f9fd;
}

.cloud-athlete-partner-picker[hidden] {
  display: none !important;
}

.cloud-athlete-partner-picker-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.cloud-athlete-partner-picker-head > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.cloud-athlete-partner-picker-head strong {
  color: #123b66;
  font-size: .98rem;
}

.cloud-athlete-partner-picker-head span {
  color: #63778d;
  font-size: .82rem;
}

.cloud-athlete-partner-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(132px, auto);
  gap: 8px;
}

.cloud-athlete-partner-search .btn {
  min-height: 42px;
  white-space: nowrap;
}

.cloud-athlete-partner-feedback {
  min-height: 20px;
  margin-top: 7px;
  color: #63778d;
  font-size: .8rem;
}

.cloud-athlete-partner-feedback.is-success { color: #197044; }
.cloud-athlete-partner-feedback.is-warning { color: #8a6400; }
.cloud-athlete-partner-feedback.is-danger { color: #bb2d3b; }
.cloud-athlete-partner-feedback.is-loading { color: #135d8f; }

.cloud-athlete-partner-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 4px;
}

.cloud-athlete-partner-result {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid #d6e2ee;
  border-radius: 12px;
  background: #fff;
}

.cloud-athlete-partner-result > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.cloud-athlete-partner-result strong,
.cloud-athlete-partner-result span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cloud-athlete-partner-result strong {
  color: #123b66;
  font-size: .9rem;
}

.cloud-athlete-partner-result span {
  color: #66788c;
  font-size: .78rem;
}

.cloud-athlete-partner-result .btn {
  min-width: 94px;
}

@media (max-width: 767.98px) {
  .cloud-athlete-partner-results {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .cloud-organizer-invite-courtesy {
    padding: 8px;
    font-size: .78rem;
  }

  .cloud-athlete-partner-picker {
    padding: 10px;
  }

  .cloud-athlete-partner-search {
    grid-template-columns: 1fr;
  }

  .cloud-athlete-partner-search .btn,
  .cloud-athlete-partner-result .btn {
    width: 100%;
  }

  .cloud-athlete-partner-result {
    grid-template-columns: minmax(0, 1fr) 104px;
  }
}


/* Cloud v1.152 - convite manual com pagamento do atleta */
.cloud-organizer-invite-courtesy.is-payment {
  border-color: rgba(24, 83, 139, .22);
  background: #eef6ff;
  color: #173f68;
}
.cloud-organizer-invite-courtesy.is-payment > i {
  color: #1f5f99;
}


/* Cloud v1.154 - convite de parceiro aguardando aceite */
.cloud-athlete-partner-pending {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 8px;
  padding: 9px 11px;
  border: 1px solid #b9d7ee;
  border-radius: 11px;
  background: #eef7fd;
  color: #174f77;
  font-size: .82rem;
  line-height: 1.35;
}

.cloud-athlete-partner-pending > i {
  flex: 0 0 auto;
  margin-top: 2px;
}

.cloud-athlete-partner-pending span,
.cloud-athlete-partner-pending strong {
  min-width: 0;
}

.cloud-athlete-partner-pending strong {
  display: block;
  margin-bottom: 1px;
}

@media (max-width: 575.98px) {
  .cloud-athlete-partner-pending {
    padding: 8px;
    font-size: .78rem;
  }
}


/* =========================================================
   RankingBT v155 - alertas de pagamento e ações padronizadas
   ========================================================= */
.cloud-athlete-global-link,
.cloud-athlete-global-toggle {
  position: relative;
  overflow: visible;
}

.cloud-athlete-global-link-badge,
.cloud-athlete-global-toggle-badge {
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #ef3340;
  color: #fff;
  box-shadow: 0 5px 12px rgba(166, 22, 35, .28);
  font-size: .7rem;
  font-weight: 800;
  line-height: 18px;
  text-align: center;
  white-space: nowrap;
  z-index: 2;
}

.cloud-athlete-global-link-badge {
  position: absolute;
  top: -8px;
  right: -7px;
}

.cloud-athlete-global-toggle-badge {
  position: absolute;
  top: -7px;
  right: -7px;
}

.cloud-pending-payment-alert {
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid #84c8b7;
  border-radius: 17px;
  background: linear-gradient(135deg, #eafaf5 0%, #f7fffc 100%);
  box-shadow: 0 10px 24px rgba(22, 91, 78, .09);
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
}

.cloud-pending-payment-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: #0f7465;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 1.18rem;
  box-shadow: 0 8px 18px rgba(15, 116, 101, .2);
}

.cloud-pending-payment-icon span {
  position: absolute;
  top: -7px;
  right: -7px;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #ef3340;
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  line-height: 18px;
  text-align: center;
}

.cloud-pending-payment-copy {
  min-width: 0;
  color: #315d56;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.cloud-pending-payment-copy strong {
  color: #123e38;
  font-size: 1rem;
}

.cloud-pending-payment-copy span {
  line-height: 1.32;
}

.cloud-pending-payment-button {
  min-width: 142px;
  min-height: 42px;
  padding: 8px 14px;
  border-radius: 11px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-payment-pending-right {
  flex: 0 0 auto;
  justify-content: flex-end;
}

.cloud-payment-pending-amount {
  min-width: 78px;
  text-align: right;
  white-space: nowrap;
}

.cloud-payment-pending-actions {
  width: 274px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cloud-payment-pending-actions.is-single {
  width: 133px;
  grid-template-columns: 1fr;
}

.cloud-payment-pending-action-form {
  width: 100%;
  margin: 0;
}

.cloud-payment-pending-action {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 40px;
  padding: 7px 10px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px;
  line-height: 1.05;
  text-align: center;
  font-weight: 800;
}

.cloud-payment-pending-action i,
.cloud-payment-pending-action span {
  flex: 0 0 auto;
}

#pagamentos-pendentes {
  scroll-margin-top: 145px;
}

@media (max-width: 767.98px) {
  .cloud-pending-payment-alert {
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 13px;
  }

  .cloud-pending-payment-icon {
    width: 44px;
    height: 44px;
  }

  .cloud-pending-payment-button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .cloud-payment-pending-right {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .cloud-payment-pending-amount {
    min-width: 0;
    text-align: left;
  }

  .cloud-payment-pending-actions,
  .cloud-payment-pending-actions.is-single {
    width: 100%;
  }
}

@media (max-width: 420px) {
  .cloud-pending-payment-copy strong {
    font-size: .94rem;
  }

  .cloud-pending-payment-copy span {
    font-size: .88rem;
  }

  .cloud-payment-pending-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cloud-payment-pending-action {
    padding-right: 7px !important;
    padding-left: 7px !important;
    font-size: .82rem;
  }
}


/* RankingBT v156 - cabeçalho ADMIN móvel e categorias recreativas personalizadas */
@media (max-width: 992px) {
  .cloud-admin-home-navbar {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .cloud-admin-home-navbar .cloud-navbar-brand {
    flex: 1 1 auto;
    width: auto;
    margin-right: auto;
  }
  .cloud-admin-home-navbar .cloud-brand-logo-link {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
  }
  .cloud-admin-home-header-actions {
    margin-left: auto;
  }
}
@media (max-width: 575.98px) {
  .cloud-admin-home-navbar {
    padding: 12px 14px;
  }
  .cloud-admin-home-navbar .cloud-brand-logo-full {
    height: auto;
    width: min(245px, calc(100vw - 110px));
    max-width: none;
  }
  .cloud-admin-home-logout {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
  }
}
#catNomePersonalizadoWrap small {
  display: block;
  margin-top: 6px;
  line-height: 1.35;
}


/* =========================================================
   RankingBT v157 - cabeçalhos limpos e cards compactos
   ========================================================= */
.cloud-athlete-global-bar {
  grid-template-columns: minmax(220px, 270px) minmax(0, 1fr) 46px;
}

.cloud-athlete-global-brand-wrap {
  justify-content: flex-start;
  align-items: center;
}

.cloud-athlete-global-brand img {
  height: 50px;
}

.cloud-athlete-welcome-card {
  width: min(1240px, calc(100% - 32px));
  min-height: 76px;
  margin: 10px auto 0;
  padding: 12px 16px;
  border: 1px solid #dce6ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(18, 43, 68, .08);
  display: flex;
  align-items: center;
  gap: 12px;
}

.cloud-athlete-welcome-avatar,
.cloud-athlete-welcome-avatar-frame {
  width: 50px;
  height: 50px;
  min-width: 50px;
  border-radius: 50%;
}

.cloud-athlete-welcome-avatar {
  border: 2px solid #d7e3ed;
  background: #174f70;
  color: #fff;
  object-fit: cover;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cloud-athlete-welcome-avatar-initials {
  font-weight: 800;
  font-size: .86rem;
}

.cloud-athlete-welcome-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  line-height: 1.08;
}

.cloud-athlete-welcome-copy small {
  color: #6d8093;
  font-size: .8rem;
}

.cloud-athlete-welcome-copy strong {
  color: #163b5b;
  font-size: 1.18rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cloud-career-upcoming-section {
  padding: 14px 16px;
}

.cloud-career-upcoming-section .cloud-network-upcoming-head {
  margin-bottom: 10px;
}

.cloud-career-upcoming-section .cloud-network-upcoming-head h2 {
  font-size: 1.08rem;
}

.cloud-career-upcoming-section .cloud-network-upcoming-head p {
  margin-top: 2px;
  font-size: .84rem;
}

.cloud-career-upcoming-section .cloud-network-upcoming-card {
  padding: 11px;
}

.cloud-career-upcoming-section .cloud-network-upcoming-card-icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
}

.cloud-career-upcoming-section .cloud-network-upcoming-details {
  margin-top: 6px;
}

.cloud-career-upcoming-section .cloud-network-upcoming-actions {
  margin-top: 7px;
}

.cloud-career-upcoming-section .cloud-network-upcoming-empty {
  min-height: 104px;
  padding: 14px;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .cloud-athlete-global-bar {
    grid-template-columns: minmax(0, 1fr) 44px 44px;
  }

  .cloud-athlete-global-brand-wrap {
    justify-content: flex-start;
  }

  .cloud-athlete-global-brand img {
    height: 46px;
    max-width: 250px;
  }

  .cloud-athlete-welcome-card {
    width: min(1240px, calc(100% - 24px));
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-global-brand img {
    height: 39px;
    max-width: min(230px, 65vw);
  }

  .cloud-athlete-welcome-card {
    width: calc(100% - 16px);
    min-height: 66px;
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: 16px;
    gap: 10px;
  }

  .cloud-athlete-welcome-avatar,
  .cloud-athlete-welcome-avatar-frame {
    width: 42px;
    height: 42px;
    min-width: 42px;
  }

  .cloud-athlete-welcome-copy strong {
    font-size: 1.03rem;
  }

  .cloud-career-upcoming-section {
    padding: 12px;
  }

  .cloud-career-upcoming-section .cloud-network-upcoming-head p {
    display: none;
  }

  .cloud-career-upcoming-section .cloud-network-upcoming-empty {
    min-height: 88px;
  }
}


/* =========================================================
   RankingBT v158 - correção do menu do atleta em tablet/celular
   ========================================================= */
@media (max-width: 1199.98px) {
  .cloud-athlete-global-bar {
    grid-template-columns: minmax(0, 1fr) 44px 44px !important;
    column-gap: 12px !important;
  }

  .cloud-athlete-global-brand-wrap {
    min-width: 0;
    overflow: hidden;
  }

  .cloud-athlete-global-brand {
    min-width: 0;
    max-width: 100%;
  }

  .cloud-athlete-global-brand img {
    width: auto;
    max-width: 100% !important;
  }

  .cloud-athlete-global-toggle,
  .cloud-athlete-global-logout {
    position: relative;
    inset: auto;
    margin: 0;
    transform: none;
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-global-bar {
    grid-template-columns: minmax(0, 1fr) 42px 42px !important;
    column-gap: 12px !important;
  }

  .cloud-athlete-global-brand img {
    height: 34px !important;
    max-width: 190px !important;
  }
}

@media (max-width: 390px) {
  .cloud-athlete-global-bar {
    column-gap: 10px !important;
  }

  .cloud-athlete-global-brand img {
    height: 31px !important;
    max-width: 168px !important;
  }
}

/* =========================================================
   RankingBT v159 - logomarca e saudação do atleta no mobile
   ========================================================= */
@media (max-width: 1199.98px) {
  .cloud-athlete-global-brand-wrap {
    justify-content: flex-start !important;
    text-align: left;
  }

  .cloud-athlete-global-brand {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    margin-right: auto;
  }
}

@media (max-width: 767.98px) {
  .cloud-athlete-global-brand img {
    height: 38px !important;
    max-width: 210px !important;
  }

  .cloud-athlete-welcome-copy small {
    font-size: .86rem;
  }

  .cloud-athlete-welcome-copy strong {
    font-size: 1.12rem;
  }
}

@media (max-width: 390px) {
  .cloud-athlete-global-brand img {
    height: 35px !important;
    max-width: 188px !important;
  }

  .cloud-athlete-welcome-copy strong {
    font-size: 1.08rem;
  }
}
