.app-shell{grid-template-rows:auto 1fr;grid-template-columns:1fr;height:100svh;display:grid;overflow:hidden}.app-main{display:contents}.bubble-selector{width:100%;position:relative;overflow:visible}.bubble-selector__title-row{z-index:3;pointer-events:none;align-items:center;gap:.1rem;display:flex;position:relative}.bubble-selector__title-row>*{pointer-events:auto}.bubble-selector__placeholder{font-family:var(--font-heading);color:var(--accent-coral);opacity:.4;padding:.3em .6em;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1}.bubble-selector__bubble{font:inherit;color:inherit;white-space:nowrap;background:0 0;border:0;outline:none;padding:0}.bubble-selector__prefix-cloud{font-family:var(--font-heading);z-index:5;white-space:nowrap;color:var(--text-primary);pointer-events:none;animation:cloud-bob calc(12s / var(--cloud-float-speed,1)) ease-in-out infinite;justify-content:center;align-items:center;margin-top:.4rem;padding:.3em .6em;font-size:clamp(3rem,4.5vw,4.8rem);line-height:1;display:flex;position:relative}.bubble-selector__bubble--selected{font-family:var(--font-heading);z-index:4;cursor:default;color:var(--accent-coral);pointer-events:none;animation:cloud-bob calc(14s / var(--cloud-float-speed,1)) ease-in-out infinite reverse;justify-content:center;align-items:center;margin-top:-.6rem;padding:.3em .6em;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1;display:flex;position:relative}.bubble-selector__peripherals{display:contents}.bubble-selector__bubble--peripheral{font-family:var(--font-heading);letter-spacing:0;cursor:pointer;color:var(--text-primary);left:calc(var(--orbit-cx,50%) + var(--orbit-x,0px));top:calc(var(--orbit-cy,50%) + var(--orbit-y,0px));z-index:2;background:0 0;justify-content:center;align-items:center;padding:.8rem 1.6rem;font-size:1.15rem;font-weight:700;line-height:1.4;transition:left 3s cubic-bezier(.25,.8,.25,1.06),top 3s cubic-bezier(.25,.8,.25,1.06),scale .25s,filter .25s;display:flex;position:absolute;translate:-50% -50%}[data-swapping] .bubble-selector__bubble--peripheral{transition:scale .25s,filter .25s}.bubble-selector__bubble--peripheral{animation:cloud-wander calc(var(--float-duration,18s) / var(--cloud-float-speed,1)) ease-in-out infinite;animation-delay:var(--float-delay,0s)}.bubble-selector__bubble--peripheral:first-child{--float-duration:16s;--float-delay:0s}.bubble-selector__bubble--peripheral:nth-child(2){--float-duration:19s;--float-delay:-3s}.bubble-selector__bubble--peripheral:nth-child(3){--float-duration:22s;--float-delay:-7s}.bubble-selector__bubble--peripheral:nth-child(4){--float-duration:17s;--float-delay:-11s}.bubble-selector__bubble--peripheral:nth-child(5){--float-duration:21s;--float-delay:-5s}.bubble-selector__bubble--peripheral:nth-child(6){--float-duration:18s;--float-delay:-9s}.bubble-selector__bubble--peripheral:nth-child(7){--float-duration:20s;--float-delay:-2s}.bubble-selector__bubble--peripheral:nth-child(8){--float-duration:23s;--float-delay:-13s}.bubble-selector__bubble--peripheral:hover,.bubble-selector__bubble--peripheral:focus-visible{scale:1.08}.bubble-selector__bubble--peripheral:hover .cloud-shape__path,.bubble-selector__bubble--peripheral:focus-visible .cloud-shape__path{filter:saturate(1.3)brightness(1.08)}.bubble-selector__bubble--peripheral:active{scale:1.02}.cloud-shape{inset:calc(-1 * var(--cloud-padding,.4) * 100%) calc(-1 * var(--cloud-padding,.4) * 100%);width:calc(100% + 2 * var(--cloud-padding,.4) * 100%);height:calc(100% + 2 * var(--cloud-padding,.4) * 100%);z-index:0;position:absolute;overflow:visible}.cloud-shape__path{transition:filter .25s}.cloud-bubble__label{z-index:1;text-align:center;position:relative}.bubble-selector__prefix-cloud .cloud-bubble__label,.bubble-selector__bubble--selected .cloud-bubble__label{text-shadow:0 0 6px #ffffffe6,0 0 20px #ff9a8b66,0 0 40px #ff9a8b33}@media (width<=640px){.bubble-selector__peripherals{flex-wrap:wrap;gap:.55rem;padding-left:.15rem;display:flex}.bubble-selector__bubble--peripheral{position:relative;translate:none}}@media (prefers-reduced-motion:reduce){.bubble-selector__bubble--peripheral{transition:none;animation:none}.bubble-selector__prefix-cloud,.bubble-selector__bubble--selected{animation:none}}@keyframes cloud-bob{0%,to{translate:0}25%{translate:2px -3px}50%{translate:0 2px}75%{translate:-2px -1px}}@keyframes cloud-wander{0%,to{translate:-50% -50%}20%{translate:calc(4px - 50%) calc(-50% - 3px)}40%{translate:calc(-50% - 2px) calc(4px - 50%)}60%{translate:calc(5px - 50%) calc(2px - 50%)}80%{translate:calc(-50% - 3px) calc(-50% - 4px)}}.app-header{z-index:10;grid-area:1/1/auto/-1;width:fit-content;padding:1rem;position:relative;overflow:visible}.app-header__error{color:var(--accent-coral);margin-top:.25rem;padding-left:.5rem;font-size:.85rem}.cloud-config-panel{gap:.75rem;display:grid}.cloud-config-panel calcite-label{margin-block-end:.75rem}.marker-config-panel{gap:.75rem;display:grid}.marker-config-panel calcite-label{margin-block-end:.75rem}.marker-config-panel__colour-field{gap:.5rem;margin-block-start:.25rem;display:grid}.marker-config-panel__colour-inputs{align-items:center;gap:.75rem;display:flex}.marker-config-panel__colour-picker{cursor:pointer;background:0 0;border:1px solid #5b4a3f40;border-radius:999px;width:3rem;height:2rem;padding:0}.marker-config-panel__colour-value{font:600 .9rem/1 var(--font-body);color:#3a2e28cc}.map-settings-panel{width:min(20rem,78vw)}.map-settings-panel calcite-tabs{display:block}.map-settings-panel__tab-content{max-height:60vh;padding:.75rem;overflow-y:auto}.member-callout-layer{z-index:5;pointer-events:none;position:absolute;inset:0}.member-callout__leader{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.member-callout{pointer-events:auto;z-index:2;max-width:calc(100% - 2rem);display:flex;position:absolute;overflow:hidden}.member-callout__surface{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#fffaf5f2 0%,#fff6f0e0 100%);border:1px solid #7a6b622e;border-radius:1.8rem 2.2rem 2rem 1.6rem/2rem 1.8rem 2.2rem 1.6rem;flex-direction:column;flex:auto;gap:1rem;min-height:0;max-height:100%;padding:1.2rem;display:flex;position:relative;overflow:hidden;transform:rotate(-.3deg);box-shadow:0 4px 16px #ff9a8b14,0 12px 36px #3a2e280f}.member-callout__close{width:2.2rem;height:2.2rem;color:var(--text-primary);cursor:pointer;background:#ffffffc2;border:0;border-radius:999px;transition:background .15s,box-shadow .15s;position:absolute;top:.9rem;right:.9rem;box-shadow:0 .35rem 1rem #3a2e2817}.member-callout__close:hover{background:#ffffffeb;box-shadow:0 .35rem 1.2rem #3a2e2824}.member-callout__close:focus-visible{outline:2px solid var(--accent-coral);outline-offset:2px}.member-callout__header{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding-right:2.8rem;display:grid}.member-callout--dragging .member-callout__header{cursor:grabbing}.member-callout__avatar,.member-callout__avatar-fallback{object-fit:cover;border-radius:1.4rem;flex-shrink:0;width:clamp(4.8rem,9vw,6.6rem);height:clamp(4.8rem,9vw,6.6rem)}.member-callout__avatar{background:#fff9;border:2px solid #7a716c2e}.member-callout__avatar-fallback{color:var(--text-primary);font:700 clamp(1.8rem, 4vw, 2.5rem)/1 var(--font-heading);background:linear-gradient(135deg,#ff9a8bd1,#6ec6c8b8);border:2px solid #fffaf5bd;place-items:center;display:grid}.member-callout__name{font:700 clamp(2rem, 4.2vw, 2.9rem)/.92 var(--font-heading)}.member-callout__job-title{color:var(--text-secondary);font:400 clamp(.95rem, 1vw + .7rem, 1.1rem)/1.3 var(--font-body);margin-top:.3rem}.member-callout__body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#7a716c61 transparent;flex:auto;min-height:0;padding-right:.25rem;overflow-y:auto}.member-callout__body::-webkit-scrollbar{width:.55rem}.member-callout__body::-webkit-scrollbar-thumb{background:#7a716c61;border-radius:999px}.member-callout__body::-webkit-scrollbar-track{background:#fffaf58c}.member-callout__biography{color:var(--text-primary);font-size:clamp(1rem,1.1vw + .82rem,1.14rem);line-height:1.65}.member-callout__biography+.member-callout__biography{margin-top:.75em}.member-callout__biography--empty{color:var(--text-secondary);font-style:italic}.member-callout__resize-handle{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;opacity:.3;z-index:3;width:1.4rem;height:1.4rem;transition:opacity .15s;position:absolute;bottom:0}.member-callout__resize-handle:hover{opacity:.65}.member-callout__resize-handle--right{cursor:nwse-resize;clip-path:polygon(100% 0%,100% 100%,0% 100%);background:repeating-linear-gradient(-45deg,#0000,#0000 2px,#7a6b628c 2px 3px);right:0}.member-callout__resize-handle--left{cursor:nesw-resize;clip-path:polygon(0% 0%,0% 100%,100% 100%);background:repeating-linear-gradient(45deg,#0000,#0000 2px,#7a6b628c 2px 3px);left:0}@media (width<=720px){.member-callout__surface{padding:1rem}.member-callout__header{grid-template-columns:1fr;justify-items:start}}.map-view{grid-area:1/1/-1/-1;min-height:0}.map-view__frame{height:100%;position:relative;overflow:hidden}.map-view__frame arcgis-map{width:100%;height:100%;display:block}:root{--app-background:#faf5ef;--app-background-deep:#f0e6d8;--surface:#fffaf5c7;--surface-strong:#fffdfaeb;--surface-border:#74543f1a;--text-primary:#3a2e28;--text-secondary:#7a6b62;--accent-coral:#ff9a8b;--accent-teal:#6ec6c8;--accent-gold:#fdd87a;--accent-lavender:#c3aed6;--shadow-soft:0 20px 45px #4a322514;--panel-radius:1.5rem;--header-height:5.75rem;--font-body:Nunito, sans-serif;--font-heading:Caveat, cursive;color:var(--text-primary);font:16px/1.5 var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top left, #ff9a8b24, transparent 28%), radial-gradient(circle at top right, #6ec6c81f, transparent 26%), radial-gradient(circle at 80% 90%, #c3aed61a, transparent 30%), linear-gradient(180deg, var(--app-background) 0%, var(--app-background-deep) 100%)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}
