/* The course is the landing screen; lessons live inside each unlocked island. */
body[data-menu-page="path"] .game-menu{max-width:720px}
.course-heading{margin-bottom:20px}.course-heading h1{font-size:38px}
.course-bands{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:22px}
.course-bands button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;border:2px solid #e3d3f7;border-radius:16px;background:#fffbff;color:#83669f;font-weight:800;font-size:15px;box-shadow:0 3px #e8dcf5}
.course-bands button.selected{background:#8a51ed;color:white;border-color:#8a51ed;box-shadow:0 4px #6733ba}.course-bands svg{width:14px;height:14px}
.course-level-banner{display:flex;align-items:center;gap:18px;padding:24px;border:2px solid #dec5ff;border-radius:25px;background:#eadbff;box-shadow:0 5px #dfccf5}
.course-level-banner>span{display:grid;place-items:center;flex:none;width:62px;height:68px;font-size:27px;font-weight:900;background:#fff8ff;color:#8d4ad8;border-radius:20px;box-shadow:0 4px #cba5ef}
.course-level-banner h2{color:#5f348e;font-size:22px}.course-level-banner p{margin:7px 0 0;color:#816199;font-size:13px}.course-level-banner>svg{margin-left:auto;width:30px;height:30px;color:#a16adc}
.course-level-banner[data-band="A2"]{background:#dcf5ed;border-color:#bfe7da}.course-level-banner[data-band="B1"]{background:#dcedff;border-color:#c3dcfa}.course-level-banner[data-band="B2"]{background:#ffe8d3;border-color:#f9d8b6}.course-level-banner[data-band="C1"]{background:#f8def2;border-color:#efc6e7}
.course-gate-note{text-align:center;margin:22px auto 0;max-width:430px;font-size:14px;line-height:1.6;color:#886b9f}
.course-world-path{position:relative;display:flex;flex-direction:column;gap:32px;padding:34px 0}
.course-world-path::before{content:"";position:absolute;left:50%;top:70px;bottom:60px;border-left:4px dashed #ddc9f1}
.course-world{position:relative;display:flex;align-items:center;gap:16px;text-align:left;width:90%;min-height:190px;padding:10px 22px 10px 8px;border:2px solid #eee1f8;border-radius:30px;background:#f8f1fd;color:#6c4987;box-shadow:0 5px #e9dcf2;transition:border-color .15s,background .15s}
.course-world:nth-child(even){align-self:flex-end}.course-world.open{background:#fffcff;border-color:#bf97f1;box-shadow:0 6px #d7b7f4}.course-world.complete{border-color:#7fd0b7;background:#f5fffa;box-shadow:0 6px #c5eadc}
.course-world:focus-visible,.course-bands button:focus-visible,.course-next-band:focus-visible{outline:3px solid #9a64eb;outline-offset:5px}
.course-world:hover{border-color:#b795d7}.course-world-art{position:relative;display:block;flex:none;width:172px;height:172px;padding:5px}.course-world-art img{width:100%;height:100%;object-fit:contain}.course-world.closed .course-world-art img{filter:saturate(.4);opacity:.76}
.course-world-status{position:absolute;bottom:9px;right:10px;display:grid;place-items:center;width:36px;height:36px;border:2px solid #fff;border-radius:14px;background:#dcc8ee;color:#835f9e;box-shadow:0 3px #bea6d6}.course-world-status svg{width:19px;height:19px}.open .course-world-status{background:#a365f0;color:white;box-shadow:0 3px #8a4ccf}.complete .course-world-status{background:#54ba97;box-shadow:0 3px #369e7c}
.course-world-copy{min-width:0;display:flex;flex-direction:column;gap:7px}.course-world-copy small{font-size:10px;letter-spacing:1px;font-weight:800;color:#9373b0}.course-world-copy strong{font-size:23px;line-height:1.2;color:#553370;overflow-wrap:anywhere}.course-world-copy>span{font-size:13px;line-height:1.5;color:#8b749e}.course-world-copy em{font-style:normal;font-size:12px;font-weight:750;margin-top:6px;color:#8e5ac1}.course-world.open em{color:#8344d4}.course-world.complete em{color:#389978}
.course-next-band{display:flex;align-items:center;flex-direction:column;gap:12px;width:100%;padding:28px 20px;border:2px dashed #d5b9ed;border-radius:26px;background:#eee0fb;color:#795098}.course-next-band>span{display:flex;align-items:center;gap:9px;font-size:26px;font-weight:900}.course-next-band strong{font-size:20px}.course-next-band small{font-size:13px;color:#9777aa}
.course-band-links{display:flex;flex-direction:column;gap:10px;margin-top:16px}.course-band-links button{display:flex;align-items:center;gap:9px;min-height:59px;padding:10px 9px;border:0;border-radius:15px;background:transparent;color:#8c70a6;text-align:left}.course-band-links button.selected{background:#ece0ff;color:#7646b7}.course-band-links strong{flex:none;display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#eaddf8;font-size:15px}.course-band-links span{font-size:12px;line-height:1.4}.course-band-links svg{flex:none;margin-left:auto;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.world-preview{max-width:480px;text-align:center;margin:18px auto;padding:16px 0 30px}.world-preview-island{display:block;width:min(100%,300px);height:300px;object-fit:contain;margin:12px auto}.world-preview h1{margin-top:0}.world-preview-lock{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;border-radius:17px;background:#eadcfa;color:#80559f;margin:20px 0}.world-preview-lock strong{font-size:15px;line-height:1.5}.world-preview p{font-size:14px;line-height:1.7;color:#8c729d}.world-preview .world-preview-count{font-size:12px;margin:22px auto;max-width:330px}.world-preview .secondary-button{display:flex;align-items:center;justify-content:center;gap:10px;background:#fffaff;color:#8053a0;border-color:#dac4ed;min-height:52px}
body[data-menu-page="lesson"] .home-island-button{height:145px;margin-top:8px}body[data-menu-page="lesson"] .home-island-button span{top:0;bottom:auto;left:0;right:auto;min-height:44px;display:flex;align-items:center;padding:9px 12px}
@media(max-width:640px){.course-heading h1{font-size:32px}.course-bands{gap:6px;margin-bottom:20px}.course-bands button{min-height:46px;font-size:14px;border-radius:13px;gap:4px}.course-bands svg{width:12px;height:12px}.course-level-banner{padding:18px 15px;gap:13px;border-radius:22px}.course-level-banner>span{width:48px;height:56px;font-size:23px;border-radius:16px}.course-level-banner h2{font-size:18px}.course-level-banner>svg{width:23px;height:23px}.course-level-banner p{font-size:12px}.course-world-path{gap:27px;padding:30px 0}.course-world{width:96%;min-height:154px;padding:10px 13px 10px 1px;gap:5px;border-radius:25px}.course-world-art{width:133px;height:133px;padding:5px}.course-world-copy{gap:6px}.course-world-copy strong{font-size:19px}.course-world-copy>span{font-size:12px}.course-world-copy small{font-size:9px;letter-spacing:.6px}.course-world-copy em{font-size:12px;margin-top:3px}.course-world-status{width:31px;height:31px;right:7px;bottom:5px;border-radius:12px}.course-world-status svg{width:17px;height:17px}.course-next-band strong{font-size:19px}.world-preview-island{height:270px}.world-preview{margin-top:8px}}
@media(max-width:359px){.course-world-art{width:112px;height:128px}.course-world-copy strong{font-size:17px}.course-level-banner>svg{display:none}.course-world-copy>span{font-size:11px}.course-bands button{gap:3px}}

.course-loading{padding:10px 15px;margin:0 0 18px;border-radius:13px;background:#eadcff;color:#8054a4;font-size:13px;text-align:center}

.course-endless-card{display:flex;align-items:center;gap:15px;width:100%;padding:20px 20px 20px 8px;margin:10px 0 0;border:2px solid #bea0ed;border-radius:29px;background:linear-gradient(130deg,#2e2054,#583784);color:#f3eaff;text-align:left;box-shadow:0 6px #cab0e8}.course-endless-card>img{width:42%;max-width:215px;aspect-ratio:1;object-fit:contain}.course-endless-card>span{display:flex;flex-direction:column;gap:9px;min-width:0}.course-endless-card small{color:#d0afea;font-size:10px;letter-spacing:1px;font-weight:800}.course-endless-card strong{font-size:24px;line-height:1.2}.course-endless-card b{color:#cea6ff}.course-endless-card span>span{font-size:13px;line-height:1.5;color:#e0cbee}.course-endless-card em{display:flex;align-items:center;gap:7px;font-size:12px;font-style:normal;line-height:1.6;color:#d8b8f4}.course-endless-card em svg{width:17px;height:17px;flex:none}.endless-preview{max-width:510px;margin:15px auto 30px;text-align:center}.endless-preview>img{width:100%;max-width:310px;aspect-ratio:1;object-fit:contain}.endless-preview>p{font-size:15px;line-height:1.8;color:#8d709f}.endless-rules{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:22px 0}.endless-rules span{background:#ebe0fb;border-radius:12px;color:#8a5db4;font-size:12px;font-weight:700;padding:11px}.endless-record{display:flex;flex-direction:column;gap:9px;padding:20px;margin:22px 0;border:2px solid #ddc8f4;border-radius:20px;background:#f0e3ff;color:#8857af}.endless-record strong{font-size:30px;color:#653493}.endless-record small{font-size:12px;line-height:1.6}.endless-preview .endless-lock-note{font-size:13px}.endless-preview button:disabled{cursor:default;opacity:.55}.space-intro-art{display:block;width:170px;height:170px;object-fit:contain;margin:0 auto}.space-mode .flight-progress .progress-track{display:none}.space-mode .vignette{background:linear-gradient(#0b082933,transparent 25%,transparent 80%,#0b082933)}.space-mode .target button{background:#322154ed;border-color:#bd9ceb}.space-mode .world-title>span{color:#d2b1ff}.space-mode .game-panel{border:2px solid #d8bcf3}.space-mode .world-title>strong{color:#fff}
@media(max-width:640px){.course-endless-card{padding:15px 14px 15px 2px;gap:5px}.course-endless-card strong{font-size:19px}.course-endless-card span>span{font-size:12px}.course-endless-card small{font-size:9px}.course-endless-card em{font-size:11px}.endless-preview>p{font-size:14px}.space-intro-art{width:140px;height:140px}}
