/* Spectral atlas identity. Layout and behaviour remain in app/public/journey. */
:root {
  --display-font: Georgia, 'Times New Roman', serif;
  --moonlight: #e0cef5;
  --spectral-edge: #80658f;
  --veil: #b99ad21a;
  --spectral-halo: #b081e220;
}

/* A quiet editorial shell, with the ornament kept away from controls. */
body:has(.public-shell){background:radial-gradient(ellipse at 75% 0,var(--veil),transparent 38%),var(--bg-deep)}
.public-header{position:relative;z-index:3;padding:24px 0;border-bottom:1px solid var(--line)}
.account-brand{font-family:var(--display-font);font-weight:400;letter-spacing:.1px}
.account-brand:before{width:36px;height:36px}
.public-header nav{gap:3px}
.public-header nav a{border-radius:8px}
.public-header nav a[aria-current]{box-shadow:inset 0 -2px var(--purple-dark);background:var(--mist)}
.public-footer{background:url('atlas-rule.svg') center top/100% 20px no-repeat;border:0;padding-top:42px}
.public-footer .account-brand{font-size:23px}
.eyebrow,.case-label{color:var(--purple-dark);font-size:10px;letter-spacing:1.6px;text-transform:uppercase}
.home-section h2,.build-banner h2,.quiet-state h2,.quiet-state h3,.dossier-head h1,
.location-page h2,.profile-hero h1,.profile-hero h2,.content-editor:not(.admin-page *)>h1,
.preview-card:not(.admin-error) h1,.panel-head h1,.detail-body h1,.modal-head h2{
  font-family:var(--display-font);font-weight:400;letter-spacing:-.5px;line-height:1.2;
}

/* Moonlit invitation. Copy has a solid dark backing even when art is unavailable. */
.home-hero{display:flex;align-items:center;min-height:660px;padding:76px 0 90px;isolation:isolate}
.home-hero:before{inset:0;z-index:-1;background:none}
.hero-copy{position:relative;z-index:2;width:53%;padding:22px 25px 22px 0;pointer-events:none}
.hero-copy a{pointer-events:auto}
.home-hero .eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:2px;margin-bottom:28px}
.home-hero .eyebrow .icon{width:18px;height:18px}
.home-hero h1{font:400 clamp(48px,5.8vw,78px)/1.05 var(--display-font);letter-spacing:-2px;color:var(--ink);margin:0 0 27px;text-wrap:balance}
.home-hero h1 em{color:var(--purple-dark);font-weight:400}
.home-hero p:not(.eyebrow){max-width:390px;color:var(--muted);font-size:15px;line-height:1.85;margin-bottom:27px}
.home-hero p.hero-intro{color:var(--text-secondary);font-size:18px;margin-bottom:10px;font-family:var(--display-font);letter-spacing:.2px}
.hero-copy .button-row{max-width:430px;gap:12px}
.hero-copy .button{flex:0 1 auto;padding:14px 18px;min-height:50px;font-size:13px}
.home-hero p.hero-footnote{font-size:11px;letter-spacing:.3px;margin:20px 0 0}
.haunted-scene{position:absolute;inset:0 -40px 0 18%;z-index:0;display:block;color:var(--moonlight);text-decoration:none}
.haunted-scene>img{display:block;width:100%;height:100%;object-fit:cover;object-position:75% center;mask-image:linear-gradient(90deg,transparent,black 35%,black 93%,transparent),linear-gradient(transparent,black 10%,black 80%,transparent);mask-composite:intersect}
.haunted-scene:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,var(--bg-deep),#0c0911eb 12%,#0c091190 29%,transparent 53%);pointer-events:none}
.scene-seal{position:absolute;right:9%;bottom:70px;width:135px;height:152px;z-index:1;background:url('marker-artwork/ghost.webp') center/contain no-repeat;filter:drop-shadow(0 5px 15px #0c0911)}
.scene-caption{position:absolute;right:5%;bottom:28px;z-index:1;text-align:center;font:italic 20px var(--display-font);color:var(--moonlight);text-shadow:0 2px 8px var(--bg-deep)}
.scene-caption span{display:block;font:9px var(--font);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-secondary);margin-top:9px}
.haunted-scene:focus-visible{outline-offset:-6px}
.hero-mist{position:absolute;inset:auto 0 0;height:130px;overflow:hidden;pointer-events:none;z-index:1;mask-image:radial-gradient(ellipse at center,black 25%,transparent 72%)}
.hero-mist:before,.hero-mist:after{content:'';position:absolute;inset:0 -8%;background:radial-gradient(ellipse at 30% 65%,var(--veil),transparent 58%),radial-gradient(ellipse at 75% 40%,var(--spectral-halo),transparent 50%);opacity:.6}
.hero-mist:after{opacity:.4}
.atlas-principles{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-block:1px solid var(--line);margin:0 0 32px;color:var(--muted);font-size:12px;letter-spacing:.3px}
.atlas-principles span{display:flex;align-items:center;gap:10px}
.atlas-principles .icon{color:var(--purple-dark);width:18px;height:18px}

/* An archive of places and witness accounts. */
.home-section{position:relative;border-top:0;padding:48px 0}
.home-section:before{content:'';position:absolute;inset:0 0 auto;height:16px;background:url('atlas-rule.svg') center/100% 16px no-repeat;pointer-events:none}
.home-section h2,.build-banner h2{font-size:34px}
.story-card{border-radius:14px;border-color:var(--line);box-shadow:none;background:var(--surface-1)}
.story-card:hover{border-color:var(--spectral-edge);box-shadow:0 8px 25px #08050e40}
.story-art,.story-art.tone-1,.story-art.tone-2{height:170px;background:radial-gradient(ellipse at 50% 70%,var(--glow),transparent 65%),var(--bg-page)}
.story-art:before{display:block;width:120px;height:120px;border-color:var(--line);left:calc(50% - 60px);top:22px;box-shadow:0 0 0 12px #b79bcc08,0 0 0 13px #b79bcc13}
.story-art .story-orbit,.story-art.tone-1 .story-orbit,.story-art.tone-2 .story-orbit{display:block;color:var(--purple-dark);position:relative}
.story-art .story-orbit .icon{width:43px;height:43px;stroke-width:1.1}
.story-art small{color:var(--muted);font-size:9px;letter-spacing:1px}
.story-copy{padding:24px}
.story-copy h3{font:400 25px/1.25 var(--display-font);color:var(--ink)}
.story-metrics{row-gap:8px}
.experience-quote{position:relative;border-left:2px solid var(--spectral-edge);border-radius:3px 12px 12px 3px;background:linear-gradient(130deg,var(--mist),transparent 60%),var(--surface-1);box-shadow:none}
.experience-quote>p:first-of-type{font-family:var(--display-font);font-size:18px;line-height:1.8}
.category-links a{background:var(--surface-1);border-color:var(--line);border-radius:9px}
.category-links a:hover{border-color:var(--spectral-edge)}
.build-banner{border-radius:16px;padding:40px;gap:45px;background:radial-gradient(ellipse at 0 100%,var(--glow),transparent 65%),var(--surface-1);box-shadow:none}
.build-banner h3{font:400 25px var(--display-font);color:var(--ink)}
.build-banner .button{margin-top:10px}
.quiet-state{position:relative;min-height:185px;padding:30px 30px 30px 185px;border:1px solid var(--line);border-radius:14px;background:url('marker-artwork/ghost.webp') 27px center/125px 125px no-repeat,linear-gradient(110deg,var(--mist),transparent 65%),var(--surface-1)}
.quiet-state h2,.quiet-state h3{color:var(--ink);font-size:27px;margin:6px 0 12px}
.quiet-state p:last-child{margin-bottom:0}
.quiet-state .button{margin-top:8px}
.empty-state{background:url('marker-artwork/ghost.webp') center 12px/86px 86px no-repeat;padding-top:125px}
.empty-state>.icon{display:none}
.empty-state h3{font:400 22px/1.3 var(--display-font)}
.quiet-state.compact{padding:115px 20px 20px;min-height:0;background-position:center 10px;background-size:80px 80px,auto,auto}

/* Shared controls: purple actions, discernible boundaries, restrained glow. */
.button,.chip{transition:background-color .16s,border-color .16s}
.button.primary{border-color:#ad88cd;box-shadow:inset 0 1px #e1c6f126,0 4px 18px #8f53c51a;background-image:linear-gradient(115deg,#ffffff09,transparent)}
.button.secondary,.button.outline{border-color:var(--control-border);box-shadow:none}
.button.primary:disabled{box-shadow:none;background-image:none}
.button:focus-visible,.chip:focus-visible,.nav-item:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.badge,.activity-tag{border-radius:6px;letter-spacing:.15px}
.badge.sourced{background:var(--lilac);color:var(--accent-ghost)}
.category-chip:has(input:checked){background:var(--lilac);border-color:var(--purple-dark);color:var(--ink);box-shadow:inset 0 0 0 1px var(--purple-dark)}
input[type=checkbox],input[type=radio]{accent-color:var(--purple-dark)}
.field>span,.form-label{font-size:12px}
.field input,.field select,.field textarea{border-radius:9px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--purple-dark)}
.modal{border-color:var(--spectral-edge);border-radius:16px}
.modal-head{background:linear-gradient(120deg,var(--mist),transparent 65%)}
.modal-head h2{font-size:28px}

/* The atlas: existing map tiles stay unfiltered and attribution stays visible. */
.navigation,.member-mobile-nav{border-color:var(--line);background:var(--nav-surface)}
.brand-mark{padding:8px;border:1px solid var(--spectral-edge);border-radius:50%;margin-top:22px;box-shadow:0 0 20px var(--glow);color:var(--purple-dark)}
.brand-mark .icon{width:32px;height:32px;stroke-width:1.2}
.nav-item.active{box-shadow:inset 0 -2px var(--purple-dark);background:var(--lilac)}
.panel{border:1px solid var(--spectral-edge);border-radius:16px;background:linear-gradient(135deg,var(--mist),transparent 35%),var(--paper);box-shadow:var(--shadow)}
.panel-head h1,.detail-body h1{font-size:29px}
.intro-card{padding-top:135px;background:url('marker-artwork/ghost.webp') center 15px/95px 95px no-repeat,radial-gradient(ellipse at 50% 35%,var(--glow),transparent 70%),var(--bg-page);border-radius:12px}
.intro-card:after{display:none}
.intro-card h2{font:400 25px var(--display-font)}
.place-visual{border:1px solid var(--line);border-radius:10px}
.map-controls{border:1px solid var(--spectral-edge);border-radius:12px;box-shadow:var(--shadow)}
.map-header .search-box,.map-prompt{background:var(--nav-surface);box-shadow:var(--shadow);backdrop-filter:blur(12px)}
.map-header .filter-trigger{background:var(--nav-surface);box-shadow:0 3px 12px #08050e30}
.map-header .filter-trigger.selected,.map-header .filter-trigger:hover{background:var(--lilac)}
.map-legend{border-color:var(--spectral-edge);flex-wrap:wrap;max-width:calc(100% - var(--panel) - 70px)}
.drop-button{border:1px solid var(--purple-dark);border-radius:12px}
.detail-hero{background:url('marker-artwork/ghost.webp') center/105px 105px no-repeat,var(--bg-page)}
.detail-hero:before,.detail-hero:after,.detail-hero>.icon{display:none}
.pin,.pin.high,.pin.low{transform:none;border-radius:50% 50% 8px 8px;background:var(--lilac);border-color:var(--purple-dark);box-shadow:0 3px 10px var(--backdrop)}
.pin>.icon,.pin.high>.icon,.pin.low>.icon{transform:none}
.pin.known{border-radius:7px 7px 7px 7px;border-style:double;border-width:3px}
.pin.curated{border-color:var(--curated-ink,#f49aaa)}
.pin-check.pin-disputed{background:var(--danger-bg);border-color:var(--danger);color:var(--danger);font-size:10px;font-weight:700}
.pin.active{background:var(--purple);border-color:var(--accent-ghost);box-shadow:0 0 0 3px var(--bg-deep),0 0 0 5px var(--accent-ghost)}
.marker-cluster{border:3px double var(--purple-dark);box-shadow:0 0 0 4px var(--glow),var(--shadow)}
.experience-pin{background:url('favicon.svg') center/contain no-repeat;border:0;border-radius:0;box-shadow:none;color:var(--ink)}
.legend-pin.known{background:var(--lilac);border:3px double var(--curated-ink,#f49aaa);border-radius:2px;width:12px;height:12px}
.legend-pin.community{border:1px solid var(--purple-dark);border-radius:50% 50% 3px 3px;width:12px;height:12px}

/* Location dossiers; the same partial serves the full page and map sheet. */
.location-page{max-width:850px;padding:38px;border-radius:16px;border-color:var(--line);background:linear-gradient(135deg,var(--mist),transparent 35%),var(--surface-1);box-shadow:var(--shadow)}
.dossier-head{padding:8px 130px 25px 0;background:url('marker-artwork/ghost.webp') right center/110px 110px no-repeat;border-bottom:1px solid var(--line);margin-bottom:25px}
.dossier-head h1{font-size:42px;margin:15px 0;overflow-wrap:anywhere}
.location-page h2{font-size:27px;letter-spacing:0}
.dossier-section{margin-top:28px;padding-top:24px;background:url('atlas-rule.svg') center top/100% 16px no-repeat}
.location-page .claimed-activity{border-radius:10px;border:1px solid var(--line);border-left:3px solid var(--spectral-edge);background:var(--bg-page)}
.claimed-activity-list{list-style:none;padding:0;margin:16px 0}
.claimed-activity-list li{padding:14px 0;overflow-wrap:anywhere}
.claimed-activity-list li+li{border-top:1px solid var(--line)}
.claimed-activity-list p{margin:0;white-space:pre-wrap;line-height:1.7}
.activity-editor{min-width:0;border:1px solid var(--line);border-radius:10px;padding:16px}
.activity-row{padding:12px 0;min-width:0}
.activity-row+.activity-row{border-top:1px solid var(--line)}
.activity-row textarea{min-height:110px;resize:vertical}
.activity-controls{display:flex;flex-wrap:wrap;gap:8px}
.activity-controls .button{min-height:44px}
.activity-editor button:disabled{opacity:.5;cursor:default}
.location-page .claimed-activity h2{color:var(--moonlight)}
.location-page .source-list{padding:0 18px;background:var(--bg-page);border:1px solid var(--line);border-radius:10px}
.location-page .source-list li:last-child{border-bottom:0}
.location-provenance{color:var(--muted);font-size:12px;margin-top:10px}
.panel.location-preview .dossier-head{background:none}
.panel.location-preview .location-page h2{font-size:24px}
.panel.location-preview .quiet-state{padding:112px 16px 20px;background-size:80px 80px,auto,auto;background-position:center 10px}

/* Witness journal and membership, with practical forms and stable step labels. */
.content-editor{border-color:var(--spectral-edge)}
.content-editor>h1{font-size:34px}
.journey-steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:26px 0}
.journey-steps li{counter-increment:step;padding:10px 4px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);font-size:12px}
.journey-steps li:before{content:counter(step,decimal-leading-zero);color:var(--muted);font-size:11px}
.journey-steps [aria-current=step]{border-bottom:2px solid var(--purple-dark);color:var(--accent-ghost);background:linear-gradient(transparent,var(--mist))}
.journey-steps [aria-current=step]:before{color:var(--purple-dark)}
#experience-journey [data-stage]>h2{font:400 29px/1.2 var(--display-font)}
#experience-journey textarea[name=description]{line-height:1.9;padding:18px;min-height:210px}
.place-result:hover{border-color:var(--purple-dark);background:var(--surface-2)}
.media-editor{background:var(--bg-page)}
.content-editor input[type=file]::file-selector-button{background:var(--surface-2);color:var(--ink);border:1px solid var(--control-border);border-radius:8px;padding:10px;margin:0 12px 8px 0;cursor:pointer}
.member-page:not(.admin-page){background:radial-gradient(ellipse at 0 0,var(--glow),transparent 45%),var(--bg-deep)}
.member-page:not(.admin-page) .member-card{border-color:var(--line);border-radius:16px;box-shadow:var(--shadow)}
.profile-hero{background:url('atlas-rule.svg') center bottom/100% 20px no-repeat;padding-bottom:28px}
.profile-hero .avatar{border:1px solid var(--spectral-edge);box-shadow:0 0 20px var(--glow);background:var(--lilac)}
.profile-hero h1,.profile-hero h2{font-size:32px}
.home-section>h1{font:400 clamp(32px,4vw,46px)/1.2 var(--display-font)}
.earned-badge{border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,var(--mist),transparent),var(--surface-1)}
.earned-badge>.icon{color:var(--purple-dark)}
.community-card{border-radius:12px;border-top:1px solid var(--spectral-edge)}
.preview-page:not(:has(.admin-error)){background:linear-gradient(#0c0911b8,#0c0911e8),url('spectral-abbey.webp') 70% center/cover fixed,var(--bg-deep)}
.preview-card:not(.admin-error){border:1px solid var(--spectral-edge);border-radius:16px;box-shadow:var(--shadow)}
.preview-card:not(.admin-error) h1{font-size:34px}
.veil-error .crypt-illustration{object-fit:contain;width:145px;height:125px;display:block;margin:0 auto 20px}

/* Administration shares the palette, with undecorated headings and surfaces. */
.admin-page{background:var(--bg-page)}
.admin-page .member-card,.admin-page .onboarding-card{border:1px solid var(--line);border-radius:12px;background:var(--surface-1);box-shadow:none}
.admin-page .content-editor>h1{font:700 27px/1.3 'Manrope',var(--font)}
.admin-page .content-editor{border:0;margin-top:0}
.admin-page .source-row{border-radius:9px;background:var(--bg-page)}
.admin-page .quiet-state{background:var(--bg-page);min-height:0;padding:24px}
.admin-page .quiet-state h2,.admin-page .quiet-state h3{font-family:var(--font);font-size:20px}

@media(prefers-reduced-motion:no-preference){
  .hero-mist:before{animation:veil-drift 32s ease-in-out infinite alternate}
  .hero-mist:after{animation:veil-drift 43s ease-in-out infinite alternate-reverse}
}
@keyframes veil-drift{from{transform:translateX(-3%)}to{transform:translateX(3%)}}
@media(prefers-reduced-motion:reduce){.hero-mist:before,.hero-mist:after{animation:none;transform:none}.button,.chip,.story-card{transition:none}}
@media(min-width:761px) and (max-width:1100px){
  .home-hero{min-height:620px;padding:55px 0}.hero-copy{width:57%}.home-hero h1{font-size:58px}
  .home-hero .button{flex-basis:auto}.haunted-scene{left:12%}.scene-seal{right:5%}
  .atlas-principles{font-size:11px;gap:12px}.atlas-principles span{gap:7px}
}
@media(max-width:760px){
  .public-header{padding:18px 0}.public-header .account-brand{font-size:22px}
  .public-header nav{gap:2px;background:var(--nav-surface);border-radius:0;backdrop-filter:blur(12px)}
  .home-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:38px 0 0;gap:0}
  .hero-copy{width:100%;padding:0;pointer-events:auto}
  .home-hero .eyebrow{font-size:9px;letter-spacing:1.3px;gap:8px;margin-bottom:23px}
  .home-hero h1{font-size:clamp(46px,12vw,66px);letter-spacing:-1.6px;margin-bottom:22px}
  .home-hero p:not(.eyebrow){font-size:14px;line-height:1.85;max-width:440px;margin-bottom:23px}
  .home-hero p.hero-intro{font-size:18px;margin-bottom:9px}
  .hero-copy .button-row{gap:10px;max-width:none}
  .hero-copy .button{flex:1 1 120px;font-size:12px;padding:12px 10px;min-height:48px}
  .home-hero p.hero-footnote{font-size:10px;margin-top:16px;margin-bottom:0}
  .haunted-scene{position:relative;inset:auto;width:calc(100% + 40px);height:325px;margin:0 -20px}
  .haunted-scene>img{object-position:75% center;mask-image:linear-gradient(transparent,black 15%,black 80%,transparent)}
  .haunted-scene:before{background:linear-gradient(90deg,#0c091170,transparent 50%)}
  .scene-seal{width:95px;height:107px;left:24px;right:auto;bottom:58px}
  .scene-caption{font-size:18px;right:20px;bottom:20px}
  .scene-caption span{font-size:8px;letter-spacing:1px}
  .hero-mist{height:100px}
  .atlas-principles{padding:18px 0;gap:12px;flex-direction:column;font-size:11px;margin-bottom:26px}
  .home-section{padding:34px 0}.home-section h2,.build-banner h2{font-size:29px}
  .story-card{grid-template-columns:82px minmax(0,1fr)}
  .story-art,.story-art.tone-1,.story-art.tone-2{height:100%;min-height:150px}
  .story-art:before{width:64px;height:64px;left:8px;top:calc(50% - 32px);box-shadow:0 0 0 6px #b79bcc08}
  .story-art .story-orbit .icon{width:33px;height:33px}
  .story-cover{height:100%;min-height:150px}
  .story-copy{padding:18px 15px}.story-copy h3{font-size:23px}
  .quiet-state{padding:142px 22px 25px;background-position:center 15px;background-size:105px 105px,auto,auto;min-height:0}
  .quiet-state h2,.quiet-state h3{font-size:26px}
  .build-banner{padding:28px 24px;gap:25px}.build-banner .button{width:100%}
  .location-page{padding:24px 20px}.dossier-head{padding-right:0;padding-top:0;background:none}
  .dossier-head h1{font-size:34px}.location-page h2{font-size:25px}
  .panel{border-radius:20px 20px 8px 8px}.modal{border-radius:20px 20px 0 0}
  .journey-steps{gap:5px}.journey-steps li{flex-direction:column;align-items:flex-start;font-size:11px;gap:4px;padding:10px 3px}
  .content-editor>h1{font-size:30px}
}

.pin.curated.active{border-color:var(--curated-ink,#f49aaa)}
.pin.community.active{border-color:var(--purple-dark)}
/* Primary brand art: shared illustrated seals, separate from utility .icon paths. */
.spectral-art{display:block;object-fit:contain;pointer-events:none}
.pin,.pin.high,.pin.low,.pin.known,.pin.active{border:0;border-radius:0;background:transparent;box-shadow:none;isolation:isolate}
.pin.high{width:48px;height:54px}
.pin.low{width:32px;height:36px}
.pin{--marker-edge:#b58ad9;--marker-glow:#b58ad966}
.pin.curated{--marker-edge:#e06c7d;--marker-glow:#b52c4b77}
/* Ring inner diameter matches the artwork width: opaque source pixels cannot
   cover it. Curation accents never filter, tint or replace the supplied image. */
.pin:before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100% + 4px);aspect-ratio:1;box-sizing:border-box;border:2px solid var(--marker-edge);border-radius:50%;background:transparent;box-shadow:0 0 0 1px #17101f,0 2px 5px #09050dbb,0 0 8px var(--marker-glow);z-index:1;pointer-events:none}
.pin.curated:before{width:calc(100% + 6px);border-width:3px;border-style:double}
/* Neutral, separate selection/focus outline retains each curation colour. */
.pin.active:after,.haunt-marker:focus-visible .pin:after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100% + 14px);aspect-ratio:1;box-sizing:border-box;border:2px solid #eee6f4;border-radius:50%;box-shadow:0 0 0 1px #17101f;pointer-events:none}
.haunt-marker:focus-visible .pin:after{border-style:dashed}
.pin>.spectral-art{width:100%;height:100%;object-fit:contain}
.haunt-marker:hover .pin.curated:before,.pin.curated.active:before{box-shadow:0 0 0 1px #17101f,0 2px 5px #09050dbb,0 0 11px #cc234b99}
.marker-cluster.cluster--curated{color:#f49aaa;border-color:#e06c7d;background:#29121b;box-shadow:0 0 0 4px #ad28432b,var(--shadow)}
.marker-cluster.cluster--mixed{color:#e5dfec;border-color:#b6adbf;background:#211e27;box-shadow:0 0 0 4px #b6adbf25,var(--shadow)}
.story-art:before{display:none}
.story-art .spectral-art{width:110px;height:125px}
.place-visual img.spectral-art{width:90%;height:95%;object-fit:contain;border-radius:0}
.detail-hero:has(>.spectral-art){background:radial-gradient(ellipse,var(--glow),transparent 65%),var(--bg-page)}
.detail-hero>img.spectral-art{width:110px;height:125px;object-fit:contain}
.wordmark>.spectral-art{width:30px;height:34px;flex-shrink:0}
.brand-mark{padding:0;border:0;border-radius:0;background:url('marker-artwork/ghost.webp') center/contain no-repeat;width:48px;height:54px;box-shadow:none}
.brand-mark .icon{visibility:hidden}
.mobile-brand>[data-icon=ghost]{background:url('marker-artwork/ghost.webp') center/contain no-repeat}
.mobile-brand>[data-icon=ghost]>.icon{visibility:hidden}
.legend-pin.known{width:14px;height:14px;border-radius:50%;border-color:#e06c7d}
.legend-pin.community{width:10px;height:10px;border-radius:50%;border-color:#b58ad9}
@media(max-width:760px){.story-art .spectral-art{width:72px;height:84px}}
