.market-main .learning-route.learning-route--compact{max-width:760px;width:100%;margin:0 auto 40px;isolation:isolate}.learning-route--compact .learning-route__heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0 18px;margin:0 0 20px;border-bottom:1px solid var(--border)}.learning-route--compact .learning-route__heading :is(h1,h2){font-size:25px;line-height:1.2;font-weight:650;letter-spacing:-.025em;margin:0 0 6px}.learning-route--compact .learning-route__heading p{font-size:13px;margin:0;color:var(--muted)}.learning-route__balances{display:flex;align-items:center;flex-shrink:0}.learning-route__map-frame{position:relative;isolation:isolate;min-width:0}.path-road{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1;overflow:visible}.path-road path{fill:none;stroke:var(--border);stroke-width:3;stroke-dasharray:3 9;stroke-linecap:round}.market-main .learning-route--snake .learning-route__map{position:relative;width:100%;margin:0;padding:8px 0 16px;list-style:none;border:0;border-radius:0;background:none}.learning-route--snake .learning-route__stop{position:relative;min-height:128px;padding:0 0 12px;min-width:0}.learning-route--snake .learning-route__stop:before{display:none}.learning-route--snake .learning-route__node{position:relative;left:var(--path-x);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;width:180px;max-width:44%;padding:0;min-height:0;text-align:center;border:0;background:none}.learning-route--snake .learning-route__marker{display:grid;place-items:center;flex:none;transform:none}.learning-route__copy{min-width:0;width:100%}.learning-route__state{display:block;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-weight:650}.learning-route__node:not(.is-current) .learning-route__state{display:none}.learning-route__node.is-current .learning-route__state{color:var(--accent-strong)}.learning-route__copy h3{font-size:16px;line-height:1.35;font-weight:650;margin:0;background:var(--background);border-radius:7px;padding:2px 4px;overflow-wrap:anywhere}.learning-route__copy p{font-size:11px;line-height:1.4;color:var(--muted);margin:5px 0 0;background:var(--background)}.learning-route--snake .learning-route__continue{display:inline-flex;align-items:center;min-height:44px;padding:6px 10px;font-size:13px;font-weight:650;color:var(--accent-strong);border-radius:8px;background:var(--background);text-decoration:none}.learning-route__node.is-current .learning-route__continue{padding:8px 14px;margin-top:6px;background:var(--primary);color:var(--on-primary,#fff)}.learning-path-return:focus-visible,.learning-route--snake a:focus-visible,.learning-route__reward button:focus-visible{outline:3px solid var(--accent-gold);outline-offset:4px}.learning-route--snake .learning-route__reward-stop{position:relative;min-height:94px;list-style:none}.learning-route--snake .learning-route__reward{position:relative;left:var(--path-x);transform:translateX(-50%);top:0;display:grid;justify-items:center;gap:5px;width:160px;max-width:70%;z-index:1}.learning-route__reward button{width:68px;height:62px;border-radius:12px;opacity:.6;filter:saturate(.4);cursor:pointer;background:var(--background)}.learning-route__reward.is-claimed button,.learning-route__reward.is-ready button{opacity:1;filter:none}.learning-route__reward.is-ready button{animation:reward-ready .3s ease-out both}.learning-route__reward small{font-size:11px;color:var(--muted);line-height:1.4;text-align:center;background:var(--background);padding:2px 6px;border-radius:5px}.learning-route__reward.is-ready small{color:var(--accent-strong);font-weight:650}.learning-route__reward button:disabled{cursor:default}.learning-route__reward button[aria-busy=true]{opacity:.6}.learning-route__notice{font-size:12px;line-height:1.5;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);min-width:0}.learning-route__settings{margin:24px 0;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);font-size:13px;line-height:1.6}.learning-route__settings summary{cursor:pointer;min-height:30px}.learning-route__settings label{display:flex;gap:8px;margin:10px 0;align-items:center}.learning-route__settings select{background:var(--surface);color:var(--foreground);border:1px solid var(--border);padding:8px}.learning-route__settings input{width:18px;height:18px}.learning-route__settings legend{margin-top:10px}@keyframes reward-ready{0%{opacity:.4;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.knowledge-chest{width:100%;height:100%;color:var(--foreground);overflow:visible}.knowledge-chest__lid{transform-origin:40px 32px;transition:transform .35s}.knowledge-chest.is-open .knowledge-chest__lid{transform:translateY(-10px) rotate(-12deg)}.learning-route__reward-message{position:relative;width:180px;max-width:150px;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--foreground);box-shadow:0 4px 14px #0001;font-size:11px;line-height:1.5;z-index:3;pointer-events:none}.learning-route__reward-message.is-error{border-color:var(--primary)}.learning-route__empty{color:var(--muted);padding:24px 0}.learning-path-return{display:inline-flex;align-items:center;min-height:36px;margin-top:5px;color:var(--accent-strong);font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:4px}@media(max-width:600px){.learning-route--compact .learning-route__heading{padding:3px 0 15px;align-items:flex-start}.learning-route--compact .learning-route__heading :is(h1,h2){font-size:21px}.learning-route--compact .learning-route__heading p{font-size:12px}.learning-route--snake .learning-route__node{width:170px;max-width:48%;gap:8px}.learning-route__copy h3{font-size:14px}.learning-route__state{font-size:9px}.learning-route--snake .learning-route__stop{min-height:128px}.learning-route--snake .learning-route__reward{width:150px;max-width:70%}.learning-route__reward button{width:58px;height:54px}.learning-route__reward-message{max-width:100px}.learning-route__reward small{font-size:9px}}@media(prefers-reduced-motion:reduce){.knowledge-chest__lid{transition:none}.learning-route__reward.is-ready button{animation:none}}.learning-route__stop[data-path-theme="1"]{--tile-top:#537b78;--tile-bottom:#304d50}.learning-route__stop[data-path-theme="2"]{--tile-top:#7d759c;--tile-bottom:#4b4266}.learning-route__stop[data-path-theme="3"]{--tile-top:#aa8750;--tile-bottom:#665035}.learning-route__scenery{position:absolute;top:0;left:clamp(130px,var(--scene-x),calc(100% - 130px));transform:translateX(-50%);width:260px;height:240px;pointer-events:none;user-select:none;z-index:-1}.learning-route__scenery img{width:100%;height:100%;object-fit:contain}.learning-route__lock{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:4px;color:var(--muted);font-size:10px}.learning-route__practice-stop{position:relative;min-height:122px;list-style:none;padding:0 0 12px}.learning-route__practice-node{--tile-top:#547d76;--tile-bottom:#304e49}@media(max-width:600px){.learning-route__scenery{width:140px;height:155px;top:12px;left:clamp(54px,var(--scene-x),calc(100% - 54px))}.learning-route--snake .learning-route__node{max-width:42%;width:150px}.learning-route__practice-stop{min-height:118px}}.learning-route__reward button{position:relative;width:82px;height:76px;border:0;background:transparent;filter:none;opacity:.8}.learning-route__reward button img{width:100%;height:100%;object-fit:contain}.learning-route__chest-check{position:absolute;right:-4px;bottom:0;width:22px;height:22px;border-radius:50%;background:#4d735e;color:white;font-weight:700}.learning-route__practice>img{flex:none;width:34px;height:38px;object-fit:contain}.learning-route--snake .learning-route__state{display:none}.learning-route__copy h3{font-size:14px}.learning-route__node.is-current .learning-route__continue{margin-top:3px}.learning-route--snake .learning-route__reward{z-index:4}.learning-route__chest-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:220px;max-width:calc(100vw - 32px);margin:0;padding:12px 14px;border:1px solid var(--accent-gold);border-radius:14px;background:var(--surface);color:var(--foreground);font-size:12px;line-height:1.5;box-shadow:var(--shadow);z-index:10;pointer-events:none}.learning-route__chest-tooltip:after{content:"";position:absolute;left:calc(50% - 5px);bottom:-6px;width:10px;height:10px;transform:rotate(45deg);background:var(--surface);border-right:1px solid var(--accent-gold);border-bottom:1px solid var(--accent-gold)}.learning-route__progress-label{display:block;margin-top:4px;font-size:11px;color:var(--accent-strong);line-height:1.4}.learning-route__marker>:is(a,div,span){display:grid;place-items:center;line-height:1}.market-main .learning-route.learning-route--compact{max-width:1100px}.learning-route .learning-overview__trail{padding-top:4px}@media(min-width:901px){.learning-route--snake .learning-route__stop{min-height:132px}}@media(min-width:901px) and (max-width:1100px){.learning-route__scenery{width:220px;height:210px;left:clamp(110px,var(--scene-x),calc(100% - 110px))}}.learning-route--snake .learning-route__stop:has(.learning-route__node.is-current){padding-top:42px;min-height:178px}.learning-route__node .learning-route__start{position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 15px;border-radius:10px;background:var(--primary);color:var(--on-primary,#fff);font-size:12px;font-weight:700;white-space:nowrap;text-decoration:none;box-shadow:0 3px 0 color-mix(in srgb,var(--primary) 65%,#000)}.learning-route__start:after{content:"";position:absolute;top:100%;left:calc(50% - 5px);border:5px solid transparent;border-top:5px solid var(--primary)}.learning-route__marker>span[aria-disabled]{position:relative;cursor:default}.learning-route__marker .learning-route__lock-badge{position:absolute;right:0;bottom:2px;width:25px;height:25px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:50%;color:var(--muted)}.learning-route__node.is-locked .learning-route__copy h3{color:var(--muted)}.learning-route__node.is-locked .learning-route__lock{font-size:11px;line-height:1.4}