/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#062c33;--muted:#627279;--paper:#f7faf8;--surface:#fff;--line:#dbe7e3;--lime:#b8ff23;--lime-2:#8fe81d;--teal:#087f78;--blue:#15427d;--coral:#ff7b54;--amber:#ffc247;--shadow:0 16px 42px #052c3321;--radius:8px;--nav-height:76px;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg, #b8ff231a, transparent 260px), var(--paper);min-width:320px;min-height:100svh;margin:0}button,input,textarea,select{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:0}input,textarea,select{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:46px;color:var(--ink);background:#fff;outline:none;padding:10px 12px}textarea{resize:vertical;min-height:112px}label{color:var(--muted);gap:8px;font-size:13px;font-weight:750;display:grid}.eyebrow{color:var(--teal);letter-spacing:0;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:900;display:inline-flex}.primary-button,.secondary-button,.ghost-button,.fab-button,.primary-link,.secondary-link,.text-link{border-radius:var(--radius);border:0;justify-content:center;align-items:center;gap:8px;min-height:46px;font-weight:850;display:inline-flex}.primary-button,.fab-button,.primary-link{background:var(--ink);color:#fff;box-shadow:0 10px 24px #062c3333}.secondary-button{color:var(--ink);background:#087f7814;border:1px solid #087f7840}.secondary-link{color:var(--ink);background:#fff;border:1px solid #087f783d}.ghost-button{border:1px solid var(--line);color:var(--ink);background:#fff}.text-link{min-height:auto;color:var(--blue);justify-content:flex-start;font-size:13px}.full-width{width:100%}.icon-button,.avatar-button{border:1px solid var(--line);border-radius:var(--radius);width:40px;height:40px;color:var(--ink);background:#ffffffe0;place-items:center;display:inline-grid}.avatar-button{background:var(--ink);color:#fff;border-color:var(--ink);font-weight:900}.danger{color:#b42318}.error-text,.success-text{border-radius:var(--radius);padding:10px 12px;font-size:13px;font-weight:780}.error-text{color:#9a3412;background:#ff7b5424}.success-text{color:#176b3a;background:#b8ff233d}.splash-screen,.access-denied{text-align:center;align-content:center;place-items:center;gap:18px;min-height:100svh;padding:24px;display:grid}.brand-orbit{aspect-ratio:1.45;background:radial-gradient(circle,#b8ff2342,#0000 68%);border-radius:28px;place-items:center;width:min(360px,88vw);display:grid}.brand-orbit img{object-fit:contain;width:92%;height:92%}.login-screen{grid-template-columns:minmax(0,1fr) 390px;align-items:center;gap:28px;width:min(1120px,100%);min-height:100svh;margin:0 auto;padding:28px;display:grid}.login-visual{color:#fff;min-height:620px;box-shadow:var(--shadow);background:radial-gradient(circle at 70% 22%,#b8ff2361,#0000 24%),linear-gradient(135deg,#06323a,#0a6f74 56%,#15366f);border-radius:20px;align-content:end;gap:24px;padding:34px;display:grid;overflow:hidden}.brand-card{place-items:center;min-height:310px;display:grid}.brand-card img{object-fit:contain;filter:drop-shadow(0 22px 28px #0000003d);width:min(620px,100%);max-height:360px}.login-copy{gap:12px;max-width:660px;display:grid}.login-copy h1{font-size:clamp(36px,7vw,72px);font-weight:950;line-height:1.04}.login-copy p{color:#ffffffc7;max-width:620px;font-size:17px}.login-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffeb;border-radius:16px;gap:16px;padding:24px;display:grid}.login-panel h2{font-size:25px;font-weight:930}.line-login-button{border-radius:var(--radius);color:#fff;background:#06c755;border:0;justify-content:center;align-items:center;gap:9px;min-height:52px;font-size:16px;font-weight:900;display:inline-flex;box-shadow:0 12px 26px #06c75538}.line-login-button:disabled{opacity:.58}.login-divider{color:var(--muted);align-items:center;gap:10px;font-size:12px;font-weight:850;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.quick-login-row{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;display:grid}.quick-login-row .ghost-button{min-height:42px}.app-shell{background:linear-gradient(180deg, #b8ff2329, transparent 210px), var(--paper);border-inline:1px solid #062c3314;max-width:460px;min-height:100svh;margin:0 auto;position:relative}.mobile-header{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7faf8e0;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;min-height:74px;padding:12px 16px;display:grid;position:sticky;top:0}.mobile-header strong{font-size:18px;font-weight:920;display:block}.content-frame{min-height:calc(100svh - var(--nav-height) - 74px);padding:8px 14px calc(var(--nav-height) + 18px)}.page-stack,.collect-page,.map-page{gap:14px;display:grid}.bottom-nav{z-index:30;width:min(460px,100%);height:var(--nav-height);padding:8px 8px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-top:1px solid #062c331a;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#718087;background:0 0;border:0;place-items:center;gap:2px;font-size:11px;font-weight:850;display:grid}.bottom-nav button svg{border-radius:999px;width:22px;height:22px;padding:3px}.bottom-nav .active{color:var(--ink)}.bottom-nav .active svg{background:var(--lime);box-shadow:0 0 18px #b8ff23b8}.search-box{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:20px 1fr;align-items:center;gap:8px;min-height:48px;padding:0 12px;display:grid}.search-box input{border:0;min-height:44px;padding-inline:0}.location-strip,.filter-panel,.empty-state{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 10px 28px #062c330a}.location-strip{justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.location-strip div{color:#526168;align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:760;display:flex}.location-strip svg{color:var(--teal);flex:none}.mini-button{min-height:34px;color:var(--ink);background:#087f7814;border:1px solid #087f7833;border-radius:999px;flex:none;padding:6px 10px;font-size:12px;font-weight:900}.mini-button:disabled,.chip-row button:disabled,.segmented-control button:disabled{cursor:not-allowed;opacity:.46}.filter-panel{gap:12px;padding:12px;display:grid}.filter-group{gap:8px;display:grid}.filter-group>span{color:var(--muted);font-size:12px;font-weight:900}.chip-row{scrollbar-width:none;gap:7px;padding-bottom:2px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip-row button,.segmented-control button{white-space:nowrap;border:1px solid var(--line);color:#526168;background:#f8fbfa;border-radius:999px;min-height:32px;padding:6px 10px;font-size:12px;font-weight:900}.chip-row .active,.segmented-control .active{background:var(--ink);color:#fff;border-color:#087f7842}.segmented-control{grid-template-columns:1fr 1fr;gap:8px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2{font-size:20px;font-weight:930}.metric-pill,.partner-badge,.muted-badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:26px;padding:5px 9px;font-size:11px;font-weight:900;display:inline-flex}.metric-pill,.partner-badge{background:var(--lime);color:var(--ink)}.muted-badge{color:var(--muted);background:#edf3f1}.venue-list,.record-list{gap:12px;display:grid}.venue-card,.profile-card,.level-panel,.scanner-panel,.admin-form,.admin-table{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 10px 28px #062c330f}.venue-card{padding:0;position:relative;overflow:hidden}.venue-card-summary{width:100%;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:52px 1fr;gap:12px;padding:12px 50px 12px 12px;display:grid}.venue-card-summary:focus-visible{outline-offset:-3px;outline:3px solid #087f783d}.venue-card.expanded{border-color:#087f7847}.partner-card{background:linear-gradient(120deg,#b8ff2340,#ffffffeb 45%),#fff;border-color:#8fe81db8}.venue-icon{border-radius:var(--radius);background:#062c330f;place-items:center;width:52px;height:52px;display:grid}.venue-main{gap:8px;min-width:0;display:grid}.venue-title-row{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.venue-title-row h3{font-size:16px;font-weight:920;line-height:1.18}.venue-main p,.drawer p,.level-panel p{color:var(--muted);font-size:13px;line-height:1.45}.meta-grid{color:#526168;gap:4px;font-size:12px;display:grid}.venue-tags{flex-wrap:wrap;gap:6px;display:flex}.venue-tags span{color:#526168;background:#edf3f1;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:880}.partner-card .venue-tags span{color:var(--ink);background:#b8ff233d}.venue-expand-hint{width:30px;height:30px;color:var(--teal);background:#087f7814;border-radius:999px;justify-content:center;align-items:center;gap:5px;display:inline-flex;position:absolute;bottom:12px;right:12px}.venue-expand-hint svg{transition:transform .16s}.venue-card.expanded .venue-expand-hint svg{transform:rotate(180deg)}.venue-details{background:#ffffffb8;border:1px solid #062c3314;border-radius:14px;gap:10px;margin:0 12px 12px 76px;padding:10px 12px;display:grid}.venue-detail-grid{grid-template-columns:42px minmax(0,1fr);align-items:baseline;gap:5px 8px;display:grid}.venue-detail-grid span{color:var(--muted);font-size:11px;font-weight:900}.venue-detail-grid strong{color:#526168;font-size:12px;font-weight:760;line-height:1.35}.empty-state{color:var(--muted);text-align:center;padding:18px;font-size:14px;font-weight:820}.role-action-panel{text-align:left;gap:10px;display:grid}.role-action-panel strong{color:var(--ink);font-size:15px}.role-action-panel span{color:var(--muted);line-height:1.45}.role-action-panel .secondary-button{width:100%}.collect-hero{color:#fff;background:radial-gradient(circle at 78% 42%,#b8ff23b8,#0000 22%),radial-gradient(circle at 70% 64%,#4dd8ae57,#0000 34%),linear-gradient(135deg,#031f27 0%,#065d65 54%,#133771 100%);border:1px solid #b8ff2338;border-radius:22px;grid-template-columns:minmax(0,1fr) 178px;align-items:center;gap:8px;min-height:214px;padding:22px 14px 18px 18px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 48px #0428313d,inset 0 1px #ffffff24}.collect-hero:before,.collect-hero:after{content:"";pointer-events:none;position:absolute}.collect-hero:before{border:1px solid #ffffff1f;border-radius:50%;width:240px;height:240px;top:-50px;right:-68px;box-shadow:0 0 0 28px #ffffff09,0 0 80px #b8ff235c}.collect-hero:after{background:linear-gradient(116deg,#ffffff24,#0000 22%),linear-gradient(#0000 72%,#0000002e);inset:0}.collect-copy{z-index:2;gap:8px;display:grid;position:relative}.collect-hero h1{align-items:flex-end;gap:8px;font-size:64px;font-weight:950;line-height:1;display:flex}.collect-hero h1 small{color:#ffffffa6;padding-bottom:7px;font-size:32px;font-weight:950}.collect-hero p{color:#ffffffd1;max-width:210px;font-size:16px;line-height:1.45}.hero-meter{background:#ffffff24;border-radius:999px;width:min(192px,100%);height:8px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1a}.hero-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--lime), #5effbd);height:100%;display:block;box-shadow:0 0 18px #b8ff23d1}.hero-art{z-index:2;place-items:center;min-width:172px;min-height:186px;display:grid;position:relative;transform:translate(12px)}.hero-3d-shell{contain:layout paint;border-radius:50%;place-items:center;width:174px;height:174px;display:grid;position:relative}.hero-3d-shell:before{border-radius:inherit;filter:blur(7px);content:"";background:radial-gradient(circle at 52% 44%,#b8ff2361,#0000 54%),radial-gradient(circle at 50% 58%,#13d6c433,#0000 64%);position:absolute;inset:15px}.hero-3d-shell:after{content:"";background:radial-gradient(#0000003d,#0000 70%);border-radius:50%;height:17px;position:absolute;bottom:18px;left:31px;right:31px}.hero-3d-placeholder{z-index:1;background:radial-gradient(circle at 35% 24%, #ffffff94, transparent 18%), radial-gradient(circle at 45% 42%, var(--lime), #55d86e 66%, #087f78);border-radius:50%;position:absolute;inset:24px;box-shadow:inset -16px -20px 24px #042f3647,0 0 24px #b8ff2359}.orbit-chip{color:var(--lime);text-transform:uppercase;background:#031f27ad;border:1px solid #fff3;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:950;position:absolute;bottom:18px;right:10px;box-shadow:0 10px 24px #00000038}.assembly-card{background:radial-gradient(circle at 50% 46%,#b8ff2338,#0000 24%),radial-gradient(circle at 50% 58%,#087f781f,#0000 36%),linear-gradient(#fff,#f5fbf8);border:1px solid #062c331a;border-radius:22px;gap:12px;min-height:388px;padding:16px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 44px #062c331a,inset 0 1px #ffffffd1}.assembly-header,.assembly-footer{z-index:2;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.assembly-header h2{font-size:20px;font-weight:950}.assembly-header strong,.assembly-footer strong{background:var(--ink);color:#fff;border-radius:999px;align-items:center;min-height:30px;padding:6px 10px;font-size:12px;font-weight:950;display:inline-flex}.assembly-stage{perspective:900px;min-height:286px;transform-style:preserve-3d;position:relative}.recycle-ball-canvas{z-index:1;contain:layout paint;width:100%;height:286px;position:relative;overflow:visible}.recycle-ball-canvas canvas{touch-action:pan-y;width:100%;height:100%;display:block}.recycle-ball-canvas.is-interactive{cursor:pointer;outline:none}.recycle-ball-canvas.is-interactive:focus-visible{border-radius:18px;box-shadow:0 0 0 3px #b8ff235c}.hero-ball-canvas{pointer-events:none;width:166px;height:166px}.rebuild-scene{contain:layout paint;place-items:center;width:100%;height:286px;display:grid;position:relative;overflow:visible}.rebuild-scene.compact{width:210px;height:210px;transform:translate(-8px)scale(1.04)}.rebuild-svg{width:min(330px,100%);height:min(330px,100%);overflow:visible}.rebuild-scene.compact .rebuild-svg{width:230px;height:230px}.rebuild-shadow{fill:#041f2733}.rebuild-orbit{fill:none;stroke:#087f7824;stroke-width:2px;transform-box:fill-box;transform-origin:50%}.rebuild-orbit.orbit-a{stroke-dasharray:18 12}.rebuild-orbit.orbit-b{stroke:#b8ff2333;stroke-dasharray:4 13}.core-halo circle{fill:#b8ff232e}.svg-fragment{--locked-transform:translate(0, 0) rotate(0deg) scale(1);--active-transform:translate(0, 0) rotate(0deg) scale(1);--active-hover-transform:translate(0, -8px) rotate(3deg) scale(1.04);--waiting-transform:translate(0, 0) rotate(0deg) scale(.78);--waiting-hover-transform:translate(0, -6px) rotate(3deg) scale(.8);transform-box:fill-box;transform-origin:50%;transition:transform .72s cubic-bezier(.2,.9,.18,1),opacity .36s}.svg-fragment.locked{opacity:1;transform:var(--locked-transform)}.svg-fragment.active{opacity:1;transform:var(--active-transform);will-change:transform;animation:1.9s ease-in-out infinite active-piece}.svg-fragment.waiting{opacity:.46;transform:var(--waiting-transform)}.fragment-body{fill:url(#fragmentGlow);stroke:#062c33c7;stroke-width:4px;stroke-linejoin:round}.fragment-edge{fill:none;stroke:url(#fragmentEdge);stroke-width:5px;stroke-linejoin:round;opacity:.75}.fragment-glow-path{fill:#b8ff2357;opacity:0}.svg-fragment.locked .fragment-glow-path,.svg-fragment.active .fragment-glow-path{opacity:.78}.fragment-hole{fill:#063642;stroke:#ffffff73;stroke-width:1.2px}.fragment-crack{fill:none;stroke:#031f27b8;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;opacity:.66}.energy-sparks{fill:var(--lime);stroke:var(--lime);stroke-width:3px;stroke-linecap:round;opacity:.72}.fragment-1{--active-transform:translate(-26px, -18px) rotate(-10deg) scale(1.02);--active-hover-transform:translate(-34px, -27px) rotate(-15deg) scale(1.05);--waiting-transform:translate(-96px, -84px) rotate(-28deg) scale(.72);--waiting-hover-transform:translate(-106px, -92px) rotate(-18deg) scale(.74)}.fragment-2{--active-transform:translate(18px, -28px) rotate(9deg) scale(1.02);--active-hover-transform:translate(28px, -38px) rotate(15deg) scale(1.05);--waiting-transform:translate(78px, -100px) rotate(22deg) scale(.72);--waiting-hover-transform:translate(88px, -108px) rotate(32deg) scale(.74)}.fragment-3{--active-transform:translate(30px, 10px) rotate(12deg) scale(1.02);--active-hover-transform:translate(42px, 4px) rotate(20deg) scale(1.05);--waiting-transform:translate(126px, -18px) rotate(48deg) scale(.72);--waiting-hover-transform:translate(138px, -22px) rotate(56deg) scale(.74)}.fragment-4{--active-transform:translate(20px, 28px) rotate(-8deg) scale(1.02);--active-hover-transform:translate(28px, 40px) rotate(-14deg) scale(1.05);--waiting-transform:translate(74px, 105px) rotate(18deg) scale(.72);--waiting-hover-transform:translate(80px, 116px) rotate(10deg) scale(.74)}.fragment-5{--active-transform:translate(-25px, 26px) rotate(8deg) scale(1.02);--active-hover-transform:translate(-36px, 38px) rotate(16deg) scale(1.05);--waiting-transform:translate(-110px, 70px) rotate(-36deg) scale(.72);--waiting-hover-transform:translate(-120px, 78px) rotate(-46deg) scale(.74)}.fragment-6{--active-transform:translate(-34px, -4px) rotate(-12deg) scale(1.02);--active-hover-transform:translate(-46px, -8px) rotate(-20deg) scale(1.05);--waiting-transform:translate(-125px, -28px) rotate(-58deg) scale(.72);--waiting-hover-transform:translate(-136px, -34px) rotate(-66deg) scale(.74)}.fragment-7{--active-transform:translate(0, -10px) rotate(2deg) scale(1.02);--active-hover-transform:translate(0, -23px) rotate(-3deg) scale(1.05);--waiting-transform:translate(4px, 132px) rotate(31deg) scale(.72);--waiting-hover-transform:translate(0, 144px) rotate(39deg) scale(.74)}@keyframes active-piece{0%,to{transform:var(--active-transform)}50%{transform:var(--active-hover-transform)}}.assembly-stage:before{content:"";background:radial-gradient(#052c332e,#0000 68%);border-radius:50%;height:32px;position:absolute;bottom:32px;left:13%;right:13%}.assembly-footer{border-radius:var(--radius);min-height:46px;color:var(--muted);background:#062c330d;padding:10px 12px;font-size:13px;font-weight:850}.piece-rail{grid-template-columns:repeat(7,1fr);gap:4px;min-width:86px;display:inline-grid}.piece-rail i{background:#cbdcda;border-radius:999px;width:8px;height:8px;display:block}.piece-rail .locked{background:var(--lime);box-shadow:0 0 10px #b8ff23b3}.piece-rail .active{background:#fff;box-shadow:0 0 0 3px #b8ff234d,0 0 12px #b8ff23e6}.reward-strip{color:#6f4800;background:radial-gradient(circle at 8% 30%,#ffc24752,#0000 28%),linear-gradient(90deg,#ffc2472e,#ffffffeb);border:1px solid #ffc24747;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:13px 14px;font-size:14px;display:flex;box-shadow:0 12px 28px #6f48000f}.fab-button{bottom:calc(var(--nav-height) + 12px);z-index:12;width:100%;min-height:66px;color:var(--ink);background:radial-gradient(circle at 28% 16%,#ffffffb8,#0000 22%),linear-gradient(135deg,#d6ff56,#a7ff0c 48%,#63e87f);border-radius:18px;font-size:18px;position:sticky;box-shadow:0 18px 34px #6ae82252,inset 0 1px #ffffff8a}.modal-backdrop{z-index:80;background:#062c336b;place-items:end center;padding:16px;display:grid;position:fixed;inset:0}.qr-modal{width:min(410px,100%);box-shadow:var(--shadow);background:#fff;border-radius:18px;justify-items:center;gap:12px;padding:22px;display:grid;position:relative}.close-button{position:absolute;top:12px;right:12px}.qr-frame{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--radius);background:#fff;place-items:center;width:min(288px,78vw);padding:12px;display:grid}.qr-frame img{width:100%;height:100%}.qr-loading{color:var(--muted);font-weight:850}.token-text{overflow-wrap:anywhere;max-width:100%;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.countdown-pill{background:#b8ff2352;border-radius:999px;padding:8px 12px;font-weight:900}.map-page{min-height:calc(100svh - var(--nav-height) - 96px);position:relative}.brand-map-card{min-height:calc(100svh - var(--nav-height) - 118px);background:radial-gradient(circle at 20% 16%,#b8ff2338,#0000 28%),linear-gradient(#f6fbf8,#eaf4f1);border:1px solid #087f7824;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 24px 52px #062c331a,inset 0 1px #ffffffd1}.map-toolbar{z-index:450;border-radius:var(--radius);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #ffffffb8;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex;position:absolute;top:12px;left:12px;right:12px;box-shadow:0 14px 34px #062c3324}.map-toolbar div{gap:2px;min-width:0;display:grid}.map-toolbar small{color:var(--muted);font-size:12px}.map-legend,.map-touch-hint{z-index:450;pointer-events:none;position:absolute;left:12px;right:12px}.map-legend{flex-wrap:wrap;gap:8px;display:flex;top:106px}.map-legend span,.map-touch-hint{width:fit-content;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;border:1px solid #ffffffb8;border-radius:999px;align-items:center;gap:7px;font-size:11px;font-weight:920;display:inline-flex;box-shadow:0 12px 28px #062c331f}.map-legend span{padding:5px 9px 5px 5px}.map-legend .map-ball-marker{border-width:2px;width:22px;height:22px;box-shadow:inset -4px -5px 7px #05464f24}.map-legend .map-ball-marker.partner{box-shadow:0 0 0 4px #b8ff2329,0 0 12px #b8ff23bd,inset -4px -5px 7px #05464f24}.map-legend .map-ball-marker i{width:3px;height:3px}.map-legend .map-ball-marker i:first-child{top:5px;left:6px}.map-legend .map-ball-marker i:nth-child(2){top:8px;right:5px}.map-legend .map-ball-marker i:nth-child(3){bottom:5px;left:10px}.map-touch-hint{padding:8px 11px;bottom:14px}.leaflet-map{z-index:1;min-height:calc(100svh - var(--nav-height) - 118px);background:radial-gradient(circle at 70% 24%,#b8ff2324,#0000 24%),#e7efe9;position:relative;overflow:hidden}.leaflet-map:before,.leaflet-map:after{z-index:420;pointer-events:none;content:"";position:absolute;inset:0}.leaflet-map:before{background:radial-gradient(circle at 72% 24%,#b8ff231f,#0000 28%),linear-gradient(#f7faf814,#f7faf81a 46%,#062c3308)}.leaflet-map:after{box-shadow:inset 0 0 0 1px #062c3314}.leaflet-map .leaflet-tile-pane{filter:saturate(.78)hue-rotate(28deg)brightness(1.02)contrast(.96)}.leaflet-map .map-labels-pane{opacity:.84;filter:saturate(.52)hue-rotate(18deg)brightness(.92)contrast(1.12)}.leaflet-map .map-labels-pane img.leaflet-tile{mix-blend-mode:multiply}.district-leaflet-label{pointer-events:none;place-items:center;display:grid}.district-leaflet-label span{color:#062c33b3;text-shadow:0 1px #fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff9e;border:1px solid #062c331a;border-radius:999px;justify-content:center;align-items:center;min-width:54px;min-height:22px;padding:3px 8px;font-size:11px;font-weight:920;line-height:1;display:inline-flex;box-shadow:0 6px 16px #062c3314}.leaflet-map .leaflet-control-zoom{border:1px solid #ffffffb8;border-radius:14px;overflow:hidden;box-shadow:0 12px 28px #062c3324}.leaflet-map .leaflet-control-zoom a{color:var(--ink);background:#ffffffeb;border:0;font-weight:950}.leaflet-map .leaflet-control-attribution{background:#ffffffbd;border-radius:999px 0 0;font-size:10px}.venue-leaflet-marker{place-items:center;display:grid}.concept-map{z-index:1;min-height:calc(100svh - var(--nav-height) - 118px);background:radial-gradient(circle at 72% 22%,#b8ff2333,#0000 22%),radial-gradient(circle at 24% 74%,#09917629,#0000 26%),linear-gradient(135deg,#f7fbf6,#e7f1ee 48%,#edf6e5);position:relative;overflow:hidden}.concept-map:before,.concept-map:after{z-index:2;pointer-events:none;content:"";position:absolute;inset:0}.concept-map:before{background:linear-gradient(90deg,#ffffff5c 1px,#0000 1px) 0 0/54px 54px,linear-gradient(0deg,#ffffff57 1px,#0000 1px) 0 0/54px 54px,radial-gradient(circle at 50% 42%,#0000 36%,#fff6)}.concept-map:after{box-shadow:inset 0 0 0 1px #062c3314}.concept-map-grid,.concept-zone,.concept-route,.concept-water,.concept-label,.concept-marker,.user-map-marker{z-index:3;position:absolute}.concept-map-grid{opacity:.42;background-image:radial-gradient(circle,#087f782e 1px,#0000 1px);background-size:28px 28px;inset:0}.concept-zone{background:#ffffff75;border-radius:48% 52% 44% 56%;box-shadow:inset 0 0 0 1px #087f780f}.zone-a{width:46%;height:31%;top:18%;left:8%;transform:rotate(-12deg)}.zone-b{width:50%;height:34%;top:33%;right:7%;transform:rotate(10deg)}.zone-c{width:44%;height:27%;bottom:10%;left:18%;transform:rotate(8deg)}.concept-route{background:linear-gradient(90deg,#ffffffb8,#ffffff38);border-radius:999px;height:22px;box-shadow:inset 0 0 0 1px #087f780d}.route-a{width:86%;top:42%;left:6%;transform:rotate(-19deg)}.route-b{width:78%;top:62%;left:14%;transform:rotate(22deg)}.route-c{width:54%;top:31%;left:22%;transform:rotate(47deg)}.concept-water{background:#1b80b41f;border-radius:50%;width:58%;height:44%;bottom:-12%;right:-18%;box-shadow:inset 0 0 0 1px #1b80b40f}.concept-label{color:#062c337a;background:#ffffff80;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:950}.label-north{top:28%;left:16%}.label-core{top:48%;right:24%}.label-river{bottom:24%;right:14%}.concept-marker{background:0 0;border:0;place-items:center;width:52px;height:52px;display:grid;transform:translate(-50%,-50%)}.concept-marker:focus-visible{outline-offset:4px;border-radius:999px;outline:3px solid #087f7852}.user-map-marker{pointer-events:none;justify-items:center;gap:4px;display:grid;transform:translate(-50%,-50%)}.user-map-marker span{background:var(--teal);border:3px solid #fff;border-radius:999px;width:16px;height:16px;display:block;box-shadow:0 0 0 7px #087f7829,0 8px 18px #062c3333}.user-map-marker strong{color:var(--ink);white-space:nowrap;background:#ffffffd1;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:920}.map-ball-marker{background:radial-gradient(circle at 33% 25%, #ffffffdb, transparent 18%), var(--lime);border:3px solid #06464f;border-radius:50%;width:42px;height:42px;transition:transform .16s,box-shadow .16s;display:inline-block;position:relative;box-shadow:inset -7px -9px 12px #05464f29,0 10px 18px #062c3329}.map-ball-marker.partner{box-shadow:0 0 0 7px #b8ff2338,0 0 24px #b8ff23eb,inset -7px -9px 12px #05464f29,0 10px 18px #062c3329}.map-ball-marker.selected{transform:scale(1.18);box-shadow:0 0 0 9px #b8ff2347,0 0 28px #b8ff23f2,inset -7px -9px 12px #05464f29,0 14px 24px #062c3333}.map-ball-marker.regular{background:radial-gradient(circle at 33% 25%,#ffffffe6,#0000 18%),#edf2f1;border-color:#829096}.map-ball-marker i{background:#06464f;border-radius:50%;width:5px;height:5px;position:absolute}.map-ball-marker.regular i{background:#829096}.map-ball-marker i:first-child{top:9px;left:10px}.map-ball-marker i:nth-child(2){top:14px;right:8px}.map-ball-marker i:nth-child(3){bottom:8px;left:17px}.drawer{left:14px;right:14px;bottom:calc(var(--nav-height) + 14px);z-index:500;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;gap:10px;padding:16px;display:grid;position:absolute}.map-drawer{background:radial-gradient(circle at 12% 18%,#b8ff232e,#0000 28%),#fff;border-color:#087f781f}.map-drawer-header{grid-template-columns:52px minmax(0,1fr);align-items:start;gap:12px;padding-right:34px;display:grid}.map-drawer-header h3{font-size:17px}.map-info-grid{background:#062c330a;border-radius:14px;grid-template-columns:44px minmax(0,1fr);gap:5px 9px;padding:10px 12px;display:grid}.map-info-grid span{color:var(--muted);font-size:11px;font-weight:920}.map-info-grid strong{color:#526168;min-width:0;font-size:12px;font-weight:760;line-height:1.38}.drawer-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.profile-card{grid-template-columns:74px 1fr;align-items:center;gap:14px;padding:16px;display:grid}.profile-avatar{background:radial-gradient(circle at 35% 28%, #ffffffb3, transparent 24%), linear-gradient(135deg, var(--lime), var(--teal));width:74px;height:74px;color:var(--ink);border-radius:50%;place-items:center;font-size:28px;font-weight:950;display:grid}.avatar-button img,.profile-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.profile-card h2{font-size:24px;font-weight:930}.profile-card p{color:var(--muted);font-size:13px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stats-grid div{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:4px;padding:14px 10px;display:grid}.stats-grid span{color:var(--muted);font-size:11px;font-weight:820}.stats-grid strong{font-size:22px;font-weight:950}.level-panel,.scanner-panel{gap:12px;padding:16px;display:grid}.progress-bar{background:#e7efec;border-radius:999px;height:12px;overflow:hidden}.progress-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--lime), var(--teal));min-width:3%;height:100%;display:block}.scan-actions{gap:10px;display:grid}.scanner-video{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);background:#111;width:100%}.record-row{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding:12px;display:grid}.record-row svg{width:32px;height:32px;color:var(--teal);background:#b8ff2347;border-radius:999px;padding:6px}.record-row div{gap:3px;display:grid}.record-row span{color:var(--muted);font-size:12px}.ball-icon{background:radial-gradient(circle at 33% 25%, #ffffffdb, transparent 18%), var(--lime);border:3px solid #06464f;border-radius:50%;width:42px;height:42px;transition:transform .16s;display:inline-block;position:relative;box-shadow:inset -7px -9px 12px #05464f29}.ball-icon>span{background:#06464f;border-radius:50%;width:5px;height:5px;position:absolute}.ball-icon>span:first-child{top:10px;left:12px}.ball-icon>span:nth-child(2){top:15px;right:9px}.ball-icon>span:nth-child(3){bottom:9px;left:19px}.ball-icon.glow{box-shadow:0 0 0 7px #b8ff232e,0 0 24px #b8ff23eb,inset -7px -9px 12px #05464f29}.ball-icon.empty{background:radial-gradient(circle at 33% 25%,#ffffffe6,#0000 18%),#edf2f1;border-color:#96a5aa}.ball-icon.empty>span{background:#96a5aa}.ball-icon.done{background:radial-gradient(circle at 33% 25%, #ffffffe6, transparent 18%), linear-gradient(135deg, var(--lime), #53d192);place-items:center;display:inline-grid}.ball-icon.done svg{z-index:2;color:var(--ink);position:relative}.ball-icon.broken i{border-left:3px solid #06464f;position:absolute;inset:8px 14px 8px 16px;transform:skew(-18deg)}.loading-stack{gap:12px;display:grid}.loading-stack span{border-radius:var(--radius);background:linear-gradient(90deg,#edf3f1,#fff,#edf3f1) 0 0/220% 100%;height:92px;animation:1.2s linear infinite shimmer}@keyframes shimmer{to{background-position:-220% 0}}.admin-shell{background:#f4f7f6;grid-template-columns:258px 1fr;min-height:100svh;display:grid}.admin-sidebar{border-right:1px solid var(--line);background:#fff;align-content:start;gap:8px;height:100svh;padding:18px;display:grid;position:sticky;top:0}.admin-brand{align-items:center;gap:10px;padding:8px 0 18px;display:flex}.admin-brand div{display:grid}.admin-brand span{color:var(--muted);font-size:12px}.admin-sidebar button{border-radius:var(--radius);min-height:44px;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:0 12px;font-weight:850;display:flex}.admin-sidebar .active{color:var(--ink);background:#b8ff233d;border-color:#087f7838}.admin-content{padding:28px}.admin-grid{grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.admin-grid.single-column{grid-template-columns:1fr}.admin-header{grid-column:1/-1;gap:7px;display:grid}.admin-header h1{font-size:32px;font-weight:950}.admin-header p{color:var(--muted)}.admin-form,.admin-table{gap:12px;padding:16px;display:grid}.two-col{grid-template-columns:1fr 1fr;gap:10px;display:grid}.toggle-row{color:var(--ink);grid-template-columns:20px 1fr;align-items:center}.toggle-row input{width:18px;min-height:18px}.admin-row{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:minmax(0,1fr) auto 40px 40px;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.admin-row.wide{grid-template-columns:minmax(0,1fr) 90px 90px 120px}.admin-row div{gap:3px;min-width:0;display:grid}.admin-row strong,.admin-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-row span{color:var(--muted);font-size:12px}.admin-preview{object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);width:100%;max-height:180px}.admin-stats{grid-template-columns:repeat(4,1fr)}.access-denied h1{font-size:28px;font-weight:950}@media (width<=760px){.mobile-header,.bottom-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffffffa}.mobile-header{background:#f7faf8fa}.login-screen{grid-template-columns:1fr;gap:14px;padding:14px}.login-visual{min-height:430px;padding:22px}.brand-card{min-height:220px}.login-copy h1{font-size:42px}.admin-shell{grid-template-columns:1fr}.admin-sidebar{z-index:20;grid-template-columns:repeat(3,1fr);height:auto;padding:10px;position:sticky;top:0;overflow-x:auto}.admin-brand{grid-column:1/-1;padding:4px}.admin-sidebar button{min-width:max-content}.admin-content{padding:14px}.admin-grid{grid-template-columns:1fr}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-row,.admin-row.wide{grid-template-columns:minmax(0,1fr) auto}.admin-row .icon-button{width:36px;height:36px}}@media (prefers-reduced-motion:reduce){.mini-piece.active,.svg-fragment.active,.loading-stack span{animation:none}.svg-fragment{transition:none}}@media (width<=380px){.content-frame{padding-inline:10px}.stats-grid,.quick-login-row,.two-col{grid-template-columns:1fr}.ball-progress{grid-template-rows:repeat(3,82px)}.venue-card-summary{grid-template-columns:1fr;padding-right:50px}.venue-details{margin-inline:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
