
:root{
  --aloha-bg:#eef4fb;
  --aloha-card:#ffffff;
  --aloha-text:#0e2238;
  --aloha-muted:#6d7d91;
  --aloha-border:rgba(14,34,56,.08);
  --aloha-primary:#0d5ea8;
  --aloha-accent:#32d8c1;
  --aloha-positive:#32d8c1;
  --aloha-negative:#df4b63;
  --aloha-move-out:#8ca0b7;
  --aloha-shadow:0 24px 70px rgba(15, 51, 86, .12);
}
html[data-theme="dark"]{
  --aloha-bg:radial-gradient(circle at top, rgba(244,119,94,.22), transparent 26%), linear-gradient(180deg,#180d1d 0%,#10192d 46%,#111726 100%);
  --aloha-card:rgba(23,30,46,.88);
  --aloha-text:#f6eced;
  --aloha-muted:#d0b1ab;
  --aloha-border:rgba(255,255,255,.08);
  --aloha-primary:#ff8e63;
  --aloha-accent:#ffb18a;
  --aloha-positive:#ffb18a;
  --aloha-negative:#ff667b;
  --aloha-move-out:#ddc1b8;
  --aloha-shadow:0 28px 90px rgba(0,0,0,.38);
}
.aloha-body{background:var(--aloha-bg); color:var(--aloha-text); min-height:100vh;}
.aloha-topbar-icon{position:relative; display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:16px; background:rgba(59,122,188,.10); color:var(--aloha-primary); border:1px solid rgba(59,122,188,.16);}
html[data-theme="dark"] .aloha-topbar-icon{background:rgba(255,142,99,.12); color:var(--aloha-primary); border-color:rgba(255,142,99,.18);} 
.aloha-topbar-icon__logo{display:block; width:20px; height:20px; object-fit:contain;}
.aloha-page{display:grid; gap:22px; padding:28px 0 40px;}
.aloha-boot{position:fixed; inset:0; z-index:2500; display:flex; align-items:center; justify-content:center; background:rgba(7,15,27,.96); color:#fff; transition:opacity .45s ease, visibility .45s ease;}
.aloha-boot.is-hidden{opacity:0; visibility:hidden; pointer-events:none;}
.aloha-boot-card{display:grid; gap:10px; justify-items:center; padding:28px 32px; border-radius:30px; background:linear-gradient(180deg,rgba(27,42,71,.96),rgba(12,23,39,.96)); box-shadow:0 22px 70px rgba(0,0,0,.32);}
.aloha-mark{width:78px; height:78px; border-radius:50%; display:grid; place-items:center; font-size:34px; background:radial-gradient(circle at 30% 30%, rgba(50,216,193,.95), rgba(13,94,168,.92) 60%, rgba(9,50,88,.95)); color:#fff; box-shadow:0 16px 36px rgba(14,97,160,.34);}
.aloha-boot-title{font-size:28px; font-weight:700; letter-spacing:.02em;}
.aloha-boot-subtitle{font-size:14px; color:rgba(255,255,255,.72);}
.aloha-grid{display:grid; gap:20px; max-width:1280px; margin:0 auto; grid-template-columns:minmax(0,1.4fr) minmax(340px,.9fr);}
.aloha-main,.aloha-side{display:grid; gap:20px; align-content:start;}
.aloha-card{position:relative; overflow:hidden; border-radius:30px; background:var(--aloha-card); border:1px solid var(--aloha-border); box-shadow:var(--aloha-shadow);}
.aloha-card-inner{padding:24px 24px 22px;}
.aloha-hero .aloha-card-inner{position:relative; min-height:292px; display:flex; flex-direction:column; justify-content:flex-start;}
.aloha-hero .aloha-card-inner::before{content:''; position:absolute; inset:0; background:radial-gradient(circle at 18% 12%, rgba(122,168,220,.16), transparent 28%), radial-gradient(circle at 86% 88%, rgba(122,168,220,.10), transparent 24%); pointer-events:none; z-index:0;}
html[data-theme='dark'] .aloha-hero{background:linear-gradient(180deg,#1a1420 0%, #171521 48%, #121726 100%);}
html[data-theme='dark'] .aloha-hero .aloha-card-inner::before{background:radial-gradient(circle at 18% 12%, rgba(255,177,138,.12), transparent 26%), radial-gradient(circle at 86% 88%, rgba(220,88,109,.10), transparent 22%);}
html[data-theme='dark'] .aloha-hero-amount{color:#ffffff;}
html[data-theme='dark'] .aloha-chart{color:#ffb18a; opacity:.8;}
.aloha-chart .aloha-chart-line{stroke:currentColor; stroke-width:3; fill:none; stroke-linecap:round; stroke-linejoin:round;}
.aloha-chart .aloha-chart-area{fill:currentColor; opacity:.12;}
html[data-theme='dark'] .aloha-chart .aloha-chart-area{opacity:.10;}
.aloha-hero{min-height:340px; background:linear-gradient(180deg,#ffffff 0%, #f7faff 48%, #eef4fb 100%);}
.aloha-kicker{font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:color-mix(in srgb, var(--aloha-text) 42%, white); font-weight:700; position:relative; z-index:2;}
.aloha-hero-amount{font-family:'Roboto Condensed', sans-serif; font-size:clamp(76px, 8vw, 112px); line-height:.88; margin:20px 0 12px; letter-spacing:-.055em; color:#10253b; position:relative; z-index:2; max-width:6.5ch;}
.aloha-hero-amount.is-negative,.aloha-amount.is-negative,.aloha-account-balance.is-negative{color:var(--aloha-negative)!important;}
.aloha-hero-amount.is-rich,.aloha-amount.is-rich{color:var(--aloha-positive); text-shadow:0 0 24px rgba(50,216,193,.18);} 
html[data-theme="dark"] .aloha-hero-amount.is-rich,html[data-theme="dark"] .aloha-amount.is-rich{color:var(--aloha-accent); text-shadow:0 0 26px rgba(255,177,138,.28);} 
.aloha-delta{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.56); backdrop-filter:blur(8px); color:var(--aloha-primary); font-size:13px; font-weight:600; position:relative; z-index:2; border:1px solid rgba(255,255,255,.5);}
html[data-theme="dark"] .aloha-delta{background:rgba(255,142,99,.12); color:var(--aloha-accent);} 
.aloha-chart{position:absolute; inset:auto 0 0 0; width:100%; height:58%; margin:0; border-radius:0 0 30px 30px; background:none; color:#79a8dc; opacity:.9; z-index:0;}
html[data-theme="dark"] .aloha-chart{background:linear-gradient(180deg,rgba(255,142,99,.08),rgba(255,142,99,0));}
.aloha-hero-goal{position:absolute; top:24px; right:24px; z-index:3;}
.aloha-goal-btn{position:relative; width:44px; height:44px; border:none; border-radius:14px; cursor:pointer; background:rgba(13,94,168,.10); color:var(--aloha-primary);}
html[data-theme="dark"] .aloha-goal-btn{background:rgba(255,142,99,.14); color:var(--aloha-accent);} 
.aloha-goal-badge{position:absolute; top:-2px; right:-2px; width:12px; height:12px; border-radius:999px; background:var(--aloha-negative); display:none;}
.aloha-goal-badge.is-visible{display:block;}
.aloha-stack{display:grid; gap:18px;}
.aloha-summary-card .aloha-card-inner{padding:22px 22px 20px;}
.aloha-card-toggle{all:unset; display:block; cursor:pointer;}
.aloha-summary-action{display:flex; align-items:center; gap:10px;}
.aloha-summary-action-label{padding:7px 14px; border-radius:999px; background:rgba(14,34,56,.06); color:var(--aloha-text); font-size:14px; line-height:1; text-transform:lowercase;}
html[data-theme="dark"] .aloha-summary-action-label{background:rgba(255,255,255,.08);}
.aloha-summary-head{display:flex; align-items:center; justify-content:space-between; gap:14px;}
.aloha-summary-title{display:flex; align-items:center; gap:12px; font-weight:700; font-size:18px;}
.aloha-summary-icon{width:48px; height:48px; border-radius:18px; display:grid; place-items:center; background:rgba(13,94,168,.10); color:var(--aloha-primary); font-size:22px;}
html[data-theme="dark"] .aloha-summary-icon{background:rgba(255,142,99,.14); color:var(--aloha-accent);} 
.aloha-amount{font-family:'Roboto Condensed', sans-serif; font-size:44px; line-height:1; letter-spacing:-.04em; margin-top:14px;}
.aloha-chevron{width:34px; height:34px; border-radius:12px; display:grid; place-items:center; color:var(--aloha-muted); background:rgba(14,34,56,.05); transition:transform .26s ease;}
html[data-theme="dark"] .aloha-chevron{background:rgba(255,255,255,.06);} 
.aloha-summary-card.is-open .aloha-chevron{transform:rotate(90deg);} 
.aloha-wallet-stack{display:flex; flex-direction:column; gap:14px; margin-top:18px; transition:gap .32s ease, opacity .24s ease;}
.aloha-wallet-stack.is-collapsed{gap:0;}
.aloha-wallet-card{position:relative; overflow:hidden; display:grid; gap:18px; padding:20px 22px; border:none; border-radius:28px; cursor:pointer; text-align:left; color:#fff; background:linear-gradient(135deg,#0d5ea8 0%,#143d7a 100%); box-shadow:0 16px 34px rgba(13,94,168,.24); transition:transform .28s cubic-bezier(.22,.8,.18,1), margin-top .28s cubic-bezier(.22,.8,.18,1), box-shadow .24s ease; min-height:126px;}
.aloha-wallet-card:hover{transform:translateY(-2px);} 
.aloha-wallet-stack.is-collapsed .aloha-wallet-card:not(:first-child){margin-top:-94px;}
.aloha-wallet-stack.is-collapsed .aloha-wallet-card{box-shadow:0 12px 24px rgba(13,94,168,.18);}
html[data-theme="dark"] .aloha-wallet-stack.is-collapsed .aloha-wallet-card{box-shadow:0 14px 28px rgba(0,0,0,.24);} 
.aloha-wallet-card:nth-child(2){background:linear-gradient(135deg,#1174b8 0%,#2154a2 100%);} 
.aloha-wallet-card:nth-child(3){background:linear-gradient(135deg,#2990c8 0%,#1f6cab 100%);} 
.aloha-wallet-card:nth-child(4){background:linear-gradient(135deg,#3ea2cf 0%,#2f7cb9 100%);} 
html[data-theme="dark"] .aloha-wallet-card{background:linear-gradient(135deg,#61324a 0%,#2c2945 100%); box-shadow:0 18px 40px rgba(0,0,0,.28);} 
html[data-theme="dark"] .aloha-wallet-card:nth-child(2){background:linear-gradient(135deg,#7c4549 0%,#3b2948 100%);} 
html[data-theme="dark"] .aloha-wallet-card:nth-child(3){background:linear-gradient(135deg,#934f4f 0%,#482e4c 100%);} 
html[data-theme="dark"] .aloha-wallet-card:nth-child(4){background:linear-gradient(135deg,#b46358 0%,#5a3651 100%);} 
.aloha-wallet-card::after{content:''; position:absolute; inset:auto -50px -60px auto; width:180px; height:180px; border-radius:50%; background:rgba(255,255,255,.12);} 
.aloha-wallet-top{display:flex; align-items:center; justify-content:space-between; gap:12px; position:relative; z-index:1;}
.aloha-wallet-label{font-weight:700; font-size:16px;}
.aloha-wallet-icon{width:44px; height:44px; border-radius:16px; display:grid; place-items:center; background:rgba(255,255,255,.14); font-size:18px;}
.aloha-wallet-balance{position:relative; z-index:1; font-family:'Roboto Condensed', sans-serif; font-size:46px; line-height:1; letter-spacing:-.04em;}
.aloha-movements-head{display:flex; align-items:center; justify-content:space-between; gap:14px;}
.aloha-mini-actions{display:flex; gap:10px;}
.aloha-mini-action{width:36px; height:36px; border:none; border-radius:14px; cursor:pointer; font-size:22px; line-height:1; display:grid; place-items:center; background:rgba(14,34,56,.06); color:var(--aloha-text);} 
html[data-theme="dark"] .aloha-mini-action{background:rgba(255,255,255,.06); color:var(--aloha-text);} 
.aloha-movements-list{display:grid; gap:10px; margin-top:16px;}
.aloha-move{display:flex; align-items:center; gap:12px; padding:14px 16px; border-radius:20px; border:1px solid var(--aloha-border); background:rgba(255,255,255,.54); cursor:pointer;}
html[data-theme="dark"] .aloha-move{background:rgba(255,255,255,.03);} 
.aloha-move-icon{width:40px; height:40px; border-radius:15px; display:grid; place-items:center; background:rgba(13,94,168,.10); color:var(--aloha-primary);} 
html[data-theme="dark"] .aloha-move-icon{background:rgba(255,142,99,.14); color:var(--aloha-accent);} 
.aloha-move-main{min-width:0; flex:1;}
.aloha-move-title{font-weight:700;}
.aloha-move-meta{font-size:13px; color:var(--aloha-muted); margin-top:2px;}
.aloha-move-amount{font-family:'Roboto Condensed', sans-serif; font-size:28px; letter-spacing:-.03em;}
.aloha-move-amount.is-credit{color:var(--aloha-positive);} 
html[data-theme="dark"] .aloha-move-amount.is-credit{color:var(--aloha-accent);} 
.aloha-move-amount.is-debit{color:var(--aloha-move-out);} 
.aloha-move-amount.is-transfer{color:var(--aloha-primary);} 
html[data-theme="dark"] .aloha-move-amount.is-transfer{color:var(--aloha-accent);} 
.aloha-section-title{font-size:19px; font-weight:700;}
.aloha-settings-btn{border:none; width:42px; height:42px; border-radius:14px; cursor:pointer; display:grid; place-items:center; background:rgba(14,34,56,.06); color:var(--aloha-text);} 
html[data-theme="dark"] .aloha-settings-btn{background:rgba(255,255,255,.06);} 
.aloha-dialog-backdrop{position:fixed; inset:0; background:rgba(7,11,18,.5); display:none; align-items:center; justify-content:center; padding:20px; z-index:2300;}
.aloha-dialog-backdrop.is-visible{display:flex;}
.aloha-dialog{width:min(100%, 520px); background:var(--aloha-card); color:var(--aloha-text); border:1px solid var(--aloha-border); border-radius:30px; box-shadow:var(--aloha-shadow); overflow:hidden;}
.aloha-dialog-head{display:flex; align-items:center; justify-content:space-between; padding:20px 22px 14px;}
.aloha-dialog-title{font-size:20px; font-weight:700;}
.aloha-dialog-close{border:none; background:transparent; color:var(--aloha-muted); font-size:28px; cursor:pointer;}
.aloha-dialog-body{padding:0 22px 22px; display:grid; gap:16px;}
.aloha-option-list{display:grid; gap:10px;}
.aloha-option-btn{display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; border:none; cursor:pointer; text-align:left; padding:14px 16px; border-radius:18px; background:rgba(14,34,56,.05); color:var(--aloha-text);} 
html[data-theme="dark"] .aloha-option-btn{background:rgba(255,255,255,.06);} 
.aloha-input{width:100%; border:1px solid var(--aloha-border); border-radius:18px; padding:14px 16px; background:transparent; color:var(--aloha-text); font:inherit;}
.aloha-switch-row{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--aloha-border);} 
.aloha-switch{position:relative; width:52px; height:30px; border:none; border-radius:999px; background:rgba(14,34,56,.12); cursor:pointer;}
.aloha-switch::after{content:''; position:absolute; top:4px; left:4px; width:22px; height:22px; border-radius:50%; background:#fff; transition:transform .22s ease;}
.aloha-switch.is-active{background:var(--aloha-primary);} 
.aloha-switch.is-active::after{transform:translateX(22px);} 
.aloha-numpad-screen{font-family:'Roboto Condensed', sans-serif; font-size:64px; text-align:center; letter-spacing:-.04em; margin:10px 0 2px;}
.aloha-numpad{display:grid; grid-template-columns:repeat(3, 84px); gap:14px; justify-content:center; padding-bottom:4px;}
.aloha-key{width:84px; height:84px; border:none; border-radius:999px; background:#2b313c; color:#fff; cursor:pointer; font-size:30px; font-weight:500; box-shadow:0 8px 18px rgba(0,0,0,.16); transition:transform .12s ease, filter .12s ease;}
.aloha-key:active{transform:scale(.96); filter:brightness(1.08);} 
html[data-theme="light"] .aloha-key{background:#1c2636;} 
.aloha-dialog-note{font-size:13px; color:var(--aloha-muted); text-align:center;}
.aloha-confirm-actions{display:flex; justify-content:flex-end; gap:10px;}
.aloha-btn{border:none; border-radius:16px; padding:12px 16px; cursor:pointer; font:inherit; font-weight:700;}
.aloha-btn-primary{background:var(--aloha-primary); color:#fff;} .aloha-btn-secondary{background:rgba(14,34,56,.08); color:var(--aloha-text);} html[data-theme="dark"] .aloha-btn-secondary{background:rgba(255,255,255,.08);} 
.aloha-account-header{display:flex; align-items:center; justify-content:space-between; gap:14px;}
.aloha-account-balance{font-family:'Roboto Condensed', sans-serif; font-size:88px; line-height:.9; letter-spacing:-.05em; margin:20px 0 8px;}
.aloha-subtext{color:var(--aloha-muted); font-size:14px;}
@media (max-width: 1120px){ .aloha-grid{grid-template-columns:1fr;} }
@media (max-width: 780px){ .aloha-page{padding-top:16px;} .aloha-hero{min-height:300px;} .aloha-hero .aloha-card-inner{min-height:252px;} .aloha-hero-amount{font-size:clamp(62px, 16vw, 84px);} .aloha-account-balance{font-size:68px;} }

.aloha-movements-pager{display:flex; align-items:center; justify-content:flex-end; gap:10px; margin-top:14px;}
.aloha-movements-page-btn{width:34px; height:34px; border:none; border-radius:12px; cursor:pointer; display:grid; place-items:center; background:rgba(14,34,56,.06); color:var(--aloha-text); transition:transform .18s ease, opacity .18s ease, background .18s ease;}
html[data-theme="dark"] .aloha-movements-page-btn{background:rgba(255,255,255,.06);}
.aloha-movements-page-btn:hover:not(:disabled){transform:translateY(-1px);}
.aloha-movements-page-btn:disabled{opacity:.4; cursor:default; transform:none;}
.aloha-movements-page-label{min-width:52px; text-align:center; font-size:13px; color:var(--aloha-muted);}

@media (max-width: 780px){ .aloha-wallet-stack.is-collapsed .aloha-wallet-card:not(:first-child){margin-top:-88px;} }
