.learn-map{max-width:1040px;margin:46px auto 30px}.learn-map-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap}.learn-map-head h1{font-size:58px;line-height:1.05;letter-spacing:-2.5px;font-weight:600;margin:14px 0 12px;color:#333f34}.learn-map-head h1 em{font-family:Georgia,serif;font-weight:400;color:var(--purple)}.learn-map-head p{color:var(--muted);max-width:520px}.learn-level{display:flex;align-items:center;gap:14px;background:#fffdf7;border:1px solid var(--line);border-radius:16px;padding:12px 18px;min-width:270px}.learn-level-ring{--p:0;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--purple) calc(var(--p)*1turn),#ebe7f1 0);flex:none}.learn-level-ring b{width:42px;height:42px;border-radius:50%;background:#fffdf7;display:grid;place-items:center;font-size:19px}.learn-level small{color:var(--muted);font-size:12px}.learn-xp-bar{height:8px;border-radius:5px;background:#ebe7f1;overflow:hidden;margin:5px 0 3px;width:170px}.learn-xp-bar span{display:block;height:100%;background:linear-gradient(90deg,#9c7bd1,var(--purple));border-radius:5px;transition:width .8s cubic-bezier(.2,.9,.3,1.2)}.maker-shell .learn-continue{margin:28px 0 8px;display:flex!important;align-items:center;gap:14px;width:100%;justify-content:flex-start!important;background:linear-gradient(100deg,#3e7356,#56946f)!important;color:#fff!important;padding:18px 26px!important;border-radius:16px!important;font-size:18px;box-shadow:0 8px 22px #3e735633;transition:transform .15s}.maker-shell .learn-continue:hover{transform:translateY(-2px)}.learn-continue span{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;font-weight:700;opacity:.8}.learn-continue svg{margin-left:auto}.learn-path{list-style:none;padding:20px 0 0;margin:0;position:relative}.learn-path:before{content:"";position:absolute;left:50%;top:40px;bottom:40px;border-left:4px dashed #d9d5c6;transform:translateX(-2px)}.learn-island{position:relative;width:calc(50% - 34px);margin:0 0 26px}.learn-island.is-right{margin-left:calc(50% + 34px)}.learn-island:after{content:"";position:absolute;top:44px;width:34px;border-top:4px dashed #d9d5c6}.learn-island.is-left:after{right:-34px}.learn-island.is-right:after{left:-34px}.maker-shell .learn-island>button{display:flex!important;align-items:center;gap:18px;width:100%;text-align:left;justify-content:flex-start!important;padding:18px 20px!important;border-radius:22px!important;background:#fffdf7!important;border:2px solid var(--line)!important;transition:transform .2s,box-shadow .2s,border-color .2s}.maker-shell .learn-island>button:hover:not(:disabled){transform:translateY(-4px) rotate(-.4deg);box-shadow:0 12px 26px #454b3918;border-color:var(--lesson)!important}.learn-island.is-current>button{border-color:var(--lesson)!important;box-shadow:0 0 0 6px color-mix(in srgb,var(--lesson) 18%,transparent)}.learn-island.is-current .learn-island-number{animation:learn-bob 2.4s ease-in-out infinite}.learn-island-number{flex:none;width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:30px;font-weight:800;color:#fff;background:var(--lesson);box-shadow:inset 0 -5px 0 #0002}.learn-island.is-locked .learn-island-number{background:#cfcbbd}.learn-island.is-locked>button{opacity:.75}.learn-island-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.learn-island-copy>b{font-size:18px}.learn-island-copy>span:nth-child(2){color:var(--muted);font-size:13px;line-height:1.4}.learn-island-pips{display:flex;align-items:center;gap:5px;margin-top:6px}.learn-island-pips i{width:18px;height:6px;border-radius:4px;background:#e5e2d6}.learn-island-pips i.on{background:var(--lesson)}.learn-island-pips i.next{background:color-mix(in srgb,var(--lesson) 35%,#e5e2d6);animation:learn-glow 1.6s ease-in-out infinite}.learn-island-pips svg{color:#cfcbbd}.learn-island-pips svg.on{color:#e0a82e}.learn-island-stars{display:flex;gap:2px;margin-top:2px}.learn-island-stars svg{color:#ddd8c8}.learn-island-stars svg.on{color:#f0b429;fill:#f0b429}.learn-island-badge{font-size:34px;flex:none}.learn-badge-empty{filter:grayscale(1);opacity:.28}.learn-mystery{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:24px!important;font-weight:800;color:#b9b4a4;border:2px dashed #d3cebd}.learn-badge-shelf figure.is-mystery span{filter:none;opacity:1;color:#b9b4a4;font-weight:800;border:2px dashed #d3cebd;background:none}.learn-objectives{list-style:none;margin:8px 8px 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--muted)}.learn-objectives li{display:flex;align-items:center;gap:4px}.learn-badge-shelf{margin-top:18px;padding:20px 24px;border:1px solid var(--line);border-radius:18px;background:#fffdf7}.learn-badge-shelf h2{font-size:13px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted)}.learn-badge-shelf>div{display:flex;gap:26px;margin-top:10px;flex-wrap:wrap}.learn-badge-shelf figure{margin:0;text-align:center;width:110px}.learn-badge-shelf figure span{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border-radius:50%;background:#efece2;font-size:32px;filter:grayscale(1);opacity:.4}.learn-badge-shelf figure.is-earned span{filter:none;opacity:1;background:radial-gradient(circle at 35% 30%,#fff7d6,#f3cf6b);box-shadow:0 6px 16px #e0a82e55}.learn-badge-shelf figcaption{font-size:12px;margin-top:6px;color:var(--muted)}@media(max-width:700px){.learn-map-head h1{font-size:40px}.learn-island:after,.learn-path:before{display:none}.learn-island,.learn-island.is-right{width:100%;margin-left:0}}.maker-is-workspace .maker-workspace.is-learning{grid-template-columns:340px minmax(0,1fr)}@media(max-width:1100px){.maker-is-workspace .maker-workspace.is-learning{grid-template-columns:minmax(0,1fr)}}.learn-guide{--lesson:#796197;padding:14px 18px 20px 16px;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 150px);overflow:auto;position:sticky;top:10px}.learn-guide-top{display:flex;align-items:center;gap:8px}.learn-lesson-chip{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--lesson)}.maker-shell .learn-exit{padding:5px!important;border:1px solid var(--line)!important;border-radius:50%!important}.learn-pips{list-style:none;padding:0;margin:0;gap:4px;flex-wrap:wrap}.learn-pips,.learn-pips li{display:flex;align-items:center}.learn-pips li+li:before{content:"";width:7px;height:3px;border-radius:2px;background:#e3e2d7;margin-right:4px}.maker-shell .learn-pips button{width:28px;height:28px;padding:0!important;border-radius:50%!important;border:2px solid #d8d5c8!important;font-size:12px;font-weight:800;color:var(--muted);background:#fffdf7}.maker-shell .learn-pips button.is-done{background:var(--lesson)!important;border-color:var(--lesson)!important;color:#fff}.maker-shell .learn-pips button.is-current{border-color:var(--lesson)!important;color:var(--lesson);box-shadow:0 0 0 4px color-mix(in srgb,var(--lesson) 20%,transparent);transform:scale(1.12)}.maker-shell .learn-pips button.is-game{border-radius:9px!important}.learn-step{display:flex;flex-direction:column;gap:10px;animation:learn-slide .35s ease-out}.learn-step-count{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}.learn-step h3{font-size:22px;line-height:1.2;letter-spacing:-.5px;margin:0}.learn-goal{font-size:14px;font-weight:600;background:color-mix(in srgb,var(--lesson) 10%,#fffdf7);border-left:4px solid var(--lesson);padding:8px 12px;border-radius:0 10px 10px 0;line-height:1.45}.learn-figure{margin:0;background:#fffdf7;border:1px solid var(--line);border-radius:14px;padding:8px}.learn-figure figcaption{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--muted);padding:6px 4px 0;line-height:1.45}.learn-visual{width:100%;height:auto;display:block}.learn-concepts{display:flex;flex-wrap:wrap;gap:6px}.learn-concepts code{display:inline-flex;align-items:center;gap:4px;font-size:12px;background:#f1ecf8;color:#5d4a7a;padding:3px 8px;border-radius:20px;border:1px solid #e0d6ee}.learn-metaphor{font-size:13px;color:#5f644f;background:#fbf5e3;border-radius:10px;padding:8px 11px;line-height:1.5}.learn-checks{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:6px}.learn-checks li{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.45;padding:7px 9px;border-radius:9px;background:#f6f4ec;transition:background .3s}.learn-checks li.ok{background:#e4f2e8;color:#2d5a41}.learn-checks li.no{background:#fbe9e6;color:#8a3a2e}.learn-checks small{display:block;font-size:12px;opacity:.85;margin-top:2px}.learn-check-icon{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}.learn-checks li.ok .learn-check-icon{background:#3e7356;color:#fff;animation:learn-pop .4s cubic-bezier(.3,1.6,.5,1)}.learn-checks li.no .learn-check-icon{background:#c9523f;color:#fff;animation:learn-shake .4s}.learn-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.maker-shell .learn-primary{background:var(--lesson)!important;color:#fff!important;padding:10px 18px!important;border-radius:12px!important;font-weight:700;box-shadow:inset 0 -3px 0 #0002;transition:transform .15s}.maker-shell .learn-primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}.maker-shell .learn-play{font-size:17px;padding:14px 22px!important;animation:learn-glow 2s ease-in-out infinite}.learn-rules{margin:0;padding-left:18px;font-size:13px;line-height:1.6}.learn-best,.learn-tip{font-size:12px;color:var(--muted)}.learn-hints{border-top:1px dashed var(--line);padding-top:10px;gap:8px}.learn-hints,.learn-hints ol{display:flex;flex-direction:column}.learn-hints ol{margin:0;padding-left:20px;font-size:13px;line-height:1.5;gap:6px}.learn-hints li{animation:learn-slide .3s ease-out}.maker-shell .learn-nudge{align-self:flex-start;color:#9a6a12!important;background:#fdf3d8!important;border-radius:20px!important;font-size:13px;padding:6px 12px!important}.learn-nudge.is-pulsing{animation:learn-glow-gold 1.4s ease-in-out infinite}.learn-spin-icon{animation:learn-rotate 1s linear infinite}.learn-celebrate{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:#2a2d3a33;animation:learn-fade .25s;cursor:pointer}.learn-celebrate canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.learn-celebrate-card{position:relative;background:#fffdf7;border-radius:24px;padding:28px 36px;text-align:center;max-width:420px;box-shadow:0 20px 60px #0003;animation:learn-pop .5s cubic-bezier(.3,1.6,.5,1)}.learn-celebrate-card h2{font-size:24px;margin:10px 0 6px}.learn-check-big{width:74px;height:74px;background:#3e7356;color:#fff;font-size:42px;place-items:center;animation:learn-pop .6s cubic-bezier(.3,1.8,.5,1) .1s both}.learn-badge-big,.learn-check-big{margin:0 auto;border-radius:50%;display:grid}.learn-badge-big{width:110px;height:110px;background:radial-gradient(circle at 35% 30%,#fff7d6,#f3cf6b);place-items:center;box-shadow:0 0 0 8px #f3cf6b55,0 10px 30px #e0a82e66;animation:learn-badge 1s cubic-bezier(.3,1.6,.5,1)}.learn-badge-big span{font-size:60px}.learn-xp-pop{font-size:30px;font-weight:800;color:var(--purple);animation:learn-rise .8s cubic-bezier(.3,1.6,.5,1) .2s both}.learn-levelup{font-size:15px;background:#f1ecf8;border-radius:10px;padding:6px 10px;margin-top:6px}.learn-joke{font-size:13px;color:var(--muted);font-style:italic;margin-top:10px}.learn-flow{animation:learn-dash .9s linear infinite}.learn-spin{animation:learn-rotate 2s linear infinite;transform-box:fill-box;transform-origin:center}.learn-pulse{animation:learn-pulse-kf 1s ease-in-out infinite}.learn-appear{opacity:0;animation:learn-appear-kf .3s forwards}.learn-pop{animation:learn-pop 3.2s cubic-bezier(.3,1.6,.5,1) infinite both}.learn-blink-a{animation:learn-blink-a 2s steps(1) infinite}.learn-blink-b{animation:learn-blink-b 2s steps(1) infinite}.learn-scroll{animation:learn-scroll-kf 1s linear infinite}.learn-bob{animation:learn-bob 2s ease-in-out infinite}@keyframes learn-dash{to{stroke-dashoffset:-32}}@keyframes learn-rotate{to{transform:rotate(1turn)}}@keyframes learn-pulse-kf{50%{opacity:.35}}@keyframes learn-appear-kf{to{opacity:1}}@keyframes learn-blink-a{0%{opacity:1}50%{opacity:.12}}@keyframes learn-blink-b{0%{opacity:.12}50%{opacity:1}}@keyframes learn-scroll-kf{to{transform:translateX(var(--learn-shift,-40px))}}@keyframes learn-pop{0%{transform:scale(.4);opacity:0}12%{transform:scale(1);opacity:1}}@keyframes learn-bob{50%{transform:translateY(-5px)}}@keyframes learn-slide{0%{opacity:0;transform:translateY(8px)}}@keyframes learn-fade{0%{opacity:0}}@keyframes learn-shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}@keyframes learn-rise{0%{opacity:0;transform:translateY(16px) scale(.7)}}@keyframes learn-badge{0%{transform:scale(0) rotate(-40deg)}70%{transform:scale(1.15) rotate(8deg)}to{transform:scale(1)}}@keyframes learn-glow{50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--lesson,#796197) 22%,transparent)}}@keyframes learn-glow-gold{50%{box-shadow:0 0 0 6px #f0b42955}}.game-backdrop{position:fixed;inset:0;z-index:70;background:#16151d;display:grid;place-items:center;padding:2vh 2vw;animation:learn-fade .25s}.game-frame{width:min(96vw,calc((96vh - 150px)*16/9));display:flex;flex-direction:column;gap:10px}.game-hud{display:flex;align-items:center;gap:14px;color:#fff;font-size:14px}.game-hud>b{font-size:18px}.game-goal{opacity:.75;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-clock{font-family:Courier New,monospace;font-weight:700;font-size:18px;color:#ffd23f;min-width:70px;text-align:right}.maker-shell .game-hud button{color:#fff;background:#ffffff18;border-radius:50%;padding:8px}.maker-shell .game-hud button:hover{background:#ffffff30!important}.game-canvas-wrap{position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;box-shadow:0 20px 60px #0008;background:#222}.game-canvas{width:100%;height:100%;display:block}.game-console{left:14px;bottom:14px;margin:0;background:#15141add;color:#8ef0a6;font:13px/1.45 Courier New,monospace;padding:8px 12px;border-radius:10px;max-width:46%;white-space:pre-wrap}.game-console,.game-count{position:absolute;pointer-events:none}.game-count{inset:0;display:grid;place-items:center;font-size:130px;font-weight:900;color:#fff;text-shadow:0 6px 0 #0005;animation:game-count .65s ease-out both}@keyframes game-count{0%{transform:scale(1.8);opacity:0}30%{transform:scale(1);opacity:1}to{opacity:0;transform:scale(.8)}}.game-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,86%);background:#fffdf7;border-radius:22px;padding:24px 28px;box-shadow:0 20px 50px #0006;animation:game-card .45s cubic-bezier(.3,1.5,.5,1) both;max-height:92%;overflow:auto}@keyframes game-card{0%{transform:translate(-50%,-40%) scale(.85);opacity:0}}.game-card h2{font-size:26px;letter-spacing:-.5px;margin:0 0 6px}.game-card-goal{font-weight:700;margin-bottom:8px!important}.game-card ol,.game-card ul{margin:8px 0;padding-left:20px;font-size:14px;line-height:1.6}.game-card details{font-size:14px;margin:6px 0}.game-card summary{cursor:pointer;font-weight:700;color:var(--purple)}.maker-shell .game-card button{border:1px solid var(--line);border-radius:12px;padding:10px 14px}.maker-shell .game-card .game-primary{background:var(--purple);color:#fff;border-color:transparent;font-weight:700;font-size:16px}.maker-shell .game-card .game-primary:hover{background:#6a5486!important}.game-intro .game-primary{margin-top:10px;width:100%}.game-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.game-result{text-align:center}.game-result .game-actions{justify-content:center}.game-result.is-loss h2{color:#9a3a2e}.game-hints{text-align:left;background:#fdf3d8;border-radius:12px;padding:10px 12px 10px 30px!important}.game-stars{display:flex;justify-content:center;gap:8px;margin-bottom:8px}.game-stars svg{color:#ddd8c8;animation:game-star .5s cubic-bezier(.3,1.8,.5,1) both}.game-stars svg.on{color:#f0b429;fill:#f0b429}@keyframes game-star{0%{transform:scale(0) rotate(-90deg)}}.game-pulse{animation:learn-glow-gold 1.3s ease-in-out infinite}.game-controls{display:flex;justify-content:center;gap:28px;align-items:center}.maker-shell .game-button{display:flex;flex-direction:column;gap:6px;color:#fff;font-weight:700;background:none!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.game-button span{width:66px;height:66px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#b99cf0,#7b5cc9);box-shadow:0 7px 0 #4f3a86,0 10px 18px #0006;transition:transform .06s,box-shadow .06s;display:grid;place-items:center}.game-button kbd{font:800 22px/1 Trebuchet MS,Arial,sans-serif;color:#fff;text-shadow:0 2px 0 #4f3a86}.game-button[aria-pressed=true] span{transform:translateY(6px);box-shadow:0 1px 0 #4f3a86,0 3px 8px #0006}.game-knob{display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff;font-weight:700;font-size:14px}.game-knob svg{cursor:grab;touch-action:none;color:#fff}.game-knob svg:focus-visible{outline:3px solid #ffd23f;border-radius:50%}@media(prefers-reduced-motion:reduce){.learn-blink-a,.learn-blink-b,.learn-bob,.learn-flow,.learn-island-pips i.next,.learn-island.is-current .learn-island-number,.learn-nudge.is-pulsing,.learn-play,.learn-pop,.learn-pulse,.learn-scroll,.learn-spin{animation:none!important}.learn-appear{opacity:1;animation:none}}.maker-shell .learn-options-title{max-width:1040px;margin:40px auto 0;font-size:13px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted)}.learn-options{max-width:1040px;margin:12px auto 10px;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:18px}.maker-shell .learn-option{display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:flex-start!important;gap:6px;text-align:left;padding:20px 22px!important;border-radius:18px!important;background:#fffdf7!important;border:1px solid var(--line)!important;transition:transform .2s,box-shadow .2s}.maker-shell button.learn-option:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 22px #454b3914}.learn-option b{font-size:18px}.learn-option>span:not(.learn-option-icon){color:var(--muted);font-size:13px;line-height:1.45}.learn-option-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:#f1ecf8;color:var(--purple);margin-bottom:4px}.learn-option-note{font-size:12px;color:var(--muted)}.learn-option-note a{color:var(--purple);text-decoration:underline}.learn-option-ai>div{display:flex;gap:8px;width:100%;margin-top:6px}.learn-option-ai input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:9px 12px;background:#fff}@media(max-width:900px){.learn-options{grid-template-columns:1fr}}.learn-home-error{max-width:1040px;margin:24px auto 0}.learn-island>button.learn-island-paid{opacity:.88;cursor:pointer}.learn-island-paid .learn-island-unlock{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:var(--purple)}.learn-island-paid .learn-island-number{background:#cfcbbd}.learn-map-art{display:block;width:100%;height:auto;max-height:230px;-o-object-fit:contain;object-fit:contain;margin:22px 0 8px;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}@media (max-width:600px){.learn-map-art{display:none}}