/* Pagina itinerario canonico (Phase 4). Solo token del tema (chiaro/scuro): nessun colore letterale. */
.it-page .lead{font-size:1.05rem;color:var(--muted);max-width:62ch}
.it-summary{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:14px 0}
.it-summary li{background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-md);padding:8px 12px;font-size:.9rem;color:var(--ink)}
.it-other{font-size:.9rem;color:var(--muted)}
.it-layout{display:grid;gap:24px;margin-top:18px}
.it-tabs{display:flex;gap:8px;overflow-x:auto;padding:8px 0 10px;position:sticky;top:var(--header-h,64px);z-index:5;background:var(--theme-paper,var(--sand-50));-webkit-overflow-scrolling:touch}
.it-tab{flex:0 0 auto;font:inherit;font-size:.9rem;font-weight:600;color:var(--ink);background:var(--surface-card);border:1px solid var(--line);border-radius:999px;padding:7px 14px;cursor:pointer}
.it-tab.is-on{background:var(--ink);border-color:var(--ink);color:var(--surface-card)}
.it-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
.it-page>.section{padding-top:20px}
.it-day{margin:8px 0 22px}
.it-day h2{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:400;font-size:1.6rem;margin:6px 0}
.it-daydot{display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--it-c)}
.it-daytext{color:var(--muted);margin:0 0 12px}
.it-timeline{list-style:none;padding:0;margin:0 0 0 13px;border-left:2px solid var(--line)}
.it-stop{position:relative;padding:0 0 18px 24px}
.it-stop-row{display:flex;gap:12px;align-items:flex-start}
.it-num{position:absolute;left:-14px;top:2px;width:26px;height:26px;border-radius:50%;background:var(--it-c);color:var(--on-media);font-weight:700;font-size:.8rem;display:grid;place-items:center}
.it-media{margin:0;flex:0 0 112px;position:relative}
.it-media img{width:112px;height:84px;object-fit:cover;border-radius:var(--radius-sm);display:block;background:var(--map-bg)}
.it-attrib{position:absolute;top:5px;right:5px;width:20px;height:20px;border-radius:50%;background:var(--scrim);color:var(--on-media);font-size:13px;line-height:20px;text-align:center;cursor:help}
.it-attrib-pop{position:absolute;top:24px;left:-6px;min-width:170px;max-width:230px;background:var(--surface-card);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.4;text-align:left;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transition:opacity .15s;z-index:3}
.it-attrib:hover .it-attrib-pop,.it-attrib:focus .it-attrib-pop,.it-attrib:focus-within .it-attrib-pop{opacity:1;visibility:visible}
.it-attrib-pop a{color:inherit;text-decoration:underline}
.it-stop-body{min-width:0}
.it-stop-body h3{margin:2px 0 4px;font-size:1.05rem;line-height:1.25}
.it-stop-body h3 a{color:var(--ink)}
.it-when{display:block;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.it-cat{margin:0;font-size:.8rem;color:var(--secondary-text,var(--muted))}
.it-dur{display:inline-block;font-size:.82rem;color:var(--ink);background:var(--surface-raised,var(--surface-card));border:1px solid var(--line);border-radius:999px;padding:2px 10px;margin:2px 0 6px}
.it-dur em{font-style:normal;color:var(--muted)}
.it-desc{margin:4px 0;color:var(--ink);font-size:.95rem}
.it-why{margin:4px 0 0;color:var(--muted);font-size:.88rem}
.it-transfer{margin:0 0 10px -10px;font-size:.82rem;color:var(--muted);padding:2px 0 2px 10px;border-left:2px dashed var(--line)}
.it-transfer-zone{color:var(--status-info-fg);background:var(--status-info-bg);border-radius:var(--radius-sm);padding:6px 10px;border-left:0;margin-left:0}
.it-meal-break h3,.it-hook h3{font-size:1rem}
.it-hook{padding-top:4px}
.it-events{margin:6px 0;padding-left:18px;font-size:.9rem}
.it-muted{color:var(--muted);font-size:.9rem}
.it-map h2{font-family:var(--serif);font-weight:400;font-size:1.4rem;margin:0 0 8px}
.it-sketch{margin:0;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-md);padding:8px}
.it-sketch svg{width:100%;height:auto;max-height:340px;display:block}
.it-sketch figcaption{font-size:.78rem;color:var(--muted);text-align:center}
.it-map-live{height:380px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--line);margin-top:10px}
.it-map-live .leaflet-tile-pane{filter:var(--map-filter,none)}
.it-map-cta{margin:10px 0 0}
.it-pin{width:24px;height:24px;border-radius:50%;background:var(--it-c);color:var(--on-media);font-weight:700;font-size:.75rem;display:grid;place-items:center;border:2px solid var(--surface-card)}
.it-how{margin:22px 0 8px;color:var(--muted);font-size:.92rem}
.it-how summary{cursor:pointer;color:var(--ink)}
.it-page [hidden]{display:none!important}
@media (min-width:1024px){.it-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.it-aside{position:sticky;top:calc(var(--header-h,64px) + 16px)}.it-media{flex-basis:144px}.it-media img{width:144px;height:104px}}
@media (max-width:420px){.it-media{flex-basis:88px}.it-media img{width:88px;height:66px}}
