/* LanzaNote · mappa illustrata */
.illus{width:100%;height:100%;display:block;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;--z:1}
.illus .sea{fill:#E9DFCF}
.illus .dot0{fill:#D6C7AE}
.illus .ola{fill:none;stroke:#B9A88C;stroke-width:1.3;stroke-linecap:round;opacity:.7}
.illus .ripples path{fill:none;stroke-linejoin:round}
.illus .r3{stroke:#E3D6C1;stroke-width:44}
.illus .r2{stroke:#DDCDB4;stroke-width:26;stroke-dasharray:2 7;stroke-linecap:round}
.illus .r1{stroke:#F1E8DA;stroke-width:12}
.illus .shadow{fill:#CDB898;opacity:.55}
.illus .land{fill:#F6EEDF;stroke:#2B211B;stroke-width:1.3;stroke-linejoin:round}
.illus .vol path{fill:#C9744E;stroke:#2B211B;stroke-width:.9}
.illus .vol ellipse{fill:#6E3B26;stroke:#2B211B;stroke-width:.7}
.illus .hoyo{fill:none;stroke:#6F5A45;stroke-width:1}
.illus .vid{fill:#7C8F5E}
.illus .cliff path{stroke:#6F5A45;stroke-width:1.2;stroke-linecap:round}
.illus text{font-family:Archivo,system-ui,sans-serif;fill:#2B211B}
.illus .town circle{fill:#2B211B}
.illus .town text{font-weight:700;paint-order:stroke;stroke:#F6EEDF;stroke-width:4px;stroke-linejoin:round}
.illus .isla{font-style:italic;fill:#5A4B40;letter-spacing:.04em}
.illus .zona{font-family:Archivo,system-ui,sans-serif;font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;paint-order:stroke;stroke:#F6EEDF;stroke-width:4px}
.illus .rose circle{fill:none;stroke:#8A7560;stroke-width:1}
.illus .rose .in{stroke-dasharray:2 4}
.illus .rose path{fill:#F6EEDF;stroke:#2B211B;stroke-width:1}
.illus .rose .nd{fill:#C2643F}
.illus .rose text{font-size:18px;font-style:italic}
.illus .cartouche .t1{font-size:50px;font-weight:800;letter-spacing:-.03em}
.illus .cartouche .t2{font-family:Archivo,system-ui,sans-serif;font-size:10px;letter-spacing:.3em;text-transform:uppercase;fill:#8A7560}
.illus .cartouche .scale{stroke:#2B211B;stroke-width:1.4}
.illus .cartouche g text{font-family:Archivo,system-ui,sans-serif;font-size:11px}
.illus .pin3{cursor:pointer;transition:transform .2s}
.illus .pin3>*{transform:scale(var(--k,1))}
.illus .pin3.note>circle,.illus .pin3.note image{filter:drop-shadow(0 2px 3px rgba(0,0,0,.25))}
.illus .glass,.illus .mnt,.illus .wv{fill:none;stroke:#fff;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.illus .pin3.sel>*{stroke:#2B211B;stroke-width:2}
@keyframes pulse{0%{r:10;opacity:.6}100%{r:34;opacity:0}}
.illus .pulse{fill:var(--accent);animation:pulse 1.8s infinite}

.mapmode{position:absolute;z-index:520;bottom:16px;left:12px;display:flex;background:var(--paper);border:1px solid var(--line);border-radius:99px;padding:3px;box-shadow:0 6px 20px -8px rgba(0,0,0,.25)}
.mapmode button{padding:8px 14px;border-radius:99px;font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.mapmode button.on{background:var(--ink);color:var(--paper)}
.zoombtns{position:absolute;z-index:520;bottom:16px;right:12px;display:flex;flex-direction:column;gap:6px}
.zoombtns button{width:40px;height:40px;border-radius:50%;background:var(--paper);border:1px solid var(--line);font-size:20px;line-height:1;box-shadow:0 6px 20px -8px rgba(0,0,0,.25)}
.sheet{position:absolute;z-index:530;left:12px;right:12px;bottom:70px;background:var(--paper);border-radius:22px;box-shadow:0 18px 40px -14px rgba(0,0,0,.35);
  display:grid;grid-template-columns:96px 1fr;gap:14px;padding:12px;align-items:center;transform:translateY(20px);opacity:0;pointer-events:none;transition:.3s;max-width:460px}
.sheet.show{transform:none;opacity:1;pointer-events:auto}
.sheet .sph{width:96px;height:96px;border-radius:16px;overflow:hidden;background:var(--c)}
.sheet .sph img{width:100%;height:100%;object-fit:cover}
.sheet .sph.logo{background:#fff;display:grid;place-items:center;padding:10px}
.sheet .sph.logo img{object-fit:contain}
.sheet b{display:block;font-family:var(--serif);font-weight:500;font-size:21px;line-height:1.12;margin:6px 0 8px}
.sheet a{font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid;margin-right:14px}
.sheet .x{position:absolute;top:8px;right:12px;font-size:18px;color:var(--muted)}
.minimap.ill{height:300px;border-radius:22px;overflow:hidden;border:1px solid var(--line)}
/* tracciati */
.illus .trk path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.illus .trk .hit{stroke:transparent;stroke-width:18px;pointer-events:stroke;cursor:pointer}
.illus .trk .halo{stroke:#fff;stroke-width:5.5px;opacity:.9}
.illus .trk .ln{stroke:#D9822B;stroke-width:2.6px;stroke-dasharray:7 4}
.illus .trk.sel .ln{stroke:#111;stroke-width:3.6px;stroke-dasharray:none}
.illus .trk.sel .halo{stroke-width:8px}
.illus.tmini .trk .ln{stroke-width:3.4px;stroke-dasharray:none;stroke:#D9822B}
.illus.tmini .deco,.illus.tmini .zona{display:none}
@media(max-width:700px){#map .cartouche{display:none}}
.illus .pin3.logo>*{filter:drop-shadow(0 2px 3px rgba(0,0,0,.25))}
