:root,[data-theme=dark]{--lime: #b4f06a;--forest: #0f241a;--charcoal: #0b100e;--on-lime: #0b1a10;--bg: #0b100e;--surface: #121916;--surface-raised: #1a231f;--surface-sunken: #0e1412;--surface-forest: #10261b;--line: #26322c;--line-strong: #6d7c75;--ink: #eef4f0;--ink-muted: #a9b8b0;--ink-subtle: #8e9d96;--ink-inverse: #0e1311;--go: #b4f06a;--on-go: #0b1a10;--go-soft: #1c3317;--go-halo: rgba(180, 240, 106, .22);--you: #5aa8ff;--on-you: #04192e;--you-halo: rgba(90, 168, 255, .22);--info: #8fcaff;--info-soft: #14273a;--warn: #f4c55a;--warn-soft: #33270c;--danger: #ff9384;--danger-soft: #3a1712;--glass: rgba(18, 25, 22, .8);--glass-strong: rgba(18, 25, 22, .92);--glass-solid: #141c18;--glass-line: rgba(255, 255, 255, .1);--scrim: rgba(0, 0, 0, .55);--nav-bg: rgba(26, 35, 31, .94);--nav-ink: #c9d6cf;--nav-line: rgba(255, 255, 255, .1);--map-ground: #20251f;--map-veg: #26391f;--map-veg-deep: #131f0f;--map-veg-light: #3e5a2e;--map-water: #17252c;--map-shore: #3a4d55;--map-road: #7c8681;--map-road-edge: #0c110f;--map-trail: #c3ccc7;--map-block: #353c38;--map-roof-edge: #4b544f;--map-block-shadow: rgba(0, 0, 0, .55);--map-block-selected: #3d5034;--map-halo: rgba(10, 14, 12, .82);--map-label: #b6c3bc;--map-marker: #eef4f0;--map-boundary: #9db0a7;--route-walked: #cbd5d0;--route: var(--go);--route-casing: #0b100e;--ad-board: #eef4f0;--ad-ink: #0e1311;--ad-ink-muted: #46524c;--ad-frame: #0b100e;--shadow-float: 0 4px 16px rgba(0, 0, 0, .45);--shadow-sheet: 0 -6px 24px rgba(0, 0, 0, .5);--shadow-nav: 0 6px 20px #00000040;--focus-ring: 0 0 0 2px #0b100e, 0 0 0 3px #b4f06a}[data-theme=light]{--bg: #f3f5f2;--surface: #ffffff;--surface-raised: #ffffff;--surface-sunken: #eef1ed;--surface-forest: #e4f0e6;--line: #e0e6e1;--line-strong: #7a8781;--ink: #0e1311;--ink-muted: #4c5a53;--ink-subtle: #5f6c66;--ink-inverse: #eef4f0;--go: #136f34;--on-go: #ffffff;--go-soft: #e3f4da;--go-halo: rgba(19, 111, 52, .18);--you: #1663c7;--on-you: #ffffff;--you-halo: rgba(22, 99, 199, .16);--info: #1d5fa8;--info-soft: #e3eefa;--warn: #8a5300;--warn-soft: #fbf0d9;--danger: #b42318;--danger-soft: #fde7e4;--glass: rgba(255, 255, 255, .84);--glass-strong: rgba(255, 255, 255, .94);--glass-solid: #fbfcfa;--glass-line: rgba(14, 19, 17, .1);--scrim: rgba(14, 19, 17, .35);--nav-bg: #121916;--nav-line: rgba(255, 255, 255, .06);--map-ground: #ebeae3;--map-veg: #c7dcb5;--map-veg-deep: #9fbf8a;--map-veg-light: #e3efd6;--map-water: #b5cfd9;--map-shore: #8fb2bf;--map-road: #ffffff;--map-road-edge: #c4cbc1;--map-trail: #76827b;--map-block: #fbfbf8;--map-roof-edge: #d9ded5;--map-block-shadow: rgba(40, 56, 46, .22);--map-block-selected: #e8f4dd;--map-halo: rgba(255, 255, 255, .9);--map-label: #46524c;--map-marker: #ffffff;--map-boundary: #5f6f67;--route-walked: #5f6b65;--route: var(--go);--route-casing: #ffffff;--ad-board: #ffffff;--ad-frame: #46524c;--shadow-float: 0 4px 16px rgba(14, 19, 17, .12);--shadow-sheet: 0 -6px 24px rgba(14, 19, 17, .1);--shadow-nav: 0 6px 20px #0e13111c;--focus-ring: 0 0 0 2px #ffffff, 0 0 0 4px #136f34}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 22px;--radius-xl: 28px;--radius-full: 9999px;--tap-min: 44px;--control-h: 52px;--nav-h: 72px;--icon: 22px;--marker-you: 18px;--sheet-peek: 148px;--icon-sm: 16px;--marker-pin: 36px;--billboard-w: 176px;--biz-pin: 30px;--glass-blur: 12px;--font-sans: Figtree, "Segoe UI", Roboto, system-ui, sans-serif;--text-display: 700 2.5rem/2.75rem var(--font-sans);--text-title-1: 700 1.75rem/2.125rem var(--font-sans);--text-title-2: 700 1.375rem/1.75rem var(--font-sans);--text-title-3: 600 1.125rem/1.5rem var(--font-sans);--text-body: 400 1rem/1.5rem var(--font-sans);--text-body-strong: 600 1rem/1.5rem var(--font-sans);--text-label: 600 .9375rem/1.25rem var(--font-sans);--text-caption: 500 .875rem/1.25rem var(--font-sans);--text-nav-label: 600 .8125rem/1rem var(--font-sans);--text-eyebrow: 700 .8125rem/1rem var(--font-sans);--text-numeral-lg: 700 2.25rem/2.5rem var(--font-sans);--text-numeral: 700 1.25rem/1.5rem var(--font-sans)}.display{font-family:var(--font-sans);font-size:2.5rem;line-height:2.75rem;font-weight:700;letter-spacing:-.02em}.title-1{font-family:var(--font-sans);font-size:1.75rem;line-height:2.125rem;font-weight:700;letter-spacing:-.01em}.title-2{font-family:var(--font-sans);font-size:1.375rem;line-height:1.75rem;font-weight:700;letter-spacing:0}.title-3{font-family:var(--font-sans);font-size:1.125rem;line-height:1.5rem;font-weight:600;letter-spacing:0}.body{font-family:var(--font-sans);font-size:1rem;line-height:1.5rem;font-weight:400;letter-spacing:0}.body-strong{font-family:var(--font-sans);font-size:1rem;line-height:1.5rem;font-weight:600;letter-spacing:0}.label{font-family:var(--font-sans);font-size:.9375rem;line-height:1.25rem;font-weight:600;letter-spacing:0}.caption{font-family:var(--font-sans);font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:0}.nav-label{font-family:var(--font-sans);font-size:.8125rem;line-height:1rem;font-weight:600;letter-spacing:0}.eyebrow{font-family:var(--font-sans);font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em}.numeral-lg{font-family:var(--font-sans);font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:-.02em}.numeral{font-family:var(--font-sans);font-size:1.25rem;line-height:1.5rem;font-weight:700;letter-spacing:0}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:1rem;line-height:1.5rem;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit}.uf-icon{display:block;flex:none}[data-icon]{display:inline-flex}.uf-num{font-variant-numeric:tabular-nums}.uf-muted{color:var(--ink-muted)}.uf-subtle{color:var(--ink-subtle)}.uf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.uf-t-display{font-size:2.5rem;line-height:2.75rem;font-weight:700;letter-spacing:-.02em}.uf-t-title-1{font-size:1.75rem;line-height:2.125rem;font-weight:700;letter-spacing:-.01em}.uf-t-title-2{font-size:1.375rem;line-height:1.75rem;font-weight:700}.uf-t-title-3{font-size:1.125rem;line-height:1.5rem;font-weight:600}.uf-t-body{font-size:1rem;line-height:1.5rem}.uf-t-strong{font-size:1rem;line-height:1.5rem;font-weight:600}.uf-t-label{font-size:.9375rem;line-height:1.25rem;font-weight:600}.uf-t-caption{font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted)}.uf-t-numeral-lg{font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.uf-t-numeral{font-size:1.25rem;line-height:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.uf-t-caption,.uf-t-body,.uf-t-strong{margin:0}.uf-t-eyebrow,.uf-eyebrow{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}:is(.uf-t-title-1,.uf-t-title-2,.uf-t-title-3,.uf-t-strong,.uf-t-numeral-lg,.uf-t-numeral)+:is(.uf-t-caption,.uf-t-meta){margin-top:2px}:is(.uf-t-eyebrow,.uf-eyebrow,.uf-card__eyebrow)+*{margin-top:var(--space-3)}.uf-t-meta{margin:0;font-size:.9375rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted);display:flex;align-items:center;gap:6px}.uf-t-meta .uf-icon{width:16px;height:16px;color:var(--ink-subtle)}.uf-divider{height:1px;background:var(--line);border:0;margin:var(--space-4) 0}h1,h2,h3,p{margin:0}:where(button,a,input,[tabindex]):focus-visible{outline:2px solid transparent;box-shadow:var(--focus-ring)}.uf-glass{background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-float)}.uf-glass-strong{background:var(--glass-strong);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-float)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.uf-glass,.uf-glass-strong{background:var(--glass-solid)}}.uf-lite .uf-glass,.uf-lite .uf-glass-strong{background:var(--glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}@media(prefers-reduced-transparency:reduce){.uf-glass,.uf-glass-strong{background:var(--glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}.uf-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-6);border-radius:var(--radius-full);border:1px solid transparent;background:transparent;font-size:1rem;line-height:1.5rem;font-weight:600;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background-color .12s,transform .12s}.uf-btn:active{transform:scale(.98)}.uf-btn--primary{background:var(--go);color:var(--on-go)}.uf-btn--secondary{border-color:var(--line-strong);color:var(--ink);background:transparent}.uf-btn--text{color:var(--go);padding:0 var(--space-3);min-height:var(--tap-min)}.uf-btn--danger{border-color:var(--danger);color:var(--danger)}.uf-btn--sm{min-height:var(--tap-min);padding:0 var(--space-4);font-size:.9375rem}.uf-btn--block{display:flex;width:100%}.uf-btn[disabled]{opacity:.45;cursor:not-allowed}.uf-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-full);border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);cursor:pointer;padding:0;flex:none}.uf-btn-icon.uf-glass,.uf-btn-icon.uf-glass-strong{border-color:var(--glass-line)}.uf-action{display:inline-flex;flex-direction:column;align-items:center;gap:var(--space-1);min-width:64px;background:none;border:0;cursor:pointer;padding:0;color:var(--ink);font-size:.875rem;line-height:1.25rem;font-weight:600}.uf-action .uf-btn-icon{width:48px;height:48px}.uf-link{background:none;border:0;padding:var(--space-2) 0;min-height:var(--tap-min);color:var(--ink-muted);font-size:.9375rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-2)}.uf-search{display:flex;align-items:center;gap:var(--space-2);height:var(--control-h);padding:0 var(--space-1) 0 var(--space-4);border-radius:var(--radius-full);color:var(--ink)}.uf-search__field{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-3);height:100%;background:none;border:0;padding:0;text-align:left;cursor:text;color:var(--ink-muted);font-size:1rem}.uf-search__field .uf-icon{color:var(--ink)}.uf-search__input{flex:1;min-width:0;border:0;background:none;outline:none;font:inherit;color:var(--ink)}.uf-search__input::placeholder{color:var(--ink-muted);opacity:1}.uf-search__sep{width:1px;height:24px;background:var(--line);flex:none}.uf-search .uf-btn-icon{background:transparent;border-color:transparent}.uf-avatar{width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem;background:var(--go-soft);color:var(--go);border:1px solid var(--glass-line);flex:none;cursor:pointer;padding:0}.uf-chips{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;padding:2px}.uf-chips::-webkit-scrollbar{display:none}.uf-chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-4) 0 var(--space-3);border-radius:var(--radius-full);font-size:.9375rem;line-height:1.25rem;font-weight:600;color:var(--ink);background:var(--surface-raised);border:1px solid var(--line);cursor:pointer;white-space:nowrap;flex:none}.uf-chip .uf-icon{width:18px;height:18px;color:var(--ink-muted)}.uf-chip.uf-glass{border-color:var(--glass-line)}.uf-chip[aria-pressed=true],.uf-chip.is-selected{background:var(--go-soft);color:var(--go);border-color:var(--go)}.uf-chip[aria-pressed=true] .uf-icon,.uf-chip.is-selected .uf-icon{color:var(--go)}.uf-chip--status{min-height:36px;padding:0 var(--space-3);font-size:.875rem;cursor:default}.uf-dot-live{width:8px;height:8px;border-radius:50%;background:var(--go);box-shadow:0 0 0 4px var(--go-halo);flex:none}.uf-card{border-radius:var(--radius-lg);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--line)}.uf-card.uf-glass,.uf-card.uf-glass-strong{border-color:var(--glass-line)}.uf-card--forest{background:var(--surface-forest);border-color:transparent}.uf-card__eyebrow{display:flex;align-items:center;gap:var(--space-2);font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}.uf-card__eyebrow .uf-icon{width:16px;height:16px}.uf-card__eyebrow .uf-badge{margin-left:auto;text-transform:none;letter-spacing:0}.uf-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.uf-eta{display:inline-flex;align-items:baseline;gap:4px}.uf-eta__n{font-size:1.25rem;line-height:1.5rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--go)}.uf-eta__u{font-size:.8125rem;font-weight:600;color:var(--ink-subtle)}.uf-badge{display:inline-flex;align-items:center;gap:4px;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:.875rem;line-height:1.25rem;font-weight:600;background:var(--surface-sunken);color:var(--ink)}.uf-badge--go{background:var(--go-soft);color:var(--go)}.uf-sheet{border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-2) var(--space-4) var(--space-4);box-shadow:var(--shadow-sheet);color:var(--ink)}.uf-sheet.uf-glass-strong{box-shadow:var(--shadow-sheet);border-bottom:0}.uf-sheet--solid{background:var(--surface);border:1px solid var(--line);border-bottom:0}.uf-sheet__handle{display:block;width:40px;height:5px;border-radius:var(--radius-full);background:var(--line-strong);margin:0 auto var(--space-3);opacity:.7}.uf-sheet__title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.uf-list{list-style:none;margin:0;padding:0}.uf-row{display:flex;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-3) var(--space-2);border-radius:var(--radius-md);cursor:pointer;width:100%;background:none;border:0;text-align:left;color:var(--ink)}.uf-row+.uf-row,.uf-list li+li .uf-row{border-top:1px solid var(--line);border-radius:0}.uf-row__tile{width:44px;height:44px;border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;flex:none}.uf-row__body{flex:1;min-width:0}.uf-row__title{font-size:1rem;line-height:1.5rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uf-row__meta{margin-top:2px;font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uf-row__end{flex:none;text-align:right;display:flex;flex-direction:column;align-items:flex-end}.uf-row mark{background:none;color:var(--go);font-weight:700}.uf-photo{height:132px;border-radius:var(--radius-md);background:repeating-linear-gradient(135deg,var(--surface-sunken) 0 10px,var(--surface-raised) 10px 20px);display:flex;align-items:flex-end;padding:var(--space-2);color:var(--ink-muted);font-size:.875rem;font-weight:600;border:1px solid var(--line)}.uf-loc__head{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.uf-inside{display:flex;gap:var(--space-2);font-size:1rem;line-height:1.5rem}.uf-inside b{font-weight:600;color:var(--ink)}.uf-inside{color:var(--ink-muted)}.uf-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.uf-stack>*+*{margin-top:var(--space-3)}.uf-stack--lg>*+*{margin-top:var(--space-4)}.uf-fromto{position:relative;border-radius:var(--radius-lg);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.uf-fromto__fields{flex:1;min-width:0;position:relative}.uf-fromto__row{display:flex;align-items:center;gap:var(--space-3);min-height:52px;width:100%;background:none;border:0;padding:0;text-align:left;cursor:pointer;color:var(--ink)}.uf-fromto__row+.uf-fromto__row{border-top:1px solid var(--line)}.uf-fromto__k{font-size:.875rem;font-weight:600;color:var(--ink-muted);width:40px;flex:none}.uf-fromto__v{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:4px}.uf-fromto__v .uf-icon{color:var(--ink-muted)}.uf-fromto__mark{width:14px;height:14px;flex:none;border-radius:50%}.uf-fromto__mark--start{border:3px solid var(--info)}.uf-fromto__mark--end{background:var(--go);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.uf-fromto__rail{position:absolute;left:6px;top:34px;bottom:34px;border-left:2px dotted var(--line-strong)}.uf-route__top{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3)}.uf-steps{list-style:none;margin:0;padding:0}.uf-steps li{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-2) 0;color:var(--ink)}.uf-steps li+li{border-top:1px solid var(--line)}.uf-steps li:last-child{font-weight:600}.uf-steps .uf-icon{color:var(--go);margin-top:1px}.uf-arrived{display:flex;align-items:center;gap:var(--space-3)}.uf-arrived__icon{width:48px;height:48px;border-radius:50%;background:var(--go);color:var(--on-go);display:inline-flex;align-items:center;justify-content:center;flex:none}.uf-route__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.uf-route__eta{display:flex;align-items:baseline;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap}.uf-route__dest{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:var(--go-soft)}.uf-route__dest .uf-row__tile{background:var(--go);color:var(--on-go)}.uf-route .uf-divider{margin:var(--space-4) 0 var(--space-2)}.uf-route .uf-btn{margin-top:var(--space-5)}.uf-timeline{list-style:none;margin:0;padding:0}.uf-timeline li{position:relative;padding:var(--space-2) 0 var(--space-2) 32px;display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3)}.uf-timeline li:before{content:"";position:absolute;left:6px;top:13px;width:12px;height:12px;border-radius:50%;border:2px solid var(--line-strong);background:var(--surface);box-sizing:border-box}.uf-timeline li:not(:last-child):after{content:"";position:absolute;left:11px;top:27px;bottom:-11px;width:2px;background:var(--line)}.uf-timeline li.is-done:before{background:var(--go);border-color:var(--go)}.uf-timeline li.is-done:after{background:var(--go);opacity:.6}.uf-timeline li.is-next:before{border-color:var(--go);box-shadow:0 0 0 4px var(--go-halo)}.uf-timeline__t{font-size:1rem;line-height:1.5rem;color:var(--ink)}.uf-timeline li.is-done .uf-timeline__t{color:var(--ink-muted)}.uf-timeline li.is-next .uf-timeline__t,.uf-timeline li:last-child .uf-timeline__t{font-weight:600}.uf-timeline__m{flex:none;font-size:.8125rem;line-height:1rem;font-weight:600;color:var(--ink-subtle);font-variant-numeric:tabular-nums}.uf-nextclass__course{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.uf-nextclass__time{text-align:right;flex:none}.uf-nextclass__time .uf-t-numeral{font-size:1.5rem;line-height:1.75rem}.uf-day{margin-top:var(--space-4)}.uf-day__h{font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);margin-bottom:var(--space-2)}.uf-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-1);width:auto;max-width:calc(100% - 32px);height:72px;padding:0 10px;border-radius:var(--radius-full);background:var(--nav-bg);border:1px solid var(--nav-line);box-shadow:var(--shadow-nav)}.uf-nav__item{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:0 0 76px;min-width:0;height:64px;padding:0;border:0;background:transparent;color:var(--nav-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:var(--radius-lg)}.uf-nav__dot{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--nav-line);transition:background-color .15s,color .15s,border-color .15s}.uf-nav__dot .uf-icon{width:22px;height:22px}.uf-nav__label{font-size:.8125rem;line-height:1rem;font-weight:600;white-space:nowrap;transition:color .15s}.uf-nav__item[aria-current=page] .uf-nav__dot{background:var(--lime);border-color:var(--lime);color:var(--on-lime)}.uf-nav__item[aria-current=page] .uf-nav__label{color:var(--lime);font-weight:700}.uf-nav__item:focus-visible{outline:0;box-shadow:none}.uf-nav__item:focus-visible .uf-nav__dot{box-shadow:0 0 0 2px var(--nav-bg),0 0 0 4px var(--lime)}.uf-nav-dock{position:absolute;left:0;right:0;bottom:20px;display:flex;justify-content:center;pointer-events:none;z-index:5}.uf-nav-dock>*{pointer-events:auto}.uf-map{display:block;width:100%;height:100%}.uf-map,.uf-marker{--you: #5aa8ff;--on-you: #04192e;--you-halo: rgba(90, 168, 255, .22);--map-marker: #eef4f0}[data-theme=light] .uf-map,[data-theme=light] .uf-marker{--you: #1663c7;--on-you: #ffffff;--you-halo: rgba(22, 99, 199, .16);--map-marker: #ffffff}.uf-map{--map-ground: #20251f;--map-veg: #26391f;--map-veg-deep: #131f0f;--map-veg-light: #3e5a2e;--map-water: #17252c;--map-shore: #3a4d55;--map-road: #7c8681;--map-road-edge: #0c110f;--map-trail: #c3ccc7;--map-block: #353c38;--map-roof-edge: #4b544f;--map-block-shadow: rgba(0, 0, 0, .55);--map-block-selected: #3d5034;--map-halo: rgba(10, 14, 12, .82);--map-label: #b6c3bc;--map-marker: #eef4f0;--route-walked: #cbd5d0}[data-theme=light] .uf-map{--map-ground: #ebeae3;--map-veg: #c7dcb5;--map-veg-deep: #9fbf8a;--map-veg-light: #e3efd6;--map-water: #b5cfd9;--map-shore: #8fb2bf;--map-road: #ffffff;--map-road-edge: #c4cbc1;--map-trail: #76827b;--map-block: #fbfbf8;--map-roof-edge: #d9ded5;--map-block-shadow: rgba(40, 56, 46, .22);--map-block-selected: #e8f4dd;--map-halo: rgba(255, 255, 255, .9);--map-label: #46524c;--map-marker: #ffffff;--route-walked: #5f6b65}.uf-map .m-ground{fill:var(--map-ground)}.uf-map .m-veg-base{fill:var(--map-veg-deep)}.uf-map .m-veg{fill:var(--map-veg)}.uf-map .m-flood-deep{flood-color:var(--map-veg-deep)}.uf-map .m-flood-light{flood-color:var(--map-veg-light)}.uf-map .m-campus{fill:var(--map-ground)}.uf-map .m-water{fill:var(--map-water)}.uf-map .m-shore{fill:none;stroke:var(--map-shore);stroke-width:1.2;opacity:.6}.uf-map .m-relief{fill:#000;opacity:.7}[data-theme=light] .uf-map .m-relief{opacity:.3}.uf-map .m-stop-tree-hi{stop-color:var(--map-veg-light)}.uf-map .m-stop-tree-lo{stop-color:var(--map-veg-deep)}.uf-map .m-tree-shadow{fill:var(--map-block-shadow)}.uf-map .m-road-edge{fill:none;stroke:var(--map-road-edge);stroke-width:7.5;stroke-linecap:round;stroke-linejoin:round}.uf-map .m-road{fill:none;stroke:var(--map-road);stroke-width:3.6;stroke-linecap:round;stroke-linejoin:round}.uf-map .m-trail{fill:none;stroke:var(--map-trail);stroke-width:1.4;stroke-dasharray:3 3.5;stroke-linecap:round;opacity:.85}.uf-map .m-shadow{fill:var(--map-block-shadow)}.uf-map .m-block{fill:var(--map-block);stroke:var(--map-roof-edge);stroke-width:.8;stroke-linejoin:round}.uf-map .m-block--minor{opacity:.82}.uf-map .m-ridge{fill:none;stroke:var(--map-roof-edge);stroke-width:1.2;stroke-linecap:round}.uf-map .m-block.is-selected{fill:var(--map-block-selected);stroke:var(--go);stroke-width:2}.uf-map .m-stop-from{stop-color:var(--go);stop-opacity:.35}.uf-map .m-stop-to{stop-color:var(--go);stop-opacity:1}.uf-map .m-route-glow{fill:none;stroke:var(--go);stroke-width:15;stroke-linecap:round;stroke-linejoin:round;opacity:.2}.uf-map .m-route-casing{fill:none;stroke:var(--route-casing);stroke-width:7.5;stroke-linecap:round;stroke-linejoin:round;opacity:.7}.uf-map .m-route{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.uf-map .m-route-walked{fill:none;stroke:var(--route-walked);stroke-width:2.6;stroke-dasharray:.5 7;stroke-linecap:round}.uf-map text{font-family:var(--font-sans);paint-order:stroke;stroke:var(--map-halo);stroke-linejoin:round}.uf-map .m-label{fill:var(--map-label);font-size:11.5px;font-weight:600;letter-spacing:.01em;stroke-width:3.2px}.uf-map .m-label.is-strong{fill:var(--ink);font-size:14px;font-weight:800;stroke-width:4px}.uf-map .m-label--area{font-size:11px;font-weight:500;font-style:italic}.uf-map .m-poi-label{fill:var(--map-label);font-size:10.5px;font-weight:500;stroke-width:3px}.uf-map .m-poi-ring{fill:var(--map-marker);stroke:var(--ink-muted);stroke-width:1.6}.uf-map .m-poi-glyph{stroke:var(--charcoal)}.uf-map .m-poi--warn .m-poi-ring{stroke:var(--warn)}.uf-map .m-poi--danger .m-poi-ring{stroke:var(--danger)}.uf-map .m-poi--go .m-poi-ring{stroke:var(--go)}.uf-map .m-poi--info .m-poi-ring{stroke:var(--info)}.uf-map .m-you-acc{fill:var(--you-halo);stroke:var(--you);stroke-width:1.3;stroke-dasharray:3 4;opacity:.95}.uf-map .m-you{fill:var(--you);stroke:var(--map-marker);stroke-width:2.5}.uf-map .m-you-arrow{fill:var(--on-you)}.uf-map .m-start{fill:var(--map-marker);stroke:var(--charcoal);stroke-width:2.5}.uf-map .m-start-dot{fill:var(--charcoal)}.uf-map .m-dest-halo{fill:var(--lime);opacity:.2}.uf-map .m-dest-disc{fill:var(--lime);stroke:var(--charcoal);stroke-width:2}.uf-map .m-dest-glyph{stroke:var(--on-lime)}.uf-lite .uf-map .m-relief{display:none}.uf-lite .uf-map .m-veg{filter:none}.uf-map--hero .m-ground{fill:var(--charcoal)}.uf-map--hero .m-water{fill:#0d1a1a}.uf-map--hero .m-green{fill:var(--forest)}.uf-map--hero .m-block{fill:none;stroke:none}.uf-map--hero .m-road-edge,.uf-map--hero .m-terrain{stroke:none;fill:none}.uf-map--hero .m-road{stroke:#1f3a29;stroke-width:2.5}.uf-map--hero .m-path{stroke:#1a2e22;stroke-width:1.2}.uf-map--hero .m-green,.uf-map--hero .m-water{fill:none}.uf-map--hero .m-net{fill:none;stroke:#1d3426;stroke-width:1.1;stroke-linecap:round}.uf-map--hero .m-artery{fill:none;stroke:#2c5a3b;stroke-width:2.2}.uf-map--hero .m-dot{fill:var(--lime)}.uf-map--hero .m-dot--sm{opacity:.55}.uf-map--hero .m-glow{fill:var(--lime);opacity:.18;animation:uf-glow 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes uf-glow{0%,to{opacity:.1;transform:scale(.7)}50%{opacity:.32;transform:scale(1.15)}}@media(prefers-reduced-motion:reduce){.uf-map--hero .m-glow{animation:none;opacity:.22}}.uf-lite .uf-map--hero .m-glow{animation:none;opacity:.22}.uf-marker{display:inline-flex;flex-direction:column;align-items:center;gap:4px;background:none;border:0;padding:0;cursor:pointer;color:var(--ink)}.uf-marker__label{font-size:.8125rem;line-height:1rem;font-weight:600;padding:3px 8px;border-radius:var(--radius-sm);background:var(--glass-strong);border:1px solid var(--glass-line);color:var(--ink);white-space:nowrap}.uf-marker--you .uf-marker__dot{width:var(--marker-you);height:var(--marker-you);border-radius:50%;background:var(--you);border:3px solid var(--map-marker);box-shadow:0 0 0 12px var(--you-halo)}.uf-marker--start .uf-marker__dot{width:18px;height:18px;border-radius:50%;background:var(--surface-raised);border:4px solid var(--ink)}.uf-marker--dest .uf-marker__pin{width:32px;height:40px;display:block}.uf-marker--dest .uf-marker__pin path{fill:var(--ink);stroke:var(--route-casing);stroke-width:2}.uf-marker--dest .uf-marker__pin circle{fill:var(--go)}[data-theme=light] .uf-marker--dest .uf-marker__pin circle{fill:var(--lime)}.uf-marker--place .uf-marker__tile,.uf-marker--landmark .uf-marker__tile{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-raised);color:var(--ink);border:2px solid var(--line-strong)}.uf-marker--place .uf-marker__tile{border-radius:var(--radius-sm)}.uf-marker--landmark .uf-marker__tile{border-radius:50%}.uf-marker--place.is-selected .uf-marker__tile{background:var(--go);color:var(--on-go);border-color:var(--route-casing)}.uf-marker__tile .uf-icon{width:20px;height:20px}.uf-ask{display:flex;align-items:center;gap:var(--space-2);min-height:60px;padding:0 var(--space-2) 0 var(--space-5);border-radius:var(--radius-full);background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:inset 0 1px #ffffff1a,var(--shadow-float)}[data-theme=light] .uf-ask{box-shadow:inset 0 1px #ffffffe6,var(--shadow-float)}.uf-ask:focus-within{box-shadow:var(--focus-ring)}.uf-lite .uf-ask{background:var(--glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}@media(prefers-reduced-transparency:reduce){.uf-ask{background:var(--glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}.uf-ask-glow,.uf-phone.uf-ask-glow{background:radial-gradient(55% 35% at 85% 30%,rgba(180,240,106,.16),transparent 70%),radial-gradient(120% 60% at 10% 0%,var(--go-soft),transparent 60%),radial-gradient(90% 50% at 100% 100%,var(--surface-forest),transparent 65%),var(--bg)}.uf-ask__input{flex:1;min-width:0;border:0;background:none;outline:none;font:inherit;font-size:1rem;color:var(--ink);height:56px}.uf-ask__input::placeholder{color:var(--ink-muted);opacity:1}.uf-ask .uf-btn-icon--go{width:44px;height:44px;background:var(--go);color:var(--on-go);border:0}.uf-bubble{max-width:85%;padding:var(--space-3) var(--space-4);border-radius:20px;font-size:1rem;line-height:1.5rem}.uf-bubble--me{margin-left:auto;background:var(--go-soft);color:var(--ink);border-bottom-right-radius:6px}.uf-bubble--bot{background:var(--surface-raised);border:1px solid var(--line);border-bottom-left-radius:6px}.uf-toast{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);background:var(--ink);color:var(--ink-inverse);font-weight:600;box-shadow:var(--shadow-float)}.uf-toast__icon{width:28px;height:28px;border-radius:50%;background:var(--lime);color:var(--on-lime);display:inline-flex;align-items:center;justify-content:center;flex:none}.uf-toast__icon .uf-icon{width:18px;height:18px}.uf-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.9375rem;line-height:1.25rem;font-weight:600}.uf-banner--warn{background:var(--warn-soft);color:var(--warn)}.uf-banner--info{background:var(--info-soft);color:var(--info)}.uf-banner--danger{background:var(--danger-soft);color:var(--danger)}.uf-banner__text{flex:1;color:var(--ink)}.uf-banner__text b{display:block}.uf-banner__text span{font-weight:500;color:var(--ink-muted);font-size:.875rem}.uf-empty{text-align:center;padding:var(--space-8) var(--space-5);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.uf-empty__icon{width:64px;height:64px;border-radius:50%;background:var(--go-soft);color:var(--go);display:inline-flex;align-items:center;justify-content:center}.uf-empty__icon--warn{background:var(--warn-soft);color:var(--warn)}.uf-empty__icon .uf-icon{width:28px;height:28px}.uf-theme-switch{position:relative;display:inline-flex;align-items:center;width:84px;height:var(--tap-min);padding:3px;border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface-sunken);cursor:pointer;color:var(--ink-muted);flex:none}.uf-theme-switch__opt{position:relative;z-index:1;flex:1;height:100%;display:inline-flex;align-items:center;justify-content:center;transition:color .2s}.uf-theme-switch__opt .uf-icon{width:20px;height:20px}.uf-theme-switch__knob{position:absolute;top:3px;left:3px;width:38px;height:36px;border-radius:var(--radius-full);background:var(--surface-raised);box-shadow:0 1px 3px #00000040;transition:transform .2s ease}[data-theme=dark] .uf-theme-switch__knob,:root:not([data-theme=light]) .uf-theme-switch__knob{transform:translate(38px);background:var(--lime)}[data-theme=light] .uf-theme-switch__knob{transform:none;background:var(--surface-raised)}:root:not([data-theme=light]) .uf-theme-switch__opt--dark,[data-theme=light] .uf-theme-switch__opt--light{color:var(--on-lime)}[data-theme=light] .uf-theme-switch__opt--light{color:var(--ink)}.uf-theme-switch.uf-glass{border-color:var(--glass-line)}@media(prefers-reduced-motion:reduce){.uf-theme-switch__knob{transition:none}}.uf-seg{display:flex;padding:4px;gap:4px;border-radius:var(--radius-full);background:var(--surface-sunken);border:1px solid var(--line)}.uf-seg__opt{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;border-radius:var(--radius-full);border:0;background:transparent;color:var(--ink-muted);font-size:.9375rem;font-weight:600;cursor:pointer}.uf-seg__opt .uf-icon{width:18px;height:18px}.uf-seg__opt[aria-checked=true]{background:var(--surface-raised);color:var(--ink);box-shadow:0 1px 3px #0000002e}.uf-preview{padding:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-start}.uf-preview--col{flex-direction:column;align-items:stretch;flex-wrap:nowrap}.uf-phone{position:relative;width:390px;height:820px;border-radius:40px;overflow:hidden;background:var(--bg);border:1px solid var(--line);flex:none}.uf-phone__status{position:absolute;top:0;left:0;right:0;height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;font-size:.875rem;font-weight:700;z-index:6;color:var(--ink);font-variant-numeric:tabular-nums}.uf-screen-map{position:absolute;inset:0}.uf-top{position:absolute;top:52px;left:var(--space-4);right:var(--space-4);z-index:4;display:flex;flex-direction:column;gap:var(--space-3)}.uf-top__bar{display:flex;align-items:center;gap:var(--space-2)}.uf-controls{position:absolute;right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:4}.uf-bottom{position:absolute;left:0;right:0;bottom:0;z-index:4}.uf-label-sm{font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:var(--ink-muted)}.uf-pin{display:block;flex:none;overflow:visible}.uf-pin__body{fill:var(--map-marker, #ffffff);stroke:var(--ink-muted);stroke-width:2}.uf-pin__glyph{stroke:var(--charcoal);fill:none}.uf-pin--go .uf-pin__body{stroke:var(--go)}.uf-pin--info .uf-pin__body{stroke:var(--info)}.uf-pin--warn .uf-pin__body{stroke:var(--warn)}.uf-pin--danger .uf-pin__body{stroke:var(--danger)}.uf-pin.is-selected .uf-pin__body{fill:var(--lime);stroke:var(--charcoal)}.uf-pin.is-selected .uf-pin__glyph{stroke:var(--on-lime)}[data-marker]{display:inline-flex;--map-marker: #eef4f0}[data-theme=light] [data-marker]{--map-marker: #ffffff}.uf-iconset{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:var(--space-2)}.uf-iconset__cell{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--line);min-width:0}.uf-iconset__row{display:flex;align-items:center;gap:var(--space-3);color:var(--ink);min-height:44px}.uf-iconset__name{font-size:.8125rem;line-height:1rem;font-weight:600;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uf-iconset__active{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--go-soft);color:var(--go)}.uf-status{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:3px 10px 3px 8px;border-radius:var(--radius-full);font-size:.875rem;line-height:1.25rem;font-weight:600;white-space:nowrap;background:var(--surface-sunken);color:var(--ink-muted)}.uf-status .uf-icon{width:16px;height:16px}.uf-status--in-office,.uf-status--live{background:var(--go-soft);color:var(--go)}.uf-status--in-class,.uf-status--office-hours,.uf-status--upcoming{background:var(--info-soft);color:var(--info)}.uf-status--soon,.uf-status--changed,.uf-status--pending{background:var(--warn-soft);color:var(--warn)}.uf-status--cancelled,.uf-status--rejected{background:var(--danger-soft);color:var(--danger)}.uf-status--lg{min-height:36px;padding:6px 14px 6px 10px;font-size:.9375rem}.uf-status--lg .uf-icon{width:18px;height:18px}.uf-countdown{display:inline-flex;flex-direction:column;gap:2px}.uf-countdown__k{font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}.uf-countdown__v{display:flex;align-items:baseline;gap:6px;font-variant-numeric:tabular-nums;color:var(--ink)}.uf-countdown__n{font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:-.02em}.uf-countdown__u{font-size:1rem;font-weight:600;color:var(--ink-muted)}.uf-countdown--soon .uf-countdown__n{color:var(--warn)}.uf-countdown--live .uf-countdown__n{color:var(--go)}.uf-countdown--over .uf-countdown__n{color:var(--ink-muted);font-size:1.375rem;line-height:1.75rem}.uf-person{width:44px;height:44px;border-radius:50%;background:var(--surface-forest);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem;flex:none;position:relative}.uf-person--lg{width:60px;height:60px;font-size:1.125rem}.uf-person__dot{position:absolute;right:-1px;bottom:-1px;width:14px;height:14px;border-radius:50%;border:2.5px solid var(--surface);background:var(--ink-subtle)}.uf-person__dot--in{background:var(--go)}.uf-person__dot--class{background:var(--info)}.uf-datetile{width:44px;height:44px;border-radius:var(--radius-sm);background:var(--surface-sunken);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;flex:none;line-height:1}.uf-datetile__d{font-size:1.0625rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.uf-datetile__m{font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);margin-top:2px}.uf-row__tags{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.uf-group__h{display:flex;align-items:center;justify-content:space-between;margin:var(--space-4) 0 var(--space-1);font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}.uf-group__h:first-child{margin-top:0}.uf-group__h span+span{letter-spacing:0;text-transform:none;font-weight:600}.uf-kv{display:grid;grid-template-columns:22px 1fr;column-gap:var(--space-3);row-gap:var(--space-3);align-items:start}.uf-kv>.uf-icon,.uf-kv>[data-icon]{color:var(--ink-subtle);margin-top:1px}.uf-kv__t{font-size:1rem;line-height:1.5rem;font-weight:600;color:var(--ink)}.uf-kv__m{font-size:.9375rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted);margin-top:2px}.uf-event__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.uf-event__code{font-size:1.75rem;line-height:2.125rem;font-weight:700;letter-spacing:-.01em}.uf-event__strip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-forest)}.uf-changed{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--warn-soft);color:var(--warn)}.uf-changed__t{color:var(--ink);font-weight:600}.uf-changed__m{color:var(--ink-muted);font-size:.9375rem;line-height:1.25rem}.uf-changed s{color:var(--ink-muted)}.uf-footnote{font-size:.8125rem;line-height:1rem;font-weight:500;color:var(--ink-subtle);display:flex;align-items:center;gap:6px}.uf-footnote .uf-icon{width:14px;height:14px}.uf-btnrow{display:flex;gap:var(--space-2)}.uf-btnrow>*{flex:1}.uf-reminder{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg)}.uf-reminder__icon{width:40px;height:40px;border-radius:50%;background:var(--go-soft);color:var(--go);display:inline-flex;align-items:center;justify-content:center;flex:none}.uf-reminder__body{flex:1;min-width:0}.uf-field{display:flex;flex-direction:column;gap:6px}.uf-field__label{font-size:.9375rem;line-height:1.25rem;font-weight:600;color:var(--ink)}.uf-field__label em{font-style:normal;font-weight:500;color:var(--ink-subtle)}.uf-input,.uf-select,.uf-textarea{width:100%;min-height:var(--control-h);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);font:inherit;font-size:1rem;line-height:1.5rem}.uf-textarea{padding:var(--space-3) var(--space-4);min-height:96px;resize:vertical}.uf-select{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);text-align:left;cursor:pointer}.uf-select .uf-icon{color:var(--ink-muted)}.uf-input::placeholder,.uf-textarea::placeholder{color:var(--ink-muted);opacity:1}.uf-input:focus-visible,.uf-textarea:focus-visible{outline:2px solid transparent;box-shadow:var(--focus-ring)}.uf-field__help{font-size:.875rem;line-height:1.25rem;color:var(--ink-muted)}.uf-field--error .uf-input{border-color:var(--danger)}.uf-field--error .uf-field__help{color:var(--danger);display:flex;gap:6px;align-items:center;font-weight:600}.uf-field--error .uf-field__help .uf-icon{width:16px;height:16px}.uf-field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.uf-switch{position:relative;width:52px;height:32px;border-radius:var(--radius-full);border:1px solid var(--line-strong);background:var(--surface-sunken);cursor:pointer;flex:none;padding:0}.uf-switch:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:var(--ink-muted);transition:transform .15s,background-color .15s}.uf-switch[aria-checked=true]{background:var(--go);border-color:var(--go)}.uf-switch[aria-checked=true]:after{transform:translate(20px);background:var(--on-go)}.uf-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:56px;padding:var(--space-2) 0}.uf-toggle-row+.uf-toggle-row{border-top:1px solid var(--line)}.uf-statuspick{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.uf-statuspick__opt{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);min-height:84px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);font-size:1rem;font-weight:600;cursor:pointer;text-align:left}.uf-statuspick__opt .uf-icon{color:var(--ink-muted)}.uf-statuspick__opt[aria-checked=true]{border-color:var(--go);background:var(--go-soft);box-shadow:inset 0 0 0 1px var(--go)}.uf-statuspick__opt[aria-checked=true] .uf-icon{color:var(--go)}.uf-table-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.uf-table{width:100%;border-collapse:collapse;font-size:.9375rem;line-height:1.25rem}.uf-table th{text-align:left;padding:var(--space-3) var(--space-4);font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle);background:var(--surface-sunken);border-bottom:1px solid var(--line);white-space:nowrap}.uf-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle}.uf-table tr:last-child td{border-bottom:0}.uf-table td .uf-t-meta{font-size:.875rem}.uf-table__actions{display:flex;gap:var(--space-2);justify-content:flex-end}.uf-table__actions .uf-btn-icon{width:36px;height:36px}.uf-toolbar{display:inline-flex;flex-direction:column;gap:4px;padding:6px;border-radius:var(--radius-lg)}.uf-toolbar--row{flex-direction:row}.uf-tool{position:relative;width:44px;height:44px;border-radius:var(--radius-sm);border:0;background:transparent;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.uf-tool[aria-pressed=true]{background:var(--lime);color:var(--on-lime)}.uf-tool--danger{color:var(--danger)}.uf-toolbar__sep{height:1px;background:var(--glass-line);margin:4px 6px}.uf-toolbar--row .uf-toolbar__sep{width:1px;height:auto;margin:6px 4px}.uf-toolgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-2)}.uf-toolgrid__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-raised);font-size:.9375rem;font-weight:600;color:var(--ink)}.uf-bell{position:relative}.uf-bell--on{color:var(--go);border-color:var(--go)}.uf-bell__dot{position:absolute;top:7px;right:8px;width:10px;height:10px;box-sizing:border-box;border-radius:50%;background:var(--warn);border:2px solid var(--glass-solid)}.uf-reminder--urgent{background:#3c2a00;border:1.5px solid var(--warn);border-radius:18px;box-shadow:var(--shadow-float)}[data-theme=light] .uf-reminder--urgent{background:var(--warn-soft)}.uf-reminder--urgent .uf-reminder__icon{background:var(--warn);color:var(--warn-soft)}.uf-reminder--urgent .uf-t-eyebrow{color:var(--warn)}.uf-reminder--urgent .uf-t-meta{color:var(--ink)}.uf-locate{color:#5aa8ff;border-color:#5aa8ff}[data-theme=light] .uf-locate{color:#1663c7;border-color:#1663c7}.uf-mode-sun{display:none}[data-theme=light] .uf-mode-sun{display:inline-flex}[data-theme=light] .uf-mode-moon{display:none}.uf-note__dot{width:10px;height:10px;border-radius:50%;background:var(--warn);display:inline-block}.uf-still *,.uf-still *:before,.uf-still *:after{animation:none!important;transition:none!important}.uf-still .uf-map--hero .m-glow{opacity:.22}.uf-nav--5 .uf-nav__item{flex-basis:66px}.uf-nav--5{gap:0;padding:0 6px}.uf-btn-icon--go{background:var(--go);color:var(--on-go);border-color:transparent}.uf-btn--wa .uf-icon{color:inherit}.uf-map{--map-boundary: #9db0a7}[data-theme=light] .uf-map{--map-boundary: #5f6f67}.uf-map .m-boundary{fill:none;stroke:var(--map-boundary);stroke-width:2.4;stroke-dasharray:1 8;stroke-linecap:round}.uf-map .m-block--town{opacity:.55}.uf-map .m-park rect{fill:var(--map-marker);stroke:var(--charcoal);stroke-width:2}.uf-map .m-park path{fill:none;stroke:var(--charcoal);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.uf-trust{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:3px 10px 3px 7px;border-radius:var(--radius-full);font-size:.8125rem;line-height:1rem;font-weight:700;white-space:nowrap;border:1px solid transparent}.uf-trust .uf-icon{width:16px;height:16px}.uf-trust--university{background:var(--go);color:var(--on-go)}.uf-trust--role{background:var(--go-soft);color:var(--go)}.uf-trust--community{background:transparent;color:var(--ink-muted);border:1px dashed var(--line-strong)}.uf-trust--updated{background:var(--info-soft);color:var(--info)}.uf-trust--ended{background:var(--surface-sunken);color:var(--ink-muted)}.uf-trustrow{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.uf-level{display:grid;grid-template-columns:28px 1fr;gap:var(--space-3);align-items:start;padding:var(--space-3) 0}.uf-level+.uf-level{border-top:1px solid var(--line)}.uf-level__n{width:28px;height:28px;border-radius:50%;background:var(--surface-sunken);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem}.uf-adtag{display:inline-flex;align-items:center;padding:1px 7px;border-radius:7px;font-size:.8125rem;line-height:1.125rem;font-weight:700;background:var(--ink);color:var(--ink-inverse);white-space:nowrap;flex:none}.uf-billboard,.uf-bizpin{--ad-board: #eef4f0;--ad-ink: #0e1311;--ad-ink-muted: #46524c;--ad-frame: #0b100e;--ad-post: #eef4f0}[data-theme=light] .uf-billboard,[data-theme=light] .uf-bizpin{--ad-board: #ffffff;--ad-frame: #46524c;--ad-post: #46524c}.uf-billboard{position:relative;display:inline-flex;flex-direction:column;align-items:center;background:none;border:0;padding:0;cursor:pointer;font:inherit}.uf-billboard__board{display:flex;align-items:center;gap:var(--space-2);width:var(--billboard-w, 176px);padding:8px 10px 8px 8px;border-radius:12px;background:var(--ad-board);color:var(--ad-ink);border:2px solid var(--ad-frame);box-shadow:var(--shadow-float);text-align:left}.uf-billboard__logo{width:34px;height:34px;border-radius:9px;background:var(--ad-frame);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem;flex:none;overflow:hidden}.uf-billboard__logo .uf-icon{width:18px;height:18px}.uf-billboard__name{display:block;font-size:.8125rem;line-height:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uf-billboard__line{display:block;font-size:.8125rem;line-height:1rem;font-weight:500;color:var(--ad-ink-muted)}.uf-billboard__post{width:4px;height:14px;background:var(--ad-post)}.uf-billboard__foot{width:14px;height:5px;border-radius:50%;background:var(--ad-post);opacity:.55;margin-top:-2px}.uf-billboard .uf-adtag{position:absolute;top:-9px;right:-6px;background:var(--ad-frame);color:#fff;border:1.5px solid var(--ad-board)}.uf-bizpin{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--ad-board);color:var(--ad-ink);border:2px solid var(--ad-frame);padding:0;cursor:pointer;box-shadow:var(--shadow-float)}.uf-bizpin .uf-icon{width:16px;height:16px}.uf-bizpin .uf-adtag{position:absolute;top:-14px;right:-24px;background:var(--ad-frame);color:#fff;border:1.5px solid var(--ad-board)}.uf-maplabel{font-size:.8125rem;line-height:1rem;font-weight:700;padding:3px 8px;border-radius:var(--radius-sm);background:var(--glass-strong);border:1px solid var(--glass-line);color:var(--ink);white-space:nowrap}.uf-campus{font-weight:700;padding:0 var(--space-3)}.uf-campus .uf-icon:last-child{color:var(--ink-muted)}.uf-pick{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:64px;padding:var(--space-3) var(--space-2);background:none;border:0;text-align:left;color:var(--ink);cursor:pointer;font:inherit}.uf-list li+li .uf-pick{border-top:1px solid var(--line)}.uf-pick[aria-checked=true] .uf-row__tile{background:var(--go-soft);color:var(--go)}.uf-pick__check{color:var(--go);display:inline-flex}.uf-pick[aria-disabled=true]{cursor:not-allowed}.uf-pick[aria-disabled=true] .uf-row__title,.uf-pick[aria-disabled=true] .uf-row__tile{color:var(--ink-muted)}.uf-modes{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.uf-mode{display:flex;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);text-align:left;cursor:pointer;font:inherit}.uf-mode>.uf-icon,.uf-mode>[data-icon]{color:var(--ink-muted)}.uf-mode__k{display:block;font-size:.875rem;line-height:1.125rem;font-weight:600;color:var(--ink-muted)}.uf-mode__v{display:block;font-size:1.25rem;line-height:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.uf-mode[aria-checked=true]{border-color:var(--go);background:var(--go-soft);box-shadow:inset 0 0 0 1px var(--go)}.uf-mode[aria-checked=true]>.uf-icon,.uf-mode[aria-checked=true]>[data-icon],.uf-mode[aria-checked=true] .uf-mode__v{color:var(--go)}.uf-mode[disabled]{cursor:not-allowed;border-style:dashed;background:transparent}.uf-mode[disabled] .uf-mode__v{font-size:.9375rem;line-height:1.25rem;font-weight:600;color:var(--ink-muted)}.uf-hint{display:flex;align-items:center;gap:var(--space-2);font-size:.9375rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted)}.uf-hint .uf-icon{width:18px;height:18px;color:var(--warn);flex:none}.uf-greet{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.uf-next{display:block;width:100%;text-align:left;color:var(--ink);cursor:pointer;font:inherit}.uf-next__row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3)}.uf-next__go{display:inline-flex;align-items:center;gap:var(--space-2);flex:none}.uf-next__go .uf-btn-icon{width:48px;height:48px}.uf-sec{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.uf-sec .uf-link{min-height:0;padding:0;color:var(--go);text-decoration:none}.uf-usage{display:inline-flex;align-items:center;gap:10px;font-size:.9375rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted)}.uf-usage b{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.uf-mapcard{position:relative;display:block;width:100%;height:132px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);padding:0;cursor:pointer;background:var(--surface-sunken)}.uf-mapcard__cta{position:absolute;left:10px;bottom:10px}.uf-prompt{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px dashed var(--line-strong);background:transparent}.uf-prompt__body{flex:1;min-width:0}.uf-tile--go{background:var(--go-soft);color:var(--go)}.uf-tile--warn{background:var(--warn-soft);color:var(--warn)}.uf-tile--info{background:var(--info-soft);color:var(--info)}.uf-row--top{align-items:flex-start}.uf-row__end .uf-btn-icon{width:44px;height:44px}.uf-row__title--wrap{white-space:normal}.uf-sharecard{position:relative;width:100%;aspect-ratio:1.91;border-radius:var(--radius-md);overflow:hidden;background:#0b100e;color:#eef4f0;border:1px solid var(--line)}.uf-sharecard__art{position:absolute;inset:0;opacity:.9}.uf-sharecard__shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b100ef0,#0b100ec7 55%,#0b100e33)}.uf-sharecard__body{position:absolute;inset:0;padding:var(--space-4);display:flex;flex-direction:column;justify-content:space-between}.uf-sharecard__brand{display:flex;align-items:center;gap:var(--space-2);font-size:.8125rem;font-weight:700;letter-spacing:.04em;color:#b4f06a}.uf-sharecard__t{font-size:1.375rem;line-height:1.625rem;font-weight:700;letter-spacing:-.01em}.uf-sharecard__m{margin-top:4px;font-size:.9375rem;line-height:1.25rem;font-weight:500;color:#c9d6cf}.uf-sharecard__f{font-size:.8125rem;font-weight:600;color:#a9b8b0}.uf-sharegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.uf-sharegrid .uf-action{min-width:0}.uf-linkbox{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-1) 0 var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--line);color:var(--ink-muted);font-size:.9375rem;font-weight:500}.uf-linkbox span:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uf-qr{width:132px;height:132px;padding:10px;border-radius:var(--radius-md);background:#fff;flex:none}.uf-qr svg{display:block;width:100%;height:100%}.uf-shared{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg)}.uf-install{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg)}.uf-install__body{flex:1;min-width:0}.uf-appicon{width:44px;height:44px;border-radius:12px;background:var(--charcoal);display:inline-flex;align-items:center;justify-content:center;flex:none}.uf-appicon:after{content:"";width:14px;height:14px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px #b4f06a40}.uf-photo--store{height:148px}.uf-price{font-variant-numeric:tabular-nums}.uf-taglist{display:flex;flex-wrap:wrap;gap:6px}.uf-row--sponsored{background:var(--surface-sunken);border-radius:var(--radius-md)!important;padding-left:var(--space-3);padding-right:var(--space-3)}.uf-progress{display:flex;align-items:center;gap:var(--space-3)}.uf-progress__bar{flex:1;display:flex;gap:6px}.uf-progress__bar i{flex:1;height:5px;border-radius:3px;background:var(--surface-sunken);border:1px solid var(--line)}.uf-progress__bar i.is-on{background:var(--go);border-color:var(--go)}.uf-progress__n{font-size:.875rem;font-weight:700;color:var(--ink-muted);font-variant-numeric:tabular-nums}.uf-optcard{display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);text-align:left;cursor:pointer;font:inherit}.uf-optcard+.uf-optcard{margin-top:var(--space-2)}.uf-optcard>.uf-icon,.uf-optcard>[data-icon]{color:var(--ink-muted);margin-top:2px}.uf-optcard__body{flex:1;min-width:0}.uf-optcard__price{flex:none;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.uf-optcard__price small{display:block;font-size:.8125rem;font-weight:600;color:var(--ink-subtle)}.uf-optcard[aria-checked=true]{border-color:var(--go);background:var(--go-soft);box-shadow:inset 0 0 0 1px var(--go)}.uf-optcard[aria-checked=true]>.uf-icon,.uf-optcard[aria-checked=true]>[data-icon]{color:var(--go)}.uf-sum{margin:0}.uf-sum>div{display:flex;justify-content:space-between;gap:var(--space-4);padding:10px 0;font-size:.9375rem;line-height:1.25rem}.uf-sum>div+div{border-top:1px solid var(--line)}.uf-sum dt{color:var(--ink-muted);font-weight:500}.uf-sum dd{margin:0;color:var(--ink);font-weight:600;text-align:right}.uf-sum .uf-sum__total dt,.uf-sum .uf-sum__total dd{font-size:1.125rem;line-height:1.5rem;font-weight:700;color:var(--ink)}.uf-stat{flex:1;min-width:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-sunken)}.uf-stat__n{font-size:1.25rem;line-height:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.uf-drop{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;padding:var(--space-5) var(--space-4);border-radius:var(--radius-md);border:1.5px dashed var(--line-strong);background:var(--surface-sunken);color:var(--ink);text-align:center;cursor:pointer;font:inherit}.uf-drop>.uf-icon,.uf-drop>[data-icon]{color:var(--go)}.uf-file{display:flex;align-items:center;gap:var(--space-3);padding:10px var(--space-2) 10px var(--space-3);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised)}.uf-file__body{flex:1;min-width:0}.uf-file__name{font-size:.9375rem;line-height:1.25rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uf-file__meta{font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--ink-muted);display:flex;align-items:center;gap:6px}.uf-file__meta .uf-icon{width:16px;height:16px}.uf-file--ok .uf-file__meta{color:var(--go)}.uf-file--error{border-color:var(--danger)}.uf-file--error .uf-file__meta{color:var(--danger);font-weight:600}.uf-file .uf-btn-icon{background:transparent;border-color:transparent}.uf-bar{height:5px;border-radius:3px;background:var(--surface-sunken);border:1px solid var(--line);overflow:hidden;margin-top:6px}.uf-bar i{display:block;height:100%;background:var(--go)}.uf-menu{border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised);box-shadow:var(--shadow-float);padding:6px}.uf-menu__group{padding:10px var(--space-3) 4px;font-size:.8125rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}.uf-menu__opt{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-sm);border:0;background:none;color:var(--ink);font:inherit;font-size:1rem;text-align:left;cursor:pointer}.uf-menu__opt[aria-selected=true]{background:var(--go-soft);color:var(--go);font-weight:600}.uf-menu__opt small{font-size:.875rem;color:var(--ink-muted);font-weight:500}.uf-select.is-open{box-shadow:var(--focus-ring)}.uf-mapchip{width:300px;border-radius:var(--radius-lg);padding:var(--space-3) var(--space-3) var(--space-2) var(--space-4)}.uf-mapchip__head{display:flex;align-items:center;gap:var(--space-3);width:100%;background:none;border:0;padding:0;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.uf-mapchip__body{flex:1;min-width:0}.uf-mapchip ul{list-style:none;margin:var(--space-2) 0 0;padding:0}.uf-mapchip li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--line);font-size:.9375rem;line-height:1.25rem}.uf-mapchip li b{font-weight:600;white-space:nowrap}.uf-mapchip .uf-t-eyebrow{white-space:nowrap}.uf-mapchip li span{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-weight:500}.uf-set{display:flex;align-items:center;gap:var(--space-3);min-height:60px;padding:var(--space-2) 0}.uf-set+.uf-set{border-top:1px solid var(--line)}.uf-set>.uf-icon,.uf-set>[data-icon]{color:var(--ink-muted)}.uf-set__body{flex:1;min-width:0}.uf-set__val{font-size:.9375rem;font-weight:600;color:var(--ink-muted);display:inline-flex;align-items:center;gap:4px}.uf-textsize .uf-seg__opt:nth-child(1){font-size:.875rem}.uf-textsize .uf-seg__opt:nth-child(3){font-size:1.125rem}.uf-web{width:390px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;flex:none}.uf-web__bar{display:flex;align-items:center;gap:var(--space-2);padding:10px var(--space-4);background:var(--surface-sunken);border-bottom:1px solid var(--line);font-size:.8125rem;font-weight:600;color:var(--ink-muted)}.uf-web__head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4)}.uf-web__main{padding:0 var(--space-4) var(--space-5)}.uf-web__map{height:170px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--line)}.uf-web ul.uf-plain{margin:0;padding-left:1.1rem;color:var(--ink)}.uf-web ul.uf-plain li{padding:2px 0}.uf-brand{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:1.0625rem}a.uf-btn,a.uf-row,a.uf-nav__item,a.uf-chip,a.uf-avatar,a.uf-btn-icon,a.uf-search__field,a.uf-link{text-decoration:none}button.uf-chip,button.uf-nav__item,button.uf-search__field,button.uf-link{font:inherit;cursor:pointer}.uf-screen h1,.uf-screen h2,.uf-screen p{margin:0}.uf-row{padding-left:0;padding-right:0;gap:14px}.uf-row__tile{border-radius:12px}.uf-row__meta{color:var(--ink-muted)}.uf-row__end .uf-btn-icon--go{background:var(--go-soft);color:var(--go)}.uf-t-title-1{letter-spacing:-.02em}.uf-sec{margin-bottom:8px}.uf-sec .uf-link{font-size:.9375rem;font-weight:600}.uf-btn--block{width:100%}.s2-sec{margin-top:8px}.uf-screen{position:absolute;inset:0;z-index:15;overflow-y:auto;background:var(--bg);color:var(--ink);font-family:Figtree,Segoe UI,Roboto,system-ui,sans-serif}.uf-screen__body{box-sizing:border-box;padding:calc(env(safe-area-inset-top) + 16px) 20px 120px;display:flex;flex-direction:column;gap:24px;max-width:560px;margin:0 auto}.uf-empty{padding:16px 0;color:var(--ink-muted)}.wb-wrap{position:absolute;left:0;right:0;top:0;height:64%;overflow:hidden}.wb-wrap .wb{position:absolute;left:0;right:0;top:8%;width:100%;height:92%}.welcome__text{position:absolute;left:0;right:0;bottom:0;padding:0 20px calc(env(safe-area-inset-bottom) + 44px);text-align:center;max-width:560px;margin:0 auto}.wb-wrap{background:linear-gradient(180deg,#123222 0%,#0f241a 45%,var(--bg) 100%)}.wb .g-t{fill:#1a2a22}.wb .g-l{fill:#0f1814}.wb .g-r{fill:#14201a}.wb .lawn{fill:#1d3326}.wb .path{fill:#2a3b32}.wb .b-t{fill:#4a6155}.wb .b-l{fill:#26362e}.wb .b-r{fill:#314439}.wb .w{fill:#122019}.wb .w.wr{fill:#16261e}.wb .wl{fill:#b4f06a;opacity:.9}.wb .p-t{fill:#5a7366}.wb .p-l{fill:#2e4037}.wb .p-r{fill:#384c41}.wb .c-t{fill:#dfe8e3}.wb .c-l{fill:#c3d0c9}.wb .c-r{fill:#93a59b}.wb .ped{fill:#3a4f44}.wb .roof{fill:#5a7366}.wb .roof2{fill:#46594f}.wb .door{fill:#0b100e}.wb .pole{stroke:#93a59b;stroke-width:1.5}.wb .flag{fill:#b4f06a}.wb .sh{fill:#00000059}.wb .tr{stroke:#5a4636;stroke-width:2.5;stroke-linecap:round}.wb .lf{fill:#2e6a44}.wb .lf2{fill:#3f8a58}.wb .halo{fill:#b4f06a29}.wb .pin{fill:#b4f06a}.wb .pin-c{fill:#0f241a}[data-theme=light] .wb-wrap{background:linear-gradient(180deg,#d6e9dc 0%,#e7f1ea 50%,var(--bg) 100%)}[data-theme=light] .wb .g-t{fill:#dfe8e1}[data-theme=light] .wb .g-l{fill:#bccbc1}[data-theme=light] .wb .g-r{fill:#cbd8cf}[data-theme=light] .wb .lawn{fill:#c9e2cd}[data-theme=light] .wb .path{fill:#f3f6f3}[data-theme=light] .wb .b-t{fill:#fff}[data-theme=light] .wb .b-l{fill:#eef2ef}[data-theme=light] .wb .b-r{fill:#d8e1db}[data-theme=light] .wb .w{fill:#a9bdb1}[data-theme=light] .wb .w.wr{fill:#9fb3a7}[data-theme=light] .wb .wl{fill:#e9c45a;opacity:1}[data-theme=light] .wb .p-t{fill:#f7faf8}[data-theme=light] .wb .p-l{fill:#dde5df}[data-theme=light] .wb .p-r{fill:#cdd8d1}[data-theme=light] .wb .c-t{fill:#fff}[data-theme=light] .wb .c-l{fill:#f2f5f3}[data-theme=light] .wb .c-r{fill:#cbd6cf}[data-theme=light] .wb .ped{fill:#e8eee9}[data-theme=light] .wb .roof{fill:#c4d2c9}[data-theme=light] .wb .roof2{fill:#aebfb4}[data-theme=light] .wb .door{fill:#2f4138}[data-theme=light] .wb .pole{stroke:#6b7c73}[data-theme=light] .wb .flag{fill:#2e8b1f}[data-theme=light] .wb .sh{fill:#0f241a24}[data-theme=light] .wb .tr{stroke:#8a6a4e}[data-theme=light] .wb .lf{fill:#5aa36a}[data-theme=light] .wb .lf2{fill:#7cc287}[data-theme=light] .wb .halo{fill:#2e8b1f29}[data-theme=light] .wb .pin{fill:#2e8b1f}[data-theme=light] .wb .pin-c{fill:#fff}.ed-sheetform{width:100%;max-width:560px;margin:0 auto;max-height:90dvh;overflow-y:auto;padding-bottom:calc(env(safe-area-inset-bottom) + 24px)}.uf-sec{justify-content:space-between;align-items:center}.report-link{flex-direction:row;margin-left:auto;align-self:center;color:var(--muted);font-weight:600}.no-anim *,.no-anim *:before,.no-anim *:after{animation:none!important;transition:none!important}.app>.uf-nav-dock{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 16px);z-index:16}.uf-screen .uf-campus{min-width:0;flex:0 1 auto;max-width:calc(100% - 100px)}.uf-screen .uf-search__field{min-width:0}.uf-screen .uf-search__field span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.uf-screen .uf-chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px;padding:0 20px;scrollbar-width:none}.uf-screen .uf-chips::-webkit-scrollbar{display:none}.uf-screen .uf-chips .uf-chip{flex:none}.uf-screen [style*="flex-wrap: wrap"].uf-chips,.ed-sheetform .uf-chips{flex-wrap:wrap;overflow:visible;margin:0;padding:0}.app .uf-nav{width:calc(100% - 32px);max-width:420px;padding:0 6px;gap:0}.app .uf-nav__item{flex:1 1 0;min-width:0}.app .uf-nav__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media(max-width:340px){.app .uf-nav{height:64px}.app .uf-nav__dot{width:34px;height:34px}.app .uf-nav__label{font-size:.75rem}}.sheet{transition:height .2s ease-out}.sheet.open{height:calc(100dvh - env(safe-area-inset-top) - 132px);z-index:6}.sheet-grab{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:6px 0 4px;flex:none;text-align:left;cursor:grab}.sheet-grab .handle{align-self:center}.outside-card{display:flex;flex-direction:column;gap:10px}.outside-card__head{display:flex;justify-content:space-between;align-items:center;gap:8px}.outside-card .uf-card__eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0}.outside-card__times{display:flex;gap:8px;flex-wrap:wrap}.outside-card__times .uf-chip{cursor:default}.outside-card__x{width:36px;height:36px;margin:-6px -6px -6px 0}.outside-card__line{display:inline-flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.outside-card__go{margin-left:auto;min-height:40px;padding:0 16px}.outside-card.is-floating{padding:12px 14px;gap:8px}.outside-card.is-floating .uf-chip{min-height:36px;padding:0 12px}.outside-card.is-floating{position:absolute;top:calc(env(safe-area-inset-top) + 116px);left:16px;right:16px;max-width:420px;margin:0 auto;z-index:5;box-shadow:var(--shadow-sheet, 0 8px 24px rgb(0 0 0 / .25));animation:card-up .2s ease-out}.away-arrow{position:absolute;z-index:3;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--you, #5aa8ff);color:var(--on-you, #04192e);box-shadow:0 0 0 6px #5aa8ff40,0 4px 12px #0000004d;pointer-events:none}.away-arrow__dot{display:none}.poll{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:12px;border-radius:var(--radius-md);background:var(--surface-sunken, var(--surface-2))}.poll__q{font-weight:700;font-size:.875rem}.poll__btns{display:flex;gap:8px;flex-wrap:wrap}.poll__btns .uf-chip{flex:1 1 auto;justify-content:center}.poll-done{margin:8px 0 0;font-size:.8125rem;color:var(--ink-muted)}.offline-banner{position:absolute;left:16px;right:16px;max-width:420px;margin:0 auto;bottom:calc(var(--panel-h) + 12px);z-index:6;box-shadow:var(--shadow-float, 0 4px 12px rgb(0 0 0 / .25))}.is-routing .offline-banner,.is-searching .offline-banner{display:none}.urgent-wrap{position:absolute;top:calc(env(safe-area-inset-top) + 116px);left:16px;right:16px;max-width:420px;margin:0 auto;z-index:7}.uf-reminder--urgent .uf-btn--sm{flex:none}.share-art{background:radial-gradient(circle at 78% 40%,#b4f06a 0 6px,transparent 7px),radial-gradient(circle at 78% 40%,rgb(180 240 106 / .25) 0 22px,transparent 23px),repeating-linear-gradient(115deg,#14201a 0 18px,#1a2a22 18px 20px),#0f1814}.share-qr{display:flex;gap:16px;align-items:center}.share-meet{display:flex;flex-direction:column;gap:8px}.uf-linkbox .uf-btn--text{flex:none}.meet-banner{position:absolute;top:calc(env(safe-area-inset-top) + 116px);left:16px;right:16px;max-width:420px;margin:0 auto;z-index:5;box-shadow:var(--shadow-sheet, 0 8px 24px rgb(0 0 0 / .25))}.meet-banner .uf-row__tile{flex:none}.meet-banner>span:nth-child(2){flex:1;min-width:0}button,a,[role=switch],[role=radio],label{touch-action:manipulation}.uf-row,.uf-chip,.uf-btn-icon,.uf-avatar,.uf-link,.uf-search__field,.place-row,.round-btn,.chip,.picker-row,.uf-seg__opt,.uf-nav__item,.search-pill,.ed-item{transition:background-color .12s,transform .12s,opacity .12s}:is(button,a).uf-row:active,.place-row:active,.picker-row:active{background:var(--surface-raised, rgb(127 127 127 / .12))}:is(button,a).uf-row,.place-row,.picker-row{border-radius:12px}.uf-chip:active,.uf-btn-icon:active,.uf-avatar:active,.round-btn:active,.chip:active,.search-pill:active,.uf-search__field:active,.uf-seg__opt:active{transform:scale(.95)}.uf-link:active,.uf-nav__item:active{opacity:.6}.app [disabled]{cursor:not-allowed}.is-routing>.uf-nav-dock,.has-card>.uf-nav-dock,.is-searching>.uf-nav-dock{display:none}.has-away .map-controls{top:max(24%,calc(env(safe-area-inset-top) + 236px))}.has-away .maplibregl-ctrl-top-left{top:calc(env(safe-area-inset-top) + 226px)!important}.app:has(>.picker-backdrop)>.uf-nav-dock{display:none}:root{--bg: #f3f5f2;--surface: #ffffff;--surface-2: #eef1ed;--text: #0e1311;--muted: #4c5a53;--accent: #136f34;--accent-soft: #e3f4da;--on-accent: #ffffff;--border: #e0e6e1;--line-strong: #7a8781;--you: #1663c7;--warn: #8a5300;--warn-soft: #fbf0d9;--danger: #b42318;--tabbar: #121916;--tabbar-text: #c9d6cf;--tab-active: #b4f06a;--shadow: 0 4px 16px rgba(14, 19, 17, .12);--radius-md: 16px;--radius-lg: 22px;--radius-xl: 28px;font-family:Figtree,Segoe UI,Roboto,system-ui,sans-serif;color-scheme:light}:root[data-theme=dark]{--bg: #0b100e;--surface: #121916;--surface-2: #1a231f;--text: #eef4f0;--muted: #a9b8b0;--accent: #b4f06a;--accent-soft: #1c3317;--on-accent: #0b1a10;--border: #26322c;--line-strong: #6d7c75;--you: #5aa8ff;--warn: #f4c55a;--warn-soft: #33270c;--danger: #ff9384;--tabbar: rgba(26, 35, 31, .94);--tabbar-text: #c9d6cf;--tab-active: #b4f06a;--shadow: 0 4px 16px rgba(0, 0, 0, .45);color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);overscroll-behavior:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.muted{color:var(--muted)}.app{position:relative;height:100dvh;overflow:hidden;overflow:clip;--sheet-h: 38dvh}.map .maplibregl-ctrl-top-left{top:calc(env(safe-area-inset-top) + 124px);left:6px}.app .map{position:absolute;inset:0}.map-loading{display:grid;place-items:center;padding-bottom:var(--sheet-h);color:var(--muted);font-size:14px}.map .maplibregl-ctrl-bottom-right{bottom:calc(var(--panel-h, var(--sheet-h)) + 6px)}.top{position:absolute;top:0;left:0;right:0;padding:calc(env(safe-area-inset-top) + 12px) 16px 0;display:flex;flex-direction:column;align-items:flex-start;gap:10px;pointer-events:none}.top>*{pointer-events:auto}.search-pill{width:100%;height:48px;display:flex;align-items:center;gap:10px;padding:0 16px;border-radius:24px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--muted);font-size:16px;text-align:left}.search-pill svg{color:var(--text)}.chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:20px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);font-size:14px}.map-controls{position:absolute;right:16px;top:24%;display:flex;flex-direction:column;gap:10px}.round-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.round-btn.on{background:var(--text);color:var(--bg)}.round-btn.locate-btn{color:var(--you)}.sheet{position:absolute;left:0;right:0;bottom:0;height:var(--sheet-h);padding:8px 16px calc(env(safe-area-inset-bottom) + 88px);background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-top:1px solid var(--border);box-shadow:0 -2px 12px #00000014;display:flex;flex-direction:column}.handle{width:40px;height:4px;border-radius:2px;background:var(--border);margin:0 auto 8px;flex:none}.sheet-title{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:4px 0}.place-list{list-style:none;margin:0;padding:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.place-list li+li{border-top:1px solid var(--border)}.place-row{width:100%;display:flex;align-items:center;gap:14px;padding:12px 0;text-align:left}.place-icon{width:44px;height:44px;flex:none;border-radius:12px;display:grid;place-items:center;background:var(--surface-2)}.place-text{display:flex;flex-direction:column;gap:2px;min-width:0}.place-text strong{font-size:16px}.place-text .muted{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.is-searching .top,.is-searching .map-controls,.is-searching .sheet,.is-searching .tabbar{visibility:hidden}.search-screen{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;gap:12px;padding:calc(env(safe-area-inset-top) + 12px) 16px 16px;background:var(--bg);background:color-mix(in srgb,var(--bg) 55%,transparent)}.search-head{display:flex;align-items:center;gap:10px}.search-head .round-btn{flex:none}.search-field{flex:1;min-width:0;height:48px;display:flex;align-items:center;gap:10px;padding:0 8px 0 16px;border-radius:24px;background:var(--surface);border:2px solid var(--accent);box-shadow:var(--shadow)}.search-field input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:16px}.search-field input::placeholder{color:var(--muted)}.search-field input::-webkit-search-cancel-button{display:none}.clear-btn{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;flex:none}.results-card{min-height:0;max-height:100%;overflow-y:auto;padding:8px 16px;border-radius:20px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.section-label{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:8px 0 0}.result-list{list-style:none;margin:0;padding:0}.result-list li+li{border-top:1px solid var(--border)}.place-icon.accent{background:var(--accent-soft);color:var(--accent)}.result-list .place-text .muted{white-space:normal}mark{background:none;color:var(--accent);font-weight:700}.empty{display:flex;flex-direction:column;gap:4px;padding:16px 0}.has-card .sheet,.has-card .tabbar,.has-card .map-controls,.has-card .top{visibility:hidden}.place-card{position:absolute;left:0;right:0;bottom:0;z-index:5;max-height:75dvh;overflow-y:auto;padding:8px 20px calc(env(safe-area-inset-bottom) + 20px);background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-top:1px solid var(--border);box-shadow:0 -2px 12px #0000001a;animation:card-up .2s ease-out}@keyframes card-up{0%{transform:translateY(24px);opacity:0}}@media(prefers-reduced-motion:reduce){.place-card{animation:none}}.card-head{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.card-type{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.round-btn.small{width:40px;height:40px;box-shadow:none}.card-title{margin:4px 0 2px;font-size:24px;line-height:1.2}.card-sub{margin:0;font-size:15px}.card-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.pill{padding:4px 10px;border-radius:8px;background:var(--surface-2);font-size:14px;font-weight:600}.card-facts{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}.card-facts li{display:flex;gap:14px;align-items:flex-start}.card-facts li>svg{flex:none;color:var(--muted);margin-top:2px}.card-facts div{display:flex;flex-direction:column;gap:2px;font-size:15px}.primary-btn{width:100%;height:52px;margin-top:20px;border-radius:26px;background:var(--accent);color:var(--on-accent);font-size:17px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px}.card-actions{display:flex;gap:20px;margin-top:16px}.action{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:14px;font-weight:600}.action .round-btn{box-shadow:none}.action[aria-pressed=true] .round-btn{color:var(--accent);border-color:var(--accent)}.saved-mark{margin-left:auto;color:var(--accent);flex:none}.pill.accent{display:inline-flex;align-items:center;gap:4px;background:var(--accent-soft);color:var(--accent)}.row-time{margin-left:auto;flex:none;font-size:13px;color:var(--muted)}.row-time strong{font-size:20px;color:var(--accent)}.saved-mark+.row-time{margin-left:8px}.live-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);flex:none}.near-chip{position:absolute;left:16px;bottom:calc(var(--sheet-h) + 10px);display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);font-size:14px}.toast{position:absolute;left:16px;right:16px;top:calc(env(safe-area-inset-top) + 120px);z-index:40;padding:12px 16px;border-radius:14px;background:var(--text);color:var(--bg);font-size:14px;box-shadow:var(--shadow)}.is-routing .top,.is-routing .map-controls,.is-routing .sheet,.is-routing .tabbar,.is-routing .near-chip,.has-card .near-chip,.is-searching .near-chip{visibility:hidden}.route-head{position:absolute;top:calc(env(safe-area-inset-top) + 12px);left:16px;right:16px;display:flex;align-items:center;gap:10px;z-index:5}.route-head>.round-btn{flex:none}.route-ends{position:relative;flex:1;min-width:0;padding:4px 48px 4px 14px;border-radius:18px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.route-end{display:flex;align-items:center;gap:10px;height:44px;min-width:0}.route-end+.route-end{border-top:1px solid var(--border)}.end-dot{width:12px;height:12px;border-radius:50%;flex:none}.end-dot.from{border:2px solid var(--you)}.end-dot.to{background:var(--accent)}.end-label{width:40px;flex:none;font-size:14px;color:var(--muted)}.end-name,.route-end select{flex:1;min-width:0;font:inherit;font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.route-end select{height:100%;border:0;background:transparent;outline-offset:2px;cursor:pointer}.route-end select option{color:initial}.swap-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;border-radius:50%}.swap-btn:disabled{opacity:.35;cursor:default}.route-sheet{position:absolute;left:0;right:0;bottom:0;z-index:5;max-height:46dvh;overflow-y:auto;padding:8px 20px calc(env(safe-area-inset-bottom) + 20px);background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-top:1px solid var(--border);box-shadow:0 -2px 12px #0000001a;animation:card-up .2s ease-out}.route-label{display:flex;align-items:center;gap:8px;margin-bottom:12px}.notice{margin:0 0 12px;padding:8px 12px;border-radius:10px;background:var(--warn-soft);color:var(--warn);font-size:14px}.modes{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-card{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:16px;border:1.5px solid var(--border);text-align:left;color:var(--muted)}.mode-card[aria-checked=true]{border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent)}.mode-card:disabled{opacity:.5;cursor:default}.mode-card>span{display:flex;flex-direction:column}.mode-name{font-size:14px;color:var(--text)}.mode-time{font-size:22px;color:var(--text)}.mode-dist{font-size:13px;color:var(--muted)}.faster{margin-left:6px;padding:1px 6px;border-radius:9999px;background:var(--accent);color:var(--on-accent);font-style:normal;font-size:11px;font-weight:700}.hint{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:14px;color:var(--muted)}.arrived{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px;padding:12px 14px;border-radius:14px;background:var(--accent-soft);color:var(--accent)}.arrived div{display:flex;flex-direction:column;gap:2px;color:var(--text)}.unverified{display:flex;align-items:center;gap:6px;margin:16px 0 0;font-size:13px;color:var(--muted)}.offline-chip{position:absolute;top:calc(env(safe-area-inset-top) + 118px);right:16px;padding:6px 12px;border-radius:16px;background:var(--text);color:var(--bg);font-size:13px;font-weight:600;box-shadow:var(--shadow)}.is-routing .offline-chip,.is-searching .offline-chip{visibility:hidden}.install-bar{position:absolute;left:12px;right:12px;bottom:calc(var(--sheet-h) + 10px);z-index:6;display:flex;align-items:center;gap:10px;padding:10px 8px 10px 12px;border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);font-size:14px}.install-bar img{border-radius:9px;flex:none}.install-bar>span{display:flex;flex-direction:column;min-width:0;flex:1}.install-bar .muted{font-size:13px}.install-add{flex:none;padding:8px 16px;border-radius:18px;background:var(--accent);color:var(--on-accent);font-weight:700}.picker-backdrop{position:absolute;inset:0;z-index:30;background:#00000059;display:flex;align-items:flex-end}.picker{width:100%;padding:8px 20px calc(env(safe-area-inset-bottom) + 20px);background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:card-up .2s ease-out}.picker-list{list-style:none;margin:8px 0 0;padding:0}.picker-list li+li{border-top:1px solid var(--border)}.picker-row{width:100%;display:flex;align-items:center;gap:14px;padding:12px 0;text-align:left}.picker-row:disabled{opacity:.45;cursor:default}.picker-tick{margin-left:auto;color:var(--accent)}.route-meta{margin:10px 0 4px;font-size:14px}.steps{list-style:none;margin:8px 0 0;padding:12px 0 0;border-top:1px solid var(--border)}.steps li{position:relative;display:flex;justify-content:space-between;gap:12px;padding:0 0 18px 28px;font-size:15px}.steps li:before{content:"";position:absolute;left:4px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--accent)}.steps li:not(:last-child):after{content:"";position:absolute;left:8px;top:17px;bottom:0;width:2px;background:var(--accent);opacity:.5}.steps li.arrive{font-weight:700;padding-bottom:4px}.steps li.arrive:before{background:none;border:2px solid var(--muted);left:3px}.step-dist{flex:none;font-size:14px}.outline-btn{width:100%;height:50px;margin-top:16px;border-radius:25px;border:1.5px solid var(--border);font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.tabbar{position:absolute;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom) + 12px);height:68px;border-radius:34px;background:var(--tabbar);display:flex;justify-content:space-around;align-items:center;box-shadow:var(--shadow)}.tab{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:13px;font-weight:600;color:var(--tabbar-text);min-width:64px}.tab-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid rgb(255 255 255 / .12)}.tab.active{color:var(--tab-active)}.tab.active .tab-icon{background:var(--tab-active);color:#10180f;border-color:transparent}
