/* Search module: aligned, cleaner and more futuristic without changing behavior. */
html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-hud-primary{
  position:relative;
  overflow:hidden;
  border-color:rgba(216,205,170,.16);
  background:
    linear-gradient(180deg,rgba(13,28,20,.94),rgba(7,18,13,.94)),
    radial-gradient(circle at 22% 0,rgba(201,174,94,.08),transparent 42%);
  box-shadow:0 12px 34px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(18px) saturate(1.08);
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-hud-primary::before{
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  left:12%;
  width:38%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(226,204,132,.64),transparent);
  opacity:.72;
  pointer-events:none;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search,
html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-repers-trigger{
  position:relative;
  z-index:1;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search{
  gap:.62rem;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search>svg{
  color:#75877d;
  transition:color .16s ease,filter .16s ease,transform .16s ease;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search:focus-within>svg{
  color:#ddc77e;
  filter:drop-shadow(0 0 7px rgba(207,177,92,.28));
  transform:scale(1.04);
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search input{
  letter-spacing:.012em;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search kbd{
  border-color:rgba(221,207,162,.1);
  background:rgba(255,255,255,.018);
  color:#627168;
  transition:color .16s ease,border-color .16s ease,opacity .16s ease;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search:focus-within kbd{
  border-color:rgba(207,177,92,.18);
  color:#a58f55;
}

/* Keep the result panel locked to the exact search/Repères axis. */
html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results{
  left:50%;
  top:calc(max(.82rem,env(safe-area-inset-top)) + 3.42rem);
  width:min(42rem,calc(100vw - 2rem));
  max-height:min(28rem,calc(100dvh - 5.2rem));
  transform:translateX(-50%);
  transform-origin:50% 0;
  padding:.34rem;
  border-color:rgba(216,205,170,.15);
  border-radius:.86rem;
  background:
    linear-gradient(180deg,rgba(11,25,18,.985),rgba(6,17,12,.98)),
    radial-gradient(circle at 14% -10%,rgba(201,174,94,.09),transparent 40%);
  box-shadow:0 18px 50px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(22px) saturate(1.08);
  animation:cartography-search-panel-refined-in .22s cubic-bezier(.2,.82,.22,1) both;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results::before{
  position:sticky;
  top:-.34rem;
  margin:-1px -.34rem 0;
  background:linear-gradient(90deg,transparent 4%,rgba(222,198,120,.7) 50%,transparent 96%);
  box-shadow:0 0 12px rgba(207,177,92,.26);
  animation:cartography-search-refined-scan .5s ease-out both;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results>p{
  margin:0;
  padding:.46rem .72rem .52rem;
  border-bottom:1px solid rgba(224,216,188,.07);
  color:#73827a;
  font-size:.55rem;
  letter-spacing:.145em;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button{
  position:relative;
  margin:0;
  min-height:2.75rem;
  border:0;
  border-bottom:1px solid rgba(224,216,188,.055);
  border-radius:0;
  background:transparent;
  padding:.62rem .78rem .62rem 1.02rem;
  color:#cbd3cc;
  box-shadow:none;
  animation:cartography-search-result-refined-in .28s cubic-bezier(.18,.78,.24,1) both;
  transition:background .15s ease,color .15s ease,transform .15s ease;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button:last-child{
  border-bottom:0;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button::before{
  content:"";
  position:absolute;
  left:.42rem;
  top:50%;
  width:2px;
  height:1.05rem;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(213,187,108,.12),rgba(213,187,108,.52),rgba(213,187,108,.12));
  opacity:.34;
  transform:translateY(-50%) scaleY(.56);
  transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button::after{
  background:linear-gradient(102deg,transparent 20%,rgba(235,215,148,.055) 50%,transparent 78%);
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button:hover,
html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button:focus-visible{
  transform:translateX(3px);
  background:linear-gradient(90deg,rgba(201,174,94,.075),rgba(201,174,94,.018) 64%,transparent);
  color:#f0e5bf;
  box-shadow:none;
}

html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button:hover::before,
html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button:focus-visible::before{
  opacity:.95;
  transform:translateY(-50%) scaleY(1);
  box-shadow:0 0 10px rgba(211,184,102,.32);
}

@keyframes cartography-search-panel-refined-in{
  from{opacity:0;transform:translateX(-50%) translateY(-6px) scaleY(.975);filter:blur(3px)}
  to{opacity:1;transform:translateX(-50%) translateY(0) scaleY(1);filter:blur(0)}
}

@keyframes cartography-search-result-refined-in{
  from{opacity:0;transform:translateY(-4px);clip-path:inset(0 86% 0 0)}
  to{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0)}
}

@keyframes cartography-search-refined-scan{
  0%{opacity:0;transform:translateY(0) scaleX(.18)}
  22%{opacity:.85}
  100%{opacity:0;transform:translateY(6.5rem) scaleX(.9)}
}

/* Mobile beta notice: advisory, dismissible, non-blocking after dismissal. */
.mobile-beta-pc-notice[hidden]{display:none!important}

.mobile-beta-pc-notice{
  position:fixed;
  z-index:260;
  inset:0;
  display:none;
  place-items:center;
  padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));
  background:rgba(3,9,6,.58);
  backdrop-filter:blur(10px);
}

.mobile-beta-pc-card{
  position:relative;
  width:min(28rem,100%);
  overflow:hidden;
  border:1px solid rgba(221,207,162,.16);
  border-radius:1rem;
  background:
    linear-gradient(180deg,rgba(15,30,22,.985),rgba(7,19,13,.985)),
    radial-gradient(circle at 12% 0,rgba(201,174,94,.1),transparent 42%);
  box-shadow:0 28px 86px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.035);
  padding:1.25rem;
  color:#aeb9b1;
}

.mobile-beta-pc-card::before{
  content:"";
  position:absolute;
  top:0;
  left:12%;
  width:42%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(226,204,132,.72),transparent);
}

.mobile-beta-pc-kicker{
  margin:0 2.4rem .48rem 0;
  color:#af9652;
  font:600 .58rem/1 Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.17em;
}

.mobile-beta-pc-card h2{
  margin:0 2.4rem .65rem 0;
  color:#eee8d8;
  font-family:"EB Garamond",Georgia,serif;
  font-size:1.55rem;
  font-weight:500;
  line-height:1.05;
}

.mobile-beta-pc-card p:not(.mobile-beta-pc-kicker){
  margin:0;
  color:#98a59d;
  font:400 .8rem/1.65 Inter,sans-serif;
}

.mobile-beta-pc-close{
  position:absolute;
  top:.72rem;
  right:.72rem;
  display:grid;
  width:2rem;
  height:2rem;
  place-items:center;
  border:1px solid rgba(255,255,255,.08);
  border-radius:.55rem;
  background:rgba(255,255,255,.025);
  color:#87938b;
  font:400 1.15rem/1 Inter,sans-serif;
}

.mobile-beta-pc-close:hover,
.mobile-beta-pc-close:focus-visible{
  border-color:rgba(201,174,94,.28);
  color:#eadcad;
  outline:none;
}

.mobile-beta-pc-continue{
  display:flex;
  width:100%;
  min-height:2.55rem;
  align-items:center;
  justify-content:center;
  margin-top:1rem;
  border:1px solid rgba(201,174,94,.24);
  border-radius:.68rem;
  background:rgba(201,174,94,.085);
  color:#dbc989;
  font:600 .61rem/1 Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.105em;
}

.mobile-beta-pc-continue:hover,
.mobile-beta-pc-continue:focus-visible{
  border-color:rgba(201,174,94,.38);
  background:rgba(201,174,94,.13);
  color:#eee0ae;
  outline:none;
}

@media(max-width:900px){
  html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results{
    top:calc(max(.62rem,env(safe-area-inset-top)) + 3.15rem);
    width:calc(100vw - 1.2rem);
    max-height:calc(100dvh - 4.6rem);
    border-radius:.78rem;
  }

  html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search kbd{
    display:none;
  }

  .mobile-beta-pc-notice{
    display:grid;
  }
}

@media(min-width:901px){
  .mobile-beta-pc-notice{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results,
  html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results::before,
  html body .spatial-sanctuary-shell .spatial-territory-layer .cartography-search-results button{
    animation:none!important;
    transition:none!important;
    filter:none!important;
  }
}
