@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-border-style:solid;--tw-font-weight: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-outline-style:solid;--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;--color-red-600:#e40014;--color-amber-50:#fffbeb;--color-amber-800:#953d00;--color-green-50:#f0fdf4;--color-green-800:#016630;--color-zinc-500:#71717b;--color-zinc-600:#52525c;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-600:lab(48.4493% 77.4328 61.5452);--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-800:lab(37.8822% 37.1699 52.2718);--color-green-50:lab(98.1563% -5.60117 2.75915);--color-green-800:lab(37.4616% -36.7971 22.9692);--color-zinc-500:lab(47.8878% 1.65477 -5.77283);--color-zinc-600:lab(35.1166% 1.78212 -6.1173)}}}@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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.w-1\/2{width:50%}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.bg-amber-50{background-color:var(--color-amber-50)}.bg-green-50{background-color:var(--color-green-50)}.p-1{padding:calc(var(--spacing) * 1)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-8{padding:calc(var(--spacing) * 8)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-amber-800{color:var(--color-amber-800)}.text-green-800{color:var(--color-green-800)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(100%);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,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.disabled\:opacity-60:disabled{opacity:.6}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-blue:#203a6f;--brand-blue-dark:#203a6f;--brand-blue-bright:#2e4f8f;--brand-blue-hover:#2e4f8f;--brand-lime:#3ebfed;--brand-navy:#112337;--brand-navy-mid:#10416a;--color-text:#112337;--color-text-secondary:#444;--color-text-muted:#444;--color-text-on-dark:#f1f5f9;--color-text-on-brand:#fff;--color-bg:#fff;--color-bg-subtle:#f8fafc;--color-bg-muted:#f1f5f9;--color-bg-dark:#f6f6f6;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-primary:var(--brand-blue);--color-primary-hover:var(--brand-blue-hover);--color-primary-text:#fff;--color-focus-ring:#0032a04d;--cancel-red:#9e0000;--disabled-grey:#bbb;--subheading-text-color:#777;--warning-color:#ffa600;--color-success-bg:#dcfce7;--color-success-text:#166534;--color-warning-bg:#fef3c7;--color-warning-text:#92400e;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-caption-min:12px;--font-size-body-min:15px;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--bg:var(--color-bg);--panel:#fff;--panel-muted:#f4faff;--text:var(--color-text);--muted:var(--color-text-muted);--line:var(--color-border);--primary:var(--color-primary);--primary-soft:#d8f1ff;--primary-dark:var(--brand-navy);--accent:var(--brand-blue);--accent-soft:#e4f7ff;--lime:var(--brand-green);--lime-soft:#f1ffd2;--done:var(--color-success-text);--done-soft:var(--color-success-bg);--warn:var(--color-warning-text);--warn-soft:var(--color-warning-bg);--pending-soft:#eef2ff;--shadow:var(--shadow-lg);--app-mode-nav-bar:48px}*{box-sizing:border-box}html,body{background:var(--color-bg-dark);color:var(--color-text);font-family:var(--font-sans);margin:0;padding:0}body{min-height:100vh;font-size:max(var(--font-size-body-min), 1rem);background-attachment:fixed}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}textarea,select,input:where(:not([type=button],[type=checkbox],[type=color],[type=file],[type=hidden],[type=image],[type=radio],[type=range],[type=reset],[type=submit])){font-size:max(16px,1em)}.main-app-root{width:100%;min-width:0}.main-app-with-nav{box-sizing:border-box;width:100%;min-width:0;max-width:760px;margin:0 auto}.shell{box-sizing:border-box;width:100%;min-width:0;max-width:760px;margin:0 auto;padding:18px 14px 36px}.main-app-with-nav>.shell{padding-top:12px}.main-app-with-nav>.shell.shell--nav-flush{padding-top:0}html:has(.walk-map-home){height:100%;overflow:hidden}body:has(.walk-map-home){overscroll-behavior:none;height:100%;min-height:100%;overflow:hidden}.main-app-root:has(.walk-map-home){box-sizing:border-box;overscroll-behavior:none;flex-direction:column;height:100dvh;min-height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.main-app-root:has(.walk-map-home)>.main-app-with-nav{flex-direction:column;flex:1;max-width:none;min-height:0;margin-left:0;margin-right:0;display:flex;overflow:hidden}.main-app-root:has(.walk-map-home)>.main-app-with-nav>.walk-map-home{flex-direction:column;flex:1;width:100%;max-width:none;min-height:0;margin-left:0;margin-right:0;display:flex;overflow:hidden}.auth-shell{align-items:center;width:min(100%,520px);min-height:100vh;margin:0 auto;padding:32px 14px;display:flex}.auth-card{width:100%}.auth-card.stack{gap:28px}.auth-card .subtitle{margin:10px 0 0}.auth-form{gap:22px;display:grid}.auth-form .import-row{gap:8px}.auth-form .meta-label{margin:0}.auth-form .button-row{margin-top:2px}.shell-tight{padding-bottom:0}.admin-tabs{border-bottom:2px solid var(--color-border);gap:2px;margin-bottom:4px;display:flex}.admin-tab{color:var(--color-text-muted);border-bottom:2px solid #0000;border-radius:6px 6px 0 0;align-items:center;margin-bottom:-2px;padding:8px 18px;font-size:14px;font-weight:500;text-decoration:none;transition:color .12s,border-color .12s,background .12s;display:flex}.admin-tab:hover{color:var(--color-text);background:var(--color-bg-muted)}.admin-tab.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:0 0;font-weight:600}.admin-areas-section.stack{gap:8px}.admin-areas-section .topbar{margin-bottom:0}.topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.topbar--inline .eyebrow{margin-bottom:0}.eyebrow{color:var(--color-primary);font-size:var(--font-size-caption-min);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-weight:700}.title{color:var(--brand-navy);margin:0;font-size:28px;line-height:1.1}.subtitle{color:var(--muted);margin:8px 0 0;font-size:15px;line-height:1.5}.route-count-text{color:var(--muted);margin:10px 0 0;font-size:13px;font-weight:600}.stack{gap:16px;display:grid}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.card-pad{padding:18px}.meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.meta-grid--profile{grid-template-areas:"name access""email email"}.meta-grid--profile .meta-box--name{grid-area:name}.meta-grid--profile .meta-box--email{grid-area:email}.meta-grid--profile .meta-box--access{grid-area:access}.profile-page.stack,.profile-page .card.stack{gap:12px}.profile-page .card-pad{padding:14px 16px}.profile-work-header{gap:4px;display:grid}.profile-work-header .eyebrow{margin:0 0 2px}.profile-work-header .route-name{font-size:17px;line-height:1.25}.profile-work-header .subtitle{margin:0;font-size:13px;line-height:1.4}.profile-page .profile-identity{column-gap:12px}@media (min-width:640px){.profile-page .profile-identity{column-gap:14px}}.profile-page .profile-avatar{width:52px;height:52px}.profile-page .profile-avatar-fallback{font-size:17px}.profile-page .profile-identity-fields{gap:6px}.profile-page .profile-identity-fields .meta-label{margin:0 0 2px}.profile-page .profile-identity-value{margin:0;font-size:15px;line-height:1.25}.profile-page .profile-completion-list{gap:6px;margin-top:8px}.profile-page .profile-completion-link{border-radius:12px;gap:4px;padding:10px 12px}.profile-page .profile-completion-address{font-size:14px}.profile-page .profile-completion-meta{font-size:var(--font-size-caption-min);gap:6px 10px}.profile-page .profile-completion-status{font-size:var(--font-size-caption-min);padding:2px 6px}.profile-page .profile-view-all-row{margin-top:12px}.profile-completions-empty{margin:8px 0 0}.profile-page .profile-completions-empty{margin:4px 0 0}.profile-feedback-card{gap:16px}.profile-feedback-card .profile-work-header{gap:6px}.profile-feedback-card .subtitle{max-width:32ch}.profile-page .profile-preferences-card.stack{gap:8px}.profile-page .profile-preferences-card .pref-fine-print{color:var(--muted);max-width:none;margin:4px 0 0;font-size:13px;line-height:1.45}.profile-feedback-actions{align-items:flex-start;display:flex}.settings-signout-btn{justify-content:center;place-self:flex-start;width:auto;min-width:140px;display:inline-flex}@media (max-width:640px){.settings-signout-btn{align-self:stretch;width:100%}}.profile-view-all-row{margin-top:16px}.profile-view-all-btn{text-align:center;box-sizing:border-box;width:100%;text-decoration:none;display:block}@media (min-width:641px){.profile-view-all-row{justify-content:flex-start;display:flex}.profile-view-all-btn{justify-content:center;align-items:center;width:auto;display:inline-flex}}.profile-identity{grid-template-columns:auto 1fr;align-items:center;column-gap:12px;display:grid}.profile-avatar{object-fit:cover;border:1px solid var(--line);border-radius:999px;width:64px;height:64px}.profile-avatar-fallback{background:var(--panel-muted);color:var(--primary-dark);place-items:center;font-size:20px;font-weight:800;display:grid}.profile-identity-fields{gap:10px;min-width:0;display:grid}.profile-identity-fields>div{min-width:0}.profile-identity-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:17px;font-weight:700;line-height:1.35;overflow:hidden}.updated-homes-explorer.stack{gap:14px}.updated-homes-toolbar{gap:12px;display:grid}@media (min-width:520px){.updated-homes-toolbar{grid-template-columns:1fr minmax(140px,200px);align-items:end}}.updated-homes-field{gap:6px;min-width:0;display:grid}.updated-homes-count-line{margin:0}.profile-completion-list{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}@media (min-width:768px){.profile-completion-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:stretch;gap:10px;display:grid}.profile-completion-list>li{min-height:0;display:flex}.profile-completion-list .profile-completion-link{flex:1;height:100%}}.profile-completion-link{background:var(--panel-muted);border:1px solid var(--line);color:inherit;border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:12px 14px;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.profile-completion-link:hover{border-color:var(--accent,#1a6fd4);background:var(--panel,#fff)}.profile-completion-main{flex-direction:column;gap:2px;min-width:0;display:flex}.profile-completion-address{overflow-wrap:anywhere;word-break:break-word;font-size:15px;font-weight:700}.profile-completion-unit{color:var(--muted);font-size:13px}.profile-completion-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:12px;display:flex}.profile-completion-status{font-size:var(--font-size-caption-min);text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--line);background:var(--panel-muted);color:var(--muted);border-radius:999px;padding:3px 8px;font-weight:700}.profile-completion-status--done{color:#0d5c3d;background:#e8f7ef;border-color:#1a8f5c}.profile-completion-status--noAccess{color:#7a4a0a;background:#fff4e5;border-color:#c47a16}.profile-completion-status--pending{border-color:var(--line);background:var(--panel-muted);color:var(--muted)}.profile-completion-route{color:var(--text,inherit);font-weight:600}.profile-completion-stop{font-variant-numeric:tabular-nums}.profile-completion-time{margin-left:auto}.shell.leaderboard-page{max-width:min(560px,100%)}.leaderboard-page .title{font-size:20px;line-height:1.2}.leaderboard-page .subtitle{font-size:var(--font-size-caption-min);color:var(--muted);margin:4px 0 0;line-height:1.45}@media (max-width:639px){.leaderboard-page .title{font-size:18px}}.leaderboard-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.leaderboard-row{background:var(--color-bg);border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:8px 10px;padding:8px 12px;display:grid}.leaderboard-row--podium{border-radius:12px;padding:10px 14px}.leaderboard-podium-list{flex-direction:column;gap:6px;display:flex}.leaderboard-podium-pin{justify-content:center;align-items:center;width:50px;height:50px;display:flex;position:relative}.leaderboard-podium-pin:after{content:"";background-color:var(--pin-color);pointer-events:none;position:absolute;inset:0;-webkit-mask-image:url(/img/mq_icon_pin_large.png);mask-image:url(/img/mq_icon_pin_large.png);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.leaderboard-podium-pin-rank{z-index:1;color:var(--pin-color);font-size:16px;font-weight:800;position:relative}.leaderboard-podium-pin--rank-1{--pin-color:#f59e0b}.leaderboard-podium-pin--rank-2{--pin-color:#9ca3af}.leaderboard-podium-pin--rank-3{--pin-color:#cd7f32}.leaderboard-podium-row{background:var(--color-bg);border-radius:10px;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.leaderboard-podium-count{color:var(--brand-blue-bright);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:700}.leaderboard-rank-cell{justify-content:center;align-items:center;min-width:36px;display:flex}.leaderboard-row--podium .leaderboard-rank-cell{min-width:46px}.leaderboard-medal-svg{width:36px;height:auto;display:block}.leaderboard-row--podium .leaderboard-medal-svg{width:46px;height:auto}.leaderboard-rank-num{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px;font-weight:800;line-height:1}.leaderboard-body{min-width:0}.leaderboard-name{overflow-wrap:break-word;word-break:normal;margin:0;font-size:14px;font-weight:700;line-height:1.2}.leaderboard-row--podium .leaderboard-name{font-size:16px;line-height:1.2}.leaderboard-count{color:var(--muted);margin:1px 0 0;font-size:12px;font-weight:600}.leaderboard-row--podium .leaderboard-count{margin-top:3px;font-size:12px}.leaderboard-you{font-size:var(--font-size-caption-min);text-transform:uppercase;letter-spacing:.06em;color:var(--brand-lime);vertical-align:middle;margin-left:6px;font-weight:800;display:inline-block}.leaderboard-rest-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.leaderboard-rest-row{border-bottom:1px solid var(--color-border);grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:10px 14px;display:grid}.leaderboard-rest-row:last-child{border-bottom:none}.leaderboard-rest-rank{color:var(--color-text-muted);font-variant-numeric:tabular-nums;text-align:center;font-size:14px;font-weight:500}.leaderboard-rest-name{color:var(--brand-blue-dark);overflow-wrap:break-word;word-break:normal;margin:0;font-size:16px;font-weight:600;line-height:1.3}.leaderboard-rest-count{color:var(--brand-blue-bright);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:700}.meta-box{background:var(--panel-muted);border:1px solid var(--line);border-radius:14px;min-width:0;padding:12px}.meta-label{color:var(--muted);margin:0 0 6px;font-size:12px}.meta-value{overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:16px;font-weight:700}.import-form{gap:12px;display:grid}.import-row{gap:10px;display:grid}.import-file-heading{margin:0}.import-file-drop{border:1px dashed var(--line);background:var(--panel-muted);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 16px;display:flex;position:relative}.import-file-drop:focus-within{border-color:var(--accent);outline-offset:2px;outline:2px solid #18a7e138}.import-file-native{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}.import-file-picker-btn{cursor:pointer;flex-shrink:0;margin:0}.import-file-picker-btn--pending{opacity:.6;cursor:wait;pointer-events:none}.import-file-name{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:600;overflow:hidden}.import-progress{gap:8px;display:grid}.import-progress-track{background:var(--color-border);border-radius:99px;height:6px;overflow:hidden}.import-progress-fill{background:var(--color-primary);border-radius:99px;height:100%;transition:width .6s}.import-progress-label{color:var(--color-text-muted);margin:0;font-size:13px}.text-input{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:12px;padding:12px 14px}.text-input:focus{border-color:var(--accent);outline:2px solid #18a7e129}.button-row{flex-wrap:wrap;gap:10px;display:flex}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;padding:10px 14px;font-weight:600;transition:transform .12s,opacity .12s,background .15s}.btn:disabled{opacity:.6;cursor:wait}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.btn-no-lift:hover:not(:disabled){transform:none}.btn-primary{background:var(--color-primary);color:var(--color-primary-text)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.btn-secondary{background:linear-gradient(180deg, #fff, var(--accent-soft));border-color:var(--line);color:var(--text)}.btn-danger{color:#fff;background:#dc2626;border-color:#b91c1c}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#991b1b}.btn-danger-outline{color:#b91c1c;background:#fff;border-color:#dc2626}.btn-danger-outline:hover:not(:disabled){background:#fef2f2}.delete-route-dialog{box-sizing:border-box;white-space:normal;background:#fff;border:none;border-radius:18px;width:min(100vw - 32px,420px);max-width:min(100vw - 32px,420px);margin:auto;padding:0;box-shadow:0 24px 48px #08366133}.delete-route-dialog::backdrop{background:#0d2f5773}.delete-route-dialog-form{box-sizing:border-box;min-width:0;margin:0;padding:22px 22px 20px}.delete-route-dialog-title{color:var(--text);margin:0 0 10px;font-size:20px;font-weight:800}.delete-route-dialog-lede{white-space:normal;overflow-wrap:break-word;word-break:break-word;max-width:100%;margin:0 0 14px;line-height:1.45}.claim-route-dialog .delete-route-dialog-title,.claim-route-dialog .delete-route-dialog-lede,.claim-route-dialog .delete-route-dialog-error{text-align:center}.claim-route-dialog .delete-route-dialog-actions{justify-content:center}.delete-route-dialog-warn{color:var(--text);margin:0 0 16px;padding-left:18px;font-size:14px;line-height:1.45}.delete-route-dialog-warn li{margin-bottom:6px}.delete-route-dialog-error{margin:0 0 12px}.delete-route-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.helper{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.feedback{border-radius:12px;margin:0;padding:12px;font-size:14px}.feedback-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.feedback-success{color:#166534;background:#e9ffd3;border:1px solid #d3f7a0}.route-list{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.route-card{flex-direction:column;gap:14px;min-height:0;padding:18px;display:flex}@media (min-width:768px){.route-list{grid-template-columns:repeat(2,minmax(0,1fr))}.route-list .route-card{height:100%}}@media (min-width:1200px){.route-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.route-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.route-name{margin:0;font-size:18px;line-height:1.3}.route-streets{color:var(--color-text-secondary);margin:2px 0 0;font-size:13px;line-height:1.5}.badge{white-space:nowrap;background:var(--primary-soft);box-shadow:none;color:var(--primary-dark);border:1px solid #cfe4f8;border-radius:999px;padding:8px 10px;font-size:13px;font-weight:700}.progress-bar{background:var(--color-bg-muted);border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-fill{background:var(--color-primary);border-radius:2px;height:100%;transition:width .3s}.route-stats{flex-wrap:wrap;gap:8px;display:flex}.route-stats-informative{gap:10px 16px}.route-stat{color:var(--muted);align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.route-meta-icon{width:14px;height:14px;color:var(--primary);flex:none}.route-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:2px;display:flex}.route-actions .btn{text-align:center;color:#fff;cursor:pointer;border:none;border-radius:8px;flex:1;min-width:0;padding:8px 12px;font-size:13px;font-weight:600}.route-actions .route-btn-open{background:var(--brand-blue)}.route-actions .route-btn-done{background:var(--brand-lime)}.route-actions .route-btn-delete{background:var(--cancel-red)}.route-link-wrap{min-height:0;color:inherit;flex-direction:column;flex:auto;gap:14px;text-decoration:none;display:flex}.route-preview{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--panel-muted));pointer-events:none;border-radius:16px;min-height:180px;position:relative;overflow:hidden}.route-preview-map{width:100%;height:180px}.route-preview .leaflet-container{background:#eaf5ff}.route-preview-empty{color:var(--muted);justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.route-progress-note{white-space:nowrap;color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.info-note{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.pill{font-size:var(--font-size-caption-min);border-radius:var(--radius-full);background:var(--brand-lime);color:#fff;white-space:nowrap;border:none;padding:3px 8px;font-weight:600}.header-link{color:var(--primary);font-weight:700}.route-path,.route-meta-code{color:var(--muted);word-break:break-all;font-size:13px}.meta-value.route-meta-code{font-size:13px;font-weight:600;line-height:1.4}.route-header{z-index:1000;isolation:isolate;padding:16px;position:relative}.route-header.card{border-radius:0 0 20px 20px}.focus-card{z-index:1;background:radial-gradient(circle at 100% 0,#c2f20d29,#0000 28%),linear-gradient(#fff,#f3fbff);margin-bottom:16px;position:relative}.focus-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.focus-address{margin:0;font-size:24px;font-weight:800;line-height:1.15}.map-card{z-index:0;isolation:isolate;margin-bottom:16px;position:relative}.map-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.leaflet-shell{z-index:0;isolation:isolate;border:1px solid var(--line);border-radius:16px;margin-top:14px;position:relative;overflow:hidden}.leaflet-map{width:100%;height:260px}.leaflet-container{font:inherit;z-index:0;position:relative}.route-label-icon{width:auto!important;height:auto!important;overflow:visible!important}.route-header-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.back-link{color:var(--primary);font-weight:700}.stops{gap:12px;margin-top:16px;display:grid}.stop-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:18px;padding:18px}.stop-card.done{background:var(--done-soft);border-color:#86efac}.stop-card.noAccess{background:var(--warn-soft);border-color:#fcd34d}.stop-row{align-items:flex-start;gap:12px;display:flex}.stop-number{background:linear-gradient(180deg, #fff, var(--primary-soft));width:40px;height:40px;color:var(--primary-dark);border-radius:999px;flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.stop-main{flex:auto;min-width:0}.stop-address{margin:0;font-size:19px;font-weight:800}.stop-meta{color:var(--muted);margin:6px 0 0;font-size:14px;line-height:1.5}.stop-voters{color:var(--muted);margin:10px 0 0;padding-left:18px;font-size:14px;line-height:1.5}.stop-actions{flex-wrap:nowrap;gap:6px;margin-top:10px;display:flex}.status-btn{white-space:nowrap;flex:1;min-width:0;min-height:36px;padding:0 8px;font-size:13px;font-weight:600}.completed-panel{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:16px;margin-top:18px;padding:14px 16px}.completed-panel summary{cursor:pointer;color:var(--muted);font-weight:700}.completed-panel[open] summary{margin-bottom:14px}.route-start-row{justify-content:flex-end;align-items:center;gap:12px;margin-top:auto;padding-top:2px;display:flex}.route-start-btn{pointer-events:none}.status-btn.is-selected{box-shadow:inset 0 0 0 2px #11182714}.status-done{background:linear-gradient(90deg, var(--done), #21a454);color:#fff}.status-warn{color:#fff;background:linear-gradient(90deg,#d97706,#f59e0b)}.status-neutral{background:linear-gradient(180deg, #fff, var(--panel-muted));border-color:var(--line);color:var(--text)}.tiny{color:var(--muted);margin:8px 0 0;font-size:12px}.empty-state{text-align:center;padding:28px 20px}@media (min-width:640px){.main-app-with-nav{max-width:100%}.shell{max-width:1280px;padding:28px 24px 36px}.route-header{z-index:1;position:relative;top:auto}.meta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.meta-grid--profile{grid-template-areas:"name email access"}.main-app-with-nav>.shell{padding-top:18px}.main-app-with-nav>.shell.shell--nav-flush{padding-top:0}}@media (max-width:639px){.topbar{flex-direction:column;align-items:flex-start}.topbar.topbar--inline{flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.topbar.topbar--inline .eyebrow{flex:1;min-width:0;margin:0}.title{font-size:24px}.route-top,.focus-row,.map-header{flex-direction:column;align-items:flex-start}.leaflet-map{height:220px}.route-header .route-stats{gap:6px}.route-stats-informative{gap:8px 12px}.route-stat{font-size:13px}}.nav-tabs{background:var(--panel);border-bottom:1px solid var(--line);justify-content:center;gap:4px;padding:12px 16px 0;display:flex}.nav-tab{color:var(--muted);border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.nav-tab:hover{color:var(--text)}.nav-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.nav-tab-icon{width:18px;height:18px;line-height:0}.nav-tab-icon svg{width:100%;height:100%;display:block}@media (max-width:640px){.nav-tab{flex-direction:column;gap:4px;padding:8px 16px;font-size:12px}}.app-mode-nav{z-index:8888;border-bottom:1px solid var(--color-border);background:#fff;margin:0;position:sticky;top:0;box-shadow:0 1px 3px #0000000f}.app-nav-bar{height:var(--app-mode-nav-bar);box-sizing:border-box;align-items:center;padding:0 12px;display:flex}.app-nav-bar>*{flex:1 1 0;min-width:0}.app-nav-bar>:nth-child(2){justify-content:center;display:flex}.app-nav-bar>:last-child{justify-content:flex-end;display:flex}.app-nav-menu-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.app-nav-menu-btn:hover{background:#0000000d}.app-nav-hamburger{flex-direction:column;gap:5px;width:20px;display:flex}.app-nav-hamburger span{background:var(--color-text);border-radius:1px;width:100%;height:2px;transition:transform .25s,opacity .2s;display:block}.app-nav-hamburger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.app-nav-hamburger.is-open span:nth-child(2){opacity:0}.app-nav-hamburger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.app-nav-logo--topbar{align-items:center;text-decoration:none;display:flex}.app-nav-logo--topbar img{object-fit:contain;width:28px;height:28px}.app-nav-drawer-logo{align-items:center;padding:14px 24px 2px;text-decoration:none;display:none}.app-nav-drawer-logo img{object-fit:contain;width:auto;height:28px}.app-nav-hub-pill-wrap{margin-top:-6px;padding:0 24px 6px;display:none}.app-nav-hub-pill{border:1.5px solid var(--brand-lime);color:var(--brand-blue);letter-spacing:.1em;background:0 0;border-radius:999px;padding:2px 8px;font-size:7.5px;font-weight:800;display:inline-block}@media (min-width:640px){.app-mode-nav{display:none}.app-nav-drawer-logo{display:flex}.app-nav-hub-pill-wrap{display:block}}.app-nav-bar-right{align-items:center;gap:8px}.app-nav-rank-pill{background:var(--brand-lime);color:#fff;white-space:nowrap;-webkit-tap-highlight-color:transparent;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.app-nav-rank-pill img{object-fit:contain;width:16px;height:16px}.app-nav-profile{-webkit-tap-highlight-color:transparent;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;text-decoration:none;display:flex}.app-nav-profile:hover{background:#0000000d}.app-nav-profile img{object-fit:contain;width:24px;height:24px}.app-nav-backdrop{z-index:8887;background:#0000004d;animation:.2s app-nav-fade-in;position:fixed;inset:0}@keyframes app-nav-fade-in{0%{opacity:0}to{opacity:1}}.app-nav-drawer{z-index:8888;background:#fff;flex-direction:column;transition:transform .25s;display:flex;position:fixed;overflow-y:auto;transform:translate(-100%);box-shadow:4px 0 16px #0000001a}.app-nav-drawer.is-open{transform:translate(0)}.app-nav-drawer-header{height:var(--app-mode-nav-bar);align-items:center;padding:0 12px;display:none}@media (max-width:639px){.app-nav-drawer-header{display:flex}}.app-nav-close-btn{cursor:pointer;width:36px;height:36px;color:var(--color-text);-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex}.app-nav-close-btn:hover{background:#0000000d}.app-nav-drawer-links{flex-direction:column;padding:12px 0;display:flex}.app-nav-drawer-link{color:var(--color-text);align-items:center;padding:14px 24px;font-size:16px;font-weight:600;text-decoration:none;transition:background .12s,color .12s;display:flex}.app-nav-drawer-link:hover{background:#0000000a}.app-nav-drawer-link.is-active{color:var(--color-primary);background:#2563eb0f}.app-nav-chevron{flex-shrink:0;margin-left:auto;transition:transform .2s}.app-nav-chevron.is-expanded{transform:rotate(180deg)}.app-nav-sublinks{flex-direction:column;display:flex}.app-nav-sublink{color:var(--color-text-muted);padding:10px 24px 10px 40px;font-size:14px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:block}.app-nav-sublink:hover{background:#0000000a}.app-nav-sublink.is-active{color:var(--color-primary);background:#2563eb0f}.app-nav-drawer-links--grow{flex:auto}.app-nav-drawer-profile{border-top:1px solid var(--color-border);color:var(--color-text);align-items:center;gap:10px;padding:14px 24px;text-decoration:none;transition:background .12s;display:flex}.app-nav-drawer-profile:hover{background:#0000000a}.app-nav-drawer-profile img{object-fit:contain;flex-shrink:0;width:24px;height:24px}.app-nav-drawer-profile-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}@media (max-width:639px){.app-nav-drawer{width:100vw;height:100dvh;padding-top:calc(var(--vv-offset-top,0px) + env(safe-area-inset-top,0px));top:0;left:0}.app-nav-drawer-link{font-size:24px}.app-nav-sublink{font-size:21px}}@media (min-width:640px){.app-nav-drawer{border-right:1px solid var(--color-border);width:250px;top:0;bottom:0;left:0;transform:none;box-shadow:1px 0 4px #0000000f}.app-nav-drawer-link{padding-top:9px;padding-bottom:9px}.app-nav-sublink{padding-top:5px;padding-bottom:5px}.main-app-root{width:calc(100% - 250px);margin-left:250px}}@media (max-width:639px){.app-mode-nav{left:0;right:0;top:var(--vv-offset-top,0px);z-index:8888;width:min(100%,760px);padding-top:env(safe-area-inset-top,0px);box-sizing:border-box;margin-bottom:0;margin-left:auto;margin-right:auto;position:fixed}.main-app-root:has(>nav.app-mode-nav)>.main-app-with-nav{padding-top:calc(var(--vv-offset-top,0px) + env(safe-area-inset-top,0px) + var(--app-mode-nav-bar) + 12px)}:is(.main-app-root:has(>nav.app-mode-nav)>.main-app-with-nav:has(>.shell.shell--nav-flush),.main-app-root:has(>nav.app-mode-nav)>.main-app-with-nav:has(.walk-page)){padding-top:calc(var(--vv-offset-top,0px) + env(safe-area-inset-top,0px) + var(--app-mode-nav-bar))}}.page-header{background:var(--brand-navy);margin:0 -14px;padding:20px 20px 16px;position:relative}.page-header:after{content:"";background:linear-gradient(90deg, var(--brand-blue), var(--brand-lime));height:3px;position:absolute;bottom:0;left:0;right:0}.page-header .eyebrow{color:var(--brand-lime);margin-bottom:4px}.page-header .title{color:var(--color-text-on-dark);margin-bottom:0;font-size:22px;font-weight:800;line-height:1.2}.page-header .subtitle{color:#f1f5f9b3;max-width:480px;margin:4px 0 0;font-size:13px}.page-header .back-link{color:#f1f5f9cc;align-items:center;gap:4px;margin-bottom:8px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.page-header .back-link:hover{color:#fff}.page-header .guide-link{color:#e8eef7;text-underline-offset:3px;text-decoration:underline}.page-header .guide-link:hover{color:#fff}.page-header .guide-link:focus-visible{outline:2px solid var(--brand-lime);outline-offset:3px;border-radius:2px}@media (max-width:639px){.page-header .guide-link{font-size:13px;line-height:1.35}}.entry-accordion{background:0 0;border:0;border-radius:0}.entry-accordion-summary{cursor:pointer;color:var(--primary-dark);justify-content:space-between;align-items:center;gap:10px;padding:4px 0;font-size:14px;font-weight:600;line-height:1.4;list-style:none;display:flex}.entry-accordion-summary::-webkit-details-marker{display:none}.entry-accordion-summary:after{content:"";border-right:2.5px solid var(--primary-dark);border-bottom:2.5px solid var(--primary-dark);transform-origin:50%;border-radius:1px;flex-shrink:0;width:11px;height:11px;transition:transform .15s;transform:rotate(45deg)}.entry-accordion[open] .entry-accordion-summary:after{transform:rotate(-135deg)}.entry-accordion[open] .entry-accordion-summary{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:10px}.entry-accordion-content{padding:0 0 4px}.entry-form{flex-direction:column;gap:20px;max-width:360px;margin:0 auto;display:flex}.entry-field{flex-direction:column;gap:6px;display:flex}.entry-label{color:var(--text);letter-spacing:.02em;font-size:13px;font-weight:700}.entry-input{border:1.5px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:17px;transition:border-color .15s}.entry-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.entry-input-code{letter-spacing:.2em;text-transform:uppercase;width:140px;font-family:SF Mono,ui-monospace,monospace;font-size:20px;font-weight:700}.entry-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.entry-error{color:#dc2626;background:#fef2f2;border-radius:8px;margin:0;padding:10px 14px;font-size:14px;font-weight:600}.entry-submit{margin-top:4px;padding:14px 24px;font-size:16px}.entry-submit:disabled{opacity:.6;cursor:not-allowed}.feedback-form{gap:14px;max-width:none;margin:0}.feedback-textarea{resize:vertical;min-height:180px;line-height:1.5}.feedback-form .entry-submit{align-self:flex-start;min-width:180px}.feedback-dialog{background:var(--color-bg);border:none;border-radius:20px;width:min(100vw - 24px,560px);max-width:560px;padding:0;box-shadow:0 24px 48px #0836613d}.feedback-dialog::backdrop{background:#0d2f5773}.feedback-dialog-panel{gap:16px;padding:18px;display:grid}.feedback-dialog-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.feedback-dialog-header .subtitle{margin:0}.feedback-dialog-close{border:1px solid var(--line);width:40px;height:40px;color:var(--text);cursor:pointer;background:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,transform .12s;display:inline-flex}.feedback-dialog-close svg{width:18px;height:18px}.feedback-dialog-close:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateY(-1px)}.feedback-dialog-close:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.feedback-success{color:#166534;background:#f0fdf4;border-radius:8px;margin:0;padding:10px 14px;font-size:14px;font-weight:600}@media (max-width:640px){.feedback-dialog{border-radius:0;width:100%;max-width:none;min-height:100dvh;margin:0}.feedback-dialog-panel{min-height:100dvh;padding:18px 16px max(18px, env(safe-area-inset-bottom));flex-direction:column;display:flex}.feedback-dialog-header{gap:10px}.feedback-form,.feedback-form .entry-field{flex:auto}.feedback-textarea{flex:auto;min-height:280px}.feedback-form .entry-submit{align-self:stretch;width:100%}}.route-confirm-code{background:var(--warn-soft);color:var(--text);border:1px solid #f0d9a8;border-radius:8px;align-items:center;gap:8px;margin-top:8px;padding:6px 12px;font-size:13px;display:inline-flex}.route-confirm-code .code-label{color:var(--muted);font-weight:500}.route-confirm-code .code-value{letter-spacing:.12em;color:var(--warn);font-family:SF Mono,ui-monospace,monospace;font-size:16px;font-weight:800}.events-section-heading{color:var(--color-text);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:16px;font-weight:700}.area-list{flex-direction:column;gap:10px;display:flex}.area-card{color:inherit;cursor:pointer;flex-direction:column;gap:8px;min-height:0;padding:14px 16px;text-decoration:none;transition:box-shadow .15s,transform .1s;display:flex}.area-card:hover{transform:translateY(-1px);box-shadow:0 4px 20px #0836611f}.area-card-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:0;display:flex}.area-card .route-stats{gap:6px;margin-top:0}.area-card .pill{background:var(--brand-lime);color:#fff;box-shadow:none;border:none}.area-card--live{border:2px solid var(--brand-lime)}.pill--live{background:var(--brand-lime);color:var(--brand-blue);box-shadow:none;border:none;margin-left:6px;font-weight:700}.area-card-footer{text-align:right;color:var(--primary);margin-top:auto;padding-top:12px;font-size:13px;font-weight:600}@media (min-width:768px){.area-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;display:grid}.area-list .area-card{height:100%}}@media (min-width:1200px){.area-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.admin-users-preview-caption{color:var(--muted);margin:0 0 10px;font-size:13px}.admin-users-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}@media (min-width:768px){.admin-users-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:stretch;gap:10px;display:grid}.admin-users-list .admin-user-row{height:100%}}.admin-user-row{align-items:flex-start;gap:14px;margin:0;padding:14px 16px;display:flex}.admin-user-avatar-wrap{flex-shrink:0}.admin-user-avatar{object-fit:cover;border:1px solid var(--line);background:var(--panel-muted);border-radius:50%;width:40px;height:40px;display:block}.admin-user-body{flex:1;min-width:0}.admin-user-name{color:var(--text);margin:0 0 4px;font-size:15px;font-weight:700;line-height:1.25}.admin-user-email{color:var(--muted);word-break:break-word;margin:0 0 4px;font-size:13px}.admin-user-meta{color:var(--muted);margin:0;font-size:12px}.admin-users-footer{text-align:right;margin-top:4px}.admin-users-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:8px;display:flex}.admin-users-page-label{color:var(--muted);font-size:13px;font-weight:600}.admin-analytics-stack{margin-top:4px}.admin-chart-full-width{width:100%}.admin-chart-full-width .admin-chart-card{width:100%;max-width:none}.admin-charts-grid{flex-direction:column;gap:16px;display:flex}@media (min-width:768px){.admin-charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.admin-chart-card{flex-direction:column;height:100%;display:flex}.admin-chart-card .admin-chart-wrap{flex:1;min-height:220px}}.admin-chart-card .subtitle{font-size:13px}.admin-chart-wrap{width:100%;min-height:240px}.area-map-label{background:0 0!important;border:none!important}.guide-step-header{align-items:flex-start;gap:16px;display:flex}.guide-step-number{background:linear-gradient(135deg, var(--primary-dark), var(--accent));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:800;display:flex}.guide-body{padding-left:52px}.guide-subhead{color:var(--text);margin:20px 0 6px;font-size:15px;font-weight:700}.guide-body p{color:var(--muted);margin:0 0 12px;font-size:14px;line-height:1.6}.guide-body p strong{color:var(--text)}.guide-ol,.guide-ul{color:var(--muted);margin:0 0 12px;padding-left:20px;font-size:14px;line-height:1.6}.guide-ol li,.guide-ul li{margin:6px 0}.guide-img-wrap{margin:16px 0}.guide-img{border:1px solid var(--line);border-radius:8px;width:100%;box-shadow:0 2px 12px #08366114}.guide-img-caption{color:var(--muted);text-align:center;margin-top:6px;font-size:12px;font-style:italic}.guide-table-wrap{margin:12px 0;overflow-x:auto}.guide-table{border-collapse:collapse;width:100%;font-size:13px}.guide-table th,.guide-table td{border:1px solid var(--line);text-align:left;padding:8px 12px}.guide-table th{background:var(--panel-muted);color:var(--text);font-weight:600}.guide-table code{background:var(--panel-muted);border-radius:3px;padding:1px 5px;font-size:12px}.guide-link{color:var(--primary);font-weight:600;text-decoration:none}.guide-link:hover{text-decoration:underline}@media (max-width:600px){.guide-body{padding-left:0}}.active-event-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.active-event-card{color:#fff;background:var(--brand-navy);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:20px;text-decoration:none;transition:transform .12s,box-shadow .15s;display:block;position:relative;overflow:hidden}.active-event-card:after{content:"";background:linear-gradient(90deg, var(--brand-blue), var(--brand-lime));height:3px;position:absolute;bottom:0;left:0;right:0}.active-event-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@media (min-width:640px){.active-event-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.active-event-grid .active-event-card{height:100%}}@media (min-width:1200px){.active-event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.active-event-label{font-size:var(--font-size-caption-min);letter-spacing:.04em;text-transform:uppercase;color:var(--color-success-text);background:var(--color-success-bg);border-radius:var(--radius-full);align-items:center;gap:5px;margin:0 0 10px;padding:3px 10px;font-weight:700;display:inline-flex}.active-event-label:before{content:"";background:var(--color-success-text);border-radius:50%;width:6px;height:6px}.active-event-name{color:var(--color-text-on-dark);margin:0 0 4px;font-size:22px;font-weight:800;line-height:1.2}.active-event-meta{color:#f1f5f9b3;margin:0 0 16px;font-size:13px}.active-event-cta{background:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.active-event-cta:hover{background:var(--color-primary-hover)}.walk-independent-wrap{box-sizing:border-box;justify-self:start;width:100%;min-width:0;max-width:100%}@media (min-width:640px){.walk-independent-wrap{width:calc(50% - 6px);max-width:calc(50% - 6px)}}@media (min-width:1200px){.walk-independent-wrap{width:calc(33.3333% - 8px);max-width:calc(33.3333% - 8px)}}.walk-independent-card{background:linear-gradient(135deg,#1e40af,#7c3aed)}.walk-independent-card:after{background:linear-gradient(90deg,#60a5fa,#a78bfa)}.walk-independent-card .active-event-label{color:#c4b5fd;background:#ffffff26}.walk-independent-card .active-event-label:before{background:#a78bfa}.event-route-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:640px){.event-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.event-route-card{cursor:pointer;padding:14px 16px 16px;transition:box-shadow .15s;display:block}.event-route-card:hover{box-shadow:var(--shadow-md)}.event-route-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.event-route-number{text-transform:uppercase;letter-spacing:.03em;margin:0 0 2px;font-size:12px;font-weight:700}.event-route-stats{flex-wrap:wrap;flex-shrink:0;gap:6px;display:flex}.event-route-mine{border:1px solid var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.event-route-taken{opacity:.6}.claimed-pill{background:var(--color-warning-bg);color:var(--color-warning-text)}.claim-btn{text-align:center;justify-content:center;width:100%}.claim-btn-inline{background:var(--brand-blue);color:#fff;white-space:nowrap;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.claim-btn-inline:hover{background:var(--brand-blue-hover)}.event-route-btn-done{color:#166534;white-space:nowrap;background:#dcfce7;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none;display:inline-block}.event-route-table{border-collapse:collapse;width:100%}.event-route-table td{border-bottom:1px solid var(--border-light,#f1f5f9);vertical-align:middle}.event-route-table tbody tr:last-child td{border-bottom:none}.event-route-table-section{text-transform:uppercase;letter-spacing:.05em;background:var(--bg-subtle,#f8fafc);color:var(--muted)!important;border-bottom:none!important;padding:14px 12px 6px!important;font-size:11px!important;font-weight:700!important}.event-route-pill{background:var(--brand-lime);color:#fff;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.event-route-preview{border-radius:12px 12px 0 0;margin:-18px -18px 0;overflow:hidden}.event-route-preview .route-preview{border-radius:0}.event-route-preview .route-preview-map{height:160px}.claim-error{color:#dc2626;margin:6px 0 0;font-size:13px}.activate-btn{font-size:14px}.activate-btn.active{background:var(--done-soft);color:var(--done);border-color:var(--done)}.badge-active{background:var(--done-soft);color:var(--done)}:root{--walk-topbar-h:48px}.walk-page{flex-direction:column;flex:1;min-height:0;display:flex}.main-app-root:has(.walk-page){box-sizing:border-box;overscroll-behavior:none;flex-direction:column;height:100dvh;min-height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.main-app-root:has(.walk-page)>.main-app-with-nav{flex-direction:column;flex:1;max-width:none;min-height:0;margin-left:0;margin-right:0;display:flex;overflow:hidden}.walk-list-scroll{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 80px)}.walk-topbar{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff7;flex-direction:column;flex-shrink:0;justify-content:center;padding:0 12px;display:flex;position:sticky;top:0}.walk-topbar-row{height:var(--walk-topbar-h);align-items:center;gap:8px;display:flex}.walk-topbar-progress{background:var(--color-border,#e2e8f0);height:3px;position:absolute;bottom:0;left:0;right:0}.walk-topbar-progress-fill{background:var(--color-primary,#2563eb);border-radius:0 999px 999px 0;height:100%;transition:width .4s}.walk-back-btn{background:var(--panel-muted);border:1px solid var(--line);width:36px;height:36px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:600;text-decoration:none;display:flex}.walk-topbar-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:13px;font-weight:700;overflow:hidden}.walk-topbar-meta{font-size:var(--font-size-caption-min);color:var(--color-text-muted,#94a3b8);white-space:nowrap;flex-shrink:0;font-weight:600}.walk-topbar-pct{color:var(--color-primary);background:var(--primary-soft,#eff6ff);border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:12px;font-weight:800}.walk-map-sticky{top:var(--walk-topbar-h);z-index:100;background:#e8f0fe;flex-shrink:0;height:65vh;min-height:360px;max-height:680px;position:sticky;overflow:hidden;box-shadow:0 6px 20px #00000038}.walk-map-sticky .leaflet-container{width:100%;height:100%}.map-quick-action{z-index:300;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);background:#fffffff7;padding:10px 14px 14px;animation:.18s cubic-bezier(.25,1,.5,1) qa-slide-up;position:absolute;bottom:0;left:0;right:0}@keyframes qa-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.map-qa-top{align-items:center;gap:8px;margin-bottom:10px;display:flex}.map-qa-info{flex-wrap:wrap;flex:1;align-items:baseline;gap:6px;min-width:0;display:flex}.map-qa-num{color:var(--muted);flex-shrink:0;font-size:12px;font-weight:700}.map-qa-addr{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:800;overflow:hidden}.map-qa-units{font-size:var(--font-size-caption-min);color:var(--primary);background:var(--primary-soft);border-radius:999px;flex-shrink:0;padding:1px 6px;font-weight:700}.map-qa-close{background:var(--panel-muted);border:1px solid var(--line);cursor:pointer;width:30px;height:30px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:13px;display:flex}.map-qa-buttons{align-items:stretch;gap:8px;display:flex}.map-qa-btn{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:12px;flex:1;padding:11px 10px;font-size:14px;font-weight:700;transition:opacity .12s,transform .12s}.map-qa-btn:disabled{opacity:.55;cursor:wait}.map-qa-btn:active:not(:disabled){transform:scale(.97)}.map-qa-btn--undo{background:var(--panel-muted);border-color:var(--line);color:var(--muted);flex:none;padding:11px 14px}.map-qa-btn--noaccess{background:var(--warn-soft);color:var(--warn);border-color:#fcd34d}.map-qa-btn--info{background:var(--panel-muted);border-color:var(--line);color:var(--primary);font-size:13px}.map-qa-btn--done{color:#fff;background:linear-gradient(135deg,#15803d,#16a34a);flex:1.4;box-shadow:0 4px 14px #15803d4d}.walk-content{z-index:50;background:#fff;padding-top:0;padding-bottom:100px;position:relative}.walk-list-header{top:var(--walk-topbar-h);z-index:60;border-bottom:1px solid var(--color-border,#e2e8f0);background:#fff;justify-content:space-between;align-items:center;padding:9px 16px 8px;display:flex;position:sticky;box-shadow:0 2px 6px #0000000f}.walk-list-header-label{font-size:var(--font-size-caption-min);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary,#64748b);font-weight:700}.walk-list-header-count{font-size:var(--font-size-caption-min);color:var(--color-text-muted,#94a3b8);font-weight:600}.walk-progress{padding:12px 16px}.walk-progress-row{justify-content:space-between;align-items:center;display:flex}.walk-progress-label{color:var(--text);font-size:13px;font-weight:600}.walk-progress-label.muted{color:var(--muted)}.walk-current-stop{border-radius:var(--radius-lg);background:linear-gradient(135deg,#eff6ff,#f0f9ff);border:1px solid #bfdbfe;padding:14px 16px}.next-stop-label{font-size:var(--font-size-caption-min);text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);margin-bottom:4px;font-weight:700}.walk-stop-address{color:var(--text);margin:4px 0 12px;font-size:24px;font-weight:800;line-height:1.15}.walk-upcoming{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.walk-upcoming-label{font-size:var(--font-size-caption-min);color:var(--color-text-muted);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.04em;margin:0;padding:10px 16px 8px;font-weight:600}.walk-upcoming-row{border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);flex-direction:column;gap:0;padding:10px 12px;font-size:13px;display:flex}.walk-upcoming-row:last-child{border-bottom:none}.walk-upcoming-row--next{background:#f0fdf4}.walk-upcoming-row-top{align-items:center;gap:10px;display:flex}.walk-upcoming-next-badge{font-size:var(--font-size-caption-min);letter-spacing:.06em;text-transform:uppercase;color:#15803d;background:#dcfce7;border-radius:4px;flex-shrink:0;padding:2px 6px;font-weight:800}.walk-upcoming-row .stop-actions{gap:5px;margin-top:7px;display:flex}.walk-upcoming-row .stop-actions .status-btn{font-size:var(--font-size-caption-min);border-radius:8px;min-height:0;padding:4px 10px;line-height:1.4}.walk-upcoming-num{background:var(--color-primary);color:#fff;width:28px;height:28px;font-size:var(--font-size-caption-min);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.walk-upcoming-addr{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--color-text);flex:1;font-weight:600;overflow:hidden}.walk-upcoming-units{font-size:var(--font-size-caption-min);color:var(--primary);background:var(--primary-soft);border-radius:999px;flex:none;padding:2px 6px;font-weight:700}.stop-sheet-backdrop{z-index:300;background:#0d2f5773;animation:.15s sheet-fade-in;position:fixed;inset:0}@keyframes sheet-fade-in{0%{opacity:0}to{opacity:1}}.stop-sheet{z-index:301;background:var(--panel,#fff);padding:0 0 env(safe-area-inset-bottom,24px);border-radius:24px 24px 0 0;max-height:80vh;animation:.22s cubic-bezier(.25,1,.5,1) sheet-slide-up;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -6px 32px #0836612e}@keyframes sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.stop-sheet-handle{display:none}.stop-sheet-header{align-items:flex-start;gap:12px;padding:16px 20px 0;display:flex}.stop-sheet-eyebrow{text-transform:none;letter-spacing:normal;color:var(--muted);margin:0;font-size:21px;font-weight:700}.stop-sheet-address{color:var(--text);margin:0;font-size:21px;font-weight:700;line-height:1.2}.stop-sheet-meta{color:var(--muted);margin:4px 0 0;font-size:13px}.stop-sheet-close{background:var(--panel-muted);border:1px solid var(--line);cursor:pointer;color:#9ca3af;border-radius:50%;flex-shrink:0;width:44px;height:44px;margin-left:auto;padding:4px;font-size:18px}.stop-sheet-voters{background:var(--panel-muted);border:1px solid var(--line);border-radius:12px;margin:16px 20px 0;padding:12px 14px}.stop-sheet-section-label{font-size:var(--font-size-caption-min);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-weight:700}.stop-sheet-voter-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.stop-sheet-voter-name{font-size:15px;font-weight:700}.stop-sheet-voter-unit{color:var(--muted);margin-left:8px;font-size:13px}.door-script-block{margin:14px 20px 0}.door-script-ask{color:var(--text);background:#fffbeb;border:1px solid #fde68a;border-radius:10px;margin:8px 0;padding:8px 12px;font-size:14px}.door-script-text{background:var(--panel-muted);border:1px solid var(--line);color:var(--text);border-radius:12px;margin-top:8px;padding:12px 14px;font-size:14px;line-height:1.65}.door-script-text p{margin:0 0 8px}.door-script-text p:last-child{margin-bottom:0}.stop-sheet-actions{padding:16px 20px 28px}.meeting-point-hint{background:var(--panel-muted);border-bottom:1px solid var(--line);padding:8px 14px;font-size:13px;font-weight:600}.meeting-point-status.unset{color:var(--color-primary)}.meeting-point-status.set{color:var(--color-success-text)}.meeting-point-status.saving{color:var(--color-text-muted)}.meeting-point-status.saved{color:var(--color-success-text)}.meeting-point-status.error{color:#dc2626}.stat-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;min-width:0;display:grid}.stat-box{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;min-width:0;padding:10px 6px}.stat-number{font-variant-numeric:tabular-nums;color:var(--brand-navy);overflow-wrap:anywhere;font-size:clamp(15px,4.5vw,20px);font-weight:800;line-height:1.1}.stat-label{font-size:var(--font-size-caption-min);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-top:4px;font-weight:600}.section-label{font-size:var(--font-size-caption-min);letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary);margin:8px 0 -4px;font-weight:700}.route-card-color-bar{width:100%;height:3px}.walk-stop-row{border-radius:var(--radius-md);background:var(--color-bg-subtle);border:1px solid var(--color-border);align-items:center;gap:10px;padding:10px 12px;display:flex}.walk-stop-dot{width:28px;height:28px;font-size:var(--font-size-caption-min);color:#fff;background:var(--color-primary);border-radius:50%;flex-shrink:0;place-items:center;font-weight:800;display:grid}.walk-stop-dot--done{background:#16a34a}.walk-stop-dot--skip{background:#d97706}.area-card-new{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;color:inherit;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;transition:box-shadow .15s,border-color .15s;display:flex}.area-card-new:hover{box-shadow:var(--shadow-sm);border-color:var(--color-border-strong)}.walk-progress .progress-bar{margin-top:8px}.areas-table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;overflow-x:auto}.areas-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:13px}@media (max-width:800px){.areas-table{min-width:50rem}}.areas-table th{text-align:left;vertical-align:middle;font-size:var(--font-size-caption-min);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:10px 14px;font-weight:700}.areas-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle;white-space:nowrap;padding:10px 14px}.areas-table th:first-child,.areas-table td.areas-table-name{width:30%;min-width:11rem}.areas-table th:nth-child(2),.areas-table td:nth-child(2){width:12.5rem;min-width:12.5rem}.areas-table th:nth-child(3),.areas-table th:nth-child(4),.areas-table th:nth-child(5),.areas-table td:nth-child(3),.areas-table td:nth-child(4),.areas-table td:nth-child(5){text-align:right;width:4.5rem}.areas-table th:last-child,.areas-table td:last-child{text-align:right;width:5.5rem}.areas-table th:nth-child(6),.areas-table td:nth-child(6){min-width:0}.areas-table-row:last-child td{border-bottom:none}.areas-table-row:hover td{background:var(--color-bg-subtle)}.areas-table-name{min-width:11rem;max-width:100%;overflow:hidden}.areas-table-link{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;text-decoration:none;display:block;overflow:hidden}.areas-table-link:hover{color:var(--color-primary);text-decoration:underline}.areas-table-date{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.areas-table-progress-cell{align-items:center;gap:8px;min-width:120px;display:flex}.areas-table-progress-bar{background:var(--color-bg-muted);border-radius:999px;flex:1;height:6px;overflow:hidden}.areas-table-progress-fill{background:var(--color-primary);border-radius:999px;height:100%;transition:width .3s;display:block}.areas-table-pct{color:var(--color-text-secondary);text-align:right;min-width:34px;font-size:12px;font-weight:600}.btn-xs{border-radius:6px;padding:4px 10px;font-size:12px}.reassign-panel{background:var(--color-surface-alt,#f8fafc);border-top:1px solid var(--color-border,#e2e8f0);flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;padding:10px 14px;transition:background .15s;display:flex}.reassign-panel--active{background:#eff6ff;border-top-color:#bfdbfe}.reassign-idle-hint{color:var(--color-text-secondary,#64748b);font-size:12px}.reassign-panel-info{align-items:center;gap:8px;display:flex}.reassign-count{color:#1e3a5f;font-size:13px;font-weight:700}.reassign-from{color:var(--color-text-secondary,#64748b);align-items:center;gap:5px;font-size:13px;display:flex}.reassign-from-badge{color:#fff;font-size:var(--font-size-caption-min);letter-spacing:.02em;border-radius:4px;padding:1px 6px;font-weight:800;display:inline-block}.reassign-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reassign-label{color:var(--color-text-secondary,#64748b);white-space:nowrap;font-size:12px;font-weight:600}.reassign-select{border:1px solid var(--color-border,#e2e8f0);color:var(--color-text,#1e293b);cursor:pointer;background:#fff;border-radius:6px;padding:4px 8px;font-size:13px}.reassign-btn{white-space:nowrap;border-radius:6px;padding:5px 14px;font-size:13px}.reassign-error{color:#dc2626;width:100%;margin:0;padding:4px 0;font-size:12px;font-weight:600}.geofence-map-container{border:1px solid var(--color-border);border-radius:12px;height:520px;position:relative;overflow:hidden}.geofence-selection-bar{justify-content:space-between;align-items:center;padding:10px 0 14px;display:flex}.geofence-selection-count{color:var(--color-text);font-size:14px;font-weight:700}.geofence-selection-hint{color:var(--color-text-secondary);font-size:12px}.geofence-actions{align-items:center;gap:10px;margin-top:14px;display:flex}.geofence-progress{margin-top:14px}.generating-overlay{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:64px 24px;display:flex}.generating-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.generating-overlay strong{color:var(--color-text);font-size:16px}.generating-overlay .helper{max-width:300px;margin:0}.leaflet-control-layers{display:none!important}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:1200;color:#fff;pointer-events:none;background:#16a34a;border-radius:999px;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 18px;font-size:15px;font-weight:600;animation:.18s ease-out toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 28px #00000038}.toast-icon{background:#ffffff38;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;line-height:1;display:inline-flex}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.users-table-header{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;align-items:center;padding:8px 12px;font-size:11px;font-weight:700;display:flex}.users-table-row{align-items:center;padding:10px 12px;font-size:13px;display:flex}.users-table-col-name{flex:1.5;min-width:0;overflow:hidden}.users-table-name{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);display:block;overflow:hidden}.users-table-email-mobile{display:none}.users-table-col-email{text-overflow:ellipsis;white-space:nowrap;color:#64748b;flex:2;min-width:0;font-size:13px;overflow:hidden}.users-table-col-role{justify-content:center;align-items:center;gap:6px;width:180px;display:flex}.users-table-role-select{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:4px;max-width:120px;padding:3px 6px;font-size:12px}.users-table-col-team{text-align:center;flex-shrink:0;width:50px}.users-table-col-joined{text-align:right;color:#64748b;width:110px;font-size:12px}@media (max-width:639px){.users-table-col-email{display:none}.users-table-email-mobile{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.users-table-col-role{flex-shrink:0;width:auto}.users-table-role-select{max-width:90px;padding:2px 4px;font-size:11px}.users-table-col-joined{width:85px;font-size:11px}}.quest-countdown-pill{letter-spacing:.02em;color:#fff;border:none;border-radius:999px;margin-top:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.quest-pending-pill{color:var(--brand-lime)!important;border:1.5px solid var(--brand-lime)!important;background:#fff!important}.quest-pending-banner{text-align:center;color:var(--brand-lime);border:2px solid var(--brand-lime);background:#fff;border-radius:8px;padding:10px 0;font-size:13px;font-weight:600}.quest-verify-form{padding-top:4px}.qv-table-header{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;align-items:center;padding:8px 12px;font-size:11px;font-weight:700;display:flex}.qv-table-row{align-items:center;padding:10px 12px;font-size:13px;display:flex}.qv-col-user{flex-direction:column;flex:1.2;min-width:0;display:flex}.qv-user-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.qv-user-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.qv-col-quest{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.qv-col-submission{flex:1.3;min-width:0;overflow:hidden}.qv-col-time{color:#64748b;text-align:center;flex-shrink:0;width:80px;font-size:12px}.qv-col-actions{flex-shrink:0;justify-content:flex-end;gap:4px;width:150px;display:flex}.qv-btn-approve{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:700}.qv-btn-approve:disabled{opacity:.5;cursor:wait}.qv-btn-reject{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:700}.qv-btn-reject:disabled{opacity:.5;cursor:wait}.qv-modal-backdrop{z-index:9999;background:#0009;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.qv-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;padding:24px;position:relative;overflow-y:auto}.qv-modal-close{color:#64748b;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:22px;line-height:1;position:absolute;top:12px;right:12px}.qv-modal-header{margin-bottom:16px}.qv-modal-img-wrap{text-align:center;margin-bottom:16px}.qv-modal-img{border:1px solid #e2e8f0;border-radius:8px;max-width:100%;max-height:60vh}.qv-modal-actions{justify-content:flex-end;gap:8px;display:flex}@media (max-width:639px){.qv-col-submission{display:none}.qv-col-time{width:50px;font-size:11px}.qv-col-actions{width:110px}}.loc-banner{box-sizing:border-box;border:1px solid var(--warning-color);width:100%;color:var(--warning-color);background:#fff;border-radius:10px;padding:12px 14px;position:relative;box-shadow:0 2px 12px #0000001f}.loc-banner-close{color:var(--color-text-secondary);cursor:pointer;opacity:.7;background:0 0;border:none;padding:2px 6px;font-size:20px;line-height:1;position:absolute;top:8px;right:8px}.loc-banner-close:hover{opacity:1}.loc-banner-pill{background:var(--warning-color);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-block;box-shadow:0 2px 8px #0000001f}.loc-banner-title{color:var(--color-text-secondary);margin:0;font-size:14px;font-weight:700}.loc-banner-body{color:var(--color-text-secondary);margin:6px 0 0;font-size:13px;line-height:1.45}.loc-banner-steps{color:var(--color-text-secondary);margin:8px 0 0;font-size:13px;line-height:1.5}.loc-banner-steps p{margin:2px 0 0}.loc-banner-steps p:first-child{margin-top:0}.loc-banner-btn{background:var(--warning-color);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:10px;padding:8px 16px;font-size:13px;font-weight:700}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}
