/* WALLET TOKENS START */
:root{
  color-scheme:light;
  --kw-canvas:#f3f5fc;
  --kw-surface:#ffffff;
  --kw-cream:#eef1fa;
  --kw-line:#cbd2e6;
  --kw-control-line:#808ca8;
  --kw-ink:#151b35;
  --kw-ink-2:#404b69;
  --kw-muted:#56617d;
  --kw-ink-inverse:#ffffff;
  --kw-green:#2339bc;
  --kw-green-2:#34209a;
  --kw-sage:#e9edff;
  --kw-sage-2:#cbd5ff;
  --kw-peach:#08647b;
  --kw-peach-2:#def7ff;
  --kw-lavender:#f0e9ff;
  --kw-plum:#651ab8;
  --kw-amber:#8a5d18;
  --kw-amber-2:#fff5e5;
  --kw-credit:#08705a;
  --kw-debit:#151b35;
  --kw-waiting:#8a5d18;
  --kw-disputed:#651ab8;
  --kw-focus:#08647b;
  --kw-brand-indigo:#2339bc;
  --kw-brand-violet:#651ab8;
  --kw-cyan:#62ddfa;
  --kw-radius-s:12px;
  --kw-radius-m:20px;
  --kw-radius-l:24px;
  --kw-radius-pill:999px;
  --kw-space-1:4px;
  --kw-space-2:8px;
  --kw-space-3:12px;
  --kw-space-4:16px;
  --kw-space-5:24px;
  --kw-space-6:32px;
  --kw-space-7:48px;
  --kw-shadow-1:0 2px 8px #0c102408;
  --kw-shadow-2:0 12px 32px #0c102412;
  --kw-shadow-sheet:0 -12px 48px #080c2840;
  --kw-font:"Rubik",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --kw-display:clamp(36px,9vw,48px);
  --kw-title:24px;
  --kw-heading:18px;
  --kw-body:16px;
  --kw-small:14px;
  --kw-micro:12px;
  --kw-motion-fast:160ms;
  --kw-motion:240ms;
  --kw-ease:cubic-bezier(.2,.7,.2,1);
}
[data-theme=dark]{
  color-scheme:dark;
  --kw-canvas:#0c1024;
  --kw-surface:#151c36;
  --kw-cream:#1c2543;
  --kw-line:#455275;
  --kw-control-line:#67789e;
  --kw-ink:#f2f5ff;
  --kw-ink-2:#c6d0ea;
  --kw-muted:#a8b6d7;
  --kw-ink-inverse:#0c1024;
  --kw-green:#62ddfa;
  --kw-green-2:#a1eaff;
  --kw-sage:#222e54;
  --kw-sage-2:#354778;
  --kw-peach:#62ddfa;
  --kw-peach-2:#193e50;
  --kw-lavender:#30234b;
  --kw-plum:#d4b6ff;
  --kw-amber:#f2c679;
  --kw-amber-2:#392d1b;
  --kw-credit:#7be0be;
  --kw-debit:#f2f5ff;
  --kw-waiting:#f2c679;
  --kw-disputed:#d4b6ff;
  --kw-focus:#62ddfa;
  --kw-shadow-1:0 2px 12px #00000018;
  --kw-shadow-2:0 14px 38px #00000025;
}
@media(prefers-color-scheme:dark){:root:not([data-theme]){
  color-scheme:dark;
  --kw-canvas:#0c1024;
  --kw-surface:#151c36;
  --kw-cream:#1c2543;
  --kw-line:#455275;
  --kw-control-line:#67789e;
  --kw-ink:#f2f5ff;
  --kw-ink-2:#c6d0ea;
  --kw-muted:#a8b6d7;
  --kw-ink-inverse:#0c1024;
  --kw-green:#62ddfa;
  --kw-green-2:#a1eaff;
  --kw-sage:#222e54;
  --kw-sage-2:#354778;
  --kw-peach:#62ddfa;
  --kw-peach-2:#193e50;
  --kw-lavender:#30234b;
  --kw-plum:#d4b6ff;
  --kw-amber:#f2c679;
  --kw-amber-2:#392d1b;
  --kw-credit:#7be0be;
  --kw-debit:#f2f5ff;
  --kw-waiting:#f2c679;
  --kw-disputed:#d4b6ff;
  --kw-focus:#62ddfa;
  --kw-shadow-1:0 2px 12px #00000018;
  --kw-shadow-2:0 14px 38px #00000025;
}}
/* WALLET TOKENS END */
*{
  box-sizing:border-box
}
html{
  background:var(--kw-canvas);
  color:var(--kw-ink);
  font-family:var(--kw-font);
  font-synthesis:none;
  line-height:1.5
}
body{
  margin:0
}
button,input,select,textarea{
  font:inherit;
  color:inherit
}
button,a,input,select,textarea{
  -webkit-tap-highlight-color:transparent
}
a{
  color:var(--kw-green);
  text-decoration:none
}
a:hover{
  text-decoration:underline
}
button{
  cursor:pointer;
  transition:background var(--kw-motion-fast),transform var(--kw-motion-fast);
  min-block-size:48px;
  border:1px solid var(--kw-line);
  background:var(--kw-surface);
  padding:12px 18px;
  border-radius:var(--kw-radius-s);
  font-weight:600
}
button:hover:not(:disabled){
  background:var(--kw-sage)
}
button:active:not(:disabled){
  transform:translateY(1px)
}
button:disabled{
  opacity:.5;
  cursor:not-allowed
}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{
  outline:3px solid var(--kw-focus);
  outline-offset:4px
}
[hidden]{
  display:none!important
}
h1,h2,h3,p{
  margin-block:0 16px
}
h1{
  font-size:clamp(1.75rem,4vw,2.6rem);
  font-weight:650;
  letter-spacing:-.04em;
  line-height:1.18
}
h2{
  font-size:1.3rem;
  font-weight:650;
  letter-spacing:-.025em
}
h3{
  font-size:1.1rem;
  font-weight:650
}
p{
  color:var(--kw-ink-2)
}
bdi,.amount{
  font-variant-numeric:tabular-nums
}
bdi{
  unicode-bidi:isolate;
  overflow-wrap:anywhere
}
.small,small{
  font-size:.82rem;
  color:var(--kw-muted);
  line-height:1.6
}
.eyebrow{
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.12em;
  color:var(--kw-muted);
  margin-block-end:12px
}
:lang(he) .eyebrow{
  letter-spacing:normal
}
.skip{
  position:absolute;
  inset-block-start:-100px;
  inset-inline-start:16px;
  z-index:10;
  background:var(--kw-surface);
  padding:14px
}
.skip:focus{
  inset-block-start:12px
}
.topbar{
  display:flex;
  align-items:center;
  gap:22px;
  min-block-size:88px;
  padding:18px 4vw;
  background:var(--kw-surface);
  border-block-end:1px solid var(--kw-line)
}
.wordmark{
  font-size:2.6rem;
  font-weight:800;
  letter-spacing:-.04em;
  line-height:1;
  color:var(--kw-green)
}
.wordmark span{
  font-size:.5rem;
  color:var(--kw-peach);
  letter-spacing:0;
  margin-inline-start:6px
}
.brand-label{
  font-size:.9rem;
  font-weight:600;
  border-inline-start:1px solid var(--kw-line);
  padding-inline-start:22px
}
.header-actions{
  display:flex;
  align-items:center;
  gap:8px;
  margin-inline-start:auto;
  min-inline-size:0
}
.quiet{
  background:transparent;
  border-color:transparent;
  padding:10px 12px
}
.wallet-shell{
  display:grid;
  grid-template-columns:216px minmax(0,1fr);
  max-inline-size:1600px;
  margin-inline:auto;
  min-block-size:calc(100dvh - 88px)
}
.navigation{
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:32px 18px;
  border-inline-end:1px solid var(--kw-line)
}
.navigation a{
  display:flex;
  gap:12px;
  align-items:center;
  min-block-size:48px;
  padding:12px 16px;
  color:var(--kw-muted);
  border-radius:14px;
  font-size:.9rem;
  font-weight:550
}
.navigation a[aria-current=page]{
  background:var(--kw-sage);
  color:var(--kw-green)
}
.nav-symbol{
  font-size:1.2rem;
  inline-size:24px;
  text-align:center
}
.workspace{
  min-inline-size:0;
  padding:36px clamp(20px,3vw,48px)
}
#content{
  outline:none;
  min-block-size:65vh
}
footer{
  margin-block-start:40px;
  padding-block:20px;
  border-block-start:1px solid var(--kw-line);
  max-inline-size:750px
}
.heading{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-block-end:28px
}
.heading p{
  margin-block-end:0;
  max-inline-size:600px
}
.card{
  background:var(--kw-surface);
  border:1px solid var(--kw-line);
  border-radius:var(--kw-radius-l);
  padding:28px;
  box-shadow:var(--kw-shadow-1);
  margin-block-end:24px;
  min-inline-size:0
}
.hero{
  background:var(--kw-sage);
  padding:32px;
  border-radius:28px;
  margin-block-end:28px;
  overflow:hidden;
  position:relative
}
.hero .display{
  font-size:clamp(2.8rem,6vw,4.3rem);
  font-weight:650;
  letter-spacing:-.055em;
  line-height:1.15;
  display:block;
  margin-block:16px
}
.hero .eyebrow{
  color:var(--kw-ink-2)
}
.hero .small{
  margin:0
}
.hero-name{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px
}
.primary{
  background:var(--kw-green);
  color:var(--kw-ink-inverse);
  border-color:var(--kw-green)
}
.primary:hover:not(:disabled){
  background:var(--kw-green-2)
}
.secondary{
  background:var(--kw-sage);
  border-color:transparent;
  color:var(--kw-green)
}
.danger{
  color:var(--kw-plum);
  background:var(--kw-lavender)
}
.actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-block-start:20px
}
.actions a{
  min-block-size:48px;
  display:flex;
  align-items:center;
  padding:12px 18px;
  border-radius:12px;
  background:var(--kw-sage);
  font-weight:600
}
.grid-two{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:24px
}
.home-columns{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);
  gap:24px
}
.home-columns .card{
  margin-block-end:24px
}
.chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:.76rem;
  font-weight:550;
  padding:6px 10px;
  background:var(--kw-sage);
  color:var(--kw-green);
  border-radius:var(--kw-radius-pill);
  max-inline-size:100%;
  overflow-wrap:anywhere
}
.chip.pending,.chip.unacknowledged,.chip.paid-ahead{
  background:var(--kw-amber-2);
  color:var(--kw-amber)
}
.chip.disputed{
  background:var(--kw-lavender);
  color:var(--kw-plum)
}
.chip.reversed{
  color:var(--kw-muted);
  text-decoration:line-through
}
.chips{
  display:flex;
  gap:8px;
  flex-wrap:wrap
}
.table-wrap{
  overflow-x:auto;
  max-inline-size:100%;
  scrollbar-width:thin
}
.matrix{
  border-collapse:collapse;
  inline-size:100%;
  font-size:.92rem
}
.matrix th,.matrix td{
  padding:18px 12px;
  text-align:end;
  border-block-end:1px solid var(--kw-line)
}
.matrix thead th{
  font-size:.75rem;
  color:var(--kw-muted);
  font-weight:500
}
.matrix tr>:first-child{
  text-align:start;
  padding-inline-start:0
}
.matrix td{
  font-weight:600
}
.matrix td .chip{
  display:block;
  font-weight:500;
  font-size:.7rem;
  margin-block-start:6px
}
.matrix tfoot td,.matrix tfoot th{
  border-block-end:0;
  font-weight:700
}
.child-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--kw-ink)
}
.avatar{
  display:grid;
  place-items:center;
  inline-size:38px;
  block-size:38px;
  border-radius:14px;
  background:var(--kw-peach-2);
  color:var(--kw-ink);
  font-weight:700;
  flex:none
}
.holder-totals{
  display:grid;
  gap:9px;
  margin-block-start:18px
}
.holder-totals p{
  font-size:.8rem;
  margin:0
}
.suggestion{
  padding:18px;
  background:var(--kw-cream);
  border-radius:16px;
  margin-block-start:16px
}
.suggestion p{
  font-size:.9rem
}
.banner{
  background:var(--kw-amber-2);
  border:1px solid var(--kw-line);
  color:var(--kw-amber);
  border-radius:14px;
  padding:14px 18px;
  margin-block-end:18px;
  font-size:.9rem;
  overflow-wrap:anywhere
}
.banner.locked{
  background:var(--kw-lavender);
  color:var(--kw-plum)
}
.banner .actions{
  margin-block-start:10px
}
.toast{
  position:fixed;
  inset-block-end:24px;
  inset-inline:24px;
  max-inline-size:620px;
  margin-inline:auto;
  z-index:20;
  background:var(--kw-ink);
  color:var(--kw-canvas);
  padding:18px 22px;
  border-radius:16px;
  box-shadow:var(--kw-shadow-2);
  font-size:.9rem;
  overflow-wrap:anywhere
}
.empty{
  text-align:center;
  padding:24px;
  max-inline-size:580px;
  margin-inline:auto
}
.illustration{
  display:block;
  inline-size:160px;
  block-size:160px;
  object-fit:contain;
  background:#fbf8f0;
  border-radius:26px;
  margin:0 auto 24px
}
.illustration.small-art{
  inline-size:80px;
  block-size:80px;
  margin-inline:0
}
.empty h2{
  margin-block-end:10px
}
.empty .actions{
  justify-content:center
}
.signin{
  max-inline-size:1040px;
  margin:8vh auto;
  padding:28px;
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);
  gap:72px;
  align-items:center
}
.signin h1{
  font-size:clamp(2.8rem,5vw,4.8rem);
  max-inline-size:440px
}
.signin .card{
  padding:32px
}
.signin-copy{
  padding-block:40px
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px
}
.field{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-block-end:20px;
  min-inline-size:0;
  font-size:.85rem;
  font-weight:550
}
.field>span{
  color:var(--kw-ink-2)
}
input,select,textarea{
  inline-size:100%;
  min-inline-size:0;
  min-block-size:48px;
  border:1px solid var(--kw-line);
  border-radius:12px;
  padding:12px 14px;
  background:var(--kw-canvas);
  font-size:1rem
}
textarea{
  resize:vertical;
  min-block-size:96px
}
input[type=checkbox],input[type=radio]{
  inline-size:20px;
  min-block-size:20px;
  block-size:20px;
  accent-color:var(--kw-green);
  flex:none
}
.check{
  display:flex;
  gap:12px;
  align-items:center;
  min-block-size:48px;
  padding-block:8px;
  font-size:.9rem
}
.check input{
  margin:0
}
.amount-input{
  font-size:2rem;
  font-weight:550;
  letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
  direction:ltr;
  text-align:start;
  block-size:74px
}
.form-error{
  color:var(--kw-plum);
  font-size:.88rem;
  line-height:1.6;
  margin-block:12px;
  overflow-wrap:anywhere
}
.preview{
  background:var(--kw-sage);
  padding:20px;
  border-radius:16px;
  min-block-size:84px;
  margin-block:20px
}
.preview p{
  margin-block-end:8px
}
.preview h3{
  font-size:.8rem;
  margin-block-end:8px;
  color:var(--kw-green)
}
.types,.tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-block:20px
}
.types button,.tabs a{
  border-radius:var(--kw-radius-pill);
  font-size:.85rem;
  padding:10px 15px;
  min-block-size:48px
}
.types button[aria-pressed=true],.tabs a[aria-current=page]{
  background:var(--kw-green);
  color:var(--kw-ink-inverse);
  border-color:transparent
}
.tabs a{
  border:1px solid var(--kw-line);
  background:var(--kw-surface);
  display:flex;
  align-items:center
}
.entry-form{
  max-inline-size:800px
}
.entry-journal{
  margin-block:16px;
  padding:16px;
  border:1px solid var(--kw-line);
  border-radius:var(--kw-radius-l);
  background:var(--kw-sage)
}
.entry-journal p{margin-block:0 8px}
.entry-journal .actions{margin-block-start:12px}
.keypad{
  display:none;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  direction:ltr;
  margin-block:18px
}
.keypad button{
  font-size:1.15rem;
  background:var(--kw-canvas)
}
.row{
  display:flex;
  align-items:center;
  gap:16px;
  padding-block:20px;
  border-block-end:1px solid var(--kw-line)
}
.row:last-child{
  border-block-end:0
}
.row-copy{
  flex:1;
  min-inline-size:0;
  overflow-wrap:anywhere
}
.row h3{
  font-size:1rem;
  margin-block-end:6px
}
.row p{
  font-size:.83rem;
  margin-block-end:8px;
  overflow-wrap:anywhere
}
.row>.amount{
  font-size:1.15rem;
  font-weight:600;
  flex:none
}
.history-row{
  color:var(--kw-ink);
  text-decoration:none
}
.history-row:hover{
  text-decoration:none;
  background:var(--kw-canvas)
}
.history-symbol{
  display:grid;
  place-items:center;
  inline-size:42px;
  block-size:42px;
  flex:none;
  background:var(--kw-sage);
  color:var(--kw-green);
  border-radius:14px
}
.credit{
  color:var(--kw-credit)
}
.inbox-card{
  padding:22px;
  border:1px solid var(--kw-line);
  border-radius:18px;
  margin-block-end:16px;
  background:var(--kw-surface)
}
.inbox-card h3{
  margin-block-end:8px
}
.inbox-card p{
  font-size:.9rem
}
.inbox-card .amount{
  font-size:1.8rem;
  font-weight:600
}
.inbox-card .actions{
  margin-block-start:14px
}
.inbox-card .field{
  margin-block-start:16px
}
.inbox-section{
  margin-block:28px
}
.filters{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px
}
.filters .field{
  margin-block-end:12px
}
details{
  margin-block:18px
}
summary{
  cursor:pointer;
  min-block-size:48px;
  padding-block:10px;
  color:var(--kw-green)
}
.progress{
  background:var(--kw-control-line);
  border:0;
  border-radius:12px;
  overflow:hidden;
  inline-size:100%;
  block-size:12px;
  accent-color:var(--kw-green);
  margin-block:14px 20px
}
.progress::-webkit-progress-bar{background:var(--kw-control-line)}
.progress::-webkit-progress-value{background:var(--kw-green)}
.progress::-moz-progress-bar{background:var(--kw-green)}
.wizard{
  max-inline-size:850px;
  margin-inline:auto
}
.steps{
  display:flex;
  gap:8px;
  margin-block:24px
}
.steps span{
  flex:1;
  block-size:5px;
  border-radius:5px;
  background:var(--kw-line)
}
.steps span.done{
  background:var(--kw-green)
}
.pair-code{
  display:block;
  font-size:clamp(2rem,7vw,3rem);
  letter-spacing:.18em;
  text-align:center;
  direction:ltr;
  font-weight:650;
  padding:20px;
  background:var(--kw-sage);
  border-radius:18px;
  margin-block:20px
}
.skeleton{
  background:var(--kw-line);
  border-radius:24px;
  min-block-size:200px;
  animation:breathe 1.6s ease-in-out infinite
}
.verify-table{
  border-collapse:collapse;
  inline-size:100%
}
.verify-table td,.verify-table th{
  padding:12px;
  border-block-end:1px solid var(--kw-line);
  text-align:start;
  overflow-wrap:anywhere
}
dialog{
  padding:28px;
  inline-size:min(640px,calc(100% - 32px));
  max-block-size:90dvh;
  border:1px solid var(--kw-line);
  border-radius:24px;
  background:var(--kw-surface);
  color:var(--kw-ink);
  box-shadow:var(--kw-shadow-2);
  animation:appear var(--kw-motion) var(--kw-ease)
}
dialog::backdrop{
  background:#102a2370;
  backdrop-filter:blur(3px)
}
.dialog-heading{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px
}
.dialog-heading h2{
  margin:0
}
.success{
  animation:appear 400ms ease
}
.icon-dir{
  display:inline-block
}
[dir=rtl] .icon-dir{
  transform:scaleX(-1)
}
@keyframes breathe{
  50%{
    opacity:.5
  }
}
@keyframes appear{
  from{
    opacity:0;
    transform:translateY(8px)
  }
  to{
    opacity:1;
    transform:translateY(0)
  }
}
@media(max-width:1099px){
  .wallet-shell{
    grid-template-columns:180px minmax(0,1fr)
  }
  .workspace{
    padding:28px 24px
  }
  .home-columns{
    grid-template-columns:minmax(0,1fr)
  }
  .home-columns>aside{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px
  }
  .topbar{
    padding-inline:24px
  }
  .header-actions #principal{
    display:none
  }
  .matrix th,.matrix td{
    padding-inline:8px
  }
}
@media(max-width:699px){
  .topbar{
    min-block-size:72px;
    padding:12px 16px;
    gap:12px
  }
  .wordmark{
    font-size:2.2rem
  }
  .brand-label{
    font-size:.76rem;
    padding-inline-start:12px
  }
  .header-actions{
    gap:0
  }
  .header-actions button{
    padding:10px;
    min-inline-size:44px
  }
  .header-actions #signout{
    display:none
  }
  .wallet-shell{
    display:block
  }
  .navigation{
    position:fixed;
    inset-block-end:0;
    inset-inline:0;
    z-index:10;
    flex-direction:row;
    gap:0;
    justify-content:space-around;
    padding:6px 4px calc(6px + env(safe-area-inset-bottom));
    border-block-start:1px solid var(--kw-line);
    border-inline-end:0;
    background:var(--kw-surface)
  }
  .navigation a{
    flex-direction:column;
    gap:2px;
    font-size:.64rem;
    min-inline-size:0;
    flex:1;
    padding:5px 2px;
    border-radius:10px
  }
  .navigation a[data-retired-navigation]{
    display:none
  }
  .nav-symbol{
    font-size:1.1rem
  }
  .workspace{
    padding:26px 16px 104px
  }
  .heading{
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-block-end:22px
  }
  .heading .primary{
    padding:10px 14px;
    font-size:.85rem
  }
  .heading p{
    font-size:.88rem
  }
  .card{
    padding:20px;
    border-radius:22px;
    margin-block-end:20px
  }
  .hero{
    padding:24px;
    margin-block-end:22px
  }
  .hero .display{
    font-size:3rem
  }
  .home-columns{
    gap:0
  }
  .home-columns>aside{
    display:block
  }
  .grid-two,.form-grid{
    grid-template-columns:1fr;
    gap:0
  }
  .matrix{
    font-size:.8rem
  }
  .matrix th,.matrix td{
    padding:14px 5px
  }
  .matrix .avatar{
    display:none
  }
  .matrix .child-link{
    gap:0
  }
  .matrix th:first-child{
    max-inline-size:80px
  }
  .matrix .chip{
    font-size:.63rem;
    padding:4px
  }
  .table-wrap{
    margin-inline:-6px
  }
  .holder-totals{
    margin-block-start:20px
  }
  .filters{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .filters .check{
    grid-column:1/-1
  }
  .signin{
    display:block;
    margin-block:24px;
    padding:20px
  }
  .signin-copy{
    padding-block:20px
  }
  .signin h1{
    font-size:2.8rem
  }
  .signin .card{
    padding:24px
  }
  .types{
    gap:7px
  }
  .types button{
    font-size:.76rem;
    padding:9px 12px
  }
  .keypad{
    display:grid
  }
  .row{
    gap:10px
  }
  .history-symbol{
    inline-size:32px;
    block-size:32px;
    border-radius:10px
  }
  .row>.amount{
    font-size:.95rem
  }
  .row h3{
    font-size:.92rem
  }
  .row .chip{
    font-size:.65rem
  }
  .toast{
    inset-block-end:90px;
    inset-inline:12px;
    font-size:.82rem;
    padding:14px
  }
  .inbox-card{
    padding:18px
  }
  .inbox-card .actions button{
    flex:1;
    min-inline-size:90px
  }
  .banner{
    padding:12px 14px;
    font-size:.82rem
  }
  dialog{
    padding:22px;
    max-block-size:85dvh
  }
  .wizard .illustration{
    inline-size:132px;
    block-size:132px
  }
}
@media(max-width:359px){
  .brand-label{
    display:none
  }
  .header-actions{
    margin-inline-start:auto
  }
  .workspace{
    padding-inline:12px
  }
  .card{
    padding:16px
  }
  .matrix{
    font-size:.72rem
  }
  .matrix th,.matrix td{
    padding-inline:3px
  }
  .matrix .chip{
    max-inline-size:62px
  }
  .types button{
    padding-inline:10px
  }
  .hero{
    padding:22px
  }
  .filters{
    grid-template-columns:1fr
  }
  .filters .check{
    grid-column:auto
  }
  .row .history-symbol{
    display:none
  }
  .row>.amount{
    font-size:.85rem
  }
  .actions button{
    max-inline-size:100%
  }
  .inbox-card .actions button{
    flex-basis:100%
  }
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important
  }
}
fieldset{
  min-inline-size:0;
  border:1px solid var(--kw-line);
  border-radius:14px;
  padding:16px;
  margin-block:18px
}
legend{
  font-size:.85rem;
  padding-inline:6px
}
.brand-label{
  min-inline-size:0;
  overflow-wrap:anywhere
}
.navigation a>span{
  min-inline-size:0;
  overflow-wrap:anywhere
}
.heading{
  flex-wrap:wrap
}
.heading>div{
  min-inline-size:0
}
#principal{
  max-inline-size:20rem;
  min-inline-size:0;
  overflow-wrap:anywhere
}

.selection-target{
  min-inline-size:48px;
  min-block-size:48px;
  justify-content:center;
}
.child-link{
  min-block-size:48px;
}
.chips a.chip{
  min-block-size:48px;
}
a.small{
  display:inline-flex;
  min-block-size:48px;
  align-items:center;
}
.wordmark{
  display:inline-flex;
  min-inline-size:48px;
  min-block-size:48px;
  align-items:center;
}

@font-face{font-family:Rubik;src:url("/assets/wallet/fonts/rubik-latin.woff2") format("woff2");font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Rubik;src:url("/assets/wallet/fonts/rubik-hebrew.woff2") format("woff2");font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
button,.actions a{min-block-size:48px;border-radius:var(--kw-radius-m)}
.card,.inbox-card{box-shadow:var(--kw-shadow-1);border-radius:var(--kw-radius-l)}
.card{padding:32px}
button,a,.card,.child-card,.inbox-card{transition:background var(--kw-motion-fast),border-color var(--kw-motion-fast),box-shadow var(--kw-motion-fast),transform var(--kw-motion-fast)}
.card:hover,.child-card:hover,.inbox-card:hover{box-shadow:var(--kw-shadow-2)}
.child-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin-block-end:32px}
.child-card{display:flex;flex-direction:column;gap:16px;min-inline-size:0;padding:24px;color:var(--kw-ink);background:var(--kw-surface);border:1px solid var(--kw-line);border-radius:var(--kw-radius-l);box-shadow:var(--kw-shadow-1)}
.child-card:hover{text-decoration:none;transform:translateY(-2px)}
.child-card-heading{display:flex;align-items:center;gap:12px}
.avatar[data-child]{background:var(--kw-peach-2)}
.child-card:nth-child(3n+2) .avatar{background:var(--kw-lavender);color:var(--kw-plum)}
.child-card:nth-child(3n) .avatar{background:var(--kw-sage);color:var(--kw-green)}
.child-total{font-size:clamp(2rem,4vw,2.7rem);font-weight:650;letter-spacing:-.04em}
.allocation-bar{display:flex;block-size:8px;gap:2px;overflow:hidden;background:var(--kw-line);border-radius:var(--kw-radius-pill)}
.allocation-bar span{flex:none;block-size:100%;min-inline-size:0}
.allocation-mom,.legend-mom{--allocation-color:#1b5a4c}.allocation-dad,.legend-dad{--allocation-color:#e9a16d}.allocation-bank,.legend-bank{--allocation-color:#9887b4}
.allocation-bar span{background:var(--allocation-color)}
.allocation-bar .width-0{inline-size:0%}
.allocation-bar .width-1{inline-size:1%}
.allocation-bar .width-2{inline-size:2%}
.allocation-bar .width-3{inline-size:3%}
.allocation-bar .width-4{inline-size:4%}
.allocation-bar .width-5{inline-size:5%}
.allocation-bar .width-6{inline-size:6%}
.allocation-bar .width-7{inline-size:7%}
.allocation-bar .width-8{inline-size:8%}
.allocation-bar .width-9{inline-size:9%}
.allocation-bar .width-10{inline-size:10%}
.allocation-bar .width-11{inline-size:11%}
.allocation-bar .width-12{inline-size:12%}
.allocation-bar .width-13{inline-size:13%}
.allocation-bar .width-14{inline-size:14%}
.allocation-bar .width-15{inline-size:15%}
.allocation-bar .width-16{inline-size:16%}
.allocation-bar .width-17{inline-size:17%}
.allocation-bar .width-18{inline-size:18%}
.allocation-bar .width-19{inline-size:19%}
.allocation-bar .width-20{inline-size:20%}
.allocation-bar .width-21{inline-size:21%}
.allocation-bar .width-22{inline-size:22%}
.allocation-bar .width-23{inline-size:23%}
.allocation-bar .width-24{inline-size:24%}
.allocation-bar .width-25{inline-size:25%}
.allocation-bar .width-26{inline-size:26%}
.allocation-bar .width-27{inline-size:27%}
.allocation-bar .width-28{inline-size:28%}
.allocation-bar .width-29{inline-size:29%}
.allocation-bar .width-30{inline-size:30%}
.allocation-bar .width-31{inline-size:31%}
.allocation-bar .width-32{inline-size:32%}
.allocation-bar .width-33{inline-size:33%}
.allocation-bar .width-34{inline-size:34%}
.allocation-bar .width-35{inline-size:35%}
.allocation-bar .width-36{inline-size:36%}
.allocation-bar .width-37{inline-size:37%}
.allocation-bar .width-38{inline-size:38%}
.allocation-bar .width-39{inline-size:39%}
.allocation-bar .width-40{inline-size:40%}
.allocation-bar .width-41{inline-size:41%}
.allocation-bar .width-42{inline-size:42%}
.allocation-bar .width-43{inline-size:43%}
.allocation-bar .width-44{inline-size:44%}
.allocation-bar .width-45{inline-size:45%}
.allocation-bar .width-46{inline-size:46%}
.allocation-bar .width-47{inline-size:47%}
.allocation-bar .width-48{inline-size:48%}
.allocation-bar .width-49{inline-size:49%}
.allocation-bar .width-50{inline-size:50%}
.allocation-bar .width-51{inline-size:51%}
.allocation-bar .width-52{inline-size:52%}
.allocation-bar .width-53{inline-size:53%}
.allocation-bar .width-54{inline-size:54%}
.allocation-bar .width-55{inline-size:55%}
.allocation-bar .width-56{inline-size:56%}
.allocation-bar .width-57{inline-size:57%}
.allocation-bar .width-58{inline-size:58%}
.allocation-bar .width-59{inline-size:59%}
.allocation-bar .width-60{inline-size:60%}
.allocation-bar .width-61{inline-size:61%}
.allocation-bar .width-62{inline-size:62%}
.allocation-bar .width-63{inline-size:63%}
.allocation-bar .width-64{inline-size:64%}
.allocation-bar .width-65{inline-size:65%}
.allocation-bar .width-66{inline-size:66%}
.allocation-bar .width-67{inline-size:67%}
.allocation-bar .width-68{inline-size:68%}
.allocation-bar .width-69{inline-size:69%}
.allocation-bar .width-70{inline-size:70%}
.allocation-bar .width-71{inline-size:71%}
.allocation-bar .width-72{inline-size:72%}
.allocation-bar .width-73{inline-size:73%}
.allocation-bar .width-74{inline-size:74%}
.allocation-bar .width-75{inline-size:75%}
.allocation-bar .width-76{inline-size:76%}
.allocation-bar .width-77{inline-size:77%}
.allocation-bar .width-78{inline-size:78%}
.allocation-bar .width-79{inline-size:79%}
.allocation-bar .width-80{inline-size:80%}
.allocation-bar .width-81{inline-size:81%}
.allocation-bar .width-82{inline-size:82%}
.allocation-bar .width-83{inline-size:83%}
.allocation-bar .width-84{inline-size:84%}
.allocation-bar .width-85{inline-size:85%}
.allocation-bar .width-86{inline-size:86%}
.allocation-bar .width-87{inline-size:87%}
.allocation-bar .width-88{inline-size:88%}
.allocation-bar .width-89{inline-size:89%}
.allocation-bar .width-90{inline-size:90%}
.allocation-bar .width-91{inline-size:91%}
.allocation-bar .width-92{inline-size:92%}
.allocation-bar .width-93{inline-size:93%}
.allocation-bar .width-94{inline-size:94%}
.allocation-bar .width-95{inline-size:95%}
.allocation-bar .width-96{inline-size:96%}
.allocation-bar .width-97{inline-size:97%}
.allocation-bar .width-98{inline-size:98%}
.allocation-bar .width-99{inline-size:99%}
.allocation-bar .width-100{inline-size:100%}
.allocation-legend{display:flex;gap:14px;flex-wrap:wrap;color:var(--kw-muted);font-size:.76rem}.allocation-legend span{display:inline-flex;align-items:center;gap:6px}.allocation-legend span:before{content:"";inline-size:8px;block-size:8px;border-radius:50%;background:var(--allocation-color)}
.goal-mini{display:grid;gap:6px;font-size:.8rem;color:var(--kw-ink-2)}.goal-mini progress{inline-size:100%;block-size:7px}
.hero{display:flex;align-items:center;justify-content:space-between;gap:32px;box-shadow:var(--kw-shadow-1);padding:36px 40px}.hero-copy{min-inline-size:0}.hero-holdings{justify-content:flex-end}.hero-holdings .chip{background:color-mix(in srgb,var(--kw-surface) 64%,transparent);padding:9px 14px}.hero .display{font-variant-numeric:tabular-nums;letter-spacing:-.04em}.new-entry{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-block-size:48px;padding:0 20px;border-radius:var(--kw-radius-pill);font-weight:650;text-decoration:none;white-space:nowrap;box-shadow:0 5px 14px #1b5a4c24}.new-entry:hover{text-decoration:none;transform:translateY(-1px)}.new-entry span{font-size:1.35rem;line-height:1}.section-title{margin-block:28px 16px}.inbox-grid{display:grid;grid-template-columns:1fr;gap:16px}.inbox-card{display:flex;flex-direction:column;gap:14px;padding:22px;margin:0;min-inline-size:0}.inbox-main{display:flex;align-items:flex-start;gap:12px;min-inline-size:0}.inbox-copy{min-inline-size:0;flex:1}.inbox-copy h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-block:0 6px}.inbox-description{font-size:.88rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-main>.amount{font-size:1.7rem;font-weight:650;white-space:nowrap;flex:none}.inbox-card .actions{margin-block-start:auto;justify-content:flex-end}.inbox-card .field{margin-block-start:10px;margin-inline:0}.note-disclosure{order:1}.note-disclosure summary{font-size:.82rem;min-block-size:36px;padding-block:6px}.note-disclosure .field{margin-block:8px}.section-count{display:inline-grid;place-items:center;min-inline-size:28px;block-size:28px;margin-inline-start:10px;padding-inline:8px;border-radius:var(--kw-radius-pill);background:var(--kw-sage);font-size:.78rem;vertical-align:middle}.toast{display:flex;align-items:center;gap:12px;min-block-size:64px;border-radius:20px}.toast img{inline-size:40px;block-size:40px;object-fit:contain;border-radius:10px}.matrix tr{transition:background var(--kw-motion-fast)}.matrix tbody tr:hover{background:color-mix(in srgb,var(--kw-sage) 38%,transparent)}
@media(min-width:1100px){.inbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){.hero{display:block;padding:24px}.hero-holdings{justify-content:flex-start;margin-block-start:18px}.child-cards{grid-template-columns:1fr;gap:12px}.child-card{padding:20px}.card{padding:22px}.matrix thead{display:none}.matrix,.matrix tbody,.matrix tfoot{display:block;inline-size:100%}.matrix tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;padding:14px 0;border-block-end:1px solid var(--kw-line)}.matrix tbody th{grid-column:1/-1;padding:4px 0 8px;border:0}.matrix tbody td{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border:0;text-align:end;font-size:.82rem}.matrix tbody td:before{content:attr(data-label);color:var(--kw-muted);font-size:.75rem}.matrix tbody td:last-child{font-weight:700}.matrix tfoot{display:flex;padding-block:12px}.matrix tfoot tr{display:flex;justify-content:space-between;inline-size:100%;gap:8px;flex-wrap:wrap}.matrix tfoot th,.matrix tfoot td{padding:6px 0;border:0}.inbox-main>.amount{font-size:1.45rem}.navigation a[data-retired-navigation]{display:flex}.navigation a:nth-child(n+7){display:none}.navigation a{font-size:.6rem}.heading .new-entry{padding-inline:14px}.toast{inset-inline:12px;inset-block-end:calc(76px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.new-entry{background:var(--kw-green);color:var(--kw-ink-inverse);border:1px solid var(--kw-green)}
.new-entry:hover{background:var(--kw-green-2);color:var(--kw-ink-inverse)}
[data-theme=dark] .allocation-mom,[data-theme=dark] .legend-mom{--allocation-color:#62ddfa}
[data-theme=dark] .allocation-dad,[data-theme=dark] .legend-dad{--allocation-color:#9d86f9}
[data-theme=dark] .allocation-bank,[data-theme=dark] .legend-bank{--allocation-color:#7797ed}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .allocation-mom,:root:not([data-theme=light]) .legend-mom{--allocation-color:#62ddfa}:root:not([data-theme=light]) .allocation-dad,:root:not([data-theme=light]) .legend-dad{--allocation-color:#9d86f9}:root:not([data-theme=light]) .allocation-bank,:root:not([data-theme=light]) .legend-bank{--allocation-color:#7797ed}}
@media(max-width:600px){
  #content,.inbox-section,.inbox-grid{min-inline-size:0;max-inline-size:100%;overflow-x:clip}
  .matrix,.matrix tbody,.matrix tfoot{display:block;inline-size:100%}
  .matrix{table-layout:auto;white-space:normal}
  .matrix thead{display:none}
  .matrix tbody tr{display:block;inline-size:100%;padding:12px;margin-block:0 12px;background:var(--kw-surface);border:1px solid var(--kw-line);border-radius:16px;box-shadow:var(--kw-shadow-1)}
  .matrix tbody th{display:block;inline-size:100%;padding:4px 8px 10px;text-align:start;border:0}
  .matrix tbody td{display:flex;justify-content:space-between;align-items:center;gap:12px;inline-size:100%;min-inline-size:0;padding:7px 8px;text-align:end;border:0;white-space:nowrap}
  .matrix tbody td:before{content:attr(data-label);flex:1;min-inline-size:0;text-align:start;white-space:nowrap;color:var(--kw-muted);font-size:.78rem}
  .matrix tbody td>bdi,.matrix tbody td .amount,.matrix tbody td .chip{white-space:nowrap;flex:none}
  .matrix .amount,.matrix bdi{white-space:nowrap;}
  .amount,.display{white-space:nowrap;}
  .matrix tbody td .chip{display:inline-flex;max-inline-size:none;margin:0;font-size:.68rem}
  .matrix tfoot{display:block;padding-block:8px}
  .matrix tfoot tr{display:flex;justify-content:space-between;gap:8px;inline-size:100%;padding:4px 8px;flex-wrap:wrap}
  .matrix tfoot th,.matrix tfoot td{padding:4px 0;border:0;white-space:nowrap}
  .matrix tfoot td{font-variant-numeric:tabular-nums}
  .inbox-card .actions{display:flex;flex-direction:column;align-items:stretch;inline-size:100%;gap:8px}
  .inbox-card .actions>*{inline-size:100%;min-inline-size:0;flex:none;min-block-size:48px;white-space:normal;line-height:1.25}
  .inbox-grid,.inbox-card,.inbox-main,.inbox-copy,.history-row,.history-row .row-copy{min-inline-size:0;max-inline-size:100%}
  .inbox-card{padding:14px;overflow:hidden}
  .inbox-main{gap:8px;align-items:center}
  .inbox-main>.amount{font-size:1.2rem;max-inline-size:7ch;min-inline-size:0;overflow:hidden;text-overflow:ellipsis}
  .inbox-copy h3{font-size:.9rem;overflow-wrap:anywhere}
  .inbox-description{min-inline-size:0;max-inline-size:100%;overflow:hidden;text-overflow:ellipsis}
  .inbox-description bdi,.history-row .row-copy p bdi{display:inline-block;max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;unicode-bidi:isolate;direction:auto;vertical-align:bottom}
  .inbox-grid .history-row{overflow:hidden}
  .goal-mini progress,.progress{accent-color:var(--kw-peach)}
}

.inbox-description bdi,.history-row .row-copy p bdi{unicode-bidi:isolate}
.device-confirm-question{margin:0;overflow-wrap:anywhere;line-height:1.6}
.phone-row{display:grid;grid-template-columns:minmax(0,1fr) auto;min-inline-size:0}
.phone-row .form-error{grid-column:1/-1}
.phone-trust{margin-block:8px}
.ack-device{overflow-wrap:anywhere}
@media(max-width:600px){
  .phone-row{grid-template-columns:minmax(0,1fr)}
  .phone-row .actions{inline-size:100%;flex-direction:column;align-items:stretch}
  .phone-row .actions button{inline-size:100%;min-inline-size:0;white-space:normal}
}

/* Coordinator: unsent-request bodies wrap inside the review card at phone widths instead of widening the page. */
.journal-review-item { min-inline-size: 0; }
.journal-body { white-space: pre-wrap; overflow-wrap: anywhere; max-inline-size: 100%; margin: 0; font-size: .8rem; }

.setup-child{align-items:flex-start}.setup-child .check{margin-block-start:34px}.setup-names{flex:1;min-inline-size:0}.setup-names .field{margin-block-end:0}@media (max-width:699px){.form-grid.setup-names{gap:12px}}.child-names{margin-block-start:16px}.child-names>summary{font-weight:600}.child-names form{margin-block-start:16px}

.phone-passes { margin-block: 1rem; }
.phone-pass p { overflow-wrap: anywhere; text-align: start; }

.avatar{object-fit:cover;flex-shrink:0}.nav-avatar{width:32px;height:32px;border-radius:50%}.media-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;margin-top:16px}.media-gallery img{width:100%;height:120px;object-fit:cover;border-radius:12px}.media-card .actions{flex-wrap:wrap}



/* Styling for the already served quick-entry controls. */
.quick-card{display:grid;gap:8px;padding-block-end:18px}
.quick-entry{display:grid;gap:4px}
.quick-entry h2{margin-block:0 4px}
.quick-children,.quick-directions{display:flex;flex-wrap:wrap;gap:8px}
.quick-directions{display:grid;grid-template-columns:1fr;gap:8px}
.quick-child,.quick-holder-choice,.quick-choice{position:relative;display:flex;align-items:center;gap:10px;min-block-size:48px;margin:0;padding:10px 16px;border:1px solid var(--kw-line);background:var(--kw-canvas);cursor:pointer}
.quick-child,.quick-holder-choice{border-radius:var(--kw-radius-pill);font-weight:650}
.quick-choice{border-radius:18px;min-block-size:72px;align-items:flex-start}
.quick-choice-copy{display:grid;gap:2px}
.quick-hint{font-size:.82rem;color:var(--kw-muted)}
.quick-child input,.quick-holder-choice input,.quick-choice input{position:absolute;inset:0;inline-size:100%;block-size:100%;margin:0;opacity:0}
.quick-child.is-selected{background:var(--kw-ink);color:var(--kw-ink-inverse);border-color:var(--kw-ink)}
.quick-choice.is-selected.spent{background:var(--kw-ink);color:var(--kw-ink-inverse);border-color:var(--kw-ink)}
.quick-choice.is-selected.received{background:var(--kw-green);color:var(--kw-ink-inverse);border-color:var(--kw-green)}
.quick-choice.is-selected .quick-hint{color:inherit}
.quick-child:focus-within,.quick-holder-choice:focus-within,.quick-choice:focus-within{outline:2px solid var(--kw-focus);outline-offset:2px}
.quick-amount-label{display:block;margin-block:8px 4px}
.quick-amount{font-size:clamp(2rem,8vw,3rem);font-weight:700;text-align:center;font-variant-numeric:tabular-nums;min-block-size:76px;border-radius:18px}
.quick-note-field{margin-block:8px 0}
.quick-preview,.quick-over,.quick-entry .small{margin-block:4px}
.quick-over{color:var(--kw-plum)}
.quick-entry .actions{margin-block-start:8px}
.quick-entry .primary{inline-size:100%;min-block-size:56px;font-size:1.05rem}
.quick-advanced{border-block-start:1px solid var(--kw-line);padding-block-start:8px}
.quick-advanced summary{min-block-size:48px;display:flex;align-items:center;font-weight:650;cursor:pointer}
.quick-advanced .entry-form{margin-block-start:12px}

@media(min-width:700px){.quick-directions{grid-template-columns:1fr 1fr}}

.shell-reports{margin:0;padding-inline-start:1.1rem}

.shell-reports li{margin-block:6px;overflow-wrap:anywhere}

/* Glacier presentation. Layout uses logical properties for English and Hebrew. */
html { color-scheme:light dark; font-size:16px; }
h1 { font-size:var(--kw-title); letter-spacing:-.02em; line-height:1.3; }
h2 { font-size:var(--kw-heading); line-height:1.4; }
h3 { font-size:16px; line-height:1.4; }
.small,small { font-size:var(--kw-small); color:var(--kw-muted); }
.wallet-icon { inline-size:24px; block-size:24px; flex:none; vertical-align:middle; }
.topbar { min-block-size:64px; padding:8px 24px; gap:16px; background:var(--kw-canvas); position:sticky; inset-block-start:0; z-index:8; }
.wordmark { font-size:30px; color:var(--kw-ink); }
.brand-label { font-size:14px; padding-inline-start:16px; }
#principal { font-size:12px; }
.wallet-shell { grid-template-columns:208px minmax(0,1fr); max-inline-size:1280px; min-block-size:calc(100dvh - 64px); }
.workspace { padding:24px 32px; }
.navigation { position:sticky; inset-block-start:64px; align-self:start; block-size:calc(100dvh - 64px); padding:24px 12px; }
.navigation a { position:relative; color:var(--kw-ink-2); min-block-size:56px; }
.navigation a[aria-current=page] { color:var(--kw-green); background:var(--kw-sage); }
.navigation a>span { font-size:14px; }
.nav-add { display:flex; align-items:center; justify-content:center; gap:8px; background:var(--kw-green); color:var(--kw-ink-inverse); border:0; min-block-size:56px; order:5; margin-block-start:16px; }
.nav-badge { position:absolute; inset-block-start:4px; inset-inline-end:4px; border:2px solid var(--kw-surface); background:var(--kw-green); color:var(--kw-ink-inverse); border-radius:999px; padding:0 5px; min-inline-size:20px; text-align:center; font-size:12px!important; }
.card,.inbox-card { padding:20px; border-radius:var(--kw-radius-m); box-shadow:none; margin-block-end:20px; }
.heading { margin-block-end:20px; }
.hero { padding:24px; border-radius:var(--kw-radius-l); margin-block-end:24px; background:linear-gradient(120deg,#2339bc,#651ab8); color:#f2f5ff; border:1px solid #8797ec; }
.hero .eyebrow,.hero .small { color:#e1e9ff; }
.hero .display { font-size:var(--kw-display); letter-spacing:-.03em; margin-block:12px; }
.hero .chip { background:#ffffff15; color:#f2f5ff; border:1px solid #bbcaff80; }
.hero .hero-holdings { margin-block-start:20px; }
.child-hero { display:grid; grid-template-columns:80px minmax(0,1fr); gap:8px 20px; align-items:center; }
.child-hero>.avatar { grid-row:1 / 3; }
.child-hero .display { margin:0; }
.child-hero>.chips { grid-column:1 / -1; margin-block-start:12px; }
.hero-name h1 { margin:0; font-size:22px; }
.avatar { position:relative; display:inline-grid; place-items:center; inline-size:48px; block-size:48px; flex:none; border-radius:50%; overflow:hidden; background:linear-gradient(145deg,#2339bc,#651ab8)!important; color:#fff!important; font-size:19px; font-weight:600; }
.avatar-image { position:absolute; inset:0; inline-size:100%; block-size:100%; object-fit:cover; }
.hero-avatar { inline-size:80px; block-size:80px; font-size:28px; border:2px solid #ffffff80; }
.child-cards { gap:16px; margin-block-end:24px; }
.child-card { padding:24px; gap:16px; border-radius:24px; background:var(--kw-surface); box-shadow:none; }
.child-total { font-size:32px; letter-spacing:-.02em; }
.allocation-legend { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; color:var(--kw-ink-2); }
.allocation-legend span { font-size:13px; display:grid; gap:4px; padding:0; }
.allocation-legend span:before { display:none; }
.allocation-mom { --allocation-color:#62ddfa; }.allocation-dad { --allocation-color:#9d86f9; }.allocation-bank { --allocation-color:#7797ed; }
.goal-mini { display:grid; gap:8px; color:var(--kw-ink-2); font-size:14px; }
progress,.progress { accent-color:var(--kw-green); }
.balance-details>summary,.history-filter-panel>summary,.settings-section>summary { display:flex; gap:8px; align-items:center; min-block-size:48px; cursor:pointer; color:var(--kw-ink-2); font-weight:600; }
.balance-details>summary,.settings-section>summary,.quick-advanced>summary { list-style:none; }
.balance-details>summary::-webkit-details-marker,.settings-section>summary::-webkit-details-marker,.quick-advanced>summary::-webkit-details-marker { display:none; }
.balance-details[open]>summary .wallet-icon,.settings-section[open]>summary .wallet-icon,.quick-advanced[open]>summary .wallet-icon { transform:rotate(45deg); }
.tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:4px; border:1px solid var(--kw-line); border-radius:16px; background:var(--kw-surface); gap:4px; margin-block-end:20px; }
.tabs a { min-block-size:48px; display:grid; place-items:center; padding:8px 4px; border:0; border-radius:12px; font-size:14px; white-space:normal; }
.inbox-main { display:grid; grid-template-columns:48px minmax(0,1fr); gap:12px; align-items:start; }
.inbox-main>.avatar { grid-column:1; grid-row:1 / 3; }
.inbox-main>.inbox-copy { grid-column:2; grid-row:1; }
.inbox-main>.amount { grid-column:2; grid-row:2; font-size:28px; max-inline-size:none; overflow:visible; }
.inbox-description,.inbox-description bdi { display:block; overflow:visible; text-overflow:clip; white-space:normal; line-height:1.6; overflow-wrap:anywhere; }
.inbox-card .actions { flex-direction:row; flex-wrap:wrap; align-items:center; gap:8px; }
.inbox-card .actions>* { inline-size:auto; flex:1 1 120px; min-block-size:48px; }
.inbox-card .field { margin-block:16px; }
.inbox-card .field input { min-block-size:48px; }
.history-row .avatar { inline-size:40px; block-size:40px; font-size:16px; }
.history-row .row-copy p bdi { white-space:normal; overflow:visible; }
.settings-section { margin-block:20px; padding-block:8px; border-block-start:1px solid var(--kw-line); }
.settings-section h2 { margin-block:12px; }
.settings-section>.actions { margin-block:12px; }
#entry-sheet { inline-size:min(100%,560px); max-block-size:calc(100dvh - 24px); margin:auto auto 0; border-radius:28px 28px 0 0; padding:24px; }
#entry-sheet .quick-card { padding:0; border:0; margin:0; }
#entry-sheet .quick-entry>h2 { display:none; }
#entry-sheet .quick-amount { font-size:48px; min-block-size:88px; background:transparent; border:0; }
#entry-sheet .quick-advanced { margin-block-start:16px; }
#entry-sheet .amount-input { font-size:40px; }
#entry-sheet .quick-children { margin-block:12px; }
#entry-sheet .quick-note { resize:none; }
#entry-sheet .types { display:none; }
#sheet { max-block-size:calc(100dvh - 24px); margin:auto auto 0; border-radius:28px 28px 0 0; }
dialog::backdrop { background:#06091db3; backdrop-filter:blur(4px); }
textarea { resize:none; }
summary:focus-visible { outline:3px solid var(--kw-focus); outline-offset:3px; }
@media(max-width:699px) {
  .topbar { min-block-size:64px; padding:8px 20px; }
  .brand-label { font-size:13px; }.header-actions #principal { display:none; }
  .wallet-shell { display:block; }.workspace { padding:20px 16px calc(96px + env(safe-area-inset-bottom)); }
  .navigation { position:fixed; inset-block-start:auto; inset-block-end:0; inset-inline:0; block-size:auto; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; padding:8px 8px calc(8px + env(safe-area-inset-bottom)); background:var(--kw-surface); }
  .navigation a { min-inline-size:0; display:flex; flex-direction:column; justify-content:center; gap:4px; min-block-size:56px; padding:4px 0; }
  .navigation a>span { font-size:11px; }.navigation .nav-add { order:0; margin:0; min-inline-size:0; padding:8px 0; font-size:11px; flex-direction:column; gap:4px; border-radius:18px; }
  .nav-badge { inset-inline-end:4px; inset-block-start:0; }
  .hero { padding:24px 20px; }.child-card { padding:20px; }.child-cards { grid-template-columns:1fr; }
  .card { padding:20px; }.hero .display { font-size:40px; }
  .tabs a { font-size:12px; }.child-hero { grid-template-columns:72px minmax(0,1fr); gap:8px 16px; }.hero-avatar { inline-size:72px; block-size:72px; }
  #entry-sheet,#sheet { padding:20px 16px; }
}
@media(min-width:700px) { #entry-sheet,#sheet { margin:auto; border-radius:24px; max-block-size:90dvh; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } .child-card:hover { transform:none; } }

.keypad button { display:grid; place-items:center; }
.allocation-legend bdi { overflow-wrap:anywhere; }
.empty .illustration { inline-size:88px; block-size:88px; }

input,select,textarea { border-color:var(--kw-control-line); }

/* Polish round 2: compact rows and bounded, edge-anchored sheets. */
.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.card,.inbox-card,.child-card{padding:24px;border-radius:24px}
.card{margin-block-end:24px}
.inbox-grid .inbox-card{margin:0}
.hero-holdings{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}
.hero-holdings .chip{padding:8px 12px;white-space:nowrap}
progress,.progress{appearance:none;border:0;inline-size:100%;block-size:8px;border-radius:999px;overflow:hidden;background:var(--kw-control-line);accent-color:var(--kw-green)}
progress::-webkit-progress-bar{background:var(--kw-control-line);border-radius:999px}
progress::-webkit-progress-value{background:var(--kw-green);border-radius:999px}
progress::-moz-progress-bar{background:var(--kw-green);border-radius:999px}
.waiting-row{gap:16px;min-block-size:80px;text-decoration:none;border-radius:12px}
.waiting-row>.wallet-icon{inline-size:16px}
.waiting-row .row-copy{min-inline-size:0;flex:1}
.waiting-row:hover,.settings-row:hover{background:var(--kw-sage);text-decoration:none}
.settings-group{margin-block:24px}
.settings-group>h2{margin:0 16px 8px;font-size:13px;color:var(--kw-muted);font-weight:600}
.settings-list{border:1px solid var(--kw-line);border-radius:24px;background:var(--kw-surface);overflow:hidden}
.settings-row{display:flex;align-items:center;gap:16px;inline-size:100%;min-block-size:64px;padding:16px;text-align:start;text-decoration:none;background:transparent;color:var(--kw-ink);border:0;border-radius:0;font-size:14px;font-weight:500}
.settings-row-label{flex:1;min-inline-size:0;overflow-wrap:anywhere}
.settings-value{color:var(--kw-muted);font-size:13px;max-inline-size:44%;overflow-wrap:anywhere;font-weight:400}
.settings-row>.wallet-icon:last-child{inline-size:16px;block-size:16px;color:var(--kw-muted)}
.settings-list>*+*{border-block-start:1px solid var(--kw-line)}
.settings-switch{display:flex;align-items:center;gap:16px;margin:0;min-block-size:64px;padding:16px;cursor:pointer;font-size:14px}
.settings-switch>span{flex:1;order:0}
.settings-switch input{appearance:none;order:1;position:relative;inline-size:48px;block-size:28px;min-block-size:28px;padding:0;border:1px solid var(--kw-control-line);border-radius:999px;background:var(--kw-canvas)}
.settings-switch input:before{content:'';position:absolute;inline-size:20px;block-size:20px;inset-block-start:3px;inset-inline-start:3px;background:var(--kw-muted);border-radius:50%}
.settings-switch input:checked{background:var(--kw-green);border-color:var(--kw-green)}
.settings-switch input:checked:before{inset-inline-start:23px;background:var(--kw-ink-inverse)}
.destructive-row{margin-block:24px;color:var(--kw-plum);border:1px solid var(--kw-line);border-radius:24px;background:var(--kw-surface)}
.destructive-row>.wallet-icon:last-child{color:inherit}
.destructive-row:hover{background:var(--kw-lavender)}
.note-action{display:flex;align-items:center;gap:8px;padding:8px 0;min-block-size:48px;background:transparent;color:var(--kw-green);font-size:14px;text-align:start}
.note-editor .field{margin:8px 0}
.claim-card{gap:8px}
.claim-card .claim-meta,.claim-card .claim-description{margin:0;line-height:1.5}
.claim-card .actions{margin-block-start:8px}
.inbox-description bdi{display:inline}
.goal-summary{display:grid;gap:16px;margin-block:16px 24px}
.goal-heading{display:flex;align-items:center;gap:16px}
.goal-heading h3{margin:0}
.goal-symbol{display:grid;place-items:center;inline-size:48px;block-size:48px;flex:none;background:var(--kw-sage);color:var(--kw-green);border-radius:16px;font-size:24px}
.archive-action>p{margin-block:16px}
summary{display:flex;align-items:center;gap:8px;min-block-size:56px;padding-block:8px;list-style:none;cursor:pointer;font-size:14px;font-weight:600}
summary::-webkit-details-marker{display:none}
summary::marker{content:''}
summary:after{content:'';inline-size:8px;block-size:8px;direction:ltr;border-inline-end:2px solid currentColor;border-block-end:2px solid currentColor;transform:rotate(-45deg);margin-inline: auto 4px;flex:none}
[dir=rtl] summary:after{transform:rotate(135deg)}
details[open]>summary:after{transform:rotate(45deg)}
.card a.secondary,.card a.primary,.suggestion a.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-block-size:48px;padding:12px 16px;border-radius:12px;text-decoration:none}
.currency-input{direction:ltr;position:relative;display:block;inline-size:100%;min-inline-size:0;border-radius:16px;background:var(--kw-canvas)}
.currency-input .currency-symbol{position:absolute;inset-inline-start:16px;inset-block-start:50%;transform:translateY(-50%);font-size:24px;color:var(--kw-muted);pointer-events:none}
.currency-input input{display:block;inline-size:100%;max-inline-size:100%;padding-inline:48px 16px;margin:0;border-radius:16px}
.currency-input:focus-within{outline:3px solid var(--kw-focus);outline-offset:-3px}
.currency-input input:focus-visible{outline:none}
#entry-sheet .quick-amount-label{display:grid;gap:12px;margin:16px 0}
#entry-sheet .quick-amount-label>span:first-child{font-size:14px;line-height:1.5}
#entry-sheet .quick-amount{font-size:clamp(32px,10vw,48px);min-block-size:88px;border:1px solid var(--kw-control-line)}
#entry-sheet .amount-input{font-size:32px}
#entry-sheet,#sheet{position:fixed;inset-block:auto 0;inset-inline:0;margin:0;inline-size:100%;max-inline-size:100%;max-block-size:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain;border-radius:28px 28px 0 0;padding:12px 24px calc(24px + env(safe-area-inset-bottom));animation:none}
#entry-sheet:before,#sheet:before{content:'';display:block;inline-size:40px;block-size:4px;border-radius:999px;background:var(--kw-control-line);margin:0 auto 16px}
.dialog-heading{margin-block-end:16px}
@media(min-width:700px){#entry-sheet,#sheet{inset:0;margin:auto;inline-size:min(560px,calc(100% - 48px));max-block-size:90dvh;border-radius:24px;padding:24px}#entry-sheet:before,#sheet:before{display:none}}
@media(prefers-reduced-motion:no-preference){#entry-sheet[open],#sheet[open]{animation:sheet-up 240ms var(--kw-ease)}@keyframes sheet-up{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}}

/* Wallet mark (replaces the old text wordmark). */
.wordmark img{display:block;inline-size:32px;block-size:32px;border-radius:9px}
/* Shared avatar editor; no inline styles or animation needed. */
.avatar-setting{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px}.avatar-setting h3{flex:1;min-width:100px;margin:0}.avatar-setting .small{width:100%;margin:0}.avatar-setting .actions{flex-wrap:wrap}
.avatar-editor{background:var(--kw-surface,#fff);color:var(--kw-ink,#151b35);border:1px solid var(--kw-line,#ccd2df);border-radius:24px;padding:24px;width:min(420px,calc(100% - 32px));max-height:90dvh;overflow:auto;box-sizing:border-box}.avatar-editor::backdrop{background:#0009}/* Zoom deliberately stays LTR in both locales: values increase toward the right. */
.avatar-editor input[type=range]{display:block;width:100%;margin-block:16px;direction:ltr}.avatar-crop-frame{position:relative;max-width:320px;margin-inline:auto;aspect-ratio:1;overflow:hidden;background:#fff}.avatar-crop-frame::after{content:'';position:absolute;inset:0;background:radial-gradient(circle closest-side,transparent 100%,#000a calc(100% + 1px));pointer-events:none}.avatar-crop-frame::before{content:'';position:absolute;inset:0;border:2px solid #fff;border-radius:50%;box-sizing:border-box;z-index:1;pointer-events:none}.avatar-crop-frame:focus-within::before{border-color:var(--kw-focus);border-width:3px}.avatar-crop-canvas{display:block;width:100%;height:100%;touch-action:none}.avatar-crop-canvas:focus-visible{outline:none}.avatar-editor button{min-height:48px}.avatar-editor .actions{display:flex;gap:12px;justify-content:flex-end}.avatar-inline{width:24px!important;height:24px!important;min-width:24px!important;font-size:12px;vertical-align:middle;display:inline-flex;margin-inline-end:6px}.avatar{position:relative;overflow:hidden}.avatar-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.avatar-child-setting{display:block;padding:0}.avatar-child-setting>.actions{padding:0 16px 12px}.avatar-child-setting>.actions[hidden]{display:none}.avatar-child-setting>.small:empty{display:none}.avatar-child-setting>.small:not(:empty){padding:0 16px 12px}

/* Add-entry people pickers: face first, small name beside it (2026-10-12). */
.quick-person{gap:8px;padding-block:5px;padding-inline:5px 14px}
.quick-person .quick-person-avatar{inline-size:38px;block-size:38px;font-size:15px}
.quick-person-name{font-size:.86rem;font-weight:600}
.quick-person.is-selected{background:var(--kw-surface);color:var(--kw-ink);border-color:var(--kw-focus);box-shadow:inset 0 0 0 1px var(--kw-focus)}
.quick-person.is-selected .quick-person-avatar{box-shadow:0 0 0 2px var(--kw-surface),0 0 0 4px var(--kw-focus)}
.quick-bank-avatar{color:#fff}
.quick-bank-avatar .wallet-icon{inline-size:20px;block-size:20px}
.quick-holders-field>span{display:block;margin-block-end:6px}
.quick-holders{display:flex;flex-wrap:wrap;gap:8px}
