/* ================================================================
   complete/writing — local.css
   ================================================================ */

/* CDI pros/cons two-column grid */
.w-cdi-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin: .8rem 0 1.2rem;
  align-items: start;
}

/* Band score achievement blocks */
.w-band {
  border: 1px solid rgba(70,162,218,.2);
  border-radius: 10px;
  overflow: hidden;
  margin: 1.4rem 0;
}
.w-band__head {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .85rem 1.2rem;
  background: rgba(70,162,218,.08);
  border-bottom: 1px solid rgba(70,162,218,.15);
}
.w-band__score {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: .25rem .65rem;
  background: var(--lb);
  color: #fff;
  font-size: .88rem;
  font-weight: 700;
  border-radius: 4px;
  font-family: 'Raleway', sans-serif;
  letter-spacing: .03em;
  white-space: nowrap;
}
.w-band__title {
  font-size: .97rem;
  font-weight: 700;
  color: var(--blue);
}
.w-band__body {
  padding: 1rem 1.2rem 1.2rem;
}
.w-band__body > .a-subhead:first-child {
  margin-top: .6rem;
}

/* Score calculation cases (4-card grid) */
.w-score-cases {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem;
  margin: 1rem 0 1.4rem;
}
.w-score-case {
  background: rgba(4,63,109,.03);
  border: 1px solid rgba(70,162,218,.2);
  border-radius: 8px;
  padding: .8rem 1rem;
}
.w-score-case--warning {
  border-color: rgba(245,161,0,.4);
  background: rgba(245,161,0,.04);
}
.w-score-case__name {
  font-size: .78rem;
  font-weight: 700;
  color: var(--gray2);
  margin-bottom: .3rem;
}
.w-score-case__name--warning {
  color: #b07400;
}
.w-score-case__scores {
  font-size: .88rem;
  color: var(--blue);
  font-weight: 600;
  line-height: 1.65;
}
.w-score-case__note {
  font-size: .78rem;
  color: var(--gray3);
  margin-top: .35rem;
  line-height: 1.6;
}

/* Essay word count */
.w-essay-wordcount {
  font-size: .78rem;
  color: var(--gray3);
  text-align: right;
  margin: -.4rem 0 .8rem;
}

/* Topics list — 2-column on desktop */
.w-topics-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 1rem;
  margin: .4rem 0 1rem;
}
.w-topics-list li {
  padding: .15rem 0;
}

/* Criteria table: first column adjustments */
.w-criteria-table td:first-child {
  white-space: normal;
  width: 35%;
}
.w-criteria-table td:first-child small {
  display: block;
  font-size: .78rem;
  color: var(--gray3);
  font-weight: 600;
  margin-top: .15rem;
}

/* Paragraph type table */
.w-para-table td:first-child {
  white-space: normal;
  width: 28%;
}

/* Study method comparison table */
.w-method-table td:first-child {
  white-space: normal;
  width: 25%;
}
.w-method-table td ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .2rem;
}
.w-method-table td ul li {
  font-size: .9rem;
  padding-left: 1rem;
  position: relative;
  line-height: 1.6;
}
.w-method-table td ul li::before {
  content: '・';
  position: absolute;
  left: 0;
  color: var(--lb);
}

@media (max-width: 640px) {
  .w-cdi-grid {
    grid-template-columns: 1fr;
  }
  .w-score-cases {
    grid-template-columns: 1fr;
  }
  .w-topics-list {
    grid-template-columns: 1fr;
  }
  .w-band__body {
    padding: .85rem 1rem 1rem;
  }
  .w-criteria-table td:first-child,
  .w-para-table td:first-child,
  .w-method-table td:first-child {
    width: auto;
  }
}
