
.mode-map .world-header{top:calc(12px + env(safe-area-inset-top));gap:8px}.mode-map .world-brand{width:48px;min-height:48px;padding:7px;justify-content:center;border-radius:17px}.mode-map .world-search,.mode-map .world-menu{min-height:48px;height:48px}.mode-map .world-brand .brand-mark{transform:scale(.8);margin:0}
.map-mode-switch{position:absolute;top:calc(72px + env(safe-area-inset-top));left:14px;right:14px;z-index:4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:5px;border:1px solid var(--outline);border-radius:19px;background:var(--surface);box-shadow:0 4px 20px #152d4818;isolation:isolate}.map-mode-switch>i{position:absolute;top:5px;bottom:5px;left:5px;width:calc((100% - 10px)/3);border-radius:14px;background:var(--surface-accent);transform:translateX(calc(var(--mode-index)*100%));transition:transform 200ms cubic-bezier(.2,.8,.2,1);z-index:-1}.map-mode-switch button{min-height:44px;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:750;padding:8px 4px;white-space:nowrap;border-radius:14px}.map-mode-switch [aria-selected=true]{color:var(--accent)}
.mode-map .world-simulation{top:calc(136px + env(safe-area-inset-top));right:auto;min-height:36px;padding:6px 10px;font-size:12px}.mode-map .world-simulation span{display:none}.mode-map .mode-context-action{top:calc(136px + env(safe-area-inset-top));left:14px;max-width:calc(100% - 80px);min-height:44px;animation:mode-enter .18s ease-out}.mode-map.is-simulation .mode-context-action{top:calc(182px + env(safe-area-inset-top))}.mode-map .events-map-chip>span{display:block}.mode-map .map-locate{top:calc(136px + env(safe-area-inset-top));right:14px;width:44px;height:44px}.mode-map.is-simulation .map-locate{top:calc(182px + env(safe-area-inset-top))}.mode-map .map-overview{top:calc(190px + env(safe-area-inset-top));right:14px}.mode-map.is-simulation .map-overview{top:calc(236px + env(safe-area-inset-top))}
.map-mode-hint{position:absolute;left:24px;right:24px;bottom:calc(50px + env(safe-area-inset-bottom));z-index:3;text-align:center;background:var(--surface);color:var(--muted);padding:12px 16px;border:1px solid var(--outline);border-radius:24px;font-size:14px;pointer-events:none;animation:mode-enter .2s ease-out}.mode-food-action{position:absolute;left:14px;right:14px;bottom:calc(40px + env(safe-area-inset-bottom));z-index:3;display:flex;gap:10px;align-items:center;min-height:58px;padding:14px 16px;border:1px solid var(--outline);border-radius:20px;background:var(--surface);color:var(--ink);font-size:14px;font-weight:750;box-shadow:var(--shadow);animation:mode-enter .2s ease-out}.mode-food-action span{flex:1;text-align:left}.mode-map .map-status{bottom:42px;top:auto}.mode-map .world-install{display:none}
.mode-map .smart-dock{animation:mode-enter .2s ease-out;max-height:42dvh}.smart-dock.is-compact .dock-heading,.smart-dock.is-compact .dock-stats,.smart-dock.is-compact .zone-details,.smart-dock.is-compact .availability-toggle{display:none}.smart-dock.is-compact{padding:8px 12px}.smart-dock.is-compact .presence-control{margin:0;border:0;padding:4px}.smart-dock.is-compact .journey-strip{margin:0}
.food-panel h3{font-size:20px;line-height:1.3;margin:8px 0}.food-panel .dialog-lead{margin:12px 0}.meal-list-title{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.meal-list-title h3{font-size:18px}.meal-form{display:grid;gap:14px;padding:16px;background:var(--surface-raised);border:1px solid var(--outline);border-radius:18px;margin:14px 0}.meal-form label{display:grid;gap:7px;font-size:14px;font-weight:650;min-width:0}.meal-form input,.meal-form select{width:100%;min-width:0;min-height:46px;border:1px solid var(--outline);border-radius:10px;padding:9px;background:var(--surface);color:var(--ink);font-size:16px}.meal-times{display:grid;grid-template-columns:1fr 1fr;gap:10px}.meal-poll{padding:16px;border:1px solid var(--outline);border-radius:18px;margin:12px 0;background:var(--surface-raised)}.meal-poll h4{font-size:16px;margin:0 0 7px}.meal-poll p{font-size:14px;color:var(--muted);margin:0 0 12px}.meal-poll [role=group]{display:grid;gap:8px}.meal-poll [role=group] button{display:flex;gap:10px;align-items:center;text-align:left;min-height:48px;padding:10px;border:1px solid var(--outline);background:var(--surface);color:var(--ink);border-radius:11px;font-size:14px}.meal-poll button span{flex:1}.meal-poll button[aria-pressed=true]{border-color:var(--accent);background:var(--surface-accent)}.meal-poll>.inline-link{margin-top:12px}.food-info{margin-top:22px;font-size:14px;line-height:1.6;color:var(--muted)}.food-info summary{min-height:44px;padding:10px 0}.food-info p{margin:8px 0}
.event-response-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.event-response-actions button{display:grid;gap:5px;min-height:65px;padding:11px;border:1px solid var(--outline);border-radius:15px;background:var(--surface-raised);color:var(--ink);font-size:14px}.event-response-actions button[aria-pressed=true]{background:var(--surface-accent);border-color:var(--accent);color:var(--accent)}.event-response-actions b{font-size:18px}.event-timing{display:inline-flex;gap:6px;align-items:center;font-size:13px;font-weight:750;margin:8px 0}.event-timing i{width:7px;height:7px;border-radius:50%}.event-days{overflow-x:auto;display:flex;gap:6px;padding-bottom:5px;scrollbar-width:thin}.event-days button{flex:0 0 55px;min-width:55px}.event-days small{font-size:12px}
.event-photo-marker{width:56px;height:72px;position:relative;cursor:pointer;padding:0;border:0;background:none;overflow:visible}.event-photo-marker .pin-body{position:absolute;inset:0;width:56px;height:72px;filter:drop-shadow(0 3px 4px #08142830)}.event-photo-marker .pin-photo{position:absolute;top:7px;left:7px;width:42px;height:42px;border-radius:50%;object-fit:cover;background:#fff}.event-photo-marker .pin-fallback{position:absolute;top:7px;left:7px;width:42px;height:42px;border-radius:50%;background:#fff;display:grid;place-items:center;color:#263e50;font-size:20px}.event-photo-marker .pin-count{position:absolute;right:-5px;top:0;min-width:21px;height:21px;padding:2px 5px;border:2px solid var(--surface);border-radius:11px;background:var(--ink);color:var(--surface);font-size:11px;font-weight:800}.event-photo-marker .pin-social{position:absolute;top:73px;left:50%;translate:-50% 0;white-space:nowrap;padding:3px 6px;border-radius:8px;background:var(--surface);color:var(--ink);font-size:11px;box-shadow:var(--shadow)}
@keyframes mode-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.map-mode-switch>i{transition:none}.mode-context-action,.map-mode-hint,.mode-food-action,.mode-map .smart-dock{animation:none!important}}
@media(max-width:350px){.map-mode-switch{left:10px;right:10px}.map-mode-switch button{font-size:12px}.mode-map .world-header{left:10px;right:10px}}
