@import url("../shared/mindcare-slides.css");

.source-ribbon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 8px 12px;
  border: 1px solid rgba(251, 140, 0, 0.3);
  border-radius: 999px;
  background: #fff9f1;
  color: #8a4b00;
  font-size: 0.54em;
  font-weight: 850;
  text-transform: uppercase;
}

.source-ribbon::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--mc-orange);
}

.deck-menu {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.deck-menu .deck-card {
  min-height: 220px;
}

.deck-menu .deck-card strong {
  min-height: auto;
}

.visual-frame,
.image-strip,
.landmark-gallery {
  display: grid;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(91, 75, 138, 0.14);
  border-radius: var(--mc-radius);
  background: rgba(255, 255, 255, 0.76);
  box-shadow: var(--mc-shadow);
}

.visual-frame img,
.image-strip img,
.landmark-gallery img {
  display: block;
  width: 100%;
  max-height: 440px;
  object-fit: contain;
  border-radius: var(--mc-radius-sm);
  background: #fff;
}

.image-strip {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
}

.landmark-gallery {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

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

.mini-flow span,
.score-band span,
.role-board span,
.safety-branch span {
  display: grid;
  align-content: center;
  min-height: 104px;
  padding: 14px;
  border: 1px solid rgba(91, 75, 138, 0.12);
  border-radius: var(--mc-radius);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: var(--mc-shadow);
  color: var(--mc-text);
  font-size: 0.62em;
  font-weight: 800;
  line-height: 1.25;
}

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

.score-band span:nth-child(1) {
  border-top: 8px solid var(--mc-green);
}

.score-band span:nth-child(2) {
  border-top: 8px solid var(--mc-orange);
}

.score-band span:nth-child(3),
.score-band span:nth-child(4) {
  border-top: 8px solid var(--mc-red);
}

.role-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.role-board span {
  min-height: 120px;
}

.role-board b,
.mini-flow b,
.score-band b,
.safety-branch b {
  display: block;
  margin-bottom: 6px;
  color: var(--mc-primary-dark);
  font-size: 1.05em;
}

.safety-branch {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.safety-branch span.best {
  border-top: 8px solid var(--mc-green);
}

.safety-branch span.risky {
  border-top: 8px solid var(--mc-red);
}

.safety-branch span.over {
  border-top: 8px solid var(--mc-orange);
}

.web-adapt {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 18px;
  align-items: stretch;
}

.checklist {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.checklist li {
  padding: 10px 12px;
  border: 1px solid rgba(91, 75, 138, 0.13);
  border-radius: var(--mc-radius-sm);
  background: rgba(255, 255, 255, 0.82);
  color: #252540;
  font-size: 0.66em;
  font-weight: 720;
}

.rights-note {
  color: #7a4a00;
  font-size: 0.5em;
  font-weight: 750;
}

@media (max-width: 900px) {
  .deck-menu,
  .image-strip,
  .landmark-gallery,
  .mini-flow,
  .score-band,
  .role-board,
  .safety-branch,
  .web-adapt {
    grid-template-columns: 1fr;
  }
}
