*{box-sizing:border-box}body{margin:0;background:#f8f6f0;color:#23352d;font:17px/1.65 system-ui,sans-serif}a{color:inherit}header,main,footer{max-width:1120px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #dcded2}.brand{font-weight:850;text-decoration:none;font-size:24px;letter-spacing:-1px}nav{display:flex;gap:20px;font-size:14px;flex-wrap:wrap}h1{font-size:clamp(32px,6vw,64px);line-height:1.08;letter-spacing:-2px;max-width:850px;margin:20px 0}h2{font-size:26px;line-height:1.25;margin-top:36px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800;color:#54745d}.intro{max-width:680px;color:#58675c}.hero{padding:35px 0}.formula{background:#173f34;color:#f8f6f0;padding:28px;border-radius:18px;font-size:clamp(19px,4vw,28px);margin:25px 0}.badge{display:inline-block;font-size:12px;padding:5px 10px;border-radius:30px;background:#e2edce;color:#35522b;font-weight:750}.pending{background:#f2e4c8;color:#755928}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.card{padding:23px;background:white;border:1px solid #dfdfd3;border-radius:15px;text-decoration:none;display:block}.card h3{margin:12px 0 7px;font-size:22px}.card p{font-size:14px;color:#637064;margin:0}.card:hover{border-color:#417454;transform:translateY(-2px)}.steps{padding:0;list-style:none;counter-reset:recipe}.steps li{counter-increment:recipe;background:#fff;border:1px solid #deded3;border-radius:12px;padding:16px 20px;margin:10px 0}.steps li:before{content:counter(recipe);display:inline-grid;place-items:center;width:28px;height:28px;background:#edf0df;border-radius:50%;margin-right:16px;font-size:13px}.prose{max-width:800px}.note{background:#eeecdf;padding:22px;border-radius:12px} .card[hidden]{display:none}input{font:inherit;padding:13px 16px;width:100%;border:1px solid #cccdbf;border-radius:9px;background:white;margin:16px 0 25px}footer{font-size:13px;color:#627063;border-top:1px solid #dcded2;margin-top:50px}footer a{margin-right:18px}.crumb{font-size:13px;color:#617064}.links{display:flex;gap:15px;flex-wrap:wrap}button{font:inherit}@media(max-width:600px){header{align-items:flex-start;flex-direction:column}header,main,footer{padding:20px}h1{letter-spacing:-1px}.hero{padding-top:20px}.formula{padding:20px}.steps li{padding:14px}nav{gap:15px}}
figure{margin:28px 0}figure img{display:block;width:100%;height:auto}figcaption{font-size:13px;color:#58675c;margin-top:8px}form{padding:22px;background:#fff;border:1px solid #dcded2;border-radius:14px}button{padding:10px 18px;border:0;border-radius:8px;background:#173f34;color:white;cursor:pointer}
.home-hero{display:grid;grid-template-columns:1.45fr 1fr;gap:48px;align-items:center;padding:32px 0 38px}.home-hero h1{font-size:clamp(35px,4.6vw,52px);letter-spacing:-1.7px;line-height:1.09;margin:14px 0}.home-hero h1 span{color:#54745d}.feature{background:#e9eddf;border-radius:20px;padding:28px}.feature h2{margin:12px 0;font-size:30px}.mini-formula{border-top:1px solid #cbd4bf;border-bottom:1px solid #cbd4bf;padding:14px 0;margin:20px 0;font:600 19px/1.8 monospace}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.button{display:inline-block;padding:12px 18px;border-radius:9px;background:#173f34;color:#fff;text-decoration:none;font-size:15px;font-weight:650}.button.secondary{background:#e6eadb;color:#23352d}.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:18px}.section-title>a{font-size:14px}.editorial-note{margin-top:36px;padding:2px 24px 15px;border-left:3px solid #b5c797;background:#eff0e5}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #8b600b;outline-offset:4px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}@media(max-width:700px){.home-hero{grid-template-columns:1fr;gap:22px;padding:22px 0}.feature{padding:22px}.home-hero h1{font-size:37px}.section-title{align-items:center}.grid{grid-template-columns:1fr}}/* Shared discovery components; tool workspaces keep their own styles. */
.nav-label-short {
  display: none;
}
body > header nav a[aria-current='true'] {
  background: #304c45;
  color: #fff;
  border-radius: 5px;
}
.game-tools-directory {
  max-width: 1160px;
  margin: 0 auto;
  padding: 20px 0 30px;
}
.tools-directory-heading {
  position: relative;
  padding: 0 0 24px;
  border-bottom: 1px solid #d8dfd7;
  margin-bottom: 28px;
}
.tools-directory-heading h1 {
  font-family: Georgia, serif;
  font-size: clamp(32px, 4vw, 46px);
  font-weight: 500;
  letter-spacing: -1.2px;
  margin: 8px 0 10px;
}
.tools-directory-heading > p:not(.eyebrow) {
  font-size: 15px;
  color: #62746a;
  margin: 0;
  max-width: 650px;
}
.tools-directory-count {
  display: inline-block;
  margin-top: 14px;
  font-size: 11px;
  color: #586d60;
  padding: 5px 9px;
  border: 1px solid #d9e1d2;
  border-radius: 5px;
  background: #eef3e8;
}
.tools-game-group-heading,
.game-tools-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}
.tools-game-group-heading h2,
.game-tools-heading h2,
.game-guides-heading h2 {
  font-size: 23px;
  line-height: 1.25;
  letter-spacing: -0.5px;
  margin: 0;
}
.tools-game-group-heading > a,
.game-tools-heading > a {
  font-size: 12px;
  color: #456c52;
  text-decoration: none;
  white-space: nowrap;
}
.tools-game-group + .tools-game-group {
  margin-top: 30px;
}
.game-tool-card {
  display: flex;
  align-items: center;
  gap: 22px;
  border: 1px solid #d9e2d2;
  border-left: 4px solid #315640;
  border-radius: 12px;
  padding: 24px;
  background: #fff;
  box-shadow: 0 3px 9px #283f2b04;
  max-width: 100%;
}
.game-tool-icon {
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  flex-shrink: 0;
  border-radius: 13px;
  color: #41623a;
  background: #edf3e6;
}
.game-tool-copy {
  flex: 1;
  min-width: 0;
}
.game-tool-copy .game-tool-meta {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.7px;
  color: #6c7c69;
  margin: 0 0 6px;
}
.game-tool-meta span {
  color: #abb5a2;
  margin: 0 5px;
}
.game-tool-copy h3 {
  font-family: Georgia, serif;
  font-size: 25px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: -0.6px;
  margin: 0 0 9px;
}
.game-tool-copy h3 a {
  text-decoration: none;
}
.game-tool-copy > p:not(.game-tool-meta) {
  font-size: 13px;
  line-height: 1.6;
  color: #607167;
  margin: 0;
  max-width: 670px;
}
.game-tool-features {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  list-style: none;
  padding: 0;
  margin: 12px 0 7px;
}
.game-tool-features li {
  font-size: 10px;
  border: 1px solid #e3e8dd;
  color: #5c7050;
  border-radius: 4px;
  padding: 3px 7px;
  background: #fafbf7;
}
.game-tool-copy > small {
  font-size: 10px;
  color: #7e8a79;
}
.game-tool-open {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  flex-shrink: 0;
  background: #244d3b;
  color: #fff;
  text-decoration: none;
  padding: 12px 17px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 700;
  min-height: 44px;
}
.game-tool-open:hover {
  background: #173e2c;
}
.game-tool-card a:focus-visible {
  outline: 3px solid #ba8c40;
  outline-offset: 4px;
}
.game-tool-card:focus-within {
  border-color: #68825b;
}
.game-tools-list {
  display: grid;
  gap: 14px;
}
.game-tools-section {
  margin: 24px 0 34px;
  max-width: 1160px;
  scroll-margin-top: 20px;
}
.game-tools-heading .eyebrow {
  font-size: 9px;
  margin: 0 0 6px;
  letter-spacing: 1.5px;
}
.game-guides-heading {
  padding: 12px 0 18px;
  border-top: 1px solid #dbe2d5;
  scroll-margin-top: 20px;
}
.game-guides-heading .eyebrow {
  font-size: 10px;
  margin: 12px 0 6px;
}
article.prose + .game-tools-section {
  max-width: 960px;
  margin-top: 35px;
  padding-top: 25px;
  border-top: 1px solid #d8dfd7;
}
article.prose + .game-tools-section .game-tool-card {
  gap: 16px;
  padding: 20px;
}
.tools-directory-footer {
  font-size: 13px;
  color: #68796c;
  margin: 26px 0 0;
}
.tools-directory-footer a {
  color: #365f45;
  text-underline-offset: 3px;
}
@media (max-width: 700px) {
  .tools-directory-heading {
    padding-bottom: 20px;
    margin-bottom: 22px;
  }
  .game-tool-card {
    align-items: flex-start;
    gap: 14px;
    padding: 19px;
    flex-wrap: wrap;
  }
  .game-tool-icon {
    width: 43px;
    height: 43px;
    border-radius: 9px;
  }
  .game-tool-icon svg {
    width: 26px;
    height: 26px;
  }
  .game-tool-copy {
    flex-basis: calc(100% - 60px);
  }
  .game-tool-copy h3 {
    font-size: 23px;
  }
  .game-tool-copy .game-tool-meta {
    font-size: 9px;
    letter-spacing: 0.2px;
  }
  .game-tool-copy > p:not(.game-tool-meta) {
    font-size: 12px;
  }
  .game-tool-open {
    margin-left: 57px;
    padding: 10px 14px;
    gap: 25px;
  }
  .tools-game-group-heading h2,
  .game-tools-heading h2 {
    font-size: 21px;
  }
  .game-tools-heading > a,
  .tools-game-group-heading > a {
    font-size: 11px;
  }
  .game-tools-heading {
    align-items: flex-end;
    gap: 10px;
  }
  .game-tools-heading .eyebrow {
    font-size: 8px;
    letter-spacing: 1px;
  }
}
@media (max-width: 520px) {
  body > header .nav-label-full {
    display: none;
  }
  body > header .nav-label-short {
    display: inline;
  }
  body > header nav.site-nav {
    gap: 9px !important;
  }
  body > header nav.site-nav a {
    font-size: 11px !important;
  }
  .game-tools-directory {
    padding-top: 8px;
  }
  .tools-directory-heading > p:not(.eyebrow) {
    font-size: 13px;
  }
  .tools-game-group-heading h2,
  .game-tools-heading h2 {
    font-size: 19px;
  }
  .game-tool-card {
    padding: 16px;
    gap: 12px;
  }
  .game-tool-icon {
    width: 35px;
    height: 35px;
  }
  .game-tool-copy {
    flex-basis: calc(100% - 48px);
  }
  .game-tool-copy h3 {
    font-size: 21px;
  }
  .game-tool-open {
    margin-left: 47px;
  }
  article.prose + .game-tools-section .game-tool-card {
    gap: 12px;
    padding: 16px;
  }
  .tools-directory-footer {
    font-size: 12px;
    line-height: 1.7;
  }
}
@media print {
  .game-tool-open {
    background: none;
    color: #000;
    border: 1px solid #999;
  }
  .game-tool-card {
    break-inside: avoid;
  }
}

.illustrated .cover{display:block;width:calc(100% + 46px);max-width:none;height:auto;aspect-ratio:800/420;object-fit:cover;margin:-23px -23px 20px;border-radius:14px 14px 0 0}.illustrated{overflow:hidden}.feature-cover{width:calc(100% + 56px);height:auto;display:block;margin:-28px -28px 22px;border-radius:20px 20px 0 0}.feature{overflow:hidden}.toc{background:#eff0e5;border:1px solid #dcded2;border-radius:10px;padding:14px 18px;margin:20px 0}.toc summary{cursor:pointer;font-size:15px;font-weight:700}.toc ol{padding-left:22px}.toc a{font-size:15px}h2[id]{scroll-margin-top:20px}@media(max-width:700px){.feature-cover{width:calc(100% + 44px);margin:-22px -22px 20px}}