/* =====================================================================================
   TEMA iOS 26 — Dashboard Toko Reseller (reseller-dashboard.html)
   [REDESIGN 2026-09-23] Menggantikan tema "m-banking" v2. Isi:
   - Token warna sistem Apple untuk mode TERANG & GELAP (atribut data-scheme di <html>,
     diatur skrip kecil di <head> + tema/ios-kit.js; default ikut pengaturan HP).
   - Nav bar kaca + large title, tab bar kaca mengambang (HP/tablet), sidebar gaya iPadOS
     (desktop), sheet "Lainnya", toast gaya Dynamic Island.
   - Kartu, tombol kapsul, field, switch, list ber-garis-rambut ala Settings iPhone.
   - Komponen Overview baru (kartu saldo gaya Wallet, widget, grafik SVG, cincin, medali).
   - Gaya layar kunci PIN / konfirmasi PIN / sheet transfer & tarik saldo (tema/reseller-dashboard.js).
   Semua selector diawali html.tm-rd -> kalau class itu dilepas dari <html>, tampilan lama kembali.
   ===================================================================================== */

/* ---------- 1. Token ---------- */
html.tm-rd{
  --blue:#007AFF;--green:#34C759;--red:#FF3B30;--orange:#FF9500;--yellow:#FFCC00;--indigo:#5856D6;
  --purple:#AF52DE;--pink:#FF2D55;--teal:#30B0C7;--mint:#00C7BE;--cyan:#32ADE6;--gray:#8E8E93;
  --tint:var(--blue);
  --bg-g:#F2F2F7;--cell:#FFFFFF;--nest:#F2F2F7;--side:#F2F2F7;
  --fill:rgba(118,118,128,.12);--fill2:rgba(118,118,128,.2);
  --label:#000;--label2:rgba(60,60,67,.62);--label3:rgba(60,60,67,.3);--sep:rgba(60,60,67,.17);
  --pos:#248A3D;--neg:#D70015;--warn:#C93400;
  --mat:rgba(255,255,255,.74);--mat-edge:rgba(255,255,255,.9);--mat-hi:rgba(255,255,255,.95);
  --shadow-float:0 14px 34px -12px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.05);
  --tint-fill:color-mix(in srgb,var(--tint) 13%,transparent);
  --ring1:#FA114F;--ring2:#57C200;--ring3:#00B2D6;--ring4:#AF52DE;
  /* nama variabel lama (dipakai style inline di halaman) */
  --bg:var(--bg-g);--bg2:var(--cell);--glass:var(--cell);--glass2:var(--fill);--line:var(--sep);
  --txt:var(--label);--mut:var(--label2);--vio:var(--tint);--vio2:color-mix(in srgb,var(--tint) 82%,#000);
  --cy:var(--teal);--amber:var(--orange);--r:22px;
  --font-b:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",system-ui,Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-d:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI Variable Display","Segoe UI",system-ui,Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-r:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,Roboto,sans-serif;
  --spring:cubic-bezier(.34,1.36,.5,1);--ease:cubic-bezier(.32,.72,0,1);
  color-scheme:light;
}
html.tm-rd[data-scheme="dark"]{
  --blue:#0A84FF;--green:#30D158;--red:#FF453A;--orange:#FF9F0A;--yellow:#FFD60A;--indigo:#5E5CE6;
  --purple:#BF5AF2;--pink:#FF375F;--teal:#40C8E0;--mint:#63E6E2;--cyan:#64D2FF;--gray:#98989D;
  --bg-g:#000;--cell:#1C1C1E;--nest:#2C2C2E;--side:#1C1C1E;
  --fill:rgba(118,118,128,.24);--fill2:rgba(118,118,128,.36);
  --label:#fff;--label2:rgba(235,235,245,.62);--label3:rgba(235,235,245,.3);--sep:rgba(84,84,88,.62);
  --pos:#30D158;--neg:#FF453A;--warn:#FF9F0A;
  --mat:rgba(30,30,32,.66);--mat-edge:rgba(255,255,255,.1);--mat-hi:rgba(255,255,255,.12);
  --shadow-float:0 18px 40px -12px rgba(0,0,0,.75);
  --ring1:#FA114F;--ring2:#A6FF00;--ring3:#00F0FF;--ring4:#BF5AF2;
  color-scheme:dark;
}
@property --ios-ang{syntax:'<angle>';inherits:false;initial-value:0deg}

/* ---------- 2. Dasar ---------- */
html.tm-rd body{background:var(--bg-g);color:var(--label);font-family:var(--font-b);font-size:15px;line-height:1.42;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}
html.tm-rd.ios-scheme-anim body,html.tm-rd.ios-scheme-anim .card,html.tm-rd.ios-scheme-anim .ios-w,html.tm-rd.ios-scheme-anim header{transition:background-color .45s ease,color .45s ease}
html.tm-rd .aurora{display:none!important}
html.tm-rd ::selection{background:color-mix(in srgb,var(--tint) 28%,transparent)}
html.tm-rd :focus-visible{outline:3px solid color-mix(in srgb,var(--tint) 55%,transparent);outline-offset:2px}
html.tm-rd .section:not(.on){display:none!important}
html.tm-rd .wrap{max-width:680px;padding:0 16px 28px}
html.tm-rd #app{container-type:inline-size;container-name:app}
html.tm-rd a{color:var(--tint)}
html.tm-rd .pos{color:var(--pos)}html.tm-rd .neg{color:var(--neg)}
html.tm-rd *{scrollbar-width:thin;scrollbar-color:var(--fill2) transparent}
html.tm-rd ::-webkit-scrollbar{width:8px;height:8px}html.tm-rd ::-webkit-scrollbar-thumb{background:var(--fill2);border-radius:8px}
@media(max-width:1023px){html.tm-rd body{padding-bottom:calc(104px + env(safe-area-inset-bottom))}}

/* ikon hasil konversi emoji */
html.tm-rd .ios-g{display:inline-flex;vertical-align:-.17em;line-height:1}
html.tm-rd .ios-g.l{margin-right:.34em}html.tm-rd .ios-g.t{margin-left:.3em}
html.tm-rd .c-g{color:var(--pos)}html.tm-rd .c-r{color:var(--neg)}html.tm-rd .c-o{color:var(--orange)}html.tm-rd .c-y{color:#F5B800}
html.tm-rd .c-p{color:var(--purple)}html.tm-rd .c-b{color:var(--tint)}html.tm-rd .c-m{color:var(--label3)}
html.tm-rd .msg .ios-g{color:inherit}
html.tm-rd .ios-emo{vertical-align:-.2em;margin-right:4px}
/* ubin ikon (gaya Settings) */
html.tm-rd .ios-tile{display:inline-grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:8px;color:#fff;
  background:linear-gradient(180deg,color-mix(in srgb,var(--t) 84%,#fff),var(--t))}
html.tm-rd .ios-tile .ios-ic{width:62%;height:62%}

/* ---------- 3. Nav bar + large title ---------- */
html.tm-rd header{position:sticky;top:0;z-index:40;margin:0 -16px 0;padding:calc(env(safe-area-inset-top) + 10px) 16px 10px;min-height:56px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;
  transition:background-color .3s ease,box-shadow .3s ease}
html.tm-rd.ios-scrolled header{background:var(--mat);-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);box-shadow:0 .5px 0 var(--sep)}
html.tm-rd header .brand{gap:10px;min-width:0}
html.tm-rd .logo{border-radius:50%;background:var(--tint);color:#fff;font-family:var(--font-r);font-weight:700;display:grid;place-items:center;overflow:hidden;box-shadow:none}
html.tm-rd .logo img{width:100%;height:100%;object-fit:cover;display:block}
html.tm-rd header .logo{width:34px;height:34px;font-size:15px}
html.tm-rd .storeTitle{font-family:var(--font-b);font-size:16px;font-weight:600;letter-spacing:-.3px;transition:opacity .2s}
html.tm-rd.ios-compact header .storeTitle{opacity:0}
html.tm-rd .ios-nav-title{position:absolute;left:50%;top:calc(env(safe-area-inset-top) + 10px);height:36px;max-width:56%;transform:translateX(-50%);
  display:flex;align-items:center;font-size:17px;font-weight:600;letter-spacing:-.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  opacity:0;transition:opacity .22s ease;pointer-events:none}
html.tm-rd.ios-compact .ios-nav-title{opacity:1}
html.tm-rd .tm-hdr-right{display:flex;align-items:center;gap:8px}
html.tm-rd .iconbtn,html.tm-rd .tm-lockbtn{width:36px;height:36px;border-radius:50%;border:0!important;background:var(--cell);color:var(--label);
  display:grid;place-items:center;cursor:pointer;position:relative;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:transform .4s var(--spring)}
html.tm-rd .iconbtn:active,html.tm-rd .tm-lockbtn:active{transform:scale(.88)}
html.tm-rd .iconbtn .ios-ic,html.tm-rd .tm-lockbtn svg{width:19px;height:19px}
html.tm-rd .notifBadge{background:var(--red);color:#fff;border:2px solid var(--bg-g);font-size:10.5px;font-weight:700;min-width:18px;height:18px;border-radius:9px;top:-4px;right:-4px}
html.tm-rd .ios-lt{padding:2px 2px 14px}
html.tm-rd .ios-lt-sub{font-size:13px;font-weight:600;color:var(--label2);letter-spacing:-.1px;min-height:17px}
html.tm-rd .ios-lt-title{font-family:var(--font-d);font-size:34px;line-height:41px;font-weight:700;letter-spacing:.2px;margin:0;color:var(--label)}
html.tm-rd #loading{min-height:52vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--label2);font-size:15px;border:0;background:none}
html.tm-rd #loading::before{content:'';width:26px;height:26px;border-radius:50%;border:3px solid var(--fill2);border-top-color:var(--label2);animation:iosSpin .8s linear infinite}

/* ---------- 4. Kartu & judul ---------- */
html.tm-rd .card{background:var(--cell);border:0!important;border-radius:24px;padding:18px 16px;margin-bottom:14px;box-shadow:none;scroll-margin-top:84px}
html.tm-rd[data-scheme="light"] .card{box-shadow:0 1px 2px rgba(0,0,0,.03)}
html.tm-rd .card h2{font-family:var(--font-d);font-size:19px;font-weight:700;letter-spacing:-.3px;line-height:1.25;color:var(--label);gap:10px;margin:0 0 12px}
html.tm-rd .card h2 > svg:first-child{width:30px!important;height:30px!important;padding:6.5px;box-sizing:border-box;border-radius:8px;color:#fff;stroke-width:2.2;flex:0 0 auto;
  background:linear-gradient(180deg,color-mix(in srgb,var(--sec,var(--tint)) 84%,#fff),var(--sec,var(--tint)))}
html.tm-rd .card > p[style*="font-size:12.5px"],html.tm-rd .card > p[style*="font-size:13px"]{font-size:14px!important;line-height:1.45!important;color:var(--label2)!important}
html.tm-rd #sec-overview{--sec:var(--blue)}html.tm-rd #sec-toko{--sec:var(--orange)}html.tm-rd #sec-harga{--sec:var(--green)}
html.tm-rd #sec-produk-saya{--sec:var(--teal)}html.tm-rd #sec-pesanan{--sec:var(--indigo)}html.tm-rd #sec-tiket{--sec:var(--red)}
html.tm-rd #sec-telegrambot{--sec:var(--cyan)}html.tm-rd #sec-customer{--sec:var(--pink)}html.tm-rd #sec-withdraw{--sec:var(--mint)}
html.tm-rd #sec-domain{--sec:var(--gray)}html.tm-rd #sec-tampilan{--sec:var(--purple)}html.tm-rd #sec-kustomisasi{--sec:var(--yellow)}
html.tm-rd .ios-card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
html.tm-rd .ios-card-h h2{margin:0!important}
html.tm-rd .ios-card-meta{font-size:13px;color:var(--label2);font-weight:500;white-space:nowrap}
html.tm-rd .ios-sub-h{font-size:13px;font-weight:600;color:var(--label2);margin:16px 0 2px}
html.tm-rd .ios-foot{font-size:12.5px;color:var(--label2);margin:12px 0 0;line-height:1.4}
html.tm-rd .empty{color:var(--label2);font-size:14px;padding:20px 8px;text-align:center;line-height:1.45}
html.tm-rd .loading{color:var(--label2)}

/* animasi masuk section */
@media(prefers-reduced-motion:no-preference){
  html.tm-rd .section.on{animation:iosFade .35s ease both}
  html.tm-rd .section.on > *{animation:iosRise .6s var(--ease) both}
  html.tm-rd .section.on > *:nth-child(2){animation-delay:.04s}html.tm-rd .section.on > *:nth-child(3){animation-delay:.08s}
  html.tm-rd .section.on > *:nth-child(4){animation-delay:.12s}html.tm-rd .section.on > *:nth-child(5){animation-delay:.16s}
  html.tm-rd .section.on > *:nth-child(n+6){animation-delay:.2s}
}

/* ---------- 5. Tombol ---------- */
html.tm-rd .btn{border:0;border-radius:999px;min-height:50px;padding:13px 20px;font-family:var(--font-b);font-size:17px;font-weight:600;letter-spacing:-.4px;
  display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;
  transition:transform .45s var(--spring),filter .2s,opacity .2s,background-color .2s}
html.tm-rd .btn-sm,html.tm-rd button.btn-sm{min-height:34px;padding:7px 15px;font-size:15px;letter-spacing:-.2px;border-radius:999px;display:inline-flex;align-items:center;
  justify-content:center;gap:6px;width:auto;cursor:pointer;font-family:var(--font-b);font-weight:600;border:0;transition:transform .45s var(--spring),filter .2s}
html.tm-rd .btn:active:not(:disabled),html.tm-rd .btn-sm:active:not(:disabled){transform:scale(.96);transition-duration:.12s}
html.tm-rd .btn:disabled,html.tm-rd .btn-sm:disabled{opacity:.42;cursor:default}
html.tm-rd .btn-primary{background:var(--tint)!important;color:#fff!important;box-shadow:none!important}
@media(hover:hover){html.tm-rd .btn-primary:hover:not(:disabled),html.tm-rd .btn-ghost:hover:not(:disabled){filter:brightness(1.06)}}
html.tm-rd .btn-ghost{background:var(--tint-fill);color:var(--tint);border:0!important;font-weight:600}
html.tm-rd .btn-danger{background:color-mix(in srgb,var(--red) 13%,transparent)!important;color:var(--red)!important;border:0!important}
html.tm-rd .btn .ios-ic,html.tm-rd .btn-sm .ios-ic{width:1.05em;height:1.05em}
html.tm-rd .copybtn{background:var(--tint-fill);color:var(--tint);border:0;border-radius:999px;padding:6px 13px;font-weight:600;font-size:13px;cursor:pointer;font-family:var(--font-b)}
html.tm-rd .stepper button{width:34px;height:34px;border-radius:50%;background:var(--fill)!important;border:0!important;color:var(--label)!important;display:grid;place-items:center}

/* ---------- 6. Field ---------- */
html.tm-rd label:not(.prod-toggle){font-size:13px;font-weight:600;color:var(--label2);margin:14px 2px 6px;letter-spacing:-.05px}
html.tm-rd input[type=text],html.tm-rd input[type=number],html.tm-rd input[type=password],html.tm-rd input[type=email],html.tm-rd input[type=tel],
html.tm-rd input[type=url],html.tm-rd input[type=search],html.tm-rd input[type=date],html.tm-rd input[type=datetime-local],html.tm-rd input:not([type]),
html.tm-rd select,html.tm-rd textarea{background-color:var(--fill)!important;border:0!important;border-radius:12px!important;color:var(--label)!important;
  font-family:var(--font-b);padding:11px 14px;min-height:44px;box-shadow:none;transition:box-shadow .2s,background-color .2s;outline:none}
html.tm-rd textarea{min-height:92px;line-height:1.45}
html.tm-rd input::placeholder,html.tm-rd textarea::placeholder{color:var(--label3)}
html.tm-rd input:focus,html.tm-rd select:focus,html.tm-rd textarea:focus{background-color:var(--cell)!important;box-shadow:0 0 0 1.5px var(--tint),0 0 0 5px color-mix(in srgb,var(--tint) 18%,transparent)!important}
html.tm-rd select{-webkit-appearance:none;appearance:none;padding-right:36px!important;cursor:pointer;background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:15px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238E8E93' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 9.5l4-4 4 4M8 14.5l4 4 4-4'/%3E%3C/svg%3E")!important}
@media(max-width:1023px){html.tm-rd input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]):not([type=range]),html.tm-rd select,html.tm-rd textarea{font-size:16px!important}}
html.tm-rd input[type=file]{font-size:13px;color:var(--label2);background:none!important;padding:0;min-height:0}
html.tm-rd input[type=file]::file-selector-button{border:0;border-radius:999px;background:var(--tint-fill);color:var(--tint);font-weight:600;padding:8px 14px;margin-right:10px;cursor:pointer;font-family:var(--font-b)}
html.tm-rd input[type=color]{border-radius:10px;border:0;background:var(--fill);padding:3px;cursor:pointer}
html.tm-rd input[type=checkbox],html.tm-rd input[type=radio]{accent-color:var(--tint)}
html.tm-rd input[type=range]{accent-color:var(--tint)}
html.tm-rd .token-field,html.tm-rd .linkbox{background:var(--nest)!important;border:0!important;border-radius:14px!important}

/* ---------- 7. Switch iOS ---------- */
html.tm-rd .toggle{width:51px;height:31px;border-radius:999px;background:var(--fill2);border:0;flex:0 0 auto;transition:background-color .25s ease}
html.tm-rd .toggle i{top:2px;left:2px;width:27px;height:27px;border-radius:999px;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.15),0 3px 1px rgba(0,0,0,.06);transition:left .38s var(--spring),width .2s ease}
html.tm-rd .toggle.on{background:var(--green)}
html.tm-rd .toggle.on i{left:22px}
html.tm-rd .toggle:active i{width:31px}html.tm-rd .toggle.on:active i{left:18px}
html.tm-rd .prod-toggle-track{width:51px;height:31px;border-radius:999px;background:var(--fill2);border:0}
html.tm-rd .prod-toggle-track::after{top:2px;left:2px;width:27px;height:27px;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.15);transition:transform .38s var(--spring)}
html.tm-rd .prod-toggle input:checked + .prod-toggle-track{background:var(--green)}
html.tm-rd .prod-toggle input:checked + .prod-toggle-track::after{transform:translateX(20px);background:#fff}

/* ---------- 8. Pesan, pill, tag ---------- */
html.tm-rd .msg{border-radius:14px;padding:12px 14px;font-size:14px;font-weight:500;line-height:1.42;position:relative;border:0!important}
html.tm-rd .msg.ok,html.tm-rd .msg.err{padding-left:42px}
html.tm-rd .msg.ok::before,html.tm-rd .msg.err::before{content:'';position:absolute;left:13px;top:12px;width:19px;height:19px;background:currentColor;
  -webkit-mask:var(--mi) center/contain no-repeat;mask:var(--mi) center/contain no-repeat}
html.tm-rd .msg.ok{background:color-mix(in srgb,var(--green) 14%,transparent)!important;color:var(--pos)!important;
  --mi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5a9.5 9.5 0 1 0 0 19 9.5 9.5 0 0 0 0-19zm4.6 7.1-5.3 5.7a1 1 0 0 1-1.4.05l-2.7-2.5a1 1 0 1 1 1.36-1.46l2 1.86 4.6-4.97a1 1 0 0 1 1.44 1.32z'/%3E%3C/svg%3E")}
html.tm-rd .msg.err{background:color-mix(in srgb,var(--red) 12%,transparent)!important;color:var(--neg)!important;
  --mi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5a9.5 9.5 0 1 0 0 19 9.5 9.5 0 0 0 0-19zm0 4.5a1.2 1.2 0 0 1 1.2 1.2v4.6a1.2 1.2 0 0 1-2.4 0V8.2A1.2 1.2 0 0 1 12 7zm0 10.4a1.4 1.4 0 1 1 0-2.8 1.4 1.4 0 0 1 0 2.8z'/%3E%3C/svg%3E")}
html.tm-rd .msg.show{animation:iosPop .45s var(--spring)}
html.tm-rd .pill,html.tm-rd .tag{border-radius:999px;font-size:12px;font-weight:600;padding:3px 10px;display:inline-flex;align-items:center;gap:4px;border:0!important;letter-spacing:0}
html.tm-rd .pill.pending,html.tm-rd .pill.processing{background:color-mix(in srgb,var(--orange) 16%,transparent);color:var(--warn)}
html.tm-rd .pill.paid,html.tm-rd .pill.resolved,html.tm-rd .pill.active,html.tm-rd .pill.success,html.tm-rd .tag.ok{background:color-mix(in srgb,var(--green) 15%,transparent);color:var(--pos)}
html.tm-rd .pill.rejected,html.tm-rd .pill.failed,html.tm-rd .tag.ban{background:color-mix(in srgb,var(--red) 13%,transparent);color:var(--neg)}
html.tm-rd .ios-chip{font-style:normal;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--fill);color:var(--label2)}

/* ---------- 9. List gaya Settings ---------- */
html.tm-rd .cat-card,html.tm-rd .cust-card,html.tm-rd .order-item{background:transparent!important;border:0!important;border-radius:0!important;margin:0!important;padding:12px 0!important;position:relative;box-shadow:none!important}
html.tm-rd .cat-card + .cat-card::before,html.tm-rd .cust-card + .cust-card::before,html.tm-rd .order-item + .order-item::before{content:'';position:absolute;top:0;left:46px;right:0;height:.5px;background:var(--sep)}
html.tm-rd .cat-card.active{border-left:0!important;background:transparent!important}
html.tm-rd .cat-card-name{font-size:16px;font-weight:500;letter-spacing:-.3px}
html.tm-rd .cat-card-sub{color:var(--label2);font-size:13px}
html.tm-rd .cat-icon-badge{width:auto!important;height:auto!important;background:none!important;border:0!important;box-shadow:none!important}
html.tm-rd .cat-icon-badge .ios-tile{transition:filter .3s,opacity .3s}
html.tm-rd .cat-card:not(.active) .cat-icon-badge .ios-tile{filter:grayscale(1);opacity:.45}
html.tm-rd .markup-row{border-top:.5px solid var(--sep)!important}
html.tm-rd .order-badge{background:var(--fill)!important;color:var(--label2)!important;border:0!important;font-family:var(--font-r);font-weight:700}
html.tm-rd .order-icon{background:none!important;border:0!important;width:auto!important;height:auto!important}
html.tm-rd .order-icon:not(:has(.ios-tile)){width:30px!important;height:30px!important;border-radius:8px;background:var(--gray)!important;color:#fff;display:grid;place-items:center}
html.tm-rd .order-card,html.tm-rd .tk-card,html.tm-rd .blk-item,html.tm-rd .porder-item,html.tm-rd .bc,html.tm-rd .stat-card,html.tm-rd .layout-opt{background:var(--nest)!important;border:0!important;border-radius:16px!important;box-shadow:none!important}
html.tm-rd .blk-item input,html.tm-rd .blk-item select,html.tm-rd .blk-item textarea,html.tm-rd .order-card input,html.tm-rd .order-card select{background-color:var(--cell)!important}
html.tm-rd .layout-opt.on,html.tm-rd .layout-opt.active{box-shadow:0 0 0 2px var(--tint)!important;background:var(--tint-fill)!important}
html.tm-rd .porow{border-bottom:.5px solid var(--sep)!important}
html.tm-rd .bc-ic{width:30px!important;height:30px!important;border-radius:8px!important;background:var(--orange)!important;color:#fff!important;box-shadow:none!important;display:grid;place-items:center}
html.tm-rd .bc-new{background:var(--tint)!important;color:#fff!important;border-radius:999px!important;letter-spacing:0!important;text-transform:none!important}
html.tm-rd table th{color:var(--label2);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;border-bottom:.5px solid var(--sep)!important;background:transparent}
html.tm-rd table td{border-bottom:.5px solid var(--sep)!important}
html.tm-rd .walletBig{font-family:var(--font-r);font-weight:700;letter-spacing:-.6px;font-variant-numeric:tabular-nums}

/* save bar mengambang */
html.tm-rd .save-bar{background:var(--mat)!important;-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);border:.5px solid var(--mat-edge)!important;
  border-radius:28px!important;box-shadow:var(--shadow-float)!important;bottom:calc(92px + env(safe-area-inset-bottom))!important}

/* ---------- 10. Tab bar kaca (HP & tablet) ---------- */
@media(max-width:1023px){html.tm-rd nav.tabs{display:none!important}}
html.tm-rd .ios-tabbar{position:fixed;z-index:60;left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));
  max-width:540px;margin:0 auto;height:64px;display:none;padding:5px;border-radius:32px;background:var(--mat);
  -webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%);border:.5px solid var(--mat-edge);box-shadow:var(--shadow-float),inset 0 1px 0 var(--mat-hi)}
html.tm-rd .ios-tabbar.on{display:flex}
@media(prefers-reduced-motion:no-preference){html.tm-rd .ios-tabbar.on{animation:iosBarIn .7s var(--spring) both}}
@media(min-width:1024px){html.tm-rd .ios-tabbar{display:none!important}}
html.tm-rd .ios-tab{flex:1;min-width:0;position:relative;z-index:1;border:0;background:none;color:var(--label);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  font-family:var(--font-b);font-size:10.5px;font-weight:600;letter-spacing:.05px;cursor:pointer;border-radius:27px;padding:0;transition:color .3s ease,transform .45s var(--spring)}
html.tm-rd .ios-tab .ios-ic{width:25px;height:25px}
html.tm-rd .ios-tab span{white-space:nowrap}
html.tm-rd .ios-tab.on{color:var(--tint)}
html.tm-rd .ios-tab:active{transform:scale(.88)}
html.tm-rd .ios-lens{position:absolute;z-index:0;top:5px;bottom:5px;left:0;width:0;border-radius:27px;background:var(--fill);box-shadow:inset 0 1px 0 var(--mat-hi);
  transition:transform .6s var(--spring),width .6s var(--spring)}
html.tm-rd .ios-tab-dot{position:absolute;top:8px;left:calc(50% + 7px);width:10px;height:10px;border-radius:50%;background:var(--red);border:2px solid var(--cell);display:none}
html.tm-rd .ios-tab-dot.on{display:block}

/* ---------- 11. Sheet "Lainnya" ---------- */
html.tm-rd .ios-more{position:fixed;inset:0;z-index:9980;visibility:hidden;pointer-events:none}
html.tm-rd .ios-more.on{visibility:visible;pointer-events:auto}
html.tm-rd .ios-more-back{position:absolute;inset:0;background:rgba(0,0,0,.34);opacity:0;transition:opacity .35s ease}
html.tm-rd .ios-more.on .ios-more-back{opacity:1}
html.tm-rd .ios-more-sheet{position:absolute;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));max-width:560px;margin:0 auto;max-height:86vh;overflow-y:auto;overscroll-behavior:contain;
  background:var(--bg-g);border-radius:34px;padding:8px 16px 14px;transform:translateY(112%);transition:transform .55s var(--ease);box-shadow:0 -10px 50px -10px rgba(0,0,0,.35)}
html.tm-rd .ios-more.on .ios-more-sheet{transform:none}
html.tm-rd .ios-grab{width:36px;height:5px;border-radius:3px;background:var(--fill2);margin:2px auto 8px;touch-action:none}
html.tm-rd .ios-more-h{display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px;touch-action:none}
html.tm-rd .ios-more-h b{font-family:var(--font-d);font-size:22px;font-weight:700;letter-spacing:-.3px}
html.tm-rd .ios-more-x{width:30px;height:30px;border-radius:50%;border:0;background:var(--fill);color:var(--label2);display:grid;place-items:center;cursor:pointer}
html.tm-rd .ios-list{background:var(--cell);border-radius:22px;overflow:hidden;margin-bottom:18px}
/* mode gelap: sheet sedikit terangkat dari latar hitam, seperti sheet iOS */
html.tm-rd[data-scheme="dark"] .ios-more-sheet,html.tm-rd[data-scheme="dark"] .tm-sheet{background:#1C1C1E}
html.tm-rd[data-scheme="dark"] .ios-more-sheet .ios-list,html.tm-rd[data-scheme="dark"] .tm-sheet .tm-party,html.tm-rd[data-scheme="dark"] .tm-sheet .tm-rows,html.tm-rd[data-scheme="dark"] .tm-sheet .tm-amt{background:#2C2C2E}
html.tm-rd .ios-list-pad{padding:10px}
html.tm-rd .ios-list-h{font-size:13px;color:var(--label2);padding:0 16px 7px}
html.tm-rd .ios-mrow{display:flex;align-items:center;gap:12px;width:100%;padding:0 14px;min-height:52px;background:none;border:0;color:var(--label);font-family:var(--font-b);
  font-size:16.5px;letter-spacing:-.3px;text-align:left;cursor:pointer;text-decoration:none;position:relative;transition:background-color .15s}
html.tm-rd .ios-mrow + .ios-mrow::before{content:'';position:absolute;top:0;left:56px;right:0;height:.5px;background:var(--sep)}
html.tm-rd .ios-mrow:active{background:var(--fill)}
html.tm-rd .ios-mrow > span:not(.ios-tile){flex:1;min-width:0}
html.tm-rd .ios-mrow.on > span:not(.ios-tile){color:var(--tint);font-weight:600}
html.tm-rd .ios-mchev{color:var(--label3);width:15px;height:15px;flex:0 0 auto}
html.tm-rd .ios-mbadge{min-width:22px;height:22px;border-radius:11px;background:var(--red);color:#fff;font-size:13px;font-weight:600;font-style:normal;display:none;align-items:center;justify-content:center;padding:0 6px}
html.tm-rd .ios-mbadge.on{display:inline-flex}
html.tm-rd .ios-mrow.danger{color:var(--red);justify-content:center;gap:8px}
html.tm-rd .ios-mrow.danger > span:not(.ios-tile){flex:0 0 auto}

/* segmented control */
html.tm-rd .ios-seg{--n:2;--i:0;position:relative;display:flex;padding:2px;border-radius:999px;background:var(--fill);isolation:isolate}
html.tm-rd .ios-seg button{flex:1 1 0;min-width:0;position:relative;z-index:1;border:0;background:none;color:var(--label);font-family:var(--font-b);font-size:13.5px;font-weight:600;letter-spacing:-.1px;
  padding:7px 8px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;transition:opacity .2s}
html.tm-rd .ios-seg button:not(.on){opacity:.8}
html.tm-rd .ios-seg-lens{position:absolute;z-index:0;top:2px;bottom:2px;left:2px;width:calc((100% - 4px) / var(--n));border-radius:999px;background:var(--cell);
  box-shadow:0 3px 8px rgba(0,0,0,.12),0 .5px 1px rgba(0,0,0,.06);transform:translateX(calc(var(--i) * 100%));transition:transform .5s var(--spring)}
html.tm-rd[data-scheme="dark"] .ios-seg-lens{background:#636366}
html.tm-rd .ios-seg .ios-ic{width:15px;height:15px}

/* ---------- 12. Sidebar gaya iPadOS (desktop) ---------- */
@media(min-width:1024px){
  html.tm-rd body{background:var(--bg-g)}
  html.tm-rd nav.tabs{width:280px!important;background:var(--side)!important;border-right:.5px solid var(--sep)!important;border-top:0!important;box-shadow:none!important;padding:16px 14px!important;gap:2px!important}
  html.tm-rd nav.tabs .sidebarBrand{border-bottom:0!important;padding:4px 8px 14px!important;margin-bottom:4px!important}
  html.tm-rd nav.tabs .sidebarBrand .logo{width:38px;height:38px;border-radius:11px}
  html.tm-rd nav.tabs button,html.tm-rd nav.tabs a.navlink{flex-direction:row!important;align-items:center!important;gap:12px!important;padding:7px 10px!important;min-height:44px;border-radius:12px!important;
    font-family:var(--font-b)!important;font-size:15.5px!important;font-weight:500!important;letter-spacing:-.3px;color:var(--label)!important;background:transparent!important;border:0!important;box-shadow:none!important}
  html.tm-rd nav.tabs button:hover:not(.on),html.tm-rd nav.tabs a.navlink:hover{background:var(--fill)!important}
  html.tm-rd nav.tabs button.on{background:var(--tint)!important;color:#fff!important}
  html.tm-rd nav.tabs .ic{width:auto!important;height:auto!important;background:none!important;border:0!important;display:flex}
  html.tm-rd nav.tabs .ic .ios-tile{width:28px;height:28px;border-radius:7px}
  html.tm-rd nav.tabs .tabBadge{margin-left:auto;position:static!important}
  html.tm-rd .ios-side-appear{margin:14px 4px 6px}
  html.tm-rd .ios-side-appear .ios-seg button span{display:none}
  html.tm-rd nav.tabs .sidebarLogout,html.tm-rd nav.tabs .sidebarLogout button,html.tm-rd nav.tabs .sidebarLogout a{color:var(--red)!important}
  /* segmented mode tampilan di sidebar tidak ikut gaya tombol menu */
  html.tm-rd nav.tabs .ios-seg button,html.tm-rd nav.tabs .ios-seg button.on{background:none!important;color:var(--label)!important;min-height:0!important;padding:7px 8px!important;justify-content:center!important;border-radius:999px!important;gap:5px!important}
  html.tm-rd nav.tabs{position:fixed!important;top:0!important;bottom:0!important;left:0!important;height:auto!important;overflow-y:auto}
  html.tm-rd .wrap{flex:1 1 auto;min-width:0;width:100%}
  html.tm-rd #app{width:100%}
  html.tm-rd .wrap{margin-left:280px!important;max-width:1180px!important;padding:0 36px 44px!important}
  html.tm-rd header{margin:0 -36px 0;padding:12px 36px}
  html.tm-rd .ios-lt{padding-top:8px}
  html.tm-rd .save-bar{bottom:16px!important}
}
@media(min-width:900px) and (max-width:1023px){html.tm-rd .wrap{max-width:900px}}

/* ---------- 13. Popover notifikasi, toast, bantuan ---------- */
html.tm-rd .notifDropdown{background:var(--mat)!important;-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);border:.5px solid var(--mat-edge)!important;
  border-radius:24px!important;box-shadow:var(--shadow-float)!important;padding:14px!important;top:calc(62px + env(safe-area-inset-top))!important;color:var(--label);transform-origin:top right}
@media(prefers-reduced-motion:no-preference){html.tm-rd .notifDropdown[style*="block"]{animation:iosDrop .42s var(--spring)}}
html.tm-rd .notifDropdown > div:first-child b{font-size:17px!important;font-weight:700}
html.tm-rd .notif-item{border-bottom:.5px solid var(--sep)!important;padding:10px 2px!important;font-size:13.5px}
html.tm-rd .notif-item b{display:flex;align-items:center;gap:4px;font-size:14.5px;font-weight:600;margin-bottom:2px}
html.tm-rd .toast{top:calc(10px + env(safe-area-inset-top))!important;bottom:auto!important;left:50%!important;right:auto!important;transform:translateX(-50%) scale(.5,.35)!important;transform-origin:top center;
  background:#000!important;color:#fff!important;border:.5px solid rgba(255,255,255,.14)!important;border-radius:26px!important;padding:12px 20px!important;font-size:14.5px!important;font-weight:600!important;
  box-shadow:0 14px 30px -10px rgba(0,0,0,.55)!important;opacity:0;max-width:min(92vw,440px);text-align:center;z-index:10001!important;
  transition:transform .55s var(--spring),opacity .25s ease!important}
html.tm-rd .toast.show{transform:translateX(-50%) scale(1)!important;opacity:1}
html.tm-rd #helpFab{background:var(--tint)!important;box-shadow:0 12px 26px -10px color-mix(in srgb,var(--tint) 70%,#000)!important;width:52px!important;height:52px!important;transition:transform .45s var(--spring)}
html.tm-rd #helpFab:active{transform:scale(.9)}
html.tm-rd #helpBoxWrap{background:var(--cell)!important;border:.5px solid var(--sep)!important;box-shadow:var(--shadow-float)!important;border-radius:26px!important;color:var(--label)}
html.tm-rd #helpBoxWrap > div:first-child > div:first-child{background:var(--tint)!important;color:#fff;border-radius:50%!important}
html.tm-rd #helpBoxWrap button{background:var(--tint)!important;border-radius:50%!important;width:44px!important;display:grid;place-items:center}
@media(max-width:1023px){
  html.tm-rd #helpFab{bottom:calc(86px + env(safe-area-inset-bottom))!important;right:18px!important}
  html.tm-rd #helpBoxWrap{bottom:calc(148px + env(safe-area-inset-bottom))!important;right:12px!important}
  html.tm-rd.ios-sheet-open #helpFab{opacity:0;pointer-events:none}
}

/* ---------- 14. OVERVIEW ---------- */
html.tm-rd #sec-overview > .card,html.tm-rd #sec-overview > .ov-col{margin-bottom:14px}
html.tm-rd #ovChartCard{--sec:var(--blue)}html.tm-rd #ovForecastCard{--sec:var(--purple)}html.tm-rd #ovTopCard{--sec:var(--orange)}
html.tm-rd #ovHealthCard{--sec:var(--pink)}html.tm-rd #ovRecentCard{--sec:var(--indigo)}html.tm-rd #ovCatCard{--sec:var(--teal)}html.tm-rd #ovAchCard{--sec:var(--yellow)}
@container app (min-width:760px){
  html.tm-rd #sec-overview.on{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;align-items:start}
  html.tm-rd #sec-overview > *{grid-column:1/-1;margin-bottom:0!important;min-width:0}
  html.tm-rd #sec-overview > .ov-s5{grid-column:span 5}
  html.tm-rd #sec-overview > .ov-s7{grid-column:span 7}
}
/* kartu saldo gaya Wallet */
html.tm-rd .ios-hero{--acc:#0A84FF;position:relative;overflow:hidden;isolation:isolate;border-radius:28px!important;padding:18px 18px 16px!important;margin:0!important;color:#fff;min-height:214px;display:flex;flex-direction:column;
  background:radial-gradient(90% 120% at 100% 0%,color-mix(in srgb,var(--acc) 78%,transparent) 0%,transparent 62%),
             radial-gradient(90% 110% at 0% 100%,color-mix(in srgb,var(--acc) 40%,#5E5CE6) 0%,transparent 66%),
             linear-gradient(160deg,#17171f,#0a0a0f)!important;
  box-shadow:0 24px 44px -26px color-mix(in srgb,var(--acc) 80%,#000),inset 0 0 0 .5px rgba(255,255,255,.14)!important}
html.tm-rd .ios-hero::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(240px circle at var(--mx,78%) var(--my,-10%),rgba(255,255,255,.22),transparent 62%)}
html.tm-rd .ios-hero::after{content:'';position:absolute;top:0;bottom:0;left:-60%;width:40%;z-index:-1;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.16),transparent);transform:skewX(-18deg);opacity:0}
@media(prefers-reduced-motion:no-preference){html.tm-rd .section.on .ios-hero::after{animation:iosShine 1.6s var(--ease) .5s 1}}
html.tm-rd .ios-hero-top{display:flex;align-items:center;gap:10px}
html.tm-rd .ios-hero-logo{width:38px!important;height:38px!important;border-radius:11px!important;background:rgba(255,255,255,.94)!important;color:#111!important;font-size:16px;flex:0 0 auto}
html.tm-rd .ios-hero-id{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
html.tm-rd .ios-hero-id b{font-size:15px;font-weight:600;letter-spacing:-.25px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-hero-id span{font-size:12px;opacity:.68}
html.tm-rd .ios-hero-eye{width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;cursor:pointer;flex:0 0 auto;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .45s var(--spring),background-color .2s}
html.tm-rd .ios-hero-eye:active{transform:scale(.86)}
html.tm-rd .ios-hero-eye svg{width:19px;height:19px}
html.tm-rd .ios-hero-lbl{margin-top:auto;padding-top:24px;font-size:13px;font-weight:500;opacity:.72}
html.tm-rd .ios-hero .walletBig{font-size:40px;line-height:1.08;margin:2px 0 14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-hero-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-top:12px;border-top:.5px solid rgba(255,255,255,.16)}
html.tm-rd .ios-hero-kpi{min-width:0}
html.tm-rd .ios-hero-kpi span{display:block;font-size:12px;opacity:.7}
html.tm-rd .ios-hero-kpi b{font-family:var(--font-r);font-size:17px;font-weight:650;color:#6BF59A;font-variant-numeric:tabular-nums}
html.tm-rd .ios-spark{width:118px;height:40px;flex:0 0 auto;overflow:visible}
html.tm-rd .ios-spark .l{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
html.tm-rd .ios-spark .a{fill:url(#ovSparkG)}
html.tm-rd .ios-spark .e{fill:#fff}
html.tm-rd body.money-hidden .ios-spark{filter:blur(4px)}
/* aksi cepat */
html.tm-rd .ios-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:14px 0 2px}
html.tm-rd .ios-actions button{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--label);font-family:var(--font-b);font-size:12.5px;font-weight:500;cursor:pointer;padding:2px}
html.tm-rd .ios-act-ic{width:54px;height:54px;border-radius:50%;background:var(--cell);color:var(--tint);display:grid;place-items:center;transition:transform .45s var(--spring),background-color .2s;box-shadow:0 1px 2px rgba(0,0,0,.05)}
html.tm-rd .ios-actions button:active .ios-act-ic{transform:scale(.86);background:var(--fill)}
html.tm-rd .ios-act-ic .ios-ic{width:24px;height:24px}
html.tm-rd #iosSecSlot .card{margin:14px 0 0}
/* widget */
html.tm-rd .ios-gh{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:4px 4px 10px}
html.tm-rd .ios-gh h3{font-family:var(--font-d);font-size:21px;font-weight:700;letter-spacing:-.35px;margin:0}
html.tm-rd .ios-gh span{font-size:13px;color:var(--label2);white-space:nowrap}
html.tm-rd .ios-widgets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@container app (min-width:600px) and (max-width:759px){html.tm-rd .ios-widgets{grid-template-columns:repeat(4,minmax(0,1fr))}}
html.tm-rd .ios-w{background:var(--cell);border-radius:22px;padding:14px 14px 13px;min-height:116px;display:flex;flex-direction:column;min-width:0;position:relative;overflow:hidden}
html.tm-rd[data-scheme="light"] .ios-w{box-shadow:0 1px 2px rgba(0,0,0,.03)}
html.tm-rd .ios-w-h{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--t)}
html.tm-rd .ios-w-h .ios-ic{width:16px;height:16px;flex:0 0 auto}
html.tm-rd .ios-w-v{font-family:var(--font-r);font-size:23px;font-weight:700;letter-spacing:-.45px;margin-top:auto;padding-top:12px;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-w-s{font-size:12.5px;color:var(--label2);margin-top:4px;line-height:1.3}
html.tm-rd .ios-trend{display:inline-flex;align-items:center;gap:3px;font-weight:600}
html.tm-rd .ios-trend.up{color:var(--pos)}html.tm-rd .ios-trend.down{color:var(--neg)}
html.tm-rd .ios-skel{background:linear-gradient(90deg,var(--cell) 20%,var(--nest) 50%,var(--cell) 80%);background-size:220% 100%;animation:iosShim 1.3s linear infinite}
html.tm-rd .ios-alltime{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--cell);border-radius:22px;margin-top:12px;padding:12px 2px}
html.tm-rd .ios-alltime > div{padding:1px 12px;min-width:0}
html.tm-rd .ios-alltime > div + div{border-left:.5px solid var(--sep)}
html.tm-rd .ios-alltime span{font-size:12px;color:var(--label2);display:block;white-space:nowrap}
html.tm-rd .ios-alltime b{display:block;margin-top:2px;font-family:var(--font-r);font-size:15.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
/* grafik */
html.tm-rd .ios-chart-card .ios-seg{margin-bottom:14px}
html.tm-rd .ios-chart-head{min-height:70px}
html.tm-rd .ios-chart-kicker{font-size:13px;font-weight:600;color:var(--label2)}
html.tm-rd .ios-chart-val{font-family:var(--font-r);font-size:30px;font-weight:700;letter-spacing:-.55px;line-height:1.15;font-variant-numeric:tabular-nums}
html.tm-rd .ios-chart-sub{font-size:13px;color:var(--label2);min-height:18px}
html.tm-rd .ios-chart{position:relative;margin-top:8px;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:crosshair;min-height:40px}
html.tm-rd .ios-chart svg{display:block;width:100%;height:auto;overflow:visible}
html.tm-rd .ios-chart .grid line{stroke:var(--sep);stroke-dasharray:2 4}
html.tm-rd .ios-chart .ylab{font-size:11px;fill:var(--label2);font-family:var(--font-b)}
html.tm-rd .ios-chart .xlab{font-size:11.5px;fill:var(--label2);font-weight:600;text-anchor:middle;font-family:var(--font-b);text-transform:capitalize;transition:fill .15s}
html.tm-rd .ios-chart .xlab.now{fill:var(--label)}
html.tm-rd .ios-chart .xlab.sel{fill:var(--c)}
html.tm-rd .ios-chart .line{fill:none;stroke:var(--c);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
html.tm-rd .ios-chart .area{fill:url(#ovChartGrad)}
html.tm-rd .ios-chart .dot{fill:var(--cell);stroke:var(--c);stroke-width:2.4}
html.tm-rd .ios-chart .bar{fill:var(--c);transform-box:fill-box;transform-origin:50% 100%;transition:opacity .2s}
html.tm-rd .ios-chart .bar.dim{opacity:.3}
html.tm-rd .ios-chart .rule{stroke:var(--label3);stroke-width:1.2;transition:opacity .15s}
html.tm-rd .ios-chart .hot{fill:var(--c);stroke:var(--cell);stroke-width:3;transition:opacity .15s}
html.tm-rd .ios-chart svg.anim .line{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:iosDraw 1.15s var(--ease) .05s forwards}
html.tm-rd .ios-chart svg.anim .area{opacity:0;animation:iosFade .9s ease .4s forwards}
html.tm-rd .ios-chart svg.anim .dot{opacity:0;animation:iosFade .4s ease .9s forwards}
html.tm-rd .ios-chart svg.anim .bar{animation:iosGrow .75s var(--spring) both;animation-delay:var(--d,0ms)}
html.tm-rd .ios-chart-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 10px;text-align:center;color:var(--label2);font-size:13.5px}
html.tm-rd .ios-chart-empty .ios-ic{color:var(--label3);width:34px;height:34px}
html.tm-rd .ios-chart-empty b{color:var(--label);font-size:15px}
/* ranking produk */
html.tm-rd .ios-seg-sm{margin-bottom:6px}
html.tm-rd .ios-rank{display:flex;align-items:center;gap:12px;padding:11px 0;position:relative}
html.tm-rd .ios-rank + .ios-rank::before{content:'';position:absolute;top:0;left:70px;right:0;height:.5px;background:var(--sep)}
html.tm-rd .ios-rank-n{width:16px;flex:0 0 auto;text-align:center;font-family:var(--font-r);font-weight:700;font-size:15px;color:var(--label3)}
html.tm-rd .ios-rank:nth-child(1) .ios-rank-n{color:#E5A000}html.tm-rd .ios-rank:nth-child(2) .ios-rank-n{color:#8E8E93}html.tm-rd .ios-rank:nth-child(3) .ios-rank-n{color:#C27A3A}
html.tm-rd .ios-rank-body{flex:1;min-width:0}
html.tm-rd .ios-rank-name{font-size:14.5px;font-weight:500;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-bar{height:6px;border-radius:6px;background:var(--fill);margin-top:7px;overflow:hidden}
html.tm-rd .ios-bar > i{display:block;height:100%;width:0;border-radius:inherit;background:var(--c,var(--tint));transition:width 1.1s var(--ease)}
html.tm-rd .ios-rank-v{text-align:right;flex:0 0 auto;max-width:42%}
html.tm-rd .ios-rank-v b{display:block;font-family:var(--font-r);font-size:15px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
html.tm-rd .ios-rank-v span{font-size:12px;color:var(--label2);white-space:nowrap}
/* baris transaksi / kategori */
html.tm-rd .ios-stack{display:flex;gap:2px;height:14px;border-radius:7px;overflow:hidden;background:var(--fill);margin:2px 0 8px}
html.tm-rd .ios-stack i{display:block;height:100%;flex:0 1 0%;background:var(--c);transition:flex-basis 1.1s var(--ease)}
html.tm-rd .ios-row{display:flex;align-items:center;gap:12px;padding:10px 0;min-height:56px;position:relative}
html.tm-rd .ios-row + .ios-row::before{content:'';position:absolute;top:0;left:42px;right:0;height:.5px;background:var(--sep)}
html.tm-rd .ios-row-main{flex:1;min-width:0}
html.tm-rd .ios-row-main b{display:block;font-size:15px;font-weight:500;letter-spacing:-.25px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-row-main span{display:block;font-size:12.5px;color:var(--label2);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-row-end{text-align:right;flex:0 0 auto}
html.tm-rd .ios-row-end b{display:block;font-family:var(--font-r);font-size:15px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
html.tm-rd .ios-row-end span{display:block;font-size:12.5px;font-weight:600;white-space:nowrap}
html.tm-rd .ios-linkrow{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-top:.5px solid var(--sep);background:none;color:var(--tint);
  font-family:var(--font-b);font-size:15.5px;font-weight:500;padding:13px 0 0;margin-top:4px;cursor:pointer}
html.tm-rd .ios-linkrow .ios-ic{color:var(--label3)}
/* cincin kesehatan */
html.tm-rd .ios-health{display:flex;align-items:center;gap:18px}
html.tm-rd .ios-rings{width:128px;height:128px;flex:0 0 auto}
html.tm-rd .ios-rings svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
html.tm-rd .ios-rings .trk{fill:none;stroke-width:11;opacity:.2}
html.tm-rd .ios-rings .prg{fill:none;stroke-width:11;stroke-linecap:round;transition:stroke-dashoffset 1.5s var(--ease)}
html.tm-rd .r1{stroke:var(--ring1)}html.tm-rd .r2{stroke:var(--ring2)}html.tm-rd .r3{stroke:var(--ring3)}html.tm-rd .r4{stroke:var(--ring4)}
html.tm-rd .ios-health-side{flex:1;min-width:0}
html.tm-rd .ios-health-score{display:flex;align-items:baseline;gap:2px}
html.tm-rd .ios-health-score b{font-family:var(--font-r);font-size:36px;font-weight:700;letter-spacing:-.7px;line-height:1.05}
html.tm-rd .ios-health-score span{font-size:15px;color:var(--label2);font-weight:600}
html.tm-rd .ios-health-grade{font-size:15px;font-weight:600;margin:0 0 10px}
html.tm-rd .ios-ring-legend{display:flex;flex-direction:column;gap:7px}
html.tm-rd .ios-rl{display:flex;align-items:center;gap:8px;font-size:13px;min-width:0}
html.tm-rd .ios-rl i{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
html.tm-rd .ios-rl i.r1{background:var(--ring1)}html.tm-rd .ios-rl i.r2{background:var(--ring2)}html.tm-rd .ios-rl i.r3{background:var(--ring3)}html.tm-rd .ios-rl i.r4{background:var(--ring4)}
html.tm-rd .ios-rl span{flex:1;min-width:0;color:var(--label2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.tm-rd .ios-rl b{font-family:var(--font-r);font-weight:650;font-variant-numeric:tabular-nums}
html.tm-rd .ios-rl b small{font-size:11px;color:var(--label2);font-weight:500}
/* analisis AI (gaya Apple Intelligence) */
html.tm-rd .ios-ai{margin-top:14px;padding-top:14px;border-top:.5px solid var(--sep)}
html.tm-rd .ios-ai-box{margin-top:12px;border-radius:18px;padding:14px;position:relative;background:var(--nest);font-size:14.5px;line-height:1.55}
html.tm-rd .ios-ai-box::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;opacity:.85;
  background:linear-gradient(120deg,#FF9F0A,#FF375F,#BF5AF2,#0A84FF,#64D2FF);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
html.tm-rd .ios-ai-h{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;margin-bottom:6px}
html.tm-rd .ios-ai-h span{background:linear-gradient(90deg,#FF375F,#BF5AF2,#0A84FF);-webkit-background-clip:text;background-clip:text;color:transparent}
html.tm-rd .ios-ai-h .ios-ic{color:#BF5AF2;width:15px;height:15px}
html.tm-rd .ios-ai-meta{font-size:12px;color:var(--label2);margin-top:8px}
html.tm-rd .card.ios-thinking{position:relative}
html.tm-rd .card.ios-thinking::after{content:'';position:absolute;inset:0;border-radius:inherit;padding:2px;pointer-events:none;
  background:conic-gradient(from var(--ios-ang),#FF9F0A,#FF375F,#BF5AF2,#0A84FF,#64D2FF,#FF9F0A);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:iosAng 2.2s linear infinite}
html.tm-rd .ios-spin{width:15px;height:15px;border-radius:50%;border:2px solid color-mix(in srgb,currentColor 28%,transparent);border-top-color:currentColor;animation:iosSpin .8s linear infinite;display:inline-block;flex:0 0 auto}
/* proyeksi */
html.tm-rd .ios-fc-main span{font-size:13px;color:var(--label2);font-weight:500}
html.tm-rd .ios-fc-main b{display:block;font-family:var(--font-r);font-size:30px;font-weight:700;letter-spacing:-.55px;margin-top:2px;font-variant-numeric:tabular-nums}
html.tm-rd .ios-fc-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}
html.tm-rd .ios-fc-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;background:var(--fill);font-family:var(--font-r);font-weight:700;font-size:14px}
html.tm-rd .ios-fc-pill.up{background:color-mix(in srgb,var(--green) 15%,transparent);color:var(--pos)}
html.tm-rd .ios-fc-pill.down{background:color-mix(in srgb,var(--red) 13%,transparent);color:var(--neg)}
html.tm-rd .ios-fc-pill small{font-family:var(--font-b);font-weight:500;font-size:12px;opacity:.85;margin-left:2px}
html.tm-rd .ios-fc-avg{text-align:right}
html.tm-rd .ios-fc-avg span{display:block;font-size:12px;color:var(--label2)}
html.tm-rd .ios-fc-avg b{font-family:var(--font-r);font-size:16px;font-weight:650}
/* medali */
html.tm-rd .ios-medals{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 10px;scrollbar-width:none}
html.tm-rd .ios-medals::-webkit-scrollbar{display:none}
html.tm-rd .ios-medal{flex:0 0 auto;width:92px;scroll-snap-align:start;background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--label);cursor:pointer;font-family:var(--font-b);text-align:center;padding:0}
html.tm-rd .ios-medal-disc{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;color:#fff;position:relative;
  background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.55),transparent 46%),linear-gradient(145deg,var(--m1),var(--m2));
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.3),inset 0 -6px 12px rgba(0,0,0,.18),0 10px 18px -10px var(--m2);transition:transform .5s var(--spring)}
html.tm-rd .ios-medal-disc::after{content:'';position:absolute;inset:7px;border-radius:50%;border:1.5px dashed rgba(255,255,255,.45)}
html.tm-rd .ios-medal-disc .ios-ic{width:30px;height:30px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}
html.tm-rd .ios-medal:active .ios-medal-disc{transform:scale(.9) rotate(-8deg)}
html.tm-rd .ios-medal b{font-size:12px;font-weight:600;line-height:1.25;letter-spacing:-.1px}
html.tm-rd .ios-medal small{font-size:11px;color:var(--label2);margin-top:-3px}
html.tm-rd .ios-medal.off .ios-medal-disc{background:var(--fill);color:var(--label3);box-shadow:inset 0 0 0 1.5px var(--sep)}
html.tm-rd .ios-medal.off .ios-medal-disc::after{border-color:var(--sep)}
html.tm-rd .ios-medal.off .ios-medal-disc .ios-ic{width:22px;height:22px;filter:none}
html.tm-rd .ios-medal.off b{color:var(--label2)}
@media(prefers-reduced-motion:no-preference){html.tm-rd .ios-medal{animation:iosPop .6s var(--spring) both;animation-delay:calc(var(--i,0) * 55ms)}}
html.tm-rd .ios-prog{margin-top:12px}
html.tm-rd .ios-prog-h{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--label2);margin-bottom:6px}
html.tm-rd .ios-prog-h span:first-child{color:var(--label);font-weight:500}
html.tm-rd .ios-prog-done{font-size:13.5px;color:var(--pos);font-weight:600;margin-top:8px}
html.tm-rd body.money-hidden .ios-chart-val.mv,html.tm-rd body.money-hidden .ios-w-v.mv{filter:blur(8px)}

/* ---------- 15. Keamanan, layar kunci & PIN, tarik saldo, sheet, bukti (dibawa dari tema v2, warna disesuaikan) ---------- */
html.tm-rd.tm-locked body > *:not(.tm-lock){visibility:hidden}
html.tm-rd.tm-locked body{overflow:hidden}
html.tm-rd .tm-lock{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:space-between;
  padding:calc(40px + env(safe-area-inset-top)) 20px calc(26px + env(safe-area-inset-bottom));color:#fff;text-align:center;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180' fill='none' stroke='%23ffffff' stroke-opacity='.06' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='24' y='30' width='48' height='36' rx='8'/%3E%3Cpath d='M36 30v-8a12 12 0 0 1 24 0v8'/%3E%3Cpath d='M128 18l16 14-16 22-16-22z'/%3E%3Ccircle cx='44' cy='128' r='17'/%3E%3Cpath d='M132 112l5 11 12 1-9 8 3 12-11-6-11 6 3-12-9-8 12-1z'/%3E%3C/svg%3E") 0 0/180px 180px,
    linear-gradient(165deg,#0a2d73 0%,#1450c4 55%,#2f74ea 100%);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility 0s linear .4s}
html.tm-rd .tm-lock.on{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s ease,visibility 0s}
html.tm-rd .tm-lock.out{opacity:0;transform:scale(1.04);transition:opacity .35s ease,transform .45s cubic-bezier(.32,.72,0,1)}
html.tm-rd .tm-lock-top{display:flex;flex-direction:column;align-items:center;gap:10px}
html.tm-rd .tm-lock-logo{width:64px;height:64px;border-radius:19px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 16px 30px -12px rgba(0,0,0,.5);color:var(--tint);font-family:var(--font-d);font-weight:700;font-size:26px}
html.tm-rd .tm-lock-logo img{width:100%;height:100%;object-fit:cover}
html.tm-rd .tm-lock h1{font-family:var(--font-d);font-weight:700;font-size:22px;margin-top:6px}
html.tm-rd .tm-lock p{font-size:14px;opacity:.85;max-width:300px;line-height:1.45;min-height:40px}
html.tm-rd .tm-lock p.err{color:#ffd7dc;opacity:1;font-weight:600}
html.tm-rd .tm-dots{display:flex;gap:16px;margin:14px 0 4px}
html.tm-rd .tm-dots i{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.85);transition:background .15s ease,transform .3s cubic-bezier(.34,1.8,.5,1)}
html.tm-rd .tm-dots i.on{background:var(--cell);transform:scale(1.12)}
html.tm-rd .tm-dots.shake{animation:tmShake .5s cubic-bezier(.36,.07,.19,.97)}
html.tm-rd .tm-dots.ok i{background:var(--green);border-color:var(--green)}
@keyframes tmShake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(4px)}30%,50%,70%{transform:translateX(-8px)}40%,60%{transform:translateX(8px)}}
html.tm-rd .tm-pad{display:grid;grid-template-columns:repeat(3,76px);gap:16px 26px;justify-content:center}
html.tm-rd .tm-key{width:76px;height:76px;border-radius:50%;border:none;background:rgba(255,255,255,.16);color:#fff;font-family:var(--font-d);font-size:30px;font-weight:600;
  display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .15s ease,transform .25s cubic-bezier(.34,1.6,.5,1)}
html.tm-rd .tm-key small{font-family:var(--font-b);font-size:9.5px;font-weight:700;letter-spacing:1.5px;opacity:.75;margin-top:-2px}
html.tm-rd .tm-key:active{background:rgba(255,255,255,.4);transform:scale(.92)}
html.tm-rd .tm-key.ghost{background:none;font-size:15px;font-family:var(--font-b);font-weight:600}
html.tm-rd .tm-key.ghost:active{background:rgba(255,255,255,.12)}
html.tm-rd .tm-key svg{width:26px;height:26px}
html.tm-rd .tm-key:disabled{opacity:.35}
html.tm-rd .tm-lock-links{display:flex;gap:18px;justify-content:center;margin-top:18px}
html.tm-rd .tm-lock-links button{background:none;border:none;color:#fff;font-weight:600;font-size:14px;opacity:.9;cursor:pointer;padding:6px}
html.tm-rd .tm-lock-form{width:100%;max-width:340px;display:none;flex-direction:column;gap:10px;margin-top:6px}
html.tm-rd .tm-lock.pw .tm-lock-form{display:flex}
html.tm-rd .tm-lock.pw .tm-pad,html.tm-rd .tm-lock.pw .tm-dots{display:none}
html.tm-rd .tm-lock-form input{background:rgba(255,255,255,.95)!important;border-radius:14px!important;padding:14px!important;font-size:16px!important;text-align:left;letter-spacing:0}
html.tm-rd .tm-lock-form button{border:none;border-radius:14px;padding:14px;font-weight:700;font-size:16px;cursor:pointer;background:#fff;color:var(--tint)}
html.tm-rd .tm-lock-form button.sec{background:rgba(255,255,255,.16);color:#fff}
@media(max-height:680px){html.tm-rd .tm-key{width:64px;height:64px;font-size:26px}html.tm-rd .tm-pad{grid-template-columns:repeat(3,64px);gap:12px 24px}html.tm-rd .tm-lock{padding-top:24px}}

/* kartu keamanan di Overview */
html.tm-rd .tm-sec-card{display:flex;align-items:center;gap:14px}
html.tm-rd .tm-sec-card .tm-shield{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--pos);flex-shrink:0}
html.tm-rd .tm-sec-card .tm-shield.warn{background:color-mix(in srgb,var(--orange) 16%,transparent);color:var(--warn)}
html.tm-rd .tm-sec-card .tm-shield svg{width:24px;height:24px}
html.tm-rd .tm-sec-card b{display:block;font-size:15px}
html.tm-rd .tm-sec-card span{color:var(--label2);font-size:12.5px;line-height:1.45;display:block}
html.tm-rd .tm-sec-card .toggle{margin-left:auto}
@media(prefers-reduced-motion:reduce){html.tm-rd *{animation:none!important;transition:none!important}}

/* =====================================================================================
   TARIK SALDO & TRANSFER ala aplikasi bank: nominal besar, pilih tujuan berlogo, halaman
   konfirmasi, PIN di langkah terakhir (layar penuh), dan bukti transaksi.
   ===================================================================================== */
html.tm-rd .wd-steps::before{background:var(--sep);height:3px;border-radius:3px}
html.tm-rd .wd-step-dot .num{background:var(--cell);border:2px solid var(--sep);color:var(--label2);font-family:var(--font-d);font-weight:700;transition:all .4s cubic-bezier(.34,1.5,.5,1)}
html.tm-rd .wd-step-dot.active .num{background:var(--tint);border-color:var(--tint);color:#fff;box-shadow:0 8px 18px -8px rgba(26,95,216,.8)}
html.tm-rd .wd-step-dot.done .num{background:var(--green);border-color:var(--green);color:#fff;box-shadow:none}
html.tm-rd .wd-step-dot .lbl{color:var(--label2);font-weight:600}
html.tm-rd .wd-step-dot.active .lbl{color:var(--label)}
/* nominal besar */
html.tm-rd .tm-amt{position:relative;margin:4px 0 6px;padding:18px 16px 14px;border-radius:20px;background:var(--nest);border:1.5px solid transparent;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
html.tm-rd .tm-amt:focus-within{background:var(--cell);border-color:var(--tint);box-shadow:0 0 0 4px rgba(26,95,216,.12)}
html.tm-rd .tm-amt small{display:block;font-size:12px;font-weight:600;color:var(--label2);margin-bottom:4px}
html.tm-rd .tm-amt-row{display:flex;align-items:baseline;gap:8px}
html.tm-rd .tm-amt-row b{font-family:var(--font-d);font-weight:700;font-size:26px;color:var(--label2)}
html.tm-rd .tm-amt input{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;font-family:var(--font-d)!important;font-weight:700!important;font-size:34px!important;letter-spacing:-.5px;color:var(--label)!important;width:100%;min-width:0}
html.tm-rd .tm-amt input::-webkit-outer-spin-button,html.tm-rd .tm-amt input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
html.tm-rd .tm-amt input[type=number]{-moz-appearance:textfield}
html.tm-rd .tm-amt-words{font-size:12px;color:var(--label2);margin-top:4px;min-height:16px}
html.tm-rd .tm-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:10px 0 4px;padding-bottom:2px}
html.tm-rd .tm-chips::-webkit-scrollbar{display:none}
html.tm-rd .tm-chip{flex:0 0 auto;border:1px solid var(--sep);background:var(--cell);color:var(--label);border-radius:99px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .3s cubic-bezier(.34,1.6,.5,1),background .2s ease}
html.tm-rd .tm-chip:active{transform:scale(.92)}
html.tm-rd .tm-chip.on{background:var(--tint);border-color:var(--tint);color:#fff}
/* pilih tujuan: daftar berlogo */
html.tm-rd .tm-dest-h{font-size:12.5px;font-weight:700;color:var(--label2);margin:14px 4px 8px}
html.tm-rd .tm-dest{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 6px}
@media(min-width:480px){html.tm-rd .tm-dest{grid-template-columns:repeat(5,minmax(0,1fr))}}
html.tm-rd .tm-dest button{background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:6px;padding:6px 2px;border-radius:14px;cursor:pointer;color:var(--label);font-size:11.5px;font-weight:600;line-height:1.2;text-align:center;
  transition:transform .35s cubic-bezier(.34,1.6,.5,1),background .2s ease}
html.tm-rd .tm-dest button:active{transform:scale(.9)}
html.tm-rd .tm-dest button.on{background:var(--tint-fill)}
html.tm-rd .tm-bank{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;font-family:var(--font-d);font-weight:700;font-size:12.5px;letter-spacing:.2px;
  background:var(--c,var(--tint));box-shadow:0 8px 16px -10px var(--c,var(--tint)),inset 0 1px 0 rgba(255,255,255,.25);position:relative}
html.tm-rd .tm-dest button.on .tm-bank::after{content:'';position:absolute;right:-5px;bottom:-5px;width:18px;height:18px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/11px no-repeat;border:2px solid #fff;animation:tmTick .45s cubic-bezier(.34,1.8,.5,1)}
@keyframes tmTick{from{transform:scale(0)}to{transform:none}}
html.tm-rd .tm-hide-sel{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
/* rekening tersimpan seperti daftar kontak */
html.tm-rd #wdSavedAccountsList > *{border-radius:14px!important;background:var(--nest)!important;border:1px solid var(--sep)!important;color:var(--label)!important}
html.tm-rd #wdReviewBox,html.tm-rd #wdFeePreview{background:var(--nest)!important;border:1px solid var(--sep)!important;border-radius:16px!important;color:var(--label)}
/* PIN lama di formulir disembunyikan: PIN diminta di langkah terakhir (layar penuh) */
html.tm-rd .tm-pin-hidden{display:none!important}

/* lembar konfirmasi */
html.tm-rd .tm-sheet-wrap{position:fixed;inset:0;z-index:9990;display:flex;align-items:flex-end;justify-content:center;visibility:hidden;pointer-events:none}
html.tm-rd .tm-sheet-wrap.on{visibility:visible;pointer-events:auto}
html.tm-rd .tm-sheet-back{position:absolute;inset:0;background:rgba(10,24,54,.42);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;transition:opacity .3s ease}
html.tm-rd .tm-sheet-wrap.on .tm-sheet-back{opacity:1}
html.tm-rd .tm-sheet{position:relative;width:100%;max-width:520px;max-height:92vh;overflow-y:auto;background:var(--cell);border-radius:26px 26px 0 0;padding:10px 20px calc(20px + env(safe-area-inset-bottom));
  transform:translateY(104%);transition:transform .5s cubic-bezier(.32,.72,0,1);box-shadow:0 -20px 50px -20px rgba(10,30,70,.45)}
html.tm-rd .tm-sheet-wrap.on .tm-sheet{transform:none}
@media(min-width:620px){html.tm-rd .tm-sheet-wrap{align-items:center}html.tm-rd .tm-sheet{border-radius:26px;transform:translateY(30px) scale(.96);opacity:0;transition:transform .45s cubic-bezier(.32,.72,0,1),opacity .25s ease}html.tm-rd .tm-sheet-wrap.on .tm-sheet{opacity:1}}
html.tm-rd .tm-grab{width:40px;height:5px;border-radius:3px;background:var(--sep);margin:0 auto 14px}
html.tm-rd .tm-sheet h3{font-family:var(--font-d);font-weight:700;font-size:20px;text-align:center;margin-bottom:2px}
html.tm-rd .tm-sheet .tm-sub{text-align:center;color:var(--label2);font-size:13px;margin-bottom:16px}
html.tm-rd .tm-big{text-align:center;font-family:var(--font-d);font-weight:700;font-size:34px;letter-spacing:-.4px;margin:4px 0 16px;color:var(--label)}
html.tm-rd .tm-party{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:var(--nest);margin-bottom:10px}
html.tm-rd .tm-party .tm-bank{flex-shrink:0}
html.tm-rd .tm-party b{display:block;font-size:15px}
html.tm-rd .tm-party > div span{display:block;font-size:12.5px;color:var(--label2)}
html.tm-rd .tm-party .tm-bank{display:grid}
html.tm-rd .tm-arrow{display:flex;justify-content:center;margin:-4px 0 6px;color:var(--label3)}
html.tm-rd .tm-arrow svg{width:22px;height:22px}
html.tm-rd .tm-rows{border-radius:18px;border:1px solid var(--sep);overflow:hidden;margin:6px 0 16px}
html.tm-rd .tm-rows div{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;font-size:14px}
html.tm-rd .tm-rows div + div{border-top:1px solid var(--sep)}
html.tm-rd .tm-rows span{color:var(--label2)}
html.tm-rd .tm-rows b{text-align:right;font-weight:700;overflow-wrap:anywhere}
html.tm-rd .tm-rows div.total{background:var(--nest)}
html.tm-rd .tm-rows div.total b{font-family:var(--font-d);font-size:16px;color:var(--tint)}
html.tm-rd .tm-note{display:flex;gap:8px;font-size:12.5px;color:var(--label2);line-height:1.45;margin:-4px 2px 16px}
html.tm-rd .tm-note svg{width:16px;height:16px;flex-shrink:0;color:var(--pos);margin-top:1px}
html.tm-rd .tm-sheet .btn{margin-top:8px}

/* PIN transaksi (layar penuh) */
html.tm-rd .tm-lock.tm-pay .tm-lock-links{gap:28px}
html.tm-rd .tm-lock.tm-pay .tm-amtline{font-family:var(--font-d);font-weight:700;font-size:26px;margin-top:2px}
html.tm-rd .tm-lock .tm-spin{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;animation:tmSpin .8s linear infinite;margin:10px auto 0;display:none}
html.tm-rd .tm-lock.busy .tm-spin{display:block}
html.tm-rd .tm-lock.busy .tm-dots{opacity:.4}
@keyframes tmSpin{to{transform:rotate(360deg)}}

/* bukti transaksi */
html.tm-rd .tm-rcpt{text-align:center}
html.tm-rd .tm-check{width:84px;height:84px;margin:6px auto 12px;border-radius:50%;background:var(--green);display:grid;place-items:center;box-shadow:0 16px 30px -14px rgba(52,199,89,.9);animation:tmPopIn .6s cubic-bezier(.2,.9,.3,1.4) both}
html.tm-rd .tm-check.wait{background:var(--tint);box-shadow:0 16px 30px -14px rgba(26,95,216,.9)}
html.tm-rd .tm-check svg{width:44px;height:44px}
html.tm-rd .tm-check path{stroke-dasharray:40;stroke-dashoffset:40;animation:tmDraw .5s .35s cubic-bezier(.65,0,.35,1) forwards}
@keyframes tmDraw{to{stroke-dashoffset:0}}
@keyframes tmPopIn{0%{transform:scale(.3);opacity:0}70%{transform:scale(1.08);opacity:1}100%{transform:none}}
html.tm-rd .tm-rcpt .tm-rows{text-align:left}
html.tm-rd .tm-rcpt-edge{height:14px;margin:0 -20px 6px;background:radial-gradient(circle at 10px -4px,transparent 9px,var(--cell) 10px) -10px 0/20px 14px repeat-x}
html.tm-rd .tm-row2{display:flex;gap:10px}
html.tm-rd .tm-row2 .btn{flex:1}
/* [iOS 2026-09-23] penyesuaian tambahan untuk layar kunci & PIN */
html.tm-rd .tm-lock{background:radial-gradient(120% 80% at 15% 0%,#3654ff 0%,transparent 60%),radial-gradient(110% 70% at 100% 100%,#b04dff 0%,transparent 58%),linear-gradient(180deg,#0b1030,#190f3d)!important}
html.tm-rd .tm-key{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);font-weight:400}
html.tm-rd .tm-sheet{background:var(--bg-g)}
html.tm-rd .tm-party,html.tm-rd .tm-rows,html.tm-rd .tm-amt{background:var(--cell)}
html.tm-rd .tm-rows{border:0}
html.tm-rd .tm-rows div.total{background:var(--nest)}
html.tm-rd .tm-sheet .btn{margin-top:8px}
html.tm-rd .tm-sec-card .tm-shield{background:linear-gradient(180deg,color-mix(in srgb,var(--green) 84%,#fff),var(--green));color:#fff;width:40px;height:40px;border-radius:11px}
html.tm-rd .tm-sec-card .tm-shield.warn{background:linear-gradient(180deg,color-mix(in srgb,var(--orange) 84%,#fff),var(--orange));color:#fff}
html.tm-rd input[inputmode="numeric"][maxlength="6"]{font-family:var(--font-r)!important;letter-spacing:.5em;text-align:center}
html.tm-rd .pinpad-key,html.tm-rd [class*="pinpad"] button{border-radius:50%!important;background:var(--fill)!important;border:0!important;color:var(--label)!important}

/* ---------- 16. Tambalan warna inline (desain lama gelap) ---------- */
html.tm-rd [style*="rgba(139,92,246,.1"],html.tm-rd [style*="rgba(139,92,246,.06"],html.tm-rd [style*="rgba(139,92,246,.08"],html.tm-rd [style*="rgba(139,92,246,.12"]{background-color:var(--tint-fill)!important;border-color:transparent!important}
html.tm-rd[data-scheme="light"] [style*="background:rgba(255,255,255,.0"]:not(input):not(select):not(textarea),
html.tm-rd[data-scheme="light"] [style*="background: rgba(255,255,255,.0"]:not(input):not(select):not(textarea){background-color:var(--nest)!important}
html.tm-rd[data-scheme="light"] [style*="color:#3ddc97"],html.tm-rd[data-scheme="light"] [style*="color:#46d369"],html.tm-rd[data-scheme="light"] [style*="color:#22c55e"]{color:var(--pos)!important}
html.tm-rd[data-scheme="light"] [style*="color:#ffb020"],html.tm-rd[data-scheme="light"] [style*="color:#f5a623"],html.tm-rd[data-scheme="light"] [style*="color:#fbbf24"],html.tm-rd[data-scheme="light"] [style*="color:var(--amber)"]{color:var(--warn)!important}
html.tm-rd[data-scheme="light"] [style*="color:#ff5c7a"],html.tm-rd[data-scheme="light"] [style*="color:#e50914"],html.tm-rd[data-scheme="light"] [style*="color:#f87171"]{color:var(--neg)!important}
html.tm-rd[data-scheme="light"] [style*="color:#2dd4ff"],html.tm-rd[data-scheme="light"] [style*="color:#22d3ee"]{color:var(--tint)!important}
html.tm-rd[data-scheme="light"] [style*="color:#eaebf5"],html.tm-rd[data-scheme="light"] [style*="color:#fff;"]:not(.btn):not(button){color:var(--label)!important}
html.tm-rd [style*="background:#0a0c1c"],html.tm-rd [style*="background:#11142a"],html.tm-rd [style*="background:linear-gradient(180deg,#11142a"]{background:var(--cell)!important}

/* ---------- 17. Animasi ---------- */
@keyframes iosSpin{to{transform:rotate(360deg)}}
@keyframes iosFade{from{opacity:0}to{opacity:1}}
@keyframes iosRise{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@keyframes iosPop{0%{opacity:0;transform:scale(.6)}60%{opacity:1}100%{opacity:1;transform:none}}
@keyframes iosDraw{to{stroke-dashoffset:0}}
@keyframes iosGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes iosBarIn{from{opacity:0;transform:translateY(40px) scale(.94)}to{opacity:1;transform:none}}
@keyframes iosDrop{from{opacity:0;transform:scale(.88) translateY(-8px)}to{opacity:1;transform:none}}
@keyframes iosShine{0%{left:-60%;opacity:0}20%{opacity:1}100%{left:130%;opacity:0}}
@keyframes iosShim{from{background-position:120% 0}to{background-position:-100% 0}}
@keyframes iosAng{to{--ios-ang:360deg}}
@keyframes tmShake{0%,100%{transform:none}20%{transform:translateX(-12px)}40%{transform:translateX(10px)}60%{transform:translateX(-7px)}80%{transform:translateX(4px)}}
@keyframes tmLockOut{to{opacity:0;transform:scale(1.08);visibility:hidden}}
@keyframes tmSheetIn{from{transform:translateY(100%)}to{transform:none}}
@media(prefers-reduced-motion:reduce){
  html.tm-rd *,html.tm-rd *::before,html.tm-rd *::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
