:root{--ink: #131a3d;--ink-2: #1b2350;--ink-soft: #55608c;--ink-faint: #616a86;--paper: #f4efe3;--paper-2: #faf7ef;--sheet: #ffffff;--field: #ffffff;--rule: rgba(27, 35, 80, .16);--rule-soft: rgba(27, 35, 80, .09);--rule-strong: rgba(27, 35, 80, .32);--go: #15803d;--go-dk: #0f6330;--go-ink: #ffffff;--go-shadow: rgba(11, 61, 31, .9);--go-soft: rgba(21, 128, 61, .1);--mark: #c2401f;--mark-soft: rgba(194, 64, 31, .1);--warn: #8a5c0a;--warn-soft: rgba(138, 92, 10, .12);--danger: #c0392b;--danger-soft: rgba(192, 57, 43, .1);--band: #131a3d;--band-2: #1b2350;--on-band: #ffffff;--on-band-soft: rgba(220, 227, 255, .66);--band-shadow: rgba(19, 26, 61, .28);--panel: #131a3d;--panel-2: #1b2350;--on-panel: #ffffff;--on-panel-soft: rgba(220, 227, 255, .66);--display: "Space Grotesk", "Plus Jakarta Sans", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--body: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--ff: var(--body);--page-title-ff: var(--display);--page-title-size: 19px;--page-title-weight: 700;--page-title-tracking: .14em;--r-sm: 2px;--r: 3px;--r-lg: 4px;--hair: 1px;--stroke: 1.5px;--stamp: 4px 4px 0 var(--band-shadow);--stamp-go: 4px 4px 0 var(--go-shadow);--stamp-sm: 2px 2px 0 var(--band-shadow);--lift: 0 10px 30px rgba(19, 26, 61, .14);--lift-lg: 0 24px 60px rgba(19, 26, 61, .22);--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--s7: 32px;--s8: 48px;--t-fast: .12s ease;--t: .18s ease;--t-slow: .28s ease;--col: min(460px, 100%);--frost: rgba(250, 247, 239, .92);--topbar-h: 56px;--bg: var(--paper);--bg-elev: var(--sheet);--bg-elev-2: var(--paper-2);--text: var(--ink);--muted: var(--ink-soft);--border: var(--rule);--brand: var(--band);--brand-600: var(--band-2);--brand-700: #0d1230;--success: var(--go);--warning: var(--warn);--radius: var(--r);--shadow: var(--lift);--shadow-soft: var(--stamp-sm)}body.dark-mode{--ink: #e7ebff;--ink-2: #c9d2f7;--ink-soft: #98a2ca;--ink-faint: #838cb4;--paper: #0d1020;--paper-2: #121629;--sheet: #181d33;--field: #0d1020;--rule: rgba(190, 203, 255, .2);--rule-soft: rgba(190, 203, 255, .11);--rule-strong: rgba(190, 203, 255, .36);--go: #35d17c;--go-dk: #1f9d59;--go-ink: #06210f;--go-shadow: rgba(0, 0, 0, .6);--go-soft: rgba(53, 209, 124, .14);--mark: #ff7f60;--mark-soft: rgba(255, 127, 96, .14);--warn: #e0b155;--warn-soft: rgba(224, 177, 85, .16);--danger: #ff7b6b;--danger-soft: rgba(255, 123, 107, .14);--band: #05070f;--band-2: #10152b;--on-band: #eef1ff;--on-band-soft: rgba(220, 227, 255, .6);--band-shadow: rgba(0, 0, 0, .6);--panel: #1c2444;--panel-2: #263056;--on-panel: #eef1ff;--on-panel-soft: rgba(220, 227, 255, .62);--lift: 0 10px 30px rgba(0, 0, 0, .5);--lift-lg: 0 24px 60px rgba(0, 0, 0, .66);--frost: rgba(13, 16, 32, .92);--brand-700: #04060d}*{box-sizing:border-box}*{-webkit-tap-highlight-color:transparent}button,a,[role=button],.settings-list-item,.conversation-item{-webkit-user-select:none;user-select:none}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--t-slow),color var(--t-slow)}:focus-visible{outline:var(--stroke) solid var(--go);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--ink);color:var(--paper-2)}a{color:var(--ink);text-decoration-color:var(--rule-strong);text-underline-offset:2px}a:hover{text-decoration-color:currentColor}hr{height:0;margin:var(--s6) 0;border:0;border-top:var(--hair) solid var(--rule)}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=search],input[type=number],input[type=date],input[type=url],textarea,select{width:100%;padding:12px 13px;border:var(--hair) solid var(--rule);border-radius:var(--r);background:var(--field);color:var(--ink);font-family:var(--body);font-size:15px;outline:none;transition:border-color var(--t),box-shadow var(--t),background var(--t)}input::placeholder,textarea::placeholder{color:var(--ink-faint)}input:focus,textarea:focus,select:focus{border-color:var(--ink-soft);box-shadow:0 0 0 3px var(--go-soft)}input:disabled,textarea:disabled,select:disabled{background:var(--paper-2);color:var(--ink-faint);cursor:not-allowed}textarea{min-height:110px;resize:vertical;line-height:1.55}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:inset 0 0 0 100px var(--field);caret-color:var(--ink)}button{font-family:var(--body)}.ui-eyebrow{display:inline-block;padding:4px 9px;background:var(--band);color:var(--on-band);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.ui-eyebrow--go{background:var(--go);color:var(--go-ink)}.ui-eyebrow--line{background:transparent;color:var(--ink-soft);border:var(--hair) solid var(--rule)}.ui-note{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.ui-h1{margin:0;font-family:var(--display);font-size:clamp(26px,7vw,34px);font-weight:700;line-height:1.06;letter-spacing:-.02em;color:var(--ink)}.ui-h2{margin:0;font-family:var(--display);font-size:19px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--ink)}.ui-h3{margin:0;font-family:var(--display);font-size:15.5px;font-weight:600;letter-spacing:0;color:var(--ink)}.ui-sub{margin:var(--s3) 0 0;font-size:14.5px;line-height:1.6;color:var(--ink-soft)}.ui-sheet{position:relative;padding:var(--s5);background:var(--sheet);border:var(--hair) solid var(--rule);border-radius:var(--r)}.ui-sheet--flat{background:transparent}.ui-sheet--band{background:var(--band);color:var(--on-band);border-color:transparent}.ui-sheet--stamped{box-shadow:var(--stamp-sm)}.ui-ticks:before,.ui-ticks:after{content:"";position:absolute;width:8px;height:8px;border-color:var(--ink-soft);border-style:solid;opacity:.5;pointer-events:none}.ui-ticks:before{top:5px;left:5px;border-width:var(--hair) 0 0 var(--hair)}.ui-ticks:after{right:5px;bottom:5px;border-width:0 var(--hair) var(--hair) 0}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:12px 18px;border:var(--stroke) solid transparent;border-radius:var(--r-sm);background:transparent;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform var(--t-fast),box-shadow var(--t),background var(--t),color var(--t),border-color var(--t)}.ui-btn--sm{min-height:36px;padding:9px 13px;font-size:11px}.ui-btn--lg{min-height:52px;padding:16px 24px;font-size:13px}.ui-btn--block{width:100%}.ui-btn--go{background:var(--go);color:var(--go-ink);border-color:var(--go);box-shadow:var(--stamp-go)}.ui-btn--go:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--go-shadow)}.ui-btn--go:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--go-shadow)}.ui-btn--ink{background:var(--band);color:var(--on-band);border-color:var(--band);box-shadow:var(--stamp)}.ui-btn--ink:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--band-shadow)}.ui-btn--ink:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--band-shadow)}.ui-btn--line{background:transparent;color:var(--ink);border-color:var(--rule-strong)}.ui-btn--line:hover{border-color:var(--ink);background:var(--paper-2)}.ui-btn--line:active{transform:translateY(1px)}.ui-btn--ghost{background:transparent;color:var(--ink-soft);border-color:transparent}.ui-btn--ghost:hover{color:var(--ink);background:var(--rule-soft)}.ui-btn--danger{background:transparent;color:var(--danger);border-color:currentColor}.ui-btn--danger:hover{background:var(--danger-soft)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{opacity:.45;box-shadow:none;transform:none;cursor:not-allowed}.ui-iconbtn{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:var(--hair) solid transparent;border-radius:var(--r-sm);background:transparent;color:inherit;cursor:pointer;transition:background var(--t),border-color var(--t),transform var(--t-fast)}.ui-iconbtn:hover{border-color:var(--rule);background:var(--rule-soft)}.ui-iconbtn:active{transform:scale(.96)}.ui-field{display:block;margin-bottom:var(--s5)}.ui-label{display:block;margin-bottom:var(--s2);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.ui-hint{margin:var(--s2) 0 0;font-size:12.5px;line-height:1.5;color:var(--ink-soft)}.ui-error{margin:var(--s2) 0 0;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--danger)}.ui-rows{border-top:var(--hair) solid var(--rule)}.ui-row{display:flex;align-items:center;gap:var(--s4);width:100%;padding:var(--s4) var(--s2);border:0;border-bottom:var(--hair) solid var(--rule);background:transparent;color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer;transition:background var(--t)}.ui-row:hover{background:var(--rule-soft)}.ui-row-body{min-width:0;flex:1}.ui-row-title{font-size:15.5px;font-weight:600;color:var(--ink)}.ui-row-meta{margin-top:2px;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-soft)}.ui-chev{flex:none;width:7px;height:7px;border-top:var(--stroke) solid var(--ink-faint);border-right:var(--stroke) solid var(--ink-faint);transform:rotate(45deg);transition:transform var(--t),border-color var(--t)}.ui-row:hover .ui-chev{border-color:var(--ink)}.ui-chev--down{transform:rotate(135deg)}.ui-chev--up{transform:rotate(-45deg)}.ui-band,.about-banner,.account-banner,.earnpoints-banner,.explore-banner,.guidebook-banner,.notif-banner,.rank-banner,.report-issue-banner,.rewards-banner,.settings-banner,.share-location-banner,.teachers-banner{box-sizing:border-box;width:100%;max-width:none;margin:0 0 var(--s5);padding:var(--s3) var(--s4);background:var(--band);color:var(--on-band);border-radius:0;box-shadow:none}.ui-band-title,.about-banner-title,.account-banner-title,.earnpoints-banner-title,.explore-banner-title,.guidebook-banner-title,.notif-banner-title,.rank-banner-title,.report-issue-banner-title,.rewards-banner-title,.settings-banner-title,.share-location-banner-title,.teachers-banner-title{flex:1;margin:0;text-align:center;font-family:var(--page-title-ff);font-size:var(--page-title-size);font-weight:var(--page-title-weight);letter-spacing:var(--page-title-tracking);text-indent:var(--page-title-tracking);text-transform:uppercase;color:var(--on-band)}.page-nav-btn-on-navy{display:inline-grid;place-items:center;width:32px;height:32px;flex-shrink:0;padding:0;border:var(--hair) solid rgba(255,255,255,.22);border-radius:var(--r-sm);background:#ffffff12;color:var(--on-band);cursor:pointer;transition:background var(--t),transform var(--t-fast),border-color var(--t)}.page-nav-btn-on-navy:hover{background:#ffffff29;border-color:#fff6}.page-nav-btn-on-navy:active{transform:scale(.94)}.ui-band-sticky,.earnpoints-sticky-header,.notif-sticky-header,.rank-sticky-header{position:sticky;top:var(--topbar-h);z-index:50}.ui-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:var(--hair) solid var(--rule);border-radius:var(--r-sm);background:var(--paper-2);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.ui-chip--go{border-color:transparent;background:var(--go-soft);color:var(--go-dk)}.ui-chip--mark{border-color:transparent;background:var(--mark-soft);color:var(--mark)}.ui-chip--warn{border-color:transparent;background:var(--warn-soft);color:var(--warn)}.ui-meter{height:6px;border:var(--hair) solid var(--rule);background:transparent;overflow:hidden}.ui-meter-fill{height:100%;background:var(--go);transition:width var(--t-slow)}.ui-dot{width:7px;height:7px;border-radius:50%;background:var(--mark);box-shadow:0 0 0 3px var(--mark-soft);animation:ui-ping 2.2s ease-out infinite}@keyframes ui-ping{0%,to{box-shadow:0 0 0 3px var(--mark-soft)}50%{box-shadow:0 0 0 6px transparent}}.ui-stack{display:flex;flex-direction:column;gap:var(--s4)}.ui-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3)}.ui-actions{display:flex;gap:var(--s3)}.ui-actions>*{flex:1}.ui-divider{height:0;border-top:var(--hair) solid var(--rule)}.muted{color:var(--ink-soft)}.sign-in-wrapper,.sign-up-wrapper,.account-wrapper,.settings-wrapper,.report-issue-wrapper,.choose-destination-wrapper{width:var(--col);margin:0 auto;padding:var(--s6) var(--s5) var(--s8)}:root:not([lang=en]) .ui-eyebrow,:root:not([lang=en]) .ui-note,:root:not([lang=en]) .page-nav-title,:root:not([lang=en]) .choose-destination-label,:root:not([lang=en]) .stepwise-progress{letter-spacing:normal;text-indent:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.ui-btn:hover,.ui-btn:active{transform:none}}.place-badge{flex:0 0 auto;height:21px;width:auto;max-width:80px;object-fit:contain;vertical-align:-5px;margin-right:8px}body.dark-mode .place-badge--outline{filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)}.place-field-badge{position:absolute;left:12px;top:50%;transform:translateY(-50%);height:22px;width:auto;max-width:62px;object-fit:contain;pointer-events:none;z-index:1}.has-place-badge{padding-left:84px!important}body:not(.dark-mode){color-scheme:light}body.dark-mode{color-scheme:dark}body.dark-mode .homepage-qr-square img{filter:invert(1) hue-rotate(180deg) brightness(1.1)}
