.ms_root{position:absolute;pointer-events:none;color:#edf1df;isolation:isolate;font-family:inherit;--accent:#e0d9b2}
.ms_carrier{position:relative;width:100%;transform-origin:50% var(--disc-radius);pointer-events:none}.ms_root[data-exit-phase=closing] .ms_carrier{will-change:transform,opacity}.ms_root[data-exit-phase=closing] button:disabled{opacity:1}
.ms_closeDot{position:absolute;left:50%;top:var(--disc-radius);transform:translate(-50%,-50%);border-radius:50%;background:var(--accent);pointer-events:none}
.ms_root button{font:inherit;cursor:pointer;min-height:44px;color:inherit;touch-action:manipulation}.ms_root button:disabled{cursor:default;opacity:.5}.ms_root button:focus-visible{outline:3px solid #f6eab7;outline-offset:3px}
.ms_steps{position:absolute;inset:0;white-space:nowrap;pointer-events:none;z-index:4;font-size:calc(14px * var(--map-dial-scale,1))}.ms_root .ms_steps button{position:absolute;box-sizing:border-box;height:44px;min-height:44px;padding:0;border:0;background:transparent;color:#edf1df;transform-origin:50% 100%;pointer-events:auto}.ms_steps button::before{content:"";position:absolute;bottom:0;left:50%;width:calc(18px * var(--map-dial-scale,1));height:calc(32px * var(--map-dial-scale,1));box-sizing:border-box;transform:translateX(-50%);border:calc(1.5px * var(--map-dial-scale,1)) solid #a6b39a;border-radius:calc(5px * var(--map-dial-scale,1)) calc(5px * var(--map-dial-scale,1)) calc(1px * var(--map-dial-scale,1)) calc(1px * var(--map-dial-scale,1));background:#203830}.ms_steps button span{position:absolute;left:0;right:0;bottom:calc(6px * var(--map-dial-scale,1));visibility:hidden}.ms_steps button[aria-current=step]{color:#162e24;font-weight:700}.ms_steps button[aria-current=step]::before{width:calc(58px * var(--map-dial-scale,1));background:var(--accent);border-color:var(--accent)}.ms_steps button[aria-current=step] span{visibility:visible}
.ms_disc{position:relative;width:100%;aspect-ratio:1;border-radius:50%;background:#263d38}.ms_clip{position:absolute;inset:0;clip-path:circle(50%);overflow:hidden;pointer-events:auto;border-radius:50%;background:#263d38;outline:1px solid var(--accent);outline-offset:-1px}.ms_layer{position:absolute;inset:0;will-change:transform}.ms_timeLayer,.ms_placeLayer{container-type:inline-size}.ms_timeLayer>div,.ms_placeLayer>div{width:100%;height:100%;margin:0}.ms_placeLayer [data-map-street-moving-content]{filter:var(--map-street-outer-filter,none)}
.ms_layer[hidden]{display:none}.ms_placeSwipeZone{position:absolute;inset:0;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none}
.ms_peopleLayer{container-type:inline-size}.ms_peopleLayer>div{width:100%;height:100%;margin:0}.ms_peopleLayer [data-map-people-moving-content]{filter:var(--map-people-outer-filter,none)}
.ms_aux{position:relative;left:var(--aux-left);box-sizing:border-box;width:var(--aux-width);max-height:var(--aux-height);overflow:auto;overscroll-behavior:contain;pointer-events:auto;margin-top:var(--aux-gap,8px);padding:10px 12px;border-radius:12px;background:#1c302def;box-shadow:0 4px 18px #0002;font-size:12px;line-height:1.55;scrollbar-width:thin}.ms_aux:empty,.ms_aux[hidden]{display:none}.ms_aux fieldset{min-width:0;margin:0;padding:0;border:0}.ms_aux p{margin:.4rem 0}.ms_aux input{accent-color:#e8cc78}.ms_aux button{border:1px solid #829584;border-radius:9px;padding:7px 11px;background:#30483e}.ms_aux label{min-height:44px;display:flex;align-items:center;gap:7px}.ms_aux legend{padding:0;font-size:12px}.ms_aux fieldset>div:first-of-type{margin-bottom:8px}
.ms_exitWindow{position:absolute;left:34.95%;top:34.95%;width:30.1%;height:30.1%;overflow:hidden;border-radius:50%;pointer-events:none;z-index:4;container-type:inline-size;--exit-fill:var(--activity-soft,#263d38)}
/* Time's152px hub sits within the364px page, itself inset in a413.8px face. Preserve its border. */
.ms_exitWindow[data-stage=time]{left:32.6003%;top:32.6003%;width:34.7994%;height:34.7994%;--exit-fill:color-mix(in srgb,var(--activity-color) 43%,#263d38)}
.ms_exitWindow[data-stage=place]{--exit-fill:#263d38}
.ms_root .ms_exitConfirm{position:absolute;inset:0;box-sizing:border-box;width:100%;height:100%;min-width:44px;min-height:44px;margin:0;padding:0;border:0;background:var(--exit-fill);color:var(--accent);display:grid;place-items:center;transform:translateX(100%);transition:transform 500ms cubic-bezier(.22,.61,.36,1);pointer-events:none}
.ms_root[data-exit-prompt=true] .ms_exitConfirm{transform:translateX(0)}.ms_root .ms_exitConfirm:not(:disabled){pointer-events:auto}.ms_root .ms_exitConfirm:disabled{opacity:1}
.ms_exitConfirm svg{width:30%;height:30%;stroke-width:1.8;transition:transform 160ms ease}.ms_exitConfirm span{position:absolute;top:58%;left:0;right:0;text-align:center;font-size:clamp(calc(10px * var(--map-dial-scale,1)),12cqw,calc(14px * var(--map-dial-scale,1)));line-height:1.2;opacity:0;transform:translateY(calc(3px * var(--map-dial-scale,1)));transition:opacity 160ms ease,transform 160ms ease;pointer-events:none}
.ms_exitConfirm:focus-visible svg{transform:translateY(-7px)}.ms_exitConfirm:focus-visible span{opacity:1;transform:translateY(0)}.ms_root .ms_exitConfirm:focus-visible{outline-offset:-5px}
.ms_root [data-map-wheel-center-content],.ms_root [data-map-time-hub-content]{transition:transform 500ms cubic-bezier(.22,.61,.36,1)}
.ms_root[data-exit-prompt=true] [data-map-wheel-center-content]{transform:translateX(-120%)}.ms_root[data-exit-prompt=true] [data-map-time-hub-content]{transform:translateX(-100%)}
.ms_tutorialAnchor{position:absolute;width:44px;height:44px;pointer-events:none}.ms_root .ms_lamp{position:relative;width:44px;height:44px;padding:0;border:0;background:transparent;color:#f2dfa4;transform-origin:50% 0;pointer-events:auto}.ms_lampFace{position:absolute;left:calc(50% - 13px * var(--map-dial-scale,1));top:0;width:calc(26px * var(--map-dial-scale,1));height:calc(32px * var(--map-dial-scale,1));box-sizing:border-box;border:calc(1.4px * var(--map-dial-scale,1)) solid var(--accent);border-radius:calc(4px * var(--map-dial-scale,1));background:#19372f;display:grid;place-items:center;transform-origin:50% 0;transition:transform 160ms ease}.ms_lamp svg{width:calc(18px * var(--map-dial-scale,1));height:calc(24px * var(--map-dial-scale,1))}.ms_hint{position:absolute;top:0;right:44px;white-space:nowrap;padding:6px 9px;border-radius:6px;background:#263e36}.ms_safeArea{position:absolute;visibility:hidden;pointer-events:none;padding-bottom:env(safe-area-inset-bottom,0px)}
.ms_tutorial{position:absolute;box-sizing:border-box;padding:10px 12px;border:1px solid #819281;border-radius:12px;background:#1e332ff5;color:#edf1df;box-shadow:0 5px 20px #0004;overflow:auto;overscroll-behavior:contain;pointer-events:auto;font-family:inherit;font-size:12px;line-height:1.5;z-index:16;scrollbar-width:thin}.ms_tutorial header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.ms_tutorial strong{font-size:14px}.ms_tutorial button{font:inherit;min-height:32px;border:0;border-bottom:1px solid #8d9c7b;padding:0 4px;background:none;color:var(--accent,#f2dfa4);touch-action:manipulation;cursor:pointer}.ms_tutorial button:focus-visible{outline:3px solid #f6eab7;outline-offset:2px}.ms_tutorial p{margin:3px 0;overflow-wrap:anywhere}
@media(hover:hover) and (pointer:fine){.ms_lamp:hover .ms_lampFace{transform:scale(1.12)}.ms_exitConfirm:hover svg{transform:translateY(-7px)}.ms_exitConfirm:hover span{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.ms_layer{will-change:auto}.ms_lampFace,.ms_root .ms_exitConfirm,.ms_exitConfirm svg,.ms_exitConfirm span,.ms_root [data-map-wheel-center-content],.ms_root [data-map-time-hub-content]{transition:none}}

/* The carrier owns the one stationary rim while only stage contents slide. */
.ms_disc::after{content:"";position:absolute;inset:0;box-sizing:border-box;border:calc(5px * var(--map-dial-scale,1)) solid var(--accent);border-radius:50%;pointer-events:none;z-index:3}.ms_layer [data-map-activity-wheel] svg>circle{stroke:transparent}

.ms_aux button[aria-pressed]{min-width:0;flex:1 1 0}

/* Theme is confined to the four-stage wheel and its existing controls. */
@media(forced-colors:none){
.ms_root{color:var(--yi-ink)}.ms_disc,.ms_clip{background:var(--yi-canvas)}.ms_root button:focus-visible{outline-color:var(--yi-focus)}.ms_steps button::before{background:var(--yi-sector-alternate);border-color:var(--yi-outer-rim)}.ms_steps button[aria-current=step]{color:var(--yi-ink)}.ms_steps button[aria-current=step]::before{background:var(--yi-selected-surface);border-color:var(--yi-selected-stroke)}.ms_aux,.ms_tutorial{background:var(--yi-canvas);color:var(--yi-ink)}.ms_aux input{accent-color:var(--yi-selected-stroke)}.ms_aux button{background:var(--yi-selected-surface);border-color:var(--yi-inner-edge)}.ms_exitWindow,.ms_exitWindow[data-stage=time],.ms_exitWindow[data-stage=place]{--exit-fill:var(--yi-surface)}.ms_root .ms_exitConfirm{color:var(--yi-ink)}
}

@media(forced-colors:none){
.ms_steps button::before{background:var(--yi-surface)}.ms_root .ms_lamp{color:var(--yi-ink)}.ms_lampFace{background:var(--yi-hub-surface);border-color:var(--yi-inner-edge)}.ms_hint{background:var(--yi-surface);color:var(--yi-ink)}.ms_tutorial button{color:var(--yi-ink)}
.ms_aux,.ms_tutorial{background:var(--yi-surface)}.ms_aux button{color:var(--yi-ink)}
}

/* Portaled wheel controls stay mounted; an empty auxiliary panel has no visible box. */
.ms_aux:has(>div:empty),.ms_aux:has(>div>[data-map-time-page]:empty),.ms_aux:has(>div>[data-map-street-phase]:empty),.ms_aux:has(>div>[data-map-people-phase]:empty){display:none}

@media(max-width:760px){
 .ms_root[data-map-stage=time] .ms_aux:not([hidden]):has(>div>[data-map-time-touch-controls]){display:block}
}

.ms_phoneHeader{display:none}
/* Touch confirmation keeps the existing action label visible without hover or focus. */
@media(max-width:760px){
 .ms_root[data-exit-prompt=true] .ms_exitConfirm svg{transform:translateY(-7px)}
 .ms_root[data-exit-prompt=true] .ms_exitConfirm span{opacity:1;transform:translateY(0);font-size:clamp(12px,12cqw,14px)}
}
@media(max-width:760px){.ms_phoneHeader{position:absolute;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));z-index:10;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;pointer-events:auto;color:#f4f0e6;font:inherit}.ms_phoneHeader strong{font-size:14px;font-weight:500}.ms_phoneHeader>div{display:flex;gap:6px}.ms_phoneHeader button{box-sizing:border-box;min-width:44px;min-height:44px;border:1px solid #504d46;border-radius:9px;padding:6px 10px;background:#262724;color:#f4f0e6;font:inherit;font-size:13px;cursor:pointer}.ms_phoneHeader button:focus-visible{outline:2px solid #ded6c3;outline-offset:2px}.ms_phoneHeader[hidden]{display:none!important}}
