/* Map / visor lunar 2D + 3D */
.register{display:grid;grid-template-columns:34% 66%;gap:14px;align-items:stretch}
.register-copy{padding:30px}
.register-copy h2{font-size:34px;line-height:1;margin:10px 0 15px;letter-spacing:-1.5px}
.register-copy p{font-size:12px;color:#7f96a5;line-height:1.75}
.features{list-style:none;padding:0;color:#a0b2bc;font-size:10px;line-height:2.5}
.features li:before{content:"◈";color:var(--cyan);margin-right:9px}

.real-map{height:455px;position:relative;overflow:hidden;background:#01070d}
.map-toolbar{position:absolute;z-index:30;left:14px;top:14px;display:flex;gap:5px}
.map-tab{border:1px solid rgba(185,156,255,.48);border-radius:999px;background:rgba(3,8,20,.86);color:#aaa2bd;padding:7px 15px;font-size:8px;font-weight:900;letter-spacing:.8px;cursor:pointer;transition:.2s ease}
.map-tab:hover{border-color:#b99cff;color:#e9e1ff}
.map-tab.active{background:#b99cff;color:#0b0718;border-color:#b99cff}
.map-stage{position:absolute;inset:0;overflow:hidden}

.lunar-marker{position:absolute;left:0;top:0;width:17px;height:17px;margin:-7px 0 0 -7px;padding:0;border:1.5px solid #fff;border-radius:50%;background:#35caff;box-shadow:0 0 14px #35caff;cursor:pointer;z-index:4;transform:none;rotate:0deg}
.lunar-marker.apollo{background:#35caff;border-color:#e8fbff}
.lunar-marker.selected{background:#b99cff;border-color:#fff;box-shadow:0 0 18px #b99cff}
.marker-label{position:absolute;left:15px;top:50%;transform:translateY(-50%);white-space:nowrap;color:#eefaff;background:rgba(2,10,18,.94);border:1px solid #39caff;border-radius:4px;padding:2px 4px;font-size:9px;font-weight:600;line-height:1.15;letter-spacing:0;pointer-events:none;rotate:0deg}
.lunar-marker.selected .marker-label,.lunar-marker.custom .marker-label{border-color:#b99cff}

#markers2d{position:absolute;inset:0;z-index:6;pointer-events:none}
#markers2d .lunar-marker{pointer-events:auto}

.map-image{position:absolute;inset:-1px;background:#01070d;transform:scale(1);transform-origin:var(--map-mx,50%) var(--map-my,50%);transition:transform .28s ease;cursor:crosshair;border-top:1px solid rgba(185,156,255,.18);border-bottom:1px solid rgba(185,156,255,.18);z-index:1}
.mymoon-moon-selector .map-image{overflow:hidden}
.mymoon-moon-selector .map-image>img{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);object-fit:cover;display:block;user-select:none;-webkit-user-drag:none}

.moon-3d{position:absolute;inset:0;z-index:2;opacity:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(55,38,104,.2),transparent 48%),#01070d;transition:opacity .18s ease;will-change:opacity}
.moon-3d canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important}

.lunar-grid{position:absolute;inset:0;z-index:4;background-image:linear-gradient(rgba(185,156,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(185,156,255,.10) 1px,transparent 1px);background-size:9% 18%;pointer-events:none;opacity:.65}

.map-mission-crosshair{position:absolute;z-index:18;width:72px;height:72px;transform:translate3d(-50%,-50%,0);pointer-events:none;opacity:0;transition:none!important;will-change:transform,opacity}
.map-mission-crosshair .cross-ring{animation:none!important}
.map-mission-crosshair .cross-ring.r1{width:54px;height:54px;border:1.5px solid rgba(185,156,255,.92);box-shadow:0 0 8px rgba(185,156,255,.22)}
.map-mission-crosshair .cross-ring.r2{width:34px;height:34px;border:1px solid rgba(185,156,255,.68)}
.map-mission-crosshair .cross-ring.r3{width:68px;height:68px;border:1px dashed rgba(185,156,255,.45)}
.map-mission-crosshair .cross-dot{width:4px;height:4px;background:#fff;box-shadow:0 0 8px rgba(185,156,255,.8)}

.zoom-controls{position:absolute;z-index:25;left:20px;top:20px;display:flex;flex-direction:column;gap:5px}
.zoom-controls button{width:31px;height:31px;border:1px solid rgba(185,156,255,.48);border-radius:10px;background:rgba(3,8,20,.9);color:#c8a8ff;font-size:18px;line-height:1;cursor:pointer}
.zoom-controls button:hover{border-color:#b99cff;background:rgba(185,156,255,.12)}

.map-info{position:absolute;right:16px;bottom:16px;width:265px;padding:17px;background:rgba(2,9,16,.93);border:1px solid rgba(156,123,255,.47);border-radius:16px;z-index:20;backdrop-filter:blur(8px)}
.map-info b{display:block;color:var(--cyan);font-size:12px}
.map-info span{display:block;font-size:10px;margin-top:5px}
.map-info small{display:block;color:#7f9ba9;margin:6px 0 12px;font-size:8px;line-height:1.5}
.mymoon-map-mode-status{display:none}

.mymoon-moon-selector{position:relative;width:100%;min-width:0}
.mymoon-moon-view-switch{display:flex;align-items:center;justify-content:flex-end;gap:0;width:max-content;margin:0 27px 14px auto;padding:4px;border:1px solid rgba(185,156,255,.28);border-radius:14px;background:rgba(5,8,20,.82)}
.mymoon-moon-view-switch .map-tab{min-width:45px;height:30px;padding:0 18px;border:0;border-radius:15px;background:transparent;color:#7f7891;font-size:12px;font-weight:900;letter-spacing:1.2px}
.mymoon-moon-view-switch .map-tab:hover{color:#e9e1ff;background:rgba(185,156,255,.08)}
.mymoon-moon-view-switch .map-tab.active{background:#b99cff;color:#0b0718;border-color:transparent}

.mymoon-moon-selector .map-stage{position:relative;border-top:1px solid rgba(185,156,255,.18);border-bottom:1px solid rgba(185,156,255,.18)}
.mymoon-moon-selector--checkout{margin-top:0;width:100%}
.mymoon-moon-selector--checkout .mymoon-moon-view-switch{position:absolute;top:-82px;right:27px;margin:0;z-index:50}
.mymoon-moon-selector--checkout .map-stage{height:min(34vw,610px);min-height:420px}
.mymoon-moon-selector--checkout .map-info{display:none}

.mymoon-selector-selection-bar{min-height:82px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:15px;padding:17px 27px}
.mymoon-selector-label{display:block;margin-bottom:5px;color:#756e88;font-size:7px;font-weight:900;letter-spacing:1.5px}
.mymoon-selector-selection-bar strong{display:block;color:#f7f5ff;font-size:12px}
.mymoon-selector-selection-bar button{padding:14px 15px;border:1px solid rgba(185,156,255,.35);border-radius:9px;background:rgba(185,156,255,.07);color:#c8a8ff;cursor:pointer;font-size:10px;font-weight:900;letter-spacing:.8px}
.mymoon-selector-selection-bar button:hover{border-color:#b99cff}

@media(max-width:780px){.register{grid-template-columns:1fr}.real-map{height:420px}.map-info{width:225px;right:10px;bottom:12px}}
@media(max-width:700px){.mymoon-selector-selection-bar{grid-template-columns:1fr;gap:14px}.mymoon-moon-selector--checkout .map-stage{height:450px;min-height:360px}}