@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',system-ui,-apple-system,sans-serif;color:#17243a;background:#f5f7fb;font-synthesis:none;--bg:#f5f7fb;--panel:#fff;--text:#17243a;--muted:#8894a6;--line:#e9edf3;--accent:#079b75;--accent-light:#e8f8f1;--red:#e45a63;--sidebar:#0c1727;--subtle:#f9fafc;--shadow:0 8px 30px rgba(25,44,77,.035)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:310px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #67e2b4;outline-offset:2px}::selection{background:#9df2cf;color:#183c2c}
.app-shell{display:flex;min-height:100vh}.sidebar{width:268px;flex:0 0 268px;background:var(--sidebar);color:#9eabc0;min-height:100vh;padding:28px 15px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:35}.brand{display:flex;align-items:center;gap:11px;padding:0 14px;color:#fff;font-family:Manrope,system-ui;font-size:22px;font-weight:800;letter-spacing:-.8px}.brand-mark{display:flex;width:38px;height:38px;align-items:center;justify-content:center;background:linear-gradient(145deg,#32cba0,#78e2b0);color:#0c3428;border-radius:12px;font-size:29px}.brand-highlight{color:#64dcb1}.brand small{display:block;font:500 10px 'DM Sans',sans-serif;color:#8293a8;letter-spacing:1.3px;margin-top:1px;text-transform:uppercase}.workspace-chip{border:1px solid #273548;border-radius:12px;margin:35px 7px 25px;padding:11px;display:flex;align-items:center;gap:10px}.avatar,.top-avatar{background:#244d4b;color:#aaf8d4;width:33px;height:33px;display:grid;place-items:center;border-radius:10px;font-weight:800}.workspace-text{flex:1;min-width:0}.workspace-text b,.workspace-text small{display:block;white-space:nowrap}.workspace-text b{font-size:11px;color:#edf4fb}.workspace-text small{font-size:10px;margin-top:4px;color:#76869b}.tiny-dot,.live-dot{width:7px;height:7px;border-radius:50%;background:#40d59f}.nav-section-title{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#66788d;padding:0 18px;margin:0 0 10px}.nav-section-bottom{margin-top:30px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:10px;font-size:12px;font-weight:600;color:#91a0b6;transition:.15s}.sidebar nav a:hover{color:#fff;background:#1b2b3e}.sidebar nav a.active{background:#183e3d;color:#78e7b9}.nav-icon{width:18px;text-align:center;font-size:18px;font-weight:400}.sidebar-footer{display:flex;gap:11px;align-items:flex-start;margin:auto 7px 0;border:1px solid #273548;background:#152238;border-radius:12px;padding:14px 12px}.sidebar-footer .shield{background:#245344;color:#6eebaf;padding:2px 6px;border-radius:50%;font-size:12px}.sidebar-footer b{font-size:11px;color:#d1dee7}.sidebar-footer small{display:block;font-size:10px;line-height:1.5;margin-top:5px}.main-frame{min-width:0;flex:1}.topbar{height:74px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 37px;border-bottom:1px solid var(--line)}.top-left,.top-right{display:flex;align-items:center;gap:17px}.breadcrumb{font-size:10px;font-weight:800;color:#a5afbe;letter-spacing:1.4px}.breadcrumb span{margin:0 10px;color:#d0d7e0}.breadcrumb strong{color:#64768b}.status-pill{background:#eef9f3;border:1px solid #d8f2e6;color:#318968;padding:8px 11px;border-radius:100px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:7px}.top-avatar{background:#e9f5ef;color:#1b9e70;width:35px;height:35px;border-radius:50%;font-size:13px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:9px;width:35px;height:35px;color:#8391a5;font-size:16px}.menu-btn{display:none}main{max-width:1640px;margin:0 auto;padding:34px 37px 80px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin:0 0 26px}.eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:2px;color:var(--accent);margin:0 0 9px;text-transform:uppercase}.page-heading h1{font:800 27px/1.2 Manrope,system-ui;margin:0;color:var(--text);letter-spacing:-1.1px}.page-heading p{color:var(--muted);font-size:12px;margin:9px 0 0;line-height:1.6}.heading-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{border-radius:9px;padding:11px 16px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:11px;font-weight:800;display:inline-flex;gap:9px;align-items:center;justify-content:center;min-height:37px}.btn.primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn.primary:hover{background:#087c5f}.btn.soft{background:var(--accent-light);color:var(--accent);border-color:transparent}.btn.danger{background:#fff0f1;color:var(--red);border-color:#ffe2e4}.btn.small{padding:7px 10px;min-height:0}.btn:disabled{opacity:.45;cursor:not-allowed}.icon-text{font-size:16px;line-height:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:19px 20px;min-width:0;position:relative;overflow:hidden}.metric-caption{font-size:11px;font-weight:700;color:#8794a6;display:flex;align-items:center;justify-content:space-between;gap:6px}.metric-icon{height:30px;width:30px;border-radius:9px;background:#edf8f3;color:#168d69;display:grid;place-items:center;font-size:16px}.metric-icon.red{background:#fff1f0;color:#e25d64}.metric-icon.blue{background:#eef4ff;color:#6284d6}.metric-icon.purple{background:#f3efff;color:#9675cf}.metric-value{font:800 clamp(17px,2vw,27px)/1.35 Manrope,system-ui;letter-spacing:-.7px;margin:13px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-desc{font-size:10px;color:#a0aabb}.metric-desc .positive{color:#1c9c74}.metric-desc .negative{color:#e26567}.card{background:var(--panel);border-radius:14px;border:1px solid var(--line);box-shadow:var(--shadow);padding:20px;min-width:0}.section-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.section-header h2{font:800 14px Manrope,system-ui;letter-spacing:-.3px;margin:0}.section-header small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.section-link{color:var(--accent);font-size:11px;font-weight:800}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,1fr);gap:18px;margin-bottom:18px}.secondary-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,1fr);gap:18px}.chart-legend{display:flex;gap:17px;color:#79889a;font-size:10px;font-weight:700}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#1d9b78;margin-right:6px}.legend-dot.expense{background:#efa1a3}.line-chart{width:100%;height:230px;display:block;overflow:visible}.chart-foot{display:flex;justify-content:space-between;padding:0 8px;color:#98a4b2;font-size:10px}.donut-wrap{display:flex;align-items:center;gap:20px;min-height:220px}.donut{height:173px;width:173px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.donut-hole{height:121px;width:121px;border-radius:50%;background:var(--panel);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.donut-hole small{color:#99a5b4;font-size:10px}.donut-hole strong{font:800 15px Manrope;margin-top:4px}.legend-list{flex:1;min-width:0}.legend-line{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:10px;color:#63758b}.legend-line .dot{width:8px;height:8px;flex:0 0 8px;border-radius:3px}.legend-line b{margin-left:auto;color:var(--text);font-size:10px}.rows{display:flex;flex-direction:column}.tx-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.tx-row:first-child{border-top:none}.tx-symbol{width:38px;height:38px;flex:0 0 38px;border-radius:11px;display:grid;place-items:center;font-size:18px;background:#edf4fc}.tx-details{min-width:0;flex:1}.tx-details b{font-size:11px;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tx-details small{font-size:10px;color:#9ba6b4;display:block;margin-top:6px}.tx-amount{font-size:12px;font-weight:800;white-space:nowrap}.tx-amount.income{color:var(--accent)}.tx-amount.expense{color:var(--text)}.muted{color:var(--muted)}.text-red{color:var(--red)}.text-green{color:var(--accent)}.progress-group{margin:15px 0}.progress-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-bottom:9px;gap:10px}.progress-top b{font-weight:700}.progress-top span{color:#8996a7;font-size:10px}.track{height:7px;border-radius:10px;background:#edf1f5;overflow:hidden}.track i{height:100%;display:block;border-radius:10px;background:#26ad85;min-width:0}.track i.warning{background:#f4b654}.track i.over{background:#e87375}.banner{background:linear-gradient(100deg,#103b34,#096c58);border-radius:14px;padding:22px;color:white;display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.banner strong{font:800 15px Manrope}.banner p{font-size:11px;color:#c5e9dc;line-height:1.6;margin:7px 0 0}.banner .btn{background:#fff;color:#106b52;border:none}.notice{padding:12px 15px;background:#fff8e9;color:#90681f;border:1px solid #fae7b8;border-radius:10px;font-size:11px;line-height:1.6;margin-bottom:18px}.notice a,.notice button{color:#9b6a0a;text-decoration:underline;background:transparent;border:0;font-weight:800;padding:0}.pill{display:inline-flex;padding:5px 9px;border-radius:100px;background:#eff8f3;color:#168669;font-size:10px;font-weight:800}.pill.red{background:#fff0f1;color:#d95d69}.pill.gray{background:#f0f3f6;color:#8894a6}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:17px}.field,.field select,.field input,.field textarea{min-width:0}.field{display:flex;flex-direction:column;gap:7px;flex:1}.field label{font-size:10px;font-weight:800;color:#61758c}.field input,.field select,.field textarea,.search-input{width:100%;border:1px solid #e1e7ee;border-radius:9px;background:var(--panel);color:var(--text);padding:11px 12px;min-height:39px;font-size:12px;outline:0}.field textarea{resize:vertical;min-height:76px}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus{border-color:#4bcaa2;box-shadow:0 0 0 3px #68d9b526}.search-input{min-width:230px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:11px;min-width:600px}.data-table th{color:#9ca9b7;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--line);padding:13px 10px}.data-table td{border-bottom:1px solid var(--line);padding:13px 10px;color:#63748a}.data-table td strong{color:var(--text)}.data-table tr:last-child td{border-bottom:0}.table-actions{white-space:nowrap}.ghost-btn{background:none;border:0;color:#99a5b3;padding:4px 6px;font-size:12px}.ghost-btn:hover{color:var(--accent)}.empty{padding:55px 15px;text-align:center;color:#8895a5;font-size:12px;line-height:1.7}.empty-icon{font-size:34px;margin-bottom:8px}.empty h3{font-size:16px;margin:6px;color:var(--text)}.account-grid,.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.account-tile{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:19px;min-width:0;position:relative}.account-tile .acc-icon{width:38px;height:38px;display:grid;place-items:center;background:#eef6fe;border-radius:10px;font-size:20px;margin-bottom:19px}.account-tile small{color:#98a4b2;font-size:10px}.account-tile h3{font-size:12px;margin:0 0 7px}.account-tile .amount{font:800 21px Manrope;margin-top:9px;overflow:hidden;text-overflow:ellipsis}.account-tile .card-actions{display:flex;gap:5px;margin-top:14px}.budget-layout{display:grid;grid-template-columns:1fr;gap:17px}.budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.budget-tile{padding:19px;border:1px solid var(--line);border-radius:13px}.budget-tile .progress-top{margin:0 0 14px}.budget-tile .progress-top b{font-size:12px}.budget-tile .budget-sums{display:flex;justify-content:space-between;color:#8694a4;font-size:10px;margin:11px 0}.budget-tile .budget-sums b{color:var(--text)}.budget-tile .budget-bottom{margin-top:10px;display:flex;justify-content:space-between;gap:8px}.grocery-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:17px}.grocery-item{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:13px 3px}.grocery-item:last-child{border-bottom:0}.grocery-item input[type=checkbox]{accent-color:var(--accent);width:17px;height:17px;cursor:pointer}.grocery-item b{font-size:12px;display:block}.grocery-item small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.grocery-item.purchased b{text-decoration:line-through;color:#9ba7b4}.grocery-item .grocery-price{margin-left:auto;text-align:right;white-space:nowrap;font-size:12px;font-weight:800}.grocery-item .grocery-price small{font-weight:400}.grocery-total{background:#f1faf5;padding:22px;border-radius:13px}.grocery-total small{font-size:11px;color:#6e9c8e}.grocery-total strong{display:block;font:800 27px Manrope;color:#096c53;margin:9px 0}.grocery-summary{display:flex;justify-content:space-between;border-bottom:1px solid #d8eee4;padding:12px 0;color:#6b8b82;font-size:11px}.grocery-summary b{color:#265e4c}.grocery-total .btn{width:100%;margin-top:20px}.credit-card{background:linear-gradient(135deg,#192d45 0%,#0e544d 100%);min-height:175px;border-radius:14px;color:#fff;padding:20px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 14px 25px #152f3c18}.credit-card:nth-child(3n+2){background:linear-gradient(135deg,#513957,#261c4b)}.credit-card:nth-child(3n+3){background:linear-gradient(135deg,#233e69,#31748d)}.credit-card .cc-top,.credit-card .cc-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.credit-card .cc-top b{font:800 15px Manrope}.credit-card .cc-top small{font-size:10px;color:#d1e3e4}.credit-card .cc-number{font:700 15px Manrope;letter-spacing:3px;margin-top:10px}.credit-card .cc-bottom small{font-size:10px;color:#b4c5cf}.credit-card .cc-bottom strong{font:800 18px Manrope}.card-stats{padding:14px 0}.card-stat{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8894a4;padding:9px 0}.card-stat b{color:var(--text)}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.bar-line{display:flex;align-items:center;gap:9px;padding:10px 0;font-size:11px}.bar-line .bar-label{width:95px;flex-shrink:0;color:#7c8898;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-line .bar-track{flex:1;background:#eef2f6;height:12px;border-radius:4px;overflow:hidden}.bar-line .bar-track i{display:block;height:100%;background:#21a57e;border-radius:4px}.bar-line b{width:90px;text-align:right;font-size:10px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.setting-line{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);gap:12px}.setting-line:first-of-type{border-top:0}.setting-line b{display:block;font-size:11px}.setting-line small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.setting-line select{max-width:145px}.stat-stack{display:flex;flex-direction:column;gap:12px}.mini-card{border:1px solid var(--line);border-radius:10px;padding:13px}.mini-card strong{font-size:11px}.mini-card small{display:block;color:var(--muted);font-size:10px;margin-top:7px}.modal-overlay{position:fixed;inset:0;background:#0b1625b0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto}.modal{background:var(--panel);width:100%;max-width:540px;max-height:calc(100dvh - 30px);overflow-y:auto;border-radius:18px;padding:24px;box-shadow:0 25px 60px #00112244}.modal-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}.modal-title h2{font:800 19px Manrope;margin:0;letter-spacing:-.5px}.modal-close{border:0;background:#f2f5f8;color:#738194;width:32px;height:32px;border-radius:8px}.type-switch{display:flex;gap:6px;padding:4px;background:#f2f5f8;border-radius:10px;margin-bottom:18px}.type-switch button{border:0;flex:1;background:transparent;padding:10px 4px;color:#7f8ca0;font-weight:800;font-size:11px;border-radius:7px}.type-switch button.active{background:#fff;box-shadow:0 1px 6px #15334418;color:var(--accent)}.toast{background:#1c3547;color:#fff;border-radius:10px;padding:13px 17px;box-shadow:0 8px 30px #001a2733;font-size:12px;max-width:360px}.toast.error{background:#b94853}#toast-root{position:fixed;right:22px;bottom:22px;z-index:120;display:grid;gap:8px}.backdrop{position:fixed;inset:0;background:#071b2b99;z-index:31}.mobile-tabs{display:none}.hint{font-size:10px;color:#93a0af;line-height:1.6;margin-top:7px}.data-hint{padding:12px;border-radius:9px;background:#eef8f4;font-size:11px;color:#418571;margin-bottom:15px}.group-head{font-size:11px;font-weight:800;color:#9aa5b4;text-transform:uppercase;letter-spacing:1px;margin:18px 0 8px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.divider{border-top:1px solid var(--line);margin:16px 0}.nowrap{white-space:nowrap}.danger-zone{border:1px solid #f6cbd0;background:#fff9f9}.checkbox-row{display:flex;gap:9px;align-items:center;color:#5f7285;font-size:12px}.checkbox-row input{accent-color:var(--accent)}.flash{background:#eaf8f3;padding:2px 6px;color:#1e8c6a;border-radius:5px;font-size:10px;font-weight:800}
body.dark{--bg:#101d2d;--panel:#17283a;--text:#ecf4fb;--muted:#90a5b8;--line:#293b4e;--accent-light:#133f39;--subtle:#152333;background:var(--bg);color:var(--text)}body.dark .topbar,body.dark .icon-btn{background:var(--panel)}body.dark .modal-close,body.dark .type-switch{background:#253c4e}body.dark .type-switch button.active{background:#335263}body.dark .field input,body.dark .field select,body.dark .field textarea,body.dark .search-input{background:#192e40;border-color:#355062}body.dark .donut-hole{background:var(--panel)}body.dark .grocery-total{background:#184737}body.dark .grocery-total strong{color:#c5f6dc}body.dark .notice{background:#49391e}body.dark .track,body.dark .bar-line .bar-track{background:#344457}body.dark .btn{background:#1d3446}body.dark .btn.primary{background:var(--accent)}body.dark .btn.soft{background:#154839}body.dark .sidebar{background:#091523}body.dark .grocery-item.purchased b{color:#60758a}
@media (max-width:1250px){.sidebar{width:233px;flex-basis:233px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-grid,.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.donut-wrap{flex-direction:column;align-items:center}.legend-list{width:100%}.legend-line{padding:5px 0}}
@media (max-width:980px){.sidebar{position:fixed;transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.menu-btn{display:inline-block}main{padding:26px 24px 85px}.topbar{padding:0 24px}.dashboard-grid,.secondary-grid{grid-template-columns:1fr}.donut-wrap{flex-direction:row}.grocery-layout{grid-template-columns:1fr}}
@media (max-width:640px){.topbar{height:61px;padding:0 16px}.top-right{gap:8px}.top-avatar,.status-pill{display:none}.breadcrumb{font-size:9px}.breadcrumb span{margin:0 5px}main{padding:22px 14px 95px}.page-heading{flex-wrap:wrap;margin-bottom:20px}.page-heading h1{font-size:23px}.page-heading .heading-actions{width:100%}.metric-grid{gap:10px}.metric{padding:14px}.metric-value{font-size:19px}.metric-caption{font-size:10px}.metric-icon{width:26px;height:26px;font-size:13px}.dashboard-grid,.secondary-grid,.report-grid,.settings-grid,.budget-grid,.two-col{grid-template-columns:1fr;gap:12px}.card{padding:17px}.account-grid,.card-grid{grid-template-columns:1fr}.donut-wrap{flex-direction:column}.banner{flex-direction:column;align-items:flex-start}.mobile-tabs{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;padding:7px 3px calc(7px + env(safe-area-inset-bottom));background:var(--panel);box-shadow:0 -5px 25px #06192b16;border-top:1px solid var(--line);z-index:29}.mobile-tabs a,.mobile-tabs button{display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:column;border:0;background:none;font-size:9px;color:#8a9aab;font-weight:800;padding:2px 1px}.mobile-tabs span{font-size:20px;line-height:24px}.mobile-tabs .active{color:var(--accent)}.mobile-tabs button span{background:var(--accent);border-radius:14px;width:43px;height:39px;display:grid;place-items:center;color:white;font-size:25px;margin-top:-19px;box-shadow:0 6px 15px #08a47b44}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.search-input{min-width:0;flex:1}.filters{display:grid;grid-template-columns:1fr 1fr}.filters .search-input{grid-column:1/-1}.modal{padding:17px}#toast-root{left:12px;right:12px;bottom:90px}.toast{max-width:none}}
.credit-card .cc-bottom>div{min-width:0}.credit-card .cc-bottom>div small,.credit-card .cc-bottom>div strong{display:block;white-space:nowrap}.credit-card .cc-bottom>div strong{margin-top:5px}

/* Philippine bank directory & authentic issuer card-image library */
.directory-pager{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:15px;padding:16px 4px 1px}
.card-issuer-tile{min-width:0;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--panel);box-shadow:var(--shadow)}
.card-issuer-tile .card-stats{padding:8px 3px 2px}
.card-issuer-tile .card-stat{border-bottom:1px solid var(--line)}
.card-issuer-tile .card-stat:first-child b{font-size:13px}
.card-issuer-tile .credit-card{min-height:205px}
.auth-card-visual{background:linear-gradient(135deg,#f2f5fa,#eef4f7);border:1px solid var(--line);border-radius:12px;min-height:220px;overflow:hidden;padding:15px;display:flex;align-items:center;justify-content:center}
.auth-card-image{width:100%;height:192px;position:relative;display:flex;align-items:center;justify-content:center}
.auth-card-image img{display:block;max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 7px 13px #1b344029)}
.art-not-available{display:none;text-align:center;font-size:11px;color:#71889a;padding:18px;line-height:1.5}
.image-failed .art-not-available{display:block}
.card-art-credit{display:flex;align-items:center;justify-content:space-between;color:#8a99a9;font-size:10px;margin:10px 3px 0;gap:10px}
.card-art-credit a{font-size:14px;color:var(--accent)}
.art-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.card-catalog-info{padding:12px 14px;color:#70889c;font-size:11px;line-height:1.6;background:#eef8f5;border-radius:10px;margin:-4px 0 16px}
.art-gallery-item{border:1px solid var(--line);border-radius:12px;padding:10px;min-width:0;display:flex;flex-direction:column}
.art-thumbnail{height:132px;border-radius:9px;background:#f3f6fa;padding:9px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.art-thumbnail img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 8px #091b2633)}
.art-gallery-caption{padding:10px 2px 6px;flex:1}
.art-gallery-caption b{display:block;font-size:11px;color:var(--text);line-height:1.5}
.art-gallery-caption small{display:block;font-size:9px;color:var(--muted);margin-top:6px;line-height:1.5}
.art-gallery-actions{display:flex;align-items:center;justify-content:space-between;gap:7px;flex-wrap:wrap}
.art-gallery-actions a{font-size:10px;color:var(--accent);font-weight:800}
.art-gallery-actions .btn{font-size:10px}
.art-preview{display:flex;gap:12px;border:1px solid var(--line);border-radius:10px;padding:11px;margin-top:10px;align-items:center}
.art-preview img{width:120px;height:90px;max-width:35%;object-fit:contain;background:#f2f5f9;border-radius:7px;padding:5px}
.art-preview div{min-width:0}
.art-preview b{display:block;font-size:11px;line-height:1.4}
.art-preview small{display:block;font-size:10px;color:var(--muted);margin-top:6px}
.art-preview a{display:inline-block;color:var(--accent);font-size:10px;font-weight:700;margin-top:8px}
body.dark .auth-card-visual,body.dark .art-thumbnail,body.dark .art-preview img{background:#24384d}
body.dark .card-catalog-info{background:#173d36;color:#b6d7ce}
@media(max-width:1450px){.art-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.art-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.art-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.art-gallery-item{padding:8px}.art-thumbnail{height:95px}.art-gallery-actions .btn{font-size:9px;padding:7px}.auth-card-visual{min-height:180px}.auth-card-image{height:155px}}

/* Advanced finance workspace */
.modal:has(.split-section){max-width:930px}
.split-section{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--subtle);margin:4px 0 10px}
.split-section[hidden],#split-choice[hidden]{display:none}
.split-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;gap:10px}
.split-heading b{font-size:12px}
.split-line-labels,.split-line{display:grid;grid-template-columns:minmax(140px,2fr) minmax(56px,.45fr) minmax(82px,.65fr) minmax(75px,.6fr) minmax(135px,1.2fr) 30px;gap:7px;align-items:center}
.split-line-labels{padding:0 2px 7px;font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.7px}
.split-line{margin-bottom:8px}
.split-line .search-input{min-width:0;font-size:11px;padding:8px 9px;height:39px}
.split-line button{height:34px}
.split-total{margin-top:13px;background:#e2f7ee;border:1px solid #bfe9d7;border-radius:10px;padding:12px;font-size:11px;font-weight:800;color:#176749;line-height:1.7}
.split-total.split-error{color:#9a3e4a;background:#fff0ee;border-color:#ffcdd0}
.detail-pairs{display:grid;grid-template-columns:minmax(110px,1fr) minmax(120px,1.4fr);gap:10px;padding:14px 0;border-bottom:1px solid var(--line);font-size:11px}
.detail-pairs span{color:var(--muted)}
.detail-pairs b{text-align:right;overflow-wrap:anywhere}
.detail-subhead{font:800 13px Manrope,system-ui;margin-top:22px}
.tx-detail-top{background:linear-gradient(115deg,#122f37,#0d6a58);border-radius:12px;color:white;padding:20px}
.tx-detail-top small{display:block;text-transform:uppercase;color:#b4e7d5;font-size:10px;font-weight:800}
.tx-detail-top h2{font-size:17px;margin:9px 0}
.tx-detail-top strong{font:800 28px Manrope,system-ui}
.receipt-viewer{margin-top:17px}
.receipt-box{padding:16px;border:1px solid var(--line);border-radius:12px}
.receipt-thumb{max-width:100%;max-height:330px;display:block;margin:auto;object-fit:contain;border-radius:10px}
.receipt-box a{color:var(--accent);font-weight:800}
body.dark .split-section{background:#172637}
body.dark .split-total{background:#184c3c;border-color:#1e7559;color:#b3ffdd}
body.dark .split-total.split-error{background:#512c36;border-color:#a55a5f;color:#f2c1c8}
@media(max-width:720px){
.modal:has(.split-section){max-width:100%}
.split-section{padding:11px}
.split-line-labels{display:none}
.split-line{grid-template-columns:1fr 1fr 1fr;gap:8px;border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:12px}
.split-line .split-name{grid-column:1/-1}
.split-line [data-line=category]{grid-column:1/3}
.split-line .ghost-btn{grid-column:3}
.split-line .search-input{font-size:11px}
.detail-pairs{grid-template-columns:1fr 1.2fr}
}

#split-choice .checkbox-row{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:10px;font-size:12px;font-weight:800;color:var(--text)}
#split-choice .checkbox-row input[type=checkbox]{width:17px;height:17px;min-height:17px;min-width:17px;max-width:17px;padding:0;margin:0;flex:0 0 17px;accent-color:var(--accent)}

/* Additional modules may extend the workspace navigation; keep every section reachable. */
.sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#2b455b transparent}
.sidebar-footer{flex-shrink:0}
#cloud-panel .two-col>form{min-width:0}
#cloud-panel .search-input{max-width:100%}
#cloud-panel .card-stat{gap:10px}
#bank-import-panel .search-input{max-width:100%}
#reminder-panel .card-stat{gap:10px}
@media(max-width:640px){#cloud-panel .heading-actions,#bank-import-panel .heading-actions,#reminder-panel .heading-actions{width:100%}#cloud-panel .btn{white-space:normal}#cloud-panel select{max-width:100%}}
