@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-full-normal-7BpKI3vF.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-full-normal-YHFkNujK.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-full-normal-CFFu7zhK.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fbfaf7;--bg-elev:#fff;--bg-elev-2:#f3f1ea;--bg-hover:#edeae1;--border:#e7e3d9;--border-strong:#d5cfc1;--text:#232c40;--text-dim:#5a6478;--text-faint:#8891a1;--ink:#141b2e;--accent:#0e7c66;--accent-soft:#e6f1ee;--accent-strong:#0a5e4d;--accent-glow:#0e7c6624;--accent-tint:#0e7c6612;--accent-bright:#14a085;--cta:#0e7c66;--cta-hover:#0a5e4d;--danger:#b5502e;--danger-hover:#94411f;--brass:#a07a2c;--brass-tint:#f2ecdc;--green:#1a8f5f;--green-tint:#e5f2eb;--flag:#b5502e;--flag-tint:#f6e9e3;--status-idle:#8891a1;--status-syncing:#14a085;--status-ok:#1a8f5f;--status-error:#b5502e;--delta-up:#b5502e;--delta-down:#1a8f5f;--space-0:0;--space-1:4px;--space-2:6px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:20px;--space-7:24px;--space-8:32px;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--text-2xl:30px;--leading-tight:1.4;--leading-base:1.5;--font-display:"Fraunces Variable", Georgia, "Times New Roman", serif;--font-sans:"Plus Jakarta Sans Variable", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:"IBM Plex Mono", "SF Mono", Menlo, Monaco, ui-monospace, monospace;--radius-xs:3px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-full:999px;--shadow-sm:0 1px 2px #141b2e0a, 0 1px 3px #141b2e0f;--shadow-md:0 4px 10px -3px #141b2e14, 0 10px 24px -8px #141b2e1a;--shadow-overlay:0 12px 28px -10px #141b2e24, 0 30px 60px -24px #141b2e2e;--t-short:.14s;--t-base:.22s;--ease:cubic-bezier(.4, 0, .2, 1);--control-height:38px;--control-pad-y:7px;--control-pad-x:12px;--focus-ring:0 0 0 3px color-mix(in oklab, var(--accent) 28%, transparent);--focus-ring-inset:inset 0 0 0 2px color-mix(in oklab, var(--accent) 45%, transparent)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text);background:var(--bg);line-height:var(--leading-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums}h1{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" 70, "WONK" .4;letter-spacing:-.005em;color:var(--ink);margin:0;font-size:24px;font-weight:540}h3{font-size:var(--text-md);letter-spacing:-.01em;color:var(--ink);margin:0;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.mono{font-family:var(--font-mono);font-variant-ligatures:none}.text-dim{color:var(--text-dim)}.right{text-align:right}button,.btn{font:inherit;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);transition:background var(--t-short) var(--ease), border-color var(--t-short) var(--ease), box-shadow var(--t-short) var(--ease), transform var(--t-short) var(--ease);font-weight:500;display:inline-flex}button:hover,.btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}button:active,.btn:active{transform:translateY(.5px)}button:disabled,button:disabled:hover,.btn:disabled,.btn:disabled:hover{opacity:.5;cursor:not-allowed;background:var(--bg-elev-2);border-color:var(--border);box-shadow:none;transform:none}button:focus-visible,.btn:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-sm), var(--focus-ring);outline:2px solid #0000}button.primary,.btn.primary{background:var(--cta);border-color:var(--cta);color:#fff}button.primary:hover,.btn.primary:hover{background:var(--cta-hover);border-color:var(--cta-hover)}button.primary:disabled,.btn.primary:disabled{background:var(--bg-elev-2);border-color:var(--border);color:var(--text-dim)}.btn.danger{color:var(--danger)}.btn.danger:hover{background:color-mix(in oklab, var(--danger) 14%, transparent);border-color:var(--danger);color:var(--danger)}.btn-sm{min-height:28px;padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.btn-link{box-shadow:none;color:var(--accent);min-height:unset;cursor:pointer;background:0 0;border:none;padding:0 2px;font-weight:500}.btn-link:hover{background:0 0;border:none;text-decoration:underline}.icon-btn{border-radius:var(--radius-md);width:36px;min-height:36px;font-size:var(--text-md);padding:0;line-height:1}input,textarea,select{font:inherit;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);padding:var(--control-pad-y) var(--control-pad-x);border-radius:var(--radius-md);min-height:var(--control-height)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:2px solid #0000}select:not([multiple]){appearance:none;padding-right:var(--space-8);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2393a1a8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:13px}select:not([multiple]):hover{border-color:var(--border-strong)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field-label{font-size:var(--text-sm);color:var(--text-dim);font-weight:500}.field-hint{font-size:var(--text-xs);color:var(--text-faint)}.field input,.field select,.field textarea{width:100%}.app{grid-template:"topbar topbar""sidebar main"1fr/208px 1fr;height:100%;display:grid}.topbar{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--bg-elev);border-bottom:1px solid var(--border);min-height:60px;box-shadow:var(--shadow-sm);z-index:20;grid-area:topbar;display:flex;position:relative}.topbar .spacer{flex:1}.brand-home{align-items:center;gap:var(--space-3);color:inherit;display:inline-flex}.brand-home:hover{text-decoration:none}.brand-mark{color:var(--accent);font-size:18px;line-height:1}.brand-wordmark{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.15rem;font-weight:600}.brand-cost{color:var(--ink)}.brand-mon{color:var(--accent)}.sidebar{background:var(--bg-elev);border-right:1px solid var(--border);padding:var(--space-4) var(--space-3);flex-direction:column;grid-area:sidebar;display:flex;overflow-y:auto}.sidebar nav{flex-direction:column;gap:2px;display:flex}.sidebar nav a{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--text-dim);font-size:var(--text-base);transition:background var(--t-short) var(--ease), color var(--t-short) var(--ease);align-items:center;font-weight:500;display:flex;position:relative}.sidebar nav a:hover{background:var(--bg-hover);color:var(--text);text-decoration:none}.sidebar nav a.active{background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.sidebar nav a.active:before{content:"";background:var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.sidebar-footer{padding-top:var(--space-4);border-top:1px solid var(--border);gap:var(--space-2);flex-direction:column;margin-top:auto;display:flex}.sidebar-org{font-weight:600;font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user{font-size:var(--text-xs);color:var(--text-dim);align-items:center;gap:var(--space-2);white-space:nowrap;display:flex;overflow:hidden}.sidebar-user .role-badge{flex:none}.logout-btn{margin-top:var(--space-2);width:100%}main{grid-area:main;padding:clamp(16px,2.4vw,32px) clamp(16px,3vw,40px);overflow-y:auto}.nav-toggle{display:none}.nav-toggle-bars{pointer-events:none;flex-direction:column;justify-content:space-between;width:18px;height:13px;display:flex}.nav-toggle-bars span{border-radius:var(--radius-xs);background:currentColor;width:100%;height:2px;display:block}.nav-backdrop{display:none}.page{gap:var(--space-5);flex-direction:column;max-width:1180px;display:flex}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-note{margin:calc(-1 * var(--space-3)) 0 0}.filter-bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.panel{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.panel-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.panel-actions{gap:var(--space-2);display:flex}.upsell-panel{background:var(--brass-tint);border-color:color-mix(in oklab, var(--brass) 35%, var(--border))}.upsell-panel .panel-header h3{color:var(--brass)}.upsell-panel p{margin:0 0 var(--space-4);color:var(--text-dim)}.upsell-panel .btn{border-color:var(--brass);color:var(--brass)}.dash-grid{gap:var(--space-5);grid-template-columns:minmax(240px,1fr) 2fr;display:grid}.wide-card{grid-column:1/-1}.stat-card{gap:var(--space-2);flex-direction:column;justify-content:center;display:flex}.stat-label{font-size:var(--text-sm);color:var(--text-dim);font-weight:500}.stat-value{font-family:var(--font-mono);font-size:var(--text-2xl);letter-spacing:-.02em;font-weight:600}.stat-sub{font-size:var(--text-sm)}.stat-sub-label{color:var(--text-dim)}.delta-up{color:var(--delta-up);font-weight:600}.delta-down{color:var(--delta-down);font-weight:600}.delta-flat{color:var(--text-dim);font-weight:600}.source-bars{gap:var(--space-4);flex-direction:column;display:flex}.source-bar-row{column-gap:var(--space-3);row-gap:var(--space-2);grid-template-columns:1fr auto;grid-template-areas:"head head""track pct";align-items:center;display:grid}.source-bar-head{font-size:var(--text-sm);grid-area:head;justify-content:space-between;align-items:center;display:flex}.source-bar-name{align-items:center;gap:var(--space-2);font-weight:500;display:inline-flex}.source-swatch{border-radius:var(--radius-xs);flex:none;width:10px;height:10px}.source-bar-amt{font-size:var(--text-sm)}.source-bar-track{background:var(--bg-elev-2);border-radius:var(--radius-full);grid-area:track;height:8px;overflow:hidden}.source-bar-fill{border-radius:var(--radius-full);height:100%;transition:width var(--t-base) var(--ease)}.source-bar-pct{font-size:var(--text-xs);font-family:var(--font-mono);text-align:right;grid-area:pct;min-width:34px}table.dense{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.dense th{text-align:left;color:var(--text-dim);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}table.dense td{padding:var(--space-3);border-bottom:1px solid var(--border);vertical-align:top}table.dense tbody tr:last-child td{border-bottom:none}table.dense tbody tr:hover td{background:var(--bg-hover)}table.dense th.right,table.dense td.right{text-align:right}.table-caption{font-size:var(--text-xs);margin-bottom:var(--space-3)}.cell-primary{font-weight:500}.cell-note{font-size:var(--text-xs);margin-top:2px}.note-err{color:var(--status-error)}.note-ok{color:var(--status-ok)}.row-actions{gap:var(--space-2);justify-content:flex-end;display:inline-flex}.badge{padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;align-items:center;font-weight:600;line-height:1.6;display:inline-flex}.badge--neutral{background:var(--bg-elev-2);color:var(--text-dim)}.kind-aws{background:var(--brass-tint);color:var(--brass)}.kind-anthropic{background:var(--accent-soft);color:var(--accent-strong)}.kind-manual{background:var(--bg-elev-2);color:var(--text-dim)}.kind-gcp{color:#2f6db0;background:oklab(93.3889% -.00513286 -.0165083)}.kind-snowflake{color:#2f9fd0;background:oklab(95.278% -.0103703 -.0133394)}.kind-vercel{color:#2d3340;background:oklab(91.851% -.000229386 -.00295403)}.kind-databricks{color:#c4472e;background:oklab(93.9289% .0193087 .0126364)}.kind-datadog{color:#5b5ea6;background:oklab(93.1868% .00269501 -.0155415)}.kind-github{color:#3d4d63;background:oklab(91.8212% -.00138578 -.00574808)}.kind-azure{color:#4a6fa5;background:oklab(93.5365% -.00282657 -.0130249)}.kind-focus{color:#7c5ca5;background:oklab(93.5422% .00878006 -.0135454)}.kind-openai{color:#1a8f5f;background:oklab(94.074% -.0162316 .00599479)}.kind-vertex{color:#5479c4;background:oklab(94.1672% -.00203376 -.017116)}.kind-helicone{color:#8c5d78;background:oklab(93.5277% .00967645 -.00270639)}.role-badge{text-transform:none}.status-dot-row{align-items:center;gap:var(--space-2);display:inline-flex}.status-dot{border-radius:var(--radius-full);flex:none;width:8px;height:8px}.status-dot-label{font-size:var(--text-sm)}.status-dot--idle{background:var(--status-idle)}.status-dot--syncing{background:var(--status-syncing);animation:1.2s ease-in-out infinite pulse}.status-dot--ok{background:var(--status-ok)}.status-dot--error{background:var(--status-error)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.date-range{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:inline-flex}.segmented{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-md);gap:2px;padding:2px;display:inline-flex}.segmented .pill{min-height:28px;padding:0 var(--space-3);box-shadow:none;color:var(--text-dim);font-size:var(--text-sm);border-radius:var(--radius-sm);background:0 0;border:none}.segmented .pill:hover{background:var(--bg-hover);color:var(--text)}.segmented .pill.on{background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.date-inputs{align-items:center;gap:var(--space-2);display:inline-flex}.date-inputs input[type=date]{min-height:32px;padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.date-sep{color:var(--text-faint)}.error-note{background:color-mix(in oklab, var(--status-error) 12%, transparent);border:1px solid color-mix(in oklab, var(--status-error) 40%, transparent);color:var(--status-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm)}.ok-note{background:color-mix(in oklab, var(--status-ok) 12%, transparent);border:1px solid color-mix(in oklab, var(--status-ok) 40%, transparent);color:var(--status-ok);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm)}.paywall-note{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.paywall-note p{margin:0}.modal-note{font-size:var(--text-sm);margin:0}.empty-state{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-5);text-align:center;flex-direction:column;display:flex}.empty-state-icon{font-size:var(--text-2xl);color:var(--text-faint);line-height:1}.empty-state-msg{font-size:var(--text-base);font-weight:500}.empty-state-desc{font-size:var(--text-sm);color:var(--text-dim);max-width:42ch}.empty-state-action{margin-top:var(--space-2)}.skeleton-block{background:linear-gradient(90deg, var(--bg-elev-2) 25%, var(--bg-hover) 37%, var(--bg-elev-2) 63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.4s infinite shimmer;display:block}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.spinner{border:2px solid color-mix(in oklab, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.skeleton-block,.spinner,.status-dot--syncing{animation:none}}.modal-backdrop{padding:clamp(24px, 8vh, 96px) var(--space-5) var(--space-5);z-index:100;background:#141b2e66;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);width:100%;max-width:440px}.modal-header{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);display:flex}.modal-header h3{flex:1}.modal-header .icon-btn{box-shadow:none;color:var(--text-dim);background:0 0;border-color:#0000}.modal-header .icon-btn:hover{background:var(--bg-hover);color:var(--text)}.modal-body{padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border);display:flex}.settings-grid{gap:var(--space-5);grid-template-columns:1fr 1fr;align-items:start;display:grid}.detail-list{gap:var(--space-4);flex-direction:column;margin:0;display:flex}.detail-list div{flex-direction:column;gap:2px;display:flex}.detail-list dt{font-size:var(--text-xs);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.detail-list dd{font-size:var(--text-base);margin:0;font-weight:500}.manual-form{gap:var(--space-4);flex-direction:column;display:flex}.form-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.manual-form .btn{align-self:flex-start}.sample-data-actions{gap:var(--space-3);display:flex}.billing-actions{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.auth-page{min-height:100%;padding:var(--space-5);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-md);padding:var(--space-8)}.auth-brand{align-items:center;gap:var(--space-3);justify-content:center;display:flex}.auth-brand .brand-mark{font-size:24px}.auth-brand .brand-wordmark{font-size:1.4rem}.auth-tagline{text-align:center;color:var(--text-dim);font-size:var(--text-sm);margin:var(--space-3) 0 var(--space-7)}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-submit{width:100%;margin-top:var(--space-2)}.auth-toggle{margin-top:var(--space-5);text-align:center;font-size:var(--text-sm);color:var(--text-dim)}.onboarding-card{max-width:460px}.onboarding-loading{align-items:center;gap:var(--space-2);justify-content:center;display:flex}.onboarding-actions{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;display:flex}.onboarding-cta{width:100%;margin-top:var(--space-2)}.empty-state-actions{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.budget-list{gap:var(--space-5);flex-direction:column;display:flex}.budget-row{gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--border);flex-direction:column;display:flex}.budget-row:last-child{border-bottom:none;padding-bottom:0}.budget-row.is-disabled{opacity:.55}.budget-row-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.budget-name{font-weight:600;font-size:var(--text-md)}.budget-scope{font-size:var(--text-sm);color:var(--text-dim)}.budget-figures{align-items:baseline;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);display:flex}.budget-figures .budget-pct{font-weight:600}.budget-figures .budget-remaining{color:var(--text-dim)}.budget-bar-track{background:var(--bg-elev-2);border-radius:var(--radius-full);height:8px;overflow:hidden}.budget-bar-fill{border-radius:var(--radius-full);height:100%;transition:width var(--t-base) var(--ease)}.budget-bar-fill--under{background:var(--green)}.budget-bar-fill--warning{background:var(--brass)}.budget-bar-fill--over{background:var(--flag)}.budget-pct--under{color:var(--green)}.budget-pct--warning{color:var(--brass)}.budget-pct--over{color:var(--flag)}.budget-meta{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-faint);flex-wrap:wrap;display:flex}.budget-disabled-badge{background:var(--bg-elev-2);color:var(--text-dim)}.allocation-detail{gap:var(--space-5);flex-direction:column;display:flex}.condition-list{gap:var(--space-3);flex-direction:column;display:flex}.condition-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.condition-row select,.condition-row input{flex:120px;width:auto}.sev-chip{padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em;align-items:center;font-weight:600;line-height:1.6;display:inline-flex}.sev-chip.sev-info{background:var(--accent-soft);color:var(--accent-strong)}.sev-chip.sev-warning{background:var(--brass-tint);color:var(--brass)}.sev-chip.sev-critical{background:var(--flag-tint);color:var(--flag)}.alert-feed{flex-direction:column;display:flex}.alert-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border);display:flex}.alert-row:last-child{border-bottom:none;padding-bottom:0}.alert-row-main{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.alert-row-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.alert-title{font-weight:500}.alert-detail{font-size:var(--text-sm);color:var(--text-dim)}.alert-values{font-size:var(--text-xs);color:var(--text-faint);font-family:var(--font-mono)}.alert-row-side{align-items:flex-end;gap:var(--space-2);flex-direction:column;flex:none;display:flex}.alert-status-badge{background:var(--bg-elev-2);color:var(--text-dim)}.alert-status-badge.status-open{background:var(--accent-soft);color:var(--accent-strong)}.alert-status-badge.status-resolved{background:var(--bg-elev-2);color:var(--text-faint)}.dashboard-alerts-list{gap:var(--space-3);flex-direction:column;display:flex}.dashboard-alert-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.dashboard-alert-title{font-size:var(--text-sm)}.dashboard-alert-kind{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em}.conf-chip{padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em;align-items:center;font-weight:600;line-height:1.6;display:inline-flex}.conf-chip.conf-low{background:var(--bg-elev-2);color:var(--text-dim)}.conf-chip.conf-medium{background:var(--brass-tint);color:var(--brass)}.conf-chip.conf-high{background:var(--accent-soft);color:var(--accent-strong)}.rec-groups{gap:var(--space-6);flex-direction:column;display:flex}.rec-group-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-strong);display:flex}.rec-group-head h3{font-size:var(--text-md);margin:0}.rec-group-total{color:var(--accent-strong);font-weight:600}.rec-feed{flex-direction:column;display:flex}.rec-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border);display:flex}.rec-row:last-child{border-bottom:none;padding-bottom:0}.rec-row-main{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.rec-row-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.rec-title{font-weight:500}.rec-detail{font-size:var(--text-sm);color:var(--text-dim)}.rec-row-side{align-items:flex-end;gap:var(--space-2);flex-direction:column;flex:none;display:flex}.rec-savings{flex-direction:column;align-items:flex-end;display:flex}.rec-savings-amt{font-family:var(--font-mono);color:var(--accent-strong);font-weight:600}.rec-savings-label{font-size:var(--text-2xs)}.nav-badge{border-radius:var(--radius-full);background:var(--flag);color:#fff;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.nav-badge.badge-info{background:var(--accent)}.nav-badge.badge-warning{background:var(--brass)}.settings-tabs{margin-bottom:var(--space-5)}.tab-panel .page-header{margin-bottom:var(--space-4)}.tab-panel .page-header h2{font-size:var(--text-lg);margin:0}.channel-list{gap:var(--space-4);flex-direction:column;display:flex}.channel-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.channel-row:last-child{border-bottom:none;padding-bottom:0}.channel-row.is-disabled{opacity:.55}.channel-row-main{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.channel-row-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.channel-name{font-weight:600}.channel-detail{font-size:var(--text-sm)}.kind-email{background:var(--accent-soft);color:var(--accent-strong)}.kind-slack{background:var(--brass-tint);color:var(--brass)}.kind-webhook{background:var(--bg-elev-2);color:var(--text-dim)}.toast{right:var(--space-5);bottom:var(--space-5);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-elev);border:1px solid var(--border);box-shadow:var(--shadow-overlay);z-index:50;display:flex;position:fixed}.toast--ok{border-color:color-mix(in oklab, var(--green) 35%, var(--border));color:var(--green)}.toast--error{border-color:color-mix(in oklab, var(--flag) 35%, var(--border));color:var(--flag)}.toast .icon-btn{color:inherit}.catalog-section{margin-bottom:var(--space-6)}.catalog-section-title{margin-bottom:var(--space-3)}.catalog-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.catalog-card{gap:var(--space-3);flex-direction:column;display:flex}.catalog-card-head{align-items:center;gap:var(--space-3);display:flex}.catalog-card-name{font-weight:600}.catalog-card-notes{font-size:var(--text-sm);margin:0}.catalog-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em;background:var(--bg-elev-2);color:var(--text-dim);align-items:center;font-weight:600;line-height:1.6;display:inline-flex}@media (width<=900px){.dash-grid,.settings-grid{grid-template-columns:1fr}}@media (width<=800px){.app{grid-template-columns:1fr;grid-template-areas:"topbar""main"}.nav-toggle{display:inline-flex}.sidebar{width:240px;transition:transform var(--t-base) var(--ease);z-index:40;position:fixed;top:60px;bottom:0;left:0;transform:translate(-100%)}.app.nav-open .sidebar{transform:translate(0)}.app.nav-open .nav-backdrop{z-index:30;background:#141b2e4d;display:block;position:fixed;inset:60px 0 0}.page-header{align-items:flex-start}}
