/* ═══════════════════════════════════════════════════════════
   LION WALLET — 2026-10 visual layer  (prefix w-, charts wc-)
   Loaded AFTER the older inline styles in wallet.html, so the
   older screens keep working and the new screens refine them.

   The rules, in one place:
   · black / charcoal surfaces, soft elevated cards, THIN gold outlines
   · white primary numbers, muted grey secondary text
   · green / red ONLY for money moving in / out — gold is the brand
   · 16–20px corners, no giant empty cards, small badges
   · nothing wider than the phone: every row can shrink
   ═══════════════════════════════════════════════════════════ */

:root{
  --w-bg:#0a0a08; --w-s1:#121110; --w-s2:#181714; --w-s3:#201e1a;
  --w-gold:#C9A227; --w-gold2:#D9B948; --w-goldline:rgba(201,162,39,.18); --w-goldsoft:rgba(201,162,39,.10);
  --w-ink:#fff; --w-ink2:rgba(255,255,255,.72); --w-ink3:rgba(255,255,255,.5); --w-ink4:rgba(255,255,255,.34);
  --w-pos:#3fb27f; --w-neg:#e06666; --w-hair:rgba(255,255,255,.07);
  --w-r:18px; --w-r2:14px;
  --w-navh:64px;
}

body.w-body{ background:var(--w-bg); -webkit-tap-highlight-color:transparent; }
body.w-body.w-sheet-open{ overflow:hidden; }
.w-wrap{ max-width:720px; padding-left:16px; padding-right:16px;
  padding-bottom:calc(var(--w-navh) + 40px + env(safe-area-inset-bottom)); }
#wApp, #wApp *{ box-sizing:border-box; }
#wApp, .w-sheet{ overflow-wrap:anywhere; }
.w-hidden{ display:none !important; }

/* money direction colours */
.pos{ color:var(--w-pos) !important; } .neg{ color:var(--w-neg) !important; } .neu{ color:var(--w-ink2); }

/* the eye button: every amount blurs */
body.w-masked .w-m{ filter:blur(7px); user-select:none; transition:filter .2s; }
.w-m{ transition:filter .2s; font-variant-numeric:normal; }
.w-changed{ animation:wPulse 1.2s ease; }
@keyframes wPulse{ 0%{ color:var(--w-gold2); } 100%{} }
@media (prefers-reduced-motion: reduce){ .w-changed{ animation:none; } }
.w-fit{ display:block; white-space:nowrap; overflow:hidden; text-overflow:clip; min-width:0; max-width:100%; }

/* focus: visible, gold, never the browser's blue */
#wApp :focus-visible, .w-sheet :focus-visible, .w-nav :focus-visible{ outline:2px solid var(--w-gold2); outline-offset:2px; border-radius:10px; }
#wApp button, .w-sheet button, .w-nav button{ -webkit-tap-highlight-color:transparent; touch-action:manipulation; }

/* ── top bar ─────────────────────────────────────────────── */
.w-top{ display:flex; align-items:center; gap:10px; padding:14px 0 12px; min-width:0; }
.w-top-t{ flex:1; min-width:0; }
.w-top h1{ font-family:'Cinzel',serif; font-size:1.22rem; color:#fff; margin:0; letter-spacing:.02em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-top h1 span{ color:var(--w-gold2); }
.w-top h1.w-greet{ font-family:'Inter',sans-serif; font-weight:700; font-size:1.02rem; color:var(--w-ink2); letter-spacing:0; }
.w-top .w-hello{ font-size:.78rem; color:var(--w-ink3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-top-r{ display:flex; align-items:center; gap:8px; flex-shrink:0; }
.w-modebtn{ display:inline-flex; align-items:center; gap:6px; height:36px; padding:0 11px; border-radius:999px; cursor:pointer;
  background:var(--w-s2); border:1px solid var(--w-goldline); color:var(--w-ink2); font:700 .74rem 'Inter',sans-serif; max-width:132px; }
.w-modebtn span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-modebtn.biz{ color:var(--w-gold2); border-color:rgba(201,162,39,.45); background:var(--w-goldsoft); }
.w-icon-btn{ width:36px; height:36px; border-radius:12px; }
.w-icon-btn:active, .w-modebtn:active{ background:var(--w-goldsoft); border-color:var(--w-gold); }

/* ── cards ───────────────────────────────────────────────── */
.w-card{ background:linear-gradient(180deg,var(--w-s2),var(--w-s1)); border:1px solid var(--w-goldline);
  border-radius:var(--w-r); padding:16px; margin-bottom:12px; box-shadow:0 1px 0 rgba(255,255,255,.03) inset, 0 8px 24px rgba(0,0,0,.25); }
.w-card.flush{ padding:4px 0; overflow:hidden; }
button.w-card{ display:flex; width:100%; text-align:left; cursor:pointer; color:inherit; font:inherit; }
.w-card h2{ font-family:'Inter',sans-serif; font-size:1rem; font-weight:800; color:#fff; margin:0; letter-spacing:-.005em; }
.w-card h3{ font-family:'Inter',sans-serif; font-size:.92rem; font-weight:800; color:#fff; margin:0 0 8px; }
.w-sec-h{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; flex-wrap:wrap; }
.w-sec-h > *{ min-width:0; }
.w-sub{ font-size:.78rem; color:var(--w-ink3); line-height:1.5; }
.w-note{ font-size:.73rem; color:var(--w-ink4); line-height:1.55; margin-top:8px; }
.w-note.center{ text-align:center; margin:-4px 8px 14px; }
.w-h3{ font-family:'Inter',sans-serif; font-size:.86rem; font-weight:800; color:#fff; margin:16px 0 8px; }
.w-empty.small{ padding:16px 8px; font-size:.8rem; }
.w-empty .wi{ opacity:.5; margin-bottom:6px; }
.w-disc{ font-size:.72rem; color:var(--w-ink4); line-height:1.6; margin:12px 2px 16px; }
.w-card .w-disc{ margin:14px 0 0; }
.w-disc a, .w-note a{ color:var(--w-gold2); }
.w-btn-row.end{ justify-content:flex-end; }
.w-btn-row.between{ justify-content:space-between; align-items:center; }
.w-btn{ font-family:'Inter',sans-serif; }
.w-btn .wi{ flex-shrink:0; }
.w-btn:active{ transform:scale(.98); }
.w-linkbtn{ display:inline-flex; align-items:center; gap:4px; background:none; border:none; color:var(--w-gold2); cursor:pointer;
  font:700 .78rem 'Inter',sans-serif; padding:6px 2px; }
.w-linkbtn.block{ display:flex; width:100%; justify-content:center; margin-top:8px; }
.w-sep{ height:1px; background:var(--w-hair); margin:14px 0; }
.w-okline{ display:flex; gap:8px; align-items:flex-start; font-size:.78rem; line-height:1.55; color:var(--w-ink2);
  background:rgba(63,178,127,.07); border:1px solid rgba(63,178,127,.22); border-radius:12px; padding:10px 12px; margin:10px 0; }
.w-okline .wi{ flex-shrink:0; margin-top:1px; color:var(--w-pos); }
.w-okline.warn{ background:rgba(201,162,39,.07); border-color:rgba(201,162,39,.25); }
.w-okline.warn .wi{ color:var(--w-gold2); }

/* ── segmented control ───────────────────────────────────── */
.w-seg{ display:flex; gap:2px; background:rgba(255,255,255,.04); border:1px solid var(--w-hair); border-radius:12px; padding:3px; margin:0 0 12px; }
.w-seg button{ flex:1 1 0; min-width:0; background:none; border:none; color:var(--w-ink3); border-radius:9px; padding:7px 4px; cursor:pointer;
  font:700 .74rem 'Inter',sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-seg button.on{ background:var(--w-s3); color:var(--w-gold2); box-shadow:0 0 0 1px rgba(201,162,39,.35) inset; }
.w-seg.big button{ padding:9px 4px; font-size:.8rem; }
.w-seg.small{ max-width:280px; margin:10px 0; }

/* ── HERO ────────────────────────────────────────────────── */
.w-hero{ position:relative; border-radius:22px; padding:18px 16px 16px; margin-bottom:12px; overflow:hidden;
  background:radial-gradient(120% 90% at 100% 0%,rgba(201,162,39,.16),transparent 55%),linear-gradient(160deg,#1b1915 0%,#0f0e0c 100%);
  border:1px solid rgba(201,162,39,.32); box-shadow:0 18px 40px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.02) inset; }
.w-hero-top{ display:flex; align-items:center; gap:8px; }
.w-brand{ font-family:'Cinzel',serif; font-weight:800; font-size:.78rem; letter-spacing:.2em; color:var(--w-gold2); }
.w-biztag{ font:800 .58rem 'Inter',sans-serif; letter-spacing:.12em; color:#0a0a08; background:var(--w-gold); padding:3px 7px; border-radius:999px; }
.w-eye{ margin-left:auto; width:38px; height:38px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.05); border:1px solid var(--w-hair); color:var(--w-ink2); cursor:pointer; }
.w-eye:active{ background:var(--w-goldsoft); }
.w-hero-k{ font-size:.78rem; color:var(--w-ink3); margin-top:10px; font-weight:600; }
.w-hero-v{ font-family:'Inter',sans-serif; font-weight:800; font-size:2.6rem; color:#fff; letter-spacing:-.025em; line-height:1.12; margin:2px 0 4px; }
.w-hero-hint{ display:inline-flex; align-items:center; gap:4px; background:none; border:none; padding:2px 0; color:var(--w-gold2);
  font:600 .74rem 'Inter',sans-serif; cursor:pointer; text-align:left; }
.w-hero-row{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:14px; padding-top:12px; border-top:1px solid var(--w-hair); }
.w-hr{ min-width:0; }
.w-hr-k{ display:flex; align-items:center; gap:4px; font-size:.7rem; color:var(--w-ink3); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-hr b{ font:800 1rem 'Inter',sans-serif; color:#fff; margin-top:2px; }
.w-arrow{ display:inline-flex; width:16px; height:16px; border-radius:50%; align-items:center; justify-content:center; flex-shrink:0; }
.w-arrow.up{ background:rgba(63,178,127,.16); color:var(--w-pos); }
.w-arrow.dn{ background:rgba(224,102,102,.16); color:var(--w-neg); }
.w-hero-cap{ font-size:.66rem; color:var(--w-ink4); margin-top:6px; }
.w-qa{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-top:16px; }
.w-qa-b{ display:flex; flex-direction:column; align-items:center; gap:6px; background:none; border:none; cursor:pointer; color:var(--w-ink2);
  font:700 .7rem 'Inter',sans-serif; min-width:0; padding:0; }
.w-qa-b > span:last-child{ max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-qa-c{ width:50px; height:50px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--w-gold2);
  background:rgba(201,162,39,.10); border:1px solid rgba(201,162,39,.38); transition:transform .12s, background .12s; }
.w-qa-b:active .w-qa-c{ transform:scale(.93); background:rgba(201,162,39,.22); }
@media (hover:hover){ .w-qa-b:hover .w-qa-c{ background:rgba(201,162,39,.18); } }

.w-start h2{ margin-bottom:4px; }

/* ── Available to spend ──────────────────────────────────── */
.w-avail{ align-items:center; gap:12px; }
.w-avail-b{ flex:1; min-width:0; }
.w-avail-v{ font:800 2rem 'Inter',sans-serif; color:#fff; letter-spacing:-.02em; line-height:1.1; }
.w-avail.neg .w-avail-v{ color:var(--w-neg); }
.w-avail-k{ font-size:.86rem; font-weight:700; color:var(--w-gold2); margin-top:2px; }
.w-avail-s{ font-size:.76rem; color:var(--w-ink3); margin-top:4px; line-height:1.45; }
.w-avail > .wi{ color:var(--w-ink4); flex-shrink:0; }
.w-formula{ border:1px solid var(--w-hair); border-radius:14px; overflow:hidden; }
.w-fr{ display:flex; justify-content:space-between; gap:12px; padding:11px 12px; font-size:.82rem; color:var(--w-ink2); border-bottom:1px solid var(--w-hair); }
.w-fr b{ color:#fff; font-weight:700; white-space:nowrap; }
.w-fr.total{ background:rgba(201,162,39,.07); border-bottom:none; font-weight:800; color:#fff; }

/* ── cash-flow card ──────────────────────────────────────── */
.w-cfsum{ display:flex; flex-wrap:wrap; gap:6px 16px; font-size:.76rem; color:var(--w-ink3); margin-top:8px; }
.w-cfsum b{ color:#fff; font-weight:700; }

/* ── month grid ──────────────────────────────────────────── */
.w-mgrid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.w-mgrid.three{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.w-mc{ background:rgba(255,255,255,.03); border:1px solid var(--w-hair); border-radius:var(--w-r2); padding:11px; min-width:0; }
.w-mc-k{ font-size:.7rem; color:var(--w-ink3); font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-mc-v{ font:800 1.18rem 'Inter',sans-serif; color:#fff; margin-top:4px; letter-spacing:-.01em; }
.w-mc-s{ font-size:.68rem; color:var(--w-ink4); margin-top:3px; line-height:1.4; }
.w-mc-d{ font-size:.7rem; font-weight:700; color:var(--w-ink3); margin-top:5px; }
.w-mc-d.good{ color:var(--w-pos); } .w-mc-d.bad{ color:var(--w-neg); }

/* ── donut + list ────────────────────────────────────────── */
.w-donut{ display:flex; gap:16px; align-items:center; flex-wrap:wrap; }
.w-donut .wc-donut{ width:156px; flex-shrink:0; margin:0 auto; }
.w-dlist{ flex:1 1 200px; min-width:0; display:flex; flex-direction:column; gap:2px; }
.w-dli{ display:flex; align-items:center; gap:10px; background:none; border:none; border-radius:10px; padding:6px 4px; color:var(--w-ink2);
  cursor:pointer; font:600 .82rem 'Inter',sans-serif; text-align:left; min-width:0; width:100%; }
button.w-dli:active{ background:rgba(255,255,255,.04); }
.w-dli-n{ flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#fff; }
.w-dli-p{ color:var(--w-ink3); font-size:.74rem; }
.w-dli b{ color:#fff; font-weight:700; white-space:nowrap; }

/* category badge */
.w-cat{ --c:#8a8984; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; flex-shrink:0;
  color:var(--c); background:color-mix(in srgb, var(--c) 16%, transparent); border:1px solid color-mix(in srgb, var(--c) 30%, transparent); }

/* ── timeline ────────────────────────────────────────────── */
.w-tl{ display:flex; flex-direction:column; }
.w-tl-i{ display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid var(--w-hair); min-width:0; }
.w-tl-i:last-child{ border-bottom:none; }
.w-tl-d{ width:44px; flex-shrink:0; text-align:center; font-size:.66rem; color:var(--w-ink3); font-weight:700; text-transform:uppercase; line-height:1.15;
  background:rgba(255,255,255,.03); border:1px solid var(--w-hair); border-radius:10px; padding:5px 0; }
.w-tl-d b{ display:block; font-size:1.02rem; color:#fff; text-transform:none; }
.w-tl-i.in .w-tl-d{ border-color:rgba(63,178,127,.3); }
.w-tl-m{ flex:1; min-width:0; display:flex; flex-direction:column; }
.w-tl-n{ flex:1; min-width:0; font-size:.86rem; font-weight:700; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-tl-k{ font-size:.72rem; color:var(--w-ink3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-tl-i > b{ font:700 .88rem 'Inter',sans-serif; color:#fff; white-space:nowrap; flex-shrink:0; }
.w-after{ display:flex; justify-content:space-between; gap:10px; align-items:center; margin-top:8px; padding:10px 12px;
  border-radius:12px; background:rgba(201,162,39,.06); border:1px solid rgba(201,162,39,.18); font-size:.8rem; color:var(--w-ink2); }
.w-after b{ color:#fff; font-weight:800; white-space:nowrap; }

/* ── wealth strip ────────────────────────────────────────── */
.w-wealth{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:0; overflow:hidden; }
.w-wealth.inner{ margin-top:14px; border:1px solid var(--w-hair); border-radius:14px; }
.w-wl{ display:flex; flex-direction:column; gap:3px; padding:13px 10px; background:none; border:none; border-right:1px solid var(--w-hair);
  color:var(--w-ink3); font:600 .7rem 'Inter',sans-serif; text-align:left; cursor:pointer; min-width:0; }
.w-wl:last-child{ border-right:none; }
.w-wl span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-wl b{ font:800 1rem 'Inter',sans-serif; color:#fff; }
div.w-wl{ cursor:default; }

/* ── insights ────────────────────────────────────────────── */
.w-ins{ display:flex; align-items:center; gap:12px; width:100%; text-align:left; background:none; border:none; border-top:1px solid var(--w-hair);
  padding:12px 0; color:var(--w-ink2); cursor:pointer; font:500 .84rem/1.5 'Inter',sans-serif; }
.w-sec-h + .w-ins, h2 + .w-ins{ border-top:none; }
.w-ins > .wi{ color:var(--w-ink4); flex-shrink:0; }
.w-ins-i{ width:34px; height:34px; border-radius:11px; display:flex; align-items:center; justify-content:center; flex-shrink:0;
  background:rgba(255,255,255,.05); color:var(--w-ink2); }
.w-ins.warn .w-ins-i{ background:rgba(201,162,39,.12); color:var(--w-gold2); }
.w-ins.up .w-ins-i{ background:rgba(63,178,127,.12); color:var(--w-pos); }
.w-ins-t{ flex:1; min-width:0; color:#fff; }
.w-card > h2 + .w-ins{ margin-top:6px; }

/* money health */
.w-hp{ display:flex; gap:12px; padding:12px 0; border-top:1px solid var(--w-hair); }
.w-hp-i{ width:34px; height:34px; border-radius:11px; display:flex; align-items:center; justify-content:center; flex-shrink:0; background:rgba(255,255,255,.05); color:var(--w-gold2); }
.w-hp-b{ flex:1; min-width:0; }
.w-hp-h{ display:flex; justify-content:space-between; gap:8px; align-items:center; flex-wrap:wrap; }
.w-hp-h b{ font-size:.86rem; color:#fff; }
.w-hp-t{ font-size:.76rem; color:var(--w-ink3); margin-top:6px; line-height:1.5; }
.w-chipst{ display:inline-flex; align-items:center; gap:4px; font:700 .64rem 'Inter',sans-serif; padding:3px 8px; border-radius:999px;
  background:rgba(255,255,255,.06); color:var(--w-ink3); white-space:nowrap; }
.w-chipst.good{ background:rgba(63,178,127,.14); color:var(--w-pos); }
.w-chipst.watch, .w-chipst.warn{ background:rgba(201,162,39,.14); color:var(--w-gold2); }
.w-chipst.act, .w-chipst.bad{ background:rgba(224,102,102,.14); color:var(--w-neg); }
.w-chipst.info{ background:rgba(57,135,229,.14); color:#7db1f0; }
.w-chips-s{ display:flex; flex-wrap:wrap; gap:4px; margin-top:5px; }

.w-stats.tight{ grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:8px; margin-top:12px; }
.w-stat{ border-radius:var(--w-r2); min-width:0; }
.w-stat-v{ font-family:'Inter',sans-serif; font-weight:800; font-size:1.08rem; overflow:hidden; text-overflow:ellipsis; }
.w-stat-v.sm{ font-size:.9rem; }

.w-coachlink{ align-items:center; gap:12px; }
.w-coachlink > span:nth-child(2){ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.w-coachlink b{ color:#fff; font-size:.9rem; }
.w-coachlink-i{ width:42px; height:42px; border-radius:13px; display:flex; align-items:center; justify-content:center; flex-shrink:0;
  background:var(--w-goldsoft); border:1px solid var(--w-goldline); color:var(--w-gold2); font-size:1.3rem; }
.w-coachlink > .wi{ color:var(--w-ink4); flex-shrink:0; }

/* ── budgets ─────────────────────────────────────────────── */
.w-buds{ display:flex; flex-direction:column; }
.w-bud{ display:flex; gap:12px; align-items:flex-start; width:100%; text-align:left; background:none; border:none; border-top:1px solid var(--w-hair);
  padding:12px 0; cursor:pointer; color:inherit; font:inherit; }
.w-bud:first-child{ border-top:none; }
.w-bud.overall{ background:rgba(201,162,39,.05); border:1px solid var(--w-goldline); border-radius:14px; padding:12px; margin-bottom:6px; }
.w-bud-b{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.w-bud-h{ display:flex; gap:8px; align-items:center; justify-content:space-between; }
.w-bud-h b{ font-size:.88rem; color:#fff; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-bud-p{ font-size:.64rem; font-weight:700; color:var(--w-ink3); background:rgba(255,255,255,.05); border-radius:999px; padding:2px 7px; flex-shrink:0; }
.w-bud-a{ font-size:.8rem; color:var(--w-ink3); }
.w-bud-a .w-m:first-child{ color:#fff; font-weight:800; font-size:.92rem; }
.w-bud-s{ font-size:.72rem; color:var(--w-ink3); }
.w-bar{ position:relative; }
.w-bar-f{ display:block; }
.w-bar.thin{ height:5px; margin-top:4px; }
.w-bar.thick{ height:10px; margin:10px 0 4px; }
.w-bar-pace{ position:absolute; top:-2px; bottom:-2px; width:2px; background:rgba(255,255,255,.55); border-radius:2px; transform:translateX(-1px); }
.w-bar-f.good{ background:linear-gradient(90deg,#4ecf95,#3fb27f); }
.w-suggest{ margin-top:14px; padding-top:12px; border-top:1px solid var(--w-hair); display:flex; flex-direction:column; gap:6px; }
.w-sug{ display:flex; align-items:center; gap:10px; width:100%; background:rgba(255,255,255,.03); border:1px dashed var(--w-goldline); border-radius:12px;
  padding:9px 10px; color:var(--w-ink2); cursor:pointer; font:600 .78rem 'Inter',sans-serif; text-align:left; }
.w-sug span{ flex:1; min-width:0; }
.w-sug b{ color:var(--w-gold2); white-space:nowrap; }

.w-grid2{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:12px; }
.w-grid2 .w-card{ margin:0; }
.w-mini{ flex-direction:column; gap:5px; align-items:flex-start; min-width:0; }
.w-mini > .wi{ color:var(--w-gold2); }
.w-mini b{ color:#fff; font-size:.86rem; }
.w-mini-r{ display:flex; flex-direction:column; width:100%; font-size:.72rem; color:var(--w-ink3); min-width:0; }
.w-mini-r > span:first-child{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-mini-v{ font:800 1rem 'Inter',sans-serif; color:#fff; margin-top:auto; }
.w-mini .w-sub.neg{ color:var(--w-neg); }

/* ── calendar ────────────────────────────────────────────── */
.w-cal-h{ display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.w-cal-h h2{ text-transform:capitalize; }
.w-cal-w, .w-cal{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; }
.w-cal-w span{ text-align:center; font-size:.62rem; font-weight:700; color:var(--w-ink4); padding-bottom:4px; text-transform:capitalize; overflow:hidden; white-space:nowrap; }
.w-cal-c{ aspect-ratio:1/1; min-height:36px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; border-radius:10px;
  background:rgba(255,255,255,.02); border:1px solid transparent; color:var(--w-ink2); font:600 .8rem 'Inter',sans-serif; cursor:pointer; padding:0; }
.w-cal-c.empty{ background:none; cursor:default; }
.w-cal-c.today{ border-color:rgba(201,162,39,.45); color:#fff; }
.w-cal-c.sel{ background:var(--w-goldsoft); border-color:var(--w-gold); color:#fff; }
.w-cal-dots{ display:flex; gap:2px; height:5px; }
.w-cal-dots i, .w-cal-legend i{ display:inline-block; width:5px; height:5px; border-radius:50%; }
i.out{ background:var(--w-gold); } i.in{ background:var(--w-pos); } i.goal{ background:transparent; box-shadow:0 0 0 1px #fff inset; } i.late{ background:var(--w-neg); }
.w-cal-legend{ display:flex; flex-wrap:wrap; gap:6px 14px; margin-top:12px; font-size:.7rem; color:var(--w-ink3); }
.w-cal-legend span{ display:inline-flex; align-items:center; gap:5px; }

/* ── More ────────────────────────────────────────────────── */
.w-moregrid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-bottom:12px; }
.w-moreb{ display:flex; flex-direction:column; align-items:center; gap:7px; padding:14px 4px 12px; border-radius:16px; cursor:pointer; min-width:0;
  background:linear-gradient(180deg,var(--w-s2),var(--w-s1)); border:1px solid var(--w-goldline); color:var(--w-ink2); font:700 .7rem 'Inter',sans-serif; text-align:center; }
.w-moreb > span:last-child{ max-width:100%; overflow:hidden; text-overflow:ellipsis; line-height:1.25; }
.w-moreb-i{ width:42px; height:42px; border-radius:13px; display:flex; align-items:center; justify-content:center; color:var(--w-gold2);
  background:var(--w-goldsoft); border:1px solid rgba(201,162,39,.25); flex-shrink:0; }
.w-moreb:active{ border-color:var(--w-gold); background:var(--w-goldsoft); }
.w-list-h{ font:800 .7rem 'Inter',sans-serif; letter-spacing:.08em; text-transform:uppercase; color:var(--w-gold2); padding:12px 16px 6px; }
body[data-wlang="si"] .w-list-h{ letter-spacing:0; text-transform:none; font-size:.78rem; }
.w-li{ display:flex; align-items:center; gap:12px; width:100%; padding:12px 16px; background:none; border:none; border-top:1px solid var(--w-hair);
  color:#fff; font:600 .86rem 'Inter',sans-serif; text-align:left; cursor:pointer; min-width:0; }
.w-card:not(.flush) .w-li{ padding:11px 0; }
.w-li:disabled{ cursor:default; color:var(--w-ink2); }
.w-li > span:not(.w-li-i):not(.w-acc-i):not(.w-cat){ flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-li > .w-sub{ flex:0 1 auto !important; }
.w-li > b{ white-space:nowrap; font-weight:800; }
.w-li > .wi:last-child{ color:var(--w-ink4); flex-shrink:0; }
.w-li-i{ width:32px; height:32px; border-radius:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; background:rgba(255,255,255,.05); color:var(--w-gold2); }
.w-li-b{ display:flex; flex-direction:column; flex:1; min-width:0; }
.w-li-b > span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-acc-i{ width:36px; height:36px; border-radius:11px; display:flex; align-items:center; justify-content:center; flex-shrink:0;
  background:linear-gradient(140deg,#2a261d,#191713); border:1px solid var(--w-goldline); color:var(--w-gold2); font:800 .72rem 'Inter',sans-serif; }

/* ── search & filters ────────────────────────────────────── */
.w-search{ display:flex; align-items:center; gap:8px; background:var(--w-s2); border:1px solid var(--w-goldline); border-radius:14px;
  padding:0 6px 0 12px; margin-bottom:10px; color:var(--w-ink3); }
.w-search:focus-within{ border-color:var(--w-gold); }
.w-search input{ flex:1; min-width:0; background:none; border:none; outline:none; color:#fff; font:500 .9rem 'Inter',sans-serif; padding:12px 0; }
.w-search input::-webkit-search-cancel-button{ display:none; }
.w-search-x{ background:none; border:none; color:var(--w-ink3); padding:8px; cursor:pointer; }
.w-fchips{ display:flex; gap:6px; overflow-x:auto; padding:0 0 4px; margin-bottom:8px; scrollbar-width:none; }
.w-fchips::-webkit-scrollbar{ display:none; }
.w-fchip{ display:inline-flex; align-items:center; gap:4px; flex-shrink:0; background:var(--w-s2); border:1px solid var(--w-hair); color:var(--w-ink2);
  border-radius:999px; padding:7px 11px; font:700 .74rem 'Inter',sans-serif; cursor:pointer; white-space:nowrap; max-width:220px; overflow:hidden; text-overflow:ellipsis; }
.w-fchip.on{ background:var(--w-goldsoft); border-color:rgba(201,162,39,.45); color:var(--w-gold2); }
.w-fchip-x{ display:inline-flex; margin-left:2px; opacity:.8; }
.w-txsum{ font-size:.76rem; color:var(--w-ink3); margin:2px 2px 8px; }
.w-txsum .w-m{ color:#fff; font-weight:700; }

/* ── transactions ────────────────────────────────────────── */
.w-day + .w-day{ border-top:1px solid var(--w-hair); }
.w-day-h{ display:flex; justify-content:space-between; gap:10px; padding:12px 16px 4px; font:700 .72rem 'Inter',sans-serif; color:var(--w-ink3); }
.w-day-h > span:first-child{ text-transform:capitalize; }
.w-tx{ display:flex; align-items:center; gap:12px; width:100%; padding:9px 16px; background:none; border:none; color:inherit; text-align:left; cursor:pointer; min-width:0; font:inherit; }
.w-tx:active{ background:rgba(255,255,255,.03); }
@media (hover:hover){ .w-tx:hover, .w-occ:hover, .w-li:not(:disabled):hover, .w-hold:hover{ background:rgba(255,255,255,.025); } }
.w-tx-b{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.w-tx-n{ font:700 .88rem 'Inter',sans-serif; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-tx-s{ font-size:.72rem; color:var(--w-ink3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block; }
.w-tx-s .wi{ vertical-align:-2px; opacity:.8; }
.w-tx-v{ display:flex; flex-direction:column; align-items:flex-end; flex-shrink:0; font:800 .9rem 'Inter',sans-serif; color:#fff; max-width:45%; }
.w-tx-v .w-m{ white-space:nowrap; }
.w-tx-t{ font-size:.66rem; color:var(--w-ink4); font-weight:600; margin-top:2px; }

/* pick lists inside sheets */
.w-pick{ display:flex; flex-direction:column; gap:4px; }
.w-pick-i{ display:flex; align-items:center; gap:12px; width:100%; padding:12px; border-radius:12px; background:rgba(255,255,255,.03); border:1px solid var(--w-hair);
  color:#fff; font:600 .88rem 'Inter',sans-serif; text-align:left; cursor:pointer; }
.w-pick-i > span{ flex:1; min-width:0; }
.w-pick-i.on{ border-color:var(--w-gold); background:var(--w-goldsoft); }
.w-pick-i .wi:last-child{ color:var(--w-gold2); }

/* category picker */
.w-catgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(96px,1fr)); gap:6px; }
.w-catopt{ display:flex; flex-direction:column; align-items:center; gap:5px; padding:9px 4px; border-radius:14px; background:rgba(255,255,255,.025);
  border:1px solid var(--w-hair); color:var(--w-ink2); font:600 .68rem 'Inter',sans-serif; cursor:pointer; min-width:0; text-align:center; }
.w-catopt span:last-child{ max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.w-catopt.on{ border-color:var(--w-gold); background:var(--w-goldsoft); color:#fff; }
.w-catopt.new{ border-style:dashed; }
.w-iconpick{ display:grid; grid-template-columns:repeat(auto-fill,minmax(42px,1fr)); gap:6px; }
.w-ip{ height:42px; border-radius:12px; background:rgba(255,255,255,.03); border:1px solid var(--w-hair); color:var(--w-ink2); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.w-ip.on{ border-color:var(--w-gold); color:var(--w-gold2); background:var(--w-goldsoft); }
.w-colpick{ display:flex; flex-wrap:wrap; gap:8px; }
.w-cp{ width:34px; height:34px; border-radius:50%; background:var(--c); border:3px solid transparent; cursor:pointer; box-shadow:0 0 0 1px rgba(255,255,255,.12); }
.w-cp.on{ border-color:#fff; }

/* transaction detail */
.w-txd-h{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:4px; margin:-4px 0 14px; }
.w-txd-a{ font:800 2rem 'Inter',sans-serif; color:#fff; letter-spacing:-.02em; margin-top:6px; max-width:100%; overflow-wrap:anywhere; }
.w-txd-n{ font:700 1rem 'Inter',sans-serif; color:#fff; }
.w-dl{ border:1px solid var(--w-hair); border-radius:14px; overflow:hidden; margin-bottom:12px; }
.w-dl-r{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:11px 12px; border-bottom:1px solid var(--w-hair); font-size:.82rem; color:var(--w-ink3); }
.w-dl-r:last-child{ border-bottom:none; }
.w-dl-r > span{ flex-shrink:0; }
.w-dl-r b{ color:#fff; font-weight:700; text-align:right; min-width:0; }
.w-split-list{ border:1px solid var(--w-hair); border-radius:14px; padding:4px 12px; margin-bottom:12px; }
.w-split-r{ display:flex; align-items:center; gap:10px; padding:7px 0; font-size:.82rem; color:var(--w-ink2); }
.w-split-r span{ flex:1; min-width:0; }
.w-split-r b{ color:#fff; }
.w-split-e{ display:flex; gap:8px; align-items:center; margin-bottom:8px; }
.w-split-e select, .w-split-e input{ background:var(--w-card2); border:1px solid rgba(255,255,255,.1); border-radius:11px; color:#fff; padding:10px; font:500 .86rem 'Inter',sans-serif; min-width:0; }
.w-split-e select{ flex:1.4; } .w-split-e input{ flex:1; }
.w-actgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(88px,1fr)); gap:8px; margin:4px 0 12px; }
.w-act{ display:flex; flex-direction:column; align-items:center; gap:6px; padding:12px 6px; border-radius:14px; background:rgba(255,255,255,.035);
  border:1px solid var(--w-hair); color:var(--w-ink2); font:700 .7rem 'Inter',sans-serif; cursor:pointer; text-align:center; min-width:0; }
.w-act .wi{ color:var(--w-gold2); }
.w-act.danger .wi{ color:var(--w-neg); }
.w-act:active{ background:var(--w-goldsoft); border-color:var(--w-gold); }
.w-filepick{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.w-rcimg{ display:block; width:100%; max-height:62dvh; object-fit:contain; border-radius:12px; background:#000; margin-bottom:12px; }
.w-typegrid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.w-typegrid.two{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.w-typeopt{ display:flex; flex-direction:column; align-items:center; gap:7px; padding:14px 4px; border-radius:16px; background:rgba(255,255,255,.035);
  border:1px solid var(--w-goldline); color:#fff; font:700 .74rem 'Inter',sans-serif; cursor:pointer; min-width:0; text-align:center; }
.w-typeopt .wi{ color:var(--w-gold2); }
.w-typeopt span{ max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* ── sheet ───────────────────────────────────────────────── */
.w-modal{ backdrop-filter:blur(3px); }
.w-sheet{ background:linear-gradient(180deg,#16150f,#0f0e0b); border-color:rgba(201,162,39,.28); padding-top:8px; overscroll-behavior:contain; }
.w-sheet.wide{ max-width:720px; }
.w-sheet-grab{ width:40px; height:4px; border-radius:4px; background:rgba(255,255,255,.18); margin:0 auto 10px; }
.w-sheet-h h3{ font-family:'Inter',sans-serif; font-weight:800; font-size:1.05rem; min-width:0; overflow:hidden; text-overflow:ellipsis; }
.w-sheet-x{ display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:11px; background:rgba(255,255,255,.05); }
@media(min-width:640px){ .w-sheet-grab{ display:none; } }
.w-f input, .w-f select, .w-f textarea{ font-size:16px; } /* 16px: iOS does not zoom the page on focus */
.w-switch-t{ font-size:.86rem; }

/* ── bills / subs / generic rows ─────────────────────────── */
.w-occ{ display:flex; align-items:center; gap:12px; width:100%; padding:11px 16px; background:none; border:none; border-top:1px solid var(--w-hair);
  color:inherit; text-align:left; cursor:pointer; min-width:0; font:inherit; }
.w-occ:first-child{ border-top:none; }
.w-occ.dim{ opacity:.55; }
.w-occ-b{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.w-occ-n{ font:700 .88rem 'Inter',sans-serif; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-occ-s{ font-size:.72rem; color:var(--w-ink3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-occ-r{ display:flex; flex-direction:column; align-items:flex-end; gap:4px; flex-shrink:0; max-width:46%; }
.w-occ-r b{ font:800 .9rem 'Inter',sans-serif; color:#fff; white-space:nowrap; }

/* goals */
.w-goal-h{ display:flex; align-items:center; gap:12px; }
.w-goal-t{ flex:1; min-width:0; display:flex; flex-direction:column; }
.w-goal-t b{ color:#fff; font-size:.95rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-goal-p{ font:800 1rem 'Inter',sans-serif; color:var(--w-gold2); }
.w-goal-a{ font:800 1.35rem 'Inter',sans-serif; color:#fff; margin-top:12px; overflow-wrap:anywhere; }
.w-goal-a .w-sub{ font-size:.86rem; font-weight:600; }
.w-goal-need{ font-size:.86rem; color:#fff; margin:6px 0 4px; }
.w-goal-need b{ font-weight:800; }

/* net worth & portfolio heroes */
.w-nw, .w-pf{ background:radial-gradient(110% 80% at 100% 0%,rgba(201,162,39,.12),transparent 55%),linear-gradient(180deg,var(--w-s2),var(--w-s1)); }
.w-nw-v{ font:800 2.3rem 'Inter',sans-serif; color:#fff; letter-spacing:-.02em; line-height:1.15; margin:2px 0 4px; }
.w-pf-ch{ font-size:.86rem; font-weight:700; color:#fff; margin-bottom:4px; }
.w-connect h3{ display:flex; align-items:center; gap:8px; margin:0; }

/* calculators */
.w-calcgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:8px; margin-bottom:8px; }
.w-calcb{ display:flex; align-items:center; gap:12px; padding:12px; border-radius:16px; cursor:pointer; text-align:left; min-width:0;
  background:linear-gradient(180deg,var(--w-s2),var(--w-s1)); border:1px solid var(--w-goldline); color:inherit; font:inherit; }
.w-calcb-t{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.w-calcb-t b{ color:#fff; font-size:.88rem; }
.w-calc{ display:grid; grid-template-columns:1fr; gap:0; }
@media(min-width:700px){ .w-calc{ grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:12px; align-items:start; } }
.w-calc-in .w-f{ margin-bottom:10px; }
.w-cbig{ margin-bottom:10px; }
.w-cbig-k{ font-size:.76rem; color:var(--w-ink3); font-weight:600; }
.w-cbig-v{ font:800 1.75rem 'Inter',sans-serif; color:#fff; letter-spacing:-.02em; line-height:1.2; }
.w-cr{ display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid var(--w-hair); font-size:.82rem; color:var(--w-ink3); }
.w-cr b{ color:#fff; font-weight:700; text-align:right; white-space:nowrap; }
.w-calc-out .wc{ margin-top:12px; }
.w-split2{ display:flex; height:12px; border-radius:999px; overflow:hidden; gap:2px; margin-top:14px; }

/* investments */
.w-hold{ display:flex; align-items:center; gap:12px; width:100%; padding:11px 16px; background:none; border:none; border-top:1px solid var(--w-hair);
  color:inherit; text-align:left; font:inherit; min-width:0; }
button.w-hold{ cursor:pointer; }
.w-card:not(.flush) .w-hold{ padding:11px 0; }
.w-card:not(.flush) .w-hold:first-of-type{ border-top:none; }
.w-hold-b{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.w-hold-b b{ color:#fff; font-size:.86rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-hold-b .w-sub{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-hold-r{ display:flex; flex-direction:column; align-items:flex-end; gap:3px; flex-shrink:0; font-size:.74rem; max-width:48%; }
.w-hold-r > b{ font:800 .9rem 'Inter',sans-serif; color:#fff; }
.w-hold-h{ display:flex; gap:12px; align-items:center; margin-bottom:12px; }
.w-sym{ min-width:44px; height:36px; padding:0 6px; border-radius:11px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0;
  background:rgba(57,135,229,.12); border:1px solid rgba(57,135,229,.3); color:#9cc3f5; font:800 .64rem 'Inter',sans-serif; letter-spacing:.02em; }
.w-sym.etf{ background:var(--w-goldsoft); border-color:rgba(201,162,39,.35); color:var(--w-gold2); }
.w-sym.etc{ background:rgba(156,204,101,.12); border-color:rgba(156,204,101,.3); color:#b8db8d; }
.w-flow{ display:flex; flex-direction:column; align-items:center; gap:4px; margin:14px 0; }
.w-flow-b{ display:flex; align-items:center; justify-content:center; gap:8px; width:100%; max-width:340px; padding:11px; border-radius:14px; text-align:center;
  background:rgba(255,255,255,.035); border:1px solid var(--w-goldline); color:#fff; font:700 .82rem 'Inter',sans-serif; }
.w-flow-b .wi{ color:var(--w-gold2); flex-shrink:0; }
.w-flow-a{ color:var(--w-ink4); }
.w-ul{ margin:6px 0 0; padding-left:20px; color:var(--w-ink2); font-size:.8rem; line-height:1.8; }
.w-learn{ border-top:1px solid var(--w-hair); padding:10px 0; }
.w-learn summary{ cursor:pointer; font:700 .86rem 'Inter',sans-serif; color:#fff; list-style:none; }
.w-learn summary::-webkit-details-marker{ display:none; }
.w-learn summary::after{ content:'+'; float:right; color:var(--w-gold2); }
.w-learn[open] summary::after{ content:'−'; }
.w-learn p{ margin:8px 0 0; font-size:.8rem; color:var(--w-ink2); line-height:1.65; }

/* wizard */
.w-wiz-brand{ font-family:'Cinzel',serif !important; font-size:1.4rem !important; letter-spacing:.06em; }
.w-wiz p.lead.small{ font-size:.82rem; }
.w-privacy{ background:rgba(255,255,255,.03); border:1px solid var(--w-hair); border-radius:14px; padding:14px; margin:6px 0; }

/* ── bottom navigation ───────────────────────────────────── */
.w-nav{ background:rgba(10,10,8,.94); border-top:1px solid var(--w-goldline); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); z-index:950; }
.w-nav-in{ max-width:600px; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch; padding:0 4px; }
.w-nav-i{ position:relative; padding:9px 2px 9px; gap:4px; min-width:0; color:var(--w-ink4); font:700 .64rem 'Inter',sans-serif; min-height:var(--w-navh); justify-content:center; }
.w-nav-i .l{ max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.w-nav-i .i{ display:flex; height:24px; align-items:center; }
.w-nav-i.on{ color:var(--w-gold2); }
.w-nav-i.on::before{ content:''; position:absolute; top:0; left:28%; right:28%; height:2px; border-radius:0 0 3px 3px; background:var(--w-gold); }
.w-nav-i:active .i{ transform:scale(.9); }
.w-nav-i:active{ color:var(--w-gold2); }
body[data-wlang="si"] .w-nav-i{ font-size:.62rem; }

/* ── charts ──────────────────────────────────────────────── */
.wc{ position:relative; width:100%; outline:none; touch-action:pan-y; user-select:none; -webkit-user-select:none; }
.wc svg{ display:block; overflow:visible; }
.wc-ax{ fill:#898781; font:500 10px 'Inter',sans-serif; }
.wc-ctr-t{ fill:rgba(255,255,255,.5); font:600 10.5px 'Inter',sans-serif; }
.wc-ctr-v{ fill:#fff; font:800 16px 'Inter',sans-serif; }
.wc-empty{ display:flex; align-items:center; justify-content:center; height:100%; color:var(--w-ink4); font-size:.8rem; }
.wc-tip{ position:absolute; z-index:5; pointer-events:none; min-width:120px; max-width:220px; background:rgba(28,27,23,.97); border:1px solid rgba(201,162,39,.35);
  border-radius:12px; padding:8px 10px; box-shadow:0 10px 26px rgba(0,0,0,.5); font:500 .74rem 'Inter',sans-serif; color:var(--w-ink2); }
.wc-tip-h{ font-weight:700; color:var(--w-ink3); margin-bottom:4px; white-space:nowrap; text-transform:capitalize; }
.wc-tip-r{ display:flex; align-items:center; gap:7px; padding:1px 0; white-space:nowrap; }
.wc-tip-r b{ color:#fff; font-weight:800; order:1; margin-left:auto; padding-left:10px; }
.wc-tip-r span:not(.wc-key){ order:0; }
.wc-key{ width:10px; height:2px; border-radius:2px; flex-shrink:0; }
body.w-masked .wc-tip b, body.w-masked .wc-ax, body.w-masked .wc-ctr-v{ filter:blur(5px); }
.wc-seg{ cursor:pointer; transition:opacity .15s, transform .15s; transform-origin:center; transform-box:fill-box; }
.wc-donut:hover .wc-seg:not(.on), .wc-donut .wc-seg:not(.on):has(~ .on){ opacity:.85; }
.wc-seg.on{ opacity:1; filter:brightness(1.15); }
.wc-bar{ transition:filter .12s; }
.wc-bar.on{ filter:brightness(1.25); }
.wc-hit{ cursor:pointer; }

/* ── small phones ────────────────────────────────────────── */
@media (max-width:400px){
  .w-wrap{ padding-left:12px; padding-right:12px; }
  .w-hero{ padding:16px 13px 14px; }
  .w-hero-v{ font-size:2.2rem; }
  .w-hr b{ font-size:.9rem; }
  .w-qa-c{ width:46px; height:46px; }
  .w-moregrid{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .w-moreb{ padding:12px 2px 10px; font-size:.64rem; }
  .w-moreb-i{ width:38px; height:38px; }
  .w-modebtn span{ display:none; }
  .w-modebtn{ width:36px; padding:0; justify-content:center; }
  .w-mc-v{ font-size:1.05rem; }
  .w-avail-v{ font-size:1.75rem; }
  .w-card{ padding:14px; }
  .w-tx, .w-occ, .w-hold{ padding-left:12px; padding-right:12px; }
  .w-day-h{ padding-left:12px; padding-right:12px; }
}
@media (max-width:340px){
  .w-hero-row{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .w-hero-row .w-hr:last-child{ grid-column:1 / -1; }
  .w-mgrid.three{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .w-moregrid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .w-typegrid.two{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .w-grid2{ grid-template-columns:1fr; }
  .w-wl b{ font-size:.86rem; }
  .w-nav-i{ font-size:.58rem; }
}

/* ── headings: il-design.css sets EVERY h1/h2 on phones with !important
      (clamp 1.85–2.5rem / 1.4–1.95rem). Inside the wallet that turned card
      titles into page titles. Scoped to the wallet regions only. ── */
body.w-body #wApp h1, body.w-body #wWizard h1, body.w-body #wGate h1{ font-size:1.22rem !important; }
body.w-body #wApp .w-top h1.w-greet{ font-size:1.02rem !important; }
body.w-body #wApp h2, body.w-body .w-sheet h2{ font-size:1rem !important; }
body.w-body #wApp .w-subhead h2{ font-size:1.08rem !important; }
body.w-body #wWizard h2{ font-size:1.25rem !important; }
body.w-body #wGate h2{ font-size:1.2rem !important; }
body.w-body #wApp .w-cal-h h2{ font-size:1rem !important; }

/* the site styles every input; inside the search pill the pill is the box */
.w-search input, .w-search input:focus{ background:none !important; border:none !important; box-shadow:none !important;
  padding:12px 0 !important; height:auto !important; margin:0 !important; border-radius:0 !important; width:auto; }

/* quick-action and tile labels wrap to two short lines rather than being
   cut off — "එක් කරන්න" and "Trasferisci" do not fit 70px on one line */
.w-qa-b > span:last-child, .w-moreb > span:last-child, .w-typeopt span, .w-catopt span:last-child{
  white-space:normal; text-overflow:clip; line-height:1.2; text-align:center;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
