/* ==========================================================================
   Pits — plan.css (μόνο Plan Your Tour). Redesign «A · Chart table», Οκτ 2026 — OCTOPUSH.
   Sticky χάρτης + φόρμα σε 3 βήματα · σύνοψη διαδρομής · κάρτα επιτυχίας · ιδέες (boarding passes).
   ========================================================================== */
:root{
	--pl-text:#4f5b62;--pl-muted:#5f6b76;--pl-line:#d6e2e8;--pl-ink:#00709f;
	--f-mono:"IBM Plex Mono",ui-monospace,monospace;--f-serif:"Instrument Serif",Georgia,serif;
	--ease-out:cubic-bezier(.16,1,.3,1);
}
/* --adm ορίζεται στο body (admin bar) → το --pl-top πρέπει να υπολογίζεται κάτω από αυτό. */
.pl-page{--pl-top:calc(var(--adm) + var(--header-h))}
.pl-page .site-main{color:var(--pl-text)}
.pl-wrap{width:calc(100% - 2*var(--edge));max-width:1440px;margin-inline:auto}
.pl-mono{font:500 12px/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}
.pl-h2{margin:0;font:800 clamp(30px,3.8vw,48px)/1.08 var(--f-head);letter-spacing:-.02em;color:var(--c-primary)}
.pl-h2 em,.pl__h1 em{font:italic 400 1.08em/1 var(--f-serif);letter-spacing:0;color:var(--c-accent)}
.pl-arr{width:18px;height:18px;flex:none;transition:transform .35s var(--ease-out)}
.btn:hover .pl-arr{transform:translateX(4px)}

/* ---------- Layout: χάρτης | πάνελ ---------- */
.pl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,580px);align-items:start}
.pl__map{position:sticky;top:var(--pl-top);height:calc(100vh - var(--pl-top));height:calc(100svh - var(--pl-top));z-index:0;isolation:isolate}
.pl__canvas{position:absolute;inset:0}
.pl__legend{position:absolute;left:20px;bottom:20px;z-index:500;margin:0;padding:10px 16px;border-radius:var(--pill);background:rgb(255 255 255 / .9);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--c-primary);box-shadow:0 8px 20px -12px rgb(17 61 72 / .45);pointer-events:none}
.pl__panel{position:relative;z-index:1;min-height:calc(100vh - var(--pl-top));padding:clamp(32px,4vw,52px) clamp(24px,3.6vw,52px) clamp(48px,5vw,72px);background:#fff;box-shadow:-24px 0 50px -40px rgb(17 61 72 / .5)}
.pl__panel .breadcrumbs{margin:0 0 18px;font:500 12px/1.4 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--pl-muted)}
.pl__panel .breadcrumbs a{color:inherit}
.pl__panel .breadcrumbs a:hover{color:var(--c-accent);text-decoration:none}
.pl__kick{margin:0 0 14px;color:var(--pl-ink)}
.pl__h1{margin:0;font:800 clamp(38px,4.2vw,58px)/1.04 var(--f-head);letter-spacing:-.025em;color:var(--c-primary);text-wrap:balance}
.pl__lead{margin:18px 0 0;max-width:46ch;font-size:18px;line-height:1.6}

/* ---------- Χάρτης: pins ---------- */
.pl-pin{position:relative;cursor:pointer}
.pl-pin i{position:absolute;left:-8px;top:-8px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--c-accent);box-shadow:0 2px 6px rgb(0 0 0 / .25);transition:background .25s,transform .25s var(--ease-out)}
.pl-pin b{position:absolute;left:-8px;top:-8px;width:16px;height:16px;display:grid;place-items:center;font:800 9px/1 var(--f-head);color:#fff;opacity:0;transition:opacity .2s}
.pl-pin span{position:absolute;left:13px;top:-12px;white-space:nowrap;padding:4px 10px;border-radius:var(--pill);background:#fff;color:var(--c-primary);font:700 12px/1.2 var(--f-head);box-shadow:0 6px 14px -8px rgb(17 61 72 / .5);transition:background .25s,color .25s,opacity .25s}
.pl-pin--l span{left:auto;right:13px}
.pl-pin--minor span{opacity:0;pointer-events:none}
.pl-pin:hover span,.pl-pin.is-on span{opacity:1}
.pl-pin:hover i{transform:scale(1.2)}
.pl-pin.is-on i{background:var(--c-accent);transform:scale(1.4)}
.pl-pin.is-on b{opacity:1}
.pl-pin.is-on span{background:var(--c-primary);color:#fff}
.pl-pin--home{cursor:default}
.pl-pin--home i{background:var(--c-primary);border-color:#fff;transform:scale(1.2)}
.pl-pin--home span{left:4px;top:13px;background:var(--c-primary);color:#fff} /* κάτω-δεξιά από το pin (θάλασσα): δεν πέφτει πάνω σε Sulfur Mines / Sykia Cave */
.pl-line{transition:stroke-dashoffset 1s var(--ease-out)}

/* ---------- Φόρμα ---------- */
.pl-form{position:relative;margin-top:8px}
.pl-fs{border:0;padding:0;margin:clamp(30px,3.4vw,40px) 0 0;min-width:0}
.pl-legend{display:flex;align-items:center;padding:0;margin-bottom:16px;font:700 20px/1.2 var(--f-head);color:var(--c-primary)}
.pl-n{display:inline-grid;place-items:center;min-width:34px;height:24px;margin-right:10px;padding:0 8px;border-radius:var(--pill);background:var(--c-tint);color:var(--c-primary);font:500 11px/1 var(--f-mono)}
.pl-side{margin:18px 0 8px;color:var(--pl-muted)}
.pl-legend+.pl-side{margin-top:0}
.pl-stops{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pl-stop{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 22px;gap:12px;align-items:center;padding:7px 12px 7px 7px;border:1.5px solid var(--c-border);border-radius:14px;background:#fff;cursor:pointer;transition:border-color .2s,background .2s}
.pl-stop:hover{border-color:var(--c-sky)}
.pl-stop input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.pl-stop:has(input:focus-visible){outline:2px solid var(--c-accent);outline-offset:2px}
.pl-stop__img{width:44px;height:44px;border-radius:10px;object-fit:cover}
.pl-ph{display:grid;place-items:center;background:linear-gradient(160deg,#1b8fbf,#0b4f6c);color:#d8eef6;font:500 7.5px/1.3 var(--f-mono);letter-spacing:.04em;text-align:center}
.pl-stop__t{min-width:0}
.pl-stop__t strong{display:block;font:700 15px/1.2 var(--f-head);color:var(--c-primary)}
.pl-stop__t small{display:block;font-size:12.5px;line-height:1.35;color:var(--pl-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-stop__n{display:grid;place-items:center;width:22px;height:22px;border:1.5px solid var(--c-border);border-radius:50%;color:#fff;font:800 11px/1 var(--f-head);font-style:normal;transition:background .2s,border-color .2s}
.pl-stop:has(input:checked){border-color:var(--c-accent);background:#f3fafe}
.pl-stop:has(input:checked) .pl-stop__n{background:var(--c-accent);border-color:var(--c-accent)}

.pl-sum{margin-top:18px;padding:20px 22px;border-radius:16px;background:var(--c-primary);color:#cfe3ea}
.pl-sum .pl-mono{margin:0;color:#7fc2df}
.pl-sum__route{margin:6px 0 14px;font:600 15px/1.5 var(--f-head);color:#fff}
.pl-sum__route b{font-weight:600;color:#7fc2df}
.pl-sum__met{display:flex;flex-wrap:wrap;gap:12px 28px;padding-top:14px;border-top:1px solid rgb(255 255 255 / .14)}
.pl-sum__met strong{display:block;font:800 22px/1.1 var(--f-head);color:#fff}
.pl-sum__met span{font-size:13px}

.pl-seg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:5px;border-radius:16px;background:var(--c-bg)}
.pl-seg label{position:relative;cursor:pointer}
.pl-seg input,.pl-chip input{position:absolute;opacity:0;width:1px;height:1px}
.pl-seg span{display:block;padding:10px 6px;border-radius:12px;text-align:center;font:700 14px/1.2 var(--f-head);color:var(--c-primary);transition:background .2s,box-shadow .2s}
.pl-seg small{display:block;margin-top:2px;font:500 12px/1.3 var(--f-body);color:var(--pl-muted)}
.pl-seg input:checked+span{background:#fff;box-shadow:0 4px 12px -6px rgb(17 61 72 / .35)}
.pl-seg input:focus-visible+span,.pl-chip input:focus-visible+span{outline:2px solid var(--c-accent);outline-offset:2px}
.pl-chips{display:flex;flex-wrap:wrap;gap:8px}
.pl-chip{position:relative;cursor:pointer}
.pl-chip span{display:inline-flex;align-items:center;padding:10px 18px;border:1.5px solid var(--c-border);border-radius:var(--pill);background:#fff;font:600 15px/1.2 var(--f-head);color:var(--c-primary);transition:border-color .2s,background .2s,color .2s}
.pl-chip:hover span{border-color:var(--c-sky)}
.pl-chip input:checked+span{border-color:var(--c-primary);background:var(--c-primary);color:#fff}

.pl-fld{display:grid;gap:6px;align-content:start;min-width:0;margin-top:16px}
.pl-lbl{font:500 11px/1.3 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pl-muted)}
.pl-form input:not([type=checkbox]):not([type=radio]),.pl-form select,.pl-form textarea{width:100%;height:52px;padding:0 16px;border:1.5px solid var(--c-border);border-radius:12px;background:#fff;font:400 16px/1.4 var(--f-body);color:var(--c-primary);transition:border-color .2s,box-shadow .2s}
.pl-form textarea{height:auto;min-height:96px;padding:14px 16px;line-height:1.5;resize:vertical}
.pl-form input:focus,.pl-form select:focus,.pl-form textarea:focus{outline:0;border-color:var(--c-accent);box-shadow:0 0 0 4px rgb(0 148 217 / .12)}
.pl-form ::placeholder{color:#9aa7ae}
.pl-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:14px}
.pl-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.pl-grid .pl-fld:nth-child(-n+2){margin-top:0}
.pl-fld--full{grid-column:1/-1}
.pl-step{justify-self:start;display:inline-flex;align-items:center;height:52px;border:1.5px solid var(--c-border);border-radius:var(--pill);background:#fff}
.pl-step button{width:46px;height:100%;border:0;background:none;font:600 22px/1 var(--f-head);color:var(--c-primary);cursor:pointer}
.pl-form .pl-step input[type=number]{width:44px;height:100%;padding:0;border:0;border-radius:0;text-align:center;font:700 18px/1 var(--f-head);-moz-appearance:textfield;box-shadow:none}
.pl-step input::-webkit-inner-spin-button,.pl-step input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pl-submit{width:100%;margin-top:28px;padding-block:20px}
.pl-foot{margin:14px 0 0;font-size:14px;text-align:center;color:var(--pl-muted)}
.pl-form .form__notice{margin:24px 0 0}

/* Μετά την αποστολή */
.pl-sent{margin-top:32px;padding:clamp(28px,4vw,40px);border-radius:20px;background:var(--c-bg);text-align:center}
.pl-stamp{display:inline-grid;place-items:center;width:120px;height:120px;margin-bottom:18px;border:2px dashed var(--c-accent);border-radius:50%;color:var(--pl-ink);font:500 11px/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;transform:rotate(-8deg)}
.pl-sent p{max-width:40ch;margin:12px auto 0}
.pl-sent__route{font:600 15px/1.5 var(--f-head);color:var(--c-primary)}
.pl-sent .btn{margin-top:22px}

/* ---------- Ιδέες ---------- */
.pl-ideas{padding-block:clamp(56px,8vw,104px);background:var(--c-bg)}
.pl-ideas__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 32px;margin-bottom:clamp(28px,4vw,44px)}
.pl-ideas__head p{margin:0}
.pl-ideas__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
/* Boarding pass (ίδιο με αρχική/blog) */
.pl-ideas .lg-mono{font:500 12px/1.5 var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.pl-ideas .lg-arr{width:18px;height:18px;flex:none}
.hx-tk{--cut:230px;filter:drop-shadow(0 18px 30px rgb(17 61 72 / .12));transition:transform .5s var(--ease-out),filter .5s}
.hx-tk:hover{transform:translateY(-6px) rotate(-.4deg);filter:drop-shadow(0 26px 40px rgb(17 61 72 / .22))}
.hx-tk__link{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:22px;overflow:hidden;color:inherit;
	-webkit-mask:radial-gradient(circle 13px at 0 var(--cut),#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 13px at 100% var(--cut),#0000 98%,#000) right/51% 100% no-repeat;
	mask:radial-gradient(circle 13px at 0 var(--cut),#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 13px at 100% var(--cut),#0000 98%,#000) right/51% 100% no-repeat}
.hx-tk__link:hover{color:inherit;text-decoration:none}
.hx-tk__media{position:relative;height:var(--cut);overflow:hidden;background:var(--c-tint)}
.hx-tk__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.hx-tk:hover .hx-tk__media img{transform:scale(1.07)}
.hx-tk__tags{position:absolute;top:14px;left:14px;display:flex;flex-wrap:wrap;gap:6px}
.hx-tk__tags span{padding:7px 12px;border-radius:var(--pill);background:rgb(17 61 72 / .6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font:500 12px/1 var(--f-body)}
.hx-tk__stub{display:grid;gap:16px;flex:1;padding:24px 22px 22px;border-top:2px dashed var(--pl-line)}
.hx-tk__route{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:12px}
.hx-tk__route small{display:block;color:var(--pl-muted)}
.hx-tk__route b{font:700 15px/1.2 var(--f-head);color:var(--c-primary)}
.hx-tk__route .r{text-align:right}
.hx-tk__path{position:relative;height:22px;margin-bottom:3px}
.hx-tk__path::before{content:"";position:absolute;left:0;right:0;bottom:4px;border-bottom:2px dotted rgb(0 148 217 / .45)}
.hx-tk__ship{position:absolute;left:0;bottom:2px;width:24px;color:var(--c-accent);transition:left 1.4s var(--ease-out)}
.hx-tk:hover .hx-tk__ship{left:calc(100% - 24px)}
.hx-tk__title{margin:0;font:800 21px/1.2 var(--f-head);letter-spacing:-.01em;color:var(--c-primary)}
.hx-tk__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto}
.hx-tk__foot dl{display:flex;gap:22px;margin:0}
.hx-tk__foot dt{color:var(--pl-muted)}
.hx-tk__foot dd{margin:2px 0 0;font:700 19px/1.1 var(--f-head);color:var(--c-primary);font-variant-numeric:tabular-nums}
.hx-tk__foot dd small{font:500 13px/1 var(--f-body);color:var(--pl-muted)}
.hx-tk__go{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;background:var(--c-accent);color:#fff;transition:background .3s,transform .5s var(--ease-out)}
.hx-tk:hover .hx-tk__go{background:var(--c-primary);transform:rotate(-45deg)}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
	.pl{grid-template-columns:minmax(0,1fr) minmax(0,500px)}
	.pl-ideas__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.pl-ideas__grid>:nth-child(3){display:none}
}
@media (max-width:900px){
	.pl{display:block}
	.pl__map{position:relative;top:0;height:46vh;min-height:300px;max-height:460px}
	.pl__panel{min-height:0;margin-top:-24px;border-radius:24px 24px 0 0;box-shadow:0 -18px 40px -30px rgb(17 61 72 / .5)}
	.pl__legend{bottom:40px}
}
@media (max-width:767px){
	.pl-ideas__grid{grid-template-columns:1fr;max-width:440px;margin-inline:auto}
	.pl-ideas__grid>:nth-child(3){display:block}
}
@media (max-width:560px){
	.pl__panel{padding-inline:var(--edge)}
	.pl-stops{grid-template-columns:1fr}
	.pl-seg{grid-template-columns:1fr 1fr}
	.pl-row{grid-template-columns:1fr 1fr}
	.pl-fld--guests{grid-column:1/-1}
	.pl-grid{grid-template-columns:1fr}
	.pl-grid .pl-fld:nth-child(2){margin-top:16px}
	.pl__legend{left:12px;right:12px;text-align:center}
}
@media (prefers-reduced-motion:reduce){.pl-line{transition:none}}
