.gr-intro{max-width:760px;color:#c9dbd0;font-size:1.1rem;line-height:1.7}.gr-lesson{max-width:1100px;margin:32px auto}.gr-card{margin:22px 0;padding:clamp(20px,4vw,38px);border:1px solid #3d6354;border-radius:20px;background:#102d25;color:#f1f7f0;line-height:1.75;min-width:0}.gr-card h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.3;margin:10px 0 24px}.gr-card h3{color:#d4f580;font-size:1.2rem;margin:28px 0 12px}.gr-card h4{font-size:1.1rem;margin:0}.gr-card p,.gr-card li{font-size:1rem}.gr-card li{padding-left:6px;margin:12px 0}.gr-step{display:block;font:700 .8rem/1.6 'Space Mono',monospace;letter-spacing:.1em;color:#baf465;margin-bottom:10px}.gr-card a,.gr-sources a{color:#d4f580;text-underline-offset:4px;overflow-wrap:anywhere}.gr-prompt,.gr-note{border-left:3px solid #baf465;padding:12px 18px;background:#16382d}.gr-video{aspect-ratio:16/9;max-width:780px;margin-bottom:12px}.gr-video iframe{width:100%;height:100%;border:0;border-radius:12px;background:#081d17}.gr-reveal>summary{cursor:pointer;font-size:1.15rem;font-weight:700;color:#d4f580;padding:12px 0;line-height:1.5}.gr-reveal>summary:focus-visible,.gr-card button:focus-visible{outline:3px solid white;outline-offset:5px}.gr-reveal:not(.gr-card){border-top:1px solid #3d6354;margin-top:24px}.gr-reveal-body{padding-top:8px}.gr-score-frame,.gr-map-frame{display:block;width:100%;height:680px;border:1px solid #56846e;border-radius:12px;background:#e6e9e5;margin:20px 0}.gr-map-frame{height:620px;background:#10231d}.gr-meters{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.gr-meters>span{display:grid;min-width:68px;padding:12px 16px;background:#1a4435;border:1px solid #79a461;border-radius:12px;text-align:center;font:700 1.8rem/1.35 'Plus Jakarta Sans',sans-serif;color:#e3ffaa}.gr-meters b{border-bottom:2px solid #8daf75}.gr-meters i{font-style:normal}.gr-scale{border:1px solid #57816a;border-radius:16px;background:#092219;padding:12px;max-width:740px;color:#fff}.gr-scale svg{width:100%;height:auto;display:block}.gr-note-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.gr-card button{font:inherit;font-size:1rem;font-weight:600;line-height:1.4;padding:10px 18px;border-radius:10px;border:1px solid #a8ce78;background:#d4f580;color:#11271e;cursor:pointer;min-height:44px}.gr-card button:hover{background:#ebffc2}.gr-card button:disabled{opacity:.65;cursor:wait}.gr-interval{padding:16px;background:#102820;border:1px solid #52765e;border-radius:16px;min-width:0}.gr-interval .interval-feeling{display:none}.gr-reading{background:#183b2f;padding:clamp(18px,3vw,28px);border-radius:12px}.gr-reading h3{margin-top:0}.gr-source{font-size:.875rem!important;color:#bbcebf}.gr-instruments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gr-instruments article{padding:20px;background:#183b2f;border-radius:12px}.gr-number-line{font:700 clamp(1.15rem,3vw,1.8rem)/1.7 'Space Mono',monospace;color:#e3ffaa}.gr-table-wrap{overflow:auto}.gr-table-wrap table{width:100%;border-collapse:collapse;text-align:left}.gr-table-wrap th,.gr-table-wrap td{padding:14px;border-bottom:1px solid #446b58;vertical-align:top;min-width:130px}.gr-table-wrap thead{color:#d4f580}.gr-sources{font-size:.875rem;line-height:1.8;color:#bad2c4;padding:16px}.gr-sources summary{cursor:pointer}.gr-hub-link{display:block;border:1px solid #7da45f;border-radius:16px;padding:24px;background:#17362b;margin:28px 0;text-decoration:none;color:#e8f4e5}.gr-hub-link strong{display:block;font-size:1.35rem;margin:8px 0}.gr-hub-link small{color:#d4f580}.gr-hub-link:hover{background:#234b38}@media(max-width:699px){.gr-card{padding:20px 16px}.gr-lesson{margin-top:20px}.gr-instruments{grid-template-columns:1fr}.gr-score-frame{height:480px}.gr-map-frame{height:500px}.gr-meters{gap:8px}.gr-meters>span{min-width:54px;padding:8px 12px;font-size:1.5rem}.gr-interval{padding:8px}.gr-card ol{padding-left:22px}.gr-note-buttons button{padding:8px 12px}}@media print{.gr-video,iframe,.gr-interval,.gr-note-buttons,.gr-sources{display:none}.gr-card{break-inside:avoid;background:white;color:black;border-color:#999}.gr-card h3,.gr-step{color:#234b38}}

.gr-audio{padding:18px;border:1px solid #52765e;border-radius:12px;background:#092219;margin:20px 0}.gr-audio audio{display:block;width:100%;color-scheme:dark}

.gr-memes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;margin:24px 0 8px}.gr-memes img{display:block;width:100%;height:auto;border-radius:12px}@media(max-width:699px){.gr-memes{grid-template-columns:1fr;gap:16px}}

.multiplayer-hub{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #49634d;max-width:900px}
.multiplayer-tiles{display:grid;grid-template-columns:1fr;gap:24px}
.game-mode-card{box-sizing:border-box;min-height:280px;width:100%}
.multiplayer-tiles .gr-hub-link{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0;padding:30px;min-width:0;border:1px solid #526545;border-radius:12px;background:linear-gradient(145deg,#142a27,#0d211f)}
.multiplayer-tiles .gr-hub-link:hover{border-color:#baf465;background:#234b38}
.multiplayer-tiles .gr-hub-link:focus-visible{outline:3px solid #baf465;outline-offset:4px}
.multiplayer-tiles strong{font-size:clamp(27px,3.3vw,42px);line-height:1.2;overflow-wrap:anywhere}
.game-tile-copy{flex:1;min-width:0}.game-tile-copy>span{display:block;margin-top:20px}
.game-mode-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.game-mode-heading .single-player-title{margin:0!important}
.lesson .game-logo{display:block;flex:none;width:180px;height:150px;object-fit:contain;margin:0;border:0;border-radius:0;background:none}
.lesson .pokemon-logo{width:180px;height:auto}
.lesson .genshin-logo{border-radius:12px}
@media(max-width:700px){.multiplayer-tiles .gr-hub-link{padding:22px 18px;gap:18px}.game-mode-heading{gap:14px;flex-wrap:wrap}.lesson .game-logo{width:110px;height:110px}.lesson .pokemon-logo{width:135px;height:auto}.game-mode-card{min-height:260px}.multiplayer-tiles strong{font-size:25px}}
@media(max-width:420px){.multiplayer-tiles .gr-hub-link{flex-direction:column-reverse;align-items:flex-start}.lesson .game-logo{height:95px}.lesson .pokemon-logo{height:auto}}
