.mp-page{position:relative;max-width:1480px;margin:0 auto;padding:56px 40px}.mp-top{display:grid;grid-template-columns:1fr;margin-bottom:22px}.mp-top h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4.6vw,64px);letter-spacing:-.005em;word-spacing:.08em;line-height:1.02}.mp-top h1 em{font-style:italic}.mp-top .sub{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--ink-soft);margin-top:8px}.mp-chal{display:grid;grid-template-columns:auto 1fr auto auto;gap:18px;align-items:center;padding:14px 18px;border:1px solid var(--ink);border-radius:10px;background:var(--paper);margin-bottom:18px}.mp-chal .tag{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;background:var(--ink);color:var(--paper);padding:4px 8px;border-radius:3px}.mp-chal .prompt{font-family:var(--serif);font-size:20px;line-height:1.2}.mp-chal .prompt em{font-style:italic}.mp-chal .prompt code{font-family:var(--mono);font-size:16px;background:var(--paper-2);padding:2px 8px;border-radius:4px}.mp-chal .status{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.mp-chal .status .dot{width:8px;height:8px;border-radius:50%;background:var(--ink-soft);transition:background-color .25s ease,box-shadow .25s ease}.mp-chal.is-solved .status .dot{background:#1f8a5b;box-shadow:0 0 0 4px #1f8a5b26}.mp-chal.is-solved .status .lab{color:#1f8a5b}.mp-chal .actions{display:inline-flex;gap:8px;align-items:center}.mp-chal button{border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:7px 14px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all .15s ease}.mp-chal button:hover{background:var(--ink);color:var(--paper)}.mp-chal-pick-wrap{position:relative;display:inline-block}.mp-chal-pick{display:inline-flex!important;align-items:center;gap:10px;border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:7px 14px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;outline:none;max-width:260px}.mp-chal-pick:hover{background-color:var(--paper-2)!important;color:var(--ink)!important}.mp-chal-pick>#chalPickLabel{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-chal-pick .caret{font-size:9px;color:var(--ink-soft);transition:transform .2s ease,color .2s ease}.mp-chal-pick[aria-expanded=true]{background:var(--ink)!important;color:var(--paper)!important}.mp-chal-pick[aria-expanded=true] .caret{transform:rotate(180deg);color:var(--paper)}.mp-chal-pop{position:fixed;margin:0;padding:6px;list-style:none;min-width:320px;max-width:380px;max-height:360px;overflow-y:auto;background:var(--paper);border:1px solid var(--ink);border-radius:10px;box-shadow:0 18px 38px -12px #0e133059;z-index:90;scrollbar-width:thin;scrollbar-color:var(--rule) transparent}.mp-chal-pop::-webkit-scrollbar{width:6px}.mp-chal-pop::-webkit-scrollbar-thumb{background:var(--rule);border-radius:3px}.mp-chal-pop li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:9px 12px;border-radius:6px;cursor:pointer;outline:none;font-family:var(--mono);color:var(--ink);border-bottom:1px dashed var(--rule);transition:background-color .12s ease}.mp-chal-pop li:last-child{border-bottom:none}.mp-chal-pop li:hover,.mp-chal-pop li:focus-visible{background:var(--paper-2)}.mp-chal-pop li[aria-selected=true]{background:var(--ink);color:var(--paper);border-bottom-color:transparent}.mp-chal-pop li[aria-selected=true] .num,.mp-chal-pop li[aria-selected=true] .meta{color:#f2ede2b3}.mp-chal-pop li .num{font-size:9px;letter-spacing:.18em;color:var(--ink-soft);font-variant-numeric:tabular-nums}.mp-chal-pop li .lbl{font-size:13px;font-weight:500;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-chal-pop li .meta{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);padding:2px 8px;border:1px solid var(--rule);border-radius:3px}.mp-chal-pop li[aria-selected=true] .meta{border-color:#f2ede24d}.mp-bench{display:grid;grid-template-columns:1fr 360px;gap:24px;margin-bottom:24px;align-items:start}.mp-stage{border:1px solid var(--ink);border-radius:10px;background:var(--paper);overflow:hidden;display:flex;flex-direction:column}.mp-stage-head,.mp-stage-foot{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--rule);font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.mp-stage-foot{border-bottom:none;border-top:1px solid var(--rule)}.mp-stage-head .lab,.mp-stage-foot .lab{color:var(--ink-soft)}.mp-stage-head strong{font-family:var(--serif);font-style:italic;font-weight:400;font-size:18px;color:var(--ink);letter-spacing:-.005em;text-transform:none}.mp-stage-head .meta,.mp-stage-foot .hint{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--ink-soft);padding:3px 8px;border:1px solid var(--rule);border-radius:999px}.mp-stage .spacer{flex:1}.mp-stage-head .coords{font-family:var(--mono);font-size:11px;font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:.04em;text-transform:none}.mp-stage-foot .hover{font-family:var(--serif);font-style:italic;font-size:16px;color:var(--ink);text-transform:none;letter-spacing:-.005em;min-width:160px}.mp-map{width:100%;height:auto;background:var(--paper-2);display:block;cursor:crosshair}.mp-map.is-grabbable{cursor:grab}.mp-map.is-grabbing{cursor:grabbing}.mp-map .country{fill:var(--paper);stroke:var(--ink);stroke-width:.5;stroke-linejoin:round;transition:fill .12s ease,stroke-width .12s ease}.mp-map .country.is-hover{fill:#c8102e26;stroke-width:1}.mp-map .country.is-selected{fill:var(--ink);stroke:var(--ink)}.mp-map .country.is-target{fill:#1f8a5b2e;stroke:#1f8a5b;stroke-width:1.2}.mp-map .graticule{fill:none;stroke:var(--rule);stroke-width:.4;stroke-dasharray:2 3;pointer-events:none}.mp-map .sphere-outline{fill:none;stroke:var(--ink);stroke-width:1;pointer-events:none}.mp-map .feedback-pin{fill:var(--acid);stroke:var(--paper);stroke-width:1.5;pointer-events:none;animation:mp-pin-in .3s ease}@keyframes mp-pin-in{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.mp-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:16px}.mp-card{border:1px solid var(--ink);border-radius:10px;background:var(--paper);padding:16px}.mp-card h3{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px;display:flex;justify-content:space-between;align-items:baseline}.mp-card h3 .meta{color:var(--ink);font-weight:500;text-transform:none;letter-spacing:0}.mp-proj-pick{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.mp-proj-pick button{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:none;padding:8px 10px;border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:6px;cursor:pointer;transition:all .12s ease;text-align:left}.mp-proj-pick button:hover{background:var(--paper-2)}.mp-proj-pick button.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.mp-proj-pick button .badge{font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);padding:2px 7px;border:1px solid var(--rule);border-radius:999px}.mp-proj-pick button.is-on .badge{color:#f2ede2bf;border-color:#f2ede240}.mp-proj-info{font-family:var(--serif);font-size:14px;line-height:1.5;color:var(--ink);margin:12px 0;padding-top:12px;border-top:1px dashed var(--rule)}.mp-proj-info em{font-style:italic}.mp-proj-props{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-family:var(--mono);font-size:10px}.mp-proj-props .prop{display:flex;justify-content:space-between;padding:6px 8px;border:1px solid var(--rule);border-radius:5px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em}.mp-proj-props .prop b{color:var(--ink);font-weight:600}.mp-proj-props .prop.is-yes{background:#1f8a5b14;border-color:#1f8a5b4d}.mp-proj-props .prop.is-yes b{color:#1f8a5b}.mp-proj-props .prop.is-no{background:#c8102e0d;border-color:#c8102e33}.mp-proj-props .prop.is-no b{color:var(--acid)}.mp-country .name{font-family:var(--serif);font-style:italic;font-size:28px;line-height:1;color:var(--ink);margin-bottom:12px;letter-spacing:-.01em}.mp-country .row{display:grid;grid-template-columns:60px 1fr;gap:10px;font-family:var(--mono);font-size:11px;padding:8px 0;border-top:1px dashed var(--rule)}.mp-country .row:first-of-type{border-top:1px dashed var(--rule)}.mp-country .lab{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.mp-country .val{color:var(--ink);font-variant-numeric:tabular-nums}.mp-howto{font-family:var(--mono);font-size:11px;line-height:1.6;color:var(--ink-soft);margin:0}.mp-howto b{color:var(--ink);font-weight:600}.mp-foot{margin-top:24px;padding-top:16px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.mp-foot a{color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:1px;text-decoration:none}.mp-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center}.mp-modal[hidden]{display:none}.mp-modal-backdrop{position:absolute;inset:0;background:#0e13308c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:mp-modal-bg-in .25s ease}@keyframes mp-modal-bg-in{0%{opacity:0}to{opacity:1}}.mp-modal-card{position:relative;width:min(1100px,calc(100vw - 32px));max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--ink);border-radius:14px;overflow:hidden;box-shadow:0 30px 80px -20px #0e133099;animation:mp-modal-card-in .35s cubic-bezier(.4,0,.2,1)}@keyframes mp-modal-card-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.mp-modal-head{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--rule);background:var(--paper-2)}.mp-modal-name{font-family:var(--serif);font-style:italic;font-weight:400;font-size:28px;color:var(--ink);letter-spacing:-.01em;text-align:center}.mp-modal-back{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--rule);background:var(--paper);padding:6px 12px;border-radius:999px;cursor:pointer;transition:all .12s ease}.mp-modal-back:hover{border-color:var(--ink);color:var(--ink)}.mp-modal-close{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--rule);background:var(--paper);color:var(--ink-soft);border-radius:50%;font-size:12px;cursor:pointer;transition:all .12s ease}.mp-modal-close:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.mp-modal-body{display:grid;grid-template-columns:1fr 320px;gap:0;flex:1 1 auto;min-height:0}.mp-modal-stage{position:relative;background:var(--paper-2);border-right:1px solid var(--rule);overflow:hidden}.mp-modal-chip{position:absolute;top:14px;left:14px;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);background:var(--paper);border:1px solid var(--rule);padding:4px 10px;border-radius:999px;z-index:2}.mp-modal-coords{position:absolute;bottom:14px;right:14px;font-family:var(--mono);font-size:10px;font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:.04em;background:var(--paper);border:1px solid var(--rule);padding:4px 10px;border-radius:999px;z-index:2}.mp-modal-map{display:block;width:100%;height:100%;cursor:crosshair}.mp-modal-map .country-bg{fill:var(--paper-3);stroke:var(--rule);stroke-width:.5}.mp-modal-map .country-main{fill:var(--paper);stroke:var(--ink);stroke-width:1;stroke-linejoin:round}.mp-modal-map .capital-pin{fill:var(--acid);stroke:var(--paper);stroke-width:2;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(200,16,46,.4))}.mp-modal-map .capital-label{font-family:var(--mono);font-size:11px;letter-spacing:.08em;fill:var(--ink);pointer-events:none;paint-order:stroke;stroke:var(--paper);stroke-width:4}.mp-modal-map .user-pin{fill:var(--ink);stroke:var(--paper);stroke-width:1.5;pointer-events:none;animation:mp-pin-in .25s ease}.mp-modal-side{padding:18px 20px;display:flex;flex-direction:column;gap:14px;overflow-y:auto}.mp-modal-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-bottom:14px;border-bottom:1px dashed var(--rule)}.mp-modal-stats .stat .lab{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:2px}.mp-modal-stats .stat .val{font-family:var(--mono);font-size:13px;color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}.mp-modal-blurb{font-family:var(--serif);font-size:14px;line-height:1.5;color:var(--ink);margin:0}.mp-modal-chal{border:1px solid var(--ink);border-radius:10px;padding:14px 16px;background:var(--paper-2)}.mp-modal-chal .lab{font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px}.mp-modal-chal .goal{font-family:var(--serif);font-size:18px;line-height:1.2;color:var(--ink);margin-bottom:10px}.mp-modal-chal .goal em{font-style:italic;color:var(--acid)}.mp-modal-chal .status{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.mp-modal-chal .status .dot{width:8px;height:8px;border-radius:50%;background:var(--ink-soft);transition:background-color .25s ease,box-shadow .25s ease}.mp-modal-chal.is-solved .status .dot{background:#1f8a5b;box-shadow:0 0 0 4px #1f8a5b26}.mp-modal-chal.is-solved .status .lab,.mp-modal-chal.is-solved .goal em{color:#1f8a5b}.mp-modal-chal .distance{margin-top:8px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--ink-soft);font-variant-numeric:tabular-nums}.mp-modal-chal .hint{margin-top:10px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--rule);background:var(--paper);color:var(--ink);cursor:pointer;padding:6px 12px;border-radius:999px;transition:all .12s ease}.mp-modal-chal .hint:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}body.is-mp-modal{overflow:hidden}@media (max-width: 800px){.mp-modal-body{grid-template-columns:1fr}.mp-modal-stage{border-right:none;border-bottom:1px solid var(--rule);min-height:240px}}@media (max-width: 1100px){.mp-bench{grid-template-columns:1fr}.mp-side{position:static}}@media (max-width: 720px){.mp-page{padding:32px 16px}}
