.testimony-game{--testimony-ink:#233d40;--testimony-gold:#e7c578;--testimony-dark:#203742;--testimony-green:#cadfba}
.testimony-game button{min-height:48px;white-space:normal;overflow-wrap:anywhere}
.testimony-game button:focus-visible,.testimony-game summary:focus-visible{outline:3px solid #b97821;outline-offset:3px}
.testimony-game details{padding:12px 0}.testimony-game summary{cursor:pointer;line-height:1.55}
.testimony-scenery{position:relative;background:#203742;border-radius:16px;overflow:hidden;margin:18px 0 14px}
.testimony-scenery>svg{display:block;width:100%;height:auto;min-height:120px}
.testimony-scenery>p{margin:0;padding:8px 14px;color:#fff0d1;background:#162d38;font-size:12px;line-height:1.4}
.testimony-scenery svg>g,.testimony-scenery svg>ellipse{animation:testimony-reveal .28s ease-out}
.testimony-thread-board{display:grid;gap:12px}.testimony-thread{padding:16px;border-radius:14px;border:1px solid #9d9b8b;background:#f1ecde;position:relative}
.testimony-thread h3{font-size:18px;color:#243e3d;margin:0 0 8px}.testimony-thread>p{margin:0 0 12px;font-size:14px;line-height:1.5}
.testimony-pair{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:5px;align-items:stretch}
.testimony-pair button{display:flex;flex-direction:column;justify-content:center;gap:6px;border:2px dashed #a3916f!important;background:#fffdf5!important;color:#2b403e!important;text-align:left!important;padding:12px!important}
.testimony-pair button span{font-weight:600;line-height:1.5;font-size:14px}.testimony-pair button small{font-size:12px;color:#5c6156;line-height:1.4}
.testimony-thread-link{display:grid;place-items:center;color:#7b7059;font-size:22px}
.testimony-thread.is-connected{background:#e7efdd;border-color:#5b805a;box-shadow:inset 4px 0 #688962}
.testimony-thread.is-connected .testimony-pair button{border-style:solid!important;border-color:#7b9970!important}.testimony-thread.is-connected .testimony-thread-link{color:#386b45}
.testimony-thread .testimony-thread-result{margin:12px 0 0;font-size:13px;color:#536055;min-height:20px}.testimony-thread.is-connected .testimony-thread-result{font-weight:600;color:#2f593b}
.testimony-meter{font-weight:700;color:#304f42;padding:6px 0}
.testimony-record-bank{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.testimony-record-bank button{display:flex;flex-direction:column;gap:8px;text-align:left!important;padding:14px!important;background:#faf6e9!important;color:#263c3a!important;border:1px solid #bcae8a!important}
.testimony-record-bank button strong{font-size:14px;line-height:1.5}.testimony-record-bank button small{font-size:12px;line-height:1.4;color:#5c6051}
.testimony-record-bank button[aria-pressed=true]{background:#f7e6b9!important;border-color:#865b1d!important;outline:2px solid #865b1d;outline-offset:2px}
#testimony-feedback{min-height:3em;line-height:1.55;border-left:3px solid #ab8542;padding:12px;background:#aa864511}
.testimony-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.testimony-actions button{flex:1 1 170px}
.testimony-sources{margin-top:20px}.testimony-carried-report{background:#e9e7d9;border:1px solid #b0b39a;padding:14px 18px;border-radius:12px;margin:16px 0;color:#334c41}
.testimony-carried-report>strong{font-size:15px}.testimony-carried-report ul{font-size:13px;line-height:1.55;padding-left:18px;margin:8px 0 0}.testimony-carried-report li+li{margin-top:5px}
.testimony-routing{position:relative;border:2px solid #35545a;border-radius:16px;background:linear-gradient(125deg,#223c48,#182b34);padding:18px;color:#f2e3bd;margin:20px 0}
.testimony-entry,.testimony-exit{padding:7px 0;font-size:13px;font-weight:700;color:#ead39a}.testimony-exit{padding-top:12px}
.testimony-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.testimony-route-tile{position:relative;border:1px solid #9a947d!important;border-radius:10px!important;background:#2c4650!important;color:#f7e9cc!important;padding:0 8px 12px!important;display:flex;flex-direction:column;align-items:center;text-align:center!important;gap:6px}
.testimony-route-tile>svg{width:100%;max-width:100px;display:block;overflow:visible}
.testimony-route-tile svg>circle{fill:#1c333d;stroke:#a5b3a5;stroke-width:1}.testimony-route-tile svg>path{fill:none;stroke:#d9bc7d;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.testimony-route-tile svg .testimony-pipe-dot{fill:#e9ce94;stroke:none}
.testimony-route-tile>small{font-size:10px;letter-spacing:.06em;color:#ead19a}.testimony-route-tile>strong{font-size:13px;line-height:1.45;flex:1}.testimony-route-tile>span{font-size:12px;line-height:1.4;padding-top:3px;color:#d6e2d6}
.testimony-route-tile.is-reached{border-color:#d2e2ae!important;background:#3d5f4d!important;box-shadow:0 0 10px #dce4a344}.testimony-route-tile.is-reached svg>path{stroke:#dbedb4}.testimony-exit.is-reached{color:#d8edb0}
.testimony-delivered{display:grid;grid-template-columns:44px 1fr;gap:6px 12px;background:#e4edda;border:1px solid #91ab7b;border-radius:14px;padding:18px;color:#254b34;animation:testimony-reveal .35s ease-out}
.testimony-delivered>span{grid-row:span 2;font-size:30px;align-self:center}.testimony-delivered>strong{align-self:end}.testimony-delivered>p{margin:0;line-height:1.5;font-size:14px}
.testimony-final-route{counter-reset:none;padding-left:28px}.testimony-final-route>li{padding:7px 0 8px 8px;color:#2f4c3c}.testimony-final-route p{font-size:14px;line-height:1.55;margin:4px 0}
@keyframes testimony-reveal{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:850px){.testimony-thread-board{grid-template-columns:repeat(3,minmax(0,1fr))}.testimony-pair{grid-template-columns:1fr;gap:3px}.testimony-pair button{min-height:106px}.testimony-thread-link{height:18px;transform:rotate(90deg)}.testimony-thread h3{min-height:48px}.testimony-thread>p{min-height:66px}.testimony-record-bank{grid-template-columns:repeat(3,minmax(0,1fr))}.testimony-routing{max-width:670px;margin-left:auto;margin-right:auto}.testimony-route-tile>strong{font-size:15px}}
@media(max-width:420px){.testimony-thread{padding:12px}.testimony-thread h3{font-size:17px}.testimony-pair{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);gap:3px}.testimony-pair button{padding:9px!important}.testimony-pair button span{font-size:12px}.testimony-pair button small{font-size:11px}.testimony-record-bank{gap:8px}.testimony-record-bank button{padding:10px!important}.testimony-record-bank button strong{font-size:12px}.testimony-record-bank button small{font-size:11px}.testimony-routing{padding:10px}.testimony-route-grid{gap:5px}.testimony-route-tile{padding:0 5px 8px!important}.testimony-route-tile>strong{font-size:11px}.testimony-route-tile>small{font-size:9px}.testimony-route-tile>span{font-size:11px}.testimony-carried-report{padding:12px}.testimony-delivered{padding:12px;grid-template-columns:28px 1fr;gap:6px 8px}}
@media(prefers-reduced-motion:reduce){.testimony-game *{animation:none!important;transition:none!important}}
body.motion-paused .testimony-game *{animation:none!important;transition:none!important}
