:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color-scheme:light;--bg:#edf0f3;--panel:#fff;--ink:#20262e;--muted:#52606d;--border:#dae1e7;--accent:#087ea4;--soft:#e5f4fa;--green:#347326;--red:#ba3541;--width:248px;--transaction-filter-width:260px;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}body.dark{color-scheme:dark;--bg:#12171e;--panel:#1d232b;--ink:#edf2f7;--muted:#ccd6e1;--border:#3b4858;--accent:#75d8f7;--soft:#213f50;--green:#9bdc72;--red:#f58b91}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--accent)}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:var(--accent);text-decoration:none}button,.button{padding:11px 17px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--ink);min-height:42px}button:hover:not(:disabled){border-color:var(--accent)}.primary{background:var(--accent);color:white;border-color:var(--accent)}.dark .primary{color:#12171e}.muted,small{color:var(--muted)}small{font-size:.8rem}.brand{display:flex;align-items:center;gap:10px;font-size:1.3rem;font-weight:700;color:var(--ink);white-space:nowrap}.brand img{width:38px;height:38px}.brand b{color:var(--accent)}
.login-shell{min-height:100vh;padding:38px 5vw;display:flex;flex-direction:column}.login-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.preferences{display:flex;align-items:center;gap:10px}.preferences select{max-width:170px}.preferences button{font-size:.8rem;padding:9px 12px}.login-main{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;max-width:1000px;width:100%;margin:auto;padding:60px 0}.login-copy h1{font-size:clamp(2rem,3.7vw,3.3rem);letter-spacing:-.04em;line-height:1.12;margin:25px 0}.login-copy p{font-size:1.02rem;line-height:1.8;color:var(--muted);max-width:440px}.eyebrow{font-size:.78rem;letter-spacing:.12em;color:var(--accent);font-weight:650;text-transform:uppercase}.phone-illustration{height:72px;width:52px;border:3px solid var(--accent);border-radius:11px;display:grid;place-items:center;background:var(--soft);font-size:1.4rem}.login-card{background:var(--panel);border:1px solid var(--border);box-shadow:0 18px 55px #183a5010;border-radius:22px;padding:38px;text-align:center;min-width:0}.qr-area{width:320px;height:auto;max-width:100%;aspect-ratio:1;margin:auto;display:grid;place-items:center;background:#fff;border:1px solid #dce6eb;border-radius:14px;overflow:hidden}.qr-area img{display:block;width:100%;max-width:100%;height:auto}.qr-placeholder{width:145px;height:145px;border:2px dashed #99b6c2;border-radius:20px;display:grid;place-items:center;color:#087ea4}.qr-placeholder svg{width:66px;height:66px}.status-box{padding:15px;background:var(--soft);border-radius:9px;color:var(--accent);font-size:.86rem;line-height:1.5;margin:24px 0 16px}.login-card .primary{width:100%}.login-footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.75rem;line-height:1.7}.login-footer span:last-child{text-align:end}
.sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:var(--width);background:var(--panel);border-inline-end:1px solid var(--border);padding:28px 14px;overflow:auto;display:flex;flex-direction:column;gap:28px}.sidebar .brand{padding-inline:12px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:12px 16px;border-radius:8px;color:var(--muted);font-size:.9rem}.sidebar nav a.active{color:var(--accent);background:var(--soft);font-weight:600}.sidebar-foot{margin-top:auto;padding:15px;line-height:1.8;font-size:.75rem;color:var(--muted)}.divider{position:fixed;inset-block:0;inset-inline-start:calc(var(--width) - 5px);width:10px;cursor:col-resize;z-index:3}.divider:hover,.divider:focus-visible{background:var(--soft)}.workspace{margin-inline-start:var(--width)}.topbar{padding:18px 30px;background:var(--panel);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:18px}.topbar .preferences{flex-wrap:wrap}.topbar small{max-width:230px}.content{max-width:1600px;margin:auto;padding:32px}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.heading h1{font-size:1.9rem;letter-spacing:-.03em;margin:0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:20px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;overflow:hidden}.card h2{font-size:1rem;margin:0 0 20px}.card h3{font-size:1rem;margin:0 0 12px}.card p{color:var(--muted);line-height:1.6}.balance{font-size:1.8rem;font-weight:650;margin:15px 0}.balance-card{border-top:3px solid #0d9ece}.num{font-variant-numeric:tabular-nums}.positive{color:var(--green)}.negative{color:var(--red)}.toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.toolbar input{flex:1;min-width:180px}input,select,textarea{padding:11px 12px;border-radius:7px;border:1px solid var(--border);background:var(--panel);color:var(--ink);max-width:100%;min-height:42px}.table-card{padding:0;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:15px 20px;border-bottom:1px solid var(--border);text-align:start;font-size:.86rem}th{background:var(--bg);font-weight:500;color:var(--muted);font-size:.75rem}td small{display:block;margin-top:5px}.amount{text-align:end}.row-link{padding:0;border:0;background:none;color:var(--ink);text-align:start;min-height:30px;font-weight:500}.row-link:hover{color:var(--accent)}.section{margin-top:24px}.empty{padding:45px;text-align:center;color:var(--muted)}.stack{display:grid;gap:14px}.row{display:flex;justify-content:space-between;align-items:center;gap:18px}.row p{margin:0}.badge{display:inline-block;padding:5px 9px;background:var(--soft);color:var(--accent);border-radius:5px;font-size:.75rem}.mobile-menu{display:none}dialog{position:fixed;inset-block:0;inset-inline-start:auto;inset-inline-end:0;margin:0;width:490px;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-inline-start:1px solid var(--border);background:var(--panel);color:var(--ink);padding:28px}dialog::backdrop{background:#14233070}dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px}dialog h2{font-size:1.3rem}.field{display:grid;gap:7px;margin-block:20px;font-size:.85rem}.field textarea{min-height:90px}.dialog-actions{position:sticky;bottom:-28px;background:var(--panel);padding-block:20px;display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.danger{color:var(--red)}#notice:empty{display:none}#notice{position:fixed;bottom:24px;inset-inline-start:50%;transform:translateX(-50%);max-width:90vw;padding:15px 22px;background:#173b4b;color:#fff;border-radius:10px;box-shadow:0 6px 22px #0003;z-index:6}.error{color:var(--red);line-height:1.5}
@media(max-width:850px){.login-main{gap:30px}.login-card{padding:24px}.content{padding:24px}.topbar{padding:14px 20px}.topbar small{display:none}}
@media(max-width:700px){.login-shell{padding:24px}.login-header{align-items:flex-start}.login-header .preferences{flex-direction:column;align-items:flex-end}.login-header select{max-width:130px}.login-main{grid-template-columns:1fr;padding:35px 0;gap:20px;max-width:410px}.login-copy h1{font-size:2.25rem;margin-block:18px}.phone-illustration{display:none}.login-copy p{font-size:.9rem;margin-bottom:0}.login-footer{flex-direction:column;gap:8px}.login-footer span:last-child{text-align:start}.qr-area{width:260px;height:auto}.sidebar{display:none;width:240px;z-index:5;box-shadow:20px 0 60px #0003}.sidebar.open{display:flex}.divider{display:none}.workspace{margin:0}.mobile-menu{display:block}.topbar{gap:10px}.topbar .preferences{gap:5px}.topbar .preferences select{max-width:115px}.topbar button{padding-inline:10px}.content{padding:23px 16px}.heading h1{font-size:1.5rem}.heading{gap:10px}.grid{grid-template-columns:1fr}.card{padding:20px}.table-card{padding:0}td,th{padding:13px}.secondary{display:none}}

button.qr-login{padding:0;width:320px;outline-offset:5px}button.qr-login:hover:not(:disabled){box-shadow:0 0 0 4px var(--soft)}
.card-actions{display:flex;gap:8px;flex-wrap:wrap}.card-actions button{font-size:.8rem;padding:9px 12px}
@media(max-width:700px){button.qr-login{width:260px}}
.transaction-filters{overflow:visible;margin-bottom:20px;padding:20px}
.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.filter-heading h2{margin:0}.filter-heading button{font-size:.8rem;padding:8px 12px}
.transaction-filters #search{width:100%;margin-bottom:14px}
.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px;align-items:start}
.filter-field{display:grid;gap:7px;font-size:.78rem;color:var(--muted);min-width:0}.filter-field input,.filter-field select{width:100%;color:var(--ink);min-width:0}
.transaction-filters .filter-grid:last-child{grid-template-columns:repeat(7,minmax(0,1fr))}
.selectable-table table{table-layout:fixed;min-width:760px}.selectable-table th,.selectable-table td{padding:12px 10px;overflow:hidden;text-overflow:ellipsis}.selectable-table th:nth-child(1){width:40px}.selectable-table th:nth-child(2){width:26%}.selectable-table th:nth-child(3){width:18%}.selectable-table th:nth-child(4){width:16%}.selectable-table th:nth-child(5){width:100px}.selectable-table th:nth-child(6){width:105px}.selectable-table th:nth-child(7){width:115px}.selectable-table .row-link,.selectable-table td small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selectable-table .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.filter-multi{position:relative;min-width:0;border:1px solid var(--border);border-radius:7px;background:var(--panel)}
.filter-multi summary{padding:10px 12px;cursor:pointer;font-size:.84rem}.filter-multi summary .badge{float:inline-end;max-width:50%;overflow:hidden;text-overflow:ellipsis;padding:2px 6px}
.filter-options{position:absolute;inset-inline:0;top:100%;z-index:4;padding:8px;max-height:280px;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:7px;box-shadow:0 8px 20px #0002}
.filter-options label{display:flex;gap:9px;align-items:center;padding:8px 4px;font-size:.82rem;overflow-wrap:anywhere}
.filter-options input,.check-cell input{width:18px;height:18px;min-height:18px;flex-shrink:0;accent-color:var(--accent);cursor:pointer}
.transaction-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:20px 0;font-size:.84rem}.transaction-toolbar #result-count{margin-inline-end:auto;color:var(--muted)}.transaction-toolbar label{display:flex;align-items:center;gap:10px}
.bulk-bar{padding:16px;margin-bottom:16px;border:1px solid var(--accent);background:var(--soft);border-radius:10px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.84rem}.bulk-bar strong{margin-inline-end:auto}.bulk-buttons{display:flex;flex-wrap:wrap;gap:8px;width:100%}.bulk-bar p{width:100%;margin:4px 0;color:var(--muted);line-height:1.5}.bulk-bar button{padding:8px 12px}
.check-cell{width:44px;padding-inline:14px}.selected-row{background:var(--soft)}.bulk-review{list-style:none;padding:0;max-height:55vh;overflow:auto}.bulk-review li{display:grid;gap:6px;border-bottom:1px solid var(--border);padding:14px 0;font-size:.85rem}.bulk-review small{display:block}.bulk-review span{text-align:end;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.transaction-filters .filter-grid:last-child{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.filter-grid,.transaction-filters .filter-grid:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-filters{padding:16px}.transaction-toolbar label{max-width:100%}.transaction-toolbar select{min-width:0}.filter-multi:last-child{grid-column:1/-1}.bulk-buttons button{flex:1}.transaction-filters .filter-heading{align-items:start}.filter-multi summary .badge{float:none;margin-inline-start:8px}.selectable-table table{min-width:570px}.selectable-table th:nth-child(2){width:36%}}

/* Compact shared controls and progressive disclosure. */
[hidden]{display:none!important}
.ui-icon{width:18px;height:18px;display:inline-block;flex-shrink:0;vertical-align:middle;pointer-events:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;width:36px;height:36px;padding:8px;border-color:transparent;background:transparent;border-radius:7px;flex-shrink:0;color:var(--muted)}
.icon-button:hover:not(:disabled){background:var(--soft);color:var(--accent);border-color:transparent}
.icon-button.danger{color:var(--red)}.quiet-button{border-color:transparent;background:transparent;color:var(--accent);min-height:32px;padding:5px 8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:.8rem}
.mobile-menu.icon-button{display:none}
.quiet-button:hover:not(:disabled){background:var(--soft);border-color:transparent}
.create-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:.83rem;min-height:38px;padding:9px 13px}
summary{outline-offset:4px}summary:focus-visible{outline:2px solid var(--accent)}
.sidebar{padding:23px 12px;gap:24px}.sidebar .brand{font-size:1.17rem;padding-inline:10px}.sidebar .brand img{height:32px;width:32px}
.sidebar nav{gap:3px}.sidebar nav a{display:flex;align-items:center;gap:12px;font-size:.82rem;padding:9px 12px;line-height:1.3;min-height:36px}.sidebar nav a:hover{background:var(--soft)}
.sidebar nav a .ui-icon{width:17px;height:17px;opacity:.8}.sidebar nav a.active .ui-icon{opacity:1}.sidebar nav a.nav-secondary-start{margin-top:15px;position:relative}.sidebar nav a.nav-secondary-start:before{content:'';position:absolute;top:-9px;inset-inline:12px;border-top:1px solid var(--border)}
.sidebar-foot{font-size:.67rem;padding:12px}.topbar{min-height:60px;padding:11px 28px;gap:12px}.topbar small{max-width:none;font-size:.74rem}.topbar-actions{display:flex;align-items:center;gap:5px;margin-inline-start:auto}
.content{padding:25px 30px}.heading{margin-bottom:20px}.heading h1{font-size:1.65rem}.grid{gap:16px}.card-title-row{display:flex;gap:12px;justify-content:space-between;align-items:start}.card-title-row h3{margin:0;line-height:1.5}.card-title-row>.icon-button{margin-block-start:-7px;margin-inline-end:-8px}.balance-card .balance{font-size:1.65rem;margin-block:14px}.card-description{font-size:.82rem;margin-block:8px}.card-actions{align-items:center;gap:4px}.card-actions>.icon-button{width:32px;height:32px;padding:6px}.card-actions>.quiet-button:not(.icon-button){padding-inline:0;margin-inline-start:auto;min-height:32px}.card-actions>.quiet-button .ui-icon{width:14px;height:14px}
.action-menu{position:relative}.action-menu>summary{display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;list-style:none;min-height:36px;padding:7px 10px;font-size:.8rem;border:1px solid var(--border);border-radius:7px;background:var(--panel)}
.action-menu>summary.icon-button{padding:8px;border-color:transparent;background:transparent}.action-menu>summary::-webkit-details-marker{display:none}.action-menu[open]>summary{background:var(--soft);color:var(--accent)}
.action-menu-panel{position:absolute;inset-inline-end:0;top:calc(100% + 6px);min-width:180px;max-width:calc(100vw - 35px);background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 10px 30px #142f4226;z-index:7}
.action-menu-panel>button,.action-menu-panel>a{display:flex;gap:10px;align-items:center;text-align:start;width:100%;padding:9px 10px;border:0;min-height:36px;font-size:.81rem;border-radius:5px;color:var(--ink);background:transparent}.action-menu-panel>button:hover:not(:disabled),.action-menu-panel>a:hover{background:var(--soft)}
.preferences-menu .action-menu-panel{min-width:225px}.preferences-menu label{display:grid;gap:7px;padding:9px;font-size:.75rem;color:var(--muted);border-bottom:1px solid var(--border);margin-bottom:5px}.preferences-menu select{font-size:.81rem;width:100%;min-height:36px;padding:8px}
.transaction-filters{padding:14px 16px;margin-bottom:12px}.transaction-search-row{display:flex;align-items:center;gap:12px}.search-input{position:relative;flex:1;min-width:0}.search-input>.ui-icon{position:absolute;inset-inline-start:11px;top:10px;color:var(--muted)}
.transaction-filters #search{margin:0;width:100%;min-height:38px;padding:9px 12px;padding-inline-start:36px;font-size:.84rem}.filter-toggle{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px;font-size:.8rem;flex-shrink:0}.filter-toggle[aria-expanded=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}
.filter-toggle .badge{padding:2px 5px;font-size:.67rem}.active-filter-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}.filter-chip{background:var(--soft);color:var(--accent);font-size:.73rem;padding:5px 8px;border-radius:5px;max-width:100%;overflow-wrap:anywhere}.active-filter-summary button{margin-inline-start:auto;font-size:.73rem}
#transaction-filter-panel{border-top:1px solid var(--border);margin-top:14px;padding-top:3px}#transaction-filter-panel>.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#transaction-filter-panel>.filter-grid:nth-child(2){grid-template-columns:repeat(4,minmax(0,1fr))}
.filter-field input,.filter-field select{font-size:.8rem;padding:8px 9px;min-height:36px}.filter-field{font-size:.73rem;gap:5px}.filter-panel-footer{display:flex;justify-content:end;margin-top:10px}.filter-multi summary{font-size:.79rem;padding:9px 10px}.transaction-toolbar{margin:12px 0;gap:8px;font-size:.78rem}.transaction-toolbar select{font-size:.77rem;min-height:34px;padding:6px 9px;border-color:transparent;background:transparent}
.bulk-bar{padding:10px 14px;gap:8px;font-size:.8rem}.bulk-buttons{width:auto;margin-inline-start:auto;align-items:center;gap:4px}.bulk-bar .icon-button{padding:7px}.bulk-bar strong{margin-inline-end:8px}.bulk-buttons .action-menu-panel{inset-inline-start:0;inset-inline-end:auto}
[dir=rtl] .card-actions .ui-icon{transform:rotate(180deg)}
@media(max-width:850px){.topbar{padding-inline:20px}.content{padding:22px}.heading h1{font-size:1.5rem}}
@media(min-width:701px) and (max-width:1000px){#transaction-filter-panel>.filter-grid,#transaction-filter-panel>.filter-grid:nth-child(2){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.topbar{min-height:56px;padding:8px 15px}.topbar small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu.icon-button{display:inline-flex}.content{padding:20px 15px}.heading{gap:12px;margin-bottom:18px}.heading h1{font-size:1.4rem}.create-button{max-width:60%;font-size:.77rem}.transaction-search-row{gap:8px}.transaction-filters{padding:12px}.filter-toggle{padding-inline:9px}.transaction-toolbar{gap:5px}.transaction-toolbar select{max-width:170px}#transaction-filter-panel>.filter-grid,#transaction-filter-panel>.filter-grid:nth-child(2){grid-template-columns:repeat(2,minmax(0,1fr))}.bulk-buttons button{flex:initial}.grid{gap:13px}.sidebar{padding-top:24px}.balance-card .balance{font-size:1.5rem}.action-menu-panel{max-width:calc(100vw - 30px)}}
@media(pointer:coarse){.icon-button,.budget-icon-button,.report-icon-button{min-width:42px;min-height:42px}.action-menu>summary{min-height:42px}}

/* One consistent footer for record lists, including card views and import previews. */
:root{--row-hover:var(--soft)}body.dark{--row-hover:var(--soft)}
.pagination{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 22px;padding:13px 3px;color:var(--muted);font-size:.75rem;font-variant-numeric:tabular-nums}
.pagination-range{margin-inline-end:auto;white-space:nowrap}.pagination-range>span{padding-inline:4px;color:var(--muted)}
.pagination-size,.pagination-page,.pagination-navigation{display:flex;align-items:center;gap:8px}.pagination-size,.pagination-page{white-space:nowrap}
.pagination select,.pagination input{min-height:32px;height:32px;padding:5px 7px;font-size:.75rem;background:var(--panel)}
.pagination select{width:68px}.pagination input{width:52px;text-align:center;appearance:textfield;direction:ltr}.pagination input::-webkit-inner-spin-button,.pagination input::-webkit-outer-spin-button{appearance:none;margin:0}
.pagination-navigation{gap:4px}.pagination .icon-button{height:32px;width:32px;min-height:32px;padding:7px}.pagination .icon-button:disabled{opacity:.3;cursor:default}
[dir=rtl] .pagination .ui-icon{transform:rotate(180deg)}
tbody tr,.list-row,.list-item,.bulk-review li{transition:background-color .12s ease}
tbody tr:hover,.list-row:hover,.list-item:hover,.bulk-review li:hover,.rc-legend-item:hover{background-color:var(--row-hover)}
[data-budget-row]:hover,[data-project-row]:hover,[data-row-table]:focus-visible,[data-budget-row]:focus-visible,[data-project-row]:focus-visible{background-color:var(--row-hover)}
body .report-chart button.rc-legend-item:hover,body .report-bar-row:hover{background-color:var(--row-hover)}
tbody tr.selected-row:hover{background-color:var(--row-hover);box-shadow:inset 3px 0 var(--accent)}
.recurring-list{gap:0}.recurring-list .list-row{padding:15px 10px;border-bottom:1px solid var(--border);font-size:.88rem}.recurring-list .list-row:last-child{border-bottom:0}
@media(max-width:700px){.pagination{gap:10px 14px;font-size:.72rem}.pagination-range{flex-basis:100%;margin:0}.pagination-size{margin-inline-end:auto}.pagination-page{gap:5px}.pagination-navigation{gap:0}.pagination select{width:62px}.pagination input{width:42px}}
@media(prefers-reduced-motion:reduce){tbody tr,.list-row,.list-item,.bulk-review li{transition:none}}
/* First-wave revision: page-level navigation, steady transaction actions. */
.page-title-group{display:flex;align-items:center;gap:9px;min-width:0}.page-title-group h1{margin:0}.workspace>.content{padding-top:30px}.transaction-search-row .transaction-account-picker{max-width:255px;min-width:160px;margin:0}.transaction-search-row .transaction-account-picker select{width:100%;font-size:12px;min-height:38px}.transaction-search-row .transaction-account-picker>.ui-icon{display:none}
.transaction-toolbar-slot{height:52px;min-height:52px;position:relative;margin:0 0 8px}.transaction-toolbar-slot>.transaction-toolbar,.transaction-toolbar-slot>#bulk-actions{height:100%;margin:0;min-width:0}.transaction-toolbar-slot .bulk-bar{height:100%;padding:5px 8px;margin:0;border:0;border-radius:7px;display:flex;flex-wrap:nowrap;gap:8px;background:var(--soft);white-space:nowrap;overflow-x:auto}.bulk-bar>strong{margin-inline-end:auto;flex:none;font-size:12px}.bulk-bar select{min-height:34px;max-width:230px;min-width:100px;padding:6px 9px;font-size:12px}.bulk-bar .primary{min-height:34px;font-size:12px;padding:6px 12px}.bulk-bar>.icon-button{margin:0;flex:none}.export-menu>summary{border:0;background:transparent}
@media(max-width:700px){.workspace>.content{padding-top:20px}.transaction-search-row{flex-wrap:wrap}.transaction-search-row .transaction-account-picker{width:100%;max-width:none;flex-basis:100%}.transaction-search-row .search-input{min-width:140px}.bulk-bar select{max-width:150px}.bulk-bar>strong{font-size:11px}.transaction-toolbar-slot{height:52px}.sidebar.open{z-index:20}.page-title-group .mobile-menu{display:inline-flex}}

.transactions-layout{display:grid;grid-template-columns:minmax(0,1fr) var(--transaction-filter-width);gap:20px;align-items:start}
.transactions-main{grid-column:1;grid-row:1;min-width:0}
.transactions-layout .transaction-filters{grid-column:2;grid-row:1;position:sticky;top:20px;margin:0;max-height:calc(100vh - 40px);overflow:auto}
.transactions-layout .transaction-search-row{display:flex;flex-direction:column;align-items:stretch}
.transactions-layout .transaction-account-picker>select{width:100%;min-width:0}
.transactions-layout .transaction-account-picker{width:100%}
.transactions-layout .filter-toggle{display:none}
.transactions-layout #transaction-filter-panel>.filter-grid{grid-template-columns:minmax(0,1fr);gap:12px}
.transactions-layout .filter-multi:last-child{grid-column:auto}
.transactions-layout .table-card{overflow-x:auto}
.transactions-layout .transaction-toolbar{margin-top:0}
body table tbody td,body .list-row,body .list-item{font-size:.95rem}
body table tbody .row-link,body .record-link{font-size:.95rem;font-weight:600}
body table tbody .num,body .list-row .num,body .list-item .num{font-family:inherit;font-size:1.12rem;font-weight:600;font-variant-numeric:tabular-nums}
@media(max-width:950px){.transactions-layout{grid-template-columns:minmax(0,1fr)}.transactions-layout .transaction-filters{grid-column:1;grid-row:1;position:static;max-height:none}.transactions-main{grid-row:2}.transactions-layout #transaction-filter-panel>.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Align the transaction tools with the list and the filters with the page title. */
.transactions-main .transaction-toolbar>.search-input{margin-inline-end:auto;max-width:430px}
.transactions-main .search-input input{width:100%;min-height:38px;padding:9px 12px;padding-inline-start:36px;font-size:.84rem}
.transaction-extra-filters{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}
.transaction-extra-filters>summary{font-size:.82rem;color:var(--muted);cursor:pointer;padding:4px 0}
.transaction-extra-filters .filter-grid{grid-template-columns:1fr;margin-top:12px;gap:12px}
@media(min-width:951px){
.content:has(>.transactions-layout){display:grid;grid-template-columns:minmax(0,1fr) var(--transaction-filter-width);gap:20px;align-items:start}
.content:has(>.transactions-layout)>.heading{grid-column:1;grid-row:1;margin-bottom:0}
.content>.transactions-layout{display:contents}
.content>.transactions-layout>.transactions-main{grid-column:1;grid-row:2}
.content>.transactions-layout>.transaction-filters{grid-column:2;grid-row:1/span 2;top:20px}
}
@media(max-width:600px){.transactions-main .transaction-toolbar{flex-wrap:wrap}.transactions-main .transaction-toolbar>.search-input{flex-basis:100%;max-width:none}}

.transactions-layout .transaction-account-picker>select{background:var(--panel);color:var(--ink);border:1px solid var(--border)}.transactions-main .transaction-account-picker{margin-inline-end:auto}.transactions-layout .transaction-account-picker>.ui-icon{display:none}#transaction-heading-count{font:inherit}

dialog{inset:0;margin:auto;width:min(560px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 40px);border:1px solid var(--border);border-radius:14px;box-shadow:0 22px 80px #0003;overflow:auto}
.transactions-main .transaction-toolbar{display:flex;flex-wrap:nowrap}.transactions-main .transaction-account-picker{width:auto;flex:1 1 220px;max-width:300px;min-width:90px}.transactions-main .transaction-account-picker>select{width:100%;text-overflow:ellipsis}.transactions-main .transaction-toolbar>label:not(.transaction-account-picker){flex:0 1 175px;min-width:100px}.transactions-main .transaction-toolbar>label select{width:100%;min-width:0}.transactions-main .export-menu{flex:none}.collection-toolbar .create-button{margin-inline-start:auto}.heading>.collection-view-toggle{flex:none}

.brand-symbol{width:36px;height:36px;overflow:hidden;flex:none;display:block;position:relative}.sidebar .brand .brand-symbol img,.brand .brand-symbol img{width:41px;height:auto;max-width:none;position:absolute;left:-2px;top:-4px;background:transparent;border-radius:0}.sidebar .brand .brand-wordmark,.brand .brand-wordmark{width:142px;height:auto;background:transparent;border-radius:0;object-fit:contain}.brand{gap:8px}.heading>.collection-view-toggle{margin-inline-start:auto}
.brand .brand-wordmark{object-position:-9999px;background:var(--ink);mask-image:url("/brand-assets/wordmark.png");mask-mode:luminance;mask-size:100% 100%;mask-repeat:no-repeat}.sidebar .brand .brand-wordmark{background:var(--ink)}

.transaction-primary-filters{display:grid;gap:16px;margin-bottom:16px}.transaction-primary-filters>label{display:grid;gap:7px;font-size:.8rem}.transaction-primary-filters .sr-only{position:static;width:auto;height:auto;clip:auto;overflow:visible;white-space:normal}.transaction-primary-filters select{width:100%;min-width:0;max-width:100%}.transaction-primary-filters .transaction-account-picker{display:grid;width:100%;max-width:100%}.content:has(.transactions-layout)>.heading{flex-wrap:wrap}.content:has(.transactions-layout)>.heading .page-title-group{flex:1;min-width:0}.heading>.export-menu{flex:none}.transactions-main,#transaction-results{min-width:0;max-width:100%}.transactions-main .table-card{max-width:100%;width:100%;overflow-x:auto}.transactions-main table{table-layout:fixed;width:100%;white-space:normal}.transactions-main td,.transactions-main th{padding:12px 8px;overflow-wrap:anywhere}.transactions-main .check-cell{width:36px}.transactions-main th:nth-child(2){width:25%}.transactions-main th.amount{width:18%}.transactions-main .transaction-identity{min-width:0}.transactions-main .transaction-identity>div{min-width:0}.transactions-main .row-link{white-space:normal;overflow-wrap:anywhere}.transactions-main .badge{white-space:normal;padding:4px;font-size:.72rem}.transactions-main .transaction-toolbar:empty{display:none}.transactions-main .pagination{flex-wrap:wrap}
.transactions-main .selectable-table table{min-width:0}.transactions-main .selectable-table th:nth-child(1){width:4%}.transactions-main .selectable-table th:nth-child(2){width:26%}.transactions-main .selectable-table th:nth-child(3){width:23%}.transactions-main .selectable-table th:nth-child(4){width:20%}.transactions-main .selectable-table th:nth-child(5){width:27%}.transactions-main .selectable-table .row-link,.transactions-main .selectable-table td small{white-space:normal;overflow-wrap:anywhere}.transactions-main .selectable-table td,.transactions-main .selectable-table th{overflow:visible;text-overflow:clip}.transaction-primary-filters .sr-only{clip-path:none;margin:0;padding:0}.transaction-toolbar-slot:has(>.transaction-toolbar:empty):has(>#bulk-actions[hidden]){display:none}

.sidebar-collapse{align-self:flex-end;flex:none}.sidebar nav .ui-icon{flex:none}
@media(min-width:701px){.sidebar-collapsed{--width:72px!important}.sidebar-collapsed .sidebar{padding-inline:10px;gap:16px}.sidebar-collapsed .sidebar .brand{padding:0;justify-content:center}.sidebar-collapsed .sidebar .brand>span:not(.brand-symbol){display:none}.sidebar-collapsed .sidebar nav a{justify-content:center;padding:12px}.sidebar-collapsed .sidebar nav a>span{display:none}.sidebar-collapsed .sidebar-collapse{align-self:center}.sidebar-collapsed .divider{display:none}}
@media(max-width:700px){.sidebar-collapse{display:none}}

/* Transaction actions, compact ledger rows and logo-controlled sidebar. */
.sidebar .brand{cursor:pointer;border:0;background:none;padding-inline:12px;text-decoration:none}
.sidebar .brand:hover{color:var(--accent)}
.sidebar-collapsed .sidebar .brand{justify-content:center}
.sidebar-collapsed .sidebar .brand>span:not(.brand-symbol){display:none}
.sidebar nav a{flex:none}
.project-heading-actions:not(.budget-heading-actions){flex-direction:row;align-items:center;justify-content:flex-end;gap:10px}
.project-heading-actions:not(.budget-heading-actions)>.create-button{order:0;margin:0}
.project-heading-actions:not(.budget-heading-actions)>.collection-view-toggle{order:1;margin:0}
.transactions-side{grid-column:2;grid-row:1/span 2;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto;scrollbar-gutter:auto}
.transactions-side>.transaction-filters{position:static;max-height:none;overflow:visible;margin:0}
.transaction-create-slot{display:flex;justify-content:flex-end;margin:0 0 12px}
.transaction-create-slot .create-button{max-width:100%;white-space:nowrap}
.transactions-main{grid-column:1;grid-row:2}
.transactions-main .table-card{overflow:visible}
.transactions-main .table-card thead th{position:sticky;top:0;z-index:2;background:var(--bg);box-shadow:0 1px 0 var(--border)}
.transactions-main .table-card .bulk-header-cell{padding:0!important;text-align:start!important}
.transactions-main .bulk-header-cell .bulk-bar{box-sizing:border-box;height:52px;margin:0;padding:6px 12px;border:0;border-radius:0;display:flex;align-items:center;gap:10px;background:var(--soft);white-space:nowrap;overflow-x:auto}
.transactions-main .bulk-header-cell .bulk-bar>input[type=checkbox]{width:17px;height:17px;min-height:0;padding:0;margin:0;flex:none;accent-color:var(--accent)}
.transactions-main .bulk-header-cell .bulk-bar>strong{margin-inline-end:auto;flex:none}
.transactions-main .bulk-header-cell .bulk-bar select{min-height:34px;max-width:230px;min-width:100px;padding:6px 9px;font-size:12px}
.transactions-main .bulk-header-cell .bulk-bar .primary{min-height:34px;font-size:12px;padding:6px 12px}
.transactions-main .bulk-header-cell .bulk-bar>.icon-button{margin:0;flex:none}
.transactions-main .selectable-table table{table-layout:fixed;width:100%;min-width:0;white-space:normal}
.transactions-main .selectable-table th:nth-child(1){width:5%}
.transactions-main .selectable-table th:nth-child(2){width:29%}
.transactions-main .selectable-table th:nth-child(3){width:24%}
.transactions-main .selectable-table th:nth-child(4){width:19%}
.transactions-main .selectable-table th:nth-child(5){width:23%}
.transactions-main .selectable-table td:nth-child(5),.transactions-main .selectable-table th:nth-child(5){text-align:end}
.transactions-main .transaction-identity{gap:8px;align-items:center}
.transactions-main .transaction-identity>.record-icon{width:30px;height:30px}
.transactions-main .transaction-identity .row-link{font-size:.9rem;min-height:0;line-height:1.3}
.transactions-main .transaction-payee-line{display:flex;align-items:center;gap:5px;min-width:0}
.transactions-main .transaction-repeat-indicator{display:inline-flex;align-items:center;color:var(--accent);flex:none}
.transactions-main .transaction-repeat-indicator .ui-icon{width:14px;height:14px}
.transactions-main .transaction-identity small{margin-top:2px}
.transactions-main .transaction-status-label{margin-top:2px}
.transactions-main .selectable-table td:nth-child(3),.transactions-main .selectable-table td:nth-child(5){vertical-align:top}
.transactions-main .transaction-identity small,.transactions-main .transaction-project{font-size:.75rem;color:var(--muted);font-weight:400}
.transactions-main .transaction-status{font-size:.68rem;padding:3px 6px;white-space:nowrap}
.transactions-main .transaction-project{display:flex;align-items:center;gap:5px;margin-top:2px}
.transactions-main .transaction-project .project-icon{width:18px;height:18px;flex:none}
.transactions-main .transaction-status.status-cleared{color:#a96300;background:#fff0d6}
.transactions-main .transaction-status.status-reconciled{color:var(--green);background:#e8f4e5}
.transactions-main .transaction-status.status-void{color:var(--red);background:#fde8e7}
.dark .transactions-main .transaction-status.status-cleared{color:#ffd08a;background:#513b1b}
.dark .transactions-main .transaction-status.status-reconciled{color:#b9e2a7;background:#263d28}
.dark .transactions-main .transaction-status.status-void{color:#ffb4ae;background:#4b2423}
.transactions-main .running-balance{font-size:.76rem;color:var(--muted);font-weight:400;white-space:nowrap}
.transactions-main .transaction-amount{font-size:1.08rem;font-weight:650;white-space:nowrap}
.transactions-main .transaction-amount.voided-amount{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:currentColor;opacity:.78}
.transactions-main .voided-text{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:currentColor;opacity:.78}
.transaction-primary-filters{display:grid;gap:16px;margin-bottom:16px}
@media(min-width:951px){.content:has(>.transactions-layout)>.heading{grid-column:1;grid-row:1}.content>.transactions-layout{display:contents}.content>.transactions-layout>.transactions-side{grid-column:2;grid-row:1/span 2}.content>.transactions-layout>.transactions-main{grid-column:1;grid-row:2}}
@media(max-width:950px){.transactions-layout{grid-template-columns:minmax(0,1fr)}.transactions-layout>.transactions-side{grid-column:1;grid-row:1;position:static;max-height:none;overflow:visible}.transactions-layout>.transactions-main{grid-column:1;grid-row:2}.transactions-side>.transaction-filters{position:static;max-height:none}.project-heading-actions:not(.budget-heading-actions){margin-bottom:18px}}
@media(max-width:700px){.transaction-create-slot .create-button{min-height:38px;padding:8px 12px;font-size:.82rem}.transactions-main .selectable-table table{min-width:650px}.transactions-side{overflow:visible}}
.transaction-filters .filter-pane-heading{margin:0 0 14px;font-size:1rem;font-weight:650;color:var(--text)}
.transaction-filters .transaction-account-picker{color:var(--text)}
.transaction-filters .transaction-account-picker>select{font-weight:400;color:var(--text);border:1px solid var(--border);background:var(--panel)}
.content:has(>.transactions-layout)>.heading>.create-button{margin-inline-start:12px;white-space:nowrap}
.transaction-title-actions{display:flex;align-items:center;gap:8px;min-width:0;margin-inline-end:auto}.transaction-title-actions>.page-title-group{flex:none}.content:has(>.transactions-layout)>.heading>.create-button{margin-inline-start:auto}
.transaction-filters{position:relative}.transaction-filters>.transaction-filter-actions{display:flex;justify-content:flex-end;margin:0 0 16px}.transactions-main .transaction-toolbar{justify-content:flex-end}.transactions-main .transaction-toolbar>.search-input{margin-inline-start:auto;margin-inline-end:0;width:min(100%,280px);max-width:280px}.transaction-pane-resizer{position:absolute;inset-inline-start:-11px;top:50%;transform:translateY(-50%);width:22px;height:60px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;cursor:col-resize;touch-action:none;user-select:none;z-index:5}.transaction-pane-resizer::before{content:"";width:3px;height:28px;border-radius:3px;background:var(--muted);opacity:.55}.transaction-pane-resizer:hover,.transaction-pane-resizer:focus-visible{background:var(--soft);border-color:var(--border);outline:0}.transaction-pane-resizer:hover::before,.transaction-pane-resizer:focus-visible::before{opacity:1;background:var(--accent)}
.content:has(>.transactions-layout)>.heading>.transaction-title-actions{margin-inline-end:0}.content:has(>.transactions-layout)>.heading .transaction-title-actions>.page-title-group{flex:0 0 auto}.content:has(>.transactions-layout)>.heading>.search-input{margin-inline-start:auto;margin-inline-end:0;flex:0 1 280px}
.content:has(>.transactions-layout)>.heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,280px);align-items:center;justify-content:initial;justify-self:stretch;width:100%;column-gap:16px}.content:has(>.transactions-layout)>.heading>.search-input{justify-self:end;width:min(100%,280px);min-width:0}.transactions-main .table-card thead th{background:color-mix(in srgb,var(--panel) 45%,var(--bg) 55%)}
.content:has(>.transactions-layout){padding-inline-end:0!important;padding-right:0!important}
@media(max-width:700px){.content:has(>.transactions-layout)>.heading{grid-template-columns:minmax(0,1fr)}.content:has(>.transactions-layout)>.heading>.search-input{max-width:100%}}

/* Keep transaction creation above the list and search above account filters. */
.content:has(>.transactions-layout)>.heading{grid-template-columns:minmax(0,1fr) auto}.content:has(>.transactions-layout)>.heading>.create-button{justify-self:end;max-width:none}.transaction-filter-actions>.search-input{display:block;width:100%;max-width:none}.transaction-filter-actions>.search-input input{width:100%;min-width:0;padding-inline-start:36px}

.transactions-main>.active-filter-summary{margin:0 0 14px}.transactions-main>.active-filter-summary[hidden]{display:none}

.transaction-account-picker>.account-picker-heading{display:flex;align-items:center;justify-content:space-between;padding:10px 12px}.transaction-account-picker>.filter-options{display:grid;max-height:240px;overflow-y:auto}

.transaction-account-picker>.filter-options{position:static;inset:auto;z-index:auto;border:0;border-top:1px solid var(--border);border-radius:0 0 7px 7px;box-shadow:none}

.transaction-account-picker{border:0;background:transparent}.transaction-account-picker>.account-picker-heading{padding:0;margin-bottom:6px;font-size:.8rem;font-weight:400}.transaction-account-picker>.account-picker-heading>.badge{display:none}.transaction-account-picker>.filter-options{padding:0;border:0;background:transparent;border-radius:0}.transaction-account-picker>.filter-options label{padding:7px 0}

/* Controls are placed in the heading, filter pane and sticky table header. */
.transactions-main>.transaction-toolbar-slot{display:none}@media(min-width:951px){.content:has(>.transactions-layout){grid-template-rows:auto minmax(0,1fr);align-content:start}}

.transactions-main .bulk-header-cell .bulk-bar>strong{margin-inline-end:0}.transactions-main .bulk-header-cell .bulk-bar>[data-action=clear-selection]{margin-inline-start:auto}

.transactions-main .selectable-table col.transaction-check-col{width:36px}.transactions-main .selectable-table col.transaction-payee-col{width:29%}.transactions-main .selectable-table col.transaction-category-col{width:23%}.transactions-main .selectable-table col.transaction-account-col{width:20%}.transactions-main .selectable-table th{width:auto}

.transactions-main .selectable-table col:last-child{width:calc(28% - 36px)}.transactions-main .selectable-table thead th{width:auto!important}

.transactions-main .bulk-header-cell .bulk-bar>select#bulk-operation{margin-inline-start:auto}.transactions-main .bulk-header-cell .bulk-bar>[data-action=clear-selection]{margin-inline-start:0}

.transactions-main .selectable-table tbody tr[data-edit=tran]{cursor:pointer}.transactions-main .selectable-table tbody tr[data-edit=tran] input,.transactions-main .selectable-table tbody tr[data-edit=tran] button{cursor:pointer}

.sidebar-logout{margin-top:auto;display:flex;align-items:center;gap:12px;padding:12px 16px;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;color:var(--muted);text-align:start;font-size:.9rem;flex-shrink:0}.sidebar-logout:hover{background:var(--soft);color:var(--accent)}.sidebar-logout svg{width:20px;height:20px;flex-shrink:0}.sidebar-collapsed .sidebar-logout{justify-content:center;padding-inline:0}.sidebar-collapsed .sidebar-logout span{display:none}

/* Live data refresh stays outside the layout, so rows never move. */
.data-update-line{position:fixed;inset:0 0 auto;height:3px;z-index:10000;pointer-events:none;opacity:0;background:linear-gradient(90deg,#ffb52e,#f44766,#a450cf,#149bd2,#38bca2,#ffb52e);background-size:300% 100%;transition:opacity .45s ease}
body.data-updating .data-update-line{opacity:1;animation:data-update-colors .8s linear infinite}
@keyframes data-update-colors{from{background-position:100% 0}to{background-position:0% 0}}
@media(prefers-reduced-motion:reduce){body.data-updating .data-update-line{animation:none}.data-update-line{transition:none}}

.data-update-line{overflow:hidden}
.data-update-line::after{content:"";position:absolute;inset:0 auto 0 -35%;width:35%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:skewX(-25deg)}
body.data-updating .data-update-line::after{animation:data-update-wave 1.5s linear infinite}
@keyframes data-update-wave{from{left:-35%}to{left:100%}}
@media(prefers-reduced-motion:reduce){body.data-updating .data-update-line::after{animation:none}}

body.data-updating .data-update-line{animation:data-update-colors 1.5s linear infinite}

@media(prefers-reduced-motion:reduce){body.data-updating .data-update-line{animation:none;opacity:1}}

dialog.delete-confirmation{width:min(420px,calc(100vw - 32px));padding:28px} .delete-confirmation h2{margin:0 0 12px}.delete-confirmation p{overflow-wrap:anywhere;margin:0;color:var(--muted)}.delete-confirmation-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.delete-confirmation-actions .danger{background:var(--red);border-color:var(--red);color:#fff}

/* Android-style module add action, kept outside scrollable/filter containers. */
.module-add-fab{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:10;display:grid;place-items:center;width:56px;height:56px;min-width:56px;padding:0;border:0;border-radius:50%;background:var(--accent);color:#fff;box-shadow:0 4px 12px #0004;cursor:pointer}
.module-add-fab[data-module="accounts"]{background:#8CC152}.module-add-fab[data-module="transactions"]{background:#E04C54}.module-add-fab[data-module="budgets"]{background:#F7A032}.module-add-fab[data-module="projects"]{background:#C561D5}
.module-add-fab .ui-icon{width:28px;height:28px;stroke-width:2}.module-add-fab:hover{filter:brightness(1.08);box-shadow:0 6px 18px #0005}.module-add-fab:focus-visible{outline:3px solid var(--text);outline-offset:4px}.module-add-fab:disabled{opacity:.45;cursor:not-allowed}.workspace>.content.has-module-add{padding-bottom:104px}
@media(max-width:700px){.module-add-fab{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}}
/* Cloud backups keep actions beside each snapshot, with creation after the list. */
.cloud-backup-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--border)}
.cloud-restore-progress{padding:32px 24px;text-align:center;max-width:440px}.cloud-restore-track{height:6px;border-radius:99px;background:var(--border);overflow:hidden;direction:ltr}.cloud-restore-track span{display:block;width:35%;height:100%;border-radius:inherit;background:var(--accent,#0096bd);animation:cloud-restore-glide 1.4s ease-in-out infinite}.cloud-restore-progress h2{font-size:1.1rem;line-height:1.5;margin:24px 0 0}@keyframes cloud-restore-glide{from{transform:translateX(-110%)}to{transform:translateX(390%)}}@media(prefers-reduced-motion:reduce){.cloud-restore-track span{animation:none;transform:translateX(90%)}}
.cloud-backup-row:first-of-type{margin-top:18px}.cloud-backup-actions{display:flex;gap:8px;flex-shrink:0}.cloud-backup-row strong{display:block}.cloud-backup-row .muted{color:var(--muted);font-size:.85rem;margin-top:4px}#cloud-sync-page{max-width:1000px;display:grid;gap:20px}#cloud-backup-status:not(:empty){padding:14px 0;color:var(--red)}@media(max-width:600px){.cloud-backup-row{align-items:flex-start;flex-wrap:wrap;gap:12px}}
.qr-loading{display:grid;place-items:center;width:100%;height:100%;min-height:120px}.loading-circle{width:48px;height:48px;border:4px solid #dce6eb;border-top-color:#087ea4;border-radius:50%;animation:loading-spin .85s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-circle{animation:none;border-top-color:#087ea4}}
.bulk-warning{flex-basis:100%;white-space:normal;font-size:13px;color:var(--text);padding:4px 0}

.brand-symbol{overflow:visible}.sidebar .brand .brand-symbol img,.brand .brand-symbol img{width:100%;height:100%;left:0;top:0;object-fit:contain}
