/* ============================================================
   SHORTLISTED · P2P LIVE — the parcel & the ledger
   ============================================================ */
.pl-shell{max-width:1020px;margin:0 auto;padding:0 20px}
.pl-board{display:grid;grid-template-columns:minmax(300px,1fr) minmax(320px,1.1fr);gap:22px;align-items:start}
@media(max-width:880px){.pl-board{grid-template-columns:1fr}.pl-journey{order:2}.pl-board>div:last-child{order:1}}

/* ---------- journey lane ---------- */
.pl-journey{position:relative}
.pl-journey::before{content:'';position:absolute;left:21px;top:18px;bottom:18px;width:3px;background:#e0d7c3;border-radius:2px}
.pl-step{position:relative;display:flex;gap:14px;align-items:flex-start;padding:7px 0;opacity:.45;transition:opacity .3s}
.pl-step.here,.pl-step.done{opacity:1}
.pl-dot{flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid #c9bea4;display:flex;align-items:center;justify-content:center;font-size:17px;z-index:1;transition:all .25s}
.pl-step.done .pl-dot{border-color:var(--good);background:rgba(46,125,91,.1)}
.pl-step.here .pl-dot{border-color:var(--architect);box-shadow:0 0 0 5px rgba(61,91,196,.14);animation:plPulse 1.4s infinite}
@keyframes plPulse{50%{box-shadow:0 0 0 9px rgba(61,91,196,.08)}}
.pl-meta{padding-top:3px;min-width:0}
.pl-dept{display:inline-block;font-family:ui-monospace,Consolas,monospace;font-size:9px;letter-spacing:.14em;border-radius:999px;padding:2px 8px;margin-bottom:3px;font-weight:600}
.dept-req{background:rgba(61,91,196,.1);color:#33509e}
.dept-buy{background:rgba(176,119,36,.12);color:#8a5c1a}
.dept-sup{background:rgba(90,90,110,.1);color:#555568}
.dept-wh{background:rgba(46,125,91,.11);color:#256648}
.dept-ap{background:rgba(196,69,86,.1);color:#a03040}
.dept-tr{background:rgba(90,70,160,.1);color:#5a4692}
.pl-t{font-weight:600;font-size:14px;color:var(--ink);line-height:1.3}
.pl-journey .parcel{position:absolute;left:8px;font-size:20px;transition:top .7s cubic-bezier(.3,.8,.3,1);z-index:2;filter:drop-shadow(0 3px 4px rgba(60,48,24,.3))}

/* ---------- active panel ---------- */
.pl-panel{background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:20px 22px;box-shadow:0 14px 40px rgba(60,48,24,.08);margin-bottom:18px}
.pl-panel .k{font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:.22em;color:var(--mute);margin-bottom:6px}
.pl-panel h2{font-family:var(--serif);font-weight:700;font-size:21px;margin-bottom:10px}
.pl-panel p{font-size:14px;line-height:1.6;color:#4a4840;margin-bottom:10px}
.pl-panel p b{color:var(--ink)}
.pl-next{margin-top:6px}
.predict{border-top:1px dashed var(--line);padding-top:14px;margin-top:6px}
.predict .pk{font-family:ui-monospace,Consolas,monospace;font-size:10px;letter-spacing:.2em;color:#8a5c1a;margin-bottom:8px}
.predict .pq{font-family:var(--serif);font-weight:700;font-size:15.5px;margin-bottom:10px;color:var(--ink)}
.popt{display:block;width:100%;text-align:left;background:var(--bg);border:1.5px solid var(--line);border-radius:11px;padding:11px 14px;margin-bottom:8px;font-size:13.5px;line-height:1.5;color:#4a4840;cursor:pointer;font-family:var(--sans)}
.popt:hover{border-color:var(--mute)}
.popt.good{border-color:var(--good);background:rgba(46,125,91,.07);color:#245c44}
.popt.bad{border-color:var(--skeptic);background:rgba(196,69,86,.06);color:#8c3341}
.popt.off{opacity:.4;pointer-events:none}
.pfb{display:none;font-size:13px;line-height:1.6;border-radius:10px;padding:11px 13px;margin-top:4px}
.pfb.show{display:block}
.pfb.good{background:rgba(46,125,91,.07);border:1px solid rgba(46,125,91,.3);color:#245c44}
.pfb.bad{background:rgba(196,69,86,.06);border:1px solid rgba(196,69,86,.3);color:#8c3341}
/* junction buttons */
.jroute{display:block;width:100%;text-align:left;background:#fff;border:2px solid var(--line);border-radius:13px;padding:14px 16px;margin-bottom:10px;cursor:pointer;font-family:var(--sans);transition:transform .15s,border-color .15s}
.jroute:hover{transform:translateX(4px);border-color:#b07724}
.jroute .jt{font-weight:700;font-size:15px;color:var(--ink)}
.jroute .jd{font-size:12.5px;color:var(--dim);margin-top:3px;line-height:1.5}

/* ---------- the living ledger ---------- */
.ledger{position:sticky;top:76px}
@media(max-width:880px){.ledger{position:static}}
.ledger-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.ledger-head .lh-t{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;letter-spacing:.24em;color:var(--mute)}
.ledger-head .lh-s{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;color:var(--good)}
.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:480px){.tgrid{grid-template-columns:1fr}}
.tacct{background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;transition:border-color .3s,box-shadow .3s}
.tacct.hot{border-color:var(--architect);box-shadow:0 0 0 4px rgba(61,91,196,.1)}
.tacct.dead{border-color:rgba(46,125,91,.5)}
.tacct .ta-n{font-size:11.5px;font-weight:700;color:var(--ink);border-bottom:2px solid #3a362c;padding-bottom:5px;margin-bottom:6px;display:flex;justify-content:space-between}
.tacct .ta-n .ta-bal{font-family:ui-monospace,Consolas,monospace;font-size:11px;color:var(--dim);transition:color .3s}
.tacct.dead .ta-n .ta-bal{color:var(--good)}
.ta-cols{display:grid;grid-template-columns:1fr 1fr;gap:4px;min-height:26px}
.ta-cols .side{border-right:1px solid var(--line);padding-right:5px}
.ta-cols .side:last-child{border-right:0;padding-right:0;padding-left:5px}
.ta-cols .side .sh{font-family:ui-monospace,Consolas,monospace;font-size:8.5px;letter-spacing:.12em;color:#b3a888;margin-bottom:3px}
.leg{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;border-radius:6px;padding:3px 6px;margin-bottom:3px;animation:legIn .5s cubic-bezier(.2,1.3,.4,1)}
.leg.dr{background:rgba(61,91,196,.1);color:#33509e}
.leg.cr{background:rgba(196,69,86,.09);color:#a03040}
.leg.knock{text-decoration:line-through;opacity:.55}
@keyframes legIn{0%{transform:scale(.4) translateY(-8px);opacity:0}100%{transform:none;opacity:1}}
.ledger-note{font-size:11.5px;color:var(--mute);margin-top:10px;line-height:1.55;text-align:center}
/* finish */
.pl-finish{display:none;background:var(--panel);border:1px solid rgba(46,125,91,.4);border-radius:16px;padding:24px;margin-top:16px;text-align:center}
.pl-finish.show{display:block}
.pl-finish h3{font-family:var(--serif);font-style:italic;font-weight:900;font-size:24px;margin-bottom:10px}
.pl-finish p{font-size:14px;color:#4a4840;line-height:1.62;margin-bottom:8px;text-align:left}
.pl-finish .btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.pl-hud{display:flex;justify-content:space-between;font-family:ui-monospace,Consolas,monospace;font-size:11.5px;color:var(--mute);margin:0 0 14px}
.pl-hud b{color:var(--good)}
.pl-hud .miss{color:var(--skeptic)}
