/* Everything in this file is opt-in. Existing theme rules are unchanged. */
html:root.cb-obsidian{color-scheme:dark;--ob-bg:#08090b;--ob-panel:#111214;--ob-raised:#1a1b1e;--ob-line:#2b2c30;--ob-ink:#f3f3f5;--ob-muted:#929398;--ob-frame:#5c5d61;--ob-blue:#78a7ff;--ob-green:#4bce95;--ob-shadow:inset 0 1px 0 #ffffff09,0 8px 22px #00000030;--bg:#252629;--panel:var(--ob-bg);--card:var(--ob-panel);--soft:var(--ob-raised);--line:var(--ob-line);--bd:var(--ob-line);--ink:var(--ob-ink);--ink2:#c3c4c9;--mut:var(--ob-muted);--mut2:var(--ob-muted);--g1:#a1c0ff;--g2:var(--ob-blue);--gsoft:#78a7ff18;--pos:#4bce95;--red:#ff7a86}
html:root.cb-obsidian.cb-obsidian-light{color-scheme:light;--ob-bg:#f0f1f4;--ob-panel:#fff;--ob-raised:#f3f4f7;--ob-line:#e0e2e8;--ob-ink:#202127;--ob-muted:#737680;--ob-frame:#bec2cb;--ob-blue:#377bd9;--ob-green:#208353;--ob-shadow:inset 0 1px 0 #fff,0 5px 18px #24304808;--bg:#d9dce2;--ink2:#434651;--g1:#285dba;--gsoft:#377bd912;--pos:#208353;--red:#bb3446}
html.cb-obsidian body{background:var(--bg)!important;color:var(--ob-ink)}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .shell{grid-template-columns:58px minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;gap:12px!important;padding:9px!important;margin:8px auto!important;width:calc(100% - 16px)!important;max-width:1800px!important;height:calc(var(--cb-viewport-height,100dvh) - 16px)!important;min-height:0!important;border:5px solid var(--ob-frame)!important;border-radius:32px!important;background:var(--ob-bg)!important;box-shadow:0 18px 60px #0003}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side{display:flex!important;flex-direction:column!important;align-items:center!important;gap:4px!important;position:relative!important;inset:auto!important;width:58px!important;height:100%!important;padding:9px 3px!important;background:linear-gradient(155deg,var(--ob-raised),var(--ob-bg))!important;border:1px solid var(--ob-line)!important;border-radius:22px!important;overflow:auto!important;scrollbar-width:none}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side :is(.brand b,.sec,.sep,.ngh,.side-ai,.sup,.sigw,.sidetools,.gtx){display:none!important}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .brand{display:flex!important;padding:3px!important;margin:0 0 18px!important;flex:none;justify-content:center}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .brand .logo{width:34px;height:34px;color:var(--ob-ink)}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side :is(#menuMain,.ng,.ngb,.ngsub){display:contents!important}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nrow{display:flex!important;flex-direction:column!important;width:100%;margin-top:auto!important;padding-top:12px;flex:none}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nav{display:flex!important;flex:none!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;width:44px!important;height:44px!important;min-height:44px!important;padding:10px!important;margin:0!important;border-radius:13px!important;color:var(--ob-muted);background:none}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nav :is(span,.bdg),html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nav::before,html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nav::after{display:none!important}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nav.on{background:var(--ob-ink)!important;color:var(--ob-bg)!important}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nav .i{display:block!important;color:inherit!important;width:18px!important;height:18px!important}
html:root.cb-obsidian:not(.gapp):not(.mapp) body header.top{display:flex!important;flex-wrap:wrap!important;gap:8px!important;min-height:50px!important;padding:4px 10px!important;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:14px!important;color:var(--ob-ink)}
html.cb-obsidian .top :is(.gsearch,.rb,.pill){background:linear-gradient(135deg,var(--ob-raised),var(--ob-panel))!important;color:var(--ob-ink)!important;border:1px solid var(--ob-line)!important;box-shadow:none!important}
html.cb-obsidian .top .gsearch{max-width:310px}.cb-obsidian .top .gsearch input{color:var(--ob-ink)}
html:root.cb-obsidian:not(.gapp):not(.mapp) body .content{padding:8px 10px 14px!important;border:0!important;border-radius:18px!important;background:transparent!important;min-width:0;overflow-y:auto;overflow-x:hidden}
html.cb-obsidian .view :is(.card,.panel,.apanel,.kpi,.stat,.sc,.bw-card,.bw-stat,.pt-card,.as-card,.loan-card,.bill-card,.doc-card,.emcard,.cb-appearance-settings,.cb-toolbar-icon-settings){background:var(--ob-panel)!important;color:var(--ob-ink)!important;border-color:var(--ob-line)!important;box-shadow:var(--ob-shadow)!important}
html.cb-obsidian .view :is(input,select,textarea){background-color:var(--ob-raised)!important;color:var(--ob-ink)!important;border-color:var(--ob-line)!important}
html.cb-obsidian :is(dialog,.dlg){background:var(--ob-panel);color:var(--ob-ink);border-color:var(--ob-line)}
html.cb-obsidian .view :is(th,.field,.seg,.tab,.chip){background-color:var(--ob-raised)!important;color:var(--ob-ink);border-color:var(--ob-line)}
html.cb-obsidian .view :is(.mut,.sub,.empty-s){color:var(--ob-muted)}
.ob-dashboard{color:var(--ob-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-width:0}
.ob-dashboard *{box-sizing:border-box}.ob-dashboard button{font:inherit;color:inherit;cursor:pointer}.ob-dashboard button:disabled{opacity:.3;cursor:default}.ob-dashboard button:focus-visible{outline:2px solid var(--ob-blue);outline-offset:3px}
.ob-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px}.ob-heading h1{font-size:clamp(22px,2.5cqi,30px);font-weight:550;letter-spacing:-.6px;margin:0}.ob-heading>div{display:flex;align-items:center;gap:8px}
.ob-add,.ob-panel-head>button,.ob-calendar-head>button{display:grid;place-items:center;min-width:36px;min-height:36px;border:1px solid var(--ob-line);background:linear-gradient(140deg,var(--ob-raised),var(--ob-panel));border-radius:50%;font-size:18px}
.ob-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(265px,.9fr);gap:14px;align-items:stretch}
.ob-panel{background:linear-gradient(145deg,var(--ob-panel),color-mix(in srgb,var(--ob-panel) 92%,var(--ob-raised)));border:1px solid var(--ob-line);border-radius:24px;padding:20px;min-width:0;box-shadow:var(--ob-shadow);overflow:hidden}
.ob-panel h2{font-size:15px;font-weight:550;margin:0;line-height:1.4}.ob-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.ob-panel-head>button{min-width:32px;min-height:32px;font-size:15px}
.ob-revenue{grid-column:1/3;display:flex;flex-direction:column;min-height:360px}.ob-segment{display:flex;padding:4px;gap:2px;border:1px solid var(--ob-line);border-radius:30px;background:var(--ob-raised)}.ob-segment button{background:none;border:0;border-radius:22px;padding:7px 12px;font-size:10px;color:var(--ob-muted)}.ob-segment button[aria-pressed=true]{background:var(--ob-ink);color:var(--ob-bg);box-shadow:0 2px 8px #0002}
.ob-revenue-total{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.ob-revenue-total>strong{font-size:clamp(26px,3.5cqi,40px);font-weight:550;letter-spacing:-1.1px;overflow-wrap:anywhere}.ob-revenue-total em{font-size:10px;font-style:normal;color:#fff;background:#2fa976;padding:5px 8px;border-radius:20px}.ob-revenue-total em.negative{background:#ac4653}.ob-muted{font-size:10px;color:var(--ob-muted)}
.ob-chart{height:220px;display:flex;align-items:stretch;gap:clamp(5px,1cqi,15px);margin-top:24px;background:repeating-linear-gradient(to top,transparent 0,transparent 49px,color-mix(in srgb,var(--ob-line) 40%,transparent) 50px);border-bottom:1px solid var(--ob-line)}.ob-month{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;align-items:center}.ob-bar{position:relative;display:flex;align-items:flex-end;justify-content:center;width:100%;height:190px;padding:0;border:0;background:none;border-radius:12px}.ob-bar>i{display:block;width:100%;height:max(3px,var(--bar));border:1px solid #6a6b6d66;border-radius:10px;background:repeating-linear-gradient(135deg,#ffffff04 0,#ffffff04 2px,transparent 2px,transparent 5px),linear-gradient(#303134,#17181a);box-shadow:inset 0 2px 0 #ffffff16}.ob-bar>i::before{content:"";display:block;width:45%;height:2px;margin:5px auto;background:#b9babe;border-radius:4px}.ob-bar.active>i{background:linear-gradient(#89b7ff,#568de8);border-color:#9cbfff;box-shadow:0 0 22px #609aff18}.ob-bar>span{position:absolute;bottom:9px;font-size:8px;color:#fff;opacity:0;max-width:100%;overflow:hidden}.ob-bar.active>span,.ob-bar:hover>span,.ob-bar:focus-visible>span{opacity:1}.ob-month>small{font-size:9px;color:var(--ob-muted);padding-bottom:8px}.ob-chart-note{color:var(--ob-muted);font-size:10px;margin:10px 0 0}
.cb-obsidian-light .ob-bar>i{background:repeating-linear-gradient(135deg,#00000004 0,#00000004 2px,transparent 2px,transparent 5px),linear-gradient(#d4d7df,#e9ebf0);border-color:#bbc0cb}.cb-obsidian-light .ob-bar.active>i{background:linear-gradient(#96bdff,#568de8);border-color:#6497ef}
.ob-calendar{display:flex;flex-direction:column;padding:16px}.ob-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:18px}.ob-calendar-head h2{font-size:12px}.ob-calendar-head>button{min-width:30px;min-height:30px;font-size:20px}.ob-weekdays,.ob-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.ob-weekdays{margin-bottom:9px;font-size:9px;text-align:center;color:var(--ob-muted)}.ob-calendar-grid button{position:relative;display:grid;place-items:center;aspect-ratio:auto;height:30px;min-width:0;min-height:28px;border:1px solid #ffffff05;border-radius:9px;background:linear-gradient(140deg,var(--ob-raised),var(--ob-panel));font-size:10px}.ob-calendar-grid button.selected{color:white;border-color:#b3caff;background:linear-gradient(#9fbaff,#4269b3);box-shadow:0 4px 12px #719dff25}.ob-calendar-grid .has-bill::after{content:"";position:absolute;bottom:3px;width:3px;height:3px;background:var(--ob-blue);border-radius:50%}.ob-calendar-total{display:flex;align-items:center;gap:12px;border:1px solid var(--ob-line);border-radius:16px;background:var(--ob-raised);padding:13px;margin-top:16px}.ob-calendar-total>span{width:36px;height:36px;border-radius:50%;background:var(--ob-panel);display:grid;place-items:center;color:var(--ob-muted)}.ob-calendar-total>div{min-width:0}.ob-calendar-total strong{display:block;font-size:25px;font-weight:550;line-height:1.15;overflow-wrap:anywhere;letter-spacing:-.6px}.ob-calendar-total small{display:block;color:var(--ob-muted);font-size:9px;margin-top:3px}
.ob-summary{display:flex;flex-direction:column}.ob-spark{color:var(--ob-blue);font-size:20px;margin-right:4px}.ob-eyebrow{font-size:10px;letter-spacing:.9px;color:var(--ob-muted)}.ob-summary>p{font-size:12px;line-height:1.7;color:var(--ob-muted);margin:10px 0 16px}.ob-summary-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.ob-summary-metrics>button{background:var(--ob-raised);border:1px solid var(--ob-line);border-radius:13px;text-align:left;padding:12px;min-width:0}.ob-summary-metrics small{display:block;font-size:9px;color:var(--ob-muted);margin-bottom:9px}.ob-summary-metrics b{font-size:24px;font-weight:550;margin-right:6px}.ob-summary-metrics em{display:inline-block;font-style:normal;font-size:8px;color:var(--ob-green)}.ob-ask{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:40px;border:1px solid var(--ob-line);border-radius:24px;background:var(--ob-raised);padding:10px 13px;text-align:left;font-size:10px!important;color:var(--ob-muted)!important;margin-top:13px}
.ob-spending-body{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,1fr);gap:14px;align-items:center;margin:8px 0 18px}.ob-donut{position:relative;aspect-ratio:1;max-width:190px;width:100%;border-radius:50%;background:var(--donut);margin:auto;box-shadow:inset 0 0 0 1px #ffffff0a}.ob-donut>div{position:absolute;inset:15%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8px;background:var(--ob-panel);gap:5px}.ob-donut strong{font-size:clamp(16px,1.7cqi,24px);font-weight:550;max-width:100%;overflow-wrap:anywhere}.ob-donut small{font-size:10px;color:var(--ob-muted)}.ob-category-legend{list-style:none;margin:0;padding:0;display:grid;gap:10px;min-width:0}.ob-category-legend li{display:grid;grid-template-columns:6px minmax(0,1fr);gap:2px 6px;align-items:center;font-size:9px}.ob-category-legend i{width:5px;height:5px;border-radius:50%}.ob-category-legend span{overflow-wrap:anywhere;color:var(--ob-muted)}.ob-category-legend b{grid-column:2;font-size:9px;font-weight:500}.ob-insight{display:flex;align-items:flex-start;gap:8px;background:var(--ob-raised);border:1px solid var(--ob-line);padding:11px;width:100%;border-radius:13px;text-align:left;font-size:10px!important;line-height:1.5;color:var(--ob-muted)!important}
.ob-payment-score{display:flex;align-items:center;gap:8px;background:var(--ob-raised);border:1px solid var(--ob-line);border-radius:22px;padding:8px 10px;font-size:9px;color:var(--ob-muted);margin-bottom:13px}.ob-payment-score>i{display:block;flex:1;height:10px;border-radius:6px;background:linear-gradient(90deg,#e9c836 var(--paid),var(--ob-line) var(--paid));mask-image:repeating-linear-gradient(90deg,#000 0,#000 2px,transparent 2px,transparent 4px)}.ob-bill-list{display:grid}.ob-bill-row{display:flex;align-items:center;gap:8px;width:100%;padding:13px 0;background:none;border:0;border-bottom:1px solid var(--ob-line);text-align:left}.ob-bill-row>span{min-width:0;flex:1}.ob-bill-row b{display:block;font-size:11px;font-weight:500;overflow-wrap:anywhere}.ob-bill-row small{display:block;font-size:9px;color:var(--ob-muted);margin-top:4px}.ob-bill-row em{font-size:8px;font-style:normal;border:1px solid var(--ob-line);border-radius:20px;padding:4px 6px;color:var(--ob-muted)}.ob-bill-row strong{font-size:10px;max-width:34%;overflow-wrap:anywhere}.ob-all-bills{background:none;border:0;padding:15px 0 0;font-size:10px!important;text-align:left}.ob-empty{font-size:11px;color:var(--ob-muted);line-height:1.7}.ob-footnote{font-size:10px;color:var(--ob-muted);line-height:1.7;margin:16px 0 0}
@container cbpage (max-width:1000px){.ob-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ob-revenue{grid-column:1/-1}.ob-calendar{grid-column:1;grid-row:2}.ob-summary{grid-column:2;grid-row:2}.ob-spending{grid-column:1;grid-row:3}.ob-bills{grid-column:2;grid-row:3}.ob-panel{padding:16px}.ob-calendar-grid button{min-height:32px}}
@container cbpage (max-width:600px){.ob-grid{grid-template-columns:minmax(0,1fr);gap:12px}.ob-grid>.ob-panel{grid-column:1;grid-row:auto}.ob-revenue{min-height:330px}.ob-chart{gap:5px;height:190px}.ob-bar{height:162px}.ob-panel{border-radius:20px}.ob-revenue-total>strong{font-size:29px}.ob-calendar-grid button{min-height:36px}.ob-spending-body{grid-template-columns:minmax(110px,1fr) minmax(0,1fr)}}
@media(max-width:640px){html:root.cb-obsidian:not(.gapp):not(.mapp) body .shell{grid-template-columns:minmax(0,1fr)!important;border-width:3px!important;border-radius:22px!important;padding:6px!important;gap:6px!important;margin:4px!important;width:calc(100% - 8px)!important;height:auto!important;min-height:calc(100dvh - 8px)!important}html:root.cb-obsidian:not(.gapp):not(.mapp) body .side{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;height:60px!important;flex-direction:row!important;padding:5px!important;overflow-x:auto!important;overflow-y:hidden!important;z-index:30}html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .brand{display:none!important}html:root.cb-obsidian:not(.gapp):not(.mapp) body .side .nrow{display:contents!important}html:root.cb-obsidian:not(.gapp):not(.mapp) body .content{padding:8px 8px 82px!important}html.cb-obsidian .top .gsearch{max-width:none;min-width:100px}.ob-heading{margin-bottom:12px}.ob-panel-head{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html.cb-obsidian *,html.cb-obsidian *::before{animation:none!important;transition:none!important}}

html:root.cb-obsidian .view .btn.p{background:var(--ob-blue)!important;border-color:var(--ob-blue)!important;color:#fff!important;box-shadow:none!important}
html:root.cb-obsidian body #view-dash>.ob-dashboard{display:block!important}
html:root.cb-obsidian.nomenu:not(.gapp):not(.mapp) body .shell{grid-template-columns:minmax(0,1fr)!important}
html:root.cb-obsidian.nomenu:not(.gapp):not(.mapp) body .side{display:none!important}

.ob-emi-next{display:grid;gap:6px;padding:14px;margin-bottom:10px;background:var(--ob-raised);border:1px solid var(--ob-line);border-radius:16px}.ob-emi-next small,.ob-emi-next span{font-size:10px;color:var(--ob-muted)}.ob-emi-next strong{font-size:26px;color:var(--ob-ink);letter-spacing:-.6px}.ob-emi-row{display:flex;align-items:center;gap:10px;width:100%;padding:13px 0;background:none;border:0;border-bottom:1px solid var(--ob-line);color:var(--ob-ink);text-align:left;cursor:pointer}.ob-emi-icon{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:10px;color:var(--ob-blue);background:var(--ob-raised)}.ob-emi-info{display:grid;gap:5px;flex:1;min-width:0}.ob-emi-info>b{font-size:12px;font-weight:550;overflow-wrap:anywhere}.ob-emi-info>small{font-size:9px;color:var(--ob-muted)}.ob-emi-progress{height:4px;background:var(--ob-line);border-radius:5px;overflow:hidden;display:block}.ob-emi-progress>i{height:100%;display:block;background:var(--ob-blue);border-radius:5px}.ob-emi-amount{display:grid;text-align:right;gap:7px;flex:none}.ob-emi-amount strong{font-size:11px;font-weight:550}.ob-emi-amount em{font-size:9px;color:var(--ob-muted);font-style:normal}.ob-emi-amount em.overdue{color:var(--red)}

/* Independent card columns avoid stretching shorter panels to the tallest row. */
.ob-grid.ob-balanced{grid-template-columns:minmax(0,2.1fr) minmax(260px,.9fr);align-items:start;gap:14px}
.ob-balanced .ob-main-column,.ob-balanced .ob-side-column{display:flex;flex-direction:column;gap:14px;min-width:0}
.ob-balanced .ob-main-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;min-width:0}
.ob-balanced .ob-panel{grid-column:auto;grid-row:auto;height:auto;min-width:0;align-self:stretch}
.ob-balanced .ob-calendar,.ob-balanced .ob-summary,.ob-balanced .ob-spending,.ob-balanced .ob-upcoming-emis{min-height:0;max-height:none}
.ob-balanced .ob-calendar-total{margin-top:14px}
.ob-balanced .ob-summary>p{margin-bottom:12px}
.ob-balanced .ob-spending-body{gap:10px;margin-bottom:12px}
@container cbpage (max-width:950px){.ob-grid.ob-balanced{grid-template-columns:minmax(0,1fr)}.ob-balanced .ob-side-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.ob-balanced .ob-panel{grid-column:auto;grid-row:auto}}
@container cbpage (max-width:600px){.ob-balanced .ob-main-details,.ob-balanced .ob-side-column{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.ob-grid.ob-balanced,.ob-balanced .ob-main-column{gap:12px}}
