/* KONUMUM · shared discovery design. No map filters or gesture overrides. */
.konumum-app, .konumum-pages {
  --km-night:#091b31; --km-panel:#102a43; --km-raised:#17364f;
  --km-stroke:#2b4a62; --km-text:#edf5ff; --km-subtle:#afc2d5;
  --km-mint:#79e8d2; --km-mint-ink:#062e35;
  --km-gradient:radial-gradient(ellipse at 100% 0%,#16485d66,transparent 65%),linear-gradient(145deg,#112e4a,#091b31);
}
body.konumum-app {
  --ink:var(--km-text); --muted:var(--km-subtle); --line:var(--km-stroke);
  --paper:var(--km-panel); --canvas:var(--km-night); --blue:#75e4d0; --blue-dark:#a1f3e1; --teal:#62d7bc;
  --shadow:0 24px 70px #030c1e66; --small-shadow:0 8px 24px #030c1e33;
  color:var(--km-text); background:var(--km-night); color-scheme:dark;
}
.konumum-app .topbar { background:var(--km-night); border-color:#233e55; box-shadow:0 8px 30px #030d1e22; }
.konumum-app .brand { color:var(--km-text); letter-spacing:-.04em; }
.konumum-app .brand-mark { background:linear-gradient(140deg,#8aefdb,#46bcbb); border:1px solid #b6ffef55; box-shadow:0 5px 18px #55d6c01a; }
.konumum-app .brand-mark svg { fill:#0a3441; }
.konumum-app :is(.account-button,.install-mini,.language-toggle,.notice-button) { color:#e3edf8; background:#17334c; border-color:#304c64; border-radius:13px; box-shadow:inset 0 1px 0 #ffffff05; }
.konumum-app :is(.account-button,.install-mini,.language-toggle,.notice-button):hover { background:#24465f; border-color:#6fa9ae; }
.konumum-app .account-avatar { color:#0a3340; background:var(--km-mint); }
.konumum-app .control-panel { background:var(--km-night); border-color:#233e55; box-shadow:none; }
.konumum-app .search-surface { padding:24px 20px 18px; background:var(--km-gradient); border-color:#2b4a62; }
.konumum-app .search-intro { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 20px; }
.konumum-app .search-intro .eyebrow { margin:0 0 7px; color:var(--km-mint); font-size:.63rem; letter-spacing:.16em; }
.konumum-app .search-intro h2 { margin:0; color:#f0f7ff; font-size:1.8rem; font-weight:800; line-height:1.15; letter-spacing:-.05em; }
.konumum-app .search-compass { width:48px; height:48px; display:grid; place-items:center; border:1px solid #79e8d233; border-radius:16px; background:#79e8d20a; }
.konumum-app .search-compass svg { width:34px; stroke:var(--km-mint); stroke-width:1.2; stroke-linejoin:round; }
.konumum-app .search-form { min-height:56px; border-radius:17px; background:#071b2d; border-color:#3a5a73; box-shadow:0 7px 20px #020d1d22,inset 0 1px 0 #ffffff06; }
.konumum-app .search-form svg { stroke:#96b8ca; }
.konumum-app .search-form input { color:#f2f8ff; }
.konumum-app .search-form input::placeholder { color:#a4bbce; }
.konumum-app .search-form:focus-within { background:#0b2237; border-color:var(--km-mint); box-shadow:0 0 0 3px #79e8d21c; }
.konumum-app :is(.search-area-fields,.general-search-fields) label { color:#b8cbdc; font-size:.75rem; }
.konumum-app :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { color:#edf5ff; background-color:#0a2035; border-color:#3b5970; border-radius:12px; accent-color:var(--km-mint); }
.konumum-app :is(input,textarea)::placeholder { color:#98aec3; opacity:1; }
.konumum-app :is(input,select,textarea):focus-visible { outline:2px solid var(--km-mint); outline-offset:2px; }
.konumum-app .search-form input { background:transparent; border-radius:0; }
.konumum-app .search-form input:focus-visible { outline:0; }
.konumum-app .search-options summary { color:#b7d5e3; }
.konumum-app .category-scroll { gap:8px; padding-block:16px 12px; scrollbar-color:#48627a transparent; }
.konumum-app .category-chip { min-height:44px; padding-inline:13px; border-radius:14px; color:#d6e6f4; border-color:#31516b; background:#17344d; box-shadow:inset 0 1px 0 #ffffff04; }
.konumum-app .category-chip span { display:grid; place-items:center; width:23px; height:23px; font-size:1rem; }
.konumum-app .category-chip:hover { background:#244b62; border-color:#74c4bd; }
.konumum-app .category-chip.active { color:#072f39; border-color:#b2fff0; background:linear-gradient(130deg,#9bf1de,#66d9cb); box-shadow:0 5px 18px #63d9c020; }
.konumum-app .community-panel { border-color:#31506a; padding-top:12px; }
.konumum-app :is(.community-tabs,.account-tabs,.profile-tabs) { padding:4px; border:1px solid #2d4c65; border-radius:14px; background:#0a2034; }
.konumum-app :is(.account-tabs button,.profile-tabs button) { color:#b4ccdf; border-color:transparent; border-radius:10px; background:transparent; }
.konumum-app :is(.account-tabs button.active,.profile-tabs button[aria-current=page]) { color:#91ecd9; background:#1c4054; border-color:#42736f; box-shadow:none; }
.konumum-app :is(.trend-card,.member-directory-card,.result-card,.saved-location-card,.profile-place-card,.profile-comment-card,.notice-item,.public-profile-list button) { border:1px solid #315068; border-radius:18px; color:var(--km-text); background:linear-gradient(145deg,#16334d,#10293f); box-shadow:0 6px 18px #030c1e12,inset 0 1px 0 #ffffff04; }
.konumum-app :is(.trend-card strong,.member-directory-place,.member-directory-place strong,.result-name) { color:#edf5ff; }
.konumum-app :is(.member-directory-place span,.member-attribution,.member-profile-note) { color:var(--km-subtle); }
.konumum-app .member-directory-place small { color:#9ae7d9; }
.konumum-app :is(.conditions-panel,.nearby-members-panel,.my-coordinates,.incoming-panel) { padding:13px; border:1px solid #34526b; border-radius:17px; color:#d5e7f6; background:#0c2339; }
.konumum-app :is(.conditions-panel,.nearby-members-panel,.incoming-panel)>summary { color:#c5dfef; font-weight:750; }
.konumum-app :is(.conditions-brief span,.condition-tile,.traffic-planning,.saved-empty,.empty-state span) { color:#c5d7e7; border-color:#31516b; background:#1a374f; border-radius:13px; }
.konumum-app :is(.conditions-brief strong,.condition-tile strong,.coordinate-pair output,.location-update time,.my-coordinates-copy strong) { color:#e4f6fc; }
.konumum-app :is(.my-coordinates-copy,.nearby-members-status,.nearby-member-row>span) { color:#b9cee1; }
.konumum-app .results-panel { padding:22px 20px 14px; background:var(--km-night); }
.konumum-app .results-heading { padding:0 0 18px; margin:0 0 12px; border-bottom:1px solid #27455d; gap:9px; }
.konumum-app .results-kicker { color:#79e8d2; font-size:.64rem; letter-spacing:.14em; }
.konumum-app .results-heading h2 { color:#f1f7ff; font-size:1.15rem; letter-spacing:-.035em; }
.konumum-app .result-count { color:#8eefd8; background:#164a4b; border:1px solid #2c6b64; }
.konumum-app .result-card { padding:16px; margin-bottom:12px; gap:12px; }
.konumum-app .result-card:is(:hover,.selected) { border-color:#80e4d0; box-shadow:0 7px 24px #020b1926; }
.konumum-app .result-icon { background:#27475d; border:1px solid #476778; border-radius:14px; box-shadow:inset 0 1px 0 #ffffff0a; }
.konumum-app .result-name { font-size:1rem; }
.konumum-app .result-address { color:#b0c6da; line-height:1.55; }
.konumum-app .distance { color:#a6eadf; background:#1b474b; border:1px solid #376762; border-radius:8px; }
.konumum-app .empty-state { color:#adc5d9; padding-block:24px; }
.konumum-app .empty-state span { color:var(--km-mint); width:64px; height:64px; border:1px solid #365d6b; border-radius:22px; font-size:2rem; box-shadow:0 0 0 8px #79e8d205; }
.konumum-app .empty-state p { line-height:1.6; }
.konumum-app .data-note { color:#9bb0c4; line-height:1.6; padding-top:12px; }
.konumum-app :is(.primary-button,.account-form .primary-button,.route-button,.retry-search-button,.copy-link-button,.search-form button[type=submit],.place-comment-form>button,.shared-location-actions #shared-directions,.content-report-actions [data-report-submit]) { color:var(--km-mint-ink); border:1px solid #acffed55; background:linear-gradient(115deg,#98efdc,#60d6c9); border-radius:12px; box-shadow:0 5px 15px #45c9b415,inset 0 1px 0 #ffffff55; font-weight:800; }
.konumum-app :is(.primary-button,.route-button,.retry-search-button,.copy-link-button,.search-form button[type=submit]):hover:not(:disabled) { color:#062c35; background:#adf5e5; box-shadow:0 5px 20px #54dcc42b; }
.konumum-app :is(.secondary-button,.maps-link,.save-place-button,.show-more-results,.add-place-button,.member-places-more,.member-directory-actions button,.my-coordinates button,.nearby-message-button,.profile-item-actions button,.profile-edit-actions button:not(.primary-button),.notice-actions button,.notice-enable,.report-content-button,.comment-reactions button,.trend-actions button,.location-line .add-place-button,.saved-location-actions button,.share-actions button:not(.copy-link-button),.content-report-actions button,.search-expansion button,.incoming-panel button,#member-place-pick,#refresh-conditions,#refresh-nearby-members,#toggle-results,.location-map-cover button) { color:#c9e6ed; background:#203f55; border-color:#436075; border-radius:11px; box-shadow:none; }
.konumum-app :is(.secondary-button,.maps-link,.save-place-button,.member-directory-actions button,.my-coordinates button,.nearby-message-button,.notice-actions button,.report-content-button,.trend-actions button,.saved-location-actions button):hover:not(:disabled) { background:#2b5267; border-color:#77bcb4; }
.konumum-app :is(.favorite-button.selected,.save-place-button.pin) { color:#ffe4a2; background:#4c4023; border-color:#8c733e; }
.konumum-app :is(.saved-location-actions button.delete,.notice-actions button:last-child) { color:#ffb1bb; background:#4a2938; border-color:#79414e; }
.konumum-app .call-place-link { color:#9ff0d5; background:#16473f; border-color:#3d7868; }
.konumum-app :is(.profile-link,.phone-source a,.phone-source summary,.text-button,.forgot-link,.location-line button) { color:#9debdc; }
.konumum-app .place-phone-disclosure>summary { color:#c0e9ed; border-color:#426679; background:#1b3b50; }
.konumum-app :is(.map-action,.leaflet-control-zoom a) { color:var(--km-text) !important; background:#112e46 !important; border:1px solid #456077 !important; border-radius:14px; }
.konumum-app .map-action svg { stroke:#c8eade; }
.konumum-app .leaflet-control-zoom { border-radius:14px; overflow:hidden; }
.konumum-app .leaflet-popup-content-wrapper { color:#ecf4ff; background:#112e46; border:1px solid #426079; border-radius:20px; }
.konumum-app .leaflet-popup-tip { background:#112e46; }
.konumum-app .leaflet-container { color-scheme:light; }
.konumum-app .leaflet-popup-close-button { color:#c0dae8; }
.konumum-app .leaflet-control-attribution { background:#ffffffdf; color:#28445f; }
.konumum-app .leaflet-control-attribution a { color:#12588d; }
.konumum-app :is(.route-summary,.shared-location-card,.navigation-header,.journey-status,.language-prompt,.toast) { color:#edf5ff; background:var(--km-gradient); border:1px solid #49637a; border-radius:20px; box-shadow:var(--shadow); }
.konumum-app :is(.route-summary button,.journey-status button,.shared-location-actions button,.navigation-header button) { color:#cde8ed; border-color:#3b6277; background:#244b62; }
.konumum-app .manual-tip { color:#eaf5ff; background:#143b53; border:1px solid #64938e; }
.konumum-app .navigation-card { background:var(--km-gradient); border:1px solid #64938e; border-radius:22px; box-shadow:var(--shadow); }
.konumum-app .navigation-arrow { color:#0c3940; background:var(--km-mint); }
.konumum-app .navigation-live { color:#b2ecda; background:#0a2c36; border:1px solid #386860; }
.konumum-app .location-map-cover { color:var(--km-text); background:var(--km-gradient); }
.konumum-app dialog { color:var(--km-text); background:var(--km-gradient); border:1px solid #49647b; border-radius:25px; box-shadow:0 30px 100px #020914aa; color-scheme:dark; }
.konumum-app dialog::backdrop { background:#020d21b3; backdrop-filter:blur(5px); }
.konumum-app :is(.account-dialog-header,.share-dialog-header,.place-comments-header) { border-bottom:1px solid #345169; padding-bottom:18px; margin-bottom:20px; }
.konumum-app dialog :is(h2,h3) { color:#eef6ff; letter-spacing:-.035em; }
.konumum-app .dialog-close { color:#b6ccdf; background:#27475e; border:1px solid #3d5b72; border-radius:12px; }
.konumum-app :is(.guest-dialog p,.account-form label,.share-meta,.member-profile-note,.member-profile-username,.member-place-form p,.travel-mode-dialog p,.field-hint) { color:#bdd0e1; }
.konumum-app :is(.account-profile,.travel-mode-options button,.alternative-comparison,.member-profile-avatar,.share-dialog-icon,.guest-mark,.phone-shape,.ios-steps span,.account-message) { color:#c9f2e8; background:#20495a; border-color:#3b716f; border-radius:16px; }
.konumum-app .travel-mode-options button strong { color:#edf8ff; }
.konumum-app :is(.saved-location-actions,.profile-item-actions,.profile-edit-actions,.account-settings,.public-profile-section,.nearby-member-row) { border-color:#345169; background:transparent; }
.konumum-app :is(.saved-badges span,.notice-item.unread,.comment-reactions button[aria-pressed=true]) { color:#abf4de; background:#174d49; border-color:#3a8475; }
.konumum-app :is(.place-comment,.journey-chat-message,.nearby-chat-bubble,.comment-reply-context,.nearby-chat-list button) { color:#e1edf8; background:#244257; border:1px solid #365b70; border-radius:15px; }
.konumum-app :is(.place-comment.reply,.journey-chat-message.mine,.nearby-chat-bubble.mine,.nearby-chat-list button.active) { color:#d7fff2; background:#1a514f; border-color:#45877b; }
.konumum-app :is(.journey-chat-list,.nearby-chat-thread) { color:#e7f2fd; background:#0b2034; border-color:#345169; }
.konumum-app :is(.place-comment>button,.comment-reply-context button,.language-prompt button) { color:#b7ece1; background:#244f59; border-color:#437671; }
.konumum-app :is(.account-message.error,.notice-dialog #content-report-error,.nearby-members-status.is-error) { color:#ffb9c2; background:#4a2838; }
.konumum-app .recovery-result { color:#f7dea3; background:#3c3523; border-color:#89723e; }
.konumum-app .recovery-code { color:#f9e6ba; background:#262f36; }
.konumum-app .nearby-chat-report summary { color:#f3cf8c; }
.konumum-app .site-info-link { padding-block:30px; color:#a5bdd1; background:#07172b; border-color:#2b455e; }
.konumum-app .site-info-link :is(a,summary) { color:#9fe5d7; }
.konumum-app .site-info-link .site-intro { color:#a5bdd1; font-size:.8rem; line-height:1.8; }
.konumum-app .site-guide { padding:14px 18px; border:1px solid #2b455e; border-radius:16px; background:#10283f; }
.konumum-app .skeleton { background:linear-gradient(90deg,#18334b 20%,#29475d 42%,#18334b 65%); background-size:300% 100%; }
.konumum-app :is(button,a,input,select,textarea):focus-visible { outline-color:var(--km-mint); }
.konumum-app button:disabled { opacity:.55; }
/* Shared public guide and account administration pages. */
body.konumum-pages { background:var(--km-night); color:var(--km-text); color-scheme:dark; }
.konumum-pages main { background:var(--km-night); color:var(--km-text); font-family:Inter,ui-sans-serif,system-ui,sans-serif; }
.konumum-pages main>div>header { padding:28px; border:1px solid #3b5c74; border-radius:26px; background:var(--km-gradient); box-shadow:0 15px 40px #020b191f; }
.konumum-pages main :is(section,article)[class*="bg-white"] { background:#123049; border:1px solid #30516a; border-radius:22px; box-shadow:0 10px 30px #020b1912; }
.konumum-pages main [class*="bg-[#edf4fb]"] { color:#c4d7e7; background:#1b3a52; border-color:#3b5b73; }
.konumum-pages main :is(h1,h2,h3) { color:#edf5ff; letter-spacing:-.035em; }
.konumum-pages main p { color:#b4ccdf; }
.konumum-pages main :is(a,[class*="text-[#0d5bd7]"]) { color:#8eecd6; }
.konumum-pages main a[class*="bg-[#0d5bd7]"] { color:#082f39; background:#8ae8d3; border-color:#8ae8d3; }
.konumum-pages main footer { color:#a8c0d5; }
@media (min-width:761px) {
  .konumum-app .workspace { grid-template-columns:minmax(350px,430px) minmax(0,1fr); }
  .konumum-app .map-wrap { top:76px; height:calc(100svh - 88px); margin:12px 12px 12px 0; border:1px solid #345169; border-radius:26px; box-shadow:0 15px 40px #020c1922; }
}
@media (max-width:760px) {
  .konumum-app .search-surface { margin:10px; padding:18px 14px 14px; border-radius:22px; box-shadow:0 10px 25px #020b1926; }
  .konumum-app .search-intro { margin-bottom:16px; }
  .konumum-app .search-intro h2 { font-size:1.55rem; }
  .konumum-app .search-compass { width:42px; height:42px; border-radius:14px; }
  .konumum-app .search-compass svg { width:30px; }
  .konumum-app .category-chip { padding-inline:11px; min-height:44px; }
  .konumum-app .map-wrap { width:calc(100% - 20px); margin-inline:10px; border:1px solid #345169; border-radius:24px; }
  .konumum-app .results-panel { margin:10px; padding:18px 14px 14px; background:var(--km-gradient); border:1px solid #345169; border-radius:22px; box-shadow:0 10px 25px #020b1926; }
  .konumum-app .mobile-handle { background:#48677c; }
  .konumum-app .result-card { padding:13px; border-radius:17px; }
  .konumum-app .results-heading h2 { font-size:clamp(.95rem,4.2vw,1.15rem); }
  .konumum-app .site-info-link { padding-inline:18px; }
  body.konumum-app.navigation-mode .map-wrap { margin:0; width:100%; border:0; border-radius:0; }
  .konumum-pages main>div>header { padding:22px; }
}
@media (prefers-reduced-motion:no-preference) {
  .konumum-app :is(.search-intro,.results-heading) { animation:konumum-reveal .45s ease-out both; }
  .konumum-app .search-compass svg { animation:km-compass 1.2s .2s ease-out both; }
  .konumum-app :is(.trend-card,.member-directory-card,.notice-item,.saved-location-card) { animation:konumum-reveal .3s ease-out backwards; }
  .konumum-app :is(button,a,input,select,textarea) { transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease; }
  .konumum-app .result-card { transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
  @media (hover:hover) and (pointer:fine) { .konumum-app .result-card:hover { transform:translateY(-2px); } }
}
@keyframes km-compass { from { opacity:0; transform:rotate(-65deg); } to { opacity:1; transform:rotate(0); } }
@media (prefers-reduced-motion:reduce) {
  .konumum-app *, .konumum-app *::before, .konumum-app *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Specific controls retain their semantic states within the shared palette. */
.konumum-app :is(.place-detail,.share-counter,.conditions-panel small,.giphy-attribution) { color:#b6cde0; }
.konumum-app .trend-card button { color:#b4f3e2; background:#235652; }
.konumum-app .route-summary .route-close-button,
.konumum-app .shared-location-actions #shared-location-close,
.konumum-app .shared-location-actions #shared-comments,
.konumum-app #alternative-dismiss { color:#d4e6f5; background:#25465e; }
.konumum-app #alternative-accept { color:#082f39; background:#8aead4; }
.konumum-app #journey-travel-mode, .konumum-app #journey-label { color:#edf5ff; background:#0a2035; border-color:#3b5970; }
.konumum-app .travel-mode-options button:hover { color:#cdf8ea; background:#28635f; }
.konumum-app .journey-chat-form p { color:#ffb7c2; }
.konumum-app .phone-shape { border-color:#577c92; }
.konumum-app .route-road-label-marker span { color:#1a3f57; background:#fffffff0; }
.konumum-app .location-screen-hidden-message { color:#b9cee1; }
.konumum-pages main :is([class*="bg-[#f"],[class*="bg-[#e"]) { color:#dceaf6; background:#1b3a52; border-color:#3b5b73; }
.konumum-pages main [class*="text-[#476883]"] { color:#b4ccdf; }
@media (max-width:760px) {
  .konumum-app #toggle-results { min-height:44px; padding-inline:10px; }
}

/* Theme-matched settings control, independent of platform emoji rendering. */
.konumum-app .search-form .mobile-filters-toggle {
  color:#89e9d7; background:#173c50; border:1px solid #3f716f;
  border-radius:12px; box-shadow:inset 0 1px 0 #b5ffed0d;
}
.konumum-app .search-form .mobile-filters-toggle .settings-gear {
  width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.65;
  stroke-linecap:round; stroke-linejoin:round;
}
.konumum-app .search-form .mobile-filters-toggle:hover,
.konumum-app .search-form .mobile-filters-toggle[aria-expanded="true"] {
  color:#b8fff0; background:#245452; border-color:#79d4c2;
}
.konumum-app .search-form .mobile-filters-toggle:focus-visible {
  outline:2px solid #89e9d7; outline-offset:2px;
}
/* Profile section rail: visible affordances, consistent icons and one clear selection. */
.konumum-app .profile-navigation { min-width:0; margin:22px 0 24px; }
.konumum-app .profile-nav-caption { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 12px; margin:0 3px 10px; }
.konumum-app .profile-nav-caption strong { color:#deedf8; font-size:.77rem; font-weight:750; letter-spacing:.01em; }
.konumum-app .profile-swipe-hint { display:none; align-items:center; gap:6px; color:#9ebccd; font-size:.7rem; }
.konumum-app .profile-navigation.has-overflow .profile-swipe-hint { display:inline-flex; }
.konumum-app .profile-swipe-hint span { color:#80e5d2; font-size:1rem; }
.konumum-app .profile-nav-shell { display:flex; align-items:center; gap:7px; min-width:0; padding:7px; border:1px solid #35536b; border-radius:22px; background:linear-gradient(140deg,#081e32,#102c42); box-shadow:inset 0 1px 0 #b8e6ed08,0 8px 22px #030c1b1a; }
.konumum-app .profile-nav-window { position:relative; flex:1; min-width:0; border-radius:15px; overflow:hidden; }
.konumum-app .profile-nav-window::before,.konumum-app .profile-nav-window::after { content:''; position:absolute; top:0; bottom:0; width:18px; z-index:2; opacity:0; pointer-events:none; transition:opacity .2s ease; }
.konumum-app .profile-nav-window::before { left:0; background:linear-gradient(90deg,#0b2338,transparent); }
.konumum-app .profile-nav-window::after { right:0; background:linear-gradient(-90deg,#0b2338,transparent); }
.konumum-app .can-scroll-back .profile-nav-window::before,.konumum-app .can-scroll-forward .profile-nav-window::after { opacity:1; }
.konumum-app .profile-tabs { display:flex; gap:6px; margin:0; padding:4px; width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x proximity; scroll-padding-inline:4px; -webkit-overflow-scrolling:touch; touch-action:pan-x; scrollbar-width:none; background:transparent; border:0; border-radius:0; }
.konumum-app .profile-tabs::-webkit-scrollbar { display:none; }
.konumum-app .profile-tabs button { position:relative; display:flex; flex:1 0 112px; flex-direction:column; justify-content:center; align-items:center; gap:7px; min-height:82px; min-width:0; padding:10px 9px 12px; color:#b7cfe1; border:1px solid transparent; border-radius:15px; background:transparent; scroll-snap-align:center; font-size:.76rem; font-weight:750; line-height:1.15; white-space:nowrap; -webkit-tap-highlight-color:transparent; }
.konumum-app .profile-tab-icon { width:28px; height:28px; display:grid; place-items:center; color:#9fbdce; }
.konumum-app .profile-tab-icon svg { width:23px; height:23px; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .profile-tabs button[aria-current=page] { color:#062f39; background:linear-gradient(135deg,#a0f2df,#65d7cb); border-color:#b9fff088; box-shadow:inset 0 1px 0 #ffffff80,0 5px 15px #4acbb51a; }
.konumum-app .profile-tabs button[aria-current=page] .profile-tab-icon { color:#0a4b51; }
.konumum-app .profile-tabs button::after { content:''; position:absolute; bottom:5px; left:calc(50% - 10px); height:3px; width:20px; border-radius:4px; background:#124d53; opacity:0; transform:scaleX(.3); }
.konumum-app .profile-tabs button[aria-current=page]::after { opacity:.65; transform:scaleX(1); }
.konumum-app .profile-nav-arrow { display:none; flex:none; width:32px; height:48px; padding:0; align-items:center; justify-content:center; color:#a0eadc; border:1px solid #3d6577; border-radius:12px; background:#1a3b51; cursor:pointer; }
.konumum-app .has-overflow .profile-nav-arrow { display:inline-flex; }
.konumum-app .profile-nav-arrow svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .profile-nav-arrow:disabled { opacity:.28; cursor:default; }
.konumum-app .profile-tabs button:focus-visible,.konumum-app .profile-nav-arrow:focus-visible { outline:2px solid #b7fced; outline-offset:-3px; }
@media (hover:hover) and (pointer:fine) {
  .konumum-app .profile-tabs button:hover:not([aria-current=page]) { color:#d8f6f1; background:#1b3e53; border-color:#365e70; }
  .konumum-app .profile-nav-arrow:hover:not(:disabled) { background:#295a60; border-color:#8ce4d0; }
}
@media (max-width:390px) {
  .konumum-app .profile-tabs button { flex-basis:108px; font-size:.73rem; }
  .konumum-app .profile-nav-shell { gap:4px; padding:5px; border-radius:20px; }
  .konumum-app .profile-nav-arrow { width:28px; }
}
@media (prefers-reduced-motion:no-preference) {
  .konumum-app .profile-tabs button,.konumum-app .profile-nav-arrow { transition:color .18s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,scale .15s ease; }
  .konumum-app .profile-tab-icon { transition:transform .28s cubic-bezier(.2,.8,.2,1),color .2s ease; }
  .konumum-app .profile-tabs button[aria-current=page] .profile-tab-icon { transform:translateY(-1px) scale(1.1); }
  .konumum-app .profile-tabs button::after { transition:opacity .2s ease,transform .28s ease; }
  .konumum-app .profile-tabs button:active,.konumum-app .profile-nav-arrow:active:not(:disabled) { scale:.96; }
}
/* Three discover destinations stay visible together on narrow screens. */
.konumum-app .community-panel { padding-top:18px; margin-top:10px; }
.konumum-app .community-discover-label { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:0 2px 11px; color:#afc9d9; font-size:.6rem; font-weight:800; letter-spacing:.14em; }
.konumum-app .community-discover-label>span:last-child { color:#78e3cf; font-size:1rem; line-height:1; }
.konumum-app .community-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; padding:6px; overflow:visible; border:1px solid #37546b; border-radius:22px; background:linear-gradient(135deg,#071d30,#102d43); box-shadow:inset 0 1px 0 #b6f1f00a,0 7px 20px #030d1b1a; touch-action:auto; }
.konumum-app .community-tab { position:relative; min-width:0; min-height:106px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:12px 4px 14px; border:1px solid transparent; border-radius:16px; color:#c0d4e3; background:transparent; white-space:normal; text-align:center; }
.konumum-app .community-tab-icon { display:grid; place-items:center; width:35px; height:35px; margin-bottom:3px; color:#88dccc; border:1px solid #355d6b; border-radius:12px; background:#16394e; box-shadow:inset 0 1px 0 #ffffff06; }
.konumum-app .community-tab-icon svg { width:22px; height:22px; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app #trending-toggle .community-tab-icon { color:#f1cc89; }
.konumum-app .community-tab-title { font-size:clamp(.78rem,2.9vw,.87rem); font-weight:800; line-height:1.2; letter-spacing:-.02em; overflow-wrap:anywhere; }
.konumum-app .community-tab-subtitle { color:#9fb8cc; font-size:.67rem; font-weight:500; line-height:1.25; overflow-wrap:anywhere; }
.konumum-app .community-tab.active { color:#072f39; background:linear-gradient(140deg,#a3f2df,#64d6c9); border-color:#b4ffef88; box-shadow:inset 0 1px 0 #ffffff88,0 5px 18px #5cd3be1c; }
.konumum-app .community-tab.active .community-tab-icon { color:#125658; background:#ffffff33; border-color:#1e76692b; box-shadow:none; }
.konumum-app #trending-toggle.active .community-tab-icon { color:#125658; }
.konumum-app .community-tab.active .community-tab-subtitle { color:#22565b; }
.konumum-app .community-tab::after { content:''; position:absolute; bottom:5px; left:calc(50% - 10px); width:20px; height:3px; border-radius:5px; background:#114b51; opacity:0; transform:scaleX(.3); }
.konumum-app .community-tab.active::after { opacity:.6; transform:scaleX(1); }
.konumum-app .community-tab:focus-visible { outline:2px solid #b6ffeb; outline-offset:-3px; }
.konumum-app .community-content:not(.is-hidden) { margin-top:12px; padding:12px; border:1px solid #34536c; border-radius:18px; background:#0c2337; }
@media (max-width:350px) {
  .konumum-app .community-tabs { gap:3px; padding:4px; border-radius:19px; }
  .konumum-app .community-tab { padding-inline:3px; min-height:101px; border-radius:14px; }
  .konumum-app .community-tab-title { font-size:.78rem; }
  .konumum-app .community-tab-subtitle { font-size:.65rem; }
}
@media (hover:hover) and (pointer:fine) {
  .konumum-app .community-tab:hover:not(.active) { background:#1a3b50; border-color:#34596e; }
}
@media (prefers-reduced-motion:no-preference) {
  .konumum-app .community-tab { transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease,scale .15s ease; }
  .konumum-app .community-tab-icon { transition:transform .26s cubic-bezier(.2,.8,.2,1),background-color .2s ease,color .2s ease; }
  .konumum-app .community-tab.active .community-tab-icon { transform:translateY(-2px) scale(1.07); }
  .konumum-app .community-tab:active { scale:.97; }
  .konumum-app .community-tab::after { transition:opacity .2s ease,transform .26s ease; }
  .konumum-app .community-content:not(.is-hidden) { animation:konumum-reveal .24s ease-out; }
}

/* Keep selection foregrounds and surface in one explicit, coherent state. */
.konumum-app .community-tabs .community-tab.active,
.konumum-app .community-tabs .community-tab[aria-selected="true"] {
  opacity:1; color:#082f39; background:#8cead7; border-color:#c0ffed;
  box-shadow:inset 0 1px 0 #e4fff8,0 5px 18px #50cbb51f;
}
.konumum-app .community-tabs .community-tab[aria-selected="true"] .community-tab-title { color:#082f39; opacity:1; }
.konumum-app .community-tabs .community-tab[aria-selected="true"] .community-tab-subtitle { color:#174b50; opacity:1; }
.konumum-app .community-tabs .community-tab[aria-selected="true"] .community-tab-icon {
  color:#0b4b4d; background:#c5f8e9; border-color:#4b9a8e; opacity:1;
}
.konumum-app .community-tabs .community-tab[aria-selected="true"] .community-tab-icon svg { opacity:1; stroke:currentColor; }
.konumum-app .topbar .notice-button { display:inline-grid; place-items:center; padding:0 9px; color:#93edda; background:#17384d; border-color:#3e6377; }
.konumum-app .topbar .notice-button .notification-icon { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .topbar .notice-button:hover { color:#c1fff1; background:#245050; border-color:#72c4b5; }
.konumum-app .topbar .notice-button .notice-count { min-width:18px; height:18px; padding:0 4px; color:#062f37; background:#8cead7; border:2px solid #091b31; font-size:.63rem; font-weight:850; }
.konumum-app .topbar .notice-button:has(.notice-count:not(.is-hidden)) { border-color:#79cbb7; }
/* Location actions and expandable panels share a readable, tactile surface. */
.konumum-app .location-line { display:grid; grid-template-columns:10px minmax(0,1fr); align-items:center; gap:12px; margin:15px 0; padding:16px; border:1px solid #36576d; border-radius:21px; background:linear-gradient(135deg,#14374d,#0b2238); box-shadow:inset 0 1px 0 #a8e9df08; }
.konumum-app .location-line .pulse-dot { width:8px; height:8px; align-self:start; margin-top:6px; }
.konumum-app .location-summary { display:grid; min-width:0; gap:6px; }
.konumum-app .location-summary .location-eyebrow { color:#8be3cf; font-size:.59rem; font-weight:800; line-height:1.3; letter-spacing:.12em; }
.konumum-app .location-summary #location-label { color:#e5f2fc; font-size:.88rem; font-weight:650; line-height:1.55; overflow-wrap:anywhere; }
.konumum-app .location-summary .location-hidden-message { color:#c5d9e8; font-size:.83rem; }
.konumum-app .location-line .location-actions { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; width:100%; margin:3px 0 0; padding-top:13px; border-top:1px solid #345469; }
.konumum-app .location-line :is(#share-location,#change-location,#add-place-button) { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:7px; min-width:0; min-height:67px; margin:0; padding:10px 4px; border:1px solid #477084; border-radius:14px; color:#d8f1f4; background:#1d4156; font-size:.79rem; font-weight:800; line-height:1.2; white-space:normal; text-align:center; box-shadow:inset 0 1px 0 #ffffff09; cursor:pointer; }
.konumum-app .location-line :is(#share-location,#change-location,#add-place-button) svg { flex:none; width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .location-line #share-location { color:#082f39; background:#8cead7; border-color:#b8ffec; box-shadow:inset 0 1px 0 #e5fff7,0 4px 16px #51cdb71a; }
.konumum-app .location-line #share-location:is(:hover,:focus-visible) { color:#082f39; background:#b0f6e3; border-color:#defff6; }
.konumum-app .location-line :is(#change-location,#add-place-button):is(:hover,:focus-visible) { color:#e3fff5; background:#2a595e; border-color:#80d5c2; }
.konumum-app .location-line :is(#share-location,#change-location,#add-place-button):focus-visible { outline:2px solid #b0f6e3; outline-offset:3px; }
.konumum-app :is(#nearby-members-panel,#conditions-panel) { margin:13px 0; padding:0; border:1px solid #36576e; border-radius:21px; background:linear-gradient(135deg,#112f46,#0b2338); box-shadow:inset 0 1px 0 #a8e9df08; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)>summary { display:flex; align-items:center; gap:11px; min-height:78px; padding:15px 14px; margin:0; color:#e4f2fc; border-radius:20px; list-style:none; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)>summary::-webkit-details-marker { display:none; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)>summary::marker { content:''; }
.konumum-app .section-disclosure-icon { flex:none; display:grid; place-items:center; width:41px; height:41px; color:#95ecda; background:#204654; border:1px solid #467977; border-radius:14px; box-shadow:inset 0 1px 0 #ffffff07; }
.konumum-app .section-disclosure-icon svg { width:23px; height:23px; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .section-disclosure-copy { display:grid; flex:1; min-width:0; gap:5px; }
.konumum-app .section-disclosure-copy strong { color:#e4f2fc; font-size:.88rem; font-weight:750; line-height:1.3; letter-spacing:-.015em; overflow-wrap:anywhere; }
.konumum-app .section-disclosure-copy small { margin:0; color:#adc7d9; font-size:.7rem; font-weight:500; line-height:1.4; }
.konumum-app #nearby-members-count { flex:none; padding:4px 7px; min-width:25px; border:1px solid #3b6c6b; border-radius:9px; color:#a9efdc; background:#1c464a; text-align:center; font-size:.7rem; font-variant-numeric:tabular-nums; }
.konumum-app #nearby-members-count:empty { display:none; }
.konumum-app .section-disclosure-chevron { flex:none; width:8px; height:8px; margin:0 3px 4px 0; border-right:2px solid #9cbfce; border-bottom:2px solid #9cbfce; transform:rotate(45deg); }
.konumum-app :is(#nearby-members-panel,#conditions-panel)[open] { background:#102e43; border-color:#72b4a8; box-shadow:0 5px 20px #020c191f,inset 0 1px 0 #a8e9df15; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)[open]>summary { background:#1a4051; border-bottom:1px solid #3b6674; border-radius:20px 20px 0 0; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)[open] .section-disclosure-icon { color:#a9ffeb; border-color:#6caa9b; background:#245a60; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)[open] .section-disclosure-chevron { transform:translateY(4px) rotate(225deg); border-color:#9aefdb; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)>summary:focus-visible { outline:2px solid #9aefdb; outline-offset:3px; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)>:not(summary) { margin-left:14px; margin-right:14px; }
.konumum-app :is(#nearby-members-panel,#conditions-panel)>:last-child:not(summary) { margin-bottom:15px; }
.konumum-app :is(#nearby-members-refresh,#nearby-chat-inbox) { min-height:42px; margin-bottom:13px; }
@media (max-width:350px) {
  .konumum-app .location-line { padding:13px; }
  .konumum-app .location-line .location-actions { gap:6px; }
  .konumum-app :is(#nearby-members-panel,#conditions-panel)>summary { gap:8px; padding-inline:11px; }
  .konumum-app .section-disclosure-icon { width:36px; height:36px; border-radius:12px; }
  .konumum-app .section-disclosure-copy strong { font-size:.82rem; }
}
@media (prefers-reduced-motion:no-preference) {
  .konumum-app .section-disclosure-chevron { transition:transform .24s ease; }
  .konumum-app .section-disclosure-icon { transition:background-color .2s ease,border-color .2s ease; }
  .konumum-app .location-line :is(#share-location,#change-location,#add-place-button) { transition:background-color .18s ease,border-color .18s ease,scale .15s ease; }
  .konumum-app .location-line :is(#share-location,#change-location,#add-place-button):active { scale:.96; }
}
/* A compact guide destination, with the same visual language as discovery. */
.konumum-app .site-info-link { padding:36px 20px max(24px,calc(env(safe-area-inset-bottom) + 18px)); text-align:left; background:radial-gradient(ellipse at 50% 0%,#1b51623d,transparent 65%),#081a2d; border-top:1px solid #31516a; }
.konumum-app .footer-shell { max-width:1080px; margin-inline:auto; min-width:0; }
.konumum-app .footer-intro { display:grid; grid-template-columns:54px minmax(0,1fr); align-items:center; gap:12px 16px; margin-bottom:24px; }
.konumum-app .footer-emblem { width:54px; height:54px; display:grid; place-items:center; color:#a3f6df; background:linear-gradient(145deg,#285a62,#153d51); border:1px solid #528e88; border-radius:19px; box-shadow:inset 0 1px 0 #c1fff422,0 5px 20px #030e1b33; }
.konumum-app .footer-emblem svg { width:40px; height:40px; stroke:currentColor; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .footer-eyebrow { margin:0 0 5px; color:#93e6d6; font-size:.61rem; font-weight:800; letter-spacing:.16em; }
.konumum-app .footer-intro h2 { margin:0; color:#ecf7ff; font-size:clamp(1.25rem,3.7vw,1.7rem); line-height:1.25; font-weight:800; letter-spacing:-.04em; }
.konumum-app .site-info-link .site-intro { grid-column:1/-1; max-width:600px; margin:0; font-size:.79rem; color:#b0c8d9; line-height:1.7; }
.konumum-app .site-guides { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; line-height:1.4; }
.konumum-app .site-info-link .footer-guide-card { display:flex; align-items:center; gap:12px; min-width:0; min-height:98px; padding:16px 13px; border:1px solid #365a70; border-radius:19px; color:#edf7ff; background:linear-gradient(145deg,#17394f,#10293e); text-decoration:none; box-shadow:inset 0 1px 0 #ffffff06,0 6px 18px #020b1820; -webkit-tap-highlight-color:transparent; }
.konumum-app .footer-link-icon { flex:none; display:grid; place-items:center; width:40px; height:40px; border:1px solid #467c7d; border-radius:13px; background:#204e59; color:#9af0da; }
.konumum-app .footer-link-icon svg { width:23px; height:23px; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .footer-link-copy { display:grid; min-width:0; flex:1; gap:6px; }
.konumum-app .footer-link-copy strong { font-size:.87rem; font-weight:750; line-height:1.35; color:#edf7ff; letter-spacing:-.015em; }
.konumum-app .footer-link-copy small { font-size:.7rem; line-height:1.5; color:#b4ccdc; }
.konumum-app .footer-link-arrow { flex:none; align-self:flex-start; color:#89daca; font-size:1rem; line-height:1; }
.konumum-app .site-info-link .footer-guide-card:is(:hover,:focus-visible) { color:#fff; background:#1d4659; border-color:#83d7c5; box-shadow:0 8px 24px #020c1929,inset 0 1px 0 #a3ffe61a; }
.konumum-app .site-info-link .footer-guide-card:active { background:#265767; border-color:#aeffe8; }
.konumum-app .site-info-link .site-guide { max-width:none; margin:16px 0 0; padding:0; border:1px solid #365a70; border-radius:20px; background:#102b40; }
.konumum-app .site-guide>summary { display:flex; align-items:center; gap:13px; min-height:88px; padding:16px 19px; list-style:none; border-radius:19px; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.konumum-app .site-guide>summary::-webkit-details-marker { display:none; }
.konumum-app .site-guide>summary::marker { content:''; }
.konumum-app .site-guide>summary:is(:hover,:focus-visible) { background:#1b4052; }
.konumum-app .footer-guide-chevron { flex:none; width:8px; height:8px; margin:0 3px 4px 4px; border-right:2px solid #9edfcc; border-bottom:2px solid #9edfcc; transform:rotate(45deg); }
.konumum-app .site-guide[open] { border-color:#70b7aa; background:#112f43; }
.konumum-app .site-guide[open]>summary { background:#1b4052; border-radius:19px 19px 0 0; border-bottom:1px solid #3e6776; }
.konumum-app .site-guide[open] .footer-guide-chevron { transform:translateY(4px) rotate(225deg); }
.konumum-app .footer-guide-content { padding:20px; }
.konumum-app .footer-steps { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0; padding:0; }
.konumum-app .footer-steps li { display:flex; align-items:flex-start; gap:11px; min-width:0; }
.konumum-app .footer-step-number { display:grid; place-items:center; flex:none; width:29px; height:29px; border:1px solid #4b817c; border-radius:10px; background:#204f54; color:#a5f1db; font-size:.65rem; font-weight:800; font-variant-numeric:tabular-nums; }
.konumum-app .footer-steps h3 { margin:3px 0 7px; color:#ecf7ff; font-size:.85rem; line-height:1.3; }
.konumum-app .footer-steps p { margin:0; color:#b9d1df; font-size:.76rem; line-height:1.7; }
.konumum-app .footer-categories-label { margin:22px 0 12px; padding-top:17px; border-top:1px solid #31556c; color:#cee5ee; font-size:.76rem; font-weight:750; }
.konumum-app .site-guide nav { gap:8px; }
.konumum-app .site-guide nav a { display:inline-flex; align-items:center; min-height:40px; padding:8px 12px; border:1px solid #3c6578; border-radius:11px; background:#1b4056; color:#d3ecee; text-decoration:none; font-size:.74rem; }
.konumum-app .site-guide nav a:is(:hover,:focus-visible) { color:#ecfff8; background:#2a5d62; border-color:#84cbb9; }
.konumum-app .footer-signature { display:flex; align-items:center; flex-wrap:wrap; gap:9px 13px; margin-top:23px; padding-top:18px; border-top:1px solid #28485e; color:#a9c3d5; font-size:.68rem; }
.konumum-app .footer-signature>span:first-child { color:#d1e9f1; font-weight:850; letter-spacing:.05em; }
.konumum-app .footer-signature svg { width:60px; height:16px; margin-left:auto; stroke:#72cbb8; stroke-width:1.4; }
.konumum-app .site-info-link :is(a,summary):focus-visible { outline:2px solid #9cf5dc; outline-offset:4px; }
@media (max-width:760px) {
  .konumum-app .site-info-link { padding:26px 18px max(24px,calc(env(safe-area-inset-bottom) + 18px)); }
  .konumum-app .site-guides { grid-template-columns:minmax(0,1fr); gap:10px; }
  .konumum-app .site-info-link .footer-guide-card { min-height:82px; padding:15px; gap:13px; }
  .konumum-app .footer-link-arrow { align-self:center; }
  .konumum-app .footer-steps { grid-template-columns:minmax(0,1fr); gap:19px; }
  .konumum-app .footer-guide-content { padding:19px 16px; }
  .konumum-app .site-guide>summary { min-height:88px; padding:15px; gap:11px; }
}
/* Motion adds feedback without hiding text, moving map layers or delaying actions. */
@keyframes km-surface-arrive { from { translate:0 8px; } to { translate:0 0; } }
@keyframes km-selection-settle { from { scale:.975; } to { scale:1; } }
@keyframes km-compass-trace { from { stroke-dashoffset:110; } to { stroke-dashoffset:0; } }
@media (prefers-reduced-motion:no-preference) {
  :is(.konumum-app,.konumum-pages) :where(button,a,summary,input,textarea,select) { transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,scale .16s ease; }
  .konumum-app :where(button:not(:disabled)):not(.leaflet-container *) { transition-property:background-color,color,border-color,box-shadow,scale; }
  .konumum-app :where(button:not(:disabled)):not(.leaflet-container *):active { scale:.97; }
  .konumum-app :is(.footer-guide-card,.site-guide nav a) { transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,translate .22s ease,scale .16s ease; }
  .konumum-app .footer-guide-card:active { scale:.985; }
  .konumum-app :is(.footer-link-icon,.footer-link-arrow) { transition:translate .24s ease,color .2s ease,background-color .2s ease; }
  .konumum-app .footer-guide-chevron { transition:transform .24s ease; }
  .konumum-app .footer-emblem svg { stroke-dasharray:110; animation:km-compass-trace 1.1s ease-out; }
  .konumum-app .site-guides>.footer-guide-card { animation:km-surface-arrive .4s ease-out backwards; }
  .konumum-app .site-guides>.footer-guide-card:nth-child(2) { animation-delay:.05s; }
  .konumum-app .site-guides>.footer-guide-card:nth-child(3) { animation-delay:.1s; }
  .konumum-app details[open]>:not(summary) { animation:km-surface-arrive .24s ease-out; }
  .konumum-app :is(.community-tab.active,.category-chip.active,.account-tabs button.active,.travel-mode-options button.selected) { animation:km-selection-settle .22s ease-out; }
  .konumum-app :is(.route-summary,.navigation-card,.incoming-panel,.search-expansion):not(.is-hidden) { animation:km-surface-arrive .28s ease-out; }
  .konumum-app :is(.saved-location-card,.notice-item,.profile-comment-card) { transition:border-color .2s ease,box-shadow .2s ease; }
  .konumum-pages main>div>header { animation:km-surface-arrive .35s ease-out; }
  @media (hover:hover) and (pointer:fine) {
    .konumum-app .footer-guide-card:hover { translate:0 -3px; }
    .konumum-app .footer-guide-card:hover .footer-link-arrow { translate:2px -2px; }
    .konumum-app .footer-guide-card:hover .footer-link-icon { background:#2a6166; translate:0 -1px; }
    .konumum-app .site-guide nav a:hover { translate:0 -2px; }
    .konumum-app :is(.saved-location-card,.notice-item,.profile-comment-card):hover { border-color:#6fada5; box-shadow:0 8px 24px #020c1933; }
  }
}
@media (prefers-reduced-motion:reduce) {
  .konumum-pages *, .konumum-pages *::before, .konumum-pages *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Navigation: one small instruction above, a compact trip dock below. */
.konumum-app .navigation-card { top:calc(env(safe-area-inset-top) + 10px); width:min(440px,calc(100% - 20px)); grid-template-columns:44px minmax(0,1fr); gap:12px; padding:12px 14px; border:1px solid #639b96; border-radius:20px; background:linear-gradient(125deg,#173d52,#0c253b); box-shadow:0 8px 24px #030c1938,inset 0 1px 0 #c3fff10d; }
.konumum-app .navigation-card .navigation-arrow { width:44px; height:48px; border:1px solid #b8ffec; border-radius:14px; color:#083b42; background:linear-gradient(140deg,#a2f5dd,#6edbc9); box-shadow:0 4px 12px #020f1b26; }
.konumum-app .navigation-arrow svg { width:29px; height:29px; stroke:currentColor; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .navigation-card .navigation-turn-copy { min-width:0; }
.konumum-app .navigation-card .navigation-kicker { display:block; margin:0 0 5px; color:#91dfd0; font-size:.55rem; font-weight:850; line-height:1.2; letter-spacing:.12em; opacity:1; }
.konumum-app .navigation-card #navigation-instruction { margin:0; color:#f0f8ff; font-size:.91rem; font-weight:750; line-height:1.4; overflow-wrap:anywhere; opacity:1; }
.konumum-app .navigation-header { top:auto; bottom:calc(env(safe-area-inset-bottom) + 12px); left:50%; right:auto; width:min(440px,calc(100% - 24px)); min-height:0; display:block; padding:13px; transform:translateX(-50%); border:1px solid #527b8a; border-radius:22px; background:linear-gradient(145deg,#17384f,#0b2237); box-shadow:0 10px 30px #020d1c40,inset 0 1px 0 #d2fff10c; backdrop-filter:none; }
.konumum-app .navigation-trip { min-width:0; margin-bottom:12px; }
.konumum-app .navigation-destination-line { display:flex; align-items:center; gap:7px; margin:0 0 7px; min-width:0; }
.konumum-app .navigation-destination-line>svg { flex:none; width:16px; height:16px; color:#91dfcd; stroke:currentColor; stroke-width:1.8; }
.konumum-app #navigation-destination { flex:1; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:#c7dce9; font-size:.77rem; font-weight:650; line-height:1.4; }
.konumum-app #navigation-metrics { display:block; margin:0; color:#effbf7; font-size:1.08rem; font-weight:850; letter-spacing:-.025em; line-height:1.3; font-variant-numeric:tabular-nums; }
.konumum-app .navigation-header .navigation-live { position:static; flex:none; display:flex; gap:6px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; transform:none; color:#adebd6; font-size:.61rem; font-weight:700; }
.konumum-app .navigation-header .navigation-live>span:first-child { width:6px; height:6px; background:#83eccb; box-shadow:0 0 0 3px #78dfbe15; }
.konumum-app .navigation-header .navigation-live-label { width:auto; height:auto; border:0; border-radius:0; background:transparent; box-shadow:none; }
.konumum-app .navigation-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.konumum-app .navigation-header :is(button,.navigation-details>summary) { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; min-height:44px; margin:0; padding:8px 6px; border:1px solid #426c80; border-radius:12px; color:#d7edf2; background:#204559; font-size:.71rem; line-height:1.25; font-weight:750; cursor:pointer; white-space:normal; -webkit-tap-highlight-color:transparent; }
.konumum-app .navigation-header :is(button,.navigation-details>summary) svg { flex:none; width:18px; height:18px; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .navigation-header #voice-toggle { grid-column:auto; justify-self:stretch; }
.konumum-app .navigation-header #voice-toggle[aria-pressed=true] { color:#b1f9e3; background:#245d5c; border-color:#5e9f91; }
.konumum-app .voice-muted { display:none; }
.konumum-app #voice-toggle[aria-pressed=false] .voice-muted { display:block; }
.konumum-app #voice-toggle[aria-pressed=false] .voice-waves { display:none; }
.konumum-app .navigation-header #finish-navigation { color:#ffd6dc; background:#493142; border-color:#77505f; }
.konumum-app .navigation-header #finish-navigation svg { fill:currentColor; stroke:none; }
.konumum-app .navigation-header :is(button:not(:disabled),.navigation-details>summary):is(:hover,:focus-visible) { color:#f0fff9; background:#2b6066; border-color:#95e5cd; }
.konumum-app .navigation-header #finish-navigation:is(:hover,:focus-visible) { color:#ffeaf0; background:#653c50; border-color:#de92a4; }
.konumum-app .navigation-header :is(button,summary):focus-visible { outline:2px solid #b4ffdf; outline-offset:3px; }
.konumum-app .navigation-details { min-width:0; }
.konumum-app .navigation-details>summary { list-style:none; }
.konumum-app .navigation-details>summary::-webkit-details-marker { display:none; }
.konumum-app .navigation-details>summary::marker { content:''; }
.konumum-app .navigation-header .navigation-details[open]>summary { color:#082f39; background:#96ebd6; border-color:#c5fff0; }
.konumum-app .navigation-details-content { position:absolute; bottom:calc(100% + 10px); left:0; right:0; max-height:min(240px,40dvh); overflow-y:auto; overscroll-behavior:contain; padding:17px; border:1px solid #568a8b; border-radius:19px; color:#dceef5; background:linear-gradient(145deg,#1a4055,#102c41); box-shadow:0 8px 24px #020b193b; }
.konumum-app .navigation-details-title { margin:0 0 12px; color:#a4f0dc; font-size:.73rem; font-weight:800; }
.konumum-app #navigation-mode-label { display:block; margin-bottom:10px; font-size:.81rem; font-weight:750; }
.konumum-app #navigation-conditions { display:block; margin-bottom:12px; color:#c4ddeb; font-size:.77rem; line-height:1.6; }
.konumum-app #navigation-route-source { width:fit-content; min-height:40px; display:flex; align-items:center; color:#a9f2de; opacity:1; font-size:.72rem; line-height:1.4; text-underline-offset:3px; }
body.konumum-app.navigation-mode .workspace .map-actions { right:14px; bottom:calc(env(safe-area-inset-bottom) + 165px); }
body.konumum-app.navigation-mode #clear-route { display:none; }
body.konumum-app.navigation-mode .leaflet-top { left:auto; right:12px; top:calc(env(safe-area-inset-top) + 10px); }
body.konumum-app.navigation-mode .toast { bottom:calc(env(safe-area-inset-bottom) + 175px); }
@media (max-width:560px) {
  .konumum-app .navigation-card { left:10px; width:calc(100% - 78px); transform:none; }
}
@media (max-width:350px) {
  .konumum-app .navigation-card { gap:9px; padding:11px; }
  .konumum-app .navigation-card #navigation-instruction { font-size:.85rem; }
  .konumum-app .navigation-controls { gap:6px; }
  .konumum-app .navigation-header :is(button,.navigation-details>summary) { gap:4px; font-size:.67rem; }
}
@media (max-height:500px) and (min-width:600px) {
  .konumum-app .navigation-card { left:12px; width:330px; transform:none; }
  .konumum-app .navigation-header { left:12px; width:330px; transform:none; bottom:calc(env(safe-area-inset-bottom) + 10px); }
  .konumum-app .navigation-trip { margin-bottom:8px; }
  .konumum-app .navigation-details-content { left:calc(100% + 10px); right:auto; bottom:0; width:min(270px,calc(100vw - 368px)); max-height:70dvh; }
  body.konumum-app.navigation-mode .workspace .map-actions { bottom:calc(env(safe-area-inset-bottom) + 25px); }
  body.konumum-app.navigation-mode .leaflet-top { left:auto; right:12px; top:calc(env(safe-area-inset-top) + 10px); }
}
/* Search guidance is a readable discovery card in every search scope. */
.konumum-app #search-expansion { margin:12px 0 2px; padding:16px; border:1px solid #477580; border-radius:20px; color:#d1e6ef; background:radial-gradient(ellipse at 100% 0%,#34676640,transparent 70%),linear-gradient(145deg,#173e53,#0e2a40); box-shadow:inset 0 1px 0 #b9fff016,0 7px 20px #020d1d20; }
.konumum-app .search-expansion-heading { display:flex; align-items:center; gap:11px; margin-bottom:13px; min-width:0; }
.konumum-app .search-expansion-icon { flex:none; display:grid; place-items:center; width:40px; height:40px; border:1px solid #558c88; border-radius:13px; background:#25575e; color:#a3f2dc; box-shadow:inset 0 1px 0 #d0fff210; }
.konumum-app .search-expansion-icon svg { width:25px; height:25px; stroke:currentColor; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .search-expansion-heading>div { flex:1; min-width:0; }
.konumum-app .search-expansion-eyebrow { display:block; margin-bottom:4px; color:#95e8d4; font-size:.53rem; font-weight:850; letter-spacing:.12em; line-height:1.3; }
.konumum-app #search-expansion-title { margin:0; color:#eff9ff; font-size:.99rem; font-weight:800; line-height:1.3; letter-spacing:-.025em; }
.konumum-app .search-expansion-trail { flex:none; width:38px; height:24px; stroke:#78cbb9; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app #search-expansion-copy { margin:0 0 15px; color:#c5dce9; font-size:.79rem; line-height:1.65; font-weight:500; overflow-wrap:anywhere; opacity:1; }
.konumum-app .search-expansion-actions { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:8px; }
.konumum-app #search-expansion :is(#expand-search,#refine-search) { display:flex; align-items:center; justify-content:center; gap:7px; min-width:0; min-height:46px; padding:10px 9px; border:1px solid #55848b; border-radius:12px; color:#d9f1f0; background:#234c60; font:inherit; font-size:.74rem; line-height:1.35; font-weight:750; white-space:normal; text-align:center; cursor:pointer; box-shadow:inset 0 1px 0 #ffffff08; -webkit-tap-highlight-color:transparent; }
.konumum-app #search-expansion #expand-search { color:#08343d; background:linear-gradient(125deg,#a1efdb,#76dece); border-color:#b2f8e6; font-weight:800; box-shadow:0 4px 14px #020c191a,inset 0 1px 0 #defff440; }
.konumum-app #search-expansion #refine-search svg { flex:none; width:17px; height:17px; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app #search-expansion #expand-search:is(:hover,:focus-visible) { color:#062d37; background:#b6f9e6; border-color:#defff3; }
.konumum-app #search-expansion #refine-search:is(:hover,:focus-visible) { color:#effff8; background:#30676b; border-color:#93d9c8; }
.konumum-app #search-expansion button:focus-visible { outline:2px solid #b2ffe5; outline-offset:3px; }
.konumum-app #expand-search.is-hidden+#refine-search { grid-column:1/-1; }
@media (max-width:350px) {
  .konumum-app #search-expansion { padding:13px; }
  .konumum-app .search-expansion-actions { grid-template-columns:minmax(0,1fr); }
  .konumum-app .search-expansion-trail { width:28px; }
}
@media (prefers-reduced-motion:no-preference) {
  .konumum-app #search-expansion :is(#expand-search,#refine-search) { transition:background-color .2s ease,color .2s ease,border-color .2s ease,scale .15s ease,box-shadow .2s ease; }
  .konumum-app #search-expansion button:active { scale:.97; }
}
/* Local action feedback stays visible inside native dialogs as well as the map list. */
.konumum-app button[data-action-state] { flex-wrap:wrap; min-height:44px; padding-block:9px; }
.konumum-app .place-action-feedback { display:flex; flex-basis:100%; justify-content:center; align-items:center; gap:6px; font-size:.64rem; font-weight:750; line-height:1.4; }
.konumum-app :is(#result-list,#account-dialog,#member-profile-dialog,#trending-content,#member-places-content) button[data-action-state=busy] { opacity:1; color:#d8eeed; background:#244e60; border-color:#69a69b; cursor:progress; }
.konumum-app :is(#result-list,#account-dialog,#member-profile-dialog,#trending-content,#member-places-content) button[data-action-state=success] { color:#07363e; background:#9bedda; border-color:#c2ffe9; box-shadow:0 0 0 3px #83e8cb18; }
.konumum-app :is(#result-list,#account-dialog,#member-profile-dialog,#trending-content,#member-places-content) button[data-action-state=error] { color:#ffe0e7; background:#60394b; border-color:#bc7d91; }
.konumum-app button[data-action-state=busy] .place-action-feedback::before { content:''; width:10px; height:10px; border:2px solid #89c9bc55; border-top-color:#b9ffea; border-radius:50%; }
.konumum-app #incoming-panel { background:linear-gradient(145deg,#12394d,#0d263b); border-color:#548c8c; padding:15px; border-radius:20px; }
.konumum-app #incoming-panel>summary { color:#a5f1db; font-size:.85rem; line-height:1.4; }
.konumum-app #incoming-panel>p { color:#b6cfdf; font-size:.75rem; line-height:1.65; }
.konumum-app #incoming-panel .incoming-owner-hint { color:#c8eade; }
.konumum-app #incoming-list { max-height:min(340px,50dvh); }
.konumum-app .incoming-item { margin:9px 0; padding:13px; border:1px solid #3d6379; border-radius:16px; background:#13364b; }
.konumum-app .incoming-item.selected { border-color:#76c1b0; background:#1a4655; }
.konumum-app .incoming-item-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.konumum-app .incoming-item strong { min-width:0; overflow-wrap:anywhere; color:#e7f5fc; font-size:.88rem; }
.konumum-app .incoming-item p,.konumum-app .incoming-waiting { color:#c1d7e4; font-size:.74rem; line-height:1.6; }
.konumum-app .incoming-freshness { flex:none; padding:3px 7px; border:1px solid #5b9588; border-radius:7px; color:#b4f9e1; background:#24594f; font-size:.63rem; font-weight:750; }
.konumum-app #incoming-panel button { min-height:44px; margin-top:5px; padding:9px 12px; color:#d5f3ee; background:#28565f; border-color:#5e938d; }
.konumum-app #incoming-panel button[data-incoming-id] { color:#08363e; background:#9aebd8; border-color:#b4f9e7; }
.konumum-app .incoming-map-status { position:absolute; z-index:610; left:12px; bottom:18px; display:flex; align-items:center; gap:10px; max-width:calc(100% - 86px); padding:12px; border:1px solid #6da59c; border-radius:18px; background:linear-gradient(145deg,#1b4558,#0c2a3f); color:#e3f7f5; box-shadow:0 7px 25px #020e1c38; }
.konumum-app .incoming-map-dot { flex:none; width:9px; height:9px; border-radius:50%; background:#8debc9; box-shadow:0 0 0 4px #84d9be15; }
.konumum-app .incoming-map-status>div { min-width:0; display:grid; gap:4px; }
.konumum-app #incoming-map-person { font-size:.8rem; line-height:1.3; overflow-wrap:anywhere; }
.konumum-app #incoming-map-progress { color:#bad8df; font-size:.66rem; line-height:1.4; }
.konumum-app #incoming-map-pause { min-height:44px; flex:none; padding:7px 10px; border:1px solid #5e8b85; border-radius:11px; color:#b9f9e3; background:#25515a; font-size:.67rem; font-weight:750; }
.konumum-app #incoming-map-pause:is(:hover,:focus-visible) { color:#082f39; background:#a5f0db; outline-color:#aeffe7; }
.konumum-app .map-wrap { scroll-margin-top:76px; }
body.konumum-app.navigation-mode .incoming-map-status { bottom:calc(env(safe-area-inset-bottom) + 160px); }
@media (max-width:480px) { .konumum-app .incoming-map-status { flex-wrap:wrap; gap:8px; } .konumum-app #incoming-map-pause { min-height:36px; margin-left:17px; } }
@keyframes km-action-spin { to { rotate:360deg; } }
@keyframes km-action-confirm { 50% { scale:1.035; } }
@media (prefers-reduced-motion:no-preference) {
  .konumum-app button[data-action-state=busy] .place-action-feedback::before { animation:km-action-spin .8s linear infinite; }
  .konumum-app button[data-action-state=success] { animation:km-action-confirm .28s ease-out; }
}

/* Everyday navigation: calm surfaces, clear hierarchy, deliberate motion. */
.konumum-app { --km-panel:#10283d; --km-stroke:#294357; --km-gradient:#10283d; }
body.konumum-app { -webkit-font-smoothing:antialiased; }
.konumum-app .topbar { background:#0b1e31; border-bottom:1px solid #294052; box-shadow:none; }
.konumum-app .brand { letter-spacing:-.035em; }
.konumum-app .brand-mark { border-radius:11px; background:#91e3cd; box-shadow:none; border:0; }
.konumum-app .control-panel { background:#0c2033; }
.konumum-app .search-surface { background:#10283d; border-color:#294357; box-shadow:none; padding:26px 22px 18px; }
.konumum-app .search-intro { margin-bottom:22px; }
.konumum-app .search-intro h2 { font-size:1.85rem; font-weight:750; letter-spacing:-.045em; }
.konumum-app .search-intro .eyebrow { font-size:.68rem; font-weight:600; letter-spacing:.08em; color:#a1b9c9; }
.konumum-app .search-compass { width:42px; height:42px; border:0; border-radius:50%; background:#1e3d4b; box-shadow:none; }
.konumum-app .search-compass svg { width:28px; }
.konumum-app .search-form { min-height:56px; border:1px solid #648294; background:#091c2d; border-radius:12px; box-shadow:none; }
.konumum-app .search-form:focus-within { background:#091c2d; box-shadow:0 0 0 3px #91e3cd20; border-color:#91e3cd; }
.konumum-app .category-scroll { gap:7px; padding-block:20px; }
.konumum-app .category-chip { flex-shrink:0; min-height:44px; border-radius:8px; background:transparent; border-color:#375263; box-shadow:none; gap:7px; font-size:.78rem; }
.konumum-app .category-chip span { width:20px; height:20px; }
.konumum-app .category-chip svg { width:20px; height:20px; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.konumum-app .category-chip.active { background:#a0e8d5; color:#0c3538; border-color:#a0e8d5; box-shadow:none; }
.konumum-app .community-panel { padding-top:18px; border-color:#2e475a; }
.konumum-app .community-discover-label { margin-bottom:12px; color:#a1b9c9; letter-spacing:.06em; }
.konumum-app .community-tabs { gap:0; padding:0; border:0; border-bottom:1px solid #3b5465; border-radius:0; background:transparent; box-shadow:none; }
.konumum-app .community-tab { min-height:66px; padding:10px 3px 14px; gap:6px; border:0; border-radius:0; background:transparent; }
.konumum-app .community-tab-icon { width:24px; height:24px; margin:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.konumum-app .community-tab-icon svg { width:22px; height:22px; }
.konumum-app .community-tab-title { font-size:.78rem; font-weight:650; }
.konumum-app .community-tab-subtitle { display:none; }
.konumum-app .community-tabs .community-tab:is(.active,[aria-selected=true]) { color:#a0e8d5; background:transparent; border:0; box-shadow:none; }
.konumum-app .community-tabs .community-tab[aria-selected=true] .community-tab-title { color:#c4f4e7; }
.konumum-app .community-tabs .community-tab[aria-selected=true] .community-tab-icon { color:#a0e8d5; background:transparent; border:0; transform:none; }
.konumum-app .community-tab::after { left:12px; right:12px; bottom:-1px; width:auto; height:3px; background:#a0e8d5; border-radius:3px 3px 0 0; }
.konumum-app .community-tab.active::after { opacity:1; }
.konumum-app .community-tab:hover:not(.active) { background:#19364a; border-color:transparent; }
.konumum-app .location-line { padding:16px 0; margin:14px 0; border:0; border-bottom:1px solid #30495b; border-radius:0; background:transparent; box-shadow:none; }
.konumum-app .location-actions button { border-radius:8px; background:#1b3b4c; border-color:#3d5a6a; box-shadow:none; }
.konumum-app :is(.conditions-panel,.nearby-members-panel,.my-coordinates,#incoming-panel) { background:#132e42; border:1px solid #314b5e; border-radius:12px; box-shadow:none; }
.konumum-app .section-disclosure-icon { background:transparent; border:0; border-radius:0; }
.konumum-app .results-panel { padding:24px 22px; background:#0c2033; }
.konumum-app .results-heading { border-color:#30495b; }
.konumum-app :is(.result-card,.trend-card,.member-directory-card,.saved-location-card,.profile-place-card,.profile-comment-card,.notice-item) { background:#132d41; border:1px solid #30495b; border-radius:12px; box-shadow:none; }
.konumum-app .result-card { padding:17px 15px; margin-bottom:10px; }
.konumum-app .result-icon { background:#214453; border:0; border-radius:10px; box-shadow:none; }
.konumum-app .result-name { font-size:.98rem; font-weight:700; letter-spacing:-.015em; }
.konumum-app .result-address { font-size:.79rem; line-height:1.6; }
.konumum-app .result-card.selected { border-color:#91e3cd; background:#173b48; box-shadow:inset 3px 0 #91e3cd; }
.konumum-app :is(.primary-button,.route-button,.copy-link-button,.search-form button[type=submit]) { background:#9ae6d2; color:#0b3237; border:1px solid #9ae6d2; border-radius:9px; box-shadow:none; }
.konumum-app :is(.primary-button,.route-button,.copy-link-button,.search-form button[type=submit]):hover:not(:disabled) { background:#b7f1e0; box-shadow:none; }
.konumum-app .permission-card { border-radius:18px; background:#102c40; border:1px solid #557989; box-shadow:0 16px 44px #020c1b44; }
.konumum-app .permission-card h1 { font-size:1.6rem; font-weight:750; letter-spacing:-.035em; text-wrap:balance; }
.konumum-app .permission-card p:not(.eyebrow) { color:#bbcfdd; line-height:1.65; }
.konumum-app .discovery-scene .permission-icon { background:#99e5d0; border:0; border-radius:18px; box-shadow:none; transform:translateX(-50%); }
.konumum-app .discovery-scene .permission-icon svg { fill:#103b42; }
.konumum-app .discovery-place { display:none; }
.konumum-app .discovery-route ellipse { stroke-opacity:.22; }
.konumum-app dialog { background:#112b40; border:1px solid #557184; border-radius:18px; box-shadow:0 24px 60px #020b1955; }
.konumum-app .site-info-link { background:#0b1e31; }
.konumum-app .site-info-link .footer-guide-card { background:transparent; border:0; border-top:1px solid #365164; border-radius:0; box-shadow:none; }
.konumum-app .footer-link-icon { background:#18394a; border:0; border-radius:10px; }
.konumum-app .site-info-link .footer-guide-card:is(:hover,:focus-visible) { background:#143144; box-shadow:none; }
.konumum-app :is(button,a,summary):focus-visible { outline:2px solid #b3f6e2; outline-offset:3px; }
.konumum-app [data-touch-feedback] { position:relative; overflow:hidden; isolation:isolate; }
.km-touch-wave { position:absolute; width:36px; height:36px; margin:-18px; pointer-events:none; background:currentColor; opacity:0; border-radius:50%; z-index:0; }
@keyframes km-content-in { from { opacity:.7; translate:0 5px; } to { opacity:1; translate:0 0; } }
@media (prefers-reduced-motion:no-preference) {
  .konumum-app :is(.result-card,.trend-card,.member-directory-card) { animation:km-content-in .28s ease-out; transition:background-color .18s,border-color .18s; }
  .konumum-app :is(.community-tab,.category-chip) { transition:color .2s,background-color .2s,border-color .2s; }
  .konumum-app dialog[open] { animation:km-content-in .22s ease-out; }
  .konumum-app .search-compass:hover svg { rotate:18deg; transition:rotate .3s ease; }
  .konumum-app .community-tab-icon { transition:translate .22s ease; }
  .konumum-app .community-tab:hover .community-tab-icon { translate:0 -2px; }
  .konumum-app .km-reveal { animation:km-content-in .4s ease-out; }
  @media (hover:hover) and (pointer:fine) { .konumum-app :is(.result-card,.trend-card,.member-directory-card):hover { background:#1a3b4f; border-color:#608a94; } }
}
@media (max-width:760px) {
  .konumum-app .search-surface { padding:20px 16px 16px; margin:10px; border-radius:16px; }
  .konumum-app .search-intro h2 { font-size:1.65rem; }
  .konumum-app .results-panel { padding:20px 18px; }
}
@media (prefers-reduced-motion:reduce) {
  .konumum-app *, .konumum-app *::before, .konumum-app *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

/* Location welcome · a short, choreographed route reveal, then a calm still. */
.konumum-app #permission-card .discovery-scene { pointer-events:none; }
.konumum-app #permission-card .discovery-route .discovery-trail { stroke:#7fe4cd; stroke-width:1.8; stroke-dasharray:100; stroke-dashoffset:0; animation:none; }
.konumum-app #permission-card .discovery-signal { stroke-linecap:round; stroke-dasharray:1 99; stroke-dashoffset:0; opacity:0; }
.konumum-app #permission-card .discovery-signal-glow { stroke:#86f8de; stroke-width:10; }
.konumum-app #permission-card .discovery-signal-core { stroke:#e1fff6; stroke-width:3; }
.konumum-app #permission-card .discovery-orbit { transform-box:fill-box; transform-origin:center; }
.konumum-app #permission-card .discovery-arrival { fill:#a2f3de; }
.konumum-app #permission-card .discovery-arrival-ring { fill:none; stroke:#94e8d1; stroke-width:1; opacity:.3; transform-box:fill-box; transform-origin:center; }
.konumum-app #permission-card .permission-icon { box-shadow:0 8px 24px #020f2329,inset 0 1px 0 #dbfff470; }
.konumum-app #permission-card .permission-icon svg { animation:none; }
@keyframes km-route-reveal { from { stroke-dashoffset:100; opacity:.25; } to { stroke-dashoffset:0; opacity:1; } }
@keyframes km-route-signal {
  0%,12% { stroke-dashoffset:100; opacity:0; }
  18% { opacity:1; }
  78% { stroke-dashoffset:0; opacity:1; }
  88%,100% { stroke-dashoffset:0; opacity:0; }
}
@keyframes km-route-glow {
  0%,12% { stroke-dashoffset:100; opacity:0; }
  18% { opacity:.14; }
  78% { stroke-dashoffset:0; opacity:.14; }
  88%,100% { stroke-dashoffset:0; opacity:0; }
}
@keyframes km-orbit-expand { 0% { scale:.82; opacity:.3; } 55% { opacity:.8; } 100% { scale:1; opacity:1; } }
@keyframes km-pin-arrive { from { translate:0 7px; scale:.92; opacity:.5; } to { translate:0 0; scale:1; opacity:1; } }
@keyframes km-arrival-echo { 0%,65% { scale:1; opacity:.25; } 82% { opacity:.6; } 100% { scale:2.8; opacity:0; } }
@keyframes km-pin-breathe { 0%,100% { translate:0 0; } 50% { translate:0 -3px; } }
@media (prefers-reduced-motion:no-preference) {
  .konumum-app #permission-card .discovery-route .discovery-trail { animation:km-route-reveal 1.2s cubic-bezier(.22,1,.36,1) both; }
  .konumum-app #permission-card .discovery-signal-core { animation:km-route-signal 2.4s ease-in-out 2; }
  .konumum-app #permission-card .discovery-signal-glow { animation:km-route-glow 2.4s ease-in-out 2; }
  .konumum-app #permission-card .discovery-orbit { animation:km-orbit-expand 1.1s ease-out both; }
  .konumum-app #permission-card .discovery-orbit-outer { animation-delay:.12s; }
  .konumum-app #permission-card .permission-icon { animation:km-pin-arrive .7s cubic-bezier(.22,1,.36,1) both,km-pin-breathe 2s .7s 2; }
  .konumum-app #permission-card .discovery-arrival-ring { animation:km-arrival-echo 2.4s ease-out 2; }
  @media (hover:hover) and (pointer:fine) {
    .konumum-app #permission-card #enable-location:hover svg { rotate:90deg; transition:rotate .4s cubic-bezier(.22,1,.36,1); }
  }
}
@media (prefers-reduced-motion:reduce) {
  .konumum-app #permission-card .discovery-signal { display:none; }
}
