/* SNAPSHOT pay site — same brand as the platform (snapshot-site/DESIGN-SYSTEM.md): navy→blue headers, pink CTA, white cards. */
:root{
  --navy:#0d1b6b; --bar:#13308f; --blue:#1736b5; --blue2:#1d47b8; --mark:#d6e6ff;
  --pink:#e8548e; --pink2:#c2185b; --pink-l:#ff7fb0; --pink-sub:#ffc2da; --pink-soft:#f9d3e3;
  --gold:#f4b740; --gold-bg:#fff3d6; --gold-tx:#8a5a00;
  --ok:#2ea86a; --ok-bg:#e6f7ee; --ok-tx:#13693b; --err-bg:#ffe8ef; --err-tx:#a3134a;
  --ink:#1f2a44; --muted:#5b6788; --bg:#f3f7ff; --card:#fff; --line:#dfe7fb; --soft:#e8eefc; --en-bg:#eaf1ff;
  --shade:rgba(13,27,107,.08);
  --f-brand:'Baloo 2','Cairo',system-ui,sans-serif; --f-ar:'Cairo',Tahoma,'Segoe UI',sans-serif; --f-en:'Source Sans 3','Segoe UI',Arial,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:400 15px/1.8 var(--f-ar);min-height:100vh;-webkit-tap-highlight-color:transparent}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--pink-l);outline-offset:2px}
.ltr{direction:ltr;unicode-bidi:isolate}
.muted{color:var(--muted)}
.wrap{max-width:520px;margin:0 auto;padding:0 16px}

/* header */
.hdr{background:linear-gradient(135deg,var(--navy),var(--blue2));color:#fff;padding:16px 0 34px}
.brand{display:flex;align-items:center;gap:8px;font:800 20px/1 var(--f-brand);letter-spacing:3px;direction:ltr;justify-content:flex-end}
.brand span{color:var(--pink-l);margin-left:-3px}
.brand svg{width:30px;height:30px;flex:none}
.hdr .top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.hdr h1{margin:14px 0 0;font:800 23px/1.4 var(--f-ar)}
.hdr .sub{margin:2px 0 0;font:600 14px var(--f-ar);color:var(--pink-sub)}
.pill{display:inline-block;background:var(--pink);color:#fff;padding:2px 12px;border-radius:99px;font:700 12px/1.8 var(--f-brand);letter-spacing:1px;direction:ltr}
.steps{display:flex;gap:6px;margin-top:14px}
.steps i{flex:1;height:5px;border-radius:9px;background:rgba(255,255,255,.25)}
.steps i.on{background:var(--pink-l)}
.content{margin-top:-18px;padding-bottom:40px;position:relative}

/* generic */
.card{background:var(--card);border-radius:18px;box-shadow:0 4px 18px var(--shade);padding:16px}
.stack{display:flex;flex-direction:column;gap:12px}
.sec-t{display:flex;align-items:center;gap:8px;margin:22px 2px 10px;font:800 17px/1.3 var(--f-ar);color:var(--navy)}
.sec-t::before{content:'';width:7px;height:20px;border-radius:4px;background:var(--pink)}
.btn{display:block;width:100%;border:0;border-radius:14px;padding:12px;background:linear-gradient(135deg,var(--pink),var(--pink2));color:#fff;font-weight:800;font-size:16px;box-shadow:0 6px 16px rgba(232,84,142,.3);text-align:center;text-decoration:none}
.btn.navy{background:linear-gradient(135deg,var(--bar),var(--navy));box-shadow:0 6px 16px rgba(13,27,107,.25)}
.btn.wa{background:linear-gradient(135deg,#25b860,#128c4a);box-shadow:0 6px 16px rgba(18,140,74,.28)}
.btn.ghost{background:var(--soft);color:var(--navy);box-shadow:none}
.btn.danger{background:var(--err-bg);color:var(--err-tx);box-shadow:none}
.btn.sm{display:inline-block;width:auto;padding:6px 14px;font-size:13px;border-radius:10px}
.btn[disabled]{opacity:.6;cursor:wait}
.btn + .btn{margin-top:10px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.row2 .btn + .btn{margin-top:0}
label.f{display:block;font-weight:700;color:var(--navy);font-size:14px;margin:14px 0 4px}
.inp{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:10px 14px;background:#fbfcff;outline:none}
.inp:focus{border-color:var(--blue);background:#fff}
.inp.lt{direction:ltr;text-align:left;font-family:var(--f-en)}
.inp.bad{border-color:var(--pink);background:#fff7fa}
.hint{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.6}
.chk{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--blue);margin-top:6px;cursor:pointer}
.chk input{width:18px;height:18px;accent-color:var(--pink)}
.err{background:var(--err-bg);color:var(--err-tx);border-radius:12px;padding:10px 12px;font-weight:700;font-size:14px;margin-top:12px}
.warnbox{background:var(--gold-bg);color:var(--gold-tx);border-radius:12px;padding:10px 12px;font-weight:700;font-size:14px}
.okbox{background:var(--ok-bg);color:var(--ok-tx);border-radius:12px;padding:10px 12px;font-weight:700;font-size:14px}
.chip{display:inline-flex;align-items:center;gap:4px;font:700 11px/1.9 var(--f-ar);padding:0 9px;border-radius:99px;background:var(--mark);color:var(--blue);white-space:nowrap}
.chip.pink{background:var(--pink-soft);color:var(--err-tx)}
.chip.gold{background:var(--gold-bg);color:var(--gold-tx)}
.chip.ok{background:var(--ok-bg);color:var(--ok-tx)}
.chip.grey{background:#edf0f7;color:var(--muted)}
.back{background:none;border:0;color:var(--blue);font-weight:800;padding:6px 0;margin-top:10px;display:inline-flex;align-items:center;gap:4px}
.back svg{width:18px;height:18px}

/* step 1: year cards (same as the platform's sign-up) */
.years{display:grid;gap:12px}
.ycard{display:flex;align-items:center;gap:14px;width:100%;text-align:right;background:var(--card);border:0;border-radius:20px;padding:16px;box-shadow:0 6px 22px rgba(13,27,107,.10);border-right:6px solid var(--bar)}
.ycard .ic{flex:none;width:56px;height:56px;border-radius:16px;display:grid;place-items:center;font:800 26px var(--f-brand);color:var(--bar);background:var(--soft)}
.ycard b{display:block;font:800 18px/1.4 var(--f-ar);color:var(--navy)}
.ycard small{display:block;font:600 12px var(--f-en);color:var(--muted);direction:ltr;text-align:right}
.ycard .go{margin-inline-start:auto;color:var(--blue);width:22px;height:22px;flex:none}
.ycard.c2{border-right-color:var(--pink)} .ycard.c2 .ic{background:var(--pink-soft);color:var(--pink2)} .ycard.c2 .go{color:var(--pink)}
.ycard.c3{border-right-color:var(--gold)} .ycard.c3 .ic{background:var(--gold-bg);color:var(--gold-tx)} .ycard.c3 .go{color:#d39410}
.ycard.c4{border-right-color:var(--ok)} .ycard.c4 .ic{background:var(--ok-bg);color:var(--ok-tx)} .ycard.c4 .go{color:var(--ok)}

/* step 3: what the transfer was for */
.opt{display:flex;align-items:center;gap:12px;width:100%;text-align:right;background:var(--card);border:2px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 4px 14px var(--shade)}
.opt .e{font-size:28px;flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--soft)}
.opt b{display:block;font:800 16px/1.4 var(--f-ar);color:var(--navy)}
.opt small{display:block;font-size:12px;color:var(--muted);line-height:1.5}
.opt .price{margin-inline-start:auto;font:800 20px/1 var(--f-brand);color:var(--pink2);white-space:nowrap}
.opt .price small{display:inline;font:700 12px var(--f-ar);color:var(--muted)}
.opt.on{border-color:var(--pink);background:#fff7fa;box-shadow:0 0 0 3px var(--pink-soft)}
.opt.green.on{border-color:var(--ok);background:#f3fbf6;box-shadow:0 0 0 3px var(--ok-bg)}
.opt.green .e{background:var(--ok-bg)}
.opt.red .e{background:var(--err-bg)}
.q{margin:18px 2px 8px;font:800 16px var(--f-ar);color:var(--navy)}
.sum{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;font-size:14px;margin:0}
.sum dt{color:var(--muted)} .sum dd{margin:0;font-weight:700;color:var(--navy)}

/* result */
.res{text-align:center}
.res .big{font-size:52px;line-height:1.2}
.res h2{margin:6px 0 4px;font:800 21px/1.4 var(--f-ar);color:var(--navy)}
.codebox{margin:14px 0 6px;background:linear-gradient(135deg,var(--navy),var(--blue2));color:#fff;border-radius:18px;padding:16px 10px;font:800 26px/1.2 var(--f-en);letter-spacing:3px;direction:ltr;-webkit-user-select:all;user-select:all}
.how{text-align:right;background:var(--en-bg);border-radius:14px;padding:10px 14px;margin-top:12px;font-size:14px}
.how ol{margin:4px 0 0;padding-inline-start:20px}
.dots::after{content:'';display:inline-block;width:1.2em;text-align:left;animation:dots 1.4s steps(4) infinite}
@keyframes dots{0%{content:''}25%{content:'.'}50%{content:'..'}75%{content:'...'}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.tg-h{display:flex;align-items:center;gap:8px;margin:0 0 10px;font:800 17px var(--f-ar);color:var(--navy)}
.tg-i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e3f2fd;font-size:17px}
.btn.tg-b{background:linear-gradient(135deg,#2aa3e0,#1c7fc0);box-shadow:0 6px 16px rgba(28,127,192,.28)}
.foot{text-align:center;font-size:12px;color:var(--muted);margin-top:26px}
