.shop-hotspots{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3}
.shop-hotspot{position:absolute;transform:translate(-50%,-50%);width:42px;height:42px;min-height:42px;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;pointer-events:auto;display:grid;place-items:center;border-radius:50%!important}
.shop-hotspot i{display:block;width:12px;height:12px;border:2px solid #fff1d4;background:#e5b95d;border-radius:50%;box-shadow:0 0 0 3px #283c40c9,0 2px 5px #0008;animation:shop-beacon 3.6s ease-out infinite}
.shop-hotspot span{position:absolute;bottom:42px;left:50%;transform:translateX(-50%);font:600 13px/1.3 var(--font-body,sans-serif);white-space:nowrap;padding:7px 10px;color:#fff1d4;background:#25343c;border:1px solid #f1cf86;opacity:0;pointer-events:none;transition:opacity .15s}
.shop-hotspot:hover span,.shop-hotspot:focus-visible span{opacity:1}
.shop-hotspot:focus-visible{outline:2px solid #fff1d4;outline-offset:0}
.shop-hotspot:hover i,.shop-hotspot:focus-visible i{background:#fff1d4;animation:none;transform:scale(1.2)}
@keyframes shop-beacon{0%,85%,100%{box-shadow:0 0 0 3px #283c40c9,0 0 0 5px #f1cf8600}45%{box-shadow:0 0 0 3px #283c40c9,0 0 0 12px #f1cf8655}}
.reduced-motion .shop-hotspot i{animation:none}
@media(prefers-reduced-motion:reduce){.shop-hotspot i{animation:none}}
.station-directory{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.station-directory button{display:flex;gap:12px;align-items:center;text-align:left;padding:16px;min-height:80px}
.station-directory button>span:nth-child(2){flex:1}.station-directory i{font-style:normal;font-size:28px;color:var(--green)}
.station-directory b,.station-directory small{display:block}.station-directory small{margin-top:5px;font-weight:400;line-height:1.45}
.station-editor{max-width:880px;margin:auto}.station-editor h2{display:flex;gap:12px;align-items:center}
.station-editor .modal-subtitle{margin-bottom:20px}.station-note{padding:12px 16px;border-left:3px solid var(--gold,#d3a75d);background:#ddcba633}
.station-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:18px 0}
.station-fields label,.station-price label,.station-target label{display:grid;gap:8px;line-height:1.4}
.station-editor select,.station-editor input{max-width:100%;width:100%;padding:10px;min-height:44px;font:inherit}
.station-price,.station-target{display:flex;gap:14px;align-items:flex-end;margin:18px 0}.station-price label,.station-target label{flex:1}.station-price button,.station-target button{min-height:44px}
.station-more,.station-road{border-top:1px solid #96734b66;padding:16px 0;margin-top:14px}.station-more summary,.station-road summary{cursor:pointer;font-weight:600;padding:8px 0;min-height:36px}
.station-kit{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid #96734b44}.station-kit p{max-width:50ch}.station-kit button{flex-shrink:0}
.station-editor .supplier-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.station-editor .supplier-card{width:auto;min-width:0}
.station-editor .supplier-card p,.station-editor .supplier-card small{line-height:1.45}.station-editor .supplier-heading{display:block}.station-editor .supplier-heading b{display:block;margin-top:6px}
.station-editor .supplier-card .skewer-art{max-height:100px}
.station-editor .route-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.station-editor .route-card{min-width:0}
.station-crew,.station-roles{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.station-crew [aria-pressed=true],.station-roles [aria-pressed=true]{background:var(--green);color:var(--cream,#fff1d4)}
.station-editor[data-station=team]>.eyebrow~.eyebrow,.station-editor[data-station=team]>h2~h2,.station-editor[data-station=team]>.modal-subtitle~.modal-subtitle{display:none}
.station-editor .team-grid{grid-template-columns:1fr}.station-editor .team-summary{margin:14px 0}.station-editor .team-log{margin-top:20px}
.station-editor .loaded-spits{max-height:170px;justify-content:flex-start}.station-editor .loaded-spits .skewer-art{max-height:115px}
.station-hint{font-size:13px;line-height:1.5;padding:10px 0;color:var(--muted)}
@media(max-width:650px){.station-directory{grid-template-columns:1fr}.station-editor .supplier-options,.station-editor .route-options{grid-template-columns:1fr}.station-kit{display:block}.station-price,.station-target{flex-wrap:wrap}.station-editor .supplier-card{display:block}.shop-hotspot{width:38px;height:38px;min-height:38px}}
/* Preserve the pin centre while pressed; the general button press effect moves it away from the pointer. */
.shop-hotspot:active:not(:disabled){transform:translate(-50%,-50%)!important}
.station-editor .loaded-spits{margin:0 0 8px;max-height:none;gap:24px}
.station-editor .loaded-spits>div{display:grid;grid-template-columns:42px auto;column-gap:9px;text-align:left;align-items:center}
.station-editor .loaded-spits .skewer-preview{grid-row:1/3;width:42px;height:60px}
.station-editor .loaded-spits b{font:600 18px/1.1 var(--body-font,sans-serif)}
.station-editor .supplier-card .skewer-preview{height:74px;width:60px;margin:0 auto 7px}
.station-editor .supplier-card .skewer-style{display:none}
.station-editor .supplier-card{padding:12px;font-size:13px;line-height:1.45}
.station-editor .supplier-card strong{font-size:16px;line-height:1.25}
.station-editor .supplier-section>p{font-size:13px;margin:7px 0 12px}
.station-editor .supplier-section h3{margin:12px 0 6px}
.station-editor .station-note{font-size:13px;line-height:1.5;margin:10px 0;padding:10px 14px}
.station-editor .modal-subtitle{margin-bottom:14px}

.station-price button,.station-target button{width:auto;flex:0 0 auto}
.station-price label,.station-target label{min-width:190px}
