a,
button,
[role="button"],
summary,
label[for],
label,
input[type="submit"],
input[type="button"],
input[type="checkbox"],
input[type="radio"],
select {
  cursor: pointer !important;
}
body.pc-public-choice-page{
  --paper:#F6F3EE; --card:#FFFFFF;
  --ink:#1D1D1A; --ink2:#5A5A52; --ink3:#8F8B81;
  --rose:#C2095A; --rose-dark:#A80B50; --rose-light:#FCEEF4; --rose-border:#EFB6D2;
  --gold1:#FEF3CE; --gold2:#FDE8AE; --gold-ink:#8A6A12; --gold-border:#EAD79A; --gold-dash:#D3AE52;
  --green:#2FA24F; --green-deep:#1F8A3E; --green-dark:#238C43; --green-bg:#EAF6EE;
  --indigo:#213A5E; --indigo-soft:#ECEFF9; --indigo-border:#D3DAF0;
  --amber:#DF7E12; --amber-bg:#FCF1E0; --amber-border:#F1CE97;
  --line:#E7E1D7;
  --r-lg:20px; --r-md:15px; --r-sm:12px;
}
.pc-app,.pc-app *{box-sizing:border-box;}
.pc-app *{margin:0;padding:0;}
body.pc-public-choice-page{
  margin:0; -webkit-text-size-adjust:100%; font-family:'Sora',system-ui,-apple-system,sans-serif; color:var(--ink);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  background:var(--paper); min-height:100dvh;
}
/* On tablet/desktop, present the flow as a centred paper column on an ambient field. */
@media (min-width:560px){
  body.pc-public-choice-page{ background:radial-gradient(1100px 760px at 50% -12%, #E7E2D8 0%, #DAD5CA 72%);
    display:flex; align-items:flex-start; justify-content:center; padding:20px 16px; }
}

/* ── App shell: full-bleed on phones, framed column on larger screens ── */
.pc-app{
  width:100%; background:var(--paper); position:relative; overflow:hidden; isolation:isolate;
  min-height:100dvh; font-size:14px;
  padding:
    calc(env(safe-area-inset-top) + 10px)
    calc(env(safe-area-inset-right) + 12px)
    calc(env(safe-area-inset-bottom) + 14px)
    calc(env(safe-area-inset-left) + 12px);
}
@media (min-width:560px){
  .pc-app{
    width:min(100%,404px); min-height:auto; border-radius:24px;
    padding:16px 16px 18px;
    box-shadow:0 30px 70px -30px rgba(30,24,14,.5),0 6px 20px -12px rgba(0,0,0,.25);
    border:1px solid rgba(0,0,0,.06);
  }
}

/* ── Shared top strip ── */
.pc-top{display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:7px;}
.pc-brand{display:flex; align-items:center; gap:7px; font-weight:700; font-size:16px; letter-spacing:-.01em; background:none; border:none; color:inherit; font-family:inherit; cursor:default;}
.pc-brand.is-link{cursor:pointer;}
.pc-brand .pin{width:24px;height:24px;border-radius:7px;background:var(--rose);display:flex;align-items:center;justify-content:center;flex:none;}
.pc-step{font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:.03em; color:var(--ink3);}
.pc-rule{border:none;border-top:1px solid var(--line); margin-bottom:2px;}

/* ── Views (states) ── */
.pc-view{animation:fadeUp .34s cubic-bezier(.22,1,.36,1);}
.pc-view[hidden]{display:none;}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ── Parcel card ── */
.pc-card{background:var(--card); border-radius:16px; padding:13px; box-shadow:0 12px 30px -20px rgba(30,24,14,.4); border:1px solid #F0ECE3; margin-top:8px;}
.pc-k{font-family:'JetBrains Mono',monospace; font-size:9px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink3); margin-bottom:5px;}
.pc-t{font-weight:700; font-size:17px; letter-spacing:-.02em; line-height:1.18;}
.pc-s{font-size:12.5px; color:var(--ink2); margin-top:3px; line-height:1.35;}
.pc-dash{border:none; border-top:1.5px dashed #DAD5C9; margin:10px 0;}

/* far card (see how far) */
.pc-far{width:100%; text-align:left; font-family:inherit; cursor:pointer;
  display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:9px; background:var(--indigo-soft); border:1px solid var(--indigo-border);
  border-radius:12px; padding:10px 11px; transition:transform .18s, box-shadow .18s;}
.pc-far:hover{transform:translateY(-1px); box-shadow:0 8px 20px -12px rgba(33,58,94,.35);}
.pc-far:active{transform:scale(.99);}
.pc-far .ic{display:flex; align-items:center; justify-content:center;}
.pc-far .ic svg{animation:bob 2.4s ease-in-out infinite; display:block;}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2.5px)}}
.pc-far .tx{display:block; min-width:0;}
.pc-far .tx .a{display:block; font-weight:700; font-size:13px; color:var(--indigo); line-height:1.25;}
.pc-far .tx .b{display:block; font-size:11px; color:var(--ink2); margin-top:2px; line-height:1.35;}
.pc-far .ch{margin-left:auto; color:var(--indigo); font-size:20px; flex:none; transition:transform .2s;}
.pc-far[aria-expanded="true"] .ch{transform:rotate(90deg);}

.pc-reveal{max-height:0; overflow:hidden; transition:max-height .55s cubic-bezier(.22,1,.36,1);}
.pc-reveal.open{max-height:720px; margin-top:12px;}
.pc-revwrap{background:var(--card); border:1px solid var(--line); border-radius:var(--r-md); padding:13px; box-shadow:0 10px 26px -18px rgba(28,20,10,.4);}
.pc-locating{display:flex; flex-direction:column; align-items:center; padding:16px 0 14px;}
.pc-radar{position:relative; width:54px; height:54px; margin-bottom:11px;}
.pc-radar .core{position:absolute; inset:22px; border-radius:50%; background:var(--rose);}
.pc-radar .ring{position:absolute; inset:0; border-radius:50%; border:2px solid var(--rose); opacity:0; animation:ping 1.6s ease-out infinite;}
.pc-radar .ring:nth-child(2){animation-delay:.5s;} .pc-radar .ring:nth-child(3){animation-delay:1s;}
@keyframes ping{0%{transform:scale(.35);opacity:.7}100%{transform:scale(1);opacity:0}}
.pc-locating .l1{font-weight:600; font-size:13.5px;} .pc-locating .l2{font-size:12px; color:var(--ink3); margin-top:2px;}
.pc-location-retry{margin-top:11px; border:1px solid var(--line); border-radius:9px; background:var(--card); color:var(--rose); padding:7px 12px; font-family:inherit; font-size:11.5px; font-weight:700; cursor:pointer;}
.pc-location-retry:hover{background:var(--rose-light);}
.pc-location-retry:focus-visible{outline:2px solid var(--rose); outline-offset:2px;}
.pc-rhead{opacity:0; transform:translateY(6px); transition:.4s;} .pc-rhead.in{opacity:1; transform:none;}
.pc-rhead .big{font-weight:700; font-size:19px; letter-spacing:-.02em;} .pc-rhead .big em{font-style:normal; color:var(--rose);}
.pc-rhead .sub{font-size:12px; color:var(--ink2); margin-top:3px; display:flex; align-items:center; gap:6px;}
.pc-rhead .sub .dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex:none;}
.pc-frict{margin-top:11px; background:var(--amber-bg); border:1px solid var(--amber-border); border-radius:var(--r-sm); padding:10px 6px 11px; opacity:0; transform:translateY(8px); transition:.45s;}
.pc-frict.in{opacity:1; transform:none;}
.pc-frict .fh{text-align:center; font-family:'JetBrains Mono',monospace; font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--amber); font-weight:600; margin-bottom:9px;}
.pc-frow{display:flex; align-items:center; justify-content:space-around;}
.pc-fs{display:flex; flex-direction:column; align-items:center; gap:1px; flex:1;}
.pc-fs .fi{font-size:15px;} .pc-fs .fv{font-size:16px; font-weight:700; letter-spacing:-.02em; margin-top:2px;} .pc-fs .fl{font-size:10px; color:var(--ink3);}
.pc-fdiv{width:1px; height:34px; background:var(--amber-border); flex:none;}
.pc-pitch{position:relative; margin-top:11px; border-radius:13px; overflow:hidden; padding:13px 15px; background:linear-gradient(158deg,var(--gold1) 0%,var(--gold2) 100%); border:1px solid var(--gold-border); box-shadow:0 8px 20px -14px rgba(231,164,0,.6); opacity:0; transform:translateY(10px); transition:.5s;}
.pc-pitch.in{opacity:1; transform:none;}
.pc-pitch::after{content:"";position:absolute;top:-40%;right:-8%;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.6),rgba(255,255,255,0) 70%);}
.pc-pitch .pe{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;position:relative;z-index:2;}
.pc-pitch .ph{font-weight:700;font-size:16px;letter-spacing:-.01em;margin-top:4px;position:relative;z-index:2;}
.pc-pitch .pl{font-size:12.5px;color:var(--ink2);margin-top:3px;position:relative;z-index:2;} .pc-pitch .pl b{color:var(--ink);}
.pc-pbul{display:flex;gap:6px;margin-top:10px;position:relative;z-index:2;flex-wrap:wrap;}
.pc-pbul span{font-size:11px;font-weight:600;color:var(--green-deep);background:rgba(255,255,255,.7);border:1px solid var(--gold-border);padding:4px 9px;border-radius:20px;}

/* ── choose ── */
.pc-choose{text-align:center; font-weight:600; font-size:14px; margin:12px 0 8px; color:var(--ink);}
.pc-cta{position:relative; width:100%; text-align:center; font-family:inherit; cursor:pointer; border:none;
  background:linear-gradient(180deg,#D01462 0%,var(--rose) 55%,var(--rose-dark) 100%); color:#fff; font-weight:700; font-size:15.5px; min-height:50px; padding:0 14px; border-radius:13px; text-decoration:none;
  display:flex; align-items:center; justify-content:center; gap:8px;
  box-shadow:0 14px 28px -12px rgba(194,9,90,.7), inset 0 1px 0 rgba(255,255,255,.2); transition:filter .18s, transform .18s;}
.pc-cta:hover{filter:brightness(1.04); transform:translateY(-1px);} .pc-cta:active{transform:scale(.99);}
.pc-cta.pulse{animation:pulse 1.9s ease-in-out infinite;}
@keyframes pulse{0%,100%{box-shadow:0 14px 28px -12px rgba(194,9,90,.7),0 0 0 0 rgba(194,9,90,.35),inset 0 1px 0 rgba(255,255,255,.2)}50%{box-shadow:0 14px 28px -12px rgba(194,9,90,.7),0 0 0 9px rgba(194,9,90,0),inset 0 1px 0 rgba(255,255,255,.2)}}
.pc-ribbon{position:absolute; top:-9px; right:14px; background:#FDCB58; color:var(--gold-ink); font-size:9.5px; font-weight:700; padding:3px 9px; border-radius:20px; box-shadow:0 3px 8px -3px rgba(231,164,0,.9); opacity:0; transform:translateY(4px) scale(.9); transition:.4s;}
.pc-ribbon.in{opacity:1; transform:none;}
.pc-alt{width:100%; min-height:44px; text-align:center; font-family:inherit; cursor:pointer; margin-top:8px; background:var(--card); color:var(--ink); font-weight:700; font-size:14px; padding:0 14px; border-radius:13px; border:1px solid #E6E1D7; text-decoration:none; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 16px -14px rgba(0,0,0,.4); transition:background .15s;}
.pc-alt:hover{background:#FBF9F5;}
.pc-note{text-align:center; font-size:11.5px; color:var(--ink3); margin-top:8px; line-height:1.45; padding-inline:4px;}

/* ── section heading ── */
.pc-h{font-weight:700; font-size:18px; letter-spacing:-.02em; line-height:1.2; margin:8px 0 10px;}

/* ── collect (walk-in) ── */
.pc-badge{display:flex; justify-content:center; margin-bottom:10px;}
.pc-badge span{background:var(--green-bg); color:var(--green-deep); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; padding:5px 13px; border-radius:20px;}
.pc-hero{background:var(--indigo); border-radius:16px; padding:14px; color:#fff; text-align:center; margin-bottom:10px;}
.pc-hero h2{font-weight:700; font-size:16px; letter-spacing:-.01em; display:flex; align-items:center; justify-content:center; gap:7px;}
.pc-hero p{color:#AEC1DC; font-size:12.5px; margin-top:3px; line-height:1.45;}
.pc-facts{background:var(--card); border:1px solid var(--line); border-radius:16px; padding:6px 16px; margin-bottom:10px;}
.pc-fact{display:grid; grid-template-columns:74px 1fr; gap:12px; padding:9px 0;}
.pc-fact + .pc-fact{border-top:1px solid #F1EDE4;}
.pc-fact .fk{color:var(--ink3); font-weight:600; font-size:12px;}
.pc-fact .fvv{color:var(--ink); font-weight:600; font-size:13px; line-height:1.35;}
.pc-duo{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:10px;}
.pc-btn{font-family:inherit; cursor:pointer; font-weight:700; font-size:14px; padding:13px; border-radius:13px; text-align:center; transition:.15s; border:1px solid transparent; text-decoration:none; display:block;}
.pc-btn.solid{background:var(--indigo); color:#fff;} .pc-btn.solid:hover{background:#182B47;}
.pc-btn.ghost{background:var(--card); color:var(--ink); border-color:#E6E1D7;} .pc-btn.ghost:hover{background:#FBF9F5;}
.pc-btn.disabled{background:#F1EEE8; color:var(--ink3); cursor:not-allowed;}
.pc-convert{width:100%; background:var(--rose-light); border:1.5px solid var(--rose-border); border-radius:13px; padding:12px; text-align:center; cursor:pointer; font-family:inherit; transition:.15s;}
.pc-convert:hover{border-color:var(--rose);}
.pc-convert b{color:var(--rose); font-weight:700; font-size:14px;}

/* ── checkout ── */
.pc-field{display:flex; align-items:center; gap:10px; min-height:50px; background:var(--card); border:1px solid #E6E1D7; border-radius:12px; padding:0 12px; margin-bottom:8px; box-shadow:0 6px 16px -16px rgba(0,0,0,.4);}
.pc-field .mk{color:var(--rose); flex:none; display:flex;}
.pc-field input{flex:1; min-width:0; border:none; outline:none; background:none; font-family:inherit; font-size:15px; font-weight:600; color:var(--ink); padding:13px 0;}
.pc-field input::placeholder{color:var(--ink3); font-weight:500;}
.pc-field-clear{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#F0ECE5;color:var(--ink2);cursor:pointer;font-family:inherit;transition:background .15s,color .15s,transform .15s;}
.pc-field-clear[hidden]{display:none;}
.pc-field-clear:hover{background:#E5DED3;color:var(--ink);}
.pc-field-clear:active{transform:scale(.94);}
.pc-field-clear:focus-visible{outline:2px solid var(--rose);outline-offset:2px;}
.pc-address-confirm{margin-bottom:8px;border:1px solid var(--indigo-border);border-radius:14px;background:linear-gradient(145deg,#F8FAFF,var(--indigo-soft));padding:13px;box-shadow:0 8px 22px -18px rgba(33,58,94,.55);}
.pc-address-confirm__icon{width:34px;height:34px;border-radius:11px;background:var(--card);color:var(--rose);display:flex;align-items:center;justify-content:center;float:left;margin-right:10px;box-shadow:0 5px 14px -10px rgba(0,0,0,.45);}
.pc-address-confirm__body{min-width:0;overflow:hidden;}
.pc-address-confirm__eyebrow{font-family:'JetBrains Mono',monospace;font-size:8.5px;line-height:1.3;letter-spacing:.1em;text-transform:uppercase;color:#667792;font-weight:700;}
.pc-address-confirm__title{font-size:14px;line-height:1.3;font-weight:800;color:var(--indigo);margin-top:3px;}
.pc-address-confirm__address{font-size:12px;line-height:1.45;color:var(--ink2);margin-top:4px;overflow-wrap:anywhere;}
.pc-address-confirm__actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;clear:both;padding-top:12px;}
.pc-address-confirm__actions button{min-height:38px;border-radius:10px;padding:8px 9px;font-family:inherit;font-size:11.5px;font-weight:750;cursor:pointer;transition:background .15s,border-color .15s,transform .15s;}
.pc-address-confirm__actions button:active{transform:scale(.99);}
.pc-address-confirm__primary{border:1px solid var(--rose);background:var(--rose);color:#fff;}
.pc-address-confirm__primary:hover{background:var(--rose-dark);border-color:var(--rose-dark);}
.pc-address-confirm__primary:disabled{cursor:wait;background:#D6D9E0;border-color:#D6D9E0;color:#737A86;}
.pc-address-confirm__secondary{border:1px solid #D8DFEC;background:var(--card);color:var(--indigo);}
.pc-address-confirm__secondary:hover{background:#F8FAFD;border-color:#BFCBE0;}
.pc-address-confirm__actions button:focus-visible{outline:2px solid var(--rose);outline-offset:2px;}
.pc-tiers{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-bottom:8px;}
.pc-tier{min-height:48px; background:var(--card); border:1.5px solid #E6E1D7; border-radius:12px; padding:6px 3px; text-align:center; cursor:pointer; transition:.15s; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1px;}
.pc-tier .tt{font-weight:700; font-size:13px;} .pc-tier .tm{font-size:10.5px; color:var(--ink3); margin:0; white-space:nowrap;}
.pc-tier.on{border-color:var(--rose); border-width:2px; background:var(--rose-light);} .pc-tier.on .tm{color:var(--rose);}
/* real radio-driven tiers (no JS): checked radio styles its sibling card */
.pc-tierwrap{display:block; cursor:pointer;}
.pc-tier-radio{position:absolute; width:1px; height:1px; opacity:0; pointer-events:none;}
.pc-tier-radio:checked + .pc-tier{border-color:var(--rose); border-width:2px; background:var(--rose-light);}
.pc-tier-radio:checked + .pc-tier .tm{color:var(--rose);}
.pc-tier-radio:focus-visible + .pc-tier{outline:2px solid var(--rose); outline-offset:2px;}

.pc-band{position:relative; border-radius:14px; padding:12px; background:linear-gradient(158deg,var(--gold1),var(--gold2)); border:1px solid var(--gold-border); margin-bottom:8px; overflow:hidden; box-shadow:0 6px 20px -14px rgba(231,164,0,.55);}
.pc-band::after{content:"";position:absolute;top:-40%;right:-8%;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.55),rgba(255,255,255,0) 70%);pointer-events:none;}
.pc-band .top{display:flex; align-items:flex-start; justify-content:space-between; gap:12px; position:relative; z-index:2;}
.pc-band .gl{font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-ink); font-weight:700;}
.pc-band .gs{display:flex; align-items:center; gap:6px; font-size:12px; color:#8F7A38; margin-top:6px;}
.pc-band .tick{width:15px;height:15px;border-radius:50%;background:var(--green);display:inline-flex;align-items:center;justify-content:center;flex:none;}
.pc-band .price{text-align:right;}
.pc-band .oldp{font-size:13px; color:var(--ink3); text-decoration:line-through; height:16px;}
.pc-band .gp{font-weight:700; font-size:22px; letter-spacing:-.02em; line-height:1;}
.pc-band .gp .gk{font-size:14px; color:var(--ink2); font-weight:600;}
.pc-pindrop{position:relative; z-index:2; margin-top:9px; width:100%; text-align:left; font-family:inherit; cursor:pointer; display:flex; align-items:center; gap:10px; background:rgba(255,255,255,.62); border:1.5px dashed var(--gold-dash); border-radius:11px; padding:10px; transition:transform .18s, background .18s, box-shadow .18s;}
.pc-pindrop:hover{background:rgba(255,255,255,.92); transform:translateY(-1px); box-shadow:0 6px 16px -10px rgba(231,164,0,.7);}
.pc-pindrop:active{transform:scale(.99);}
.pc-pindrop .gi{width:36px;height:36px;border-radius:10px;background:var(--rose);display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 3px 8px -2px rgba(194,9,90,.5);}
.pc-pindrop .gi svg{animation:bob 2.4s ease-in-out infinite;display:block;}
.pc-pindrop .gtxt{font-size:12px; color:var(--ink2); line-height:1.35; min-width:0;}
.pc-pindrop .gtxt b{font-size:13.5px; font-weight:700; color:var(--ink); display:block; margin-bottom:1px;}
.pc-pindrop .gg{margin-left:auto; color:var(--rose); font-weight:700; font-size:19px; flex:none; padding-left:4px; align-self:center;}
.pc-spot{display:none; align-items:center; gap:9px; margin-top:12px; position:relative; z-index:2; background:rgba(255,255,255,.82); border:1px solid var(--gold-border); border-radius:12px; padding:10px 12px;}
.pc-spot.show{display:flex; animation:pop .4s cubic-bezier(.2,1.3,.5,1);}
.pc-spot .smk{color:var(--rose); flex:none; display:flex;}
.pc-spot > span:nth-child(2){min-width:0;}
.pc-spot .s1{font-size:12.5px; font-weight:700;} .pc-spot .s2{font-size:11.5px; color:var(--ink2); margin-top:1px; overflow-wrap:anywhere;}
.pc-spot .sedit{margin-left:auto; flex:none; border:none; background:none; padding:6px 4px; font-family:inherit; font-size:11.5px; font-weight:700; color:var(--rose); cursor:pointer; border-radius:7px;}
.pc-spot .sedit:hover{background:var(--rose-light);}
.pc-spot .sedit:focus-visible{outline:2px solid var(--rose);outline-offset:1px;}
@keyframes pop{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}

.pc-mpesa{background:linear-gradient(165deg,#3AA95C 0%,var(--green) 55%,var(--green-dark) 100%); border-radius:15px; padding:12px; color:#fff; box-shadow:0 16px 30px -18px rgba(31,138,62,.9);}
.pc-mpesa .h{display:flex; align-items:center; justify-content:space-between; margin-bottom:8px;}
.pc-mpesa .h .ttl{font-weight:700; font-size:15px;}
.pc-mpesa .h .stk{font-family:'JetBrains Mono',monospace; font-size:10.5px; letter-spacing:.03em; background:rgba(255,255,255,.2); padding:4px 10px; border-radius:20px;}
.pc-mpesa input{width:100%; min-height:48px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.34); border-radius:10px; padding:0 12px; font-family:inherit; font-size:15px; letter-spacing:.04em; color:#fff; margin-bottom:10px;}
.pc-mpesa input::placeholder{color:rgba(255,255,255,.65);}
/* M-Pesa phone: separated country (flag + dial code) then number */
.pc-phone{display:flex; gap:7px; margin-bottom:8px; position:relative;}
.pc-phone .cc{display:flex; align-items:center; gap:6px; flex:none; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.34); border-radius:10px; padding:0 10px; color:#fff; font-family:inherit; font-size:15px; font-weight:600; cursor:pointer;}
.pc-phone .cc .fl{font-size:18px; line-height:1;}
.pc-phone .cc .cr{opacity:.7; font-size:10px; margin-left:1px;}
.pc-phone input{flex:1; width:auto; min-width:0; margin-bottom:0; letter-spacing:.08em;}
.pc-ccmenu{position:absolute; top:calc(100% + 6px); left:0; z-index:20; background:#fff; color:var(--ink); border-radius:12px; box-shadow:0 18px 40px -16px rgba(0,0,0,.4); overflow:hidden; min-width:220px; display:none;}
.pc-ccmenu.open{display:block; animation:fadeUp .18s ease;}
.pc-ccmenu button{display:flex; align-items:center; gap:10px; width:100%; text-align:left; background:none; border:none; padding:11px 13px; font-family:inherit; font-size:14px; cursor:pointer; color:var(--ink);}
.pc-ccmenu button + button{border-top:1px solid #F1EDE4;}
.pc-ccmenu button:hover{background:#F6F3EE;}
.pc-ccmenu .fl{font-size:18px;} .pc-ccmenu .nm{font-weight:600;}
.pc-ccmenu .dc{margin-left:auto; color:var(--ink3); font-family:'JetBrains Mono',monospace; font-size:12.5px;}
.pc-paybtn{width:100%; min-height:48px; background:#fff; color:var(--green-deep); font-weight:700; font-size:15px; text-align:center; border:none; border-radius:10px; padding:0 12px; cursor:pointer; font-family:inherit;}
.pc-quotehint{min-height:38px; display:flex; align-items:center; justify-content:center; text-align:center; font-size:11.5px; color:var(--ink3); padding:10px 8px; line-height:1.45;}
.pc-quotehint.calc{color:var(--rose); font-weight:600;}
.pc-paycluster{animation:fadeUp .34s cubic-bezier(.22,1,.36,1);}
.pc-farhost{margin-bottom:8px;}
.pc-free{text-align:center; margin-top:12px;}
.pc-free .fl1{color:var(--rose); font-weight:700; font-size:14px; cursor:pointer; background:none; border:none; font-family:inherit;}
.pc-free .fl2{font-size:11.5px; color:var(--ink3); margin-top:5px; line-height:1.45; padding:0 4px;}

/* ── doorstep payment success + live tracking ── */
.pc-doorstep{
  overflow:hidden;
  border-top:1px solid var(--line);
  background:var(--paper);
}
.pc-doorstep-panel{
  width:100%;
  max-width:430px;
  margin:0 auto;
  padding:16px 2px 6px;
}
.pc-doorstep-success{
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.pc-success{text-align:center; padding:0 4px;}
.pc-checkcircle{
  width:52px;
  height:52px;
  border-radius:50%;
  background:var(--green-bg);
  color:var(--green-deep);
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 10px;
}
.pc-checkcircle svg{width:28px;height:28px;display:block;}
.pc-success-h{
  max-width:380px;
  margin:0 auto;
  font-weight:700;
  font-size:18px;
  line-height:1.25;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.pc-success-p{
  max-width:370px;
  margin:5px auto 0;
  padding:0 6px;
  color:var(--ink2);
  font-size:12.5px;
  line-height:1.5;
  font-weight:500;
  text-wrap:pretty;
}
.pc-codecard{
  border-radius:17px;
  padding:17px 18px 16px;
  text-align:center;
  margin:14px 0 10px;
  box-shadow:0 14px 28px -22px rgba(18,38,66,.8);
}
.pc-codecard.navy{background:var(--indigo);color:#fff;}
.pc-codecard.light{background:var(--card);border:1px solid var(--line);}
.pc-codecard .lab{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  font-weight:600;
  letter-spacing:.16em;
  line-height:1.2;
  text-transform:uppercase;
  color:#C8D2E5;
}
.pc-codecard.light .lab{color:var(--ink3);}
.pc-codecard .val{
  margin:8px 0 7px;
  padding-left:.16em;
  font-family:'JetBrains Mono',monospace;
  font-size:42px;
  font-weight:700;
  line-height:1;
  letter-spacing:.16em;
  color:#CCFF00;
}
.pc-codecard .val.rose{color:var(--rose);}
.pc-codecard .hint{
  max-width:300px;
  margin:0 auto;
  color:#D5DDEC;
  font-size:12px;
  font-weight:600;
  line-height:1.4;
}
.pc-codecard.light .hint{color:var(--ink3);}
.pc-btn.rose{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:50px;
  border-color:var(--rose);
  background:var(--rose);
  color:#fff;
  box-shadow:0 12px 24px -18px rgba(194,9,90,.95);
}
.pc-btn.rose:hover{background:var(--rose-dark);border-color:var(--rose-dark);}
.pc-btn.rose:focus-visible,
.pc-doorstep-back:focus-visible{
  outline:3px solid rgba(194,9,90,.22);
  outline-offset:2px;
}
.pc-track-action{font-size:15px;}
.pc-doorstep-foot{
  max-width:360px;
  margin:8px auto 0;
  padding:0 8px;
  color:var(--ink3);
  font-size:11.5px;
  font-weight:500;
  line-height:1.45;
  text-align:center;
  text-wrap:pretty;
}

.pc-doorstep-live{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding-top:12px;
}
.pc-live-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 1px;
}
.pc-live-eyebrow{
  margin-bottom:2px;
  color:var(--ink3);
  font-family:'JetBrains Mono',monospace;
  font-size:9px;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.pc-live-head h1{
  font-size:18px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.025em;
}
.pc-live-count{
  display:flex;
  align-items:center;
  gap:6px;
  flex:none;
  border:1px solid var(--rose-border);
  border-radius:999px;
  background:var(--rose-light);
  padding:6px 9px;
  color:var(--rose-dark);
  font-family:'JetBrains Mono',monospace;
  font-size:10.5px;
  font-weight:700;
}
.pc-live-count .live-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--rose);
  box-shadow:0 0 0 0 rgba(194,9,90,.45);
  animation:beat 1.8s ease-out infinite;
}
@keyframes beat{
  0%{box-shadow:0 0 0 0 rgba(194,9,90,.42)}
  70%{box-shadow:0 0 0 7px rgba(194,9,90,0)}
  100%{box-shadow:0 0 0 0 rgba(194,9,90,0)}
}
.pc-runner{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:10px 11px;
  border:1px solid var(--rose-border);
  border-radius:14px;
  background:linear-gradient(135deg,#FFF8FB,var(--rose-light));
}
.pc-runner .av{
  width:38px;
  height:38px;
  border-radius:12px;
  background:var(--rose);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none;
  font-size:12px;
  font-weight:700;
  letter-spacing:.03em;
}
.pc-runner-copy{min-width:0;}
.pc-runner .rn{
  overflow:hidden;
  color:var(--ink);
  font-size:13px;
  font-weight:700;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pc-runner .rn span{color:#B87800;white-space:nowrap;}
.pc-runner .rs{
  margin-top:2px;
  color:var(--rose);
  font-size:11px;
  font-weight:600;
  line-height:1.3;
}
.pc-timeline-card{
  padding:13px 13px 10px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--card);
  box-shadow:0 12px 28px -25px rgba(30,24,14,.5);
}
.pc-timeline{
  position:relative;
  margin:0;
  padding-left:29px;
}
.pc-timeline::before{
  content:"";
  position:absolute;
  left:9px;
  top:9px;
  bottom:10px;
  width:2px;
  border-radius:2px;
  background:#E8E3D9;
}
.pc-tstep{
  position:relative;
  min-height:44px;
  padding:0 0 11px 2px;
}
.pc-tstep:last-child{min-height:22px;padding-bottom:0;}
.pc-tstep .node{
  position:absolute;
  z-index:1;
  left:-29px;
  top:0;
  width:20px;
  height:20px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--card);
}
.pc-tstep.done .node{
  background:var(--green-deep);
  color:#fff;
  font-size:10px;
  font-weight:800;
}
.pc-tstep.now .node{
  border:2px solid var(--rose);
  background:#fff;
  box-shadow:0 0 0 4px var(--rose-light);
}
.pc-tstep.now .node i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--rose);
}
.pc-tstep.todo .node{border:2px solid #DAD5CB;background:#F4F2ED;}
.pc-tstep .tl{
  padding-top:1px;
  color:var(--ink);
  font-size:13px;
  font-weight:700;
  line-height:1.25;
}
.pc-tstep.todo .tl{color:var(--ink3);}
.pc-tstep .tsub{
  margin-top:2px;
  color:var(--ink3);
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  line-height:1.35;
}
.pc-reassure{
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:10px 11px;
  border:1px solid #F0D88A;
  border-radius:14px;
  background:#FFF9E7;
}
.pc-reassure-icon{
  width:24px;
  height:24px;
  border-radius:8px;
  background:#FFE9A8;
  color:#8A5A00;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none;
  font-size:12px;
}
.pc-reassure p{
  color:#76520E;
  font-size:11.5px;
  font-weight:500;
  line-height:1.45;
}
.pc-doorstep-back{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  width:100%;
  min-height:40px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--card);
  color:var(--ink2);
  font-family:inherit;
  font-size:12px;
  font-weight:600;
  cursor:pointer;
}
.pc-doorstep-back:hover{background:#FBF9F5;color:var(--ink);}

@media (max-width:359px){
  .pc-doorstep-panel{padding-top:12px;}
  .pc-success-h{font-size:16.5px;}
  .pc-success-p{font-size:11.5px;}
  .pc-codecard{padding:15px 12px 14px;}
  .pc-codecard .val{font-size:36px;}
  .pc-codecard .hint{font-size:11px;}
  .pc-live-head h1{font-size:16.5px;}
  .pc-runner .rn{font-size:12px;}
}

/* ── pin-drop sheet ── */
.pc-scrim{position:fixed; inset:0; background:rgba(20,14,6,.44); opacity:0; pointer-events:none; transition:.28s; z-index:70;}
.pc-scrim.show{opacity:1; pointer-events:auto;}
.pc-sheet{position:fixed; left:50%; bottom:0; width:min(100%,440px); transform:translateX(-50%) translateY(103%); z-index:80; background:var(--paper); border-radius:26px 26px 0 0; transition:transform .42s cubic-bezier(.22,1,.36,1); box-shadow:0 -18px 50px -20px rgba(0,0,0,.4); max-height:94dvh; overflow-y:auto; padding-bottom:calc(env(safe-area-inset-bottom) + 6px);}
.pc-sheet.show{transform:translateX(-50%) translateY(0);}
.pc-grab{width:40px;height:5px;border-radius:3px;background:#D9D2C6;margin:9px auto 4px;}
.pc-sheet-h{padding:4px 20px 10px; display:flex; align-items:center; justify-content:space-between;}
.pc-sheet-h .t{font-weight:700; font-size:17px;}
.pc-sheet-h .x{font-size:20px; color:var(--ink3); cursor:pointer; line-height:1; padding:4px; background:none; border:none;}
.pc-sheet-sub{padding:0 20px 12px; font-size:12.5px; color:var(--ink2); line-height:1.5;}
.pc-sheet-sub b{color:var(--rose); font-weight:600;}
.pc-map{position:relative; height:260px; margin:0 16px; border-radius:16px; overflow:hidden; touch-action:none; background:linear-gradient(135deg,#EDEAE2,#E4E9E2); border:1px solid var(--line); cursor:grab;}
.pc-map:active{cursor:grabbing;}
.pc-mgrid{position:absolute; inset:0; background-image:linear-gradient(rgba(120,120,110,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(120,120,110,.09) 1px,transparent 1px); background-size:26px 26px;}
.pc-mroad{position:absolute; background:#F7F5EF; box-shadow:0 0 0 1px rgba(120,120,110,.1);}
.pc-mroad.ra{top:100px;left:-10px;right:-10px;height:15px;transform:rotate(-4deg);}
.pc-mroad.rb{top:0;bottom:0;left:64%;width:13px;transform:rotate(6deg);}
.pc-link{position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; z-index:3;}
.pc-link line{stroke:var(--rose); stroke-width:2; stroke-dasharray:5 5; opacity:.6;}
.pc-kmtag{position:absolute; z-index:4; transform:translate(-50%,-50%); background:var(--ink); color:#fff; font-family:'JetBrains Mono',monospace; font-size:10px; font-weight:600; padding:3px 8px; border-radius:20px; white-space:nowrap; pointer-events:none;}
.pc-station{position:absolute; z-index:4; transform:translate(-50%,-100%); pointer-events:none; text-align:center;}
.pc-station .dot{width:16px;height:16px;border-radius:50%;background:var(--indigo);border:3px solid #fff;box-shadow:0 3px 7px rgba(0,0,0,.3);margin:0 auto;}
.pc-station .lbl{margin-top:3px; font-size:9.5px; font-weight:600; color:var(--indigo); background:rgba(255,255,255,.85); padding:1px 6px; border-radius:6px; white-space:nowrap;}
.pc-mappin{position:absolute; z-index:6; transform:translate(-50%,-100%); cursor:grab; will-change:left,top;}
.pc-mappin.drag{cursor:grabbing;}
.pc-mappin .pulse{position:absolute; left:50%; top:100%; width:26px; height:12px; transform:translate(-50%,-2px); background:radial-gradient(ellipse,rgba(194,9,90,.28),rgba(194,9,90,0) 70%);}
.pc-mappin svg{display:block; filter:drop-shadow(0 5px 6px rgba(0,0,0,.32));}
.pc-hint{position:absolute; z-index:7; left:50%; bottom:12px; transform:translateX(-50%); background:rgba(20,14,6,.82); color:#fff; font-size:11px; font-weight:500; padding:6px 12px; border-radius:20px; white-space:nowrap; transition:.3s;}
.pc-hint.hide{opacity:0;}
.pc-readout{margin:13px 16px 0; display:flex; gap:10px;}
.pc-rd-addr{flex:1; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:10px 12px;}
.pc-rd-addr .rk,.pc-rd-price .rk{font-family:'JetBrains Mono',monospace; font-size:9px; letter-spacing:.1em; text-transform:uppercase; color:var(--ink3);}
.pc-rd-addr .rv{font-size:12.5px; font-weight:600; margin-top:3px; line-height:1.3;}
.pc-rd-price{width:130px; flex:none; border-radius:12px; padding:10px 12px; text-align:right; border:1px solid var(--gold-border); background:linear-gradient(160deg,var(--gold1),var(--gold2)); transition:box-shadow .25s;}
.pc-rd-price .rk{color:var(--gold-ink);}
.pc-rd-price .rv{font-size:20px; font-weight:700; margin-top:2px; letter-spacing:-.02em;}
.pc-rd-price .rd{font-size:11px; font-weight:600; margin-top:1px; height:14px;}
.pc-rd-price .rd.down{color:var(--green-deep);} .pc-rd-price .rd.up{color:#B4431C;}
.pc-rd-price.flash{box-shadow:0 0 0 3px rgba(253,203,88,.6);}
.pc-noteblk{margin:12px 16px 0;}
.pc-noteblk .lab{font-size:12.5px; font-weight:600; margin-bottom:7px;}
.pc-noteblk .lab span{color:var(--ink3); font-weight:400;}
.pc-chips{display:flex; gap:7px; flex-wrap:wrap;}
.pc-chip{font-size:12px; font-weight:500; padding:7px 11px; border-radius:20px; background:var(--card); border:1px solid var(--line); cursor:pointer; transition:.15s;}
.pc-chip.on{background:var(--indigo); color:#fff; border-color:var(--indigo);}
.pc-notefield{margin-top:9px; width:100%; border:1px solid var(--line); border-radius:11px; padding:10px 12px; font-family:inherit; font-size:13px; color:var(--ink); background:var(--card); resize:none;}
.pc-confirm{margin:14px 16px 8px; display:flex; gap:10px;}
.pc-confirm .cancel{flex:none; width:104px; text-align:center; padding:14px; border-radius:13px; border:1px solid var(--line); background:var(--card); font-weight:600; font-size:14px; color:var(--ink2); cursor:pointer; font-family:inherit;}
.pc-confirm .ok{flex:1; text-align:center; padding:14px; border-radius:13px; background:var(--rose); color:#fff; font-weight:700; font-size:14.5px; cursor:pointer; box-shadow:0 8px 20px -10px rgba(194,9,90,.8); border:none; font-family:inherit;}

/* ── toast + confetti ── */
.pc-toast{position:fixed; z-index:90; left:50%; transform:translateX(-50%) translateY(180%); bottom:calc(env(safe-area-inset-bottom) + 18px); width:min(410px,calc(100% - 32px));
  background:var(--ink); color:#fff; border-radius:14px; padding:13px 15px; display:flex; align-items:center; gap:11px; opacity:0; transition:.42s cubic-bezier(.2,1,.4,1);}
.pc-toast.show{transform:translateX(-50%) translateY(0); opacity:1;}
.pc-toast .tk{width:28px;height:28px;border-radius:8px;background:var(--green);display:flex;align-items:center;justify-content:center;flex:none;}
.pc-toast .m1{font-size:13px;font-weight:600;} .pc-toast .m2{font-size:11.5px;color:rgba(255,255,255,.7);margin-top:1px;}
.pc-toast .code{font-family:'JetBrains Mono',monospace;color:#CCFF00;font-weight:600;letter-spacing:.06em;}
.pc-confetti{position:fixed; inset:0; z-index:95; pointer-events:none; overflow:hidden;}
.pc-petal{position:absolute; top:-14px; width:9px; height:13px; border-radius:2px;}

/* ── directions dialog (simplified real map placeholder) ── */
.pc-dialog{border:none; padding:0; border-radius:20px; width:min(100%,420px); max-width:calc(100% - 24px); box-shadow:0 30px 80px -30px rgba(0,0,0,.6);}
.pc-dialog::backdrop{background:rgba(20,14,6,.55);}
.pc-dialog .dh{display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:1px solid var(--line);}
.pc-dialog .dh h2{font-weight:700; font-size:16px;} .pc-dialog .dh p{font-size:12.5px; color:var(--ink3); margin-top:2px;}
.pc-dialog .dx{width:36px;height:36px;border-radius:50%;background:#F1EEE8;border:none;font-size:18px;cursor:pointer;color:var(--ink2);}
.pc-dialog .dmap{height:300px; margin:14px; border-radius:16px; background:linear-gradient(135deg,#EDEAE2,#E4E9E2); border:1px solid var(--line); position:relative; overflow:hidden;}
.pc-dialog .dnav{display:block; margin:0 14px 16px; text-align:center; background:var(--indigo); color:#fff; font-weight:700; padding:15px; border-radius:14px; text-decoration:none;}

/* preview-only state jumper */

/* directions dialog body + real map, and pin-drop refine map */
.pc-dialog-body{padding:14px;}
.pc-dstatus{margin-bottom:12px; border-radius:12px; padding:10px 14px; font-size:13px; font-weight:600; background:#EAF1FB; color:#1E3A5F;}
.pc-dmap{height:260px; border-radius:16px; overflow:hidden; background:#EDEAE2; border:1px solid var(--line);}
.pc-dnav{display:block; margin-top:12px; text-align:center; background:var(--indigo); color:#fff; font-weight:700; padding:14px; border-radius:14px; text-decoration:none;}
.pc-pinmap{height:260px; margin:0 16px; border-radius:16px; overflow:hidden; background:#EDEAE2; border:1px solid var(--line);}
.pc-pindialog .pc-confirm{margin-top:14px;}

/* ui-switcher toggles the `hidden` class between panes (matches Tailwind's utility;
   declared here so the flow also works standalone in this extraction repo). */
.pc-app .hidden{display:none;}
/* M-Pesa STK notification slot (turbo_stream target) */
.pc-notify{position:fixed;top:calc(env(safe-area-inset-top) + 12px);right:12px;left:12px;z-index:100;max-width:400px;margin-inline:auto;pointer-events:none;}
.pc-mpesa-notification{
  --notify-accent:var(--indigo);--notify-bg:#F5F7FB;--notify-border:#D9E0EF;--notify-ink:var(--indigo);
  --notify-soft:#E8EDF6;--notify-muted:#53657D;--notify-divider:#DCE3EE;
  position:relative;overflow:hidden;pointer-events:auto;border:1px solid var(--notify-border);border-radius:16px;
  background:var(--notify-bg);color:var(--notify-ink);padding:12px;
  box-shadow:0 18px 42px -24px rgba(30,24,14,.55),0 8px 20px -18px rgba(0,0,0,.35);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  animation:pcNotificationIn .34s cubic-bezier(.22,1,.36,1);
  transition:opacity .28s ease,transform .28s ease;
}
.pc-mpesa-notification::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--notify-accent);}
.pc-mpesa-notification--pending,.pc-mpesa-notification--success{--notify-accent:#1A9A50;--notify-bg:#F0FAF4;--notify-border:#BFE5CC;--notify-ink:#195C36;--notify-soft:#DDF3E5;--notify-muted:#47715A;--notify-divider:#D4EBDD;}
.pc-mpesa-notification--error{--notify-accent:#C83A45;--notify-bg:#FFF3F3;--notify-border:#F0C3C7;--notify-ink:#842B33;--notify-soft:#F9DFE1;--notify-muted:#92525A;--notify-divider:#F0D7D9;}
.pc-mpesa-notification--warning{--notify-accent:var(--amber);--notify-bg:#FFF8E9;--notify-border:#EDD49E;--notify-ink:#86560E;--notify-soft:#F8EBCB;--notify-muted:#8E6A2E;--notify-divider:#EFE1BD;}
.pc-mpesa-notification--info,.pc-mpesa-notification--notice{--notify-accent:var(--indigo);--notify-bg:#F2F5FB;--notify-border:#CDD8EB;--notify-ink:var(--indigo);--notify-soft:#E2E8F3;--notify-muted:#586A82;--notify-divider:#DAE1ED;}
.pc-mpesa-notification__content{display:flex;align-items:flex-start;gap:10px;min-width:0;}
.pc-mpesa-notification__icon{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex:none;background:var(--notify-soft);color:var(--notify-accent);}
.pc-mpesa-notification__icon svg{width:20px;height:20px;}
.pc-mpesa-notification__body{min-width:0;flex:1;padding-top:1px;}
.pc-mpesa-notification__eyebrow{display:flex;align-items:center;gap:7px;min-width:0;font-family:'JetBrains Mono',monospace;font-size:8.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--notify-muted);}
.pc-mpesa-notification__badge{display:inline-flex;align-items:center;border-radius:999px;background:var(--notify-accent);color:#fff;padding:3px 6px;line-height:1;}
.pc-mpesa-notification__title{margin-top:5px!important;font-size:13.5px;font-weight:800;line-height:1.25;letter-spacing:-.01em;color:var(--notify-ink);}
.pc-mpesa-notification__message{margin-top:3px!important;font-size:11.5px;font-weight:500;line-height:1.45;color:var(--notify-muted);}
.pc-mpesa-notification__activity{display:flex;align-items:center;gap:7px;margin-top:8px;padding-top:8px;border-top:1px solid var(--notify-divider);font-size:10.5px;font-weight:600;color:var(--notify-muted);}
.pc-mpesa-notification__dots{display:flex;align-items:center;gap:3px;flex:none;}
.pc-mpesa-notification__dots i{width:4px;height:4px;border-radius:50%;background:var(--notify-accent);animation:pcMpesaDot 1.15s ease-in-out infinite;}
.pc-mpesa-notification__dots i:nth-child(2){animation-delay:.16s}.pc-mpesa-notification__dots i:nth-child(3){animation-delay:.32s}
.pc-mpesa-notification__dismiss{width:30px;height:30px;border:0;border-radius:9px;background:transparent;color:var(--notify-ink);opacity:.55;display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer;transition:background .18s,opacity .18s;}
.pc-mpesa-notification__dismiss:hover{background:var(--notify-soft);opacity:1;}
.pc-mpesa-notification__dismiss:focus-visible{outline:2px solid var(--notify-accent);outline-offset:2px;opacity:1;}
.pc-mpesa-notification__dismiss svg{width:17px;height:17px;}
.pc-mpesa-notification.is-dismissing{opacity:0;transform:translateY(-8px) scale(.98);pointer-events:none;}
@keyframes pcNotificationIn{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}
@keyframes pcMpesaDot{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-2px)}}

/* ── responsive density corrections ── */
.pac-container{z-index:9999!important; font-family:'Sora',system-ui,-apple-system,sans-serif;}
@media (max-width:359px){
  .pc-app{padding-left:10px;padding-right:10px;}
  .pc-step{display:none;}
  .pc-tier{gap:2px;padding-inline:2px;}
  .pc-tier .tt{font-size:12px;}
  .pc-tier .tm{font-size:9.5px;}
  .pc-pindrop .gtxt{font-size:11.5px;}
  .pc-pindrop .gtxt b{font-size:13px;}
}

@media (prefers-reduced-motion:reduce){ .pc-app *{animation:none!important; transition:none!important;} }

/* Location reveal: two metrics after removing the fare estimate. */
.pc-frow--two .pc-fs{min-width:0;padding-inline:10px;text-align:center;}
.pc-frow--two .pc-fs .fv{font-size:15px;line-height:1.2;}
.pc-frow--two .pc-fs .fl{max-width:130px;line-height:1.3;}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */
