.tool-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 20px;
  align-items: start;
  margin: 0 0 40px;
}

.tool-card {
  background: #fff;
  border: 1px solid #ece8ff;
  border-radius: 24px;
  padding: 22px;
  box-shadow: 0 16px 40px rgba(61, 42, 138, .08);
}

.tool-card h2 {
  margin: 0 0 6px;
  font-family: Poppins, sans-serif;
  font-size: 18px;
  color: #14191e;
}

.tool-card > p {
  margin: 0 0 18px;
  color: #5b6b75;
  font-size: 14px;
}

.tool-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.tool-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: #f7f6ff;
  border-radius: 16px;
  padding: 12px 14px;
}

.tool-field--full { grid-column: 1 / -1; }

.tool-field label {
  font-family: Poppins, sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #14191e;
}

.tool-field input,
.tool-field select,
.tool-field textarea {
  width: 100%;
  border: 1px solid #ddd7ff;
  background: #fff;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 15px;
  color: #14191e;
  font-family: inherit;
}

.tool-field textarea {
  min-height: 220px;
  resize: vertical;
  line-height: 1.5;
}

.tool-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.tool-actions .v2-btn { margin: 0; }

.tool-result {
  min-height: 280px;
}

.tool-result__empty {
  color: #5b6b75;
  font-size: 15px;
  margin: 12px 0 0;
}

.tool-kpi {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 0 0 16px;
}

.tool-kpi__item {
  background: #f7f6ff;
  border-radius: 16px;
  padding: 14px;
}

.tool-kpi__item span {
  display: block;
  font-size: 12px;
  color: #5b6b75;
  margin-bottom: 4px;
}

.tool-kpi__item strong {
  font-family: Poppins, sans-serif;
  font-size: 22px;
  color: #3d2a8a;
  line-height: 1.2;
}

.tool-kpi__item--wide { grid-column: 1 / -1; }

.tool-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.tool-table th,
.tool-table td {
  text-align: left;
  padding: 8px 6px;
  border-bottom: 1px solid #ece8ff;
}

.tool-table th { color: #5b6b75; font-weight: 600; }

.tool-cat {
  border: 1px solid #ece8ff;
  border-radius: 16px;
  padding: 12px;
  margin: 0 0 12px;
  background: #faf9ff;
}

.tool-cat__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.tool-cat__head strong { font-family: Poppins, sans-serif; font-size: 14px; }

.tool-cat__remove {
  appearance: none;
  border: 0;
  background: transparent;
  color: #6b21a8;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}

.tool-note {
  margin: 14px 0 0;
  font-size: 13px;
  color: #5b6b75;
}

.tool-grupo {
  background: #f7f6ff;
  border-radius: 16px;
  padding: 14px;
  margin: 0 0 10px;
}

.tool-grupo h3 {
  margin: 0 0 8px;
  font-size: 15px;
  color: #3d2a8a;
}

.tool-grupo ol {
  margin: 0;
  padding-left: 18px;
}

.tool-grupo li { margin: 0 0 4px; }

.tool-seed { font-weight: 700; }

.gatorade {
  background: linear-gradient(180deg, #1a0b2e 0%, #2d1255 100%);
  color: #fff;
  border: 0;
}

.gatorade h2,
.gatorade p { color: #f1f1ff; }

.gatorade p { color: #c4b5ff; }

.gatorade-board { list-style: none; margin: 0; padding: 0; }

.gatorade-row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 72px 72px auto;
  gap: 8px;
  align-items: center;
  padding: 12px;
  border-radius: 14px;
  margin-bottom: 8px;
  background: rgba(255,255,255,.08);
}

.gatorade-row--win { background: rgba(36, 198, 127, .22); }
.gatorade-row--lose { background: rgba(255, 90, 90, .18); }

.gatorade-row b { font-family: Poppins, sans-serif; }
.gatorade-row span { font-size: 13px; color: #ddd6fe; }
.gatorade-row em {
  font-style: normal;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.gatorade-add {
  display: flex;
  gap: 8px;
  margin: 0 0 14px;
}

.gatorade-add input { flex: 1; }

.gatorade-match {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 8px;
  align-items: end;
  margin-top: 12px;
}

.gatorade-match span {
  text-align: center;
  padding-bottom: 10px;
  font-weight: 700;
  color: #c4b5ff;
}

.gatorade select {
  background: #fff;
  color: #14191e;
}

.tool-link {
  word-break: break-all;
  background: #f7f6ff;
  border-radius: 12px;
  padding: 12px;
  font-size: 14px;
  color: #3d2a8a;
  font-weight: 600;
}

.tool-copybox {
  white-space: pre-wrap;
  background: #f7f6ff;
  border-radius: 16px;
  padding: 16px;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.5;
  margin: 0;
}

.tool-bracket {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 8px;
}

.tool-bracket__round {
  min-width: 180px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: space-around;
}

.tool-bracket__round h3 {
  margin: 0;
  font-size: 13px;
  color: #3d2a8a;
}

.tool-match {
  background: #f7f6ff;
  border-radius: 12px;
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 14px;
}

.tool-match span:first-child {
  border-bottom: 1px solid #ece8ff;
  padding-bottom: 6px;
}

@media screen and (max-width: 900px) {
  .tool-layout { grid-template-columns: 1fr; }
}

@media screen and (max-width: 640px) {
  .tool-grid { grid-template-columns: 1fr; }
  .tool-kpi { grid-template-columns: 1fr; }
  .gatorade-row { grid-template-columns: 28px minmax(0, 1fr) auto; }
  .gatorade-row span:nth-child(3),
  .gatorade-row span:nth-child(4) { display: none; }
  .gatorade-match { grid-template-columns: 1fr; }
  .gatorade-match span { display: none; }
}
