/* Photographic media layer. Physical models retain their technical diagrams. */
.academy-photo{display:block;object-fit:contain;max-width:100%;background:#edf0ee;color:#173b48}
.hero-art{overflow:hidden;border-radius:8px;background:#102d3b}
.hero-art>img{width:100%;height:100%;object-fit:contain;transform:none;filter:none}
.hero-stamp{font-size:10px;background:#102d3be8;color:#e5f1ec;padding:8px 12px}
.game-board,.game-tile,.shift-hero,.game-score{border-radius:10px}
.game-primary{box-shadow:none;border-radius:7px;background:#d9b269}
.game-primary:hover{box-shadow:0 5px 16px #142c3420;transform:translateY(-1px)}
.shift-warehouse{position:relative;display:block;transform:none;border-radius:7px;overflow:hidden;align-self:center;background:#102d3b}
.shift-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.shift-round-marks{position:absolute;bottom:13px;left:13px;right:13px;display:flex;gap:8px;justify-content:center}
.shift-round-marks>span{display:grid;place-items:center;flex:0 1 37px;height:34px;background:#102d3beb;border:1px solid #87a3aa;color:#d9e3e5;font-size:12px;font-weight:800;border-radius:4px}
.shift-round-marks .lit{background:#236c5b;border-color:#a5d9bf;color:white}
.game-tile{padding:12px;overflow:hidden}.game-tile-art{height:auto;aspect-ratio:3/2;background:#e5e9e8;border-radius:5px;overflow:hidden}
.game-tile-art .academy-photo{width:100%;height:100%;max-width:100%;object-fit:contain}
.game-tile-art>span{display:grid;place-items:center;width:28px;height:28px;border-radius:4px;background:#102d3bdc;color:white;font-size:17px}
.game-tile-type,.game-tile h3,.game-tile-foot{margin-left:6px;margin-right:6px}
.memory-card{height:205px;border-radius:8px;box-shadow:0 4px 12px #183b4810}
.memory-cover,.memory-face{border-radius:7px}.memory-cover{background:linear-gradient(135deg,#143b49,#235363)}
.memory-backmark{display:flex;flex-direction:column;gap:11px;align-items:center;color:#d5e2e3}
.memory-backmark b{font-size:28px;letter-spacing:-1px;border:1px solid #76949d;padding:9px 13px;border-radius:4px;font-weight:600}
.memory-backmark>span{font-size:9px;line-height:1.8;letter-spacing:2px}
.memory-face{padding:0 0 9px;justify-content:flex-start;background:#f6f7f6}
.memory-face .academy-photo{width:100%;height:156px;max-width:100%;object-fit:contain;background:#e6ebe9}
.memory-face>span{padding:6px 8px 0;margin:0;font-size:12px;line-height:1.5}
.memory-tick{background:#173e32;color:#fff;padding:2px 5px;border-radius:3px}
.sort-card{background:#f4f6f5;border:1px solid #b5c8c6;border-radius:8px;padding:16px 12px}
.sort-card .academy-photo{width:100%;max-width:100%;height:auto;aspect-ratio:3/2;margin:14px auto;object-fit:contain}
.sort-card-tag{color:#4e6b72}.sort-bucket{border-radius:8px}.sort-card h3{font-size:18px}
.warehouse-photo{position:relative;width:100%;line-height:0;background:#dce5e3;overflow:hidden}
.warehouse-photo .academy-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;max-width:none;object-fit:contain}
.photo-scene-credit{position:absolute;bottom:6px;left:6px;line-height:1.3;font-size:8px;letter-spacing:.3px;color:#fff;background:#102d3bc9;padding:4px 6px;border-radius:2px;pointer-events:none}
.scene-comparison figure{border-radius:7px}.scene-comparison figcaption{background:#e7edec;color:#274c58}
.scene-zone{border-radius:3px}.scene-zone.found{background:#2b956314;border-width:2px}.scene-zone.found>span{transform:translate(0,-25%);right:2px}
.inspection-tile{padding:0 0 15px;border-radius:8px;overflow:hidden;justify-content:flex-start;gap:11px;background:#f2f5f4}
.inspection-tile .academy-photo{width:100%;height:auto;max-width:100%;aspect-ratio:3/2;object-fit:contain;background:#e7eae8}
.inspection-tile>span{padding:0 12px}
.game-order-item{grid-template-columns:32px 128px minmax(0,1fr) 38px;border-radius:7px;background:#f1f5f3}
.game-order-item>.academy-photo{height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:3px;max-width:100%}
.balance-toy{border-radius:8px;background:#f0f3f2}.balance-reference{display:flex;align-items:center;gap:20px;border-bottom:1px solid #c2d1ce;padding-bottom:13px;color:#526e75;font-size:12px}
.balance-reference .academy-photo{width:180px;max-width:45%;height:110px;object-fit:contain;border-radius:3px}
.balance-toy>svg{max-height:240px}.game-board-footer a{color:#326b69}
.pl-part-picture{padding:0;background:#e7ecea;overflow:hidden;border-radius:7px}.pl-part-picture .academy-photo{width:100%;height:auto;object-fit:contain;aspect-ratio:3/2}
.pl-check-art{gap:12px;max-width:500px}.pl-check-art .academy-photo{width:48%;height:auto;object-fit:contain;aspect-ratio:3/2;border-radius:5px}
.pl-answer-grid.pictures .academy-photo{width:170px;max-width:80%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:4px}
.studio-host .host-portrait{object-fit:cover;object-position:50% 23%;border-radius:50%;aspect-ratio:1/1;filter:none;background:#142e3d;border:1px solid #587480}
.studio-host-name>span{letter-spacing:1px}.coach-picture{border-radius:8px}.coach-stage{border-radius:10px}
.app-footer{flex-wrap:wrap}.app-footer a{white-space:nowrap}
@media(max-width:900px){.scene-comparison.two-scenes{grid-template-columns:1fr}.game-order-item{grid-template-columns:28px 100px minmax(0,1fr) 34px;gap:10px}.memory-card{height:185px}.memory-face .academy-photo{height:137px}}
@media(max-width:600px){.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.memory-card{height:185px}.memory-face .academy-photo{height:137px}.memory-face>span{font-size:11px}.game-order-item{grid-template-columns:23px 76px minmax(0,1fr) 30px;gap:8px;padding:10px 8px}.game-order-item strong{font-size:12px}.order-moves button{width:29px}.pl-answer-grid.pictures .academy-photo{width:115px;max-width:100%;height:auto}.photo-scene-credit{font-size:7px}.shift-hero{padding:23px}.sort-card h3{font-size:16px}.sort-card .academy-photo{height:auto}.balance-reference{gap:12px;font-size:10px}.balance-reference .academy-photo{height:85px}}
