.pam-games{--pam-border:#dfe5ec;--pam-text:#172033;--pam-muted:#667085;--pam-panel:#fff;--pam-soft:#f5f7fa;max-width:1120px;margin:24px auto;color:var(--pam-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.pam-games *{box-sizing:border-box}.pam-games button,.pam-games select,.pam-games input{font:inherit}.pam-games-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.pam-games-tabs button,.pam-game-toolbar button,.pam-color-modes button,.pam-quiz-options button{appearance:none;border:1px solid var(--pam-border);background:#fff;color:var(--pam-text);border-radius:999px;padding:10px 15px;min-height:44px;font-weight:750;cursor:pointer}.pam-games-tabs button[aria-selected=true],.pam-color-modes button.is-active{background:#172033;color:#fff;border-color:#172033}.pam-game-panel{background:var(--pam-panel);border:1px solid var(--pam-border);border-radius:18px;padding:16px;box-shadow:0 8px 26px rgba(15,23,42,.06)}.pam-game-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.pam-game-toolbar label{display:flex;gap:8px;align-items:center;font-weight:700}.pam-game-toolbar select{min-height:44px;max-width:340px;border:1px solid var(--pam-border);border-radius:10px;padding:7px 10px;background:#fff}.pam-color-modes{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.pam-color-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.pam-color-layout.has-reference{grid-template-columns:minmax(0,1fr) minmax(220px,34%)}.pam-color-stage{position:relative;min-width:0;background:#eef1f5;border:1px solid var(--pam-border);border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:340px}.pam-color-stage img.pam-color-underlay{display:block;max-width:100%;max-height:680px;object-fit:contain;filter:grayscale(1) contrast(2.2) brightness(1.65);opacity:.38;pointer-events:none;user-select:none}.pam-color-stage.is-creative img.pam-color-underlay{filter:none;opacity:.14}.pam-color-canvas-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.pam-color-canvas{display:block;max-width:100%;max-height:680px;touch-action:none;cursor:crosshair}.pam-color-reference{background:var(--pam-soft);border:1px solid var(--pam-border);border-radius:14px;padding:12px}.pam-color-reference h4{margin:0 0 10px}.pam-color-reference img{display:block;width:100%;max-height:620px;object-fit:contain;border-radius:10px;background:#fff}.pam-color-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0}.pam-color-palette{display:flex;flex-wrap:wrap;gap:7px}.pam-color-swatch{position:relative;width:44px;height:44px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #aeb8c4;cursor:pointer}.pam-color-swatch.is-active{box-shadow:0 0 0 3px #172033}.pam-color-swatch span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;text-shadow:0 1px 2px rgba(255,255,255,.8)}.pam-color-size{display:flex;gap:8px;align-items:center}.pam-color-size input{width:130px}.pam-color-status,.pam-memory-status,.pam-quiz-status{min-height:24px;margin-top:10px;font-weight:750}.pam-number-grid{display:grid;width:100%;max-width:760px;aspect-ratio:1.4;background:#fff;border:1px solid var(--pam-border)}.pam-number-cell{appearance:none;border:1px solid #d7dce2;background:#fff;color:#667085;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:12px;min-width:0;padding:0;cursor:pointer}.pam-number-cell.is-filled{color:rgba(17,24,39,.78)}.pam-memory-head,.pam-quiz-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.pam-memory-metrics,.pam-quiz-metrics{display:flex;gap:12px;flex-wrap:wrap;font-weight:800;color:var(--pam-muted)}.pam-memory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pam-memory-card{appearance:none;position:relative;aspect-ratio:1;border:0;border-radius:14px;padding:0;overflow:hidden;background:#172033;color:#fff;cursor:pointer;perspective:900px}.pam-memory-card-inner{position:absolute;inset:0;transition:transform .4s ease;transform-style:preserve-3d}.pam-memory-card.is-open .pam-memory-card-inner,.pam-memory-card.is-matched .pam-memory-card-inner{transform:rotateY(180deg)}.pam-memory-face{position:absolute;inset:0;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;padding:8px}.pam-memory-back{font-size:34px;background:#172033}.pam-memory-front{transform:rotateY(180deg);background:#fff;color:#172033;border:1px solid var(--pam-border);font-weight:800;text-align:center}.pam-memory-front img{width:100%;height:100%;object-fit:cover;border-radius:10px}.pam-memory-card.is-matched{outline:3px solid rgba(34,197,94,.35)}.pam-quiz-card{max-width:760px;margin:0 auto}.pam-quiz-image{display:block;width:min(100%,520px);max-height:460px;object-fit:contain;margin:0 auto 14px;border-radius:12px;background:#eef1f5}.pam-quiz-question{font-size:clamp(20px,3vw,30px);font-weight:850;line-height:1.25;margin:6px 0 18px;text-align:center}.pam-quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pam-quiz-options button{border-radius:12px;min-height:54px;text-align:left}.pam-quiz-options button.is-correct{border-color:#22c55e;background:#ecfdf3;color:#166534}.pam-quiz-options button.is-wrong{border-color:#ef4444;background:#fff1f2;color:#9f1239}.pam-quiz-next{margin-top:14px}.pam-empty{padding:32px 16px;text-align:center;color:var(--pam-muted);font-weight:700;background:var(--pam-soft);border-radius:14px}@media(max-width:800px){.pam-color-layout.has-reference{grid-template-columns:1fr}.pam-memory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pam-game-panel{padding:12px}}@media(max-width:520px){.pam-games{margin:14px auto}.pam-memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pam-quiz-options{grid-template-columns:1fr}.pam-color-stage{min-height:280px}.pam-games-tabs button{flex:1}.pam-game-toolbar select{width:100%;max-width:none}.pam-game-toolbar label{width:100%}}
@media(prefers-reduced-motion:reduce){.pam-memory-card-inner{transition:none}}
.pam-number-image-wrap{width:100%;display:flex;align-items:center;justify-content:center;padding:12px;background:#fff}.pam-number-image-canvas{display:block;max-width:100%;height:auto;max-height:720px;background:#fff;touch-action:manipulation;cursor:pointer;border:1px solid var(--pam-border)}.pam-color-controls button[aria-pressed=true]{background:#172033;color:#fff;border-color:#172033}.pam-color-status{display:flex;align-items:center;gap:8px}.pam-color-stage:has(.pam-number-image-canvas){background:#fff}.pam-color-reference[hidden]{display:none}.pam-color-reference:not([hidden]){display:block}
@media(max-width:520px){.pam-number-image-wrap{padding:4px}.pam-number-image-canvas{max-height:560px}.pam-color-palette{gap:6px}.pam-color-swatch{width:42px;height:42px}}

/* v2.2.88 modern coloring UI */
.pam-games{
  --pam-border:#d7deea;
  --pam-text:#162033;
  --pam-muted:#5f6f86;
  --pam-panel:#ffffff;
  --pam-soft:#f5f7fb;
  --pam-primary:#1f3b78;
  --pam-primary-2:#274690;
  --pam-shadow:0 16px 36px rgba(21,34,58,.08);
  max-width:1280px;
}
.pam-games .pam-game-panel{
  padding:22px;
  border-radius:22px;
  box-shadow:var(--pam-shadow);
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);
}
.pam-games .pam-game-toolbar,
.pam-games .pam-color-controls{
  gap:12px;
}
.pam-games .pam-game-toolbar label{
  font-weight:800;
  color:var(--pam-text);
}
.pam-games .pam-game-toolbar select{
  min-width:220px;
  min-height:48px;
  border:1px solid var(--pam-border);
  background:#fff;
  box-shadow:0 4px 12px rgba(15,23,42,.05);
}
.pam-games .pam-games-tabs button,
.pam-games .pam-color-modes button,
.pam-games .pam-color-controls button:not(.pam-color-swatch),
.pam-games .pam-memory-head button,
.pam-games .pam-quiz-next,
.pam-games .pam-quiz-options button{
  appearance:none;
  border:1px solid var(--pam-border) !important;
  background:#fff !important;
  color:var(--pam-text) !important;
  border-radius:14px;
  padding:12px 16px;
  min-height:46px;
  line-height:1.2;
  font-weight:800;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease, color .12s ease, border-color .12s ease;
}
.pam-games .pam-games-tabs button:hover,
.pam-games .pam-color-modes button:hover,
.pam-games .pam-color-controls button:not(.pam-color-swatch):hover,
.pam-games .pam-memory-head button:hover,
.pam-games .pam-quiz-next:hover,
.pam-games .pam-quiz-options button:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(15,23,42,.08);
  border-color:#b7c6df !important;
}
.pam-games .pam-games-tabs button[aria-selected=true],
.pam-games .pam-color-modes button.is-active,
.pam-games .pam-color-controls button[aria-pressed=true],
.pam-games .pam-ui-button-primary{
  background:linear-gradient(180deg,var(--pam-primary-2) 0%,var(--pam-primary) 100%) !important;
  color:#fff !important;
  border-color:var(--pam-primary) !important;
  box-shadow:0 14px 30px rgba(31,59,120,.22);
}
.pam-games .pam-color-controls{
  padding:14px;
  border:1px solid var(--pam-border);
  border-radius:18px;
  background:#f8faff;
  margin-bottom:16px;
}
.pam-games .pam-color-palette{gap:10px}
.pam-games .pam-color-swatch{
  width:48px;
  height:48px;
  box-shadow:0 0 0 1px #c8d1de, 0 8px 16px rgba(15,23,42,.08);
}
.pam-games .pam-color-swatch.is-active{box-shadow:0 0 0 4px rgba(31,59,120,.18), 0 0 0 2px var(--pam-primary)}
.pam-games .pam-color-layout{gap:18px}
.pam-games .pam-color-layout.has-reference{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}
.pam-games .pam-color-stage{
  min-height:560px;
  padding:18px;
  border-radius:18px;
  background:linear-gradient(180deg,#f8faff 0%,#f1f5fb 100%);
}
.pam-games .pam-color-stage img.pam-color-underlay{max-height:820px}
.pam-games .pam-color-canvas,
.pam-games .pam-number-image-canvas{
  max-height:920px;
  cursor:url("brush-cursor.png") 5 27, crosshair;
}
.pam-games .pam-color-canvas{max-width:100%;}
.pam-games .pam-color-canvas-wrap,
.pam-games .pam-number-image-wrap{width:100%;display:flex;align-items:center;justify-content:center}
.pam-games .pam-number-image-wrap{padding:8px;background:transparent}
.pam-games .pam-number-image-canvas{
  background:#fff;
  border:1px solid var(--pam-border);
  border-radius:12px;
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}
.pam-games .pam-color-reference{
  background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);
  border-radius:18px;
  padding:14px;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.pam-games .pam-color-reference h4{font-size:16px;font-weight:850;color:var(--pam-text)}
.pam-games .pam-color-reference img{max-height:760px;box-shadow:0 8px 20px rgba(15,23,42,.06)}
.pam-games .pam-reference-caption{margin-top:10px;font-size:14px;font-weight:700;color:var(--pam-muted);text-align:center}
.pam-games .pam-color-status,
.pam-games .pam-memory-status,
.pam-games .pam-quiz-status{font-weight:800;color:var(--pam-text)}
.pam-games .pam-quiz-options button.is-correct{border-color:#22c55e !important;background:#ecfdf3 !important;color:#166534 !important}
.pam-games .pam-quiz-options button.is-wrong{border-color:#ef4444 !important;background:#fff1f2 !important;color:#9f1239 !important}
@media (max-width: 960px){
  .pam-games .pam-color-layout.has-reference{grid-template-columns:1fr}
  .pam-games .pam-color-stage{min-height:420px;padding:12px}
}
@media (max-width: 520px){
  .pam-games .pam-game-panel{padding:14px}
  .pam-games .pam-color-controls{padding:10px}
  .pam-games .pam-color-stage{min-height:340px}
  .pam-games .pam-color-canvas,
  .pam-games .pam-number-image-canvas{max-height:620px}
}

/* v2.2.89 palette + real brush cursor fix */
.pam-games .pam-color-controls .pam-color-swatch{
  padding:0 !important;
  min-height:0 !important;
  border-radius:50% !important;
  border:3px solid #fff !important;
  color:#111827 !important;
  transform:none !important;
}
.pam-games .pam-color-controls .pam-color-swatch:hover{
  transform:scale(1.05) !important;
  border-color:#fff !important;
}
.pam-games .pam-color-swatch span{
  font-size:13px;
  font-weight:900;
  color:#111827;
  text-shadow:0 1px 2px rgba(255,255,255,.95),0 0 4px rgba(255,255,255,.85);
}
.pam-games .pam-color-canvas,
.pam-games .pam-number-image-canvas{cursor:url("brush-cursor.png") 5 27, crosshair !important;}

/* v2.2.95 extra image games */
.pam-game-intro{margin:0 0 12px;font-weight:800;color:var(--pam-muted)}
.pam-spotdiff{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pam-spotdiff-canvas,.pam-hidden-canvas{display:block;width:100%;height:auto;background:#fff;border:1px solid var(--pam-border);border-radius:14px;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.pam-hidden-thumbs{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin-bottom:14px}
.pam-hidden-thumb{background:#fff;border:1px solid var(--pam-border);border-radius:14px;padding:8px;text-align:center;font-weight:800;color:var(--pam-muted);box-shadow:0 8px 22px rgba(15,23,42,.04)}
.pam-hidden-thumb img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;margin-bottom:6px}
.pam-hidden-thumb.is-found{border-color:#16a34a;background:#ecfdf3;color:#166534}
.pam-detail-crop-wrap{text-align:center;margin-bottom:14px}
.pam-detail-crop{display:inline-block;max-width:min(100%,260px);border-radius:14px;border:1px solid var(--pam-border);background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.pam-detail-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pam-detail-option{appearance:none;border:1px solid var(--pam-border);background:#fff;border-radius:14px;padding:8px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;text-align:left;cursor:pointer;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.pam-detail-option img{display:block;width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:10px}
.pam-detail-option span{font-weight:800;color:var(--pam-text)}
.pam-detail-option.is-correct{border-color:#22c55e !important;background:#ecfdf3 !important}
.pam-detail-option.is-wrong{border-color:#ef4444 !important;background:#fff1f2 !important}
.pam-match-wrap{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pam-match-col{display:grid;gap:12px}
.pam-match-card{appearance:none;border:1px solid var(--pam-border);background:#fff;border-radius:16px;padding:8px;display:flex;gap:10px;align-items:center;text-align:left;cursor:pointer;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.pam-match-card img{width:90px;height:90px;object-fit:cover;border-radius:12px;flex:0 0 auto;background:#f8fafc}
.pam-match-lineart img{background:#fff;object-fit:contain}
.pam-match-card span{font-weight:800;color:var(--pam-text)}
.pam-match-card.is-selected{outline:3px solid rgba(37,99,235,.35);border-color:#2563eb}
.pam-match-card.is-done{border-color:#22c55e;background:#ecfdf3}
.pam-match-card.is-wrong{border-color:#ef4444;background:#fff1f2}
@media(max-width:900px){.pam-spotdiff,.pam-match-wrap{grid-template-columns:1fr}.pam-detail-options{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.pam-detail-options{grid-template-columns:1fr}.pam-match-card img{width:72px;height:72px}}
