.figure-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 16px}.figure-picker button{border:2px solid transparent;border-radius:18px;background:#fff9;padding:9px;min-width:0}.figure-picker button.active{border-color:#789467;background:#edf3e8}.figure-picker img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.figure-picker span{display:block;margin-top:5px;font-weight:700}.game-image-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px;margin-top:14px}.game-image-item{position:relative}.game-image-item img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:13px}.game-image-item button{position:absolute;right:4px;top:4px;width:32px;height:32px;border:0;border-radius:50%;background:#fff;color:#573d37;font-size:22px;box-shadow:0 1px 5px #0003}
@media(max-width:650px){.figure-picker{gap:6px}.figure-picker button{padding:6px}}
/* The image must not determine a card's grid height. */
.photo-workshop{max-width:1000px;margin:20px auto}.photo-workshop h1{font-size:clamp(28px,4vw,42px);margin:15px 0}.game-controls{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:12px 0}.game-controls .form-field,.game-levels{flex:1;min-width:160px;max-width:330px;margin:0}.game-levels>span{display:block;font-size:13px;font-weight:700;margin:0 0 7px}.memory-grid{grid-template-columns:repeat(var(--memory-columns,4),minmax(0,1fr));max-width:700px;margin:18px auto}.memory-card{position:relative;width:100%;min-width:0;min-height:0;aspect-ratio:1;border:3px solid #a3b68c;background:repeating-linear-gradient(45deg,#e6eadb 0 10px,#dce5d1 10px 20px);box-shadow:0 3px 0 #879c73}.memory-card span{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;display:grid;place-items:center}.memory-card img{position:absolute;top:0;right:0;bottom:0;left:0;inset:0;width:100%;height:100%;object-fit:contain;background:#fffaf0}.memory-card.is-open{border-color:#788b65}.memory-card.is-matched:disabled{opacity:1;border-color:#587942;box-shadow:0 0 0 2px #c4d8b5}.memory-card.is-matched:after{content:'✓';position:absolute;right:5px;bottom:5px;border-radius:50%;background:#4d7338;color:white;font-size:18px;line-height:26px;width:26px;text-align:center}.puzzle-photo{padding:0;border:2px solid #d6decc;border-radius:18px;background:#fffaf0;overflow:hidden;min-width:0}.puzzle-photo img{display:block;width:100%;aspect-ratio:1;object-fit:contain}.puzzle-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start}.puzzle-board-wrap{padding:12px;background:#f3eddf;border:2px solid #beb69e;border-radius:16px;box-shadow:inset 0 2px 7px #665d4522}.puzzle-board{display:block;width:100%;max-height:none}.puzzle-board [data-slot]{transition:fill .15s}.puzzle-board [data-slot]:hover,.puzzle-board [data-slot]:focus{fill:#adc09244;outline:none;stroke:#33452b;stroke-width:4}.puzzle-board [data-slot].is-placed{stroke:#fbf5e8;stroke-width:1;pointer-events:none}.puzzle-bank{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.puzzle-piece{position:relative;aspect-ratio:1;min-width:0;min-height:0;background:#e5e9dc;border:2px solid #c3cdb7;border-radius:12px;touch-action:none}.puzzle-piece svg{width:100%;height:100%;filter:drop-shadow(0 2px 1px #3d472d33)}.puzzle-piece[aria-pressed=true]{border-color:#365529;background:#bdceac;box-shadow:0 0 0 2px #365529}.puzzle-piece.is-placed:disabled{opacity:.28;background:transparent}.puzzle-drag{position:fixed;width:120px;height:120px;transform:translate(-50%,-50%);pointer-events:none;z-index:200;filter:drop-shadow(0 6px 4px #0004)}[data-feedback]{min-height:3em;margin:18px 0;color:#425537;font-weight:600}.hero-art img{border-radius:32px;mix-blend-mode:multiply;max-height:560px;object-fit:contain}.figure-picker img{object-fit:contain}.install-note ol{padding-left:20px}.install-note li{margin:9px 0}.game-controls [data-preview][aria-pressed=true]{background:#dce7cf;border-color:#8aa373}
@media(max-width:650px){.puzzle-layout{grid-template-columns:1fr;gap:16px}.puzzle-board-wrap{max-width:430px;width:100%;margin:auto}.puzzle-bank{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.memory-card{border-radius:12px}.photo-workshop h1{font-size:28px}.game-controls{gap:10px}.art-caption{bottom:10px}.hero-art img{max-height:390px}}
@media(max-width:420px){.game-controls{align-items:stretch}.game-controls .form-field,.game-levels{flex:1 1 100%;max-width:none;min-width:0}.game-levels .segmented{width:100%}.photo-workshop>button.secondary{width:100%;margin-top:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Bilderbuchserie: Bilder stehen frei; Namen stehen immer unter dem Motiv. */
.figure-picker button,.figure-picker button.active{border:0;box-shadow:none;background:transparent}
.figure-picker button.active span{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:5px}
.figure-picker button:focus-visible{outline:3px solid #365529;outline-offset:3px}
.figure-picker img,.game-image-item img{border-radius:0}
.memory-card,.memory-card.is-open,.memory-card.is-matched:disabled,.puzzle-photo{border:0;box-shadow:none;background:transparent}
.memory-card{aspect-ratio:auto;padding:0;display:flex;flex-direction:column;align-items:stretch;overflow:visible}
.memory-card .memory-art{position:relative;inset:auto;display:block;width:100%;aspect-ratio:1;background:#eee9db;border-radius:12px;overflow:hidden}
.memory-card .memory-art img{position:static;inset:auto;width:100%;height:100%;object-fit:contain;background:transparent}
.memory-card .memory-art [data-back]{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(24px,5vw,42px);color:#5b7150}
.memory-card .memory-caption{display:block;min-height:1.6em;margin-top:5px;font-size:clamp(11px,1.5vw,15px);line-height:1.3;color:#35452f;font-weight:700;text-align:center}
.memory-card .memory-caption[hidden],.memory-card .memory-art [hidden]{display:none}
.memory-card.is-matched:after{bottom:26px}
.memory-card:focus-visible,.puzzle-photo:focus-visible{outline:3px solid #365529;outline-offset:3px}
.puzzle-photo{padding:0;overflow:visible;display:flex;flex-direction:column;align-items:stretch}
.puzzle-photo img{border-radius:0;background:transparent}
.puzzle-photo span{display:block;margin-top:5px;font-weight:700;color:#35452f;text-align:center}
