.pw-level-ms {
  --pw-ms-ink: #20392f;
  --pw-ms-paper: #fffdf7;
  --pw-ms-line: #69796c;
  color: var(--pw-ms-ink);
  line-height: 1.6;
  overflow-wrap: anywhere;
  min-width: 0;
}
.pw-level-ms *, .pw-level-ms *::before, .pw-level-ms *::after { box-sizing: border-box; }
.pw-level-ms .pw-panel, .pw-level-ms .pw-ending {
  min-width: 0;
  margin-block: 1rem;
  padding: clamp(.8rem, 2vw, 1.5rem);
  border: 1px solid var(--pw-ms-line);
  border-radius: 1rem;
  background: var(--pw-ms-paper);
  color: var(--pw-ms-ink);
}
.pw-level-ms .pw-panels { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 23rem), 1fr)); gap: 1rem; }
.pw-level-ms .pw-panels .pw-panel { margin: 0; }
.pw-level-ms h3, .pw-level-ms h4 { line-height: 1.3; margin-block: 0 1rem; }
.pw-level-ms p { margin-block: .6rem; }
.pw-level-ms .pw-ms-adult { border-left: .3rem solid #526b39; padding: .8rem 1rem; background: #f3f6eb; color: #20392f; }
.pw-level-ms .pw-ms-steps { display: flex; flex-wrap: wrap; gap: .7rem; list-style: none; padding: 0; margin-block: 1rem; }
.pw-level-ms .pw-ms-steps li { padding: .4rem .8rem; border: 1px solid var(--pw-ms-line); border-radius: .5rem; background: var(--pw-ms-paper); }
.pw-level-ms .pw-ms-steps [aria-current] { border: 3px solid #3d6333; font-weight: 700; }
.pw-level-ms .pw-controls { display: flex; flex-wrap: wrap; gap: .65rem; margin-block: 1rem; }
.pw-level-ms .pw-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 64px;
  min-width: 64px;
  max-width: 100%;
  padding: .7rem 1rem;
  font: inherit;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
  border: 2px solid #3d6333;
  border-radius: .7rem;
  background: #f4f7e8;
  color: #20392f;
  cursor: pointer;
}
.pw-level-ms .pw-button:hover:not(:disabled) { background: #e2ebcf; }
.pw-level-ms .pw-button[aria-pressed="true"] { box-shadow: inset 0 0 0 2px #3d6333; font-weight: 700; }
.pw-level-ms .pw-button:disabled { opacity: 1; color: #536050; background: #eeefe9; border-color: #8a9287; cursor: default; }
.pw-level-ms .pw-button:focus-visible, .pw-level-ms summary:focus-visible { outline: 3px solid #175dab; outline-offset: 4px; }
.pw-level-ms summary { display: list-item; min-height: 64px; padding: .75rem .2rem; font-weight: 700; cursor: pointer; }
.pw-level-ms .pw-ms-collection { padding: .8rem; border: 1px solid #7f8a7b; border-radius: .7rem; margin-block: 1rem; background: #fff; color: #20392f; }
.pw-level-ms .pw-ms-spread { display: grid; gap: 1rem; }
.pw-level-ms .pw-ms-items { display: flex; align-items: center; flex-wrap: wrap; gap: .3rem .8rem; }
.pw-level-ms .pw-ms-object, .pw-level-ms .pw-ms-plate { width: 58px; height: 68px; flex: 0 0 58px; fill: none; stroke: currentColor; stroke-width: 2; }
.pw-level-ms .pw-ms-object { stroke: #7f4529; }
.pw-level-ms .pw-ms-pairs { list-style: none; padding: 0; margin: 0; display: grid; gap: .5rem; }
.pw-level-ms .pw-ms-pairs li { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; border-bottom: 1px dotted #778170; }
.pw-level-ms .pw-ms-cell { display: flex; align-items: center; justify-content: center; min-width: 0; padding: .4rem; }
.pw-level-ms .pw-ms-empty { font-size: .9em; font-style: italic; }
.pw-level-ms .pw-ms-comparison { padding: 1rem; border: 2px solid #526b39; border-radius: .5rem; background: #f4f7e8; }
.pw-level-ms .pw-ms-kit { padding-top: 1rem; }
.pw-level-ms .pw-ms-mat { border: 2px solid currentColor; padding: 1rem; margin-block: 1rem; break-inside: avoid; }
.pw-level-ms .pw-ms-mat-plates { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: space-evenly; }
.pw-level-ms .pw-ms-mat-plates .pw-ms-plate { width: 78px; height: 82px; flex-basis: 78px; }
.pw-level-ms .pw-ms-print-guide { margin-top: 1rem; }
.pw-level-ms .pw-ending { border: 3px solid #526b39; background: #f4f7e8; }
@media (max-width: 420px) {
  .pw-level-ms .pw-controls { display: grid; grid-template-columns: minmax(0, 1fr); }
  .pw-level-ms .pw-button { width: 100%; }
}
@media (prefers-contrast: more) {
  .pw-level-ms .pw-panel, .pw-level-ms .pw-ms-collection, .pw-level-ms .pw-ms-mat { border-width: 2px; }
}
@media print {
  .pw-level-ms { color: #000; font-size: 11pt; line-height: 1.35; }
  .pw-level-ms > :not(.pw-ms-kit-panel) { display: none !important; }
  .pw-level-ms .pw-ms-kit-panel { display: block; border: 0; padding: 0; margin: 0; background: #fff; color: #000; }
  .pw-level-ms .pw-ms-kit-panel > summary { display: none; }
  .pw-level-ms .pw-ms-kit-panel > .pw-ms-kit { display: block !important; content-visibility: visible; }
  .pw-level-ms .pw-ms-kit { padding: 0; }
  .pw-level-ms .pw-ms-mat { border: 1.5pt solid #000; padding: 3mm; margin-block: 3mm; }
  .pw-level-ms .pw-ms-mat h4, .pw-level-ms .pw-ms-mat p { margin-block: 1mm; }
  .pw-level-ms .pw-ms-mat-plates { flex-wrap: nowrap; gap: 1mm; }
  .pw-level-ms .pw-ms-mat-plates .pw-ms-plate { width: 28mm; height: 29mm; flex: 0 1 28mm; stroke: #000; }
  .pw-level-ms .pw-ms-print-guide { break-before: page; }
}
