@import"https://fonts.googleapis.com/css2?family=Roboto:wght@500&family=Zen+Maru+Gothic:wght@400;500;700;900&display=swap";.sign-out{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.sign-out-btn{font-family:var(--font-body);font-size:.72rem;color:var(--ink-faint);background:transparent;border:1px dashed var(--line-strong);border-radius:999px;padding:4px 12px;transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease)}.sign-out-btn.confirming{color:var(--vermillion);border-color:var(--vermillion);border-style:solid;background:#c44a2c14}.sign-out-btn:disabled{opacity:.6;cursor:default}.sign-out-status{font-size:.72rem;color:var(--ink-faint)}.sign-out-status.error{color:var(--vermillion);font-weight:700}.auth-control{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;flex-wrap:wrap}.auth-avatar{width:26px;height:26px;border-radius:50%;border:1px solid var(--line);object-fit:cover}.auth-name{font-size:.78rem;color:var(--ink-soft);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-signin{font-family:var(--font-body);font-size:.72rem;color:var(--ink-faint);background:transparent;border:1px dashed var(--line-strong);border-radius:999px;padding:4px 12px;transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease)}.auth-signin:disabled{opacity:.6;cursor:default}.tmm-prototype{padding-bottom:env(safe-area-inset-bottom)}.tmm-prototype--nav{padding-bottom:calc(var(--tmm-nav-h) + env(safe-area-inset-bottom))}.tmm-prototype--figma .tmm-prototype__bar{position:fixed;z-index:20;top:0;right:0;width:44px;height:44px;padding:0}.tmm-prototype--figma .tmm-main{padding:0 var(--tmm-gutter) 24px}.tmm-route-transition{animation:tmm-route-enter .18s ease-out}.tmm-route-focus-target:focus{outline:none}@keyframes tmm-route-enter{0%{opacity:.92}to{opacity:1}}@media(prefers-reduced-motion:reduce){.tmm-route-transition{animation:none}}.tmm-prototype--figma .tmm-prototype__bar>.tmm-header__logo,.tmm-prototype--figma .tmm-prototype__bar .tmm-locale-toggle{display:none}.tmm-prototype--figma .tmm-prototype__bar .tmm-header__actions,.tmm-prototype--figma .tmm-prototype__bar .demo-reset{width:44px;height:44px;margin:0;padding:0}.tmm-prototype__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--tmm-space-3);padding:var(--tmm-space-3) var(--tmm-gutter);border-bottom:var(--tmm-border);background:var(--tmm-color-warm);position:sticky;top:0;z-index:10}.tmm-nav--proto .tmm-nav__icon{font-size:1.3rem}@media(max-width:480px){.tmm-prototype__bar{padding:8px var(--tmm-gutter)}.tmm-prototype__bar .demo-reset{width:44px;height:44px;margin:0;padding:0;font-size:0;display:inline-flex;align-items:center;justify-content:center;border-style:solid;border-color:var(--tmm-color-line-strong);border-radius:999px}.tmm-prototype__bar .demo-reset:before{content:"↻";font-size:1.15rem;line-height:1}.tmm-prototype__bar .demo-reset.confirming:before{content:"✓";color:var(--tmm-color-danger)}}:root{--paper: var(--tmm-color-warm);--paper-deep: var(--tmm-color-warm-deep);--ink: var(--tmm-color-ink);--ink-soft: var(--tmm-color-ink-soft);--ink-faint: var(--tmm-color-ink-faint);--forest: var(--tmm-color-forest);--forest-deep: var(--tmm-color-forest-deep);--wasabi: var(--tmm-color-leaf);--stream: #4a8fb0;--vermillion: var(--tmm-color-orange);--vermillion-deep: var(--tmm-color-orange-deep);--gold: #c8a24a;--card: var(--tmm-color-card);--card-locked: #f0ead9;--line: var(--tmm-color-line);--line-strong: var(--tmm-color-line-strong);--font-display: var(--tmm-font-display);--font-body: var(--tmm-font-body);--shadow-card: var(--tmm-shadow-card);--shadow-lift: var(--tmm-shadow-lift);--radius: var(--tmm-radius-md);--radius-sm: var(--tmm-radius-sm);--nav-h: var(--tmm-nav-h);--max-w: var(--tmm-content-max);--ease: var(--tmm-ease)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);line-height:1.6;min-height:100vh}body:before{content:none}#root{position:relative;z-index:1}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.35;letter-spacing:.01em;margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.app-shell{max-width:var(--max-w);margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom))}.app-header{padding:22px 20px 10px;text-align:center}.app-header-top{display:flex;align-items:center;justify-content:center;gap:12px}.locale-toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:999px;overflow:hidden;font-size:.72rem}.locale-toggle button{background:transparent;border:0;padding:3px 10px;font-family:var(--font-body);font-weight:700;color:var(--ink-faint);transition:background .2s var(--ease),color .2s var(--ease)}.locale-toggle button.active{background:var(--forest);color:var(--card)}.app-header-actions{display:flex;justify-content:center}.app-logo{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:.04em;color:var(--forest-deep);display:inline-block}.app-tagline{display:block;margin-top:4px;font-size:.8rem;color:var(--ink-soft);letter-spacing:.03em}.app-main{flex:1;padding:8px 16px 24px}.app-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--max-w);height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;align-items:center;justify-content:space-around;background:#fdfbf3eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line)}.app-nav a{font-family:var(--font-display);font-size:.9rem;color:var(--ink-faint);padding:8px 16px;border-radius:var(--radius-sm);transition:color .2s var(--ease),background .2s var(--ease)}.app-nav a.active{color:var(--forest);background:#2f6f4f1a;font-weight:700}.page{animation:page-in .4s var(--ease) both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-title{font-size:1.35rem;margin-bottom:4px}.page-sub{color:var(--ink-soft);font-size:.9rem;margin:0 0 18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1rem;font-weight:700;padding:14px 22px;border-radius:999px;border:1px solid transparent;transition:transform .15s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--forest);color:var(--card);box-shadow:var(--shadow-card)}.btn-primary:hover{background:var(--forest-deep);box-shadow:var(--shadow-lift)}.btn-secondary{background:transparent;border-color:var(--line-strong);color:var(--ink)}.btn-secondary:hover{border-color:var(--forest);color:var(--forest)}.btn-vermillion{background:var(--vermillion);color:#fff;box-shadow:var(--shadow-card)}.btn-vermillion:hover{background:var(--vermillion-deep)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-page{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:8vh}.home-mark{width:96px;height:96px;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgb(159 184 63 / .5),transparent 55%),var(--forest);color:var(--card);display:grid;place-items:center;font-family:var(--font-display);font-size:2.6rem;font-weight:700;margin-bottom:22px;box-shadow:var(--shadow-lift)}.home-page h1{font-size:2rem;letter-spacing:.05em;color:var(--forest-deep)}.home-tagline{max-width:300px;color:var(--ink-soft);margin:10px 0 28px}.home-actions{display:flex;flex-direction:column;gap:12px;width:100%;max-width:260px}.home-page .nd{width:100%;max-width:340px;text-align:left}.pokedex-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.progress-bar{height:8px;border-radius:999px;background:var(--card-locked);overflow:hidden;margin:10px 0 18px;border:1px solid var(--line)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--wasabi),var(--forest));border-radius:999px;transition:width .5s var(--ease)}.fc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.fc-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .2s var(--ease),box-shadow .2s var(--ease);display:flex;flex-direction:column}.fc-card:active{transform:scale(.98)}.fc-card.unlocked{border-color:#2f6f4f80}.fc-card.locked{background:var(--card-locked)}.fc-card-media{aspect-ratio:4 / 3;position:relative;overflow:hidden}.fc-image{width:100%;height:100%;display:grid;place-items:center;position:relative}.fc-image-mark{font-family:var(--font-display);font-size:3.4rem;font-weight:700;color:#fffdf6e6;text-shadow:0 2px 8px rgb(0 0 0 / .25);transform:rotate(-6deg)}.fc-image-name{position:absolute;bottom:8px;right:10px;font-family:var(--font-display);font-size:.7rem;font-weight:500;color:#fffdf6d9;letter-spacing:.05em}.fc-card.locked .fc-image{filter:grayscale(.9) contrast(.85) brightness(.85)}.fc-card.locked .fc-image-mark{font-size:2.6rem}.fc-card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px;flex:1}.fc-card-name{font-family:var(--font-display);font-size:1.02rem;font-weight:700;color:var(--ink)}.fc-card.locked .fc-card-name{color:var(--ink-faint)}.fc-card-desc{font-size:.76rem;color:var(--ink-soft);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fc-card-hint{margin-top:auto;font-size:.72rem;color:var(--stream);border-top:1px dashed var(--line-strong);padding-top:6px}.fc-card-hint:before{content:"🔍 "}.badge{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.04em;padding:2px 9px;border-radius:999px;background:#2f6f4f1f;color:var(--forest-deep);align-self:flex-start}.get-seal{position:absolute;top:8px;right:8px;background:var(--vermillion);color:#fff;font-family:var(--font-display);font-weight:700;font-size:.72rem;padding:4px 10px;border-radius:999px;box-shadow:0 2px 6px #c44a2c66;transform:rotate(4deg);animation:seal-pop .4s var(--ease) both}@keyframes seal-pop{0%{transform:rotate(4deg) scale(.5);opacity:0}to{transform:rotate(4deg) scale(1);opacity:1}}.detail-hero{margin:-8px -16px 0;padding:26px 20px 20px;background:radial-gradient(600px 200px at 80% -20%,rgb(159 184 63 / .16),transparent 60%),linear-gradient(160deg,var(--forest),var(--forest-deep));color:var(--card);border-bottom:3px solid var(--wasabi)}.detail-hero h1{font-size:1.7rem;letter-spacing:.03em}.detail-hero .detail-sub{color:#fffdf6bf;font-size:.9rem;margin:6px 0 12px}.detail-hero .badge{background:#fffdf629;color:#fff}.detail-section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-top:14px}.detail-section h2{font-size:1.05rem;color:var(--forest-deep);margin-bottom:8px}.detail-section h2:before{content:"◆ ";color:var(--wasabi);font-size:.8em}.detail-section p{margin:6px 0;font-size:.95rem}.source-list{list-style:none;margin:8px 0 0;padding:0;font-size:.82rem;color:var(--ink-soft)}.source-list li{padding:6px 0;border-top:1px dashed var(--line)}.source-list a{color:var(--stream);text-decoration:underline;text-underline-offset:2px}.checkin-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-top:14px}.checkin-card.checked{border-color:#2f6f4f99;background:linear-gradient(160deg,rgb(159 184 63 / .1),transparent 60%),var(--card)}.checkin-status{font-size:.9rem;color:var(--ink-soft);margin-bottom:10px;min-height:1.4em}.checkin-status.error{color:var(--vermillion)}.place-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px dashed var(--line)}.place-row:last-child{border-bottom:none}.place-row .place-name{font-family:var(--font-display);font-weight:700;font-size:.98rem}.place-row .place-address{font-size:.8rem;color:var(--ink-soft);margin:2px 0 6px}.place-row .btn{padding:8px 14px;font-size:.82rem}.map-container{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-card);background:var(--paper-deep)}.map-frame{width:100%;border:0;display:block}.map-legend{position:absolute;top:10px;left:10px;background:#fffdf6eb;border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 10px;font-size:.74rem;color:var(--ink-soft);box-shadow:var(--shadow-card)}.map-legend span:before{content:"● ";color:var(--vermillion)}.demo-reset{font-family:var(--font-body);font-size:.72rem;color:var(--ink-faint);background:transparent;border:1px dashed var(--line-strong);border-radius:999px;padding:4px 12px;margin-top:10px;transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease)}.demo-reset.confirming{color:var(--vermillion);border-color:var(--vermillion);border-style:solid;background:#c44a2c14}.muted{color:var(--ink-faint);font-size:.85rem}.text-center{text-align:center}.stack{display:flex;flex-direction:column;gap:12px}:root{--tmm-color-forest-visual: #667a47;--tmm-color-forest: #61733f;--tmm-color-forest-deep: #4d5c30;--tmm-color-forest-ink: var(--tmm-color-forest);--tmm-color-forest-tint: rgb(97 115 63 / .1);--tmm-color-selection: #667f37;--tmm-color-leaf: #9dbc64;--tmm-color-leaf-tint: rgb(157 188 100 / .14);--tmm-color-multi-select-panel: #b1cf7a;--tmm-color-feature-field: #b2d083;--tmm-color-warm: #fff4e4;--tmm-color-choice-panel: rgb(245 238 219 / .8);--tmm-color-warm-deep: #f5e8d0;--tmm-color-card: #ffffff;--tmm-color-ink: #222222;--tmm-color-ink-soft: #5d5d5d;--tmm-color-ink-faint: #6b6350;--tmm-color-orange-visual: #e9811d;--tmm-color-orange-strong-visual: #ff8313;--tmm-color-orange: #c44a2c;--tmm-color-orange-deep: #a03a22;--tmm-color-danger-visual: #ff5a5a;--tmm-color-route-secondary-visual: #85a053;--tmm-color-input: #ececec;--tmm-color-info-surface: #f4faea;--tmm-color-modal-scrim: rgb(136 136 136 / .69);--tmm-color-nav-line: #efefef;--tmm-color-nav-inactive-source: #cee3a8;--tmm-color-line: #efe7d8;--tmm-color-line-strong: #d6cbb4;--tmm-color-success: var(--tmm-color-forest);--tmm-color-warning: #8f5d12;--tmm-color-danger: #c44a2c;--tmm-color-info: #4a5f9f;--tmm-font-body: "Roboto", "Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans TC", system-ui, sans-serif;--tmm-font-display: var(--tmm-font-body);--tmm-font-accent-rounded: "M PLUS Rounded 1c", var(--tmm-font-body);--tmm-text-display-lg: 24px;--tmm-text-display: 22px;--tmm-text-title: 20px;--tmm-text-subtitle: 18px;--tmm-text-body: 16px;--tmm-text-body-sm: 14px;--tmm-text-caption: 12px;--tmm-leading-display: 1.18;--tmm-leading-title: 1.45;--tmm-leading-body: 1.375;--tmm-leading-caption: 1.5;--tmm-tracking-display: .02em;--tmm-tracking-caption: .08em;--tmm-space-1: 4px;--tmm-space-2: 8px;--tmm-space-3: 12px;--tmm-space-4: 16px;--tmm-space-5: 20px;--tmm-space-6: 24px;--tmm-space-7: 32px;--tmm-space-8: 40px;--tmm-gap-chip: 10px;--tmm-radius-sm: 8px;--tmm-radius-md: 12px;--tmm-radius-lg: 18px;--tmm-radius-pill: 999px;--tmm-content-max: 480px;--tmm-figma-reference-width: 390px;--tmm-mobile-baseline-width: 375px;--tmm-gutter: 16px;--tmm-tap-min: 44px;--tmm-nav-h: 68px;--tmm-border: 1px solid var(--tmm-color-line);--tmm-border-strong: 1px solid var(--tmm-color-line-strong);--tmm-shadow-card: 0 1px 2px rgb(34 34 34 / .05), 0 1px 6px rgb(34 34 34 / .06);--tmm-shadow-lift: 0 2px 8px rgb(34 34 34 / .08), 0 12px 28px rgb(34 34 34 / .12);--tmm-shadow-landing-action: 0 4px 0 #3a5509;--tmm-shadow-green-action: 0 4px 0 #667a47;--tmm-shadow-orange-action: 0 4px 0 #af7034;--tmm-shadow-selected-choice: 0 2px 4px #bcbab5;--tmm-shadow-selected-feature: 0 3px 7px #a7a190;--tmm-shadow-modal: 0 4px 10px rgb(0 0 0 / .25);--tmm-shadow-map-overlay: 0 2px 6px rgb(0 0 0 / .14);--tmm-shadow-sticky-footer: 0 -1px 4px #888b85;--tmm-focus-ring: 3px solid var(--tmm-color-orange);--tmm-focus-offset: 2px;--tmm-ease: cubic-bezier(.22, .61, .36, 1)}.tmm-shell{max-width:var(--tmm-content-max);margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding-bottom:calc(var(--tmm-nav-h) + env(safe-area-inset-bottom))}.tmm-main{flex:1;padding:var(--tmm-space-2) var(--tmm-gutter) 24px}.tmm-page{max-width:var(--tmm-content-max);margin:0 auto;padding:var(--tmm-space-4) 0 var(--tmm-space-7)}.tmm-section{margin-top:var(--tmm-space-7)}.tmm-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--tmm-space-2);min-height:var(--tmm-tap-min);padding:12px 20px;border-radius:var(--tmm-radius-pill);border:1px solid transparent;font-family:var(--tmm-font-body);font-size:1rem;font-weight:700;line-height:1.2;text-align:center;cursor:pointer;transition:background .2s var(--tmm-ease),color .2s var(--tmm-ease),border-color .2s var(--tmm-ease),box-shadow .2s var(--tmm-ease),transform .15s var(--tmm-ease)}.tmm-btn:active{transform:scale(.97)}.tmm-btn:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset)}.tmm-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.tmm-btn--primary{background:var(--tmm-color-forest);color:var(--tmm-color-card);box-shadow:0 3px 0 var(--tmm-color-forest-deep)}.tmm-btn--primary:hover{background:var(--tmm-color-forest-deep);box-shadow:0 2px 0 var(--tmm-color-forest-deep)}.tmm-btn--primary:active{transform:translateY(2px);box-shadow:0 1px 0 var(--tmm-color-forest-deep)}.tmm-btn--secondary{background:transparent;border-color:var(--tmm-color-line-strong);color:var(--tmm-color-ink)}.tmm-btn--secondary:hover{border-color:var(--tmm-color-forest);color:var(--tmm-color-forest)}.tmm-btn--orange{background:var(--tmm-color-orange);color:var(--tmm-color-card);box-shadow:var(--tmm-shadow-card)}.tmm-btn--orange:hover{background:var(--tmm-color-orange-deep)}.tmm-btn--block{width:100%}.tmm-btn--sm{min-height:var(--tmm-tap-min);padding:8px 14px;font-size:.85rem}.tmm-chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--tmm-space-1);min-height:var(--tmm-tap-min);padding:10px 18px;border-radius:var(--tmm-radius-pill);border:var(--tmm-border-strong);background:var(--tmm-color-card);color:var(--tmm-color-ink);font-family:var(--tmm-font-body);font-size:.92rem;font-weight:600;line-height:1.2;text-align:center;cursor:pointer;transition:background .15s var(--tmm-ease),color .15s var(--tmm-ease),border-color .15s var(--tmm-ease)}.tmm-chip:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset)}.tmm-chip:hover{border-color:var(--tmm-color-forest);color:var(--tmm-color-forest)}.tmm-chip:active{transform:scale(.97)}.tmm-chip:disabled{opacity:.55;cursor:not-allowed;transform:none}.tmm-chip[aria-pressed=true]{background:var(--tmm-color-forest);border-color:var(--tmm-color-forest);color:var(--tmm-color-card)}.tmm-chip[aria-pressed=true]:before{content:"✓"}.tmm-chip[aria-pressed=true]:hover{background:var(--tmm-color-forest-deep);border-color:var(--tmm-color-forest-deep);color:var(--tmm-color-card)}.tmm-chip--muted{border-color:var(--tmm-color-line);color:var(--tmm-color-ink-soft)}.tmm-progress{display:flex;align-items:center;gap:var(--tmm-space-3)}.tmm-progress__label{font-size:var(--tmm-text-caption);color:var(--tmm-color-ink-soft);line-height:var(--tmm-leading-caption);white-space:nowrap}.tmm-progress__bar{flex:1;height:8px;border-radius:var(--tmm-radius-pill);background:var(--tmm-color-warm-deep);border:1px solid var(--tmm-color-line);overflow:hidden}.tmm-progress__fill{height:100%;border-radius:var(--tmm-radius-pill);background:linear-gradient(90deg,var(--tmm-color-leaf),var(--tmm-color-forest));transition:width .5s var(--tmm-ease)}.tmm-steps{display:flex;justify-content:center;gap:var(--tmm-space-2)}.tmm-steps__dot{width:10px;height:10px;border-radius:50%;background:var(--tmm-color-line-strong);transition:background .2s var(--tmm-ease)}.tmm-steps__dot--done{background:var(--tmm-color-leaf)}.tmm-steps__dot--current{background:var(--tmm-color-forest);box-shadow:0 0 0 4px var(--tmm-color-forest-tint)}.tmm-card{background:var(--tmm-color-card);border:var(--tmm-border);border-radius:var(--tmm-radius-md);box-shadow:var(--tmm-shadow-card);padding:var(--tmm-space-4)}.tmm-card--flat{box-shadow:none}.tmm-card--feature{border-left:4px solid var(--tmm-color-leaf)}.tmm-card--button{cursor:pointer;transition:border-color .2s var(--tmm-ease),box-shadow .2s var(--tmm-ease),transform .15s var(--tmm-ease)}.tmm-card--button:hover{border-color:var(--tmm-color-forest);box-shadow:var(--tmm-shadow-lift)}.tmm-card--button:active{transform:scale(.98)}.tmm-card--button:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset)}.tmm-card--button:disabled{opacity:.55;cursor:not-allowed;transform:none}.tmm-result-card{background:var(--tmm-color-card);border:0;border-radius:var(--tmm-radius-md);box-shadow:none;overflow:hidden}.tmm-result-card__media{aspect-ratio:1.455 / 1;background:linear-gradient(160deg,var(--tmm-color-forest),var(--tmm-color-forest-deep));display:grid;place-items:center;color:var(--tmm-color-card);font-family:var(--tmm-font-display);font-size:var(--tmm-text-display-lg)}.tmm-result-card__img{display:block;width:100%;height:100%;object-fit:cover}.tmm-result-card__body{padding:var(--tmm-space-4);display:flex;flex-direction:column;gap:var(--tmm-space-2)}.tmm-result-card__title{font-family:var(--tmm-font-display);font-size:var(--tmm-text-title);font-weight:700;color:var(--tmm-color-ink);line-height:var(--tmm-leading-title)}.tmm-result-card__desc{font-size:var(--tmm-text-body);color:var(--tmm-color-ink-soft);line-height:var(--tmm-leading-body)}.tmm-story-section{margin-top:var(--tmm-space-6)}.tmm-story-section__kicker{font-size:var(--tmm-text-caption);font-weight:700;letter-spacing:var(--tmm-tracking-caption);line-height:var(--tmm-leading-caption);color:var(--tmm-color-forest-deep);margin-bottom:var(--tmm-space-1)}.tmm-story-section__title{display:flex;align-items:flex-start;gap:var(--tmm-space-3);font-family:var(--tmm-font-display);font-size:var(--tmm-text-title);font-weight:700;color:var(--tmm-color-forest-deep);line-height:var(--tmm-leading-title);margin-bottom:var(--tmm-space-2)}.tmm-story-section__num{flex:0 0 30px;width:30px;height:30px;border-radius:var(--tmm-radius-sm);background:var(--tmm-color-forest);color:var(--tmm-color-card);display:grid;place-items:center;font-family:var(--tmm-font-body);font-size:.9rem;font-weight:700}.tmm-story-section__body{font-size:var(--tmm-text-body);color:var(--tmm-color-ink);line-height:var(--tmm-leading-body)}.tmm-route-step{display:flex;gap:var(--tmm-space-3);align-items:flex-start;background:var(--tmm-color-card);border:var(--tmm-border);border-radius:var(--tmm-radius-md);padding:var(--tmm-space-3)}.tmm-route-step__num{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--tmm-color-forest);color:var(--tmm-color-card);display:grid;place-items:center;font-size:.85rem;font-weight:700}.tmm-route-step__body{flex:1;min-width:0}.tmm-route-step__name{font-family:var(--tmm-font-display);font-weight:700;font-size:1rem;color:var(--tmm-color-ink);line-height:var(--tmm-leading-title)}.tmm-route-step__role{font-size:var(--tmm-text-caption);color:var(--tmm-color-ink-soft);line-height:var(--tmm-leading-caption);margin-top:var(--tmm-space-1)}.tmm-mobility{display:flex;align-items:center;gap:var(--tmm-space-2);margin:var(--tmm-space-2) 0;font-size:var(--tmm-text-caption);color:var(--tmm-color-ink-soft)}.tmm-mobility__icon{font-size:1rem;line-height:1}.tmm-mobility__badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--tmm-radius-pill);background:var(--tmm-color-warm-deep);border:var(--tmm-border);font-size:var(--tmm-text-caption);color:var(--tmm-color-ink);font-weight:600}.tmm-info-list{list-style:none;margin:0;padding:0}.tmm-info-list__item{display:flex;gap:var(--tmm-space-3);padding:var(--tmm-space-3) 0;border-bottom:1px dashed var(--tmm-color-line)}.tmm-info-list__item:last-child{border-bottom:none}.tmm-info-list__label{flex:0 0 96px;font-size:var(--tmm-text-caption);font-weight:700;color:var(--tmm-color-ink-soft);line-height:var(--tmm-leading-caption)}.tmm-info-list__value{flex:1;font-size:var(--tmm-text-body);color:var(--tmm-color-ink);line-height:var(--tmm-leading-body)}.tmm-support{display:flex;gap:var(--tmm-space-3);align-items:flex-start;background:var(--tmm-color-card);border:var(--tmm-border);border-radius:var(--tmm-radius-md);padding:var(--tmm-space-4)}.tmm-support__icon{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--tmm-color-leaf-tint);color:var(--tmm-color-forest-deep);display:grid;place-items:center;font-size:1.2rem}.tmm-support__body{flex:1;min-width:0}.tmm-support__title{font-family:var(--tmm-font-display);font-weight:700;font-size:1.02rem;color:var(--tmm-color-ink);line-height:var(--tmm-leading-title)}.tmm-support__desc{font-size:var(--tmm-text-caption);color:var(--tmm-color-ink-soft);line-height:var(--tmm-leading-caption);margin-top:var(--tmm-space-1)}.tmm-support--disabled{opacity:.6}.tmm-tag{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--tmm-radius-pill);font-size:var(--tmm-text-caption);font-weight:600;line-height:1.4;border:var(--tmm-border);background:var(--tmm-color-card);color:var(--tmm-color-ink)}.tmm-tag--success{background:#2f6f4f1f;border-color:#2f6f4f59;color:var(--tmm-color-forest-deep)}.tmm-tag--warning{background:#8f5d121f;border-color:#8f5d1266;color:var(--tmm-color-warning)}.tmm-tag--danger{background:#c44a2c1a;border-color:#c44a2c66;color:var(--tmm-color-orange-deep)}.tmm-tag--info{background:#4a5f9f1a;border-color:#4a5f9f59;color:var(--tmm-color-info)}.tmm-tag--warning:before,.tmm-tag--danger:before{content:"⚠"}.tmm-tag--success:before{content:"✓"}.tmm-toast{position:fixed;bottom:calc(var(--nav-h, 60px) + var(--tmm-space-4) + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:calc(100% - 2 * var(--tmm-gutter));max-width:calc(var(--tmm-content-max) - 2 * var(--tmm-gutter));background:var(--tmm-color-ink);color:var(--tmm-color-card);border-radius:var(--tmm-radius-md);padding:12px 16px;font-size:var(--tmm-text-body);box-shadow:var(--tmm-shadow-lift);display:flex;align-items:center;justify-content:space-between;gap:var(--tmm-space-3);z-index:1000;animation:tmm-toast-in .3s var(--tmm-ease) both}@keyframes tmm-toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.tmm-toast__close{background:transparent;border:0;color:var(--tmm-color-card);font-size:1.1rem;line-height:1;cursor:pointer;padding:4px 8px;min-height:44px;min-width:44px}.tmm-modal-backdrop{position:fixed;inset:0;background:#2c2a2480;display:grid;place-items:center;padding:var(--tmm-gutter);z-index:1000}.tmm-modal{background:var(--tmm-color-card);border-radius:var(--tmm-radius-lg);max-width:420px;width:100%;padding:var(--tmm-space-5);box-shadow:var(--tmm-shadow-lift)}.tmm-modal__title{font-family:var(--tmm-font-display);font-size:var(--tmm-text-title);font-weight:700;color:var(--tmm-color-ink);line-height:var(--tmm-leading-title);margin-bottom:var(--tmm-space-2)}.tmm-modal__body{font-size:var(--tmm-text-body);color:var(--tmm-color-ink-soft);line-height:var(--tmm-leading-body);margin-bottom:var(--tmm-space-5)}.tmm-modal__actions{display:flex;gap:var(--tmm-space-3);justify-content:flex-end}.tmm-empty{display:flex;flex-direction:column;align-items:center;gap:var(--tmm-space-3);text-align:center;padding:var(--tmm-space-6) var(--tmm-space-4)}.tmm-empty__icon{font-size:2.2rem;opacity:.7}.tmm-empty__title{font-family:var(--tmm-font-display);font-size:var(--tmm-text-title);font-weight:700;color:var(--tmm-color-ink);line-height:var(--tmm-leading-title)}.tmm-empty__desc{font-size:var(--tmm-text-body);color:var(--tmm-color-ink-soft);max-width:280px;line-height:var(--tmm-leading-body)}.tmm-empty__action{margin-top:var(--tmm-space-2)}.tmm-header{max-width:var(--tmm-content-max);margin:0 auto;padding:var(--tmm-space-3) var(--tmm-gutter) var(--tmm-space-1);display:flex;flex-direction:column;gap:var(--tmm-space-1)}.tmm-header__top{display:flex;align-items:center;justify-content:space-between;gap:var(--tmm-space-3)}.tmm-header__logo{display:inline-flex;align-items:center;min-height:var(--tmm-tap-min);font-family:var(--tmm-font-display);font-size:1.12rem;font-weight:700;letter-spacing:.04em;color:var(--tmm-color-forest-deep);line-height:var(--tmm-leading-display);text-decoration:none;overflow-wrap:anywhere}.tmm-header__logo:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset);border-radius:var(--tmm-radius-sm)}.tmm-header__actions{display:flex;align-items:center;gap:var(--tmm-space-2);flex-wrap:wrap;justify-content:flex-end}.tmm-header__tagline{display:block;font-size:var(--tmm-text-caption);color:var(--tmm-color-ink-soft);letter-spacing:.03em;line-height:var(--tmm-leading-caption);overflow-wrap:anywhere}.tmm-header__demo{display:flex;align-items:center;justify-content:center;gap:var(--tmm-space-1);flex-wrap:wrap}.tmm-header__demo button,.tmm-header__demo a{min-height:var(--tmm-tap-min)}.tmm-header__demo .auth-control,.tmm-header__demo .demo-reset,.tmm-header__demo .sign-out{margin-top:0}.tmm-locale-toggle{display:inline-flex;border:var(--tmm-border-strong);border-radius:var(--tmm-radius-pill);overflow:hidden}.tmm-locale-toggle__btn{min-height:var(--tmm-tap-min);min-width:var(--tmm-tap-min);padding:0 12px;background:transparent;border:0;font-family:var(--tmm-font-body);font-size:.78rem;font-weight:700;color:var(--tmm-color-ink-faint);cursor:pointer;transition:background .2s var(--tmm-ease),color .2s var(--tmm-ease)}.tmm-locale-toggle__btn+.tmm-locale-toggle__btn{border-left:1px solid var(--tmm-color-line-strong)}.tmm-locale-toggle__btn[aria-pressed=true]{background:var(--tmm-color-forest);color:var(--tmm-color-card)}.tmm-locale-toggle__btn:focus-visible{outline:var(--tmm-focus-ring);outline-offset:-1px;position:relative;z-index:1}.tmm-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--tmm-content-max);height:calc(var(--tmm-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;align-items:center;justify-content:space-around;background:var(--tmm-color-card);border-top:1px solid var(--tmm-color-nav-line)}.tmm-nav__link{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:var(--tmm-tap-min);padding:4px var(--tmm-space-3);border-radius:var(--tmm-radius-sm);font-family:var(--tmm-font-body);font-size:.72rem;font-weight:600;line-height:1.2;color:var(--tmm-color-ink-faint);text-decoration:none;text-align:center;overflow-wrap:anywhere;transition:color .2s var(--tmm-ease),background .2s var(--tmm-ease)}.tmm-nav__icon{font-size:1.15rem;line-height:1}.tmm-nav__link:hover{color:var(--tmm-color-forest)}.tmm-nav__link[aria-current=page]{color:var(--tmm-color-forest-visual);background:transparent;font-weight:700}.tmm-nav__link:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset)}.tmm-segmented{display:flex;gap:var(--tmm-space-2)}.tmm-segmented .tmm-chip{flex:1}@media(min-width:768px){.tmm-main,.tmm-header{padding-left:var(--tmm-space-6);padding-right:var(--tmm-space-6)}.tmm-card,.tmm-result-card__body,.tmm-support{padding:var(--tmm-space-5)}}@media(min-width:1024px){:root{--tmm-content-max: 520px}}@media(prefers-reduced-motion:reduce){.tmm-btn,.tmm-toast,.tmm-progress__fill{transition:none;animation:none}.tmm-chip,.tmm-nav__link,.tmm-locale-toggle__btn{transition:none}}:root{--fp-figma-bot: var(--tmm-color-leaf);--fp-figma-question: var(--tmm-color-multi-select-panel);--fp-figma-user: var(--tmm-color-card);--fp-figma-text: var(--tmm-color-ink);--fp-figma-primary: var(--tmm-color-forest-visual);--fp-figma-selected: var(--tmm-color-selection);--fp-figma-send: var(--tmm-color-orange-visual);--fp-figma-mascot-orange: #e07d23}.fp-chat .fp-convo__msg--assistant .fp-convo__bubble,.tmm-result__greeting.fp-convo__msg--assistant .fp-convo__bubble{background:var(--fp-figma-bot);border:0;border-radius:0 10px 10px;box-shadow:none;padding:12px}.fp-chat .fp-convo__msg--assistant .fp-convo__q,.fp-chat .fp-convo__msg--assistant .fp-convo__title,.fp-chat .fp-convo__msg--assistant .fp-convo__body,.tmm-result__greeting .fp-convo__body{color:var(--fp-figma-text);font-weight:400}.tmm-food-profile>.fp-convo>.fp-convo__msg--assistant .fp-convo__bubble{background:var(--fp-figma-bot);border:0;border-radius:0 10px 10px;box-shadow:none;padding:12px}.tmm-food-profile>.fp-convo:has(.fp-convo__q)>.fp-convo__msg--assistant .fp-convo__bubble{background:var(--fp-figma-question)}.tmm-food-profile>.fp-convo>.fp-convo__msg--assistant .fp-convo__q,.tmm-food-profile>.fp-convo>.fp-convo__msg--assistant .fp-convo__title,.tmm-food-profile>.fp-convo>.fp-convo__msg--assistant .fp-convo__body,.tmm-food-profile>.fp-convo>.fp-convo__msg--assistant .fp-convo__label{color:var(--fp-figma-text)}.tmm-food-profile .fp-convo__msg--user .fp-convo__bubble{background:var(--fp-figma-user);border:0;border-radius:10px 0 10px 10px;box-shadow:none;color:var(--fp-figma-text);font-weight:400;padding:12px}.tmm-food-profile .fp-convo .tmm-chip{background:#fff;color:var(--fp-figma-text)}.tmm-food-profile .fp-convo .tmm-chip[aria-pressed=true]{background:var(--fp-figma-selected);border-color:var(--fp-figma-selected);color:#fff}.tmm-food-profile>.fp-convo:has(.fp-convo__title) .fp-convo__choices--stack .tmm-btn--primary{background:var(--fp-figma-primary);box-shadow:var(--tmm-shadow-landing-action)}.tmm-food-profile>.fp-convo:has(.fp-convo__step) .tmm-btn--primary{background:var(--fp-figma-send);border-radius:12px;box-shadow:none;color:var(--fp-figma-text);font-weight:400}.fp-modal__backdrop{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:16px;background:var(--tmm-color-modal-scrim);overscroll-behavior:contain}.fp-modal{box-sizing:border-box;width:min(307px,100%);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;gap:20px;overflow:auto;padding:26px 22px;border:0;border-radius:8px;background:#fff;box-shadow:0 4px 10px #00000040;color:var(--fp-figma-text)}.fp-modal__body{display:flex;min-width:0;flex-direction:column;gap:10px}.fp-modal__title{margin:0;color:var(--fp-figma-text);font-family:var(--tmm-font-body);font-size:16px;font-weight:400;line-height:22px}.fp-modal__input{box-sizing:border-box;display:flex;align-items:center;width:100%;height:46px;min-height:46px;gap:8px;padding:0 12px;border:2px solid transparent;border-radius:12px;background:#ececec}.fp-modal__input:focus-within{border-color:var(--fp-figma-primary)}.fp-modal__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.fp-modal__field{box-sizing:border-box;min-width:0;flex:1 1 auto;height:42px;padding:0;border:0;outline:0;background:transparent;color:var(--fp-figma-text);font-family:var(--tmm-font-body);font-size:16px;line-height:22px}.fp-modal__field::placeholder{color:#c4c4c4;opacity:1}.fp-modal__suffix{flex:0 0 auto;color:var(--fp-figma-primary);font-size:16px;line-height:22px;white-space:nowrap}.fp-modal__submit{width:100%;min-height:54px;height:54px;padding:0 16px;border:0;border-radius:12px;background:var(--fp-figma-send);color:var(--fp-figma-text);font-family:var(--tmm-font-body);font-size:16px;font-weight:400;line-height:22px;cursor:pointer}.fp-modal__submit:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset)}.fp-modal__submit:active{transform:translateY(1px)}.fp-modal__submit:disabled{cursor:not-allowed;opacity:.55}html,body,#root{height:100%;margin:0}body:has(.reference-app){overflow:hidden}.reference-app{--cream:#F6EFDD;--chat-bg:#FFF5E5;--paper:#FFFDF7;--header:#667A48;--green:#5E7239;--green-mid:#7C9A4D;--band:#9DBC64;--band-light:#B2D084;--rail:#667A47;--green-pale:#DCE6C2;--orange:#F08A0F;--orange-text:#A04700;--orange-on:#3A3A30;--orange-soft:#FBEAD2;--ink:#3A3A30;--ink-soft:#8A8776;--red:#F05B5B;--line:#EAE2CF;--shadow:0 4px 14px rgba(90,80,40,.1);min-block-size:100%;inline-size:100%;background:#e8e2d2;color:var(--ink);display:flex;justify-content:center;font-family:Zen Maru Gothic,Hiragino Maru Gothic ProN,Hiragino Kaku Gothic ProN,sans-serif;font-weight:400;-webkit-text-size-adjust:100%}.reference-app *,.reference-app *:before,.reference-app *:after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}.reference-app button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;touch-action:manipulation}.reference-app img{display:block;max-width:100%}.reference-app svg.ic{width:1em;height:1em;vertical-align:-.12em}.reference-app .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reference-app .locale-control{position:absolute;top:8px;right:8px;z-index:45;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.reference-app .locale-control select{min-width:44px;min-height:44px;height:44px;border:1px solid rgba(255,255,255,.82);border-radius:9px;padding:0 5px;background:#667a48e0;color:#fff;font:700 11px/1 inherit;text-align:center;outline:none}.reference-app[data-pathname="/route"] .locale-control{top:126px;right:8px}.reference-app[data-pathname^="/spot/"] .locale-control{right:58px}.reference-app .ghead>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reference-phone{width:100%;max-width:430px;height:100dvh;background:var(--cream);position:relative;overflow:hidden;box-shadow:0 0 50px #0000002e;container-type:inline-size}.reference-screen{position:absolute;inset:0;display:none;flex-direction:column;background:var(--cream);min-width:0}.reference-screen.on,.reference-screen[data-screen-active=true]{display:flex}.reference-scroll,.scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;min-height:0}.reference-scroll::-webkit-scrollbar,.scroll::-webkit-scrollbar{display:none}.reference-app .ghead{background:var(--header);color:#fff;flex:none;display:flex;align-items:center;gap:10px;padding:14px 14px 12px;font-size:18px;font-weight:700;min-width:0}.reference-app .ghead .back{flex:none;min-width:44px;min-height:44px;font-size:22px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center}.reference-app .ghead .share-btn{flex:none;width:44px;min-height:44px;margin-left:auto;display:flex;align-items:center;justify-content:center}.reference-app .ghead .share-btn svg{width:22px;height:22px}.reference-screen[data-screen=splash]{background:#dce3ac;cursor:pointer}.reference-screen[data-screen=splash] .bg{width:100%;height:100%;object-fit:cover;object-position:top}.reference-screen[data-screen=splash] .hotspot{position:absolute;left:26%;right:26%;top:55.5%;height:7%;border-radius:99px;cursor:pointer}.reference-screen[data-screen=splash] .hotspot:active{background:#ffffff2e}.reference-app .chat-body{flex:1;overflow-y:auto;padding:18px 14px 24px;background:var(--chat-bg);min-height:0}.reference-app .crow{display:flex;gap:8px;margin-bottom:16px;align-items:flex-start;animation:pop .28s ease;min-width:0}@keyframes pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.reference-app .crow .avatar{width:52px;height:52px;border-radius:50%;background:#fff;flex:none;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);overflow:hidden}.reference-app .crow .avatar img{width:36px}.reference-app .bubble{background:var(--band);color:#fff;font-weight:400;font-size:15px;line-height:1.75;padding:14px 16px;border-radius:4px 16px 16px;max-width:80%;overflow-wrap:anywhere}.reference-app .crow.user{justify-content:flex-end}.reference-app .crow.user .bubble{background:#fff;color:var(--ink);border-radius:16px 4px 16px 16px;box-shadow:var(--shadow)}.reference-app .choice-card{background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:20px;margin:4px 0 16px 60px;display:flex;flex-direction:column;gap:12px;animation:pop .28s ease;min-width:0}.reference-app .btn{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;font-weight:500;font-size:15px;padding:14px 18px;transition:filter .15s}.reference-app .btn:active{filter:brightness(.93)}.reference-app .btn.orange{background:var(--orange);color:#222}.reference-app .btn.outline{background:#fff;border:1.5px solid var(--green-mid);color:var(--green)}.reference-app .chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.reference-app .chip{min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--green);font-weight:400;font-size:14px;border-radius:99px;padding:10px 16px;box-shadow:0 2px 4px #0000000f}.reference-app .chip.sel{background:#667a48;color:#fff}.reference-app .other-row{display:flex;gap:8px;margin-top:12px;min-width:0}.reference-app .other-row input{flex:1;min-width:0;border:none;border-radius:10px;padding:11px 12px;font-family:inherit;font-size:16px;outline:none}.reference-app .other-row button{flex:none;background:#fff;color:var(--green);border-radius:10px;padding:0 16px;font-weight:500}.reference-app .bubble .send{margin-top:14px;width:100%;background:var(--orange);color:#222;border-radius:12px;font-weight:700;font-size:15px;padding:12px;border-top:1px solid rgba(255,255,255,.4)}.reference-app .name-input{display:flex;gap:8px;margin:0 0 16px 44px;animation:pop .28s ease;min-width:0}.reference-app .name-input input{flex:1;min-width:0;border:1.5px solid var(--green-pale);border-radius:12px;padding:12px 14px;font-family:inherit;font-size:16px;background:#fff;outline:none}.reference-app .name-input button{flex:none;white-space:nowrap;background:var(--orange);color:var(--orange-on);border-radius:12px;padding:0 18px;font-weight:700}.reference-app .profile-input-modal{position:fixed;inset:0;z-index:75;width:100%;max-width:430px;height:100dvh;margin-inline:auto;background:#3436307a;display:flex;align-items:center;justify-content:center;padding:28px 40px 76px}.reference-screen[data-screen-active=false] .profile-input-modal{display:none}.reference-app .profile-input-card{position:relative;width:100%;max-width:308px;background:#fff;border-radius:9px;padding:23px 22px 25px;box-shadow:0 7px 18px #00000047;display:flex;flex-direction:column;gap:19px;animation:pop .28s ease}.reference-app .profile-input-label{color:var(--ink);font-size:15px;font-weight:500}.reference-app .profile-input-close{position:absolute;top:4px;right:4px;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--ink);font-family:inherit;font-size:24px;font-weight:400;line-height:1;cursor:pointer}.reference-app .profile-input-close:focus-visible{outline:var(--tmm-focus-ring);outline-offset:var(--tmm-focus-offset)}.reference-app .profile-name-sentence,.reference-app .profile-other-field{min-height:46px;display:flex;align-items:center;background:#efeff0;border-radius:12px;overflow:hidden}.reference-app .profile-name-sentence:focus-within,.reference-app .profile-other-field:focus-within{outline:3px solid #173F8A;outline-offset:2px}.reference-app .profile-name-sentence.invalid{box-shadow:inset 0 0 0 1.5px #f05b5b}.reference-app .profile-name-sentence input,.reference-app .profile-other-field input{flex:1;min-width:0;border:1.5px solid transparent;background:transparent;padding:11px 12px;font:700 16px/1.4 inherit;text-align:center;outline:none}.reference-app .profile-name-sentence span{flex:none;color:var(--green);font-size:16px;font-weight:700;padding:0 18px 0 2px}.reference-app .profile-input-card>.btn{width:100%;min-height:55px;border-radius:10px;font-weight:700}.reference-app .profile-box{background:#ffffff29;border-radius:12px;padding:12px;margin-top:12px;font-size:13.5px;line-height:1.9}.reference-screen[data-screen=home] .hero{position:relative;flex:none;height:420px;overflow:hidden}.reference-screen[data-screen=home] .hero>img{width:100%;height:100%;object-fit:cover;object-position:center bottom}.reference-screen[data-screen=home] .hero .greet{position:absolute;top:26px;left:0;right:0;padding-right:18px;text-align:center;color:#fff;font-weight:700;font-size:19px;line-height:1.6;text-shadow:0 1px 8px rgba(30,60,80,.6)}.reference-app[data-locale=en] .reference-screen[data-screen=home] .hero .greet{padding-right:60px;font-size:18px}.reference-screen[data-screen=home] .hero .greet .nm{color:#ffe24a}.reference-screen[data-screen=home] .hero .letsgo{position:absolute;top:96px;left:50%;transform:translate(-50%);background:#8fae5c;color:#222;font-weight:700;font-size:21px;border-radius:99px;padding:15px 44px;box-shadow:0 4px #6f833f,0 4px 14px #00000040;display:flex;align-items:center;gap:12px;white-space:nowrap}.reference-screen[data-screen=home] .hero .letsgo:active{filter:brightness(.93)}.reference-app .section{padding:20px 16px 10px}.reference-app .section h2{color:var(--green);font-size:20px;font-weight:700}.reference-app .section h2 small{color:var(--ink-soft);font-weight:400;font-size:14px}.reference-app .trip-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow);margin-top:14px;cursor:pointer}.reference-app .trip-card{position:relative}.reference-app .trip-card .trip-card-open{display:block;width:100%;text-align:left}.reference-app .trip-card .ph{position:relative}.reference-app .trip-card .ph img{width:100%;height:150px;object-fit:cover}.reference-app .presentation-media-empty{display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden;padding:18px;background:linear-gradient(145deg,#e4ead5,#f4e9d8 58%,#eadbc4);color:#5e7239;text-align:center;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.02em}.reference-app .trip-card .ph>.presentation-media-empty{width:100%;height:150px}.reference-app .trip-card .bk{position:absolute;z-index:2;top:10px;right:10px;width:34px;height:34px;border-radius:9px;background:#ffffffeb;display:flex;align-items:center;justify-content:center;color:var(--green-mid);font-size:17px}.reference-app .trip-card .bk.saved{background:var(--green-mid);color:#fff}.reference-app .trip-card .tx{padding:12px 14px 14px;min-width:0}.reference-app .trip-card .tx b{font-size:17px}.reference-app .trip-card .tx p{color:var(--ink-soft);font-size:12.5px;margin-top:4px}.reference-app .wide-btn{margin:18px 16px 16px;background:var(--header);color:#fff;border-radius:14px;padding:15px;font-weight:500;font-size:15px;display:block;width:calc(100% - 32px)}.reference-app .tabbar{flex:none;min-height:calc(68px + max(16px,env(safe-area-inset-bottom)));background:#fff;border-top:1px solid #EFEFEF;display:flex;padding:8px 16px max(16px,env(safe-area-inset-bottom))}.reference-app .tabbar button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 0;font:500 12px/14px Roboto,sans-serif;color:#cee3a8}.reference-app .tabbar button svg{width:24px;height:24px;stroke:#cee3a8;fill:none;stroke-width:3}.reference-app .tabbar button.on{color:#667a48}.reference-app .tabbar button.on svg{stroke:#667a48}.reference-screen[data-screen=explore],.reference-screen[data-screen=result]{background:var(--cream) url(/assets/exploration-background-CMnobP0e.png) center / cover no-repeat}.reference-app .wiz-body{flex:1;overflow-y:auto;padding:22px 18px 30px;position:relative;background:transparent;min-height:0}.reference-app .wiz-q{text-align:center;font-size:19px;font-weight:700;color:var(--green);line-height:1.6;margin-bottom:22px}.reference-app .wiz-q em{color:var(--orange-text);font-style:normal}.reference-app .exp-grid{display:grid;grid-template-columns:34.20716897cqw 34.20716897cqw;grid-auto-rows:43.034836207cqw;gap:3.076923077cqw;width:71.538461538cqw;margin-left:calc(13.846153846cqw - 18px)}.reference-app .exp-card{position:relative;height:43.034836207cqw;background:#ffffff85;border-radius:4.615384615cqw;overflow:hidden;text-align:center;padding:0;border:.256410256cqw solid #fff;cursor:pointer;transition:.15s;min-width:0}.reference-app .exp-card .exp-copy{position:absolute;z-index:1;left:calc(1.10345816cqw - 1px);top:calc(4.634518257cqw - 1px);width:32.000255096cqw;height:13.462176201cqw}.reference-app .exp-card b{color:#667a48;display:block;font-size:5.128205128cqw;font-weight:700;line-height:7.435897436cqw;white-space:nowrap}.reference-app .exp-card p{color:#667a47;margin:2.307692308cqw 0 0;font-size:3.076923077cqw;font-weight:400;line-height:5.897435897cqw;white-space:nowrap}.reference-app .exp-card[data-experience-id=eat] p,.reference-app .exp-card[data-experience-id=make] p{color:#667a48;font-weight:700}.reference-app .exp-card .pic{position:absolute;inset:0;pointer-events:none}.reference-app .exp-card .pic .band{position:absolute;left:calc(.441383949cqw - 1px);top:calc(32.662328084cqw - 1px);width:33.324404985cqw;height:9.931113414cqw;background:#b2d083;border-radius:0 0 4.358974359cqw 4.358974359cqw}.reference-app .exp-card .pic img{position:absolute;left:calc(var(--figma-art-left) - 1px);top:calc(var(--figma-art-top) - 1px);width:var(--figma-art-width);height:var(--figma-art-height);max-width:none;object-fit:cover}.reference-app .exp-card.sel,.reference-app .exp-card.glow{width:34.213554187cqw;height:42.69227248cqw;border-color:transparent;border-radius:4.615384615cqw;box-shadow:inset 0 0 0 .512820513cqw #667a48;animation:none}.reference-app .exp-card.sel .exp-copy,.reference-app .exp-card.glow .exp-copy{left:calc(1.13663111cqw - 1px);top:calc(4.44512783cqw - 1px);width:32.051282051cqw}.reference-app .exp-card.sel .pic .band,.reference-app .exp-card.glow .pic .band{left:calc(.367400341cqw - 1px);top:calc(32.393845778cqw - 1px);width:33.333333333cqw;height:10cqw;background:#667a47;border-radius:0 0 4.102564103cqw 4.102564103cqw}.reference-app[data-locale=en] .exp-card b,.reference-app[data-locale=en] .exp-card p,.reference-app[data-locale=zh-TW] .exp-card b,.reference-app[data-locale=zh-TW] .exp-card p{white-space:normal;overflow-wrap:anywhere}.reference-app[data-locale=en] .exp-card b{font-size:3.2cqw;line-height:4cqw}.reference-app[data-locale=en] .exp-card p{margin-top:.8cqw;font-size:2.2cqw;line-height:2.55cqw}.reference-app .opt{display:block;width:100%;background:#fffdf6;border-radius:16px;box-shadow:var(--shadow);padding:16px;font-size:16px;font-weight:500;color:var(--ink);margin-bottom:14px;border:1.5px solid #F1E9D6;text-align:inherit}.reference-app .opt.sel{background:#667a48;color:#fff;border-color:#4c5a2b}.reference-app .searchbar{display:flex;align-items:center;gap:10px;width:calc(100% + 4px);height:52px;margin-inline:-2px;background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:15px 16px;font-size:16px;font-weight:500;cursor:pointer;min-width:0}.reference-app .searchbar .val{flex:1;min-width:0;text-align:center;overflow-wrap:anywhere}.reference-app .searchbar .sub{color:#bdb9a8;font-weight:400;font-size:14px;border-right:1.5px solid #DDD6C2;padding-right:10px}.reference-app .wiz-nav{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:26px}.reference-app .wiz-nav .next{background:var(--orange);color:#fff;border-radius:99px;padding:14px 54px;font-size:17px;font-weight:700;box-shadow:0 4px #c96f04}.reference-app .wiz-nav .next:not(:disabled){color:#222}.reference-app .wiz-nav .next:disabled{color:#fff;opacity:.4;cursor:default;box-shadow:0 4px #d8b183}.reference-app .wiz-nav .prev{background:#9bb35c;color:#222;border-radius:99px;padding:12px 44px;font-size:15px;font-weight:700;box-shadow:0 4px #6f833f}.reference-app .chip-group{background:#ffffff59;border:1.5px solid rgba(255,255,255,.9);border-radius:18px;padding:14px;margin-bottom:18px}.reference-app .chip-group h3{font-size:14.5px;font-weight:700;color:var(--ink)}.reference-app .chip-group h3 span{color:#a9a490;font-weight:400;font-size:12.5px}.reference-app .chip-group h3 .count{float:right}.reference-app .progress{flex:none;background:var(--band);height:92px;padding:0 18px;display:flex;align-items:center;position:relative}.reference-app .progress .rail{flex:1;height:8px;background:var(--rail);border-radius:99px;position:relative;display:flex;align-items:center;justify-content:space-between;margin-right:14px}.reference-app .progress .dot{width:17px;height:17px;border-radius:50%;background:transparent;border:5px solid #fff}.reference-app .progress .dot.hide{visibility:hidden}.reference-app .progress .fork{position:absolute;height:52px;top:50%;transform:translate(-50%,-50%);transition:left .4s ease;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.reference-app .progress .plate{width:56px;height:56px;border-radius:50%;background:#fff;flex:none;box-shadow:inset 0 0 0 7px #f0ede3,0 2px 5px #00000038}.reference-app .result-progress .plateware{position:relative;width:56px;height:56px;flex:none}.reference-app .result-progress .plateware .plate{position:absolute;inset:0}.reference-app .result-progress .plateware .fork{left:50%;top:50%;height:48px;transform:translate(-50%,-50%)}.reference-modal{position:absolute;inset:0;background:#3c3c2d73;display:none;z-index:60}.reference-modal.on,.reference-modal[data-open=true]{display:block}.reference-modal .sheet{position:absolute;inset:92px 0 0;background:#fff;border-radius:22px 22px 0 0;padding:20px 18px;animation:up .25s ease}@keyframes up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.reference-modal h3{font-size:19px;font-weight:700}.reference-modal .x{position:absolute;top:8px;right:8px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#555}.reference-modal .field{display:flex;align-items:center;gap:8px;background:#efece4;border-radius:12px;padding:13px 14px;margin-top:16px;font-size:17px;min-width:0}.reference-modal .field input{border:none;background:none;outline:none;font-family:inherit;font-size:16px;flex:1;min-width:0}.reference-modal .sug{list-style:none;margin-top:8px;padding:0}.reference-modal .sug li{display:flex;gap:10px;align-items:center;padding:15px 4px;border-bottom:1px solid #EEE;font-size:15px;font-weight:400;cursor:pointer;color:#444}.reference-modal .sug li>button{width:100%;display:flex;gap:10px;align-items:center;text-align:left;font-size:inherit;font-weight:inherit}.reference-modal .sug li .gpin{color:#9aa0a6;font-size:17px}.reference-app .res-head{text-align:center;font-size:20px;font-weight:700;margin:20px 14px 16px;line-height:1.6}.reference-app .res-head em{color:var(--orange-text);font-style:normal}.reference-app .res-sub{display:flex;justify-content:space-between;align-items:center;padding:0 16px;margin-bottom:12px;gap:10px;min-width:0}.reference-app .res-sub b{color:var(--green);font-size:15px;font-weight:500}.reference-app .res-sub button{background:#9bb35c;color:#222;border-radius:99px;font-size:12.5px;font-weight:700;padding:9px 14px}.reference-app .res-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);margin:0 14px 20px;cursor:pointer}.reference-app .res-card .ph{position:relative}.reference-app .res-card .ph img{width:100%;height:220px;object-fit:cover}.reference-app .res-card .ph>.presentation-media-empty{width:100%;height:220px}.reference-app .res-card .match{position:absolute;top:12px;right:12px;width:104px;height:104px;border-radius:50%;background:#5e7239c7;color:#fff;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.reference-app .res-card .match b{font-size:33px;line-height:1.1}.reference-app .res-card .match b small{font-size:18px}.reference-app .res-card .match span{font-size:13px;font-weight:500}.reference-app .res-card .tx{padding:14px 16px 16px;min-width:0}.reference-app .res-card .area{color:var(--green);font-weight:500;font-size:13.5px}.reference-app .res-card .acc{font-size:13px;font-weight:400;margin-top:2px}.reference-app .res-card .acc em{color:var(--orange-text);font-style:normal}.reference-app .res-card h3{font-size:22px;margin-top:8px}.reference-app .res-card h4{font-size:16px;font-weight:500;margin-top:2px}.reference-app .res-card p{color:#a6a392;font-size:14px;line-height:1.8;margin-top:8px}.reference-app .tags{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.reference-app .tags span{border:1.5px solid var(--green-mid);color:var(--green);border-radius:99px;font-size:12px;font-weight:500;padding:4px 12px}.reference-app .result-progress{margin-top:8px}.reference-app .story-hero{position:relative;flex:none}.reference-app .story-hero img{width:100%;height:250px;object-fit:cover}.reference-app .story-hero>.presentation-media-empty{width:100%;height:250px}.reference-app .fab-back{position:absolute;top:12px;left:12px;width:44px;height:44px;border-radius:50%;background:var(--orange);z-index:5;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000004d}.reference-app .fab-back svg{width:19px;height:19px;stroke:var(--orange-on);fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;margin-right:2px}.reference-app .story-tx{padding:18px 18px 6px;background:#fff}.reference-app .story-tx h1{font-size:22px;line-height:1.5}.reference-app .story-tx h2{font-size:15px;font-weight:500;margin-top:2px}.reference-app .story-tx p{font-size:14px;line-height:2;margin-top:14px}.reference-app .loc-box{background:#eff3df;border-radius:12px;padding:14px;margin:18px 0 22px;font-size:13.5px;font-weight:400;line-height:2}.reference-app .story-sec{background:#fff;margin-top:12px;padding:20px 0 24px}.reference-app .story-sec>h2{font-size:22px;font-weight:700;padding:0 18px;margin-bottom:14px}.reference-app .hscroll{display:flex;gap:14px;overflow-x:auto;padding:2px 18px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.reference-app .hscroll::-webkit-scrollbar{display:none}.reference-app .page-card{flex:none;width:82%;scroll-snap-align:center;background:#fffdf6;border:1.5px solid #E7B98A;border-radius:16px;padding:18px}.reference-app .page-card h3{font-size:19px;color:var(--ink)}.reference-app .page-card h3 em{color:var(--orange-text);font-style:normal}.reference-app .page-card>p{font-size:14px;line-height:2;margin-top:10px}.reference-app .mogu-point{border:1.5px solid var(--band);border-radius:12px;padding:12px;margin-top:14px}.reference-app .mogu-point .pt{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px}.reference-app .mogu-point .pt img{width:26px}.reference-app .mogu-point .pt em{color:var(--red);font-style:normal}.reference-app .mogu-point b{display:block;font-size:13px;margin-top:8px}.reference-app .mogu-point p{font-size:12.5px;line-height:1.9;margin-top:4px}.reference-app .spot-card{flex:none;width:60%;scroll-snap-align:start;cursor:pointer}.reference-app .spot-card .ph{position:relative;border-radius:14px;overflow:hidden}.reference-app .spot-card .ph img{width:100%;height:150px;object-fit:cover}.reference-app .spot-card .ph>.presentation-media-empty{width:100%;height:150px}.reference-app .spot-card .badge{position:absolute;top:10px;left:10px;color:#fff;font-size:12px;font-weight:500;border-radius:99px;padding:4px 12px}.reference-app .spot-card b{display:block;font-size:15.5px;margin-top:8px}.reference-app .spot-card p{font-size:12px;color:var(--ink-soft);margin-top:3px;line-height:1.6}.reference-app .spot-card .note{color:var(--orange-text);font-weight:500;font-size:12px;margin-top:2px}.reference-app .story-cta-wrap{position:sticky;bottom:0;background:linear-gradient(transparent,var(--band) 30%);padding:18px 16px calc(16px + env(safe-area-inset-bottom));margin-top:10px}.reference-app .story-cta{width:100%;background:var(--orange);color:#fff;border-radius:99px;padding:15px;font-size:15.5px;font-weight:700;box-shadow:0 4px #c96f04}.reference-app .story-cta:not(:disabled){color:#222}.reference-loading{position:absolute;inset:0;background:#2d2d239e;z-index:80;display:none;flex-direction:column;align-items:center;justify-content:center;gap:18px}.reference-loading.on,.reference-loading[data-loading=true]{display:flex}.reference-loading .face{display:flex;align-items:center;justify-content:center;animation:bounce 1.2s ease infinite;filter:drop-shadow(0 4px 14px rgba(0,0,0,.35))}.reference-loading .face img{width:130px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.reference-loading .dots{display:flex;gap:7px}.reference-loading .dots i{width:9px;height:9px;border-radius:50%;background:#fff;animation:blink 1s infinite}.reference-loading .dots i:nth-child(3){animation-delay:.2s}.reference-loading .dots i:nth-child(5){animation-delay:.4s}@keyframes blink{50%{background:var(--band)}}.reference-loading p{color:#fff;font-size:16px;font-weight:500;text-align:center;line-height:1.8}.reference-app .day-toggle{display:flex;gap:10px;background:var(--header);padding:0 14px 14px}.reference-app .day-toggle button{flex:1;border-radius:10px;padding:11px;font-weight:500;font-size:15px;border:1.5px solid #fff;color:#fff}.reference-app .day-toggle button.on{background:var(--orange);border-color:var(--orange);color:#222;font-weight:700}.reference-app .route-map{position:relative}.reference-app .route-map img{width:100%;height:auto;aspect-ratio:389/313;object-fit:cover}.reference-app .route-map>.presentation-media-empty{width:100%;aspect-ratio:389/313}.reference-app .map-pin{position:absolute;width:26px;height:26px;transform:translate(-50%,-90%);pointer-events:none}.reference-app .map-pin i{display:block;width:26px;height:26px;background:#f08a0f;border:2.5px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 5px #0000004d}.reference-app .map-pin span{position:absolute;left:0;top:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:var(--orange-on);font-weight:700;font-size:13px}.reference-app .route-info{background:#fff;border-radius:14px;box-shadow:var(--shadow);margin:-26px 14px 0;position:relative;padding:14px;display:flex;align-items:center;gap:10px;min-width:0}.reference-app .route-info .tx{flex:1;min-width:0;font-size:13.5px;font-weight:400;line-height:2}.reference-app .route-info .tx em{color:var(--orange-text);font-style:normal}.reference-app .route-info .route-caution{display:block;margin-top:5px;color:#6f6859;font-size:10.5px;font-weight:500;line-height:1.55}.reference-app .route-info .regen{background:#9bb35c;color:#fff;border-radius:12px;font-size:13px;font-weight:700;padding:10px 14px;line-height:1.5}.reference-app .route-info .regen:not(:disabled){color:#222}.reference-app .tl{padding:22px 18px 10px;position:relative}.reference-app .tl-step+.tl-step>.tl-row:first-child{margin-top:24px}.reference-app .tl .seg{display:flex;align-items:center;gap:10px;color:var(--green);font-size:12.5px;font-weight:400;margin:10px 0 10px 10px;position:relative;z-index:1}.reference-app .tl .seg svg{width:16px;height:16px;fill:var(--green);flex:none;background:var(--cream);border-radius:50%;padding:3px;box-sizing:content-box}.reference-app .tl-row{display:flex;align-items:center;gap:12px;position:relative;min-width:0}.reference-app .tl-row .num,.reference-app .goal-row .num{width:44px;height:44px;border-radius:50%;flex:none;z-index:2;display:flex;align-items:center;justify-content:center;background:var(--orange);color:var(--orange-on);font-weight:700;font-size:18px;box-shadow:0 2px 5px #0000002e}.reference-app .tl-row .num.start,.reference-app .goal-row .num.start{background:#5e7239;color:#fff;font-size:15px}.reference-app .goal-row .num.goal{background:#5e7239;color:#fff;font-size:13px;border-radius:99px;width:auto;padding:0 14px;height:38px}.reference-app .tl-row .card{flex:1;min-width:0;background:#fff;border-radius:16px;box-shadow:var(--shadow);display:flex;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;position:relative}.reference-app .mission-tag{position:absolute;top:-9px;right:12px;background:#e98a1c;color:var(--orange-on);font-size:10.5px;font-weight:700;border-radius:99px;padding:3px 10px;display:flex;align-items:center;gap:4px;box-shadow:0 1px 3px #00000038}.reference-app .mission-tag svg{width:11px;height:11px;fill:#fff}.reference-app .mission-tag.done{background:#8fae5c}.reference-app .tl-row .card img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2.5px solid #F3E6CC}.reference-app .tl-row .card>.presentation-media-empty{width:64px;height:64px;border-radius:50%;border:2.5px solid #F3E6CC;padding:0;flex:none}.reference-app .tl-row .card>.presentation-media-empty span{display:none}.reference-app .tl-row .card .tx{flex:1;min-width:0}.reference-app .tl-row .card b{color:var(--green);font-size:17px;display:block}.reference-app .tl-row .card p{font-size:13px;margin-top:3px;line-height:1.6}.reference-app .tl-row .card p .warn{color:#e05b5b;font-weight:700}.reference-app .tl-row .card .arw{color:#b9b4a2;font-size:18px;font-weight:700}.reference-app .tl-note{background:#edeae0;color:var(--ink);font-size:12px;font-weight:400;border-radius:8px;padding:8px 12px;margin:8px 0 0 56px}.reference-app .tl-note em{color:var(--orange-text);font-style:normal;text-decoration:underline}.reference-app .tl-line{position:absolute;left:39px;top:30px;bottom:30px;border-left:3px dashed #F0A24C;z-index:0}.reference-app .goal-row{display:flex;align-items:center;gap:14px;margin-top:16px;min-width:0}.reference-app .goal-row b{font-size:18px}.reference-app .route-stats{display:flex;gap:10px;padding:14px 14px 6px}.reference-app .route-stats .st{flex:1;background:#5e7239;color:#fff;border-radius:12px;text-align:center;padding:10px 6px;font-size:11px;font-weight:500}.reference-app .route-stats .st svg{width:16px;height:16px;fill:#fff;margin-bottom:2px}.reference-app .route-stats .st b{font-size:18px;font-weight:500;display:block;line-height:1.3}.reference-app .route-actions{display:flex;gap:10px;padding:12px 14px calc(16px + env(safe-area-inset-bottom))}.reference-app .route-actions .save{flex:1;background:#4a4a40;color:#fff;border-radius:12px;font-weight:500;font-size:14px;padding:14px;display:flex;align-items:center;justify-content:center;gap:8px}.reference-app .route-actions .save svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:2}.reference-app .route-actions .save:disabled{background:#77776d;cursor:default;opacity:1}.reference-app .route-actions .view{flex:1;background:var(--orange);color:#222;border-radius:12px;font-weight:700;font-size:14.5px}.reference-app .spot-hero{position:relative}.reference-app .spot-hero img{width:100%;height:231px;object-fit:cover}.reference-app .spot-hero>.presentation-media-empty{width:100%;height:231px}.reference-app .spot-hero .bkm{position:absolute;z-index:2;top:10px;right:16px;width:34px;height:46px;background:#fffffff0;color:var(--green);opacity:.98;clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%);filter:drop-shadow(0 1px 3px rgba(0,0,0,.2));display:flex;align-items:center;justify-content:center;padding-bottom:7px}.reference-app .spot-hero .bkm svg{width:21px;height:21px}.reference-app .spot-hero .bkm.saved{background:var(--green-mid);color:#fff}.reference-app .thumbs{display:flex;gap:10px;padding:14px;background:#fff;overflow-x:auto}.reference-app .thumbs img,.reference-app .thumbs .gray{width:76px;height:76px;border-radius:10px;object-fit:cover;background:#d6d3cb;flex:none;cursor:pointer}.reference-app .thumbs img.active{outline:3px solid var(--green-mid);outline-offset:-3px}.reference-app .spot-main{background:#fff;padding:2px 18px 20px;border-radius:0 0 18px 18px}.reference-app .spot-main h1{font-size:23px}.reference-app .spot-main .lead{color:var(--ink-soft);font-size:13.5px;font-weight:400;margin-top:4px}.reference-app .spot-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.reference-app .spot-tags span{color:#fff;font-size:12.5px;font-weight:500;border-radius:99px;padding:6px 14px}.reference-app .spot-main .desc{font-size:14px;line-height:2;margin-top:14px}.reference-app .info-sec{background:#fff;margin-top:12px;padding:18px;border-radius:18px 18px 0 0}.reference-app .info-sec h2{font-size:18px;margin-bottom:10px}.reference-app .info-row{display:flex;gap:12px;font-size:13.5px;padding:8px 0;font-weight:400;align-items:flex-start;min-width:0}.reference-app .info-row .ic{width:20px;flex:none;display:flex;justify-content:center;padding-top:2px;color:var(--green)}.reference-app .info-row .ic svg{width:16px;height:16px;fill:var(--green)}.reference-app .info-row .k{color:var(--ink);width:64px;flex:none}.reference-app .info-row>span:last-child{min-width:0;overflow-wrap:anywhere}.reference-app .guide-box{background:#fdf8ec;margin-top:12px;padding:18px}.reference-app .guide-box h2{font-size:18px}.reference-app .guide-box p{font-size:13.5px;line-height:1.9;margin-top:8px}.reference-app .guide-box .book{width:100%;margin-top:12px;background:var(--header);color:#fff;border-radius:10px;padding:13px;font-weight:500;font-size:14.5px}.reference-app .guide-box a.book{display:block;box-sizing:border-box;text-align:center;text-decoration:none}.reference-app .caution{background:#f3f1de;border-radius:12px;padding:14px;margin:14px 18px 20px}.reference-app .caution h3{color:#e05b5b;font-size:14.5px}.reference-app .caution ul{list-style:none;margin-top:6px;padding:0}.reference-app .caution li{font-size:12.5px;font-weight:400;line-height:1.9}.reference-mission-modal{position:absolute;inset:0;background:#2d2d239e;z-index:85;display:none;align-items:center;justify-content:center;padding:26px}.reference-mission-modal.on,.reference-mission-modal[data-open=true]{display:flex}.reference-mission-modal .card{background:#fffdf6;border-radius:22px;padding:26px 22px;width:100%;max-width:320px;text-align:center;animation:pop .3s ease}.reference-mission-modal h3{color:var(--orange-text);font-size:21px;font-weight:700}.reference-mission-modal .bwrap{position:relative;width:110px;height:110px;margin:18px auto 6px}.reference-mission-modal .bwrap img.ph{width:110px;height:110px;border-radius:50%;object-fit:cover;border:4px solid #8FAE5C}.reference-mission-modal .bwrap img.hana{position:absolute;right:-10px;bottom:-6px;width:48px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.25))}.reference-mission-modal .bname{font-size:16px;font-weight:700;color:var(--green);margin-top:8px}.reference-mission-modal p{font-size:13px;line-height:1.9;margin-top:8px;color:var(--ink)}.reference-mission-modal .btns{display:flex;flex-direction:column;gap:10px;margin-top:16px}.reference-app .badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 8px;margin-top:12px}.reference-app .badge-item{text-align:center;min-width:0}.reference-app .badge-item .bimg{position:relative;width:74px;height:74px;margin:0 auto}.reference-app .badge-item img.ph{width:74px;height:74px;border-radius:50%;object-fit:cover;border:3px solid #8FAE5C}.reference-app .badge-item img.hana{position:absolute;right:-8px;bottom:-4px;width:32px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.reference-app .badge-item.locked img.ph{filter:grayscale(1);opacity:.4;border-color:#cfcbbb}.reference-app .badge-item b{font-size:11.5px;font-weight:500;display:block;margin-top:6px;color:var(--green);line-height:1.4;overflow-wrap:anywhere}.reference-app .badge-item.locked b{color:#b4b09e}.reference-app .badge-item small{font-size:10px;color:#b4b09e}.reference-app .glow{animation:guidePulse 1.5s ease-in-out infinite;position:relative;z-index:1}@keyframes guidePulse{0%,to{box-shadow:0 0 #f08a0fd9}55%{box-shadow:0 0 0 9px #f08a0f00}}.reference-app .simple-body{flex:1;overflow-y:auto;padding:20px 16px;min-height:0}.reference-app .favorite-group+.favorite-group{margin-top:24px}.reference-app .simple-body h2{color:var(--green);font-size:19px;margin-bottom:12px}.reference-app .empty{text-align:center;color:var(--ink-soft);font-weight:400;font-size:13.5px;padding:40px 0;line-height:2}.reference-app .empty img{width:70px;margin:0 auto 10px;opacity:.8}.reference-app .profile-card{background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:16px;margin-bottom:16px}.reference-app .profile-card h3{color:var(--green);font-size:15px;margin-bottom:8px}.reference-app .profile-card p{font-size:13.5px;line-height:2}.reference-app .my-route{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);cursor:pointer;min-width:0}.reference-app .my-route:first-of-type{border-top:none}.reference-app .my-route img{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none}.reference-app .my-route>.presentation-media-empty{width:56px;height:56px;border-radius:12px;padding:0;flex:none}.reference-app .my-route>.presentation-media-empty span{display:none}.reference-app .my-route .tx{flex:1;min-width:0}.reference-app .my-route .tx b{font-size:14.5px;color:var(--ink);display:block;overflow-wrap:anywhere}.reference-app .my-route .tx p{font-size:12px;color:var(--ink-soft);margin-top:2px;line-height:1.5}.reference-app .my-route .arw{color:#b9b4a2;font-size:20px;flex:none}.reference-app .reference-toast{position:absolute;left:50%;bottom:90px;transform:translate(-50%);z-index:99;max-width:calc(100% - 28px);padding:10px 18px;border-radius:99px;background:#323228d9;color:#fff;font-size:13px;font-weight:500;text-align:center;white-space:normal;pointer-events:none;animation:pop .28s ease}.reference-app button:focus-visible,.reference-app [role=button]:focus-visible,.reference-app input:focus-visible,.reference-app select:focus-visible,.reference-app a:focus-visible{outline:3px solid #173F8A;outline-offset:2px}.reference-app .profile-name-sentence input:focus,.reference-app .profile-other-field input:focus,.reference-app .profile-name-sentence input:focus-visible,.reference-app .profile-other-field input:focus-visible{border-color:transparent;background:transparent;outline:none;outline-offset:0;box-shadow:none}@media(max-width:430px){.reference-app{background:var(--cream)}.reference-phone{max-width:none;box-shadow:none}}@media(max-width:375px){.reference-app .choice-card{margin-left:52px}.reference-app .bubble{max-width:calc(100% - 60px)}.reference-app .res-sub button{max-width:62%;white-space:normal}.reference-app .route-info .regen{padding-inline:10px}}@media(prefers-reduced-motion:reduce){.reference-app *,.reference-app *:before,.reference-app *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.reference-app .issue-296-screen{background:#fff4e4 url(/assets/background-CBU0PFIY.png) center / cover no-repeat;color:#222;font-family:Roboto,Noto Sans JP,Hiragino Kaku Gothic ProN,sans-serif}.reference-app .issue-296-chrome{--issue-296-top-safe-area:env(safe-area-inset-top);flex:none;height:calc(53px + var(--issue-296-top-safe-area));padding-top:var(--issue-296-top-safe-area);position:relative;z-index:2}.reference-app .issue-296-header{height:53px;position:relative;background:#667a48;color:#fff}.reference-app .issue-296-header h1{position:absolute;top:12px;left:12px;height:29px;margin:0;font:600 20px/29px Roboto,Noto Sans JP,sans-serif;white-space:nowrap}.reference-app .issue-296-back{position:absolute;inset:0 auto 0 0;z-index:1;width:35px;height:53px;display:flex;align-items:center;justify-content:flex-start;padding-left:12px}.reference-app .issue-296-back img{width:12px;height:19px;max-width:none}.reference-app .issue-296-back+h1{left:43.173px}.reference-app .issue-296-my-scroll{position:relative;display:flex;flex-direction:column;padding:0;background:transparent}.reference-app .issue-296-my-canvas{position:relative;flex:1 0 659px;min-height:659px;display:grid;grid-template-rows:19fr 154px 20.721fr 166.114px 21.165fr 136px 42fr 32px 68fr}.reference-app .issue-296-profile-block{position:relative;grid-row:2;min-width:0}.reference-app .issue-296-profile-edit{position:absolute;top:0;left:66.923076923cqw;width:29.230769231cqw;height:32px;border:1px solid #667A47;border-radius:100px;background:#fff;color:#667a47;font:400 12px/14px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-avatar{position:absolute;top:16px;left:36.666666667cqw;width:103px;height:103px}.reference-app .issue-296-avatar-art{width:103px;height:103px;max-width:none}.reference-app .issue-296-camera{position:absolute;left:82px;top:70px;width:26px;height:26px;max-width:none}.reference-app .issue-296-nickname{position:absolute;top:131px;left:0;width:100%;height:23px;margin:0;color:#222;text-align:center;font:700 20px/23px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-action-grid{position:relative;grid-row:4;left:6.923076923cqw;width:86.666666667cqw;display:flex;gap:4.102564103cqw}.reference-app .issue-296-action-card{position:relative;width:41.282051282cqw;height:166.114px;overflow:hidden;border:1px solid #fff;border-radius:18px;background:#fff;text-align:center}.reference-app .issue-296-action-card>img{position:absolute;top:9.279px;left:50%;transform:translate(-50%);width:76px;height:76px;object-fit:contain}.reference-app .issue-296-action-card:nth-child(2)>img{top:9.279px;width:74px;height:74px}.reference-app .issue-296-action-card strong{position:absolute;top:87.279px;left:5px;width:calc(100% - 10px);height:29px;color:#222;font:700 20px/29px Roboto,Noto Sans JP,sans-serif;white-space:nowrap}.reference-app .issue-296-action-card span{position:absolute;top:117.279px;left:5px;width:calc(100% - 10px);height:28px;color:#5d5d5d;font:400 12px/14px Roboto,Noto Sans JP,sans-serif;white-space:pre-line}.reference-app .issue-296-menu{position:relative;grid-row:6;left:6.41025641cqw;width:87.435897436cqw;display:grid;gap:3.636px}.reference-app .issue-296-menu button{position:relative;width:100%;height:42.364px;display:flex;align-items:center;border-radius:12px;background:#fff;padding:8px 12px 8px 20px;text-align:left}.reference-app .issue-296-menu button:last-child{height:44px}.reference-app .issue-296-menu button>img{width:26px;height:26px;flex:none;object-fit:contain}.reference-app .issue-296-menu button:last-child>img{width:28px;height:28px;margin-left:-1px}.reference-app .issue-296-menu button span{margin-left:12px;color:#222;font:400 16px/24px Roboto,Noto Sans JP,sans-serif;white-space:nowrap}.reference-app .issue-296-menu button i{position:absolute;right:12px;top:12px;width:8px;height:14px;background:#667a47;-webkit-mask:url("data:image/svg+xml,%3csvg%20width='12'%20height='19'%20viewBox='0%200%2012%2019'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.793%200.355854C10.288%20-0.118618%209.47379%20-0.118618%208.9688%200.355854L0.301451%208.49935C-0.100484%208.87699%20-0.100484%209.48703%200.301451%209.86467L8.9688%2018.0082C9.47379%2018.4826%2010.288%2018.4826%2010.793%2018.0082C11.298%2017.5337%2011.298%2016.7687%2010.793%2016.2943L3.22836%209.18685L10.8033%202.06977C11.298%201.59529%2011.298%200.830327%2010.793%200.355854Z'%20fill='white'/%3e%3c/svg%3e") center / contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20width='12'%20height='19'%20viewBox='0%200%2012%2019'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.793%200.355854C10.288%20-0.118618%209.47379%20-0.118618%208.9688%200.355854L0.301451%208.49935C-0.100484%208.87699%20-0.100484%209.48703%200.301451%209.86467L8.9688%2018.0082C9.47379%2018.4826%2010.288%2018.4826%2010.793%2018.0082C11.298%2017.5337%2011.298%2016.7687%2010.793%2016.2943L3.22836%209.18685L10.8033%202.06977C11.298%201.59529%2011.298%200.830327%2010.793%200.355854Z'%20fill='white'/%3e%3c/svg%3e") center / contain no-repeat;transform:rotate(180deg)}.reference-app .issue-296-logout{position:relative;grid-row:8;left:6.41025641cqw;width:87.435897436cqw;height:32px;border:1px solid #667A47;border-radius:100px;background:#f3ecda;color:#667a47;font:400 12px/14px Roboto,Noto Sans JP,sans-serif}.reference-app .tabbar.issue-296-tabbar{--issue-296-dock-safe-bottom:max(16px, env(safe-area-inset-bottom));width:100%;height:calc(68px + var(--issue-296-dock-safe-bottom));min-height:calc(68px + var(--issue-296-dock-safe-bottom));padding:8px 16px var(--issue-296-dock-safe-bottom);border-top:1px solid #EFEFEF;background:#fff}.reference-app .tabbar.issue-296-tabbar button{height:60px;padding:8px 0;gap:4px;justify-content:center;color:#cee3a8;font:500 12px/14px Roboto,Noto Sans JP,sans-serif}.reference-app .tabbar.issue-296-tabbar button:nth-child(n+2){height:58px;margin-top:1px}.reference-app .tabbar.issue-296-tabbar button img{width:24px;height:24px;max-width:none;object-fit:contain}.reference-app .tabbar.issue-296-tabbar button:first-child img{width:23px;height:22px}.reference-app .tabbar.issue-296-tabbar button.on{color:#657948}.reference-app .issue-360-badge-preload{position:absolute;width:0;height:0;overflow:hidden;opacity:0;pointer-events:none}.reference-app .issue-360-badge-preload img{width:1px;height:1px}.reference-app .issue-296-badge-body{position:relative;padding:0;background:transparent}.reference-app .issue-296-badge-body:before{content:"";display:block;min-height:max(743px,calc(179px + 144.615384615cqw))}.reference-app .issue-296-badge-intro{position:absolute;top:47px;left:7.948717949cqw;width:223px;height:59px;color:#667a47;white-space:pre-line;font:600 20px/29px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-badge-count{position:absolute;top:19px;left:62.051282051cqw;width:145px;height:116.886px;text-align:center}.reference-app .issue-296-badge-count:before{content:"";position:absolute;top:0;left:11.447px;width:122.473px;height:116.886px;border:1px solid #9DBC64;border-radius:18px;background:#fff}.reference-app .issue-296-badge-count>img{position:absolute;top:18.988px;left:56.835px;width:33.229px;height:32.28px;max-width:none}.reference-app .issue-296-badge-count p{position:absolute;top:56.886px;left:0;width:145px;height:29px;font:700 20px/29px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-badge-count p strong{color:#ff8d20;font-size:40px;vertical-align:-5px}.reference-app .issue-296-badge-count p span{color:#222;margin-left:2px}.reference-app .issue-296-badge-count small{position:absolute;top:87.956px;left:15.251px;width:114.866px;height:14px;color:#5d5d5d;font:400 12px/14px Roboto,Noto Sans JP,sans-serif;white-space:nowrap}.reference-app .issue-296-binder{position:absolute;top:153px;left:0;width:100%;height:144.615384615cqw;overflow:hidden}.reference-app .issue-296-binder>img{position:absolute;max-width:none}.reference-app .issue-296-binder-green{left:-93.58974359%;top:0;width:191.282051282%;height:100%}.reference-app .issue-296-binder-shadow{left:3.888717949%;top:3.772695035%;width:90.801794872%;height:81.046631206%}.reference-app .issue-296-binder-page{left:3.319487179%;top:3.772695035%;width:89.642307692%;height:81.046631206%}.reference-app .issue-296-binder-ring{left:-5.957179487%;width:15.228205128%;height:2.408687943%}.reference-app .issue-296-earned-stamp{left:12.051282051%;top:9.574468085%;width:77.692307692%;height:53.191489362%}.reference-app .issue-296-earned-date{position:absolute;left:31.538461538%;top:62.234042553%;width:38.974358974%;height:5.141843972%;color:#667a47;font:600 20px/29px Roboto,Noto Sans JP,sans-serif;white-space:nowrap}.reference-app .issue-296-store-card{left:21.538461538%;top:65.957446809%;width:64.615384615%;height:18.971631206%}.reference-app .issue-360-preview-stamp{left:12.051282051%;top:9.574468085%;width:77.692307692%;height:53.191489362%;object-fit:contain}.reference-app .issue-360-preview-status{position:absolute;left:21.538461538%;top:63.475177305%;width:64.615384615%;height:4.078014184%;color:#667a47;text-align:center;font:600 16px/23px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-empty-stamp{left:8.189487179%;top:7.092198582%;width:87.435897436%;height:60.460992908%}.reference-app .issue-296-empty-copy{position:absolute;left:15.641025641%;top:67.375886525%;width:74.102564103%;height:12.056737589%;text-align:center;color:#667a47}.reference-app .issue-296-empty-copy strong{display:block;font:700 16px/23px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-empty-copy p{margin-top:4px;color:#667a47;white-space:pre-line;font:400 12px/17px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-empty-copy em{color:#ff8d20;font-style:normal;font-weight:700}.reference-app .issue-296-badge-previous,.reference-app .issue-296-badge-next{position:absolute;top:88.29787234%;width:11.794871795%;height:7.80141844%}.reference-app .issue-296-badge-previous{left:21.538461538%}.reference-app .issue-296-badge-next{left:66.666666667%}.reference-app .issue-296-badge-previous img,.reference-app .issue-296-badge-next img{width:100%;height:100%;max-width:none}.reference-app .issue-296-page-indicator{position:absolute;left:43.076923077%;top:89.539007092%;width:13.846153846%;height:5.141843972%;color:#fff;text-align:center;font:600 20px/29px Roboto,sans-serif}.reference-app .issue-296-language-backdrop{position:absolute;inset:0;z-index:50;display:flex;align-items:flex-end;padding:16px;background:#2222224d}.reference-app .issue-296-language-dialog{width:100%;padding:22px;border-radius:18px;background:#fffdf7;box-shadow:0 8px 28px #2223}.reference-app .issue-296-language-dialog h2{margin-bottom:14px;color:#667a47;font:600 20px/29px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-language-dialog button{display:block;width:100%;min-height:44px;border-bottom:1px solid #EAE2CF;color:#222;text-align:left;font:500 16px/24px Roboto,Noto Sans JP,sans-serif}.reference-app .issue-296-language-dialog button.selected{color:#667a47;font-weight:700}.reference-app .issue-296-language-dialog .issue-296-language-close{margin-top:10px;border:0;color:#667a47;text-align:center}@media(max-width:389px){.reference-app .issue-296-avatar{left:calc(50% - 51.5px)}.reference-app .issue-296-badge-count{left:auto;right:3px;transform:scale(.96);transform-origin:top right}.reference-app .issue-296-badge-intro{left:6.923076923cqw}}.reference-app [data-badge-status=empty] .issue-296-badge-intro{left:35px}.reference-app [data-badge-status=empty] .issue-296-badge-count{left:62.307692308cqw}
