[hidden]{display:none!important}
*{box-sizing:border-box;margin:0}
html,body{background:var(--cream);color:var(--t1);font-family:var(--ui);-webkit-font-smoothing:antialiased;word-spacing:.06em}
body{min-height:100vh}
a{color:var(--forest3)}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select{font:inherit;color:inherit}
:root{--c-card:#2E8B62;--c-act:#3F7FD0;--c-fx:#D99A1E;--c-int:#D4553A;--c-tax:#8A63C7;--gain:#2E8B62;--cost:#D4553A}

/* top */
.top{display:flex;align-items:center;gap:24px;padding:14px 28px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(243,238,226,.92);backdrop-filter:blur(10px)}
.logo img{height:30px;display:block}
.who{display:flex;gap:6px;margin-left:auto}
.who button{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:999px;border:1px solid var(--line2);font-size:13px;font-weight:600;color:var(--t2);transition:.15s}
.who button i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:12px;color:var(--forest)}
.who button.on{background:var(--forest);border-color:var(--forest);color:var(--cream)}
.who button:not(.on):hover{border-color:var(--forest4);color:var(--t1)}
.links{display:flex;gap:16px;font-size:13px;font-weight:600}.links a{text-decoration:none;color:var(--t2)}.links a:hover{color:var(--forest)}

/* shell */
.shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;padding:24px 28px 60px;max-width:1440px;margin:0 auto}
.side{position:sticky;top:84px;align-self:start;display:grid;gap:16px}
.tabs{background:var(--forest);border-radius:22px;padding:10px;display:grid;gap:4px}
.tabs button{display:flex;gap:12px;align-items:center;text-align:left;padding:11px 12px;border-radius:14px;color:#CFE0D7;transition:.15s}
.tabs button svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.tabs button span{font-weight:700;font-size:14.5px;line-height:1.2}.tabs small{display:block;font-weight:500;font-size:11.5px;opacity:.7;margin-top:2px}
.tabs button:hover{background:rgba(255,255,255,.06);color:#fff}
.tabs button.on{background:var(--cream);color:var(--forest)}
.formula{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;font-size:12.5px;line-height:1.55;color:var(--t2)}
.formula b{display:block;color:var(--t1);font-size:13px;margin-bottom:4px}.formula em{font-style:normal;color:var(--clay);font-weight:700}
.formula .fine{margin-top:10px;color:var(--t3);font-size:11.5px}

/* shared */
.main{min-width:0}
.h{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px;flex-wrap:wrap}
.h h1{font-family:var(--display);font-weight:800;font-size:clamp(26px,2.6vw,36px);letter-spacing:-.025em;line-height:1.05}
.h p{color:var(--t2);font-size:14.5px;margin-top:6px;max-width:640px;line-height:1.5}
.panel{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:20px}
.k{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--t3);margin-bottom:10px;display:flex;justify-content:space-between;gap:10px}
.mono{font-family:var(--mono)}
.pos{color:#1F7A52}.neg{color:#B8432A}
.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid var(--line2);font-size:12.5px;font-weight:600;color:var(--t2);background:var(--card);transition:.15s}
.chip:hover{border-color:var(--forest4);color:var(--t1)}.chip.on{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:12px;background:var(--forest);color:var(--cream);font-weight:700;font-size:14px;transition:.15s}
.btn:hover{background:var(--forest3)}.btn.ghost{background:transparent;color:var(--forest);border:1px solid var(--line2)}
.note{font-size:12.5px;color:var(--t3);line-height:1.5}
.tip{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;padding:10px 12px;border-radius:12px;background:#FBF3DF;border:1px solid #F0DFB5;color:#6B4E12}
.tip.bonus{background:#EEF6F0;border-color:#BFDCCB;color:#1F5B40}
.tip svg{width:16px;height:16px;flex:none;margin-top:1px;stroke:currentColor;fill:none;stroke-width:2}
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:var(--forest);color:var(--cream);padding:12px 18px;border-radius:14px;font-size:13.5px;font-weight:600;z-index:50;box-shadow:0 18px 40px -16px rgba(0,0,0,.4);animation:up .3s both}
@keyframes up{from{opacity:0;transform:translate(-50%,10px)}}
@keyframes rise{from{opacity:0;transform:translateY(8px)}}
.rise{animation:rise .45s cubic-bezier(.2,.8,.2,1) both}

/* card art */
.cardart{position:relative;aspect-ratio:1.586;border-radius:14px;padding:12px 14px;color:#fff;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 10px 24px -14px rgba(16,38,30,.6)}
.cardart:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 100% 0%,rgba(255,255,255,.18),transparent 55%)}
.cardart .iss{font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:.75;font-weight:700;position:relative}
.cardart .nm{font-weight:800;font-size:15px;letter-spacing:-.01em;position:relative;line-height:1.15}
.cardart .chipm{width:26px;height:19px;border-radius:4px;background:linear-gradient(135deg,#F1D58E,#C99A3A);position:relative}
.cardart .row{display:flex;justify-content:space-between;align-items:flex-end;position:relative}
.cardart .typ{font-size:10px;font-weight:700;opacity:.8;letter-spacing:.06em;text-transform:uppercase}

/* PAY */
.pay{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.askbox{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:10px;align-items:end}
.field label{display:block;font-size:12px;font-weight:700;color:var(--t2);margin-bottom:6px}
.field input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line2);background:var(--card);font-size:15px;font-weight:600;outline:none}
.field input:focus{border-color:var(--forest4);box-shadow:0 0 0 3px rgba(31,90,68,.12)}
.amt{position:relative}.amt:before{content:"$";position:absolute;left:14px;bottom:13px;font-weight:700;color:var(--t3)}.amt input{padding-left:26px}
.toggles{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;align-items:center}
.quick{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.cls{margin-top:10px;font-size:12.5px;color:var(--t2);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.conf{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-weight:700;font-size:11.5px}
.conf.hi{background:#E3F1E9;color:#1F6B49}.conf.lo{background:#FBEBDD;color:#9A4A16}
.win{display:grid;grid-template-columns:230px minmax(0,1fr);gap:22px;align-items:center;margin-top:20px}
.win .big{font-family:var(--display);font-weight:800;font-size:44px;letter-spacing:-.03em;line-height:1}
.win .lbl{font-size:12px;font-weight:700;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
.win .say{font-size:15px;line-height:1.55;color:var(--t2);margin-top:10px}
.parts{margin-top:18px}
.prow{display:grid;grid-template-columns:170px minmax(0,1fr) 78px;gap:12px;align-items:center;padding:7px 0;font-size:13px}
.prow .lab b{display:block;font-weight:700}.prow .lab small{color:var(--t3);font-size:11.5px;line-height:1.35;display:block}
.prow .bar{position:relative;height:16px}
.prow .bar:before{content:"";position:absolute;left:50%;top:-4px;bottom:-4px;width:1px;background:var(--line2)}
.prow .bar i{position:absolute;top:2px;height:12px;border-radius:4px}
.prow .val{text-align:right;font-family:var(--mono);font-size:13px;font-weight:500}
.prow.total{border-top:1px solid var(--line);margin-top:6px;padding-top:12px;font-weight:800}
.opts{margin-top:18px;display:grid;gap:8px}
.opt{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px;border-radius:14px;border:1px solid var(--line);background:var(--card);text-align:left;transition:.15s}
.opt:hover{border-color:var(--line2)}.opt.best{border-color:var(--forest4);box-shadow:inset 0 0 0 1px var(--forest4)}
.opt.sel{background:#F7F3E8}
.opt .mini{width:60px;aspect-ratio:1.586;border-radius:6px}
.opt b{font-size:14px}.opt small{display:block;color:var(--t3);font-size:12px;margin-top:2px}
.opt .n{font-family:var(--mono);font-weight:600;font-size:14px}
.opt.off{opacity:.55}
/* phone */
.phone{position:sticky;top:96px;width:300px;height:610px;border-radius:46px;padding:11px;background:linear-gradient(160deg,#1E4A3A,#0C2A20);box-shadow:0 0 0 1px #2E6E55,0 40px 80px -30px rgba(12,42,32,.7)}
.phone .scr{height:100%;border-radius:36px;overflow:hidden;position:relative;background:radial-gradient(120% 70% at 50% 0%,#2B6B53,#0F3326 70%);color:#fff;padding:54px 14px 14px}
.phone .notch{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:86px;height:24px;border-radius:14px;background:#06140F;z-index:3}
.phone .time{text-align:center;font-size:56px;font-weight:300;letter-spacing:-.02em;line-height:1}
.phone .date{text-align:center;font-size:13px;opacity:.8;margin:6px 0 22px}
.notif{background:rgba(243,238,226,.94);color:var(--t1);border-radius:20px;padding:12px;display:grid;grid-template-columns:30px 1fr;gap:10px;animation:rise .5s both;box-shadow:0 10px 30px -12px rgba(0,0,0,.4)}
.notif img{width:30px;height:30px;border-radius:8px}
.notif .t{display:flex;justify-content:space-between;font-size:11px;color:var(--t3);font-weight:600}
.notif b{display:block;font-size:13.5px;margin:2px 0}.notif p{font-size:12.5px;line-height:1.4;color:var(--t2)}
.phone .wcard{margin-top:16px;animation:rise .6s .1s both}
.phone .tap{margin-top:12px;text-align:center;font-size:12px;opacity:.8}
.tapring{width:54px;height:54px;border-radius:50%;margin:10px auto 0;border:2px solid rgba(232,176,75,.8);display:grid;place-items:center;animation:pulse 1.8s infinite}
.tapring:before{content:"";width:18px;height:18px;border-radius:50%;background:var(--gold)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(232,176,75,.5)}70%{box-shadow:0 0 0 16px rgba(232,176,75,0)}100%{box-shadow:0 0 0 0 rgba(232,176,75,0)}}

/* REPLAY */
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:stretch}
.hero .lead{background:var(--forest);color:var(--cream);border-radius:22px;padding:26px;position:relative;overflow:hidden}
.hero .lead .k{color:#9FC2B1}
.hero .lead .num{font-family:var(--display);font-weight:800;font-size:clamp(46px,5vw,72px);letter-spacing:-.04em;line-height:1;color:var(--gold)}
.hero .lead p{font-size:15px;line-height:1.55;color:#D8E5DE;margin-top:12px;max-width:440px}
.hero .lead .pair{display:flex;gap:26px;margin-top:22px;flex-wrap:wrap}
.hero .lead .pair div small{display:block;font-size:11.5px;color:#9FC2B1;font-weight:600}.hero .lead .pair div b{font-family:var(--display);font-size:24px;font-weight:800}
.stack{display:flex;height:22px;gap:2px;margin:6px 0 14px}
.stack i{display:block;height:100%;border-radius:4px;min-width:3px;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.legend{display:grid;gap:8px}
.legend>div{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;font-size:13.5px}
.legend span{width:12px;height:12px;border-radius:3px}.legend small{display:block;color:var(--t3);font-size:12px;line-height:1.4}
.legend b{font-family:var(--mono);font-weight:600}
.grid2{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:22px;margin-top:22px;align-items:start}
.chart{position:relative}
.chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart .tt{position:absolute;pointer-events:none;background:var(--t1);color:#fff;border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.5;white-space:nowrap;transform:translate(-50%,-110%);opacity:0;transition:opacity .12s}
.chart .tt b{font-family:var(--mono)}
.keyline{display:flex;gap:16px;font-size:12.5px;color:var(--t2);margin-bottom:8px;flex-wrap:wrap}.keyline span{display:inline-flex;align-items:center;gap:6px}.keyline i{width:16px;height:3px;border-radius:2px;display:inline-block}
table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--t3);font-weight:400;padding:0 8px 8px}
td{padding:9px 8px;border-top:1px solid var(--line)}td.r,th.r{text-align:right}td.r{font-family:var(--mono)}
td .dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}

/* PLAN */
.plan{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.act{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px 18px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:10px}
.act .rk{width:42px;height:42px;border-radius:12px;background:var(--cream2);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:17px;color:var(--forest)}
.act:first-child .rk{background:var(--forest);color:var(--gold)}
.act h3{font-size:16px;font-weight:800;letter-spacing:-.01em;line-height:1.3}
.act .v{font-family:var(--display);font-weight:800;font-size:22px;color:var(--forest);white-space:nowrap;text-align:right}.act .v small{display:block;font-family:var(--ui);font-weight:600;font-size:11px;color:var(--t3)}
.act details{margin-top:8px}.act summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--forest3);list-style:none}.act summary::-webkit-details-marker{display:none}
.act .math{margin-top:8px;font-size:13px;line-height:1.6;color:var(--t2);white-space:pre-line;background:var(--cream);border-radius:12px;padding:10px 12px}
.rules{display:grid;gap:6px;margin-top:10px}
.rules div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;font-size:13px;padding:7px 10px;border-radius:10px;background:var(--cream)}
.rules b{font-weight:700}.rules span{font-family:var(--mono);color:#1F7A52}
.tidy{background:transparent;border:1px dashed var(--line2)}
.sumcard{position:sticky;top:96px;background:var(--forest);color:var(--cream);border-radius:22px;padding:22px}
.sumcard .k{color:#9FC2B1}.sumcard .num{font-family:var(--display);font-weight:800;font-size:46px;letter-spacing:-.03em;color:var(--gold);line-height:1}
.sumcard p{font-size:13.5px;line-height:1.55;color:#D8E5DE;margin-top:10px}

/* WALLET */
.wgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.wc{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:14px;display:grid;gap:12px}
.wc .facts{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:12.5px}
.wc .facts span{color:var(--t3)}.wc .facts b{text-align:right;font-family:var(--mono);font-weight:500}
.meter{display:grid;gap:5px;font-size:12px;color:var(--t2)}
.meter .tr{height:8px;border-radius:5px;background:var(--cream2);overflow:hidden}.meter .tr i{display:block;height:100%;border-radius:5px;background:var(--forest3);transition:width .8s}
.meter .tr i.warn{background:var(--cost)}.meter .tr i.gold{background:var(--gold2)}
.wc .cardart{aspect-ratio:2.05}
.wc .earn{font-size:12.5px;line-height:1.5;color:var(--t2)}
.switch{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12.5px;font-weight:600;color:var(--t2);padding-top:10px;border-top:1px solid var(--line)}
.sw{width:38px;height:22px;border-radius:999px;background:var(--line2);position:relative;transition:.2s;flex:none}
.sw:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.2s}
.sw.on{background:var(--cost)}.sw.on:after{left:19px}.sw.on.ok{background:var(--forest3)}

/* TERMS */
.terms{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.terms textarea{width:100%;min-height:200px;border-radius:14px;border:1px solid var(--line2);padding:14px;font:14px/1.6 var(--ui);background:var(--card);resize:vertical;outline:none}
.sent{padding:4px 6px;border-radius:6px;line-height:1.9}.sent.ok{background:#E3F1E9}.sent.flag{background:#FBEBDD}
.rulesout{display:grid;gap:8px}.rulesout .r{display:grid;grid-template-columns:120px 1fr;gap:10px;font-size:13px;padding:8px 10px;border-radius:10px;background:var(--cream)}
.rulesout .r span{color:var(--t3);font-weight:600}.rulesout .r b{font-family:var(--mono);font-weight:500}
.evals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}
.ev{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card)}
.ev b{font-family:var(--display);font-size:26px;font-weight:800}.ev small{display:block;font-size:12px;color:var(--t3);line-height:1.4}

@media (max-width:1100px){.pay{grid-template-columns:minmax(0,1fr)}.phone{position:relative;top:0;margin:0 auto}.plan{grid-template-columns:minmax(0,1fr)}.sumcard{position:relative;top:0}.hero,.grid2,.terms{grid-template-columns:minmax(0,1fr)}}
@media (max-width:820px){
  .top{flex-wrap:wrap;padding:12px 16px;gap:10px}.who{order:3;width:100%;margin:0;justify-content:space-between}.who button{flex:1;justify-content:center}.links{margin-left:auto}
  .shell{grid-template-columns:1fr;padding:16px 16px 60px;gap:16px}.side{position:relative;top:0}
  .tabs{grid-auto-flow:column;grid-auto-columns:1fr;padding:6px}.tabs button{flex-direction:column;gap:3px;text-align:center;padding:8px 2px}.tabs button span{font-size:11.5px}.tabs small,.formula{display:none}
  .askbox{grid-template-columns:1fr 1fr}.askbox .btn{grid-column:1/-1;justify-content:center}
  .win{grid-template-columns:1fr}.win .cardart{max-width:240px}
  .prow{grid-template-columns:110px minmax(0,1fr) 64px}.prow .lab small{display:none}
  .act{grid-template-columns:34px minmax(0,1fr)}.act .v{grid-column:2;text-align:left}.act .rk{width:34px;height:34px}
  .evals{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

select{appearance:none;font:600 12.5px var(--ui);color:var(--t1);background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2343544C' fill='none' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 10px center/10px;border:1px solid var(--line2);border-radius:10px;padding:6px 28px 6px 10px;letter-spacing:0;text-transform:none;cursor:pointer}

.cardart.ink{color:#1B1F24}.cardart.ink .chipm{background:linear-gradient(135deg,#F1D58E,#B98A2E)}
.seg{display:flex;align-items:center;gap:4px;background:var(--card);border:1px solid var(--line2);border-radius:999px;padding:4px;font-size:12.5px;font-weight:600;color:var(--t2)}
.seg span{padding:0 8px 0 10px}.seg button{padding:6px 14px;border-radius:999px;font-weight:700}.seg button.on{background:var(--forest);color:var(--cream)}
.wnotes summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--forest3);list-style:none}.wnotes summary::-webkit-details-marker{display:none}
.wnotes p{font-size:12px;line-height:1.5;color:var(--t2);margin-top:6px}
.wc .earn b{color:var(--t1);font-size:13.5px}
.factgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.fact{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--cream)}
.fact b{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.02em;color:var(--forest);display:block;line-height:1.1}
.fact p{font-size:13.5px;line-height:1.5;color:var(--t1);margin:6px 0 8px}.fact small,.qlist small{font-size:11.5px;color:var(--t3);line-height:1.4;display:block}
.qlist{display:grid;gap:10px}.qlist>div{padding:10px 12px;border-radius:12px;background:var(--cream)}.qlist p{font-size:13.5px;line-height:1.5;margin-bottom:4px}
.disc{margin-top:28px;padding-top:16px;border-top:1px solid var(--line);font-size:11.5px;line-height:1.55;color:var(--t3);max-width:980px}
td a{font-size:12px}

.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.k select{max-width:62%;text-overflow:ellipsis}.rulesout .r{grid-template-columns:minmax(80px,120px) minmax(0,1fr)}.rulesout .r b{overflow-wrap:anywhere}
.k select{min-width:0}
