.lp-top{--ink-bg: var(--bg-soft);--on-ink: var(--text);--on-ink-muted: var(--muted);--on-ink-line: var(--line);--accent-on-ink: var(--accent-dark);background:var(--ink-bg);color:var(--on-ink);padding-block:clamp(38px,5vw,66px)}.lp-top h1{color:var(--on-ink);margin:16px 0 18px;font-size:clamp(2.2rem,4.4vw,3.4rem)}.lp-top .hp-label{color:var(--on-ink-muted)}.lp-head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:end}.lp-lede{color:var(--on-ink-muted);font-size:clamp(1rem,1.4vw,1.1rem);max-width:52ch;margin:0}.lp-tier{border:1px solid var(--on-ink-line);padding:20px 22px}.lp-tier dt{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-muted)}.lp-tier dd{margin:6px 0 0;font-size:.95rem;line-height:1.55}.lp-tier dd+dt{margin-top:16px;padding-top:16px;border-top:1px solid var(--on-ink-line)}.lp-tier a{color:var(--accent-on-ink);text-decoration:underline;text-underline-offset:3px}.lp-map{padding-block:clamp(40px,6vw,72px)}.lm-level{margin-bottom:clamp(38px,5vw,62px)}.lm-level:last-child{margin-bottom:0}.lm-level-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px 20px;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:20px}.lm-level-head h2{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15}.lm-level-head .lm-target-badge{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark);white-space:nowrap}.lm-level-head p{grid-column:1 / -1;margin:0;color:var(--muted);font-size:.92rem;max-width:70ch}.lm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(224px,1fr));gap:14px}.lm-card{position:relative;display:flex;flex-direction:column;gap:8px;min-height:132px;padding:16px 18px 18px;text-align:left;font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--line);cursor:pointer;transition:border-color .14s ease,transform .12s ease,background-color .14s ease}.lm-card:hover{border-top-color:var(--accent);transform:translateY(-2px)}.lm-card:active{transform:translateY(0)}.lm-card .lm-lang{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark)}.lm-card .lm-kind{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.lm-card h3{margin:0;font-family:var(--font-display);font-size:1.12rem;font-weight:600;line-height:1.24}.lm-card h3[lang=hi]{font-weight:500}.lm-card .lm-sub{margin-top:auto;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em;color:var(--muted)}.lm-card .lm-stars{font-size:1.2rem;letter-spacing:3px;color:var(--accent)}.lm-card .lm-stars .off{color:var(--line);opacity:1}.lm-card:after{position:absolute;top:14px;right:16px;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.lm-card.paid{border-top-color:var(--accent-soft)}.lm-card.paid:after{content:"Pro";color:#fff;background:var(--accent);padding:3px 9px;border-radius:999px;font-weight:700}.lm-card.paid:hover{border-top-color:var(--accent);background:var(--accent-soft)}.lm-card.locked:not(.paid):after{content:"→";color:var(--muted);font-size:.8rem}.lm-card.current{border-color:var(--accent);border-top-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.lm-card.current:hover{background:var(--accent-soft)}.lm-card.current .lm-kind{color:var(--accent-dark);font-weight:700}.lm-card.locked:not(.paid){background:transparent}.lm-player{display:none}.lm-player.active{--ink-bg: var(--bg);--on-ink: var(--text);--on-ink-muted: var(--muted);--on-ink-line: var(--line);--accent-on-ink: var(--accent-dark);display:block;position:fixed;inset:0;z-index:60;overflow-y:auto;background:var(--ink-bg);color:var(--on-ink);padding:clamp(18px,3vw,34px) 0 clamp(40px,6vw,70px)}.lm-player-in{width:min(920px,calc(100% - 40px));margin-inline:auto}.lm-player-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px}.lm-back{font:inherit;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--on-ink-muted);background:transparent;border:1px solid var(--on-ink-line);padding:9px 14px;cursor:pointer;transition:color .14s ease,border-color .14s ease}.lm-back:hover{color:var(--on-ink);border-color:var(--on-ink-muted)}.lm-player-title{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.1rem,2vw,1.5rem);color:var(--on-ink);text-align:center}.lm-stats{display:flex;gap:22px}.lm-stat{text-align:right}.lm-stat b{display:block;font-family:var(--font-mono);font-size:1.15rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--on-ink)}.lm-stat span{display:block;font-family:var(--font-mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-muted)}.lm-progress-track{height:2px;margin:20px 0 26px;background:var(--on-ink-line)}.lm-progress-track span{display:block;height:100%;width:0;background:var(--accent-on-ink);transition:width .12s linear}.lm-target{max-height:34vh;overflow-y:auto;padding:26px 28px;border:1px solid var(--on-ink-line);font-size:clamp(1.1rem,2vw,1.45rem);line-height:2.1;letter-spacing:.01em;word-break:break-word}.lm-target{font-family:var(--font-mono)}.lm-target.devanagari{font-family:var(--font-body);line-height:2.4}.lm-target .ch{display:inline-block;line-height:1.5;color:var(--on-ink-muted)}.lm-target .ch.ok{color:var(--on-ink)}.lm-target .ch.bad{color:var(--danger);background:color-mix(in srgb,var(--danger) 18%,transparent)}.lm-target .ch.cur{background:var(--accent-on-ink);color:var(--ink-bg)}.lm-target .ch.space{width:1ch}.lm-target .ch.space.bad{background:color-mix(in srgb,var(--danger) 26%,transparent)}.lm-input{display:block;width:100%;margin-top:18px;padding:16px 18px;font:inherit;font-size:1.02rem;color:var(--on-ink);background:transparent;border:1px dashed var(--on-ink-line);transition:border-color .14s ease,background-color .14s ease}.lm-input::placeholder{color:var(--on-ink-muted)}.lm-input:hover{border-color:var(--on-ink-muted)}.lm-input:focus{outline:none;border-style:solid;border-color:var(--accent-on-ink);background:color-mix(in srgb,var(--on-ink) 5%,transparent)}.lm-input:disabled{opacity:.5}.lm-input{font-family:var(--font-mono)}.lm-input.devanagari{font-family:var(--font-body);font-size:1.15rem}.lm-kb{margin-top:26px;display:grid;gap:6px;justify-content:center}.lm-kb-row{display:flex;gap:6px;justify-content:center}.lm-key{display:grid;place-items:center;gap:1px;width:42px;height:44px;border:1px solid var(--on-ink-line);color:var(--on-ink-muted);font-family:var(--font-mono);transition:background-color .1s ease,color .1s ease,border-color .1s ease}.lm-key.wide{width:232px}.lm-key-main{font-size:.72rem}.lm-key-dev{font-size:.68rem;opacity:.75}.lm-key.next{background:var(--accent-on-ink);border-color:var(--accent-on-ink);color:var(--ink-bg)}.lm-key.press{background:color-mix(in srgb,var(--on-ink) 20%,transparent);color:var(--on-ink)}.lm-kb-hint{margin:14px 0 0;text-align:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;color:var(--on-ink-muted)}.lm-kb-hint b{color:var(--accent-on-ink)}@media (max-width: 720px){.lm-kb{display:none}.lm-player-bar{grid-template-columns:auto minmax(0,1fr)}.lm-stats{grid-column:1 / -1;justify-content:space-between}.lm-stat{text-align:left}}.lm-complete{display:none;position:fixed;inset:0;z-index:70;place-content:center;justify-items:center;text-align:center;padding:30px;background:color-mix(in srgb,var(--ink-bg) 86%,transparent);backdrop-filter:blur(3px)}.lm-complete.show{display:grid}.lm-complete>*{max-width:420px}.lm-complete h2{margin:14px 0 6px;font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.2rem);color:var(--on-ink)}.lm-big-stars{font-size:2rem;letter-spacing:8px;color:var(--accent-on-ink)}.lm-big-stars .off{color:var(--on-ink-line)}.lm-c-stats{display:flex;gap:40px;justify-content:center;margin:22px 0 26px}.lm-c-stats b{display:block;font-family:var(--font-mono);font-size:1.7rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--on-ink)}.lm-c-stats span{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-muted)}.lm-c-actions{display:flex;flex-direction:column;gap:10px;width:min(320px,100%)}.lm-c-actions button{width:100%}.lm-c-actions .primary-button,.lm-c-actions .secondary-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;font:inherit;font-size:.95rem;font-weight:600;line-height:1;border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.lm-c-actions .primary-button{background:var(--accent);border-color:var(--accent);color:#fff}.lm-c-actions .primary-button:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.lm-c-actions .secondary-button{background:transparent;border-color:var(--on-ink-line);color:var(--on-ink)}.lm-c-actions .secondary-button:hover{border-color:var(--on-ink-muted)}.lp-prose{max-width:70ch}.lp-prose h3{margin:30px 0 10px;font-family:var(--font-display);font-weight:600;font-size:1.3rem}.lp-prose ul{margin:0 0 1em;padding-left:20px}.lp-prose li{margin-bottom:.5em;color:var(--ink-soft);font-size:.96rem}.lp-prose p{color:var(--ink-soft);font-size:.98rem}@media (max-width: 900px){.lp-head{grid-template-columns:1fr;align-items:start}}
