:root{
  color-scheme:light;
  --bg:#f5f7fb;--surface:#ffffff;--surface-2:#f9fbfe;--surface-3:#eef3fb;
  --ink:#152033;--ink-2:#344054;--muted:#667085;--line:#e5eaf2;
  --brand:#315fcb;--brand-2:#244cae;--brand-soft:#eaf0ff;--brand-faint:#f4f7ff;
  --green:#087a5b;--green-soft:#e7f7f1;--red:#b42335;--red-soft:#fff0f2;--orange:#a85b00;--orange-soft:#fff4e7;--purple:#7557ca;--purple-soft:#f1edff;
  --shadow:0 14px 42px rgba(32,51,84,.08);--radius-xl:24px;--radius-lg:19px;--radius-md:15px;--radius-sm:12px;
  --nav-height:70px;--rail-width:98px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
:root[data-theme="dark"]{color-scheme:dark;--bg:#0c1424;--surface:#131e31;--surface-2:#17243a;--surface-3:#1c2b44;--ink:#f4f7fb;--ink-2:#d5deea;--muted:#aab6c7;--line:#253550;--brand:#7da2ff;--brand-2:#9ab6ff;--brand-soft:#1c315c;--brand-faint:#13213b;--shadow:0 16px 48px rgba(0,0,0,.24);--green:#45c49a;--green-soft:#123b31;--red:#ff7b88;--red-soft:#41222b;--orange:#f2b35f;--orange-soft:#412f1d;--purple-soft:#2d2549}
*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}body{min-height:100dvh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}.app-shell{min-height:100dvh}.main-column{min-height:100dvh;padding-bottom:calc(var(--nav-height) + 24px + env(safe-area-inset-bottom))}.content-wrap{width:min(760px,100%);margin:0 auto;padding:20px clamp(14px,3.5vw,24px) 26px}.page-view{display:none}.page-view--active{display:block;animation:pageIn .18s ease both}@keyframes pageIn{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:4px 2px 17px}.page-header h1{margin:3px 0 4px;font-size:clamp(24px,6vw,36px);line-height:1.04;letter-spacing:-.045em;font-weight:810}.page-header h1 span{color:var(--brand)}.page-header p{margin:0;color:var(--muted);font-size:12px}.eyebrow{color:var(--brand-2);font-size:9.5px;font-weight:850;letter-spacing:.12em}.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink-2);box-shadow:none}
.command-card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.command-card__head{display:flex;justify-content:space-between;align-items:center;padding:15px 16px 10px}.command-card__head>div{display:grid;gap:2px}.command-card__head strong{font-size:14px}.command-card__head small{font-size:10px;color:var(--muted)}.quiet-button{min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--brand);font-size:10px;font-weight:750}
.balance-card{position:relative;margin:0 13px;padding:18px;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(125deg,#315fcb 0%,#264da8 58%,#203f8f 100%);color:#fff}.balance-card__halo{position:absolute;width:210px;height:210px;border-radius:50%;right:-75px;top:-100px;background:rgba(255,255,255,.085)}.balance-label,.balance-value,.balance-change,.wallet-overview,.balance-stats{position:relative;z-index:1}.balance-label{font-size:10px;color:rgba(255,255,255,.76)}.balance-value{margin-top:4px;font-size:clamp(31px,8vw,42px);line-height:1;font-weight:820;letter-spacing:-.05em}.balance-change{margin-top:7px;font-size:10px;color:rgba(255,255,255,.7)}.wallet-overview{display:flex;align-items:center;gap:9px;margin-top:15px;padding:8px 10px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:rgba(255,255,255,.09);color:#fff;text-align:left}.wallet-overview>span{display:grid;place-items:center;width:29px;height:29px;border-radius:10px;background:rgba(255,255,255,.13)}.wallet-overview>div{display:grid}.wallet-overview strong{font-size:10px}.wallet-overview small{font-size:8.5px;color:rgba(255,255,255,.65)}.balance-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;padding-top:13px;border-top:1px solid rgba(255,255,255,.16)}.balance-stats>div{display:grid;gap:3px;padding:0 9px;border-right:1px solid rgba(255,255,255,.13)}.balance-stats>div:first-child{padding-left:0}.balance-stats>div:last-child{border:0;padding-right:0}.balance-stats small{font-size:8.5px;color:rgba(255,255,255,.62)}.balance-stats strong{font-size:11.5px;white-space:nowrap}
.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:13px}.quick-actions button{min-width:0;min-height:67px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink-2)}.quick-actions strong{font-size:9.5px}.action-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:11px;background:var(--brand-soft);color:var(--brand);font-size:16px;font-weight:800}.action-icon--income{background:var(--green-soft);color:var(--green)}.action-icon--expense{background:var(--red-soft);color:var(--red)}.action-icon--purple{background:var(--purple-soft);color:var(--purple)}
.section-title{display:flex;justify-content:space-between;align-items:end;margin:20px 3px 9px}.section-title>div{display:grid;gap:2px}.section-title strong{font-size:12.5px}.section-title small{font-size:9.5px;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-card,.insight-card{min-width:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 7px 24px rgba(32,51,84,.045)}.metric-card{display:grid;gap:4px}.metric-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:10px;background:var(--brand-soft);color:var(--brand);margin-bottom:5px}.metric-card small,.insight-card small{font-size:9.5px;color:var(--muted)}.metric-card strong,.insight-card strong{font-size:18px;letter-spacing:-.03em}.metric-card span,.insight-card span{font-size:9px;color:var(--muted)}.progress{height:5px;margin-top:5px;border-radius:99px;background:var(--surface-3);overflow:hidden}.progress i{display:block;height:100%;background:var(--brand);border-radius:inherit}
.focus-list{display:grid;gap:8px}.focus-card{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.focus-card>div:nth-child(2){display:grid;gap:2px}.focus-card strong{font-size:11px}.focus-card span{font-size:9.5px;color:var(--muted)}.focus-card b{color:var(--muted)}.focus-dot{width:8px;height:8px;border-radius:50%}.focus-dot--blue{background:var(--brand)}.focus-dot--green{background:var(--green)}.focus-dot--orange{background:var(--orange)}
.analytics-hero{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-xl);background:linear-gradient(145deg,var(--surface),var(--brand-faint));box-shadow:var(--shadow)}.analytics-hero>div:first-child{display:grid;gap:4px}.analytics-hero small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.analytics-hero strong{font-size:28px}.analytics-hero span{font-size:10px;color:var(--muted)}.pulse-ring{position:relative;width:82px;height:82px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--brand) 0 4%,var(--surface-3) 4% 100%)}.pulse-ring:after{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--surface)}.pulse-ring b{position:relative;z-index:1}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.insight-card{display:grid;gap:5px}.insight-card--wide{grid-column:1/-1}.chart-placeholder{height:105px;display:flex;align-items:end;gap:9px;padding-top:10px}.chart-placeholder i{flex:1;border-radius:7px 7px 2px 2px;background:linear-gradient(var(--brand),var(--brand-soft))}.chart-placeholder i:nth-child(1){height:35%}.chart-placeholder i:nth-child(2){height:49%}.chart-placeholder i:nth-child(3){height:42%}.chart-placeholder i:nth-child(4){height:68%}.chart-placeholder i:nth-child(5){height:58%}.chart-placeholder i:nth-child(6){height:78%}
.more-list{display:grid;gap:8px}.more-list button{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:62px;padding:10px 13px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left}.more-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:var(--brand-soft);color:var(--brand);font-weight:800}.more-list button>div{display:grid;gap:2px}.more-list strong{font-size:11px}.more-list small{font-size:9.5px;color:var(--muted)}.more-list b{color:var(--muted)}.personal-badge{display:flex;gap:12px;align-items:flex-start;margin-top:14px;padding:13px;border:1px dashed color-mix(in srgb,var(--brand) 35%,var(--line));border-radius:var(--radius-md);background:var(--brand-faint)}.personal-badge>span{padding:4px 6px;border-radius:7px;background:var(--brand);color:#fff;font-size:8px;font-weight:850;letter-spacing:.08em}.personal-badge>div{display:grid;gap:3px}.personal-badge strong{font-size:10.5px}.personal-badge small{font-size:9px;color:var(--muted)}
.primary-nav{position:fixed;z-index:50;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(7px,env(safe-area-inset-bottom));height:var(--nav-height);display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:5px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:23px;background:color-mix(in srgb,var(--surface) 93%,transparent);box-shadow:0 12px 38px rgba(24,35,65,.16);backdrop-filter:blur(18px)}.primary-nav button{display:grid;place-items:center;align-content:center;gap:4px;border:0;border-radius:16px;background:transparent;color:var(--muted)}.primary-nav button>span{font-size:18px;line-height:1}.primary-nav button>strong{font-size:10px}.primary-nav button.active{background:var(--brand-soft);color:var(--brand)}.dots{display:flex!important;gap:2px;align-items:center}.dots i{display:block;width:3px;height:3px;border-radius:50%;background:currentColor}
.sync-chip{position:fixed;cursor:pointer;z-index:45;right:13px;top:max(9px,env(safe-area-inset-top));display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--line);border-radius:99px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(12px);font-size:8.5px;color:var(--muted);opacity:.82}.sync-chip i{width:6px;height:6px;border-radius:50%;background:var(--orange)}.sync-chip i.ok{background:var(--green)}
.auth-layer{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#eef3fb 0%,#f8faff 52%,#e9effb 100%)}:root[data-theme="dark"] .auth-layer{background:linear-gradient(145deg,#0c1424,#101c30 52%,#0c1424)}.auth-layer--hidden{display:none}.auth-card{width:min(390px,100%);padding:24px;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:0 25px 80px rgba(20,35,64,.14)}.brand-lockup{display:flex;align-items:center;gap:11px}.brand-lockup>div:last-child{display:grid}.brand-lockup strong{font-size:18px;letter-spacing:-.03em}.brand-lockup small{font-size:9px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.avero-mark{width:45px;height:45px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,var(--brand),#213f8e)}.avero-mark span{width:22px;height:22px;position:relative}.avero-mark span:before,.avero-mark span:after{content:"";position:absolute;bottom:1px;width:5px;height:23px;border-radius:99px;background:#fff}.avero-mark span:before{left:5px;transform:rotate(25deg)}.avero-mark span:after{right:5px;transform:rotate(-25deg)}.auth-card h2{margin:28px 0 8px;font-size:29px;line-height:1.04;letter-spacing:-.045em}.auth-card p{margin:0 0 18px;color:var(--muted);font-size:11px;line-height:1.55}.google-button{width:100%;min-height:49px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);color:var(--ink);font-weight:760}.google-button span{display:inline-grid;place-items:center;width:23px;height:23px;margin-right:8px;border-radius:50%;background:#fff;color:#4285f4;border:1px solid #ddd}.auth-note{display:block;margin-top:13px;color:var(--muted);font-size:8.5px;line-height:1.5}
/* Landscape / desktop layout: use the available canvas instead of keeping the portrait 760px column. */
@media (orientation:landscape) and (min-width:650px) and (max-width:999px){
  :root{--rail-width:76px}
  .main-column{padding:0 0 0 calc(var(--rail-width) + 14px)}
  .content-wrap{width:100%;max-width:none;margin:0;padding:14px 14px 22px}
  .primary-nav{left:max(7px,env(safe-area-inset-left));right:auto;top:50%;bottom:auto;transform:translateY(-50%);width:var(--rail-width);height:auto;grid-template-columns:1fr;grid-template-rows:repeat(3,68px);gap:4px;padding:6px;border-radius:22px}
  .primary-nav button{grid-template-columns:1fr;grid-template-rows:28px auto;place-items:center;align-content:center;gap:3px;padding:5px 4px;text-align:center}
  .primary-nav button>strong{font-size:8.5px}
  .primary-nav button>span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:var(--surface-2);font-size:15px}
  .primary-nav button.active{box-shadow:inset 3px 0 0 var(--brand)}
  .page-header{margin-top:0}
  .page-header h1{font-size:clamp(25px,4.5vw,34px)}
  .sync-chip{right:12px}
}
@media (orientation:landscape) and (min-width:1000px){
  :root{--rail-width:84px}
  .main-column{padding:0 0 0 calc(var(--rail-width) + 16px)}
  .content-wrap{width:min(1080px,calc(100vw - var(--rail-width) - 48px));max-width:none;margin:0 auto;padding:26px 22px 34px}
  .primary-nav{left:max(10px,env(safe-area-inset-left));right:auto;top:50%;bottom:auto;transform:translateY(-50%);width:var(--rail-width);height:auto;grid-template-columns:1fr;grid-template-rows:repeat(3,72px);gap:5px;padding:7px;border-radius:23px}
  .primary-nav button{grid-template-columns:1fr;grid-template-rows:30px auto;place-items:center;align-content:center;gap:4px;padding:6px 5px;text-align:center}
  .primary-nav button>strong{font-size:9px}
  .primary-nav button>span{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:var(--surface-2);font-size:16px}
  .primary-nav button.active{box-shadow:inset 3px 0 0 var(--brand)}
  .page-header{margin-bottom:19px}
  .page-header h1{font-size:38px}
  .more-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .analytics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sync-chip{right:18px}
}
@media(max-width:430px){.content-wrap{padding-inline:11px}.quick-actions{gap:6px}.quick-actions button{min-height:63px}.balance-stats strong{font-size:10.5px}.metric-grid{gap:7px}.page-header{margin-top:2px}.sync-chip{right:9px;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:350px){.quick-actions{grid-template-columns:repeat(2,1fr)}.metric-grid,.analytics-grid{grid-template-columns:1fr}.insight-card--wide{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.page-view--active{animation:none!important}}

/* Phase 3 · finance core */
.activity-list{display:grid;gap:7px}.activity-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left}.activity-row>div{display:grid;gap:2px;min-width:0}.activity-row strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-row small{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-row>b{font-size:10.5px;white-space:nowrap}.empty-state{padding:18px;border:1px dashed var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--muted);font-size:10px;line-height:1.5;text-align:center}.history-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:11px;background:var(--brand-soft);color:var(--brand);font-weight:850}.history-icon--income{background:var(--green-soft);color:var(--green)}.history-icon--expense{background:var(--red-soft);color:var(--red)}.history-icon--transfer{background:var(--brand-soft);color:var(--brand)}.money-income{color:var(--green)}.money-expense{color:var(--red)}.money-transfer{color:var(--brand)}
.modal-open{overflow:hidden}.modal-root{display:none;position:fixed;z-index:160;inset:0}.modal-root--open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(9,17,31,.48);backdrop-filter:blur(3px)}.modal-sheet{position:absolute;left:50%;bottom:0;transform:translateX(-50%);display:flex;flex-direction:column;width:min(720px,100%);max-height:min(88dvh,820px);border:1px solid var(--line);border-bottom:0;border-radius:25px 25px 0 0;background:var(--surface);box-shadow:0 -20px 70px rgba(15,28,50,.22);overflow:hidden}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent)}.modal-head>div{display:grid;gap:2px}.modal-head strong{font-size:14px}.modal-head small{font-size:9px;color:var(--muted)}.modal-close{width:36px;height:36px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);font-size:22px;line-height:1}.modal-body{overflow:auto;padding:14px 14px calc(18px + env(safe-area-inset-bottom))}
.form-card{display:grid;gap:11px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-2)}.form-card+*{margin-top:12px}.form-card label{display:grid;gap:5px}.form-card label>span{font-size:9px;color:var(--muted);font-weight:700}.form-card input,.form-card select,.form-card textarea{width:100%;min-height:43px;padding:9px 11px;border:1px solid var(--line);border-radius:12px;outline:none;background:var(--surface);color:var(--ink);font-size:11px}.form-card textarea{resize:vertical;min-height:76px}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:color-mix(in srgb,var(--brand) 65%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-soft) 80%,transparent)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.form-grid--3{grid-template-columns:1.4fr 1fr 1fr}.primary-button,.secondary-button{min-height:42px;padding:0 13px;border-radius:12px;font-size:10px;font-weight:780}.primary-button{border:1px solid var(--brand);background:var(--brand);color:#fff}.secondary-button{border:1px solid var(--line);background:var(--surface);color:var(--ink-2)}.form-actions{display:flex;justify-content:flex-end;gap:8px}.form-actions>*{flex:1}.money-field{font-size:18px!important;font-weight:780;letter-spacing:-.02em}
.manager-list{display:grid;gap:7px}.manager-section{margin-top:14px}.manager-section h3{margin:0 3px 7px;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.manager-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.manager-row--muted{opacity:.63}.manager-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--brand-soft);color:var(--brand);font-weight:800}.manager-row>div:nth-child(2){display:grid;gap:2px;min-width:0}.manager-row strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.manager-row small{font-size:8.8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}.row-actions button{min-height:30px;padding:0 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--ink-2);font-size:8.5px;font-weight:700}.row-actions .danger-link{color:var(--red)}
.history-list{display:grid;gap:7px}.history-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.history-row>div:nth-child(2){display:grid;gap:2px;min-width:0}.history-row strong{font-size:10.5px}.history-row small{font-size:8.7px;color:var(--muted);line-height:1.4}.history-row>b{font-size:10px;white-space:nowrap}.history-row .row-actions{grid-column:2/-1}.template-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:11px}.template-actions button{min-width:0}
.toast{position:fixed;z-index:220;left:50%;bottom:calc(var(--nav-height) + 18px + env(safe-area-inset-bottom));transform:translate(-50%,20px);max-width:min(380px,calc(100% - 24px));padding:10px 13px;border-radius:12px;background:#173b32;color:#fff;box-shadow:0 14px 38px rgba(0,0,0,.2);font-size:10px;font-weight:700;opacity:0;pointer-events:none;transition:.18s ease}.toast--error{background:#6b2831}.toast--show{opacity:1;transform:translate(-50%,0)}.sync-chip i.bad{background:var(--red)}
@media (orientation:landscape) and (min-width:650px), (min-width:1000px){.modal-sheet{left:calc(50% + var(--rail-width)/2);bottom:50%;transform:translate(-50%,50%);max-height:86dvh;border-bottom:1px solid var(--line);border-radius:25px}.toast{bottom:18px;left:calc(50% + var(--rail-width)/2)}}
@media(max-width:560px){.form-grid,.form-grid--3{grid-template-columns:1fr}.manager-row{grid-template-columns:34px minmax(0,1fr)}.manager-row .row-actions{grid-column:2}.history-row{grid-template-columns:32px minmax(0,1fr) auto}.template-actions{grid-template-columns:1fr}.modal-body{padding-inline:10px}.form-actions{flex-direction:column-reverse}.toast{bottom:calc(var(--nav-height) + 14px + env(safe-area-inset-bottom))}}

/* Phase 5 · planning */
.planning-focus-card{width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}.planning-focus-card>b{font-size:9px;white-space:nowrap}.planning-focus-card:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}.mini-progress{height:4px;margin-top:4px}
.planning-toolbar{display:flex;align-items:end;gap:8px;margin-bottom:10px}.planning-toolbar label{display:grid;gap:5px;flex:1}.planning-toolbar label>span{font-size:9px;color:var(--muted);font-weight:700}.planning-toolbar input{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}
.planning-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.planning-summary>div{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.planning-summary small{font-size:8.5px;color:var(--muted)}.planning-summary strong{font-size:12px;letter-spacing:-.02em}.tone-danger{color:var(--red)!important}
.planning-card{display:grid;gap:8px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.planning-card--muted{opacity:.66}.planning-card__head{display:flex;align-items:start;justify-content:space-between;gap:10px}.planning-card__head>div{display:grid;gap:2px;min-width:0}.planning-card__head strong{font-size:10.5px}.planning-card__head small{font-size:8.8px;color:var(--muted)}.planning-card__head>b{font-size:9px;color:var(--ink-2);white-space:nowrap}.planning-card p{margin:0;color:var(--muted);font-size:9px;line-height:1.45}.planning-progress{height:6px;margin:0}.planning-meta{display:flex;gap:6px;flex-wrap:wrap}.planning-meta span{padding:3px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:8px}.planning-context{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.planning-context strong{font-size:11px}.planning-context small{font-size:9px;color:var(--muted)}
@media(max-width:560px){.planning-summary{grid-template-columns:1fr 1fr}.planning-summary>div:last-child{grid-column:1/-1}.planning-toolbar{align-items:stretch;flex-direction:column}.planning-toolbar button{width:100%}.planning-focus-card{grid-template-columns:10px minmax(0,1fr)}.planning-focus-card>b{grid-column:2;justify-self:start}}

/* v0.5.2 · Planning & UI adjustment pack */
.nav-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--surface-2);flex:0 0 auto}
.nav-icon svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.primary-nav button.active .nav-icon{background:color-mix(in srgb,var(--brand-soft) 86%,var(--surface));color:var(--brand)}
.primary-nav button>strong{line-height:1.15}

.modal-head{padding:17px 18px}.modal-head strong{font-size:16px}.modal-head small{font-size:10.5px;line-height:1.35}
.modal-body{padding:16px 16px calc(20px + env(safe-area-inset-bottom))}
.form-card{gap:13px;padding:15px}.form-card label>span{font-size:10.5px}.form-card input,.form-card select,.form-card textarea{min-height:46px;padding:10px 12px;font-size:12.5px}.form-card textarea{min-height:82px}.primary-button,.secondary-button{min-height:44px;font-size:11.5px}.money-field{font-size:19px!important}
.field-help{display:block;margin-top:2px;color:var(--muted);font-size:9.8px;line-height:1.45}
.compact-button{min-height:38px;padding:0 12px;white-space:nowrap}
.toggle-row{grid-template-columns:20px minmax(0,1fr)!important;align-items:start!important;gap:9px!important;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.toggle-row>input{width:18px!important;height:18px!important;min-height:18px!important;margin:1px 0 0;padding:0!important;box-shadow:none!important}
.toggle-row>span{display:grid;gap:2px;font-size:inherit!important;color:inherit!important}.toggle-row strong{font-size:11.5px}.toggle-row small{font-size:9.8px;color:var(--muted);font-weight:500;line-height:1.4}

.planning-block{padding:13px;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:0 5px 18px rgba(32,51,84,.035)}
.planning-block+.planning-block{margin-top:12px}.planning-block--toolbar{background:var(--surface-2)}.planning-block--summary{background:linear-gradient(145deg,var(--surface),var(--brand-faint))}.planning-block--list{padding:14px}
.planning-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding-bottom:11px;border-bottom:1px solid var(--line)}
.planning-section-head>div{display:grid;gap:2px}.planning-section-head strong{font-size:13px}.planning-section-head small{font-size:10px;color:var(--muted);line-height:1.35}
.planning-toolbar{margin-bottom:0}.planning-toolbar label>span{font-size:10.5px}.planning-toolbar input{min-height:45px;font-size:12.5px}
.planning-summary{gap:10px;margin-bottom:0}.planning-summary>div{gap:4px;padding:12px}.planning-summary small{font-size:10px}.planning-summary strong{font-size:14px}
.planning-card{gap:10px;padding:13px}.planning-card+.planning-card{margin-top:9px}.planning-card__head strong{font-size:12.5px}.planning-card__head small{font-size:10.5px}.planning-card__head>b{font-size:10.5px}.planning-card p{font-size:10.5px}.planning-meta span{padding:4px 8px;font-size:9.5px}.planning-context strong{font-size:12.5px}.planning-context small{font-size:10px}
.row-actions button{font-size:10.5px}
.daily-recommendation,.wallet-linked-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;align-items:center;padding:9px 10px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:11px;background:var(--brand-faint)}
.daily-recommendation>span,.wallet-linked-note>span{font-size:9.8px;color:var(--muted)}.daily-recommendation>strong,.wallet-linked-note>strong{font-size:11.5px;color:var(--brand-2)}.daily-recommendation>small{grid-column:1/-1;font-size:9px;color:var(--muted)}.daily-recommendation--danger{border-color:color-mix(in srgb,var(--red) 25%,var(--line));background:var(--red-soft)}.daily-recommendation--danger>strong{color:var(--red)}

.daily-budget-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.daily-budget-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--brand) 20%,var(--line));border-radius:var(--radius-md);background:linear-gradient(145deg,var(--surface),var(--brand-faint));color:var(--ink);text-align:left}.daily-budget-card>div{display:grid;gap:3px;min-width:0}.daily-budget-card>div strong{font-size:11.5px}.daily-budget-card>div small{font-size:9.5px;color:var(--muted)}.daily-budget-card>span{display:grid;gap:2px;text-align:right;white-space:nowrap}.daily-budget-card>span small{font-size:8.8px;color:var(--muted)}.daily-budget-card>span b{font-size:13px;color:var(--brand-2)}.unbudgeted-expense-dashboard{margin-top:16px}.unbudgeted-expense-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.unbudgeted-expense-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink)}.unbudgeted-expense-card>div{min-width:0}.unbudgeted-expense-card>span{display:grid;gap:2px;text-align:right;white-space:nowrap}.unbudgeted-expense-card>span small{font-size:8.8px;color:var(--muted)}.unbudgeted-expense-card>span b{font-size:13px;color:var(--ink)}

/* Slightly larger everyday text without making cards bulky. */
.command-card__head strong{font-size:15px}.command-card__head small{font-size:10.5px}.quick-actions strong{font-size:10.5px}.section-title strong{font-size:13.5px}.section-title small{font-size:10px}.focus-card strong{font-size:12px}.focus-card span{font-size:10px}.more-list strong{font-size:12px}.more-list small{font-size:10px}

/* Stable, clearer left rail in landscape/desktop. Every icon uses the same SVG box. */
@media (orientation:landscape) and (min-width:650px) and (max-width:999px){
  :root{--rail-width:88px}
  .main-column{padding-left:calc(var(--rail-width) + 14px)}
  .primary-nav{width:var(--rail-width);grid-template-rows:repeat(3,74px);gap:6px;padding:7px}
  .primary-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:6px;border-radius:15px;text-align:center}
  .primary-nav button>strong{font-size:10px}
  .primary-nav button>span.nav-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;font-size:inherit}
  .primary-nav button.active{background:var(--brand-soft);box-shadow:none;color:var(--brand)}
}
@media (orientation:landscape) and (min-width:1000px){
  :root{--rail-width:96px}
  .main-column{padding-left:calc(var(--rail-width) + 18px)}
  .content-wrap{width:min(1120px,calc(100vw - var(--rail-width) - 56px))}
  .primary-nav{width:var(--rail-width);grid-template-rows:repeat(3,78px);gap:6px;padding:8px}
  .primary-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:7px;border-radius:16px;text-align:center}
  .primary-nav button>strong{font-size:10.5px}
  .primary-nav button>span.nav-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;font-size:inherit}
  .primary-nav button.active{background:var(--brand-soft);box-shadow:none;color:var(--brand)}
  .modal-sheet{width:min(780px,calc(100vw - var(--rail-width) - 56px))}
}
@media(max-width:620px){
  .daily-budget-list,.unbudgeted-expense-list{grid-template-columns:1fr}.planning-section-head{align-items:flex-start;flex-direction:column}.planning-section-head .compact-button{width:100%}.planning-block{padding:11px}
}

/* v0.5.3 · History, recurring engine, privacy & dedicated landscape */
.privacy-toggle{position:fixed;z-index:70;right:14px;top:14px;display:flex;align-items:center;gap:7px;min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface) 94%,transparent);color:var(--ink-2);box-shadow:0 8px 24px rgba(32,51,84,.08);backdrop-filter:blur(14px)}
.privacy-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.privacy-toggle span{font-size:10px;font-weight:750}.privacy-toggle[aria-pressed="true"]{background:var(--brand-soft);color:var(--brand)}
.nominal-hidden .balance-card .money-mask{color:transparent!important;position:relative;display:inline-block;min-width:4.5em;user-select:none}
.nominal-hidden .balance-card .money-mask::after{content:"Rp ••••••";position:absolute;inset:0;color:#fff!important;white-space:nowrap;text-align:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0;opacity:.9}
.nominal-hidden .balance-card .money-mask::after{color:#fff!important;opacity:.9}

.auto-pay-badge{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:0 9px;border-radius:10px;background:var(--green-soft);color:var(--green);font-size:9.5px;font-weight:800;white-space:nowrap}
.daily-budget-card>span em{font-size:10.5px;font-style:normal;color:var(--muted);font-weight:750}.daily-budget-card>span em.tone-danger{color:var(--red)}

/* History has its own information-dense workspace instead of a portrait list stretched wider. */
.modal-sheet--history{width:min(1120px,calc(100vw - 34px));max-height:min(88dvh,850px)}
.history-toolbar{position:sticky;top:-14px;z-index:3;display:grid;grid-template-columns:minmax(210px,1.8fr) repeat(4,minmax(125px,1fr)) auto;gap:9px;align-items:end;margin:-2px 0 13px;padding:12px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(14px)}
.history-toolbar label{display:grid;gap:5px;min-width:0}.history-toolbar label>span{font-size:9.5px;font-weight:750;color:var(--muted)}.history-toolbar input,.history-toolbar select{width:100%;min-width:0;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font-size:10.5px}.history-reset{min-height:40px;padding:0 12px}
.history-list{gap:8px}.history-row{grid-template-columns:38px minmax(0,1fr) minmax(110px,auto) auto;gap:11px;padding:11px 12px}.history-row .history-main{min-width:0}.history-row strong{font-size:11.5px}.history-row small{font-size:9.5px}.history-row>b{font-size:11px;text-align:right}.history-row .history-actions{grid-column:auto;display:flex;justify-content:flex-end;gap:6px}.history-actions button{min-height:32px;padding:0 9px}

/* A true landscape workspace: rail + independent content columns. */
.home-workspace{display:block}.home-primary,.home-secondary{min-width:0}
@media (orientation:landscape) and (min-width:760px){
  :root{--rail-width:156px}
  .main-column{padding-left:calc(var(--rail-width) + 28px);padding-bottom:22px}
  .content-wrap{width:min(1380px,calc(100vw - var(--rail-width) - 68px));padding:28px 30px 34px}
  .page-header{margin-bottom:20px}.page-header h1{font-size:clamp(32px,3.1vw,45px)}
  .primary-nav{left:14px;right:auto;top:50%;bottom:auto;transform:translateY(-50%);width:var(--rail-width);height:auto;grid-template-columns:1fr;grid-template-rows:repeat(3,58px);gap:7px;padding:8px;border-radius:22px}
  .primary-nav button{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:1fr;align-items:center;justify-items:start;gap:10px;padding:8px 11px;text-align:left;border-radius:14px}
  .primary-nav button>span.nav-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;margin:0}
  .primary-nav button>strong{font-size:11px;white-space:nowrap}.primary-nav button.active{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}
  .home-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.78fr);gap:22px;align-items:start}.home-primary,.home-secondary{display:grid;gap:0;align-content:start}.home-secondary{position:sticky;top:22px}
  .command-card{border-radius:26px}.balance-card{padding:21px}.quick-actions button{min-height:72px}.daily-budget-list,.unbudgeted-expense-list{grid-template-columns:1fr}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.focus-list{gap:9px}
  .analytics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-grid .insight-card--wide{grid-column:1/-1}.more-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .modal-sheet{left:calc(50% + var(--rail-width)/2);width:min(920px,calc(100vw - var(--rail-width) - 76px));max-height:88dvh}
  .modal-sheet--history{width:min(1180px,calc(100vw - var(--rail-width) - 62px))}
  .form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .privacy-toggle{right:18px;top:18px}
  .sync-chip{right:18px;left:auto;transform:none;top:62px;bottom:auto}
}
@media (orientation:landscape) and (min-width:1180px){
  :root{--rail-width:168px}
  .main-column{padding-left:calc(var(--rail-width) + 30px)}
  .content-wrap{width:min(1460px,calc(100vw - var(--rail-width) - 74px));padding-inline:34px}
  .home-workspace{grid-template-columns:minmax(0,1.72fr) minmax(340px,.72fr);gap:26px}
  .primary-nav{width:var(--rail-width)}
}
@media (orientation:landscape) and (min-width:760px) and (max-height:620px){
  .content-wrap{padding-top:18px}.page-header{margin-bottom:14px}.page-header h1{font-size:30px}.primary-nav{top:52%}.home-secondary{position:static}.balance-card{padding:16px}.quick-actions button{min-height:60px}
}
@media (max-width:980px){
  .history-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.history-search{grid-column:1/-1}.history-reset{width:100%}.history-row{grid-template-columns:36px minmax(0,1fr) auto}.history-row .history-actions{grid-column:2/-1}
}
@media (max-width:620px){
  .privacy-toggle{top:10px;right:10px;width:38px;padding:0;justify-content:center}.privacy-toggle span{display:none}
  .history-toolbar{position:static;grid-template-columns:1fr;margin-top:0}.history-search{grid-column:auto}.history-row{grid-template-columns:34px minmax(0,1fr) auto}.history-row .history-actions{grid-column:2/-1}
}
@media (orientation:landscape) and (min-width:1100px){
  .planning-block--list .manager-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.planning-block--list .planning-card+.planning-card{margin-top:0}
}
/* Keep privacy control away from sync/theme controls on portrait. */
.privacy-toggle{top:auto;bottom:calc(var(--nav-height) + 16px + env(safe-area-inset-bottom))}
@media (orientation:landscape) and (min-width:760px){.privacy-toggle{top:18px;bottom:auto}}
@media (max-width:620px){.privacy-toggle{top:auto;bottom:calc(var(--nav-height) + 14px + env(safe-area-inset-bottom))}}

/* v0.5.4 · Header controls, scoped privacy, compact portrait history */
.app-controls{
  position:fixed;
  z-index:78;
  top:max(10px,env(safe-area-inset-top));
  right:10px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  max-width:calc(100vw - 20px);
}
.app-controls .privacy-toggle,
.app-controls .sync-chip{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  margin:0;
}
.app-control-button{
  flex:0 0 auto;
  width:38px;
  height:38px;
  min-height:38px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid var(--line);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface) 94%,transparent);
  color:var(--ink-2);
  box-shadow:0 8px 24px rgba(32,51,84,.08);
  backdrop-filter:blur(14px);
}
.app-controls .privacy-toggle{display:flex;width:auto;padding:0 10px;gap:6px}
.app-controls .privacy-toggle span{font-size:10px;font-weight:750}
.app-controls .theme-toggle{font-size:18px;line-height:1}
.app-controls .sync-chip{
  flex:0 1 auto;
  min-height:38px;
  max-width:165px;
  padding:0 10px;
  opacity:.92;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.app-controls .sync-chip span{overflow:hidden;text-overflow:ellipsis}

/* Privacy is intentionally limited to the blue balance card only. */
@media (orientation:portrait){
  .content-wrap{padding-top:66px}
  .app-controls .privacy-toggle{width:38px;padding:0;justify-content:center}
  .app-controls .privacy-toggle span{display:none}
  .app-controls .sync-chip{max-width:142px}
}

@media (orientation:landscape) and (min-width:760px){
  .app-controls{top:16px;right:18px;gap:8px}
  .app-controls .privacy-toggle{min-width:92px}
  .app-controls .sync-chip{max-width:170px}
}

/* Portrait history: filters occupy a compact control band, not half the modal. */
@media (max-width:620px) and (orientation:portrait){
  .modal-sheet--history{max-height:93dvh}
  .modal-sheet--history .modal-head{padding:11px 12px}
  .modal-sheet--history .modal-body{padding:8px 9px calc(12px + env(safe-area-inset-bottom))}
  .history-toolbar{
    position:sticky;
    top:-8px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    margin:0 0 8px;
    padding:8px;
    border-radius:12px;
  }
  .history-toolbar label{gap:0}
  .history-toolbar label>span{display:none}
  .history-toolbar input,.history-toolbar select{
    min-height:34px;
    padding:5px 8px;
    border-radius:9px;
    font-size:9.5px;
  }
  .history-search{grid-column:1/-1!important}
  .history-reset{
    grid-column:1/-1;
    min-height:31px;
    padding:0 9px;
    font-size:9.5px;
  }
  .history-list{gap:6px}
  .history-row{grid-template-columns:31px minmax(0,1fr) auto;gap:7px;padding:8px 9px}
  .history-row strong{font-size:10.5px}
  .history-row small{font-size:8.5px}
  .history-row>b{font-size:9.8px}
  .history-row .history-actions{grid-column:2/-1;gap:5px}
  .history-actions button{min-height:29px;padding:0 8px;font-size:9px}
}

/* v0.5.5 · wallet readability, category icon library, drag ordering, budget dashboard */
.wallet-manager-row{padding:13px 12px;gap:11px}
.wallet-manager-icon{width:40px;height:40px;border-radius:13px;font-size:18px}
.wallet-manager-copy{gap:3px!important}
.wallet-manager-name{font-size:13.5px!important;line-height:1.2}
.wallet-manager-copy small{font-size:10px!important}
.wallet-manager-balance{display:block;margin-top:2px;font-size:15.5px;line-height:1.15;color:var(--ink);font-weight:820;letter-spacing:-.02em}

.manager-section-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:0 3px 8px}.manager-section-title h3{margin:0}.manager-section-title small{font-size:8.8px;color:var(--muted)}
.category-manager-row{grid-template-columns:28px 38px minmax(0,1fr) auto;gap:8px}
.category-drag-handle{width:28px;height:36px;padding:0;border:0;background:transparent;color:var(--muted);font-size:20px;font-weight:800;cursor:grab;touch-action:none;user-select:none}.category-drag-handle:active{cursor:grabbing}
.category-row--dragging{opacity:.82;transform:scale(.995);box-shadow:0 12px 30px rgba(32,51,84,.13);border-color:color-mix(in srgb,var(--brand) 35%,var(--line));z-index:3}
.category-manager-icon{width:36px;height:36px}.category-icon-svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.category-icon-picker{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:6px}.category-icon-choice{position:relative;display:grid;place-items:center;gap:4px;min-height:66px;padding:7px 4px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);cursor:pointer;text-align:center}.category-icon-choice input{position:absolute;opacity:0;pointer-events:none}.category-icon-choice span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--ink-2)}.category-icon-choice small{max-width:100%;font-size:7.8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-icon-choice:has(input:checked){border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:var(--brand-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 35%,transparent)}.category-icon-choice:has(input:checked) span{background:var(--brand);color:#fff}

.budget-rollover-note{padding:9px 11px!important;background:var(--brand-faint);border-color:color-mix(in srgb,var(--brand) 18%,var(--line))!important}.budget-rollover-note small{font-size:9.5px;line-height:1.45;color:var(--muted)}
.daily-budget-card--monthly{border-color:var(--line);background:var(--surface)}
.daily-budget-card>span em.tone-danger,.daily-budget-card .tone-danger{color:var(--red)!important}
.daily-recommendation small b{font-size:inherit}.daily-recommendation .tone-danger{color:var(--red)!important}

@media(max-width:620px){
  .wallet-manager-row{grid-template-columns:42px minmax(0,1fr)}
  .wallet-manager-row .row-actions{grid-column:2}
  .category-manager-row{grid-template-columns:26px 36px minmax(0,1fr)}
  .category-manager-row .row-actions{grid-column:3}
  .category-icon-picker{grid-template-columns:repeat(4,minmax(0,1fr))}
  .manager-section-title{align-items:start}.manager-section-title small{max-width:145px;text-align:right;line-height:1.25}
}
@media(orientation:landscape) and (min-width:760px){
  .wallet-manager-name{font-size:14.5px!important}.wallet-manager-balance{font-size:16.5px}
  .category-icon-picker{grid-template-columns:repeat(8,minmax(0,1fr))}
}
.category-manager-copy{display:grid;gap:2px;min-width:0}.category-manager-copy strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-manager-copy small{font-size:9.2px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* v0.5.6 · exposed lists, categorized icon library, full calendar date picker */
.manager-action-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px 13px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--brand-faint)}
.manager-action-head>div{display:grid;gap:2px;min-width:0}.manager-action-head strong{font-size:13px}.manager-action-head small{font-size:9.5px;line-height:1.35;color:var(--muted)}
.manager-action-head .compact-button{flex:0 0 auto;min-height:38px;white-space:nowrap}

.category-icon-picker-shell{display:grid;gap:8px;margin-top:6px}.category-icon-group-title{display:flex;align-items:end;justify-content:space-between;gap:10px}.category-icon-group-title strong{font-size:11px}.category-icon-group-title small{font-size:8.8px;color:var(--muted);text-align:right}
.category-icon-choice--more{display:none}.category-icon-picker-shell.is-expanded .category-icon-choice--more{display:grid}
.category-icon-more{justify-self:start;min-height:34px!important;padding-inline:11px!important;font-size:9.5px!important}

.calendar-field{display:grid!important;gap:6px!important}.avero-calendar{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:10px;overflow:hidden}
.calendar-toolbar{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:7px;margin-bottom:8px}.calendar-toolbar>div{display:grid;gap:1px;text-align:center}.calendar-toolbar strong{font-size:12px;text-transform:capitalize}.calendar-toolbar small{font-size:8.8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calendar-nav{width:38px;height:36px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--ink);font-size:22px;line-height:1}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays{margin-bottom:4px}.calendar-weekdays span{padding:3px 0;text-align:center;color:var(--muted);font-size:8.4px;font-weight:750}
.calendar-day,.calendar-empty{aspect-ratio:1.15/1;min-height:32px}.calendar-day{border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink-2);font-size:10px;font-weight:720}.calendar-day:hover{background:var(--surface-2)}.calendar-day.is-today{border-color:color-mix(in srgb,var(--brand) 38%,var(--line));color:var(--brand)}.calendar-day.is-selected{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--brand) 25%,transparent)}
.calendar-clear{margin-top:8px;min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:9px;font-weight:720}

@media(max-width:620px){
  .manager-action-head{align-items:flex-start;padding:10px 11px}.manager-action-head>div{gap:3px}.manager-action-head strong{font-size:12px}.manager-action-head small{font-size:8.8px;max-width:190px}.manager-action-head .compact-button{min-height:36px;padding-inline:10px;font-size:10px}
  .category-icon-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.category-icon-group-title{align-items:start}.category-icon-group-title small{max-width:145px;line-height:1.2}
  .avero-calendar{padding:8px}.calendar-toolbar{grid-template-columns:36px minmax(0,1fr) 36px;margin-bottom:6px}.calendar-nav{width:36px;height:34px}.calendar-toolbar strong{font-size:11.5px}.calendar-day,.calendar-empty{min-height:34px}.calendar-day{font-size:10.5px;border-radius:9px}
}
@media(orientation:landscape) and (min-width:760px){
  .calendar-field{max-width:560px}.avero-calendar{padding:12px}.calendar-day,.calendar-empty{min-height:36px}.category-icon-picker-shell.is-expanded .category-icon-picker{grid-template-columns:repeat(8,minmax(0,1fr))}
}
.calendar-field-label{font-size:10.5px;color:var(--muted);font-weight:700}

/* v0.5.7 · category icon propagation + compact transaction date picker */
.category-icon-more-panel[hidden],.avero-calendar[hidden]{display:none!important}
.category-icon-more-panel{padding-top:2px;border-top:1px solid var(--line)}
.category-icon-picker--featured{margin-bottom:1px}
.category-icon-more{display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1!important}

.transaction-category-field{margin:0;padding:0;border:0;min-width:0}.transaction-category-field legend{margin-bottom:6px;font-size:10.5px;color:var(--muted);font-weight:700}
.transaction-category-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:214px;overflow:auto;padding:1px 2px 3px;overscroll-behavior:contain}
.transaction-category-choice{position:relative;display:grid!important;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:7px;min-height:52px;padding:7px 8px!important;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}
.transaction-category-choice input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;opacity:0;pointer-events:none}
.transaction-category-icon,.planning-category-icon,.daily-budget-category-icon{display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:var(--brand-faint);color:var(--brand-2)}
.transaction-category-icon{width:32px;height:32px}.transaction-category-icon .category-icon-svg{width:18px;height:18px}
.transaction-category-choice strong{min-width:0;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.transaction-category-choice:has(input:checked){border-color:color-mix(in srgb,var(--brand) 58%,var(--line));background:var(--brand-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 24%,transparent)}
.transaction-category-choice:has(input:checked) .transaction-category-icon{background:var(--brand);color:#fff}

.daily-budget-category{display:flex!important;align-items:center;gap:9px;min-width:0}.daily-budget-category>div{display:grid;gap:3px;min-width:0}.daily-budget-category-icon{width:34px;height:34px}.daily-budget-category-icon .category-icon-svg{width:19px;height:19px}.daily-budget-card>span{flex:0 0 auto}
.planning-category-title{display:flex!important;align-items:center;gap:9px;min-width:0}.planning-category-title>div{display:grid;gap:2px;min-width:0}.planning-category-icon{width:34px;height:34px}.planning-category-icon .category-icon-svg{width:19px;height:19px}

.calendar-summary{width:100%;min-height:46px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left}
.calendar-summary-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--brand-faint);color:var(--brand-2);font-size:15px}.calendar-summary strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-summary-action{font-size:9px;font-weight:760;color:var(--brand-2);white-space:nowrap}.calendar-summary[aria-expanded="true"]{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-soft) 70%,transparent)}
.calendar-summary + .avero-calendar{margin-top:2px}

@media(max-width:620px){
  .transaction-category-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:190px}.transaction-category-choice{min-height:50px}.transaction-category-choice strong{font-size:10px}
  .daily-budget-category-icon{width:32px;height:32px}.daily-budget-category-icon .category-icon-svg{width:18px;height:18px}
  .calendar-summary{grid-template-columns:30px minmax(0,1fr) auto;min-height:44px;padding:6px 9px}.calendar-summary-icon{width:28px;height:28px}.calendar-summary strong{font-size:10.8px}.calendar-summary-action{font-size:8.5px}
}
@media(orientation:landscape) and (min-width:760px){.transaction-category-list{grid-template-columns:repeat(5,minmax(0,1fr));max-height:188px}}

/* v0.6.1 · Nota Kerja semantics aligned with KasKu */
.recurring-control{transition:opacity .16s ease,filter .16s ease}.recurring-control.is-disabled{opacity:.48}.recurring-control.is-disabled input{background:var(--surface-2);cursor:not-allowed}.recurrence-disabled-note{margin-top:-4px;padding:8px 10px;border:1px dashed var(--line);border-radius:11px;background:var(--surface-2);color:var(--muted);font-size:9px}.recurrence-disabled-note[hidden]{display:none!important}.plan-payment-defaults.is-required{padding:8px;border:1px solid color-mix(in srgb,var(--brand) 25%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--brand-faint) 60%,transparent)}
.work-notes-sheet{--modal-max:980px}.work-note-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.work-note-summary>div{grid-template-columns:minmax(0,1fr) auto;align-items:end}.work-note-summary small{grid-column:1/-1}.work-note-summary em{font-size:9.5px;font-style:normal;color:var(--muted);justify-self:end}.work-note-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,280px);gap:9px;align-items:end;margin-bottom:10px}.work-note-filters{display:flex;gap:5px;flex-wrap:wrap}.work-note-filter{min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:9.5px;font-weight:760}.work-note-filter.active{background:var(--brand);border-color:var(--brand);color:#fff}.work-note-search{display:grid;gap:4px}.work-note-search span{font-size:9px;color:var(--muted);font-weight:700}.work-note-search input{width:100%;min-height:36px;padding:7px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);outline:none;font-size:10.5px}.work-note-search input:focus{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-soft) 70%,transparent)}.work-note-card{gap:9px}.work-note-amount{font-size:17px;font-weight:820;letter-spacing:-.025em}.work-note-status--pending{color:var(--orange)!important}.work-note-status--paid{color:var(--green)!important}.work-note-status--cancelled{color:var(--muted)!important}.work-note-paid-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.work-note-paid-meta>span{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:8.8px}.work-note-category-chip .category-icon-svg{width:14px;height:14px}.archive-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;border-radius:9px;background:var(--green-soft);color:var(--green);font-size:9px;font-weight:780}.row-actions .primary-mini{background:var(--brand);border-color:var(--brand);color:#fff}.work-note-payment-warning{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:var(--brand-faint)}.work-note-payment-warning strong{font-size:10.5px}.work-note-payment-warning small{font-size:9px;color:var(--muted);line-height:1.4}
@media(max-width:620px){.work-note-toolbar{grid-template-columns:1fr}.work-note-search{order:-1}.work-note-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.work-note-filter{flex:0 0 auto}.work-note-summary{grid-template-columns:1fr 1fr}.work-note-amount{font-size:16px}.recurrence-disabled-note{font-size:8.7px}}

.work-note-balance-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.work-note-balance-preview span{font-size:9.5px;color:var(--muted);font-weight:700}.work-note-balance-preview strong{font-size:12px;color:var(--ink)}.work-note-hold-warning{display:grid;gap:3px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--orange) 25%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--orange) 7%,var(--surface))}.work-note-hold-warning strong{font-size:10.5px}.work-note-hold-warning small{font-size:9px;color:var(--muted);line-height:1.45}

/* Avero v0.7.0 · Phase 8 Analytics / Forecast / Financial Score */
.category-manager-row--system{background:linear-gradient(145deg,var(--surface),var(--brand-faint));border-color:color-mix(in srgb,var(--brand) 18%,var(--line))}.system-category-badge{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:10px;font-weight:800;letter-spacing:.03em}
.analytics-overview{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:16px}.financial-score-card,.analytics-panel{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow)}.financial-score-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;background:linear-gradient(145deg,var(--surface),var(--brand-faint))}.score-copy{display:grid;gap:4px;min-width:0}.score-copy>small,.forecast-hero>small,.forecast-grid small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.score-copy>strong{font-size:38px;line-height:1;font-variant-numeric:tabular-nums}.score-copy>span{font-size:13px;font-weight:800;color:var(--brand)}.score-copy>em{font-style:normal;font-size:10px;line-height:1.45;color:var(--muted);max-width:280px}.score-ring{position:relative;flex:0 0 92px;width:92px;height:92px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--brand) 0 0%,var(--surface-3) 0 100%)}.score-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--surface)}.score-ring b,.score-ring small{position:relative;z-index:1}.score-ring b{font-size:22px}.score-ring small{font-size:8px;color:var(--muted)}.financial-score-card[data-score-tone="good"] .score-copy>span{color:var(--green)}.financial-score-card[data-score-tone="risk"] .score-copy>span{color:var(--red)}
.analytics-hero{margin:0;min-height:130px}.cashflow-mini{display:grid!important;gap:8px!important;min-width:126px}.cashflow-mini>div{display:grid;gap:2px;padding:8px 10px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.cashflow-mini small{font-size:8px!important}.cashflow-mini b{font-size:12px}
.analytics-phase8-grid{display:grid;grid-template-columns:1fr;gap:12px}.analytics-panel{padding:16px}.analytics-panel .section-title{margin:0 0 14px}.analytics-panel .section-title>b{font-size:13px;color:var(--brand)}
.analytics-trend-chart{height:190px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:8px;padding:12px 2px 0;border-bottom:1px solid var(--line);overflow-x:auto}.trend-month{height:100%;min-width:0;display:grid;grid-template-rows:1fr auto auto;gap:5px;align-items:end;text-align:center}.trend-bars{height:100%;display:flex;align-items:end;justify-content:center;gap:3px}.trend-bar{display:block;width:min(15px,40%);min-height:2px;border-radius:6px 6px 2px 2px}.trend-bar--income{background:var(--green)}.trend-bar--expense{background:var(--red)}.trend-month>small{font-size:9px;color:var(--muted);text-transform:uppercase}.trend-month>span{font-size:8px;color:var(--green);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trend-month>span.negative{color:var(--red)}.analytics-legend{display:flex;gap:14px;margin-top:10px;color:var(--muted);font-size:9px}.analytics-legend span{display:flex;align-items:center;gap:5px}.analytics-legend i{width:8px;height:8px;border-radius:50%}.legend-income{background:var(--green)}.legend-expense{background:var(--red)}
.analytics-category-list{display:grid;gap:8px}.analytics-category-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.analytics-category-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.analytics-category-icon svg{width:20px;height:20px}.analytics-category-row>div{min-width:0;display:grid;gap:4px}.analytics-category-row strong{font-size:11px}.analytics-category-row small{font-size:8px;color:var(--muted)}.analytics-category-row>b{font-size:10px;white-space:nowrap}.analytics-category-progress{height:5px;border-radius:999px;background:var(--surface-3);overflow:hidden}.analytics-category-progress i{display:block;height:100%;border-radius:inherit;background:var(--brand)}.compact-empty{padding:20px 10px}
.forecast-hero{display:grid;gap:4px;padding:14px;border-radius:16px;background:linear-gradient(145deg,var(--brand-faint),var(--surface-2));border:1px solid var(--line);margin-bottom:10px}.forecast-hero>strong{font-size:24px}.forecast-hero>span{font-size:9px;color:var(--muted)}.forecast-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.forecast-grid>div{display:grid;gap:3px;padding:10px;border-radius:13px;border:1px solid var(--line);background:var(--surface-2)}.forecast-grid strong{font-size:12px}.forecast-warning{display:flex;justify-content:space-between;gap:10px;margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--red-soft);color:var(--red);font-size:9px}.forecast-warning[data-tone="watch"]{background:var(--brand-soft);color:var(--brand)}.forecast-warning strong{font-size:10px}
.score-breakdown{display:grid;gap:9px}.score-breakdown-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.score-breakdown-row:last-child{border-bottom:0}.score-breakdown-row>div{display:grid;gap:4px}.score-breakdown-row strong{font-size:11px}.score-breakdown-row small{font-size:8px;color:var(--muted);line-height:1.4}.score-breakdown-row>b{font-size:16px;color:var(--brand)}.score-breakdown-row>b small{font-size:8px}.score-progress{height:5px;border-radius:999px;background:var(--surface-3);overflow:hidden}.score-progress i{display:block;height:100%;border-radius:inherit;background:var(--brand)}.analytics-grid--footer{margin-top:12px}
@media(min-width:700px){.analytics-overview{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.analytics-phase8-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-panel--trend,.analytics-panel--forecast{grid-column:1/-1}.analytics-category-row{grid-template-columns:40px minmax(0,1fr) auto}.forecast-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(orientation:landscape) and (min-width:760px){.analytics-phase8-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.analytics-panel--trend{grid-column:1/-1}.analytics-panel--forecast{grid-column:auto}.analytics-panel--score{grid-column:auto}.analytics-trend-chart{height:220px}.financial-score-card{min-height:150px}.analytics-hero{min-height:150px}}
.managed-entry-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:8px;font-weight:800;white-space:nowrap}

/* Phase 9 · Backup & Restore */
.modal-sheet--backup{max-width:760px}
.backup-hero{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--surface-2)}
.backup-hero p{margin:5px 0 0;color:var(--muted);line-height:1.5}
.backup-shield{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:15px;background:var(--surface-3);font-size:24px;font-weight:800}
.backup-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.backup-action-card,.backup-restore-card{display:flex;width:100%;gap:12px;text-align:left;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);cursor:pointer}
.backup-action-card:hover,.backup-restore-card:hover{border-color:var(--brand)}
.backup-action-card>b{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:var(--surface-3);font-size:20px}
.backup-action-card span,.backup-restore-card{min-width:0}
.backup-action-card strong,.backup-restore-card strong{display:block;font-size:15px}
.backup-action-card small,.backup-restore-card small{display:block;margin-top:4px;color:var(--muted);line-height:1.4}
.backup-note,.backup-rules{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:16px}
.backup-note{display:flex;justify-content:space-between;gap:18px;align-items:center}
.backup-note span,.backup-rules li{color:var(--muted);font-size:13px}
.backup-rules ul{margin:8px 0 0;padding-left:20px}
.backup-rules li+li{margin-top:5px}
.backup-file-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
.backup-file-row span,.backup-file-row small{color:var(--muted);font-size:12px}.backup-file-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.backup-verified{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}
.backup-verified>b{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface-3)}
.backup-verified strong,.backup-verified small{display:block}.backup-verified small{margin-top:3px;color:var(--muted)}
.backup-counts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.backup-count-row{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:11px 12px;border:1px solid var(--line);border-radius:13px}
.backup-count-row span{font-size:13px}.backup-count-row b{font-size:15px}.backup-count-row small{grid-column:1/-1;color:var(--muted);font-size:11px}
.backup-summary{display:flex;gap:10px;margin-top:10px}.backup-summary span{flex:1;padding:10px 12px;border-radius:12px;background:var(--surface-2);font-size:12px;color:var(--muted)}.backup-summary b{color:var(--text)}
.backup-restore-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.backup-restore-card{display:block}.backup-restore-card.is-disabled,.backup-restore-card:disabled{opacity:.5;cursor:not-allowed}.backup-restore-card:disabled:hover{border-color:var(--line)}
@media(max-width:620px){.backup-action-grid,.backup-restore-options{grid-template-columns:1fr}.backup-counts{grid-template-columns:1fr}.backup-note{align-items:flex-start;flex-direction:column;gap:4px}.modal-sheet--backup .modal-body{padding-bottom:calc(18px + env(safe-area-inset-bottom))}}

/* Phase 11 · release polish and keyboard accessibility */
button:focus-visible,[role="button"]:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 58%,transparent);outline-offset:2px}
.sync-chip{font:inherit}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Phase 12 · v1.0.0 release-candidate settings */
.modal-sheet--settings{max-width:800px}
.settings-stack{display:grid;gap:12px}
.settings-card{padding:15px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.settings-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.settings-card-head>div{display:grid;gap:3px}.settings-card-head strong{font-size:12.5px}.settings-card-head small{font-size:9.5px;color:var(--muted);line-height:1.45}
.settings-card-head--split{align-items:center}
.settings-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.settings-choice{display:grid;gap:3px;min-height:62px;padding:10px 11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--ink);text-align:left}
.settings-choice strong{font-size:10.5px}.settings-choice small{font-size:8.8px;color:var(--muted);line-height:1.35}.settings-choice.active{border-color:color-mix(in srgb,var(--brand) 65%,var(--line));background:var(--brand-soft);color:var(--brand)}
.settings-toggle-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--ink);text-align:left}
.settings-toggle-row>span{display:grid;gap:3px}.settings-toggle-row strong{font-size:10.5px}.settings-toggle-row small{font-size:8.8px;color:var(--muted);line-height:1.4}
.settings-switch{position:relative;width:42px;height:24px;border-radius:999px;background:var(--surface-3);transition:.16s ease}.settings-switch i{position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:.16s ease}.settings-switch.active{background:var(--brand)}.settings-switch.active i{left:21px;background:#fff}
.settings-grid-two,.settings-about{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.settings-info-block,.settings-about>div{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);min-width:0}
.settings-info-block small,.settings-about small,.settings-sync-grid small{font-size:8.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.settings-info-block strong,.settings-about strong{font-size:11px;overflow:hidden;text-overflow:ellipsis}.settings-info-block span,.settings-about span{font-size:9px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}
.settings-inline-action{justify-self:start;padding:0;border:0;background:transparent;color:var(--brand);font-size:9px;font-weight:760}
.settings-status{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:999px;background:var(--orange-soft);color:var(--orange);font-size:8.8px;font-weight:780;white-space:nowrap}.settings-status.ok{background:var(--green-soft);color:var(--green)}.settings-status.bad{background:var(--red-soft);color:var(--red)}
.settings-sync-grid{display:grid;grid-template-columns:.7fr 1.5fr .8fr;gap:8px}.settings-sync-grid>div{display:grid;gap:4px;padding:10px 11px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.settings-sync-grid strong{font-size:10.5px;line-height:1.3}
.settings-full-button{width:100%;margin-top:10px}
.settings-recovery{margin-top:9px;border-top:1px solid var(--line);padding-top:9px}.settings-recovery summary{cursor:pointer;color:var(--brand);font-size:9.5px;font-weight:760;list-style:none}.settings-recovery summary::-webkit-details-marker{display:none}.settings-recovery>div{display:grid;gap:8px;margin-top:8px;padding:10px 11px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.settings-recovery small{font-size:8.8px;color:var(--muted);line-height:1.45}.settings-recovery button{justify-self:start}
.settings-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:14px}.settings-danger-zone>div{display:grid;gap:3px}.settings-danger-zone strong{font-size:11px}.settings-danger-zone small{font-size:9px;color:var(--muted);line-height:1.4}.settings-danger-zone button{flex:0 0 auto}
@media(max-width:620px){.settings-choice-grid,.settings-grid-two,.settings-about,.settings-sync-grid{grid-template-columns:1fr}.settings-danger-zone{align-items:flex-start;flex-direction:column}.settings-danger-zone button{width:100%}.settings-card-head--split{align-items:flex-start;flex-direction:column}}

/* Phase 14 · v1.1.0 Analytics Foundation & Accuracy */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.analytics-page-header{margin-bottom:12px}
.analytics-toolbar{display:grid;grid-template-columns:minmax(145px,190px) minmax(0,1fr);gap:10px;align-items:end;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.analytics-toolbar label{display:grid;gap:4px}.analytics-toolbar label>span{font-size:8.5px;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.06em}.analytics-toolbar select,.analytics-toolbar input{min-height:36px;width:100%;padding:7px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:10px;outline:none}.analytics-toolbar select:focus,.analytics-toolbar input:focus{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-soft) 70%,transparent)}
.analytics-custom-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.analytics-period-copy{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}.analytics-period-copy strong{font-size:10px}.analytics-period-copy small{font-size:8.5px;color:var(--muted);text-align:right}
.cashflow-mini>button{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);text-align:left;font:inherit}.cashflow-mini>button:hover,.analytics-kpi:hover,.analytics-category-button:hover,.analytics-wallet-row:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:color-mix(in srgb,var(--brand-faint) 55%,var(--surface-2))}.cashflow-mini>button span{font-size:8px!important;color:var(--muted)}
.analytics-delta,.analytics-kpi span{font-size:8.5px!important;font-weight:720}.delta--good{color:var(--green)!important}.delta--bad{color:var(--red)!important}.delta--neutral{color:var(--muted)!important}
.analytics-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.analytics-kpi{display:grid;gap:4px;min-height:78px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);text-align:left;font:inherit;box-shadow:var(--shadow)}.analytics-kpi small{font-size:8.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.analytics-kpi strong{font-size:14px}.analytics-kpi span{align-self:end}
.analytics-phase14-grid{display:grid;grid-template-columns:1fr;gap:12px}.trend-bar--fee{background:var(--brand)}.legend-fee{background:var(--brand)}
.analytics-category-button{width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer}.analytics-category-button>b{text-align:right}.analytics-category-button:disabled{cursor:default}
.analytics-personal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.analytics-personal-grid>div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.analytics-personal-grid small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.analytics-personal-grid strong{font-size:12px}.analytics-explain{margin:10px 0 0;font-size:8.8px;line-height:1.5;color:var(--muted)}
.analytics-inline-select select{min-height:32px;max-width:170px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:9px}
.analytics-category-trend-chart{height:170px;display:grid;align-items:end;gap:7px;padding:10px 2px 0;border-bottom:1px solid var(--line);overflow-x:auto}.category-trend-point{height:100%;min-width:0;display:grid;grid-template-rows:1fr auto auto;gap:4px;align-items:end;text-align:center}.category-trend-point>div{height:100%;display:flex;align-items:end;justify-content:center}.category-trend-point i{display:block;width:min(24px,65%);min-height:2px;border-radius:7px 7px 2px 2px;background:var(--brand)}.category-trend-point small{font-size:8px;color:var(--muted);text-transform:uppercase}.category-trend-point span{font-size:7.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analytics-wallet-list{display:grid;gap:8px}.analytics-wallet-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--ink);text-align:left;font:inherit}.analytics-wallet-row>div{display:grid;gap:3px;min-width:0}.analytics-wallet-row strong{font-size:10.5px}.analytics-wallet-row small{font-size:8.2px;color:var(--muted);line-height:1.4}.analytics-wallet-row>b{font-size:10px;white-space:nowrap;color:var(--green)}.analytics-wallet-row>b.negative{color:var(--red)}
.analytics-drill-period{margin-bottom:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:9px;color:var(--muted)}.analytics-drill-row{grid-template-columns:34px minmax(0,1fr) auto}.analytics-drill-row .history-main{min-width:0}
@media (orientation:landscape) and (min-width:700px){.analytics-toolbar{grid-template-columns:190px minmax(280px,1fr) auto}.analytics-period-copy{grid-column:auto;display:grid;justify-content:end}.analytics-period-copy small{text-align:right}.analytics-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-phase14-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-panel--trend,.analytics-panel--forecast{grid-column:1/-1}.analytics-panel--wallets{grid-column:1/-1}.analytics-personal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(orientation:landscape) and (min-width:760px){.analytics-phase14-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.analytics-panel--trend,.analytics-panel--wallets{grid-column:1/-1}.analytics-trend-chart{height:220px}.analytics-category-trend-chart{height:200px}}
@media(max-width:520px){.analytics-toolbar{grid-template-columns:1fr}.analytics-custom-range{grid-template-columns:1fr 1fr}.analytics-period-copy{grid-column:1;align-items:flex-start;flex-direction:column}.analytics-period-copy small{text-align:left}.analytics-personal-grid{grid-template-columns:1fr 1fr}.analytics-inline-select select{max-width:130px}.analytics-trend-chart,.analytics-category-trend-chart{overflow-x:auto}.trend-month,.category-trend-point{min-width:42px}}

/* Phase 15 — Financial Diagnosis */
.analytics-diagnosis-list{display:grid;gap:8px}.diagnosis-insight{display:grid;grid-template-columns:8px minmax(0,1fr);gap:10px;align-items:start;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.diagnosis-insight>i{width:8px;height:8px;margin-top:3px;border-radius:50%;background:var(--muted)}.diagnosis-insight>div{display:grid;gap:3px}.diagnosis-insight strong{font-size:10.5px}.diagnosis-insight small{font-size:8.4px;line-height:1.45;color:var(--muted)}.diagnosis-insight--good>i{background:var(--green)}.diagnosis-insight--watch>i{background:var(--brand)}.diagnosis-insight--risk>i{background:var(--red)}
.diagnosis-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.diagnosis-summary-grid>div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.diagnosis-summary-grid small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.diagnosis-summary-grid strong{font-size:12px}.diagnosis-summary-grid span{font-size:8px;color:var(--muted)}
.diagnosis-budget-list{display:grid;gap:8px;margin-top:10px}.diagnosis-budget-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.diagnosis-budget-row>div{display:grid;gap:4px}.diagnosis-budget-row strong{font-size:10.5px}.diagnosis-budget-row small{font-size:8px;color:var(--muted);line-height:1.35}.diagnosis-budget-row>span{display:grid;gap:2px;text-align:right}.diagnosis-budget-row>span>b{font-size:10px}.diagnosis-progress{position:relative;height:5px;border-radius:999px;background:var(--surface-3);overflow:visible}.diagnosis-progress>i{display:block;height:100%;border-radius:inherit;background:var(--brand)}.diagnosis-progress>b{position:absolute;top:-2px;width:1px;height:9px;background:var(--muted)}.diagnosis-budget-row--good .diagnosis-progress>i{background:var(--green)}.diagnosis-budget-row--risk .diagnosis-progress>i{background:var(--red)}
.diagnosis-stability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.diagnosis-stability-grid>article{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.diagnosis-stability-grid small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.diagnosis-stability-grid strong{font-size:12px}.diagnosis-stability-grid span{font-size:8px;line-height:1.35;color:var(--muted)}
.diagnosis-movers-grid{display:grid;grid-template-columns:1fr;gap:10px}.diagnosis-column-title{display:block;margin:0 0 5px;font-size:8px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.diagnosis-mover{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--line)}.diagnosis-mover:last-child{border-bottom:0}.diagnosis-mover>div{display:grid;gap:2px}.diagnosis-mover strong{font-size:10px}.diagnosis-mover small{font-size:8px;color:var(--muted)}.diagnosis-mover>b{font-size:9.5px}.diagnosis-mover--up>b{color:var(--red)}.diagnosis-mover--down>b{color:var(--green)}
.diagnosis-savings-chart{height:180px;display:grid;align-items:end;gap:7px;padding:10px 2px 0;border-bottom:1px solid var(--line)}.diagnosis-savings-point{height:100%;min-width:0;display:grid;grid-template-rows:1fr auto auto;gap:4px;align-items:end;text-align:center}.diagnosis-savings-axis{height:100%;display:flex;align-items:end;justify-content:center}.diagnosis-savings-axis i{display:block;width:min(24px,65%);min-height:2px;border-radius:7px 7px 2px 2px;background:var(--green)}.diagnosis-savings-axis i.negative{background:var(--red)}.diagnosis-savings-point small{font-size:8px;color:var(--muted);text-transform:uppercase}.diagnosis-savings-point span{font-size:8px;color:var(--green)}.diagnosis-savings-point span.negative{color:var(--red)}
.diagnosis-goal-list{display:grid;gap:8px}.diagnosis-goal-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.diagnosis-goal-row>div{display:grid;gap:4px}.diagnosis-goal-row strong{font-size:10.5px}.diagnosis-goal-row small,.diagnosis-goal-row em{font-size:8px;line-height:1.4;color:var(--muted);font-style:normal}.diagnosis-goal-row>span{display:grid;gap:3px;text-align:right}.diagnosis-goal-row>span>b{font-size:13px}.diagnosis-goal-row--good .diagnosis-progress>i{background:var(--green)}.diagnosis-goal-row--watch .diagnosis-progress>i{background:var(--brand)}.diagnosis-worknote-paid{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:9px 10px;border-top:1px solid var(--line)}.diagnosis-worknote-paid small{font-size:8px;color:var(--muted)}.diagnosis-worknote-paid strong{font-size:10.5px}
@media(min-width:700px){.analytics-panel--diagnosis,.analytics-panel--budget-diagnosis,.analytics-panel--savings-trend{grid-column:1/-1}.diagnosis-summary-grid,.diagnosis-stability-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.diagnosis-movers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diagnosis-goal-row{grid-template-columns:minmax(0,1fr) 180px}}
@media(max-width:520px){.diagnosis-budget-row,.diagnosis-goal-row{grid-template-columns:1fr}.diagnosis-budget-row>span,.diagnosis-goal-row>span{text-align:left}.diagnosis-savings-chart{overflow-x:auto}.diagnosis-savings-point{min-width:42px}}


/* Phase 16 — grouped analytics + Financial Health decision support */
.analytics-hero--standalone{margin-bottom:12px}.health-overview{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:12px}.health-safe-card{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-xl);background:linear-gradient(145deg,var(--surface),var(--brand-faint));box-shadow:var(--shadow)}.health-safe-card>div:first-child{display:grid;gap:4px}.health-safe-card small,.health-risk-card small,.health-horizon-card small,.health-score-meta small{font-size:8.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.health-safe-card>div:first-child>strong{font-size:27px;letter-spacing:-.03em}.health-safe-card>div:first-child>span{font-size:9px;line-height:1.45;color:var(--muted)}.health-safe-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.health-safe-meta>span{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.health-safe-meta b{font-size:10px}.health-safe-card[data-health-tone="good"]>div:first-child>strong{color:var(--green)}.health-safe-card[data-health-tone="risk"]>div:first-child>strong{color:var(--red)}
.health-actions-panel,.health-horizon-panel{margin-bottom:12px}.health-action-list{display:grid;gap:8px}.health-action{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.health-action>i{display:grid;place-items:center;width:24px;height:24px;border-radius:9px;background:var(--surface-3);font-size:9px;font-style:normal;font-weight:850;color:var(--muted)}.health-action>div{display:grid;gap:3px}.health-action strong{font-size:10.5px}.health-action small{font-size:8.4px;line-height:1.45;color:var(--muted)}.health-action--good>i{background:var(--green-soft);color:var(--green)}.health-action--watch>i{background:var(--brand-soft);color:var(--brand)}.health-action--risk>i{background:var(--red-soft);color:var(--red)}
.health-risk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}.health-risk-card{display:grid;gap:4px;min-height:88px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.health-risk-card strong{font-size:12px}.health-risk-card span{font-size:8.2px;line-height:1.4;color:var(--muted)}.health-risk-card[data-health-tone="good"] strong{color:var(--green)}.health-risk-card[data-health-tone="watch"] strong{color:var(--brand)}.health-risk-card[data-health-tone="risk"] strong{color:var(--red)}
.health-horizon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.health-horizon-card{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.health-horizon-card strong{font-size:12px}.health-horizon-card span{font-size:8px;line-height:1.35;color:var(--muted)}.health-horizon-card[data-health-tone="good"] strong{color:var(--green)}.health-horizon-card[data-health-tone="watch"] strong{color:var(--brand)}.health-horizon-card[data-health-tone="risk"] strong{color:var(--red)}
.health-diagnosis-grid{margin-top:0}.health-score-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.health-score-meta>span{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.health-score-meta strong{font-size:10.5px}.health-score-reasons{display:grid;gap:6px;margin-top:10px}.health-score-reasons p{margin:0;padding:8px 10px;border-left:3px solid var(--brand);border-radius:0 9px 9px 0;background:var(--surface-2);font-size:8.4px;line-height:1.45;color:var(--muted)}
@media(min-width:700px){.health-overview{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.health-risk-grid,.health-horizon-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.health-diagnosis-grid .analytics-panel--diagnosis,.health-diagnosis-grid .analytics-panel--budget-diagnosis,.health-diagnosis-grid .analytics-panel--savings-trend{grid-column:1/-1}}
@media(max-width:520px){.primary-nav button>strong{font-size:9px}.health-risk-grid,.health-horizon-grid{grid-template-columns:1fr 1fr}.health-safe-meta{grid-template-columns:1fr 1fr}}

/* Phase 17 — analytics hardening & calibration */
.health-quality-card{display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,1fr);gap:14px;align-items:center;margin:0 0 12px;padding:11px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.health-quality-card>div{display:grid;gap:3px}.health-quality-card small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.health-quality-card strong{font-size:11px}.health-quality-card>span{font-size:8.5px;line-height:1.5;color:var(--muted)}.health-quality-card[data-health-tone="good"] strong{color:var(--green)}.health-quality-card[data-health-tone="watch"] strong{color:var(--brand)}.health-method{margin-top:10px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.health-method summary{cursor:pointer;font-size:9px;font-weight:800}.health-method p{margin:7px 0 0;font-size:8.4px;line-height:1.55;color:var(--muted)}
@media(max-width:520px){.health-quality-card{grid-template-columns:1fr;gap:6px}}

/* Phase 18 — local financial alerts */
.more-count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;margin-left:7px;padding:0 5px;border-radius:999px;background:var(--danger,#d94b4b);color:#fff;font-size:8px;font-style:normal;vertical-align:1px}.more-count[hidden]{display:none!important}
.modal-sheet--alerts{max-width:720px}.alerts-stack{display:grid;gap:12px}.alert-status-card{display:grid;gap:10px}.alert-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.alert-summary-grid>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.alert-summary-grid small{font-size:7.8px;color:var(--muted)}.alert-summary-grid strong{font-size:10px}.alert-disclaimer{margin:0;font-size:8.2px;line-height:1.55;color:var(--muted)}.alert-actions{display:flex;gap:8px;flex-wrap:wrap}.alert-toggle-list{display:grid;gap:7px}.alert-toggle-row{width:100%}.alert-list{display:grid;gap:8px}.alert-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.alert-card>div{display:grid;gap:3px;min-width:0}.alert-card span{width:max-content;padding:2px 6px;border-radius:999px;font-size:6.8px;font-weight:900;letter-spacing:.08em}.alert-card strong{font-size:9.5px}.alert-card p{margin:0;font-size:8.2px;line-height:1.45;color:var(--muted)}.alert-card--risk{border-color:color-mix(in srgb,var(--danger,#d94b4b) 35%,var(--line))}.alert-card--risk span{background:color-mix(in srgb,var(--danger,#d94b4b) 15%,transparent);color:var(--danger,#c83f3f)}.alert-card--watch span{background:color-mix(in srgb,var(--brand) 13%,transparent);color:var(--brand)}
@media(max-width:520px){.alert-summary-grid{grid-template-columns:1fr}.alert-card{grid-template-columns:1fr}.alert-card .settings-inline-action{width:max-content}}

/* Phase 19 — Financial Calendar */
.modal-sheet--calendar{width:min(980px,calc(100vw - 24px));max-height:min(92dvh,900px)}
.finance-calendar-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:12px}
.finance-calendar-overview,.finance-calendar-agenda{display:grid;align-content:start;gap:10px;padding:13px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.finance-calendar-toolbar{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:8px}
.finance-calendar-toolbar>button{width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--ink);font-size:22px}
.finance-calendar-toolbar>div{display:grid;gap:2px;text-align:center}.finance-calendar-toolbar strong{font-size:14px}.finance-calendar-toolbar small{font-size:8.5px;color:var(--muted)}
.finance-calendar-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.finance-calendar-filters{display:flex;gap:5px;flex-wrap:wrap}
.finance-calendar-filter{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:8px;font-weight:800}.finance-calendar-filter.active{border-color:color-mix(in srgb,var(--brand) 38%,var(--line));background:var(--brand-soft);color:var(--brand)}
.finance-calendar-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.finance-calendar-summary>div{display:grid;gap:3px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.finance-calendar-summary small{font-size:7.2px;color:var(--muted)}.finance-calendar-summary strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.finance-calendar-weekdays,.finance-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.finance-calendar-weekdays span{text-align:center;font-size:7px;font-weight:800;color:var(--muted);padding:2px 0}
.finance-calendar-day{position:relative;min-height:58px;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left}.finance-calendar-day>span{font-size:9px;font-weight:800}.finance-calendar-day>em{position:absolute;left:6px;right:6px;bottom:7px;display:flex;gap:3px;align-items:center;min-height:5px;font-style:normal}.finance-calendar-day>small{position:absolute;right:5px;bottom:4px;font-size:6.5px;color:var(--muted)}.finance-calendar-day.is-outside{opacity:.42;background:var(--surface-2)}.finance-calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--brand)}.finance-calendar-day.is-selected{border-color:var(--brand);background:var(--brand-faint);box-shadow:inset 0 0 0 1px var(--brand)}
.finance-calendar-dot{width:5px;height:5px;border-radius:50%;background:var(--muted)}.finance-calendar-dot--income{background:var(--green)}.finance-calendar-dot--expense{background:var(--red)}.finance-calendar-dot--transfer{background:var(--brand)}.finance-calendar-dot--planned{background:#8d68dc}.finance-calendar-dot--debt{background:var(--red)}.finance-calendar-dot--receivable{background:var(--green)}.finance-calendar-dot--goal{background:#d89b2d}.finance-calendar-dot--work-note{background:#348fc4}.finance-calendar-dot.is-risk{box-shadow:0 0 0 2px color-mix(in srgb,var(--red) 25%,transparent)}.finance-calendar-dot.is-watch{box-shadow:0 0 0 2px color-mix(in srgb,#d89b2d 25%,transparent)}
.finance-calendar-caption{display:flex;gap:6px;flex-wrap:wrap}.finance-calendar-caption span{padding:3px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:7px}
.finance-calendar-agenda__head>div{display:grid;gap:2px}.finance-calendar-agenda__head strong{font-size:11.5px}.finance-calendar-agenda__head small{font-size:8px;color:var(--muted)}.finance-calendar-events{display:grid;gap:7px}
.finance-calendar-event{display:grid;grid-template-columns:6px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.finance-calendar-event__mark{width:6px;height:100%;min-height:38px;border-radius:999px;background:var(--muted)}.finance-calendar-event--income .finance-calendar-event__mark{background:var(--green)}.finance-calendar-event--expense .finance-calendar-event__mark{background:var(--red)}.finance-calendar-event--transfer .finance-calendar-event__mark{background:var(--brand)}.finance-calendar-event--planned .finance-calendar-event__mark{background:#8d68dc}.finance-calendar-event--debt .finance-calendar-event__mark{background:var(--red)}.finance-calendar-event--receivable .finance-calendar-event__mark{background:var(--green)}.finance-calendar-event--goal .finance-calendar-event__mark{background:#d89b2d}.finance-calendar-event--work-note .finance-calendar-event__mark{background:#348fc4}.finance-calendar-event--risk{border-color:color-mix(in srgb,var(--red) 35%,var(--line))}.finance-calendar-event--watch{border-color:color-mix(in srgb,#d89b2d 38%,var(--line))}.finance-calendar-event--muted{opacity:.58}
.finance-calendar-event__copy{display:grid;gap:2px;min-width:0}.finance-calendar-event__copy>span{font-size:6.5px;font-weight:900;letter-spacing:.07em;color:var(--muted)}.finance-calendar-event__copy strong{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-calendar-event__copy small{font-size:7.5px;line-height:1.4;color:var(--muted)}.finance-calendar-event__side{display:grid;gap:5px;justify-items:end}.finance-calendar-event__side>b{font-size:8.5px;white-space:nowrap}.finance-calendar-event__side>button{min-height:27px;padding:0 7px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink-2);font-size:7.5px;font-weight:800}
@media(max-width:760px){.modal-sheet--calendar{width:100%;max-height:92dvh}.finance-calendar-shell{grid-template-columns:1fr}.finance-calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-calendar-day{min-height:49px;padding:5px}.finance-calendar-event{grid-template-columns:5px minmax(0,1fr) auto}.finance-calendar-agenda{margin-bottom:4px}}
@media(max-width:390px){.finance-calendar-overview,.finance-calendar-agenda{padding:10px}.finance-calendar-grid,.finance-calendar-weekdays{gap:3px}.finance-calendar-day{min-height:45px}.finance-calendar-summary strong{font-size:8.3px}.finance-calendar-actions{align-items:flex-start;flex-direction:column}}

/* Phase 20 — Export & Reporting */
.reporting-hero{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),var(--surface))}.reporting-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--accent);color:white;font-size:22px;font-weight:800;flex:0 0 auto}.reporting-hero strong{display:block;font-size:16px}.reporting-hero p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.reporting-warning,.report-preview-note{display:grid;gap:4px;margin-top:12px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,#f4a900 10%,var(--surface));border:1px solid color-mix(in srgb,#f4a900 28%,var(--line));font-size:12px}.reporting-warning span,.report-preview-note span{color:var(--muted);line-height:1.5}.reporting-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.reporting-section-title{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:10px}.reporting-section-title div{display:grid;gap:2px}.reporting-section-title small{font-size:10px;letter-spacing:.08em;color:var(--muted);font-weight:800}.reporting-section-title strong{font-size:16px}.reporting-section-title>span{font-size:11px;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);padding:5px 8px;border-radius:999px}.reporting-form{gap:12px}.reporting-footnote{font-size:12px;line-height:1.55;color:var(--muted);margin:10px 2px 0}.report-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.report-preview-grid>div{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.report-preview-grid small{display:block;color:var(--muted);font-size:11px}.report-preview-grid strong{display:block;margin-top:5px;font-size:15px}.report-preview-list{display:grid;gap:7px;margin-top:14px}.report-preview-list>strong{font-size:13px}.report-preview-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.report-preview-empty{color:var(--muted);font-size:12px;padding:10px 0}.reporting-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
@media(max-width:640px){.reporting-section-title{align-items:flex-start}.reporting-section-title>span{white-space:nowrap}.reporting-action-grid{grid-template-columns:1fr}}

/* Phase 21 — Data Integrity & Reconciliation */
.modal-sheet--integrity{width:min(860px,calc(100vw - 24px));max-height:min(92dvh,900px)}
.integrity-loading{display:grid;justify-items:center;gap:8px;padding:34px 18px;text-align:center}.integrity-loading>span{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:integrity-spin .8s linear infinite}.integrity-loading strong{font-size:13px}.integrity-loading p{max-width:520px;margin:0;color:var(--muted);font-size:10px;line-height:1.5}@keyframes integrity-spin{to{transform:rotate(360deg)}}
.integrity-status{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:14px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}.integrity-status>div{display:grid;gap:4px}.integrity-status span{width:max-content;padding:3px 8px;border-radius:999px;font-size:7px;font-weight:900;letter-spacing:.08em}.integrity-status strong{font-size:15px}.integrity-status p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.integrity-status>b{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;font-size:22px}.integrity-status--healthy span,.integrity-status--healthy>b{background:var(--green-soft);color:var(--green)}.integrity-status--review span,.integrity-status--review>b{background:var(--orange-soft);color:var(--orange)}.integrity-status--problem span,.integrity-status--problem>b{background:var(--red-soft);color:var(--red)}
.integrity-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.integrity-summary-grid>div{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.integrity-summary-grid small{font-size:7px;color:var(--muted)}.integrity-summary-grid strong{font-size:12px}
.integrity-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.integrity-meta>div{display:grid;gap:2px;padding:8px 9px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line)}.integrity-meta span{font-size:6.8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.integrity-meta strong{font-size:8.5px;overflow-wrap:anywhere}
.integrity-section{margin-top:16px}.integrity-section__title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:7px}.integrity-section__title>div{display:grid;gap:1px}.integrity-section__title small{font-size:6.5px;color:var(--muted);font-weight:850;letter-spacing:.1em}.integrity-section__title strong{font-size:11px}.integrity-section__title>span{min-width:24px;padding:3px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:7px;text-align:center}
.integrity-issue{display:grid;gap:4px;padding:10px 11px;margin-top:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.integrity-issue__head{display:flex;justify-content:space-between;gap:8px;align-items:center}.integrity-issue__head span{padding:2px 6px;border-radius:999px;font-size:6.2px;font-weight:900;letter-spacing:.06em}.integrity-issue__head small{font-size:6.7px;color:var(--muted)}.integrity-issue>strong{font-size:9.5px}.integrity-issue>p{margin:0;color:var(--muted);font-size:8px;line-height:1.45}.integrity-issue--problem{border-color:color-mix(in srgb,var(--red) 30%,var(--line))}.integrity-issue--problem .integrity-issue__head span{background:var(--red-soft);color:var(--red)}.integrity-issue--review{border-color:color-mix(in srgb,var(--orange) 32%,var(--line))}.integrity-issue--review .integrity-issue__head span{background:var(--orange-soft);color:var(--orange)}.integrity-issue--info .integrity-issue__head span{background:var(--brand-soft);color:var(--brand)}
.integrity-empty,.integrity-readonly{display:grid;gap:4px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.integrity-empty strong,.integrity-readonly strong{font-size:9.5px}.integrity-empty span,.integrity-readonly span{font-size:8px;line-height:1.5;color:var(--muted)}.integrity-readonly{border-color:color-mix(in srgb,var(--brand) 22%,var(--line));background:color-mix(in srgb,var(--brand-soft) 45%,var(--surface))}.integrity-refresh{width:100%;margin-top:12px}
@media(max-width:620px){.modal-sheet--integrity{width:100%}.integrity-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.integrity-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.integrity-status{grid-template-columns:minmax(0,1fr) 44px}.integrity-status>b{width:40px;height:40px}}

/* Phase 22 · Financial Planning & Cashflow Decision Support */
.modal-sheet--decision{width:min(980px,calc(100vw - 24px));max-height:min(92vh,980px)}
.decision-hero{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,var(--brand-soft),var(--surface));margin-bottom:14px}
.decision-mark{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:var(--brand);color:white;font-size:24px;font-weight:800;flex:0 0 auto}
.decision-hero strong{display:block;font-size:16px}.decision-hero p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.decision-baseline,.decision-kpi-grid,.decision-budget-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.decision-baseline>div,.decision-kpi-grid>div,.decision-budget-grid>span{border:1px solid var(--line);border-radius:16px;padding:12px;background:var(--surface)}
.decision-baseline small,.decision-kpi-grid small,.decision-budget-grid small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.decision-baseline strong,.decision-kpi-grid strong,.decision-budget-grid b{display:block;margin-top:5px;font-size:14px;line-height:1.25}
.decision-kpi-grid span{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.decision-baseline-note{margin-top:10px;border:1px solid var(--line);border-radius:16px;padding:12px;display:grid;gap:4px;background:var(--surface)}
.decision-baseline-note strong{font-size:13px}.decision-baseline-note span,.decision-baseline-note small{color:var(--muted);font-size:12px;line-height:1.45}
.decision-baseline-note[data-tone="good"]{border-color:color-mix(in srgb,var(--green) 34%,var(--line))}.decision-baseline-note[data-tone="watch"]{border-color:color-mix(in srgb,var(--orange) 38%,var(--line))}.decision-baseline-note[data-tone="risk"]{border-color:color-mix(in srgb,var(--red) 40%,var(--line))}.decision-worknote-note{margin:10px 0 0;padding:11px 12px;border:1px solid color-mix(in srgb,var(--brand) 26%,var(--line));border-radius:14px;background:var(--brand-faint);display:grid;gap:3px}.decision-worknote-note strong{font-size:11px}.decision-worknote-note span{font-size:10px;line-height:1.45;color:var(--muted)}.decision-worknote-note b{color:var(--ink)}
.decision-section{margin-top:16px}.decision-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}.decision-section-title small{display:block;color:var(--brand);font-size:9px;font-weight:800;letter-spacing:.14em}.decision-section-title strong{display:block;margin-top:2px}.decision-section-title>span{font-size:11px;color:var(--muted)}
.decision-form{padding:14px}.decision-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-form .primary-button{margin-top:10px;width:100%}.decision-footnote{margin:8px 2px 0;color:var(--muted);font-size:11px;line-height:1.45}
.decision-empty{margin-top:16px;border:1px dashed var(--line);border-radius:18px;padding:20px;text-align:center;display:grid;gap:5px}.decision-empty strong{font-size:14px}.decision-empty span{font-size:12px;color:var(--muted)}.decision-empty.compact{margin-top:0;padding:14px}
.decision-result{margin-top:18px}.decision-verdict{display:flex;justify-content:space-between;gap:16px;align-items:center;border-radius:20px;padding:16px;border:1px solid var(--line);margin-bottom:12px}.decision-verdict>div>span{display:inline-block;font-size:9px;font-weight:900;letter-spacing:.11em;padding:4px 7px;border-radius:999px}.decision-verdict strong{display:block;margin-top:8px;font-size:20px}.decision-verdict p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.decision-verdict>b{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:20px;flex:0 0 auto}
.decision-result--good .decision-verdict{background:var(--green-soft);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}.decision-result--good .decision-verdict>div>span,.decision-result--good .decision-verdict>b{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}
.decision-result--watch .decision-verdict{background:var(--orange-soft);border-color:color-mix(in srgb,var(--orange) 38%,var(--line))}.decision-result--watch .decision-verdict>div>span,.decision-result--watch .decision-verdict>b{background:color-mix(in srgb,var(--orange) 16%,transparent);color:var(--orange)}
.decision-result--risk .decision-verdict{background:var(--red-soft);border-color:color-mix(in srgb,var(--red) 38%,var(--line))}.decision-result--risk .decision-verdict>div>span,.decision-result--risk .decision-verdict>b{background:color-mix(in srgb,var(--red) 15%,transparent);color:var(--red)}
.decision-reasons{margin-top:12px;border:1px solid var(--line);border-radius:18px;padding:14px;background:var(--surface)}.decision-reasons>strong{font-size:13px}.decision-reasons ul{margin:8px 0 6px;padding-left:18px}.decision-reasons li{font-size:12px;line-height:1.5;margin:3px 0}.decision-reasons small{color:var(--muted);line-height:1.4}
.decision-budget{margin-top:12px;border:1px solid var(--line);border-radius:18px;padding:14px}.decision-budget>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.decision-budget>div:first-child small{color:var(--muted)}.decision-budget>div:first-child strong{font-size:13px}.decision-budget[data-tone="risk"]{border-color:color-mix(in srgb,var(--red) 38%,var(--line));background:var(--red-soft)}.decision-budget[data-tone="watch"]{border-color:color-mix(in srgb,var(--orange) 38%,var(--line));background:var(--orange-soft)}.decision-budget[data-tone="good"]{border-color:color-mix(in srgb,var(--green) 32%,var(--line));background:var(--green-soft)}
.decision-timeline{display:grid;gap:8px}.decision-timeline-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:11px 12px;background:var(--surface)}.decision-timeline-row--scenario{border-color:color-mix(in srgb,var(--brand) 38%,var(--line));background:var(--brand-soft)}.decision-timeline-date{display:grid;gap:4px}.decision-timeline-date strong{font-size:12px}.decision-timeline-date span{width:max-content;font-size:8px;font-weight:900;letter-spacing:.08em;padding:3px 5px;border-radius:999px;background:var(--brand);color:white}.decision-timeline-copy{min-width:0}.decision-timeline-copy span{display:block;font-size:12px;white-space:normal;line-height:1.35}.decision-timeline-copy small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.decision-timeline-row>b{font-size:12px;text-align:right}.decision-timeline-row>b.negative{color:var(--red)}
.decision-readonly{margin-top:12px;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line));background:var(--brand-soft);border-radius:16px;padding:12px;display:grid;gap:3px}.decision-readonly strong{font-size:12px}.decision-readonly span{font-size:11px;color:var(--muted);line-height:1.45}
@media (max-width:760px){.modal-sheet--decision{width:100%;max-height:94vh}.decision-baseline,.decision-kpi-grid,.decision-budget-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-form-grid{grid-template-columns:1fr}.decision-timeline-row{grid-template-columns:1fr auto}.decision-timeline-copy{grid-column:1/-1;grid-row:2}.decision-timeline-row>b{grid-column:2;grid-row:1}.decision-hero{align-items:flex-start}}
@media (max-width:430px){.decision-baseline,.decision-kpi-grid,.decision-budget-grid{grid-template-columns:1fr 1fr}.decision-baseline>div,.decision-kpi-grid>div,.decision-budget-grid>span{padding:10px}.decision-verdict strong{font-size:17px}.decision-timeline-row{grid-template-columns:minmax(0,1fr) auto}.decision-section-title{align-items:flex-start}}

/* v1.9.1 — Phase 22 adjustment · budget reserve + UI proportionality audit */
.future-budget-effective{display:grid;gap:9px;margin:10px 0 12px;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.future-budget-effective__head{display:flex;align-items:end;justify-content:space-between;gap:12px}.future-budget-effective__head>span{display:grid;gap:2px}.future-budget-effective__head small,.future-budget-effective-row small,.future-budget-effective p,.future-budget-rules-head small{font-size:10px;color:var(--muted);line-height:1.4}.future-budget-effective__head strong{font-size:15px}.future-budget-effective__rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.future-budget-effective-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.future-budget-effective-row>span{display:grid;gap:1px;min-width:0}.future-budget-effective-row strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.future-budget-effective-row b{font-size:11px;white-space:nowrap}.future-budget-effective p{margin:0}.future-budget-effective--empty{grid-template-columns:minmax(0,1fr) auto;align-items:center}.future-budget-effective--empty>div{display:grid;gap:2px}.future-budget-effective--empty p{margin:0;text-align:right}.future-budget-rules-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:3px 0 7px}.future-budget-rules-head strong{font-size:11px}.future-budget-rules-head small{text-align:right}.future-budget-panel{margin-top:12px}.future-budget-list{display:grid;gap:8px}.future-budget-row{display:grid;grid-template-columns:minmax(110px,.65fr) minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.future-budget-row__date,.future-budget-row__copy{display:grid;gap:2px;min-width:0}.future-budget-row__date small,.future-budget-row__copy small{font-size:10px;color:var(--muted)}.future-budget-row__date strong,.future-budget-row__copy strong{font-size:12px}.future-budget-row__copy>span{font-size:12px;font-weight:800}.future-budget-empty{display:grid;gap:4px;padding:12px;border:1px dashed var(--line);border-radius:13px;color:var(--muted)}.future-budget-empty strong{font-size:12px;color:var(--ink)}.future-budget-empty span{font-size:11px;line-height:1.45}.future-budget-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.future-budget-form{gap:11px}
.decision-hero--compact{padding:13px 14px;border-radius:17px}.decision-hero--compact .decision-mark{width:40px;height:40px;border-radius:13px;font-size:20px}.decision-baseline--compact>div{padding:10px 11px;border-radius:13px}.decision-form--clean{padding:12px;display:grid;gap:11px}.decision-form-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.decision-horizon-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.decision-horizon-card>div:first-child{display:grid;gap:2px}.decision-horizon-card strong{font-size:12px}.decision-horizon-card small{font-size:10px;color:var(--muted)}.decision-horizon-controls{display:grid;grid-template-columns:1fr;gap:7px}.decision-horizon-controls label{margin:0}.decision-kpi-grid--priority{grid-template-columns:repeat(4,minmax(0,1fr))}.decision-kpi-primary{border-color:color-mix(in srgb,var(--brand) 38%,var(--line))!important;background:var(--brand-soft)!important}.decision-kpi-grid--secondary{margin-top:8px}.decision-details{margin-top:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.decision-details summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 12px;cursor:pointer;list-style:none}.decision-details summary::-webkit-details-marker{display:none}.decision-details summary>span{display:grid;gap:2px}.decision-details summary strong{font-size:12px}.decision-details summary small{font-size:10px;color:var(--muted)}.decision-details summary>b{font-size:10px;color:var(--brand)}.decision-details[open] summary{border-bottom:1px solid var(--line)}.decision-budget-months{display:grid}.decision-budget-month{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(110px,.6fr)) auto;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}.decision-budget-month:last-child{border-bottom:0}.decision-budget-month>div{display:grid;gap:2px}.decision-budget-month>div small,.decision-budget-month>span small{font-size:9.5px;color:var(--muted)}.decision-budget-month>div strong,.decision-budget-month>span b{font-size:11.5px}.decision-budget-month>span{display:grid;gap:2px}.decision-budget-month>em{font-size:8px;font-style:normal;padding:3px 6px;border-radius:999px;background:var(--surface-2);color:var(--muted)}.decision-details .decision-timeline{padding:10px}
/* UI audit: recent features keep readable type and compact spacing without becoming dense. */
.alert-summary-grid small,.alert-disclaimer,.alert-card p{font-size:10px}.alert-summary-grid strong,.alert-card strong{font-size:11px}.alert-card span{font-size:8px}.finance-calendar-summary small,.finance-calendar-caption span,.finance-calendar-event__copy>span{font-size:8px}.finance-calendar-summary strong,.finance-calendar-event__copy strong{font-size:10px}.finance-calendar-event__copy small{font-size:9px}.integrity-meta span,.integrity-section__title small,.integrity-issue__head small{font-size:8px}.integrity-meta strong,.integrity-issue>strong,.integrity-empty strong,.integrity-readonly strong{font-size:10px}.integrity-issue>p,.integrity-empty span,.integrity-readonly span{font-size:9.5px}.integrity-issue__head span{font-size:7.5px}
@media(max-width:760px){.future-budget-effective__rows{grid-template-columns:1fr}.future-budget-effective__head,.future-budget-rules-head{align-items:flex-start;flex-direction:column}.future-budget-rules-head small{text-align:left}.future-budget-effective--empty{grid-template-columns:1fr}.future-budget-effective--empty p{text-align:left}.future-budget-row{grid-template-columns:1fr auto}.future-budget-row__date{grid-column:1}.future-budget-row__copy{grid-column:1}.future-budget-row .row-actions{grid-column:2;grid-row:1/3;align-self:center}.future-budget-form-grid,.decision-form-primary{grid-template-columns:1fr}.decision-horizon-card{grid-template-columns:1fr}.decision-kpi-grid--priority{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-budget-month{grid-template-columns:minmax(0,1fr) minmax(100px,.6fr)}.decision-budget-month>span:nth-of-type(2){grid-column:2}.decision-budget-month>em{grid-column:1}}
@media(max-width:430px){.decision-kpi-grid--priority,.decision-kpi-grid--secondary{grid-template-columns:1fr 1fr}.future-budget-row{padding:9px 10px}.decision-details summary{padding:10px}.decision-budget-month{padding:9px 10px}}

/* v1.9.2 — Phase 22 adjustment · baseline-first monthly planning */
.decision-baseline-primary{border-color:color-mix(in srgb,var(--brand) 38%,var(--line))!important;background:var(--brand-soft)!important}
.decision-optional-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 2px 0}.decision-optional-head>div{display:grid;gap:2px}.decision-optional-head strong{font-size:12px}.decision-optional-head strong small{font-weight:500;color:var(--muted)}.decision-optional-head span{font-size:10px;color:var(--muted);line-height:1.4}
.decision-disabled-field{opacity:.52}.decision-disabled-field input:disabled{cursor:not-allowed;background:var(--surface-2)}
.decision-monthly{margin-top:12px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.decision-monthly-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;border-bottom:1px solid var(--line);background:var(--surface-2)}.decision-monthly-head>div{display:grid;gap:2px}.decision-monthly-head strong{font-size:13px}.decision-monthly-head small,.decision-monthly-head>span{font-size:10px;color:var(--muted)}
.decision-month-row{display:grid;grid-template-columns:minmax(110px,1fr) repeat(3,minmax(120px,.8fr)) auto;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid var(--line)}.decision-month-row:last-of-type{border-bottom:0}.decision-month-row--scenario{background:var(--brand-soft)}.decision-month-row>div{display:flex;align-items:center;gap:7px;min-width:0}.decision-month-row>div strong{font-size:12px}.decision-month-row>div span{font-size:8px;font-weight:800;letter-spacing:.06em;padding:3px 5px;border-radius:999px;background:var(--brand);color:white}.decision-month-row>span{display:grid;gap:2px}.decision-month-row>span small{font-size:9.5px;color:var(--muted)}.decision-month-row>span b{font-size:11.5px}.decision-month-end small:last-child{margin-top:2px}.decision-month-row>em{font-size:8px;font-style:normal;font-weight:700;padding:4px 7px;border-radius:999px;white-space:nowrap}.decision-month-row>em[data-tone="good"]{background:var(--green-soft);color:var(--green)}.decision-month-row>em[data-tone="risk"]{background:var(--red-soft);color:var(--red)}.decision-monthly>p{margin:0;padding:9px 13px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.4;background:var(--surface-2)}
@media(max-width:760px){.decision-month-row{grid-template-columns:minmax(0,1fr) minmax(120px,.8fr);gap:8px}.decision-month-row>span:nth-of-type(2){grid-column:1}.decision-month-row>span:nth-of-type(3){grid-column:2}.decision-month-row>em{grid-column:2;grid-row:1;justify-self:end}.decision-month-row>div{padding-right:70px}.decision-monthly-head{align-items:flex-start}}
@media(max-width:430px){.decision-month-row{padding:10px}.decision-monthly-head{padding:10px}.decision-month-row>span b{font-size:11px}.decision-optional-head span{font-size:9.5px}}

/* v1.9.3 — Phase 22 adjustment · recurring projection + transparent monthly recap */
.decision-month-row{grid-template-columns:minmax(110px,1fr) repeat(4,minmax(105px,.72fr))}
.decision-month-title{display:flex;align-items:center;gap:7px;min-width:0}.decision-month-title>em{font-size:8px;font-style:normal;font-weight:700;padding:4px 7px;border-radius:999px;white-space:nowrap}.decision-month-title>em[data-tone="good"]{background:var(--green-soft);color:var(--green)}.decision-month-title>em[data-tone="risk"]{background:var(--red-soft);color:var(--red)}
.decision-month-breakdown{grid-column:1/-1;border-top:1px dashed var(--line);padding-top:8px}.decision-month-breakdown summary{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;list-style:none;color:var(--brand)}.decision-month-breakdown summary::-webkit-details-marker{display:none}.decision-month-breakdown summary span{font-size:10px;font-weight:800}.decision-month-breakdown summary b{font-size:9.5px;font-weight:600;color:var(--muted)}
.decision-month-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:9px}.decision-month-detail-group{border:1px solid var(--line);border-radius:12px;padding:9px;background:var(--surface-2);min-width:0}.decision-month-detail-group>strong{display:block;font-size:10px;margin-bottom:6px}.decision-month-detail-group ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}.decision-month-detail-group li{display:flex;justify-content:space-between;gap:8px;align-items:center;min-width:0}.decision-month-detail-group li>span{display:grid;gap:1px;min-width:0}.decision-month-detail-group li strong{font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.decision-month-detail-group li small{font-size:8.5px;color:var(--muted);line-height:1.3}.decision-month-detail-group li b{font-size:9.5px;white-space:nowrap}.decision-month-detail-empty{font-size:9px;color:var(--muted);justify-content:flex-start!important}
@media(max-width:760px){.decision-month-row{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-month-title{grid-column:1/-1;padding-right:0!important}.decision-month-row>span{grid-column:auto!important;grid-row:auto!important}.decision-month-breakdown{grid-column:1/-1}.decision-month-breakdown-grid{grid-template-columns:1fr}.decision-month-breakdown summary{align-items:flex-start}.decision-month-breakdown summary b{text-align:right}}
@media(max-width:430px){.decision-month-title{flex-wrap:wrap}.decision-month-breakdown summary{display:grid}.decision-month-breakdown summary b{text-align:left}.decision-month-detail-group{padding:8px}}


/* v1.10.0 — Phase 23 · security, privacy & clean planning status */
.planning-status-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}
.planning-status-strip>span{display:flex;align-items:center;gap:8px;min-width:0}.planning-status-strip>span i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px var(--green-soft);flex:0 0 auto}.planning-status-strip strong{font-size:12px}.planning-status-strip small{font-size:9.5px;color:var(--muted);text-align:right}
.settings-toggle-stack{display:grid;gap:8px}.settings-toggle-stack .settings-toggle-row+ .settings-toggle-row{margin-top:0}
body.privacy-guard-active{overflow:hidden!important}body.privacy-guard-active .app-shell{visibility:hidden!important}body.privacy-guard-active::after{content:'Avero\A Tampilan dilindungi';white-space:pre;position:fixed;inset:0;z-index:2147483647;display:grid;place-items:center;text-align:center;padding:24px;background:var(--bg);color:var(--ink);font-size:14px;font-weight:800;line-height:1.8;letter-spacing:-.01em}
@media(max-width:520px){.planning-status-strip{padding:10px}.planning-status-strip strong{font-size:11.5px}.planning-status-strip small{font-size:9px}}

/* v1.11.1 — Health Monthly Outlook adjustment */
.health-month-card{border-color:color-mix(in srgb,var(--brand) 30%,var(--line));background:linear-gradient(145deg,var(--surface),var(--brand-soft))}
.health-month-card #health-month-label{text-transform:none;letter-spacing:0;color:inherit}.health-month-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
.health-secondary-panel{background:var(--surface)}
.health-secondary-forecast{padding:0!important;overflow:hidden}
.health-secondary-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;background:var(--surface-2)}
.health-secondary-details>summary::-webkit-details-marker{display:none}
.health-secondary-details>summary>span{display:grid;gap:2px}.health-secondary-details>summary strong{font-size:11px}.health-secondary-details>summary small{font-size:8.5px;color:var(--muted)}.health-secondary-details>summary>b{font-size:9px;color:var(--brand)}
.health-secondary-details[open]>summary{border-bottom:1px solid var(--line)}
.health-secondary-body{padding:12px}
.health-safe-caption-secondary{margin-top:9px;padding:8px 10px;border-radius:10px;background:var(--surface-2);font-size:8.5px;line-height:1.45;color:var(--muted)}
@media(max-width:520px){.health-secondary-details>summary{padding:10px 11px}.health-secondary-body{padding:10px}.health-month-card>div:first-child>strong{font-size:24px}}


/* Avero v1.13.0 · Phase 26 UX, Accessibility & Final Polish */
.skip-link{position:fixed;z-index:500;left:12px;top:10px;transform:translateY(-160%);padding:9px 12px;border:1px solid var(--brand);border-radius:10px;background:var(--surface);color:var(--brand-2);font-size:12px;font-weight:800;box-shadow:var(--shadow);transition:transform .14s ease}
.skip-link:focus{transform:translateY(0)}
button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button:focus-visible,[role="button"]:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 62%,transparent);outline-offset:2px}
summary{border-radius:8px}
.modal-sheet:focus{outline:none}
.modal-close{min-width:38px;min-height:38px}
.row-actions button{min-height:34px;padding-inline:9px}
.settings-inline-action{min-height:32px;padding:0 4px;margin-left:-4px}
.calendar-nav{min-width:38px;min-height:38px}.calendar-clear{min-height:36px}.calendar-day{min-height:36px}
.finance-calendar-filter{min-height:34px;font-size:9px}.work-note-filter{min-height:36px}.history-actions button{min-height:34px}
.alert-card span{font-size:8px}.finance-calendar-day>small{font-size:8px}
.empty-state{line-height:1.55}.toast{font-size:11px;line-height:1.4}
[aria-disabled="true"],button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.56}
@media(max-width:620px){
  .modal-body{padding-inline:12px}
  .modal-body small,.modal-body p,.modal-body label>span{line-height:1.48}
  .row-actions{gap:6px}.row-actions button{min-height:36px}
  .calendar-day{min-height:38px}
}
@media(prefers-contrast:more){
  :root{--line:#cbd3df;--muted:#536176;--brand-soft:#dfe8ff;--brand-faint:#eef3ff}
  :root[data-theme="dark"]{--line:#425474;--muted:#b6c2d2;--brand-soft:#244274;--brand-faint:#172b4b}
  .command-card,.metric-card,.insight-card,.analytics-panel,.settings-card,.modal-sheet,.manager-row,.history-row,.more-list button{box-shadow:none}
}
.auth-card p{font-size:12px}.auth-note{font-size:10px}.brand-lockup small{font-size:9.5px}
.modal-head small{font-size:10px}.form-card label>span{font-size:10px}.manager-row small,.history-row small{font-size:9.5px}
/* Phase 26 legibility normalization: keep dense secondary information readable without enlarging layout blocks. */
.primary-nav button>strong{font-size:9.5px}
.planning-summary small,.planning-card__head small,.planning-card__meta span,.daily-budget-card>span small,.manager-section-title small,.category-icon-group-title small,.calendar-toolbar small,.calendar-weekdays span,.work-note-paid-meta>span{font-size:9.2px}
.category-icon-choice small{font-size:8.8px}.calendar-summary-action{font-size:9px}
.score-ring small,.cashflow-mini small,.trend-month>span,.analytics-category-row small,.score-breakdown-row small,.score-breakdown-row>b small,.analytics-toolbar label>span,.analytics-period-copy small,.cashflow-mini>button span,.analytics-kpi small,.analytics-personal-grid small,.analytics-explain,.category-trend-point small,.category-trend-point span,.analytics-wallet-row small{font-size:9px!important}
.diagnosis-insight small,.diagnosis-summary-grid small,.diagnosis-summary-grid span,.diagnosis-budget-row small,.diagnosis-stability-grid small,.diagnosis-stability-grid span,.diagnosis-column-title,.diagnosis-mover small,.diagnosis-savings-point small,.diagnosis-savings-point span,.diagnosis-goal-row small,.diagnosis-goal-row em,.diagnosis-worknote-paid small{font-size:9px}
.health-safe-card small,.health-risk-card small,.health-horizon-card small,.health-score-meta small,.health-action small,.health-risk-card span,.health-horizon-card span,.health-score-reasons,.health-quality-card small,.health-quality-card>span,.health-method p{font-size:9px}
.alert-summary-grid small,.alert-disclaimer,.alert-card p{font-size:9.2px}.alert-card span{font-size:8.5px}.alert-card strong{font-size:10px}
.finance-calendar-toolbar small,.finance-calendar-summary small,.finance-calendar-weekdays span,.finance-calendar-summary span,.finance-calendar-agenda__head small,.finance-calendar-event__copy>span,.finance-calendar-event__copy small,.finance-calendar-event__side>b{font-size:9px}
.finance-calendar-event__side>button{min-height:32px;font-size:9px}

/* v1.13.2 · Maintenance: grouped More menu for faster mobile scanning. */
.more-groups{display:grid;gap:10px}
.more-group{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft)}
.more-group>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 22px;align-items:center;gap:10px;min-height:64px;padding:11px 13px;cursor:pointer;list-style:none;color:var(--ink);user-select:none}
.more-group>summary::-webkit-details-marker{display:none}
.more-group>summary>span{display:grid;gap:3px;min-width:0}.more-group>summary>span strong{font-size:12px}.more-group>summary>span small{font-size:9.5px;line-height:1.4;color:var(--muted)}
.more-group>summary>em{font-size:8.5px;font-style:normal;font-weight:780;color:var(--muted);white-space:nowrap}.more-group-caret{display:grid;place-items:center;color:var(--muted);font-size:16px;transition:transform .16s ease}
.more-group[open]>summary{border-bottom:1px solid var(--line);background:var(--surface-2)}.more-group[open] .more-group-caret{transform:rotate(180deg)}
.more-group .more-list{padding:8px}.more-group .more-list button{box-shadow:none}
@media(max-width:620px){.more-group>summary{min-height:60px;padding:10px 11px}.more-group>summary>span strong{font-size:11.5px}.more-group>summary>span small{font-size:9.2px}.more-group .more-list{padding:7px}.more-group .more-list button{min-height:58px}}
@media (orientation:landscape) and (min-width:760px){.more-groups{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.more-group .more-list{grid-template-columns:1fr}}

/* v1.13.3 · Maintenance: compact Health details + guarded Android PWA exit. */
.health-detail-groups{display:grid;gap:10px;margin-top:12px}
.health-detail-group{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft)}
.health-detail-group>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 22px;align-items:center;gap:10px;min-height:64px;padding:11px 13px;cursor:pointer;list-style:none;color:var(--ink);user-select:none}
.health-detail-group>summary::-webkit-details-marker{display:none}
.health-detail-group>summary>span{display:grid;gap:3px;min-width:0}.health-detail-group>summary>span strong{font-size:12px}.health-detail-group>summary>span small{font-size:9.5px;line-height:1.4;color:var(--muted)}
.health-detail-group>summary>em{font-size:8.5px;font-style:normal;font-weight:780;color:var(--muted);white-space:nowrap}.health-detail-caret{display:grid;place-items:center;color:var(--muted);font-size:16px;transition:transform .16s ease}
.health-detail-group[open]>summary{border-bottom:1px solid var(--line);background:var(--surface-2)}.health-detail-group[open] .health-detail-caret{transform:rotate(180deg)}
.health-detail-body{padding:10px}.health-detail-body>.analytics-panel{box-shadow:none}.health-detail-body .health-horizon-panel{margin-bottom:0}
.modal-sheet--exit{left:50%;bottom:max(16px,env(safe-area-inset-bottom));width:min(430px,calc(100% - 24px));max-height:none;padding:18px;border:1px solid var(--line);border-radius:22px;transform:translateX(-50%);display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;background:var(--surface);box-shadow:0 18px 60px rgba(15,28,50,.26)}
.exit-dialog-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--brand-soft);color:var(--brand);font-size:20px;font-weight:850}.exit-dialog-copy{display:grid;gap:5px}.exit-dialog-copy strong{font-size:15px}.exit-dialog-copy p{margin:0;font-size:10px;line-height:1.5;color:var(--muted)}
.exit-dialog-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:2px}.exit-dialog-actions .button{min-height:44px}
@media(max-width:620px){.health-detail-group>summary{min-height:60px;padding:10px 11px}.health-detail-group>summary>span strong{font-size:11.5px}.health-detail-group>summary>span small{font-size:9.2px}.health-detail-body{padding:8px}.modal-sheet--exit{bottom:max(12px,env(safe-area-inset-bottom));padding:16px}}
@media (orientation:landscape) and (min-width:760px){.health-detail-groups{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.health-detail-group[open]{grid-column:1/-1}.modal-sheet--exit{left:calc(50% + var(--rail-width)/2);bottom:50%;transform:translate(-50%,50%)}}

/* Avero v2.0.0 Phase 1 — AI Quick Transaction Input */
.ai-quick-entry-card{margin-top:10px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);padding:12px 13px;display:grid;gap:9px}
.ai-quick-entry-head{display:flex;align-items:center;gap:9px;min-width:0}.ai-quick-entry-head>div:last-child{display:grid;gap:1px;min-width:0}.ai-quick-entry-head strong{font-size:12.5px}.ai-quick-entry-head small{font-size:9.5px;color:var(--muted)}
.ai-quick-entry-mark{width:28px;height:28px;display:grid;place-items:center;border-radius:10px;background:var(--purple-soft);color:var(--purple);font-weight:900;font-size:14px;flex:0 0 auto}
.ai-quick-entry-form{display:flex;gap:7px;align-items:stretch}.ai-quick-entry-form input{min-width:0;flex:1;height:42px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);padding:0 12px;font:inherit;font-size:12px;outline:none}.ai-quick-entry-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.ai-quick-entry-form button{height:42px;padding:0 15px;border:0;border-radius:12px;background:var(--brand);color:white;font-weight:800;font-size:11px;white-space:nowrap}.ai-quick-entry-form button:disabled,.ai-quick-entry-form input:disabled{opacity:.65}
.ai-quick-entry-help{font-size:9px;line-height:1.45;color:var(--muted)}
.ai-preview-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.ai-preview-summary>div{display:grid;gap:3px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.ai-preview-summary small{font-size:9px;color:var(--muted)}.ai-preview-summary strong{font-size:12px;overflow-wrap:anywhere}.modal-sheet--quick-entry{max-width:500px}
@media(max-width:430px){.ai-quick-entry-card{padding:11px}.ai-quick-entry-form button{padding-inline:12px}.ai-quick-entry-help{font-size:8.8px}}
@media(max-width:350px){.ai-quick-entry-form{grid-template-columns:1fr;display:grid}.ai-quick-entry-form button{width:100%}.ai-preview-summary{grid-template-columns:1fr}}

/* Avero v2.0.2 · trusted quick-input rules + archive clarity */
.ai-quick-entry-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.ai-rules-link{border:0;background:transparent;color:var(--brand);font:inherit;font-size:9px;font-weight:800;padding:3px 0;white-space:nowrap}.ai-rules-link:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px}
.ai-trust-row{display:grid;gap:4px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.ai-trust-row>span,.ai-auto-confirm>span,.ai-rule-auto{display:flex;align-items:flex-start;gap:7px;font-size:10px;line-height:1.4}.ai-trust-row input[type="checkbox"],.ai-auto-confirm input[type="checkbox"],.ai-rule-auto input[type="checkbox"]{width:16px!important;height:16px!important;min-height:16px!important;padding:0!important;margin:0;flex:0 0 16px;accent-color:var(--brand)}.ai-trust-row small{padding-left:23px;font-size:8.8px;color:var(--muted);line-height:1.4}.ai-auto-confirm{padding:8px 10px;border-radius:10px;background:var(--brand-soft);color:var(--ink-2)}
.ai-type-field{display:grid;gap:6px;margin:0;padding:0;border:0}.ai-type-field legend{padding:0;font-size:9px;color:var(--muted);font-weight:700}.ai-type-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.ai-type-option{position:relative;display:block!important}.ai-type-option input[type="radio"]{position:absolute!important;inline-size:1px!important;block-size:1px!important;min-height:0!important;width:1px!important;height:1px!important;padding:0!important;opacity:0;pointer-events:none}.ai-type-option span{display:grid;place-items:center;min-height:34px;padding:0 10px;border-radius:9px;color:var(--muted);font-size:10px!important;font-weight:800;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.ai-type-option input:checked+span{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-soft)}.ai-type-option input:focus-visible+span{outline:2px solid var(--brand);outline-offset:1px}

/* Avero v2.0.3 · proportional AI dialogs + transaction type filtering */
.modal-sheet--ai-rules{max-width:620px}.ai-rule-manager{display:grid;gap:10px}.ai-rule-manager-intro{display:grid;gap:2px;padding:0 2px}.ai-rule-manager-intro strong{font-size:11.5px}.ai-rule-manager-intro small{font-size:9px;line-height:1.4;color:var(--muted)}.ai-rule-list{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.ai-rule-row{display:grid;gap:9px;padding:11px 12px;background:var(--surface)}.ai-rule-row+.ai-rule-row{border-top:1px solid var(--line)}.ai-rule-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ai-rule-copy{display:grid;gap:2px;min-width:0}.ai-rule-copy strong{font-size:11.5px;overflow-wrap:anywhere}.ai-rule-copy small{font-size:8.8px;color:var(--muted);line-height:1.35}.ai-rule-delete{flex:0 0 auto;padding:2px 0;font-size:9px}.ai-rule-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:end}.ai-rule-category{display:grid;gap:4px;min-width:0}.ai-rule-category>span{font-size:8.8px!important;color:var(--muted);font-weight:700}.ai-rule-category select{width:100%;min-height:38px;padding:7px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font-size:10px}.ai-rule-auto{align-items:center;min-height:38px;padding:0 3px;white-space:nowrap}.ai-rule-save{min-height:38px;padding-inline:11px}
.manager-archive{margin-top:10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);overflow:hidden}.manager-archive>summary{cursor:pointer;list-style:none;padding:10px 12px;font-size:10.5px;font-weight:800;color:var(--ink-2);display:flex;align-items:center;justify-content:space-between}.manager-archive>summary::-webkit-details-marker{display:none}.manager-archive>summary::after{content:'⌄';color:var(--muted)}.manager-archive[open]>summary::after{transform:rotate(180deg)}.manager-list--archive{padding:0 8px 8px}.category-drag-spacer{width:30px;flex:0 0 30px}
@media(max-width:560px){.ai-rule-controls{grid-template-columns:minmax(0,1fr) auto}.ai-rule-category{grid-column:1/-1}.ai-rule-auto{min-height:34px}.ai-rule-save{min-height:36px}.ai-trust-row small{padding-left:0}}
@media(max-width:430px){.ai-quick-entry-foot{align-items:flex-start}.ai-rule-row{padding:10px}.category-drag-spacer{width:24px;flex-basis:24px}}


/* Input Cepat AI helper links — Tanya Avero retired in v2.6.3 */
.ai-quick-entry-links{display:flex;align-items:center;gap:10px;flex:0 0 auto}
@media(max-width:560px){.ai-quick-entry-foot{display:grid;grid-template-columns:minmax(0,1fr) auto}.ai-quick-entry-links{gap:8px}}
@media(max-width:380px){.ai-quick-entry-foot{grid-template-columns:1fr}.ai-quick-entry-links{justify-content:flex-end}}


/* Avero v2.5.10 Adjustment 1 · portrait analytics layout guard
   Width-only desktop breakpoints previously let tablet/large portrait viewports
   inherit the landscape analytics workspace. Portrait now keeps the compact
   vertical information flow; landscape keeps the existing wide layout. */
@media (orientation:portrait){
  [data-view="analytics"]{max-width:760px;margin-inline:auto}
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:minmax(145px,190px) minmax(0,1fr)}
  [data-view="analytics"] .analytics-period-copy{grid-column:1/-1;display:flex;justify-content:space-between;text-align:left}
  [data-view="analytics"] .analytics-period-copy small{text-align:right}
  [data-view="analytics"] .analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  [data-view="analytics"] .analytics-phase14-grid{grid-template-columns:1fr}
  [data-view="analytics"] .analytics-panel--trend,
  [data-view="analytics"] .analytics-panel--forecast,
  [data-view="analytics"] .analytics-panel--wallets{grid-column:auto}
  [data-view="analytics"] .analytics-personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (orientation:portrait) and (max-width:520px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:1fr}
  [data-view="analytics"] .analytics-custom-range{grid-template-columns:1fr 1fr}
  [data-view="analytics"] .analytics-period-copy{grid-column:1;align-items:flex-start;flex-direction:column}
  [data-view="analytics"] .analytics-period-copy small{text-align:left}
}

/* Avero v2.5.10 Adjustment 2 · mobile analytics fit / overflow containment
   The 7-day trend must fit the phone viewport. Longer category timelines may
   scroll inside their own chart, but must never enlarge the document viewport
   or push the fixed bottom navigation off-screen. */
[data-view="analytics"],
[data-view="analytics"] .analytics-toolbar,
[data-view="analytics"] .analytics-hero,
[data-view="analytics"] .analytics-kpi-grid,
[data-view="analytics"] .analytics-phase14-grid,
[data-view="analytics"] .analytics-panel,
[data-view="analytics"] .analytics-grid--footer{
  min-width:0;
  max-width:100%;
}
[data-view="analytics"] .analytics-phase14-grid>*{min-width:0;max-width:100%}
[data-view="analytics"] .analytics-panel--trend,
[data-view="analytics"] .analytics-panel--category-trend{overflow:hidden}
[data-view="analytics"] .analytics-trend-chart,
[data-view="analytics"] .analytics-category-trend-chart{
  width:100%;
  min-width:0;
  max-width:100%;
  contain:inline-size;
}

@media (orientation:portrait) and (max-width:520px){
  .content-wrap{max-width:100%;overflow-x:hidden}
  [data-view="analytics"]{width:100%;overflow-x:hidden}
  [data-view="analytics"] .analytics-trend-chart{
    overflow-x:hidden;
    gap:4px;
    padding-inline:0;
  }
  [data-view="analytics"] .analytics-trend-chart .trend-month{min-width:0!important}
  [data-view="analytics"] .analytics-trend-chart .trend-bars{gap:2px}
  [data-view="analytics"] .analytics-trend-chart .trend-bar{width:min(11px,38%)}
  [data-view="analytics"] .analytics-trend-chart .trend-month>small{font-size:7.5px!important}
  [data-view="analytics"] .analytics-trend-chart .trend-month>span{font-size:7px!important;max-width:100%}
  [data-view="analytics"] .analytics-category-trend-chart{
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin;
  }
  [data-view="analytics"] .analytics-category-trend-chart .category-trend-point{min-width:42px}
  .primary-nav{max-width:calc(100% - 16px)}
}

/* v3.0.0 · Information Architecture & Navigation
   Six canonical product areas stay visible at once. No horizontal menu scroll. */
.hub-hero{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-xl);background:linear-gradient(145deg,var(--surface),var(--brand-faint));box-shadow:var(--shadow)}
.hub-hero>div:first-child{display:grid;gap:4px}.hub-hero>div:first-child>small{font-size:8.5px;font-weight:850;letter-spacing:.09em;color:var(--brand-2)}.hub-hero>div:first-child>strong{font-size:16px;letter-spacing:-.02em}.hub-hero>div:first-child>span{font-size:10px;color:var(--muted)}
.hub-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hub-quick-actions button{min-width:0;min-height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-2)}.hub-quick-actions strong{font-size:10px}
.hub-grid{display:grid;grid-template-columns:1fr;gap:9px}.hub-card{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left;box-shadow:0 6px 22px rgba(32,51,84,.035)}.hub-card:hover{border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}.hub-card>div{display:grid;gap:3px;min-width:0}.hub-card strong{font-size:12px}.hub-card small{font-size:9.7px;line-height:1.4;color:var(--muted)}.hub-card>b{color:var(--muted)}.hub-card-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--brand-soft);color:var(--brand);font-weight:850}.hub-card-icon--green{background:var(--green-soft);color:var(--green)}.hub-card-icon--orange{background:var(--orange-soft);color:var(--orange)}.hub-card-icon--purple{background:var(--purple-soft);color:var(--purple)}
.hub-owner-note{display:flex;align-items:flex-start;gap:11px;margin-top:14px;padding:12px 13px;border:1px dashed color-mix(in srgb,var(--brand) 30%,var(--line));border-radius:var(--radius-md);background:var(--brand-faint)}.hub-owner-note>span{flex:0 0 auto;padding:4px 6px;border-radius:7px;background:var(--brand);color:#fff;font-size:7.5px;font-weight:850;letter-spacing:.08em}.hub-owner-note>div{display:grid;gap:3px}.hub-owner-note strong{font-size:10.5px}.hub-owner-note small{font-size:9px;line-height:1.4;color:var(--muted)}
.hub-inline-actions{display:grid;gap:8px;margin:0 0 13px}.hub-inline-button{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left}.hub-inline-button>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--orange-soft);color:var(--orange);font-weight:900}.hub-inline-button>div{display:grid;gap:2px}.hub-inline-button strong{font-size:11px}.hub-inline-button small{font-size:9.5px;color:var(--muted)}.hub-inline-button>b{color:var(--muted)}.hub-inline-button .more-count{position:static;margin:0}

/* Six primary destinations always fit in one viewport. */
.primary-nav{grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:4px}
.primary-nav button{min-width:0;gap:3px;padding:3px 1px;border-radius:13px;overflow:hidden}
.primary-nav button>span.nav-icon{width:29px;height:29px;border-radius:9px}
.primary-nav button>span.nav-icon svg{width:16px;height:16px}
.primary-nav button>strong{width:100%;min-width:0;font-size:clamp(7px,2.05vw,9px);letter-spacing:-.025em;white-space:nowrap;text-align:center;overflow:hidden}

@media(min-width:700px) and (orientation:portrait){
  .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-card--wide{grid-column:1/-1}
}

@media (orientation:landscape) and (min-width:650px){
  :root{--rail-width:150px}
  .main-column{padding-left:calc(var(--rail-width) + 24px);padding-bottom:22px}
  .primary-nav{left:12px;right:auto;top:50%;bottom:auto;transform:translateY(-50%);width:var(--rail-width);height:auto;grid-template-columns:1fr;grid-template-rows:repeat(6,50px);gap:5px;padding:7px;border-radius:22px}
  .primary-nav button{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:1fr;align-items:center;justify-items:start;gap:9px;padding:6px 9px;text-align:left;border-radius:13px;overflow:visible}
  .primary-nav button>span.nav-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:10px;margin:0}
  .primary-nav button>span.nav-icon svg{width:17px;height:17px}
  .primary-nav button>strong{font-size:10px;white-space:nowrap;text-align:left;overflow:visible;width:auto}
  .primary-nav button.active{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand);color:var(--brand)}
  .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hub-card--wide{grid-column:1/-1}.hub-hero{grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);align-items:center}.hub-quick-actions{align-self:stretch}
}

@media (orientation:landscape) and (min-width:1180px){
  :root{--rail-width:168px}
  .main-column{padding-left:calc(var(--rail-width) + 30px)}
  .primary-nav{width:var(--rail-width);grid-template-rows:repeat(6,54px)}
  .primary-nav button{grid-template-columns:36px minmax(0,1fr);padding-inline:10px}.primary-nav button>strong{font-size:10.5px}
}

@media (orientation:landscape) and (max-height:380px) and (min-width:650px){
  .primary-nav{grid-template-rows:repeat(6,42px);gap:3px;padding:5px}.primary-nav button{grid-template-columns:29px minmax(0,1fr);gap:7px;padding:4px 7px}.primary-nav button>span.nav-icon{width:28px;height:28px}.primary-nav button>strong{font-size:9px}
}

@media(max-width:360px){
  :root{--nav-height:68px}
  .primary-nav{left:max(5px,env(safe-area-inset-left));right:max(5px,env(safe-area-inset-right));gap:1px;padding:3px}
  .primary-nav button>span.nav-icon{width:27px;height:27px}.primary-nav button>strong{font-size:6.8px;letter-spacing:-.035em}.hub-card{grid-template-columns:38px minmax(0,1fr) auto;padding-inline:10px}.hub-card-icon{width:36px;height:36px}
}

/* v3.1.1 — Transaction Hub UI Refinement */
.transaction-page-header{margin-bottom:8px}.transaction-page-header h1{margin-top:2px;margin-bottom:2px;font-size:clamp(22px,5vw,30px)}.transaction-page-header p{font-size:10.5px}
.transaction-shortcuts{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:9px}.transaction-shortcuts button{position:relative;min-width:0;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 3px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-2)}.transaction-shortcuts button:hover{border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}.transaction-shortcuts strong{max-width:100%;font-size:8.8px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-shortcuts small{min-height:8px;font-size:7.2px;line-height:1;color:var(--muted);font-weight:750}.transaction-shortcuts .action-icon{width:27px;height:27px;border-radius:9px;font-size:14px}.action-icon--worknote{background:var(--purple-soft);color:var(--purple)}.action-icon--split{background:var(--brand-faint);color:var(--brand)}
.transaction-ledger{margin-top:6px;min-width:0}.transaction-section-title{align-items:end;margin-top:8px;margin-bottom:6px}.transaction-section-title>span{font-size:8px;color:var(--muted);font-weight:750;white-space:nowrap}.transaction-section-title small{font-size:8.8px}
.transaction-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:7px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.transaction-summary-grid>div{min-width:0;display:grid;gap:1px;padding:6px 8px;border-left:1px solid var(--line);background:transparent}.transaction-summary-grid>div:first-child{border-left:0}.transaction-summary-grid small{font-size:6.8px;font-weight:850;letter-spacing:.06em;color:var(--muted)}.transaction-summary-grid strong{min-width:0;font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-summary-grid span{display:none}
.transaction-filter-panel{display:grid;grid-template-columns:minmax(220px,1fr) minmax(105px,130px) minmax(105px,130px) auto;gap:6px;align-items:end;margin-bottom:8px;padding:7px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.transaction-filter-panel label{display:grid;gap:3px;min-width:0}.transaction-filter-panel label>span{font-size:7.5px;font-weight:800;color:var(--muted)}.transaction-filter-panel input,.transaction-filter-panel select{width:100%;min-width:0;min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:9px}.transaction-filter-search{grid-column:auto}.transaction-filter-more{min-width:0}.transaction-filter-more>summary{list-style:none;min-height:34px;display:flex;align-items:center;justify-content:center;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink-2);font-size:8.8px;font-weight:800;cursor:pointer;white-space:nowrap}.transaction-filter-more>summary::-webkit-details-marker{display:none}.transaction-filter-more>summary::after{content:'＋';margin-left:5px;color:var(--muted)}.transaction-filter-more[open]{grid-column:1/-1}.transaction-filter-more[open]>summary{width:max-content;min-width:120px}.transaction-filter-more[open]>summary::after{content:'−'}.transaction-filter-advanced-grid{display:grid;grid-template-columns:repeat(4,minmax(105px,1fr)) auto;gap:6px;align-items:end;padding-top:7px}.transaction-filter-reset{min-height:34px;padding-inline:10px;white-space:nowrap}.transaction-custom-range{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:1px}.transaction-custom-range[hidden]{display:none}
.transaction-ledger-list{min-width:0;gap:0}.transaction-date-divider{display:flex;align-items:baseline;gap:7px;margin:10px 2px 5px;padding:4px 2px 5px;border-bottom:1px solid var(--line)}.transaction-date-divider:first-child{margin-top:1px}.transaction-date-divider strong{font-size:9.5px;color:var(--ink-2);text-transform:capitalize}.transaction-date-divider span{font-size:8px;color:var(--muted)}.transaction-ledger-row{min-width:0;margin-bottom:6px}.transaction-load-more{display:block;width:100%;margin-top:8px}.transaction-load-more[hidden]{display:none}
@media(max-width:620px){.transaction-page-header{margin-top:0;margin-bottom:6px}.transaction-page-header .eyebrow{display:none}.transaction-page-header h1{font-size:22px}.transaction-page-header p{font-size:9.5px}.transaction-shortcuts{gap:4px;margin-bottom:7px}.transaction-shortcuts button{min-height:53px;padding:5px 2px}.transaction-shortcuts strong{font-size:8px}.transaction-shortcuts small{font-size:6.8px}.transaction-shortcuts .action-icon{width:24px;height:24px;font-size:13px}.transaction-section-title{margin-top:6px}.transaction-section-title small{display:none}.transaction-summary-grid>div{padding:5px 5px}.transaction-summary-grid strong{font-size:9.4px}.transaction-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:6px}.transaction-filter-search{grid-column:1/-1}.transaction-filter-panel label>span{display:none}.transaction-filter-panel input,.transaction-filter-panel select{min-height:33px;font-size:8.7px}.transaction-filter-more{grid-column:1/-1}.transaction-filter-more>summary{min-height:31px}.transaction-filter-more[open]>summary{width:100%}.transaction-filter-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.transaction-filter-reset{min-height:33px;width:100%}.transaction-custom-range{grid-template-columns:1fr 1fr}.transaction-ledger-row{grid-template-columns:31px minmax(0,1fr) auto;gap:7px;padding:8px 9px}.transaction-ledger-row .history-actions{grid-column:2/-1}.transaction-date-divider{margin-top:8px}}
@media(max-width:390px){.transaction-shortcuts strong{font-size:7.4px;letter-spacing:-.02em}.transaction-shortcuts small{font-size:6.4px}.transaction-summary-grid small{font-size:6.2px}.transaction-summary-grid strong{font-size:8.7px}.transaction-filter-advanced-grid,.transaction-custom-range{grid-template-columns:1fr}.transaction-section-title>span{font-size:7.3px}}


/* Avero v3.2.0 · Analytics Core 2.0 controls */
.analytics-scope-control,.analytics-period-control{display:grid;gap:4px;min-width:0}
.analytics-scope-control>span,.analytics-period-control>span{font-size:8.5px;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.analytics-scope-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:36px;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.analytics-scope-toggle button{min-width:0;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:9px;font-weight:800;cursor:pointer}
.analytics-scope-toggle button.active{background:var(--surface);color:var(--brand);box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 8%,transparent)}
.analytics-scope-toggle button:focus-visible,.analytics-period-nav:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,transparent);outline-offset:2px}
.analytics-period-select-row{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:6px;align-items:center}
.analytics-period-select-row select{min-width:0}
.analytics-period-nav{display:grid;place-items:center;min-width:32px;height:36px;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:19px;line-height:1;cursor:pointer}
.analytics-period-nav:hover:not(:disabled){border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:var(--brand-faint);color:var(--brand)}
.analytics-period-nav:disabled{opacity:.35;cursor:default}
.analytics-toolbar>.analytics-custom-range{grid-column:1/-1}
@media (orientation:landscape) and (min-width:700px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:160px minmax(220px,260px) minmax(0,1fr)}
  [data-view="analytics"] .analytics-toolbar>.analytics-custom-range{grid-column:1/-1}
  [data-view="analytics"] .analytics-period-copy{grid-column:1/-1;display:flex;justify-content:space-between}
}
@media (orientation:portrait){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:minmax(130px,170px) minmax(0,1fr)}
  [data-view="analytics"] .analytics-toolbar>.analytics-custom-range{grid-column:1/-1}
}
@media (orientation:portrait) and (max-width:520px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:1fr}
  [data-view="analytics"] .analytics-toolbar>.analytics-custom-range{grid-column:1}
  [data-view="analytics"] .analytics-scope-toggle{max-width:none}
}

/* Avero v3.3.0 · Analytics Trends & Exploration */
[data-view="analytics"]{min-width:0;overflow-x:clip}
.analytics-trend-head{align-items:flex-start;gap:12px;flex-wrap:wrap}.analytics-trend-head>div:first-child{min-width:160px;flex:1}
.analytics-chart-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0;flex-wrap:wrap}
.analytics-metric-toggle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:min(300px,100%);padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.analytics-metric-toggle button{min-width:0;min-height:30px;padding:5px 8px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:8.2px;font-weight:800;white-space:nowrap;cursor:pointer}
.analytics-metric-toggle button.active{background:var(--surface);color:var(--brand);box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 8%,transparent)}
.analytics-metric-toggle button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,transparent);outline-offset:2px}
.analytics-granularity-select select{min-width:106px;max-width:125px;min-height:36px}
[data-view="analytics"] .analytics-trend-chart,[data-view="analytics"] .analytics-category-trend-chart{display:block!important;width:100%;min-width:0;max-width:100%;height:210px;padding:8px 0 0;overflow:hidden!important;border-bottom:1px solid var(--line)}
.analytics-chart-note{margin-top:8px;color:var(--muted);font-size:8px;line-height:1.45}
.analytics-adaptive-bars{width:100%;height:100%;display:grid;align-items:end;gap:5px;min-width:0}
.analytics-adaptive-barpoint{height:100%;min-width:0;display:grid;grid-template-rows:1fr auto auto;gap:4px;align-items:end;text-align:center}
.analytics-adaptive-barwell{height:100%;display:flex;align-items:end;justify-content:center;min-width:0}
.analytics-adaptive-barwell .analytics-series{display:block;width:min(20px,58%);min-height:2px;border-radius:7px 7px 2px 2px;background:var(--brand)}
.analytics-adaptive-barwell .analytics-series--income{background:var(--green)}.analytics-adaptive-barwell .analytics-series--expense{background:var(--red)}.analytics-adaptive-barwell .analytics-series--category{background:var(--brand)}.analytics-adaptive-barwell .analytics-series.negative{background:var(--red)}
.analytics-adaptive-barpoint small{min-width:0;font-size:7.3px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-adaptive-barpoint span{min-width:0;font-size:7px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-adaptive-barpoint span.negative{color:var(--red)}
.analytics-line-wrap{width:100%;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:4px;min-width:0;overflow:hidden}
.analytics-line-chart{display:block;width:100%;height:100%;min-width:0;overflow:visible}.analytics-line-chart polyline{fill:none;stroke:var(--brand);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.analytics-line-chart circle{fill:var(--surface);stroke:var(--brand);stroke-width:4;vector-effect:non-scaling-stroke}.analytics-line-chart--income polyline,.analytics-line-chart--income circle{stroke:var(--green)}.analytics-line-chart--expense polyline,.analytics-line-chart--expense circle{stroke:var(--red)}.analytics-line-chart--category polyline,.analytics-line-chart--category circle{stroke:var(--brand)}.analytics-zero-line{stroke:var(--line);stroke-width:2;stroke-dasharray:8 8;vector-effect:non-scaling-stroke}
.analytics-line-labels{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0}.analytics-line-labels span{min-width:0;max-width:90px;font-size:7.3px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analytics-wallet-list{min-width:0}.analytics-wallet-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;min-width:0}.analytics-wallet-main{display:grid;gap:5px;min-width:0}.analytics-wallet-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}.analytics-wallet-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-wallet-title span{flex:0 0 auto;font-size:7.5px;color:var(--muted);font-weight:800}.analytics-wallet-share{height:5px;border-radius:99px;background:var(--surface-3);overflow:hidden}.analytics-wallet-share i{display:block;height:100%;border-radius:inherit;background:var(--brand)}.analytics-wallet-values{display:grid;justify-items:end;gap:2px;min-width:105px}.analytics-wallet-values>small{font-size:7.2px;color:var(--muted)}.analytics-wallet-values>strong{font-size:10.5px}.analytics-wallet-values>b{font-size:8.2px;color:var(--green);white-space:nowrap}.analytics-wallet-values>b.negative{color:var(--red)}.analytics-wallet-values em{font-style:normal;color:var(--muted);font-weight:650}
@media(max-width:620px){
  .analytics-trend-head{display:grid!important;grid-template-columns:1fr;gap:7px}.analytics-chart-controls{display:grid;grid-template-columns:1fr auto;gap:5px;width:100%}.analytics-metric-toggle{min-width:0;width:100%}.analytics-granularity-select select{min-width:96px;max-width:110px}.analytics-metric-toggle button{font-size:7.4px;padding-inline:4px}
  [data-view="analytics"] .analytics-trend-chart,[data-view="analytics"] .analytics-category-trend-chart{height:185px}.analytics-adaptive-bars{gap:2px}.analytics-adaptive-barwell .analytics-series{width:min(13px,55%)}.analytics-adaptive-barpoint small{font-size:6.5px}.analytics-adaptive-barpoint span{font-size:6.2px}.analytics-line-labels span{font-size:6.7px;max-width:56px}
  .analytics-wallet-row{gap:7px;padding:9px}.analytics-wallet-main small{font-size:7.4px!important}.analytics-wallet-values{min-width:86px}.analytics-wallet-values>strong{font-size:9.4px}.analytics-wallet-values>b{font-size:7.4px}
}
@media(max-width:390px){.analytics-chart-controls{grid-template-columns:1fr}.analytics-granularity-select select{width:100%;max-width:none}.analytics-wallet-row{grid-template-columns:minmax(0,1fr)}.analytics-wallet-values{grid-template-columns:auto auto;justify-items:start;align-items:baseline;min-width:0}.analytics-wallet-values>small{grid-column:1/-1}.analytics-wallet-values>b{justify-self:end}}

/* Avero v3.4.0 · Analytics Drill-down & Transaction Intelligence */
.analytics-panel--intelligence,.analytics-panel--heatmap{min-width:0}
.analytics-intelligence-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0}
.analytics-intelligence-card{min-width:0;min-height:88px;display:grid;align-content:start;gap:4px;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--ink);text-align:left;font:inherit;cursor:pointer}
.analytics-intelligence-card:hover:not(:disabled),.analytics-anomaly-row:hover,.analytics-heat-cell:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:color-mix(in srgb,var(--brand-faint) 55%,var(--surface-2))}
.analytics-intelligence-card:disabled{opacity:1;cursor:default}
.analytics-intelligence-card small{font-size:7.5px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.analytics-intelligence-card strong{min-width:0;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-intelligence-card span{min-width:0;font-size:8px;color:var(--muted);line-height:1.4;overflow:hidden;text-overflow:ellipsis}
.analytics-anomaly-block{display:grid;gap:7px;margin-top:11px;padding-top:10px;border-top:1px solid var(--line)}.analytics-subsection-title{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.analytics-subsection-title strong{font-size:10px}.analytics-subsection-title small{font-size:7.8px;color:var(--muted);text-align:right;line-height:1.4}
.analytics-anomaly-list{display:grid;gap:6px}.analytics-anomaly-row{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--ink);text-align:left;font:inherit;cursor:pointer}.analytics-anomaly-row>div{min-width:0;display:grid;gap:2px}.analytics-anomaly-row strong{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-anomaly-row small{font-size:7.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-anomaly-row>b{font-size:9.5px;white-space:nowrap}
.analytics-heatmap-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:5px;text-align:center}.analytics-heatmap-weekdays span{font-size:7px;color:var(--muted);font-weight:800;text-transform:uppercase}
.analytics-heatmap{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;min-width:0}.analytics-heat-cell{min-width:0;aspect-ratio:1.18/1;display:grid;align-content:space-between;gap:2px;padding:6px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--ink);font:inherit;text-align:left;cursor:pointer;overflow:hidden}.analytics-heat-cell span{font-size:8px;font-weight:850}.analytics-heat-cell small{min-width:0;font-size:6.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-2)}
.analytics-heat-cell--1{background:color-mix(in srgb,var(--red) 14%,var(--surface-2))}.analytics-heat-cell--2{background:color-mix(in srgb,var(--red) 25%,var(--surface-2))}.analytics-heat-cell--3{background:color-mix(in srgb,var(--red) 40%,var(--surface-2))}.analytics-heat-cell--4{background:color-mix(in srgb,var(--red) 58%,var(--surface-2));border-color:color-mix(in srgb,var(--red) 55%,var(--line))}
.analytics-heatmap-legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:8px;color:var(--muted);font-size:7px}.analytics-heatmap-legend i{width:12px;height:12px;border:1px solid var(--line);border-radius:3px;background:var(--surface-2)}.analytics-heatmap-legend i[data-level="1"]{background:color-mix(in srgb,var(--red) 14%,var(--surface-2))}.analytics-heatmap-legend i[data-level="2"]{background:color-mix(in srgb,var(--red) 25%,var(--surface-2))}.analytics-heatmap-legend i[data-level="3"]{background:color-mix(in srgb,var(--red) 40%,var(--surface-2))}.analytics-heatmap-legend i[data-level="4"]{background:color-mix(in srgb,var(--red) 58%,var(--surface-2))}
.analytics-open-history{width:100%;margin-top:10px}
@media(orientation:landscape) and (min-width:760px){.analytics-panel--intelligence,.analytics-panel--heatmap{grid-column:1/-1}}
@media(max-width:900px){.analytics-intelligence-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.analytics-intelligence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-intelligence-card{min-height:82px;padding:9px}.analytics-subsection-title{align-items:flex-start;flex-direction:column;gap:3px}.analytics-subsection-title small{text-align:left}.analytics-heatmap{gap:3px}.analytics-heatmap-weekdays{gap:3px}.analytics-heat-cell{padding:4px;border-radius:7px}.analytics-heat-cell small{font-size:5.8px}.analytics-heatmap-legend{justify-content:flex-start}}
@media(max-width:390px){.analytics-intelligence-grid{grid-template-columns:1fr 1fr}.analytics-heat-cell small{display:none}.analytics-heat-cell{aspect-ratio:1/1}}

/* Avero v3.5.0 · Analytics Summary & Comparison */
.analytics-display-control{display:grid;gap:4px;min-width:0}
.analytics-display-control>span{font-size:8.5px;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.analytics-display-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:36px;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.analytics-display-toggle button{min-width:0;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:9px;font-weight:800;cursor:pointer}
.analytics-display-toggle button.active{background:var(--surface);color:var(--brand);box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 8%,transparent)}
.analytics-display-toggle button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,transparent);outline-offset:2px}
.analytics-summary-panel{display:grid;gap:9px;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);min-width:0}
.analytics-summary-head{margin-bottom:0}.analytics-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}
.analytics-summary-grid>article{display:grid;align-content:start;gap:4px;min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.analytics-summary-grid small{font-size:7.3px;color:var(--muted);font-weight:850;text-transform:uppercase;letter-spacing:.05em}.analytics-summary-grid strong{min-width:0;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-summary-grid span{min-width:0;font-size:8px;color:var(--muted);line-height:1.4;overflow:hidden;text-overflow:ellipsis}
.analytics-panel--changes{grid-column:1/-1;min-width:0}.analytics-change-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0}
.analytics-change-row{width:100%;min-width:0;display:grid;grid-template-columns:7px minmax(0,1fr);gap:9px;align-items:start;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--ink);font:inherit;text-align:left}
.analytics-change-row:disabled{opacity:1;cursor:default}.analytics-change-row:not(:disabled){cursor:pointer}.analytics-change-row:not(:disabled):hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:color-mix(in srgb,var(--brand-faint) 55%,var(--surface-2))}
.analytics-change-indicator{width:7px;height:7px;margin-top:3px;border-radius:50%;background:var(--muted)}.analytics-change-row--positive .analytics-change-indicator{background:var(--green)}.analytics-change-row--negative .analytics-change-indicator{background:var(--red)}
.analytics-change-row>div{display:grid;gap:3px;min-width:0}.analytics-change-row strong{font-size:9.5px;line-height:1.35}.analytics-change-row small{font-size:7.8px;color:var(--muted);line-height:1.4}
[data-view="analytics"].analytics-view--compact [data-analytics-detail-only]{display:none!important}
@media (orientation:landscape) and (min-width:700px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:145px 145px minmax(240px,1fr)}
  [data-view="analytics"] .analytics-period-control{grid-column:auto}
  [data-view="analytics"] .analytics-period-copy{grid-column:1/-1}
}
@media (orientation:portrait) and (min-width:521px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:minmax(130px,170px) minmax(130px,170px)}
  [data-view="analytics"] .analytics-period-control{grid-column:1/-1}
}
@media(max-width:620px){
  .analytics-summary-grid{gap:5px}.analytics-summary-grid>article{padding:8px}.analytics-summary-grid small{font-size:6.5px}.analytics-summary-grid strong{font-size:9px}.analytics-summary-grid span{font-size:7px}
  .analytics-change-list{grid-template-columns:1fr}.analytics-change-row{padding:9px 10px}
}
@media(max-width:390px){.analytics-summary-grid{grid-template-columns:1fr}.analytics-summary-grid>article{grid-template-columns:minmax(0,1fr) auto;align-items:center}.analytics-summary-grid>article small{grid-column:1/-1}.analytics-summary-grid>article span{text-align:right}}


/* Avero v3.6.0 · Planning Hub 2.0 + App Controls Overlap Fix */
.app-shell{position:relative}
/* Header controls belong to the page header region, not the scroll viewport.
   They therefore scroll away with content and can no longer cover charts,
   heatmaps, dropdowns, or Planning Hub controls. */
.app-controls{position:absolute!important}

.planning-hub-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 12px}
.planning-hub-actions button{min-width:0;min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink-2)}
.planning-hub-actions button:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--line));background:var(--brand-faint)}
.planning-hub-actions span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:var(--brand-soft);color:var(--brand);font-weight:900}
.planning-hub-actions strong{max-width:100%;font-size:8.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.planning-hub-overview,.planning-hub-panel,.planning-calendar-card{min-width:0;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:0 6px 22px rgba(32,51,84,.035)}
.planning-hub-overview{padding:13px;margin-bottom:11px;background:linear-gradient(145deg,var(--surface),var(--brand-faint))}
.planning-hub-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.planning-hub-section-head>div{display:grid;gap:2px;min-width:0}.planning-hub-section-head>div>span{font-size:7.3px;font-weight:850;letter-spacing:.08em;color:var(--brand-2)}
.planning-hub-section-head strong{font-size:12.5px}.planning-hub-section-head small{font-size:8.8px;line-height:1.4;color:var(--muted)}
.planning-hub-section-head--action{padding-bottom:10px;border-bottom:1px solid var(--line)}
.planning-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.planning-overview-card{min-width:0;display:grid;align-content:start;gap:4px;min-height:100px;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--ink);text-align:left}
.planning-overview-card:hover{border-color:color-mix(in srgb,var(--brand) 40%,var(--line))}
.planning-overview-card small{font-size:7.3px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.planning-overview-card strong{min-width:0;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning-overview-card span{font-size:8px;color:var(--muted);line-height:1.35}
.planning-overview-card--accent{background:linear-gradient(145deg,var(--surface-2),var(--brand-faint))}
.planning-hub-progress{height:5px;margin-top:auto;border-radius:999px;background:var(--line);overflow:hidden}.planning-hub-progress b{display:block;width:0;height:100%;border-radius:inherit;background:var(--brand);transition:width .2s ease}.planning-hub-progress--green b{background:var(--green)}

.planning-hub-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.planning-hub-panel{padding:13px}.planning-hub-panel--wide{grid-column:1/-1}
.planning-hub-kpis{display:grid;gap:7px;margin-bottom:9px}.planning-hub-kpis--3{grid-template-columns:repeat(3,minmax(0,1fr))}.planning-hub-kpis--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.planning-hub-kpis>div{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}
.planning-hub-kpis small{font-size:7px;color:var(--muted);text-transform:uppercase;font-weight:800}.planning-hub-kpis strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.planning-hub-caption{margin:0 0 8px;font-size:8.3px;line-height:1.4;color:var(--muted)}
.planning-hub-mini-list{display:grid;gap:6px}.planning-mini-row{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);text-align:left}
.planning-mini-row:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}.planning-mini-row>span{display:grid;gap:2px;min-width:0}.planning-mini-row strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning-mini-row small{font-size:7.3px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning-mini-row>b{font-size:8.5px;white-space:nowrap}.planning-hub-empty{padding:9px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:8px}
.planning-future-budget-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;padding:8px 9px;border:1px dashed var(--line);border-radius:10px;background:var(--surface-2)}.planning-future-budget-summary>span{display:grid;gap:1px}.planning-future-budget-summary small{font-size:7.2px;color:var(--muted)}.planning-future-budget-summary strong{font-size:8.8px}.planning-future-budget-summary>small{text-align:right;max-width:64%}

.planning-window-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:9px}.planning-window-grid article{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.planning-window-grid small{font-size:7px;color:var(--muted);text-transform:uppercase;font-weight:800}.planning-window-grid strong{font-size:11px}.planning-window-grid span{font-size:7.5px;color:var(--muted);line-height:1.4}.planning-window-grid em{font-size:8px;font-style:normal;font-weight:800;color:var(--ink-2)}.planning-window-card--overdue{background:color-mix(in srgb,var(--red) 4%,var(--surface-2))}

.planning-projection-panel{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--brand-faint) 55%,var(--surface)))}
.planning-projection-hero{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:8px;margin-bottom:9px}.planning-projection-hero>div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.planning-projection-hero small{font-size:7px;color:var(--muted);text-transform:uppercase;font-weight:800}.planning-projection-hero strong{font-size:12px}.planning-projection-primary{background:var(--brand-faint)!important;border-color:color-mix(in srgb,var(--brand) 30%,var(--line))!important}.planning-projection-primary strong{font-size:15px;color:var(--brand)}.planning-projection-primary span{font-size:7.5px;color:var(--muted)}

.planning-calendar-card{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;color:var(--ink);text-align:left}.planning-calendar-card:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--line));background:var(--brand-faint)}.planning-calendar-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--brand-soft);color:var(--brand);font-weight:900}.planning-calendar-card>span:nth-child(2){display:grid;gap:3px;min-width:0}.planning-calendar-card small{font-size:7px;font-weight:850;letter-spacing:.07em;color:var(--brand-2)}.planning-calendar-card strong{font-size:11px}.planning-calendar-card em{font-size:8px;line-height:1.4;color:var(--muted);font-style:normal}.planning-calendar-card>b{color:var(--muted)}

.tone-good{color:var(--green)!important}

@media(max-width:900px){
  .planning-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-hub-layout{grid-template-columns:1fr}.planning-hub-panel--wide{grid-column:auto}
}
@media(max-width:620px){
  .planning-hub-actions{gap:5px}.planning-hub-actions button{min-height:56px;padding-inline:2px}.planning-hub-actions strong{font-size:7.5px}.planning-hub-actions span{width:26px;height:26px}
  .planning-hub-overview,.planning-hub-panel{padding:10px}.planning-overview-grid{gap:6px}.planning-overview-card{min-height:91px;padding:9px}.planning-overview-card strong{font-size:10px}.planning-overview-card span{font-size:7.2px}
  .planning-hub-section-head--action{align-items:flex-start;flex-direction:column}.planning-hub-section-head--action .compact-button{width:100%}
  .planning-window-grid{grid-template-columns:1fr}.planning-projection-hero{grid-template-columns:1fr 1fr}.planning-projection-primary{grid-column:1/-1;grid-row:1}.planning-hub-kpis--3{grid-template-columns:1fr 1fr}.planning-hub-kpis--3>div:last-child{grid-column:1/-1}
  .planning-calendar-card{grid-template-columns:38px minmax(0,1fr) auto;padding:10px}.planning-calendar-icon{width:36px;height:36px}
}
@media(max-width:390px){
  .planning-hub-actions strong{font-size:6.8px}.planning-overview-grid{grid-template-columns:1fr}.planning-future-budget-summary{align-items:flex-start;flex-direction:column}.planning-future-budget-summary>small{max-width:none;text-align:left}.planning-hub-kpis--2{grid-template-columns:1fr}
}

/* v3.6.1 — Analytics filter simplification */
[data-view="analytics"] .analytics-toolbar{
  grid-template-columns:minmax(130px,170px) minmax(130px,170px) minmax(180px,240px);
  align-items:end;
}
[data-view="analytics"] .analytics-period-control{display:grid;gap:4px;min-width:0}
[data-view="analytics"] .analytics-period-control>select{min-width:0}
[data-view="analytics"] .analytics-period-active{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 32px auto;
  gap:8px;
  align-items:center;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--surface-2);
}
[data-view="analytics"] .analytics-period-active-copy{display:grid;gap:2px;min-width:0;text-align:center}
[data-view="analytics"] .analytics-period-active-copy small{
  font-size:8px;
  color:var(--muted);
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.06em;
}
[data-view="analytics"] .analytics-period-active-copy strong{font-size:11px;white-space:normal}
[data-view="analytics"] .analytics-period-current{
  min-height:32px;
  padding:6px 10px;
  white-space:nowrap;
  font-size:9px;
}
[data-view="analytics"] .analytics-period-copy{
  grid-column:1/-1;
  display:block;
  padding-top:0;
  text-align:center;
}
[data-view="analytics"] .analytics-period-copy small{display:block;text-align:center}
[data-view="analytics"] .analytics-custom-range[hidden],
[data-view="analytics"] .analytics-period-current[hidden],
[data-view="analytics"] .analytics-period-nav[hidden]{display:none!important}
[data-view="analytics"] .analytics-toolbar>.analytics-custom-range{grid-column:1/-1}

@media (orientation:portrait) and (max-width:900px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}
  [data-view="analytics"] .analytics-period-control{grid-column:1/-1}
}
@media (max-width:520px){
  [data-view="analytics"] .analytics-toolbar{grid-template-columns:1fr}
  [data-view="analytics"] .analytics-period-control,
  [data-view="analytics"] .analytics-period-active,
  [data-view="analytics"] .analytics-period-copy,
  [data-view="analytics"] .analytics-toolbar>.analytics-custom-range{grid-column:1}
  [data-view="analytics"] .analytics-period-active{
    grid-template-columns:32px minmax(0,1fr) 32px;
  }
  [data-view="analytics"] .analytics-period-current{
    grid-column:1/-1;
    width:100%;
  }
  [data-view="analytics"] .analytics-period-copy small{text-align:center}
}



/* v3.6.2 — Analytics filter responsive fix */
[data-view="analytics"] .analytics-period-active--static{
  grid-template-columns:minmax(0,1fr);
}
[data-view="analytics"] .analytics-period-active--static .analytics-period-active-copy{
  grid-column:1;
  min-width:0;
}
[data-view="analytics"] .analytics-period-active--static .analytics-period-active-copy strong{
  overflow-wrap:anywhere;
}
@media (orientation:landscape) and (min-width:700px){
  [data-view="analytics"] .analytics-toolbar{
    grid-template-columns:minmax(105px,145px) minmax(105px,145px) minmax(150px,210px) minmax(220px,1fr);
    align-items:end;
  }
  [data-view="analytics"] .analytics-period-control,
  [data-view="analytics"] .analytics-period-active{grid-column:auto}
  [data-view="analytics"] .analytics-period-active{
    min-width:0;
  }
  [data-view="analytics"] .analytics-period-active-copy strong{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  [data-view="analytics"] .analytics-period-active--static .analytics-period-active-copy strong{
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
  }
  [data-view="analytics"] .analytics-toolbar>.analytics-custom-range,
  [data-view="analytics"] .analytics-period-copy{grid-column:1/-1}
}
@media (orientation:landscape) and (min-width:700px) and (max-width:900px){
  [data-view="analytics"] .analytics-toolbar{
    grid-template-columns:minmax(95px,120px) minmax(95px,120px) minmax(140px,180px) minmax(190px,1fr);
    gap:8px;
  }
  [data-view="analytics"] .analytics-period-active{padding-inline:8px;gap:6px}
  [data-view="analytics"] .analytics-period-current{padding-inline:8px}
}

/* Avero v3.7.0 · Financial Health 2.0 */
.health-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;min-width:0}
.health-signal-panel{min-width:0;margin:0}.health-signal-panel .section-title{align-items:flex-start}.health-signal-panel .section-title>b{display:grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);font-size:10px;color:var(--muted)}
.health-signal-panel--attention .section-title>b{background:var(--red-soft);color:var(--red);border-color:color-mix(in srgb,var(--red) 24%,var(--line))}.health-signal-panel--positive .section-title>b{background:var(--green-soft);color:var(--green);border-color:color-mix(in srgb,var(--green) 24%,var(--line))}
.health-signal-list{display:grid;gap:7px}.health-signal{display:grid;grid-template-columns:7px minmax(0,1fr);gap:9px;align-items:start;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.health-signal>i{width:7px;height:7px;margin-top:4px;border-radius:999px;background:var(--muted)}.health-signal>div{display:grid;gap:3px;min-width:0}.health-signal strong{font-size:10px;line-height:1.35;overflow-wrap:anywhere}.health-signal small{font-size:8.7px;line-height:1.45;color:var(--muted);overflow-wrap:anywhere}.health-signal--good>i{background:var(--green)}.health-signal--watch>i{background:var(--brand)}.health-signal--risk>i{background:var(--red)}
.health-score-history-panel{min-width:0;margin-bottom:12px;overflow:hidden}.health-score-history-head{align-items:center}.health-history-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;min-width:148px;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.health-history-range button{min-width:0;height:30px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:8.5px;font-weight:850;cursor:pointer;white-space:nowrap}.health-history-range button.active,.health-history-range button[aria-pressed="true"]{background:var(--surface);color:var(--brand);box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 8%,transparent)}.health-history-range button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 65%,transparent);outline-offset:2px}
.health-score-history-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:9px 0}.health-score-history-meta>span{display:grid;gap:3px;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.health-score-history-meta small{font-size:7.5px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.health-score-history-meta strong{min-width:0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.health-score-history-scroll{width:100%;min-width:0;overflow:hidden;padding:2px 0 3px}.health-score-history-chart{width:100%;min-width:0;height:178px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);overflow:hidden}.health-score-history-chart svg{display:block;width:100%;height:100%}.health-score-grid-line{stroke:var(--line);stroke-width:1}.health-score-grid-label,.health-score-month-label,.health-score-point-label{fill:var(--muted);font-family:inherit;font-size:7px}.health-score-line{fill:none;stroke:var(--brand);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.health-score-point{fill:var(--surface);stroke:var(--brand);stroke-width:2}.health-score-point--good{stroke:var(--green)}.health-score-point--watch{stroke:var(--brand)}.health-score-point--risk{stroke:var(--red)}.health-score-point--low{stroke-dasharray:2 2}.health-score-empty-label{fill:var(--muted);font-family:inherit;font-size:9px}.health-score-history-note{margin:8px 1px 0;font-size:8px;line-height:1.5;color:var(--muted)}
@media(max-width:700px){.health-signal-grid{grid-template-columns:1fr}.health-score-history-head{align-items:flex-start;flex-direction:column;gap:8px}.health-history-range{width:100%;min-width:0}.health-score-history-chart{width:100%;min-width:0}}
@media(max-width:420px){.health-score-history-meta{grid-template-columns:1fr 1fr}.health-score-history-meta>span:last-child{grid-column:1/-1}.health-score-history-chart{width:100%;min-width:0}.health-signal{padding:8px 9px}}
@media(orientation:landscape) and (min-width:760px){.health-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-score-history-chart{min-width:0}}
/* v3.7 history SVG class contract */
.health-history-gridline{stroke:var(--line);stroke-width:1}.health-history-y,.health-history-label,.health-history-score,.health-history-missing{fill:var(--muted);font-family:inherit;font-size:7px}.health-history-line{fill:none;stroke:var(--brand);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.health-history-point circle{fill:var(--surface);stroke:var(--brand);stroke-width:2}.health-history-point--good circle{stroke:var(--green)}.health-history-point--watch circle{stroke:var(--brand)}.health-history-point--risk circle{stroke:var(--red)}.health-history-point--limited circle{stroke-dasharray:2 2}.health-history-score{font-size:7.5px;font-weight:850;fill:var(--ink)}.health-history-label{font-size:7.2px}.health-history-missing{font-size:11px}

/* Avero v3.9.0 · Reporting period controls + final UI stabilization */
.modal-sheet--reporting{width:min(980px,calc(100vw - 24px));max-height:min(92dvh,920px)}
.reporting-period-shell{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr);gap:9px;align-items:end;min-width:0}
.reporting-period-control{display:grid;gap:5px;min-width:0}.reporting-period-control>span{font-size:9px;color:var(--muted);font-weight:700}.reporting-period-control>select{min-width:0}
.reporting-period-active{display:grid;grid-template-columns:36px minmax(0,1fr) 36px auto;gap:8px;align-items:center;min-width:0;min-height:43px;padding:6px 8px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.reporting-period-active-copy{display:grid;gap:2px;min-width:0;text-align:center}.reporting-period-active-copy small{font-size:7.7px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.reporting-period-active-copy strong{min-width:0;font-size:10.5px;line-height:1.25;overflow-wrap:anywhere}
.reporting-period-nav{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:19px;line-height:1;cursor:pointer}.reporting-period-nav:hover:not(:disabled){border-color:color-mix(in srgb,var(--brand) 45%,var(--line));background:var(--brand-faint);color:var(--brand)}.reporting-period-nav:disabled{opacity:.35;cursor:default}.reporting-period-nav:focus-visible,.reporting-period-current:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 70%,transparent);outline-offset:2px}
.reporting-period-current{min-height:34px;padding:5px 9px;white-space:nowrap;font-size:8.5px}.reporting-period-active--static{grid-template-columns:minmax(0,1fr)}.reporting-period-active--static .reporting-period-active-copy{grid-column:1}
.reporting-custom-range{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.reporting-custom-range[hidden],.reporting-period-nav[hidden],.reporting-period-current[hidden]{display:none!important}
.reporting-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.reporting-filter-grid label{min-width:0}
.reporting-form>.primary-button{width:100%}
@media(max-width:720px){.modal-sheet--reporting{width:100%;max-height:94dvh}.reporting-period-shell{grid-template-columns:1fr}.reporting-period-active,.reporting-custom-range{grid-column:1}.reporting-filter-grid{grid-template-columns:1fr}.reporting-section-title{align-items:flex-start}.reporting-section-title>span{font-size:9px}.reporting-period-current{grid-column:1/-1;width:100%}}
@media(max-width:420px){.reporting-period-active{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}.reporting-period-current{grid-column:1/-1}.reporting-custom-range{grid-template-columns:1fr}.reporting-section-title{flex-direction:column;align-items:flex-start;gap:6px}}
@media(orientation:landscape) and (min-width:700px) and (max-height:620px){.modal-sheet--reporting{max-height:94dvh}.modal-sheet--reporting .modal-body{padding-top:10px}.reporting-hero{padding:12px}.reporting-warning{padding:9px 11px}.reporting-section{margin-top:14px;padding-top:14px}}

/* v4.0 — Data Truth: wallet reconciliation + monthly closing */
.modal-sheet--truth{width:min(940px,calc(100vw - 24px));max-height:min(92dvh,920px)}
.modal-sheet--truth-form{max-width:700px}
.truth-shell,.truth-section,.truth-list,.truth-closing-list,.truth-reconcile-form,.truth-close-preview{display:grid;gap:12px;min-width:0}
.truth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
.truth-tabs button{min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:10px;font-weight:850;cursor:pointer}
.truth-tabs button.active{background:var(--surface);color:var(--brand);box-shadow:0 1px 6px rgba(21,45,78,.08)}
.truth-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 17px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,var(--surface-2),color-mix(in srgb,var(--brand) 7%,var(--surface)))}
.truth-hero>div{display:grid;gap:4px;min-width:0}.truth-hero span{font-size:7.5px;font-weight:900;letter-spacing:.12em;color:var(--brand)}.truth-hero strong{font-size:13px;line-height:1.25}.truth-hero p{margin:0;max-width:680px;font-size:9px;line-height:1.55;color:var(--muted)}
.truth-hero>b{display:grid;place-items:center;min-width:54px;height:54px;padding:0 10px;border-radius:16px;background:color-mix(in srgb,var(--brand) 11%,var(--surface));color:var(--brand);font-size:14px}
.truth-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.truth-summary-grid>div,.truth-close-grid>div{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}
.truth-summary-grid small,.truth-close-grid small{font-size:8px;color:var(--muted)}.truth-summary-grid strong,.truth-close-grid strong{font-size:12px;overflow-wrap:anywhere}
.truth-wallet-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.55fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}
.truth-wallet-main,.truth-wallet-balance{display:grid;gap:3px;min-width:0}.truth-wallet-title{display:flex;align-items:center;gap:8px;min-width:0}.truth-wallet-title strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truth-wallet-title span,.truth-closing-head>span{display:inline-flex;align-items:center;width:max-content;padding:3px 7px;border-radius:999px;font-size:7px;font-weight:900}
.truth-wallet-title span[data-tone="good"],.truth-closing-head>span[data-tone="good"]{background:color-mix(in srgb,#12a46f 13%,transparent);color:#0b8359}.truth-wallet-title span[data-tone="watch"]{background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand)}.truth-closing-head>span[data-tone="risk"]{background:color-mix(in srgb,var(--danger,#d94b4b) 12%,transparent);color:var(--danger,#c83f3f)}.truth-wallet-title span[data-tone="neutral"],.truth-closing-head>span[data-tone="neutral"]{background:var(--surface-2);color:var(--muted)}
.truth-wallet-main small,.truth-wallet-balance small{font-size:8px;color:var(--muted)}.truth-wallet-balance strong{font-size:11px}.truth-wallet-action,.truth-closing-action{min-height:36px;padding:7px 10px;white-space:nowrap}
.truth-empty{display:grid;gap:3px;padding:18px;border:1px dashed var(--line);border-radius:14px;text-align:center;color:var(--muted)}.truth-empty strong{font-size:11px}.truth-empty span{font-size:9px}
.truth-closing-note,.truth-write-warning,.truth-close-warning{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.truth-closing-note strong,.truth-write-warning strong,.truth-close-warning strong{font-size:9.5px}.truth-closing-note span,.truth-write-warning span,.truth-close-warning span{font-size:8.5px;line-height:1.45;color:var(--muted)}
.truth-closing-row{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.truth-closing-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.truth-closing-head>div{display:grid;gap:2px;min-width:0}.truth-closing-head strong{font-size:11px}.truth-closing-head small{font-size:8px;color:var(--muted)}
.truth-closing-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.truth-closing-metrics>span{display:grid;align-content:start;gap:2px;padding:8px 9px;border-radius:11px;background:var(--surface-2);min-width:0}.truth-closing-metrics small{font-size:7.5px;color:var(--muted)}.truth-closing-metrics b{font-size:9.5px;line-height:1.25;overflow-wrap:anywhere}.truth-closing-metrics em{font-style:normal;font-size:6.8px;line-height:1.25;color:var(--muted);overflow-wrap:anywhere}.truth-closing-metrics .truth-closing-unavailable{font-size:8.5px;color:var(--muted)}
.truth-closing-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.truth-closing-foot>small{font-size:8px;line-height:1.45;color:var(--muted)}
.truth-reconcile-form label,.truth-close-preview form label{display:grid;gap:5px;font-size:9px;font-weight:800;color:var(--muted)}.truth-reconcile-form label>span,.truth-close-preview form label>span{font-weight:600}.truth-reconcile-form input,.truth-close-preview input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:12px;padding:9px 11px;background:var(--surface-2);color:var(--ink);font:inherit;font-size:11px;outline:none}.truth-reconcile-form input:focus,.truth-close-preview input:focus{border-color:color-mix(in srgb,var(--brand) 60%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 9%,transparent)}
.truth-reconcile-wallet{display:grid;grid-template-columns:1fr 1fr;gap:8px}.truth-reconcile-wallet>div{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.truth-reconcile-wallet small{font-size:8px;color:var(--muted)}.truth-reconcile-wallet strong{font-size:12px}
.truth-diff{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.truth-diff strong{font-size:10px}.truth-diff span{font-size:8.5px;line-height:1.45;color:var(--muted)}.truth-diff[data-tone="good"]{border-color:color-mix(in srgb,#12a46f 35%,var(--line));background:color-mix(in srgb,#12a46f 6%,var(--surface))}.truth-diff[data-tone="watch"]{border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}.truth-diff[data-tone="risk"]{border-color:color-mix(in srgb,var(--danger,#d94b4b) 35%,var(--line))}
.truth-close-status{display:grid;gap:3px;padding:14px 15px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.truth-close-status span{font-size:7.5px;font-weight:900;letter-spacing:.1em;color:var(--brand)}.truth-close-status strong{font-size:13px}.truth-close-status small{font-size:8.5px;line-height:1.45;color:var(--muted)}.truth-close-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.truth-reopen{display:grid;gap:9px}.truth-reopen>strong{font-size:13px}.truth-reopen p{margin:0;font-size:9px;line-height:1.55;color:var(--muted)}.truth-reopen>div{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.danger-button{min-height:38px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--danger,#d94b4b) 38%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--danger,#d94b4b) 8%,var(--surface));color:var(--danger,#c83f3f);font:inherit;font-size:9px;font-weight:850;cursor:pointer}

@media(max-width:680px){
  .modal-sheet--truth{width:100%;max-height:94dvh}.modal-sheet--truth .modal-body{padding:10px 10px calc(14px + env(safe-area-inset-bottom))}
  .truth-hero{padding:13px 14px}.truth-hero>b{min-width:48px;height:48px;border-radius:14px}.truth-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.truth-summary-grid>div{padding:9px}
  .truth-wallet-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.truth-wallet-balance{grid-column:1}.truth-wallet-action{grid-column:2;grid-row:1/3;align-self:center}
  .truth-closing-foot{grid-template-columns:1fr}.truth-closing-action{width:100%}.truth-closing-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.truth-closing-metrics>span{padding:7px}.truth-tabs button{min-height:38px}
}
@media(max-width:430px){
  .truth-hero{grid-template-columns:1fr}.truth-hero>b{display:none}.truth-summary-grid{grid-template-columns:1fr 1fr}.truth-summary-grid>div:last-child{grid-column:1/-1}.truth-closing-metrics{grid-template-columns:1fr 1fr}.truth-reconcile-wallet,.truth-close-grid{grid-template-columns:1fr}.truth-wallet-row{grid-template-columns:1fr}.truth-wallet-balance,.truth-wallet-action{grid-column:1;grid-row:auto}.truth-wallet-action{width:100%}
}
@media(orientation:landscape) and (min-width:700px) and (max-height:650px){
  .modal-sheet--truth{width:min(1040px,calc(100vw - 28px));max-height:94dvh}.modal-sheet--truth .modal-body{padding-top:9px}.truth-shell,.truth-section{gap:9px}.truth-hero{padding:11px 13px}.truth-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.truth-list,.truth-closing-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.truth-wallet-row{grid-template-columns:minmax(0,1fr) auto;align-content:center}.truth-wallet-balance{grid-column:1}.truth-wallet-action{grid-column:2;grid-row:1/3}.truth-closing-row{align-content:start}.truth-closing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.truth-closing-foot{grid-template-columns:1fr}.truth-closing-action{width:100%}
}

/* v4.0 Part 3 · Monthly Closing review hardening */
.truth-close-grid--review{grid-template-columns:repeat(3,minmax(0,1fr))}
.truth-close-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-width:0}
.truth-close-meta>span{display:grid;gap:2px;min-width:0;padding:8px 9px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}
.truth-close-meta small{font-size:7.5px;color:var(--muted)}
.truth-close-meta strong{min-width:0;font-size:9.5px;line-height:1.3;overflow-wrap:anywhere}
@media(max-width:680px){
  .truth-close-grid--review{grid-template-columns:repeat(2,minmax(0,1fr))}
  .truth-close-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.truth-close-meta>span{padding:7px}
}
@media(max-width:430px){
  .truth-close-grid--review{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.truth-close-grid--review>div{padding:9px}
  .truth-close-meta{grid-template-columns:1fr}.truth-close-meta>span{padding:8px 9px}
  .truth-close-preview{gap:9px}
}
@media(orientation:landscape) and (min-width:700px) and (max-height:650px){
  .truth-close-preview{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:start}
  .truth-close-status,.truth-close-preview>.truth-write-warning,.truth-close-preview>form{grid-column:1/-1}
  .truth-close-grid--review{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .truth-close-meta{grid-template-columns:1fr;gap:5px}
  .truth-close-warning{align-self:stretch}
}

/* v4.1 — Hutang & Piutang lifecycle */
.planning-hub-actions{grid-template-columns:repeat(6,minmax(0,1fr))}
.modal-sheet--obligations{width:min(920px,calc(100vw - 24px));max-height:min(94dvh,920px)}
.obligation-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.obligation-hero>div{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.obligation-hero small{font-size:8px;color:var(--muted)}.obligation-hero strong{font-size:17px;line-height:1.15}.obligation-hero span{font-size:8px;color:var(--muted)}
.obligation-explainer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.obligation-explainer>div{display:grid;gap:2px;padding:9px 10px;border-left:3px solid var(--line);background:var(--surface-2);border-radius:8px}.obligation-explainer>div:last-child{border-left-color:var(--brand)}.obligation-explainer strong{font-size:9px}.obligation-explainer small{font-size:7.6px;color:var(--muted);line-height:1.4}
.obligation-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0}.obligation-filters,.obligation-create-actions{display:flex;gap:6px;flex-wrap:wrap}.obligation-filters button{min-height:31px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:800}.obligation-filters button.active{background:var(--brand-faint);border-color:color-mix(in srgb,var(--brand) 45%,var(--line));color:var(--brand)}
.obligation-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.obligation-card{min-width:0;display:grid;gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.obligation-card--debt{border-top:3px solid color-mix(in srgb,var(--danger,#d94b4b) 70%,var(--line))}.obligation-card--receivable{border-top:3px solid color-mix(in srgb,var(--brand) 70%,var(--line))}.obligation-card--muted{opacity:.72}.obligation-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.obligation-card-head>div{display:grid;gap:2px;min-width:0}.obligation-card-head strong{font-size:11px;overflow-wrap:anywhere}.obligation-card-head small{font-size:8px;color:var(--muted)}.obligation-kind{width:max-content;padding:2px 6px;border-radius:999px;background:var(--surface-2);font-size:6.8px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.obligation-status{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:var(--surface-2);font-size:7px}.obligation-status--active{color:var(--brand)}.obligation-status--settled{color:var(--success,#258b5b)}.obligation-status--cancelled{color:var(--muted)}
.obligation-balance{display:grid;gap:2px}.obligation-balance small,.obligation-meta-grid small{font-size:7.5px;color:var(--muted)}.obligation-balance strong{font-size:16px;line-height:1.1}.obligation-balance span{font-size:7.5px;color:var(--muted)}.obligation-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.obligation-meta-grid>div{display:grid;gap:2px;padding:8px;background:var(--surface-2);border-radius:9px}.obligation-meta-grid strong{font-size:8.5px;overflow-wrap:anywhere}.obligation-default-meta,.obligation-no-history{font-size:7.5px;color:var(--muted)}.obligation-card p{margin:0;font-size:8px;line-height:1.45;color:var(--muted)}
.obligation-history{border-top:1px solid var(--line);padding-top:7px}.obligation-history summary{cursor:pointer;font-size:8px;font-weight:800;color:var(--muted)}.obligation-history summary b{margin-left:3px}.obligation-history>div{display:grid;gap:5px;margin-top:7px}.obligation-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 8px;border-radius:8px;background:var(--surface-2)}.obligation-history-row>span{display:grid;gap:2px;min-width:0}.obligation-history-row>span:last-child{text-align:right}.obligation-history-row strong,.obligation-history-row b{font-size:8px}.obligation-history-row small{font-size:7px;color:var(--muted)}
.obligation-form-grid{display:grid;gap:8px}.obligation-form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.obligation-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.obligation-locked-balance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.obligation-locked-balance>div{display:grid;gap:2px}.obligation-locked-balance>small{grid-column:1/-1;font-size:7.6px;color:var(--muted)}.obligation-locked-balance small{font-size:7.6px;color:var(--muted)}.obligation-locked-balance strong{font-size:12px}.obligation-domain-note{display:grid;gap:2px;padding:9px 10px;border-radius:10px;background:var(--brand-faint);border:1px solid color-mix(in srgb,var(--brand) 20%,var(--line))}.obligation-domain-note strong{font-size:8.5px}.obligation-domain-note small{font-size:7.5px;line-height:1.45;color:var(--muted)}
.obligation-pay-context{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.obligation-pay-context>span{display:grid;gap:2px}.obligation-pay-context>span:last-child{text-align:right}.obligation-pay-context small{font-size:7.5px;color:var(--muted)}.obligation-pay-context strong{font-size:11px}.obligation-pay-context em{font-size:7.5px;color:var(--muted);font-style:normal}
.planning-obligation-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.planning-obligation-summary>div{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.planning-obligation-summary small{font-size:7.3px;color:var(--muted)}.planning-obligation-summary strong{font-size:11px}.planning-obligation-summary>span{grid-column:1/-1;font-size:7.6px;color:var(--muted)}
@media(max-width:680px){.planning-hub-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.modal-sheet--obligations{width:100%;max-height:94dvh}.obligation-list{grid-template-columns:1fr}.obligation-form-grid--3{grid-template-columns:1fr}.obligation-form-grid--2{grid-template-columns:1fr}.obligation-locked-balance{grid-template-columns:1fr}.obligation-locked-balance>small{grid-column:1}.obligation-toolbar{align-items:stretch}.obligation-create-actions{width:100%}.obligation-create-actions>button{flex:1}.obligation-pay-context{align-items:flex-start}.obligation-hero{grid-template-columns:1fr 1fr}}
@media(orientation:landscape) and (min-width:700px) and (max-height:620px){.modal-sheet--obligations{max-height:94dvh}.obligation-list{grid-template-columns:repeat(2,minmax(0,1fr))}.obligation-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v4.1 Part 3 — Planner source separation for Hutang & Piutang */
.decision-source-breakdown{margin-top:10px;border:1px solid var(--line);border-radius:15px;background:var(--surface);overflow:hidden}.decision-source-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-2)}.decision-source-head>div{display:grid;gap:2px}.decision-source-head strong{font-size:11.5px}.decision-source-head small,.decision-source-head>span{font-size:9.5px;color:var(--muted)}.decision-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.decision-source-grid>div{padding:10px 12px;border-right:1px solid var(--line);display:grid;gap:3px;min-width:0}.decision-source-grid>div:last-child{border-right:0}.decision-source-grid small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}.decision-source-grid strong{font-size:12px}.decision-source-grid span{font-size:9px;color:var(--muted);line-height:1.3}.decision-source-warning{display:grid;gap:2px;padding:9px 12px;border-top:1px solid var(--line);background:var(--orange-soft)}.decision-source-warning strong{font-size:9.5px;color:var(--orange)}.decision-source-warning span{font-size:9px;line-height:1.4;color:var(--muted)}
@media(max-width:760px){.decision-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-source-grid>div:nth-child(2){border-right:0}.decision-source-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:430px){.decision-source-head{align-items:flex-start}.decision-source-grid>div{padding:9px 10px}}

/* v4.1.1 — Hutang/Piutang proportional form + floating calendar */
.avero-calendar--popover{position:fixed!important;z-index:180!important;margin:0!important;max-height:min(390px,calc(100dvh - 20px));overflow:auto;box-shadow:0 18px 50px rgba(15,28,50,.2)}
.calendar-field--popover{position:relative;min-width:0}
.modal-sheet--obligations{width:min(780px,calc(100vw - 28px));max-height:min(88dvh,780px)}
.modal-sheet--obligations .modal-head{padding:12px 14px}.modal-sheet--obligations .modal-head strong{font-size:13px}.modal-sheet--obligations .modal-head small{font-size:8.5px}
.modal-sheet--obligations .modal-body{padding:10px 12px calc(12px + env(safe-area-inset-bottom))}
.modal-sheet--obligations .form-card{gap:8px}.modal-sheet--obligations .form-card label{gap:4px}.modal-sheet--obligations .form-card label>span{font-size:8.8px}.modal-sheet--obligations input,.modal-sheet--obligations select{min-height:38px;padding:7px 10px}.modal-sheet--obligations textarea{min-height:58px;padding:8px 10px}
.obligation-origin-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);gap:8px;align-items:end;padding:8px 9px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.obligation-origin-box>small{font-size:7.5px;line-height:1.4;color:var(--muted);padding-bottom:3px}
.obligation-compact-balance{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.obligation-compact-balance>div{display:grid;gap:2px}.obligation-compact-balance small,.obligation-compact-balance span{font-size:7.5px;color:var(--muted)}.obligation-compact-balance strong{font-size:13px}
.obligation-schedule-locked{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:8px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.obligation-schedule-locked>div{display:grid;gap:2px;padding:6px 7px;border-radius:8px;background:var(--surface)}.obligation-schedule-locked small{font-size:7.3px;color:var(--muted)}.obligation-schedule-locked strong{font-size:9px}.obligation-schedule-locked>small{grid-column:1/-1;padding:0 2px}
.obligation-inline-progress{margin-top:-2px;padding:6px 8px;border-radius:8px;background:var(--brand-faint);font-size:8px;color:var(--muted)}.obligation-inline-progress b{color:var(--ink)}.obligation-schedule-help{margin-top:-3px}.obligation-schedule-warning{color:var(--danger,#c83f3f)!important;font-weight:800}.obligation-schedule-ok{color:var(--success,#258b5b)!important;font-weight:800}
.obligation-pay-amount{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.obligation-pay-amount small,.obligation-pay-amount span{font-size:7.5px;color:var(--muted)}.obligation-pay-amount strong{font-size:14px}.obligation-pay-amount span{text-align:right}
.obligation-form-actions{margin-top:2px}.obligation-domain-note{padding:7px 9px}.obligation-domain-note strong{font-size:8px}.obligation-domain-note small{font-size:7.2px}.obligation-form-grid{gap:7px}.obligation-card{gap:7px;padding:10px}.obligation-balance{gap:2px}.obligation-balance>span{line-height:1.35}.obligation-meta-grid>div{padding:7px}.obligation-history{padding-top:6px}
@media(max-width:680px){.modal-sheet--obligations{width:100%;max-height:92dvh}.modal-sheet--obligations .modal-body{padding:9px 10px calc(12px + env(safe-area-inset-bottom))}.obligation-origin-box{grid-template-columns:1fr}.obligation-schedule-locked{grid-template-columns:1fr}.obligation-schedule-locked>small{grid-column:1}.obligation-pay-amount{align-items:flex-start;flex-direction:column}.obligation-pay-amount span{text-align:left}.avero-calendar--popover{width:min(350px,calc(100vw - 20px))!important}}
@media(orientation:landscape) and (min-width:700px) and (max-height:620px){.modal-sheet--obligations{width:min(860px,calc(100vw - var(--rail-width) - 34px));max-height:92dvh}.modal-sheet--obligations .modal-head{padding:9px 12px}.modal-sheet--obligations .modal-body{padding:7px 10px 10px}.obligation-form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.obligation-origin-box{grid-template-columns:minmax(0,1fr) minmax(180px,.7fr)}.obligation-schedule-locked{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v4.1.2 — Jenis Hutang + conditional cash-in */
.obligation-debt-type-box{align-items:center}.obligation-cash-in-grid{padding:8px 9px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:11px;background:var(--brand-faint)}.obligation-cash-in-grid[hidden]{display:none!important}.obligation-cash-in-grid .field-help{font-size:7.3px;line-height:1.35}.obligation-debt-type-box>small{align-self:center}
@media(max-width:680px){.obligation-cash-in-grid{grid-template-columns:1fr}}


/* Avero v4.2.0 · Transaction Intake 2.0 */
.action-icon--batch{background:var(--brand-soft);color:var(--brand)}
.modal-sheet--transaction-batch{width:min(1040px,calc(100vw - 28px));max-height:min(92dvh,920px)}
.transaction-batch-form{gap:10px}.transaction-batch-help{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.transaction-batch-help strong{font-size:10.5px}.transaction-batch-help small{font-size:8.7px;color:var(--muted);line-height:1.45}
.transaction-batch-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px}.transaction-batch-toolbar>span{font-size:9px;font-weight:800;color:var(--muted)}.transaction-batch-toolbar .secondary-button{min-height:34px;padding:6px 10px}
.transaction-batch-rows{display:grid;gap:8px}.transaction-batch-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;padding:9px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);min-width:0}.transaction-batch-row-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:2px}.transaction-batch-row-head strong{font-size:9.5px}.transaction-batch-remove{border:0;background:transparent;padding:2px 4px;font-size:8px;cursor:pointer}.transaction-batch-row label{display:grid;gap:3px;min-width:0}.transaction-batch-row label>span{font-size:7.6px;font-weight:800;color:var(--muted)}.transaction-batch-row input,.transaction-batch-row select{width:100%;min-width:0;min-height:34px;padding:6px 7px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:9px}.transaction-batch-type{grid-column:span 2}.transaction-batch-row label:not(.transaction-batch-type):not(.transaction-batch-category):not(.transaction-batch-note){grid-column:span 2}.transaction-batch-category{grid-column:span 3}.transaction-batch-note{grid-column:span 3}.transaction-batch-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;position:sticky;bottom:-16px;padding:9px 0 2px;background:linear-gradient(to bottom,transparent,var(--surface) 22%)}.transaction-batch-footer small{font-size:8.2px;color:var(--muted);line-height:1.4}.transaction-batch-footer .primary-button{min-width:190px}
@media(max-width:760px){.transaction-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr))}.modal-sheet--transaction-batch{width:100%;max-height:94dvh}.transaction-batch-row{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-batch-row-head,.transaction-batch-note{grid-column:1/-1}.transaction-batch-type,.transaction-batch-category,.transaction-batch-row label:not(.transaction-batch-type):not(.transaction-batch-category):not(.transaction-batch-note){grid-column:span 1}.transaction-batch-footer{grid-template-columns:1fr}.transaction-batch-footer .primary-button{width:100%;min-width:0}}
@media(max-width:420px){.transaction-batch-row{grid-template-columns:1fr}.transaction-batch-type,.transaction-batch-category,.transaction-batch-note,.transaction-batch-row label:not(.transaction-batch-type):not(.transaction-batch-category):not(.transaction-batch-note){grid-column:1}.transaction-batch-help{padding:8px 9px}}

/* Avero v4.3.0 · Transaction Split */
.modal-sheet--transaction-split{width:min(720px,calc(100vw - 28px));max-height:min(90dvh,820px)}
.transaction-split-form{gap:10px}.transaction-split-context,.transaction-split-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.transaction-split-context>div,.transaction-split-summary>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);min-width:0}.transaction-split-context small,.transaction-split-summary small{font-size:8px;color:var(--muted)}.transaction-split-context strong,.transaction-split-summary strong{font-size:11px;overflow-wrap:anywhere}.transaction-split-help{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--brand-faint)}.transaction-split-help strong{font-size:9px}.transaction-split-help small{font-size:8px;color:var(--muted);line-height:1.45}.transaction-split-rows{display:grid;gap:7px}.transaction-split-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.55fr) auto;gap:7px;align-items:end;padding:8px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);min-width:0}.transaction-split-row label{display:grid;gap:3px;min-width:0}.transaction-split-row label>span{font-size:7.7px;font-weight:800;color:var(--muted)}.transaction-split-row input,.transaction-split-row select{width:100%;min-width:0;min-height:35px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:9px}.transaction-split-remove{min-height:35px;padding:6px 7px;border:0;background:transparent;cursor:pointer}.transaction-split-add{justify-self:start;min-height:34px;padding:6px 10px}.transaction-split-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.transaction-split-actions .primary-button{min-width:170px}.transaction-split-form[data-split-over] [data-split-assigned]{color:var(--danger,#c83f3f)}
@media(max-width:620px){.modal-sheet--transaction-split{width:100%;max-height:94dvh}.transaction-split-row{grid-template-columns:minmax(0,1fr) minmax(120px,.72fr)}.transaction-split-remove{grid-column:1/-1;justify-self:end;min-height:0;padding:2px 3px}.transaction-split-actions{align-items:stretch;flex-direction:column}.transaction-split-actions>span{display:none}.transaction-split-actions .primary-button{width:100%;min-width:0}}
@media(max-width:390px){.transaction-split-context,.transaction-split-summary,.transaction-split-row{grid-template-columns:1fr}.transaction-split-remove{grid-column:1}.transaction-split-context>div,.transaction-split-summary>div{padding:8px 9px}}
@media(orientation:landscape) and (min-width:700px) and (max-height:620px){.modal-sheet--transaction-split{width:min(760px,calc(100vw - var(--rail-width) - 34px));max-height:92dvh}.modal-sheet--transaction-split .modal-head{padding:9px 12px}.modal-sheet--transaction-split .modal-body{padding:8px 10px 10px}.transaction-split-form{gap:7px}.transaction-split-context>div,.transaction-split-summary>div,.transaction-split-help,.transaction-split-row{padding:7px 8px}}

/* Avero v4.3.1 · Bagi Transaksi direct intake */
.transaction-split-entry-main{grid-template-columns:repeat(2,minmax(0,1fr))}
.transaction-split-entry-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.transaction-split-entry-heading>div{display:grid;gap:2px;min-width:0}
.transaction-split-entry-heading strong{font-size:9px}
.transaction-split-entry-heading small,.transaction-split-entry-status small{font-size:8px;color:var(--muted);line-height:1.4}
.transaction-split-entry-form .transaction-batch-row-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}
.transaction-split-entry-form .transaction-batch-row-head strong{font-size:8.5px}
.transaction-split-entry-form .transaction-batch-row-head .transaction-split-remove{min-height:0;padding:2px 3px}
.transaction-split-entry-form[data-split-entry-over] [data-split-entry-remainder]{color:var(--danger,#c83f3f)}
.transaction-split-entry-form[data-split-entry-complete] [data-split-entry-remainder]{color:var(--success,#21875d)}
@media(max-width:620px){
  .transaction-split-entry-main{grid-template-columns:1fr 1fr}
  .transaction-split-entry-heading{align-items:stretch;flex-direction:column}
  .transaction-split-entry-heading .transaction-split-add{width:100%;justify-self:stretch}
}
@media(max-width:390px){
  .transaction-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .transaction-split-entry-main{grid-template-columns:1fr}
}

/* v4.3.2 Recurring Discovery */
.recurring-discovery-section{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--brand-faint) 42%,var(--surface)))}
.recurring-discovery-card{border-style:dashed}.recurring-discovery-card .row-actions{justify-content:flex-end}.recurring-discovery-card .compact-button{max-width:100%}
.recurring-discovery-prefill{display:grid;gap:3px;padding:9px 10px;border:1px dashed color-mix(in srgb,var(--brand) 32%,var(--line));border-radius:12px;background:var(--brand-faint)}
.recurring-discovery-prefill strong{font-size:10.5px}.recurring-discovery-prefill small{font-size:9px;line-height:1.45;color:var(--muted)}
@media(max-width:620px){.recurring-discovery-card .row-actions .compact-button{width:100%}.recurring-discovery-prefill{padding:8px 9px}}
