:root{--font-emoji-stack:"ForetMapColorEmoji", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;--font-sans-with-emoji:var(--font-sans);--text-2xs:clamp(.58rem, .55rem + .15vw, .64rem);--text-xs:clamp(.68rem, .64rem + .2vw, .74rem);--text-sm:clamp(.78rem, .72rem + .25vw, .86rem);--text-base:clamp(.88rem, .82rem + .3vw, 1rem);--text-md:clamp(1rem, .94rem + .3vw, 1.1rem);--text-lg:clamp(1.1rem, 1rem + .5vw, 1.3rem);--text-xl:clamp(1.3rem, 1.15rem + .75vw, 1.6rem);--text-2xl:clamp(1.6rem, 1.4rem + 1vw, 2rem);--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.2;--lh-normal:1.45;--lh-relaxed:1.6;--ink-soft:#64748b;--ink-faint:#8a94a0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--tap-target:44px;--ink-info:#075985;--ink-success:#14663f;--ink-warning:#8a5a10;--ink-danger:#991b1b;--accent-info:#d9f0ff;--accent-success:#d9f9ea;--accent-warning:#fff4d6;--accent-danger:#ffe2e2;--surface-plain:#fff;--surface-sunken:#f3f4f6;--surface-cool:#f8fafc;--line-soft:#e5e7eb;--line-muted:#d1d5db;--line-cool:#cbd5e1;--line-leaf:#d6e8dc;--line-sage:#e2ebe5;--ink-strong:#1f2937;--ink-base:#4b5563;--ink-muted:#6b7280;--ink-dim:#94a3b8;--ink-moss:#4c5b52;--ink-lichen:#8aa193;--tint-success:#f0fdf4;--tint-success-strong:#dcfce7;--tint-danger:#fff1f2;--tint-warning:#fffbeb;--accent-success-solid:#16a34a;--accent-warning-solid:#f59e0b;--accent-info-solid:#2563eb;--accent-danger-solid:#dc2626;--fm-z-tooltip:80;--fm-z-sticky:100;--fm-z-nav:110;--fm-z-dock:200;--fm-z-fullscreen:250;--fm-z-panel:260;--fm-z-modal:300;--fm-z-modal-nested:340;--fm-z-modal-nested-2:380;--fm-z-drawer:420;--fm-z-popover:500;--fm-z-quiz-popover:600;--fm-z-glossary:700;--fm-z-learning-ack:750;--fm-z-status:800;--fm-z-toast:850;--fm-z-tour:900;--fm-z-lightbox:1000;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);--spring:cubic-bezier(.34, 1.56, .64, 1);--spring-touch:cubic-bezier(.34, 1.2, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--motion-fast:.16s;--motion-base:.24s;--motion-slow:.34s;--attention-pulse-color:#52b78873;--attention-pulse-spread:12px}@media (hover:none) and (pointer:coarse){:root{--spring:var(--spring-touch);--motion-fast:.12s;--motion-base:.2s;--motion-slow:.28s}}.foretmap-emoji-text-mixed{font-family:var(--font-sans-with-emoji)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0,0)}}@keyframes popIn{0%{opacity:0;transform:scale(.88)translateY(12px)}to{opacity:1;transform:scale(1)translate(0,0)}}@keyframes toastIn{0%{opacity:0;transform:translateY(16px)scale(.92)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes shake{0%,to{transform:translate(0,0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes statPop{0%{opacity:0;transform:scale(.88)translateY(10px)}to{opacity:1;transform:scale(1)translate(0,0)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes attentionPulse{0%{box-shadow:0 0 0 0 var(--attention-pulse-color)}70%{box-shadow:0 0 0 var(--attention-pulse-spread,12px) var(--attention-pulse-color-end,#52b78800)}to{box-shadow:0 0 0 0 var(--attention-pulse-color-end,#52b78800)}}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}@keyframes heroStagger{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translate(0,0)}}@keyframes kenBurns{0%{background-position:var(--gl-hero-focal-x,50%) var(--gl-hero-focal-y,50%);background-size:100%}33%{background-position:calc(var(--gl-hero-focal-x,50%) + 2%) calc(var(--gl-hero-focal-y,50%) + 1%);background-size:102%}66%{background-position:calc(var(--gl-hero-focal-x,50%) - 1%) calc(var(--gl-hero-focal-y,50%) + 2%);background-size:103%}to{background-position:var(--gl-hero-focal-x,50%) var(--gl-hero-focal-y,50%);background-size:100%}}.fade-in,.stagger>*{animation:fadeIn var(--motion-base) var(--ease-out) both}.stagger>:first-child{animation-delay:40ms}.stagger>:nth-child(2){animation-delay:80ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.16s}.stagger>:nth-child(5){animation-delay:.2s}.stagger>:nth-child(n+6){animation-delay:.22s}.animate-pop{animation:popIn var(--fm-modal-pop-duration,.28s) var(--spring) forwards}.is-attention-pulse{animation:2s ease-in-out infinite attentionPulse}.scroll-progress{width:0%;height:4px;z-index:var(--fm-z-nav);pointer-events:none;background:linear-gradient(90deg, var(--scroll-progress-start,#52b788), var(--scroll-progress-end,#2d6a4f));transition:width .1s ease-out;position:fixed;top:0;left:0}.scroll-reveal{opacity:0;transition:opacity var(--motion-base) var(--ease-out), transform var(--motion-base) var(--ease-out);transform:translateY(12px)}.scroll-reveal.is-visible{opacity:1;transform:translate(0,0)}.hero-stagger>*{opacity:0;animation:heroStagger .5s var(--ease-out) both}.hero-stagger>:first-child{animation-delay:.2s}.hero-stagger>:nth-child(2){animation-delay:.45s}.hero-stagger>:nth-child(3){animation-delay:.65s}.hero-stagger>:nth-child(4){animation-delay:.85s}.hero-stagger>:nth-child(n+5){animation-delay:1s}.hero-ken-burns{animation:heroFadeIn 2s var(--ease-out) forwards}@media (prefers-reduced-motion:no-preference) and (width>=769px){.hero-ken-burns{animation:heroFadeIn 2s var(--ease-out) forwards, kenBurns 30s ease-in-out 2.5s infinite}}img:not([data-no-lightbox]){cursor:zoom-in}.fm-lightbox-overlay img,.map-view-canvas img,.gl-board-fit-layer img,button img,label img,.visit-map-mascot img,.img-upload-area img,.gl-brand-logo,.gl-auth-logo{cursor:inherit}.fm-lightbox-overlay{z-index:var(--fm-z-lightbox);animation:overlayFadeIn var(--motion-fast) var(--ease-out) both;background:#000000ed;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.fm-lightbox-panel{max-width:95vw;animation:popIn var(--motion-base) var(--spring) both;flex-direction:column;align-items:center;display:flex;position:relative}.fm-lightbox-image{object-fit:contain;border-radius:10px;max-width:95vw;max-height:85vh;box-shadow:0 8px 40px #00000080}.fm-lightbox-caption{color:#fffc;font-size:var(--text-base);text-align:center;max-width:80vw;margin-top:12px}.fm-lightbox-close{color:var(--surface-plain);width:44px;height:44px;font-size:var(--text-md);cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:16px;right:16px}@media (hover:hover) and (pointer:fine){.fm-lightbox-close{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}@media (prefers-reduced-motion:no-preference){.fade-in,.stagger>*,.animate-pop,.fm-toast,.fm-modal-panel,.modal,.log-modal{backface-visibility:hidden}}@media (prefers-reduced-motion:reduce){.fade-in,.stagger>*,.animate-pop,.fm-toast,.fm-modal-panel,.modal,.log-modal,.pin-card,.hero-stagger>*,.hero-ken-burns,.fm-lightbox-overlay,.fm-lightbox-panel{opacity:1!important;animation:none!important;transform:none!important}.scroll-reveal{opacity:1!important;transition:none!important;transform:none!important}.scroll-progress{transition:none!important}.is-attention-pulse{animation:none!important}.btn,.gl-btn,.top-tab,.task-card,.visit-map-ctrl{transition-duration:.01ms!important}.btn:active,.gl-btn:active,.task-card:active,.top-tab:active,.visit-map-ctrl:active{transform:none!important}}:root{--fm-modal-overlay-bg:#0c1e1485;--fm-modal-overlay-z:var(--fm-z-modal);--fm-modal-panel-bg:var(--surface-1,var(--surface-plain));--fm-modal-panel-border:#ffffff75;--fm-modal-panel-shadow:var(--shadow-strong,0 18px 42px #14362529);--fm-modal-pop-duration:.28s}.fm-modal-overlay,.modal-overlay{z-index:var(--fm-modal-overlay-z);padding:max(16px, var(--safe-top)) 16px max(16px, var(--safe-bottom));background:var(--fm-modal-overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden auto}.fm-modal-panel,.modal,.log-modal{z-index:1;box-sizing:border-box;background:var(--fm-modal-panel-bg);min-width:0;min-height:0;padding:20px 20px calc(20px + var(--safe-bottom));width:min(100%,100vw - 32px);max-width:min(920px,100vw - 32px);max-height:min(90vh, calc(100vh - var(--safe-top) - var(--safe-bottom) - 32px));max-height:min(90dvh, calc(100dvh - var(--safe-top) - var(--safe-bottom) - 32px));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border:1px solid var(--fm-modal-panel-border);box-shadow:var(--fm-modal-panel-shadow);animation:popIn var(--fm-modal-pop-duration) var(--spring) forwards;border-radius:20px;flex:0 auto;position:relative;overflow-y:auto}@media (width<=720px){.fm-modal-overlay,.modal-overlay{align-items:flex-start}.fm-modal-overlay>.fm-modal-panel:not(.fm-modal-panel--scroll-body),.modal-overlay>.fm-modal-panel:not(.fm-modal-panel--scroll-body){height:auto;max-height:none;overflow:visible}}@media (hover:none) and (pointer:coarse){.fm-modal-overlay,.modal-overlay{-webkit-backdrop-filter:none;--fm-modal-overlay-bg:#0c1e14b8}}@media (prefers-reduced-motion:reduce){.fm-modal-panel,.modal,.log-modal,.pin-card{opacity:1!important;animation:none!important;transform:none!important}}.app-dialog{max-width:420px}.app-dialog__message{line-height:var(--lh-normal,1.45);white-space:pre-line;overflow-wrap:anywhere;margin:0 0 14px}.app-dialog__actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}:root{--fm-bottom-sheet-z:var(--fm-z-modal);--fm-bottom-sheet-overlay-bg:var(--fm-modal-overlay-bg,#0c1e1485);--fm-bottom-sheet-bg:var(--gl-surface,var(--surface-1,var(--surface-plain)));--fm-bottom-sheet-fg:var(--gl-color-text,var(--text,#1f2a24));--fm-bottom-sheet-border:var(--gl-border,var(--border,#0000001f));--fm-bottom-sheet-radius:var(--gl-radius-md,20px);--fm-bottom-sheet-shadow:var(--gl-shadow-md,var(--shadow-strong,0 -12px 36px #1436252e));--fm-bottom-sheet-safe-bottom:var(--safe-bottom,env(safe-area-inset-bottom,0px));--fm-bottom-sheet-full:calc(100dvh - var(--safe-top,env(safe-area-inset-top,0px)) - 24px);--fm-bottom-sheet-duration:var(--motion-base,.24s)}.fm-bottom-sheet-overlay{z-index:var(--fm-bottom-sheet-z);background:var(--fm-bottom-sheet-overlay-bg);animation:fmBottomSheetFade var(--fm-bottom-sheet-duration) ease-out both;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.fm-bottom-sheet-overlay--pass-through{pointer-events:none;background:0 0;animation:none}.fm-bottom-sheet-overlay--pass-through .fm-bottom-sheet{pointer-events:auto}.fm-bottom-sheet{--fm-bottom-sheet-h:55dvh;width:100%;max-width:100%;height:var(--fm-bottom-sheet-h);max-height:var(--fm-bottom-sheet-full);background:var(--fm-bottom-sheet-bg);min-height:0;color:var(--fm-bottom-sheet-fg);border-radius:var(--fm-bottom-sheet-radius) var(--fm-bottom-sheet-radius) 0 0;box-shadow:var(--fm-bottom-sheet-shadow);transition:height var(--fm-bottom-sheet-duration) var(--ease-out,ease-out);animation:fmBottomSheetUp var(--fm-bottom-sheet-duration) var(--ease-out,ease-out) both;will-change:height;outline:none;flex-direction:column;display:flex;position:relative;overflow:hidden}.fm-bottom-sheet.is-snap-peek{--fm-bottom-sheet-h:30dvh}.fm-bottom-sheet.is-snap-half{--fm-bottom-sheet-h:55dvh}.fm-bottom-sheet.is-snap-full{--fm-bottom-sheet-h:var(--fm-bottom-sheet-full)}.fm-bottom-sheet.is-dragging{-webkit-user-select:none;user-select:none;transition:none}.fm-bottom-sheet__handle{cursor:grab;touch-action:none;flex:none;justify-content:center;align-items:center;min-height:24px;padding:8px 0 4px;display:flex}.fm-bottom-sheet.is-dragging .fm-bottom-sheet__handle{cursor:grabbing}.fm-bottom-sheet__grip{background:color-mix(in srgb, currentColor 22%, transparent);border-radius:999px;width:44px;height:5px;display:block}.fm-bottom-sheet__head{touch-action:none;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:4px 12px 8px 16px;display:flex}.fm-bottom-sheet__title{min-width:0;font-size:var(--text-base,1rem);font-weight:var(--fw-bold,700);color:inherit;flex:auto;align-items:center;gap:6px;margin:0;line-height:1.3;display:inline-flex}.fm-bottom-sheet__close{border-radius:var(--gl-radius-control,12px);min-width:44px;min-height:44px;color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:inline-flex}.fm-bottom-sheet__close:hover,.fm-bottom-sheet__close:focus-visible{background:color-mix(in srgb, currentColor 10%, transparent)}.fm-bottom-sheet__close:focus-visible{outline:2px solid var(--gl-border-focus,var(--leaf,#2f7d4e));outline-offset:2px}.fm-bottom-sheet__body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;padding:0 16px calc(12px + var(--fm-bottom-sheet-safe-bottom));flex:auto;overflow-y:auto}.fm-bottom-sheet__foot{padding:10px 16px calc(12px + var(--fm-bottom-sheet-safe-bottom));border-top:1px solid var(--fm-bottom-sheet-border);background:var(--fm-bottom-sheet-bg);flex:none;gap:8px;display:flex}.fm-bottom-sheet__foot>.btn,.fm-bottom-sheet__foot>button{flex:1;min-height:44px}:is(.fm-bottom-sheet__foot~.fm-bottom-sheet__body,.fm-bottom-sheet:has(.fm-bottom-sheet__foot) .fm-bottom-sheet__body){padding-bottom:12px}.fm-bottom-sheet-overlay:has(.fm-bottom-sheet--dialog){padding:max(16px, var(--safe-top,0px)) 16px max(16px, var(--fm-bottom-sheet-safe-bottom));align-items:center}.fm-bottom-sheet.fm-bottom-sheet--dialog{width:min(100%,560px);height:auto;max-height:min(85dvh, var(--fm-bottom-sheet-full));border-radius:var(--fm-bottom-sheet-radius);animation-name:fmBottomSheetPop}.fm-bottom-sheet--dialog .fm-bottom-sheet__head{touch-action:auto;padding-top:12px}@keyframes fmBottomSheetUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translate(0,0)}}@keyframes fmBottomSheetPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes fmBottomSheetFade{0%{opacity:0}to{opacity:1}}@media (hover:none) and (pointer:coarse){.fm-bottom-sheet-overlay{--fm-bottom-sheet-overlay-bg:var(--fm-modal-overlay-bg,#0c1e14b8)}}@media (prefers-reduced-motion:reduce){.fm-bottom-sheet-overlay,.fm-bottom-sheet{transition:none;animation:none}}.fm-bottom-sheet[data-reduced-motion=true]{transition:none;animation:none}.fm-bottom-sheet-overlay:has(.fm-bottom-sheet[data-reduced-motion=true]){transition:none;animation:none}:root{--fm-toast-bg:linear-gradient(160deg, #1a4731f5, #1a4731e0);--fm-toast-color:#fff;--fm-toast-border:#ffffff2e;--fm-toast-shadow:0 16px 30px #1a473142;--fm-toast-bottom:calc(var(--bottom-nav-height,72px) + var(--safe-bottom) + 12px)}.fm-toast-anchor{left:50%;bottom:var(--fm-toast-bottom);z-index:var(--fm-z-toast);pointer-events:none;width:min(90vw,560px);max-width:min(90vw,560px);position:fixed;transform:translate(-50%)}.fm-toast{background:var(--fm-toast-bg);color:var(--fm-toast-color);font-size:var(--text-sm);white-space:normal;text-wrap:balance;text-align:center;border:1px solid var(--fm-toast-border);box-shadow:var(--fm-toast-shadow);animation:toastIn .35s var(--spring) forwards;border-radius:16px;padding:11px 16px;line-height:1.35}.fm-toast--inline{animation:fadeIn var(--motion-base) var(--ease-out) both;width:100%;max-width:none;margin-top:4px;position:static;transform:none}.toast{background:var(--fm-toast-bg);color:var(--fm-toast-color);font-size:var(--text-sm);white-space:normal;text-wrap:balance;text-align:center;border:1px solid var(--fm-toast-border);box-shadow:var(--fm-toast-shadow);animation:toastIn .35s var(--spring) forwards;border-radius:16px;padding:11px 16px;line-height:1.35}.toast:not(.toast--inline){left:50%;bottom:var(--fm-toast-bottom);z-index:var(--fm-z-toast);pointer-events:none;max-width:min(90vw,560px);position:fixed;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.fm-toast,.toast{opacity:1!important;animation:none!important;transform:translate(-50%)!important}.fm-toast--inline,.toast--inline{transform:none!important}}.shared-hint{font-size:var(--text-sm);color:var(--gl-color-text-muted,#5b6b66);margin:4px 0}.shared-error{color:var(--gl-ink-danger,var(--ink-danger))}.shared-success{color:var(--gl-ink-success,var(--ink-success))}.shared-btn{min-height:var(--gl-tap-target,44px);border:1px solid var(--gl-border,#1a47312e);border-radius:var(--gl-radius-control,10px);background:var(--gl-surface,var(--surface-plain));color:var(--gl-color-primary,#1a4731);font:inherit;font-weight:var(--fw-semibold);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--motion-base,.18s) var(--spring,ease), background var(--motion-fast,.12s) var(--ease-out,ease), border-color var(--motion-fast,.12s) var(--ease-out,ease), box-shadow var(--motion-fast,.12s) var(--ease-out,ease);justify-content:center;align-items:center;gap:8px;padding:8px 16px;line-height:1.25;display:inline-flex}@media (hover:hover){.shared-btn:hover{box-shadow:var(--gl-shadow-sm,0 5px 16px #1a47311f);transform:translateY(-1px)}}.shared-btn:active{box-shadow:none;transform:scale(.95)}.shared-btn:focus-visible{outline:2px solid var(--gl-border-focus,#2d6a4f);outline-offset:2px}.shared-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.shared-btn--primary{border-color:var(--gl-color-primary,#1a4731);background:var(--gl-color-primary,#1a4731);color:var(--surface-plain)}.shared-btn--ghost{background:0 0;border-color:#0000}.shared-btn--danger{border-color:var(--accent-danger-solid);background:var(--accent-danger,#fee2e2);color:var(--ink-danger,var(--ink-danger))}.shared-btn--block{width:100%;display:flex}.shared-btn__icon{line-height:1;display:inline-flex}.shared-btn.is-loading{cursor:progress}.shared-btn--sm{font-size:var(--text-sm);min-height:36px;padding:6px 12px}@media (pointer:coarse){.shared-btn--sm{min-height:var(--gl-tap-target,44px)}}.shared-btn--row{width:auto;color:inherit;font-weight:inherit;text-align:left;background:0 0;border-color:#0000;flex-wrap:wrap;flex:1;justify-content:flex-start;gap:2px 6px;padding:8px 10px}@media (hover:hover){.shared-btn--row:hover{box-shadow:none;background:var(--gl-surface-muted,#0000000a);transform:none}}.shared-btn--row:active{transform:none}.ui-icon{vertical-align:-.185em;flex-shrink:0}details.admin-section{margin-top:12px}details.admin-section>summary{font-weight:var(--fw-semibold);font-size:var(--text-md)}.admin-section__body{border-top:1px solid #b7e4c799;padding:10px}.gl-subtabs{flex-wrap:wrap;gap:6px;margin:8px 0 16px;display:flex}.gl-subtabs button{border:1px solid color-mix(in srgb, var(--surface-plain) 55%, var(--gl-color-primary,var(--forest,#1a4731)) 45%);background:color-mix(in srgb, var(--surface-plain) 76%, var(--gl-color-secondary,var(--parchment,#f2e8d5)) 24%);color:var(--gl-color-primary,var(--forest,#1a4731));border-radius:var(--gl-radius-pill,999px);cursor:pointer;min-height:40px;transition:transform var(--motion-fast,.12s) var(--ease-out,ease), box-shadow var(--motion-fast,.12s) var(--ease-out,ease);padding:6px 14px}.gl-subtabs button.is-active{background:var(--gl-color-primary,var(--forest,#1a4731));color:var(--surface-plain);border-color:var(--gl-color-primary,var(--forest,#1a4731));box-shadow:var(--gl-shadow-sm,0 5px 16px #1a47311f)}.gl-subtabs button:hover{transform:translateY(-1px)}.fm-visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fm-surface-field{border:1px solid var(--gl-border,#1a47312e);border-radius:var(--gl-radius-control,10px);margin:10px 0 12px;padding:10px 12px}.fm-surface-field__legend{font-size:var(--text-sm);font-weight:var(--fw-semibold);padding:0 4px}.fm-surface-field__options{flex-wrap:wrap;gap:8px 16px;display:flex}.fm-surface-field__option{min-height:var(--tap-target,44px);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.fm-surface-field__option input{width:18px;height:18px}.fm-surface-field__hint{color:var(--ink-soft,var(--ink-soft));font-size:var(--text-xs)}.fm-surface-field__warning{color:var(--ink-warning,var(--ink-warning));font-size:var(--text-sm);margin:6px 0 0}:root{--fm-control-bg:var(--cream,var(--gl-surface,var(--surface-plain)));--fm-control-bg-focus:#fff;--fm-control-bg-disabled:var(--gl-surface-muted,#0000000a);--fm-control-ink:var(--forest,var(--gl-color-text,#1a4731));--fm-control-ink-disabled:var(--ink-soft,var(--ink-soft));--fm-control-border:var(--mint,var(--gl-border,#1a473138));--fm-control-border-hover:var(--sage,var(--gl-color-primary,#2d6a4f));--fm-control-border-focus:var(--sage,var(--gl-border-focus,#2d6a4f));--fm-control-border-width:1.5px;--fm-control-ring:0 0 0 3px #52b7882e;--fm-control-radius:10px;--fm-control-radius-sm:8px;--fm-control-min-h:44px;--fm-control-min-h-sm:34px;--fm-control-pad-y:11px;--fm-control-pad-x:14px;--fm-control-chevron-gutter:34px;--fm-control-chevron:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%228%22%20viewBox%3D%220%200%2012%208%22%3E%3Cpath%20d%3D%22M1.4%201.6%206%206.2l4.6-4.6%22%20fill%3D%22none%22%20stroke%3D%22%231a4731%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E);--fm-control-chevron-disabled:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%228%22%20viewBox%3D%220%200%2012%208%22%3E%3Cpath%20d%3D%22M1.4%201.6%206%206.2l4.6-4.6%22%20fill%3D%22none%22%20stroke%3D%22%238aa79a%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E)}.fm-field{flex-direction:column;gap:6px;min-width:0;display:flex}.fm-label,.fm-field__label{font-size:var(--text-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight,1.25);color:var(--leaf,var(--gl-color-primary,#2d6a4f))}.fm-label--filter{font-size:var(--text-xs);color:var(--ink-soft,var(--ink-soft))}.fm-field__hint{font-size:var(--text-xs);color:var(--ink-soft,var(--ink-soft));line-height:var(--lh-normal,1.45)}.fm-field__error{font-size:var(--text-sm);color:var(--ink-danger,var(--ink-danger))}.fm-input,.fm-select,.fm-textarea,.form-input,.form-select{box-sizing:border-box;width:100%;min-width:0;min-height:var(--fm-control-min-h);padding:var(--fm-control-pad-y) var(--fm-control-pad-x);border:var(--fm-control-border-width) solid var(--fm-control-border);border-radius:var(--fm-control-radius);background-color:var(--fm-control-bg);color:var(--fm-control-ink);font-family:inherit;font-size:var(--text-base);transition:border-color var(--motion-fast,.12s) var(--ease-out,ease), background var(--motion-fast,.12s) var(--ease-out,ease), box-shadow var(--motion-fast,.12s) var(--ease-out,ease);outline:none;line-height:1.25}@media (hover:hover){.fm-input:hover:not(:disabled):not([readonly]),.fm-select:hover:not(:disabled),.fm-textarea:hover:not(:disabled):not([readonly]),.form-input:hover:not(:disabled):not([readonly]),.form-select:hover:not(:disabled){border-color:var(--fm-control-border-hover)}}.fm-input:focus,.fm-select:focus,.fm-textarea:focus,.form-input:focus,.form-select:focus{border-color:var(--fm-control-border-focus);background-color:var(--fm-control-bg-focus);box-shadow:var(--fm-control-ring)}.fm-input:disabled,.fm-select:disabled,.fm-textarea:disabled,.form-input:disabled,.form-select:disabled{background-color:var(--fm-control-bg-disabled);color:var(--fm-control-ink-disabled);cursor:not-allowed}.fm-input::placeholder,.fm-textarea::placeholder,.form-input::placeholder{color:var(--ink-soft,var(--ink-soft));opacity:.8}.fm-textarea{resize:vertical;min-height:92px}.fm-select,.form-select{appearance:none;cursor:pointer;padding-right:var(--fm-control-chevron-gutter);background-image:var(--fm-control-chevron);background-position:right 12px center;background-repeat:no-repeat;background-size:12px 8px}.fm-select:disabled,.form-select:disabled{background-image:var(--fm-control-chevron-disabled);cursor:not-allowed}.fm-select option,.form-select option{font-family:inherit}.fm-select[multiple],.form-select[multiple],.fm-select[size]:not([size="1"]),.form-select[size]:not([size="1"]){min-height:0;padding-right:var(--fm-control-pad-x);cursor:auto;background-image:none}.fm-control--sm{min-height:var(--fm-control-min-h-sm);border-radius:var(--fm-control-radius-sm);font-size:var(--text-sm);padding:6px 10px}.fm-control--sm.fm-select,.fm-control--sm.form-select{background-position:right 9px center;padding-right:28px}.fm-control--auto{width:auto}.hint,.muted{font-size:var(--text-sm);color:var(--ink-soft,var(--ink-soft));line-height:var(--lh-normal,1.45)}.form-error,.text-danger{color:var(--ink-danger,var(--ink-danger))}.form-error{font-size:var(--text-sm);line-height:var(--lh-normal,1.45)}:root{--fm-panel-bg:var(--surface-1,var(--surface-plain));--fm-panel-border:var(--outline-soft,#1a473126);--fm-panel-radius:14px;--fm-panel-shadow:var(--shadow-soft,0 10px 26px #1a473114);--fm-panel-pad:var(--space-card,14px);--fm-table-rule:var(--outline-soft,#1a473126);--fm-table-pad-y:8px;--fm-table-pad-x:10px;--fm-table-font:var(--text-sm)}.fm-panel,.card{box-sizing:border-box;min-width:0;max-width:100%;padding:var(--fm-panel-pad);border:1px solid var(--fm-panel-border);border-radius:var(--fm-panel-radius);background-color:var(--fm-panel-bg);box-shadow:var(--fm-panel-shadow)}.fm-panel--flush{padding:0;overflow:hidden}.fm-panel--quiet{box-shadow:none;background-color:#0000}.fm-panel__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.fm-panel__title{font-size:var(--text-md);color:var(--forest,var(--gl-color-text,#1a4731));margin:0}.fm-panel__body{min-width:0}.fm-table-wrap{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.fm-table{border-collapse:collapse;width:100%;font-size:var(--fm-table-font)}.fm-table th,.fm-table td{padding:var(--fm-table-pad-y) var(--fm-table-pad-x);border-bottom:1px solid var(--fm-table-rule);text-align:left;vertical-align:middle}.fm-table th{color:var(--ink-soft,var(--ink-soft));font-weight:var(--fw-semibold);white-space:nowrap}.fm-table tbody tr:last-child td{border-bottom:none}.fm-table tr.is-muted td{color:var(--ink-soft,var(--ink-soft))}.fm-table tr.is-selected td{background-color:color-mix(in srgb, var(--leaf,#2d6a4f) 8%, transparent)}.fm-table td.fm-table__actions{white-space:nowrap;text-align:right}.fm-table--dense{--fm-table-pad-y:6px;--fm-table-pad-x:8px}.fm-table--zebra tbody tr:nth-child(2n){background-color:color-mix(in srgb, var(--fm-table-rule) 22%, transparent)}@media (hover:hover){.fm-table--zebra tbody tr:hover{background-color:color-mix(in srgb, var(--fm-table-rule) 38%, transparent)}}.fm-table--wrap th,.fm-table--wrap td{vertical-align:top;overflow-wrap:anywhere}.fm-map-action{min-height:var(--tap-target,44px);background:var(--gl-surface,var(--surface-plain));color:var(--gl-color-primary,#1a4731);font:inherit;font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap;transition:background-color var(--motion-fast,.12s) var(--ease-out,ease), box-shadow var(--motion-fast,.12s) var(--ease-out,ease), transform var(--motion-base,.18s) var(--spring,ease);border:1px solid #0000;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 14px;display:inline-flex;box-shadow:0 2px 10px #00000024}.fm-map-action:focus-visible{outline:2px solid var(--gl-border-focus,#2d6a4f);outline-offset:2px}.fm-map-action--primary{background:var(--gl-color-primary,#1a4731);color:var(--surface-plain)}.fm-map-action--display{color:var(--surface-cool);background:#0f172ad1}.fm-map-action.is-active{box-shadow:0 0 0 2px var(--gl-border-focus,#2d6a4f)}.fm-map-action.is-muted{opacity:.6}.fm-map-action__icon{line-height:1;font-size:var(--text-md)}.fm-map-action__label--short{display:none}.fm-map-action--icon-only{min-width:var(--tap-target,44px);justify-content:center;gap:0;padding:8px}.fm-map-action--icon-only .fm-map-action__icon{font-size:var(--text-lg)}@media (width<=480px){.fm-map-action__label--long{display:none}.fm-map-action__label--short{display:inline}}
