/* Tipota MAPS / posizione — the compact "where is Tipota" map: the info box in the corner and its phone behaviour. */
.tmaps-posizione { --tmaps-h: 300px; }
.tmaps-posizione .tpz-mapbox { position: relative; }
.tmaps-posizione .tpz-map { height: var(--tmaps-h); }

.tpz-info { position: absolute; z-index: 600; top: 10px; left: 10px; width: 232px; max-width: calc(100% - 20px); padding: 10px 12px 9px; border-radius: 12px; background: rgba(255, 255, 255, .94); color: var(--tmaps-ink); box-shadow: 0 2px 12px rgba(0, 0, 0, .22); font-size: 12.5px; line-height: 1.3; pointer-events: auto; }
.tpz-head { display: flex; align-items: center; gap: 9px; }
.tpz-head > div { display: flex; flex-direction: column; min-width: 0; }
.tpz-head b { font-size: 15px; letter-spacing: .02em; }
.tpz-head span { color: var(--tmaps-muted); font-size: 11.5px; }
.tpz-boat { width: 14px; height: 14px; border-radius: 50%; background: #ff5a1f; border: 2px solid #fff; box-shadow: 0 0 0 2px rgba(255, 90, 31, .35); flex: none; }
.tpz-where { margin-top: 6px; font-weight: 600; font-size: 13px; }
.tpz-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 5px 10px; margin-top: 7px; padding-top: 7px; border-top: 1px solid var(--tmaps-line); }
.tpz-stats > div { display: flex; flex-direction: column; }
.tpz-stats b { font-size: 14px; font-weight: 600; }
.tpz-stats b small { font-size: 11px; font-weight: 500; color: var(--tmaps-muted); }
.tpz-stats span { font-size: 11px; color: var(--tmaps-muted); }
.tpz-foot { display: flex; justify-content: center; align-items: center; margin-top: 7px; padding-top: 6px; border-top: 1px solid var(--tmaps-line); }
.tpz-span { display: flex; gap: 4px; width: 100%; }
/* the four spans share the row equally, so they always fit the box; the theme's button styles (capitals, spacing) are overridden */
.tmaps-posizione .tpz-span button { flex: 1 1 0; min-width: 0; margin: 0; border: 1px solid var(--tmaps-line); background: #fff; color: var(--tmaps-ink); font-family: inherit; font-size: 11px; font-weight: 600; line-height: 1; letter-spacing: 0; text-transform: none; padding: 5px 2px; border-radius: 999px; cursor: pointer; box-shadow: none; }
.tmaps-posizione .tpz-span button[aria-pressed="true"] { background: var(--tmaps-accent); border-color: var(--tmaps-accent); color: #fff; }
.tmaps-posizione .tpz-span button:hover { border-color: var(--tmaps-accent); }

/* The "i" button shows the box again once it has been folded away (small screens) */
.tpz-toggle { position: absolute; z-index: 601; top: 10px; left: 10px; width: 30px; height: 30px; border-radius: 50%; border: 0; background: #fff; color: var(--tmaps-accent); font: 700 15px/30px Georgia, serif; box-shadow: 0 1px 5px rgba(0, 0, 0, .3); cursor: pointer; display: none; }
.tpz-collapsed .tpz-info { display: none; }
.tpz-collapsed .tpz-toggle { display: block; }

@media (max-width: 560px) {
	.tpz-info { width: auto; right: 64px; top: 8px; left: 8px; padding: 8px 10px; font-size: 12px; }
	.tpz-stats { grid-template-columns: repeat(3, 1fr); margin-top: 5px; padding-top: 5px; }
	.tpz-stats > div:nth-child(n+4) { display: none; }
	.tpz-toggle { display: block; left: auto; right: 10px; top: 46px; }
	.tpz-collapsed .tpz-toggle { right: 10px; }
}
