@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");@font-face{font-family:Lato;src:url(/fonts/Lato-Thin.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Lato;src:url(/fonts/Lato-BlackItalic.ttf) format("truetype");font-weight:900;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Thin.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraLight.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraLightItalic.ttf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-SemiBoldItalic.ttf) format("truetype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraBold.ttf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraBoldItalic.ttf) format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-Thin.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-ExtraLight.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-ExtraLightItalic.ttf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-SemiBoldItalic.ttf) format("truetype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-ExtraBold.ttf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono NL;src:url(/fonts/JetBrainsMonoNL-ExtraBoldItalic.ttf) format("truetype");font-weight:800;font-style:italic;font-display:swap}:root{--jn-blue-50:#eff6ff;--jn-blue-100:#dbeafe;--jn-blue-200:#bfdbfe;--jn-blue-300:#93c5fd;--jn-blue-400:#60a5fa;--jn-blue-500:#2563eb;--jn-blue-600:#1d4ed8;--jn-blue-700:#1e40af;--jn-blue-800:#1e3a8a;--jn-blue-900:#172554;--jn-green-50:var(--jn-blue-50);--jn-green-100:var(--jn-blue-100);--jn-green-200:var(--jn-blue-200);--jn-green-300:var(--jn-blue-300);--jn-green-400:var(--jn-blue-400);--jn-green-500:var(--jn-blue-500);--jn-green-600:var(--jn-blue-600);--jn-green-700:var(--jn-blue-700);--jn-green-800:var(--jn-blue-800);--jn-green-900:var(--jn-blue-900);--jn-gray-0:#ffffff;--jn-gray-25:#fcfcfd;--jn-gray-50:#f9fafb;--jn-gray-75:#f5f6f8;--jn-gray-100:#f2f4f7;--jn-gray-200:#eaecf0;--jn-gray-300:#d0d5dd;--jn-gray-400:#98a2b3;--jn-gray-500:#667085;--jn-gray-600:#475467;--jn-gray-700:#344054;--jn-gray-800:#1d2939;--jn-gray-900:#101828;--jn-gray-950:#0c111d;--jn-success-50:#ecfdf3;--jn-success-500:#12b76a;--jn-success-700:#027a48;--jn-warning-50:#fffaeb;--jn-warning-500:#f79009;--jn-warning-700:#b54708;--jn-error-50:#fef3f2;--jn-error-500:#f04438;--jn-error-700:#b42318;--jn-info-50:#eff8ff;--jn-info-500:#2e90fa;--jn-info-700:#175cd3;--chart-1:#315f8f;--chart-2:#10b981;--chart-3:#f59e0b;--chart-4:#8b5cf6;--chart-5:#ef4444;--chart-6:#06b6d4;--chart-7:#f97316;--chart-8:#84cc16;--chart-9:#ec4899;--chart-10:#14b8a6;--chart-11:#6366f1;--chart-12:#eab308;--chart-13:#a855f7;--chart-14:#64748b;--fg-1:var(--jn-gray-900);--fg-2:var(--jn-gray-700);--fg-3:var(--jn-gray-500);--fg-4:var(--jn-gray-400);--fg-on-accent:var(--jn-gray-0);--bg-canvas:var(--jn-gray-25);--bg-surface:var(--jn-gray-0);--bg-surface-translucent:color-mix(in srgb,var(--bg-surface) 85%,transparent);--bg-subtle:var(--jn-gray-50);--bg-muted:var(--jn-gray-100);--bg-inverse:var(--jn-gray-900);--bg-overlay:rgb(16 24 40/0.55);--border-subtle:var(--jn-gray-200);--border-default:var(--jn-gray-300);--border-strong:var(--jn-gray-400);--accent:var(--jn-blue-500);--accent-hover:var(--jn-blue-600);--accent-press:var(--jn-blue-700);--accent-soft:var(--jn-blue-50);--font-sans:"Inter",ui-sans-serif,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono","Menlo","Consolas",monospace;--font-display:"Lato","Inter",ui-sans-serif,-apple-system,sans-serif;--text-xs:0.75rem;--text-sm:0.8125rem;--text-base:0.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tight:-0.02em;--tracking-snug:-0.01em;--tracking-normal:0;--tracking-wide:0.04em;--tracking-mono:-0.01em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--shadow-xs:0 1px 2px rgba(16,24,40,0.05);--shadow-sm:0 1px 3px rgba(16,24,40,0.08),0 1px 2px rgba(16,24,40,0.04);--shadow-md:0 4px 8px -2px rgba(16,24,40,0.08),0 2px 4px -2px rgba(16,24,40,0.04);--shadow-lg:0 12px 16px -4px rgba(16,24,40,0.08),0 4px 6px -2px rgba(16,24,40,0.03);--shadow-xl:0 20px 24px -4px rgba(16,24,40,0.1),0 8px 8px -4px rgba(16,24,40,0.04);--shadow-focus:0 0 0 4px var(--jn-blue-100);--shadow-focus-ring:0 0 0 4px rgba(37,99,235,0.2);--blur-backdrop:2px;--blur-navigation:8px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--dur-fast:120ms;--dur-base:180ms;--dur-slow:280ms}html{font-family:var(--font-sans);color:var(--fg-1);background:var(--bg-canvas)}body{font-size:var(--text-md);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased}.h1,h1{font-family:var(--font-display);font-size:var(--text-5xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:900;color:var(--fg-1)}.h2,h2{font-size:var(--text-3xl);font-weight:900}.h2,.h3,h2,h3{font-family:var(--font-display);line-height:var(--leading-snug);letter-spacing:var(--tracking-snug)}.h3,h3{font-size:var(--text-2xl)}.h3,.h4,h3,h4{font-weight:700}.h4,h4{font-family:var(--font-display);font-size:var(--text-lg);line-height:var(--leading-snug)}.h5,h5{font-size:var(--text-base)}.h5,.h6,h5,h6{font-weight:600}.h6,h6{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--fg-3)}.p,p{font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--fg-2)}.small,small{font-size:var(--text-sm);color:var(--fg-3)}.mono,code,kbd,pre,samp{font-family:var(--font-mono);font-size:.92em;letter-spacing:var(--tracking-mono)}code:not(pre code){background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);padding:1px 5px;font-size:.88em;color:var(--fg-1)}pre{background:var(--bg-inverse);color:#e6edf3;border-radius:var(--radius-md);padding:var(--space-4);overflow:auto;font-size:var(--text-sm);line-height:1.55}a{color:var(--accent-hover);transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--accent-press);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}hr{border:none;border-top:1px solid var(--border-subtle);margin:var(--space-6) 0}.eyebrow{font-family:var(--font-mono);color:var(--accent-hover)}.eyebrow,.label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:500}.label{color:var(--fg-3)}.numeric{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-mono)}*{box-sizing:border-box}body{margin:0;background:var(--bg-canvas);color:var(--fg-1);font-family:var(--font-sans)}a{color:inherit;text-decoration:none}button{font:inherit}.app-shell--internal{display:grid;grid-template-columns:240px minmax(0,1fr)}.app-main{min-width:0;padding:var(--space-8)}.customer-nav{overflow:hidden auto}.customer-nav__brand{display:inline-flex;align-items:center;padding:0 var(--space-2)}.customer-nav__brand img{width:26px;height:26px}.customer-nav__links{grid-gap:var(--space-1);gap:var(--space-1)}.customer-nav__link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2)}.customer-nav__avatar{width:30px;height:30px;font-weight:600}.is-collapsed .customer-nav__brand span,.is-collapsed .customer-nav__collapse kbd,.is-collapsed .customer-nav__collapse span,.is-collapsed .customer-nav__link span{display:none}.internal-nav{position:-webkit-sticky;position:sticky;top:0;display:flex;flex-direction:column;gap:18px;height:100vh;padding:18px 14px;border-right:1px solid var(--border-subtle);background:var(--bg-surface)}.internal-nav__brand{display:flex;align-items:center;gap:10px;min-height:34px;padding:0 8px;color:var(--fg-1);font-weight:700;font-size:var(--text-base)}.internal-nav__brand img{width:24px;height:24px}.internal-nav__group{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-4);padding:4px 10px 2px}.internal-nav__links{display:grid;grid-gap:2px;gap:2px}.internal-nav__link{display:flex;align-items:center;gap:10px;min-height:34px;padding:7px 10px;border-radius:var(--radius-sm);color:var(--fg-2);font-size:var(--text-base);font-weight:500}.internal-nav__link:focus-visible,.internal-nav__link:hover{background:var(--bg-muted);color:var(--fg-1);outline:none}.internal-nav__link.is-active{background:var(--accent-soft);color:var(--accent-press);font-weight:600}.internal-nav__session{margin-top:auto}.public-shell{min-height:100vh;padding:32px 20px 64px}.public-topbar{max-width:760px;margin:0 auto 24px;display:flex;align-items:center;justify-content:space-between}.public-topbar__brand{display:inline-flex;align-items:center;gap:10px;color:var(--fg-1);font-weight:700}.public-topbar__brand img{width:26px;height:26px}.public-topbar__meta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3)}.quote-doc{max-width:760px;margin:0 auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.quote-doc__head{padding:28px 32px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.quote-doc__head h1{font-family:var(--font-display);font-weight:900;font-size:var(--text-2xl);letter-spacing:-.02em;margin:0 0 6px}.quote-doc__head p{margin:0;color:var(--fg-3);font-size:var(--text-base)}.quote-doc__ref{text-align:right;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3);line-height:1.7}.quote-doc__ref b{color:var(--fg-1)}.quote-doc__body{padding:8px 32px 0}.quote-doc__foot{padding:24px 32px 28px}.quote-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 32px;background:var(--bg-subtle);border-top:1px solid var(--border-subtle)}.quote-cta__total{display:grid;grid-gap:2px;gap:2px}.quote-cta__total span{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3)}.quote-cta__total strong{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:600;color:var(--fg-1);letter-spacing:-.01em}.quote-cta__actions{display:flex;gap:10px}.button--lg{min-height:44px;padding:0 22px;font-size:var(--text-base)}.quote-doc__note{max-width:760px;margin:16px auto 0;text-align:center;color:var(--fg-4);font-size:var(--text-xs)}.quote-doc__note a{color:var(--accent-hover)}.doc-page{max-width:820px;margin:24px auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:48px 52px}.doc-toolbar{max-width:820px;margin:0 auto;display:flex;justify-content:flex-end;gap:8px;padding:0 0 4px}.doc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:1px solid var(--border-subtle)}.doc-head__brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:900;font-size:var(--text-xl);letter-spacing:-.02em;color:var(--fg-1)}.doc-head__brand img{width:30px;height:30px}.doc-head__org{margin-top:12px;font-size:var(--text-sm);color:var(--fg-3);line-height:1.6}.doc-head__inv{text-align:right}.doc-head__inv h1{font-family:var(--font-display);font-weight:900;font-size:var(--text-2xl);letter-spacing:-.02em;margin:0 0 8px}.doc-head__inv dl{display:grid;grid-template-columns:auto auto;grid-gap:4px 14px;gap:4px 14px;justify-content:end;margin:0;font-size:var(--text-sm)}.doc-head__inv dt{color:var(--fg-3);text-align:right}.doc-head__inv dd{margin:0;font-family:var(--font-mono);color:var(--fg-1);text-align:right}.doc-parties{display:grid;grid-template-columns:1fr 1fr;grid-gap:32px;gap:32px;padding:24px 0;border-bottom:1px solid var(--border-subtle)}.doc-party h4{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-4);margin:0 0 8px}.doc-party p{margin:0;font-size:var(--text-base);color:var(--fg-1);line-height:1.65}.doc-party .muted{color:var(--fg-3)}.doc-table{width:100%;border-collapse:collapse;margin:24px 0 0;font-size:var(--text-base)}.doc-table th{text-align:left;padding:0 12px 10px;border-bottom:1px solid var(--border-default);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3)}.doc-table td.num,.doc-table th.num{text-align:right;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.doc-table td{padding:12px;border-bottom:1px solid var(--border-subtle);color:var(--fg-2);vertical-align:top}.doc-table td .strong{color:var(--fg-1);font-weight:600;display:block}.doc-table td .sub{color:var(--fg-4);font-size:var(--text-sm)}.doc-totals{display:grid;grid-gap:8px;gap:8px;margin:20px 0 0 auto;width:min(320px,100%)}.doc-totals__row{display:flex;justify-content:space-between;font-size:var(--text-base);color:var(--fg-2)}.doc-totals__row .num{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.doc-totals__row--credit .num{color:var(--jn-success-700)}.doc-totals__row--grand{padding-top:12px;margin-top:4px;border-top:2px solid var(--border-default);font-size:var(--text-md);font-weight:600;color:var(--fg-1)}.doc-totals__row--grand .num{font-size:var(--text-xl)}.doc-pay{margin-top:32px;padding:18px 20px;background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.doc-pay h4{margin:0 0 8px;font-size:var(--text-base)}.doc-pay p{margin:0;font-size:var(--text-sm);color:var(--fg-3);line-height:1.7}.doc-pay .mono{font-family:var(--font-mono);color:var(--fg-1)}.doc-foot{margin-top:32px;padding-top:20px;border-top:1px solid var(--border-subtle);display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--fg-4)}@media print{body{background:var(--bg-surface)}.doc-toolbar{display:none}.doc-page{max-width:none;margin:0;border:0;border-radius:0;box-shadow:none;padding:0}@page{margin:18mm}}.page-stack{display:grid;grid-gap:18px;gap:18px;max-width:1180px}.page-stack--narrow{max-width:720px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--fg-3)}.breadcrumb a{color:var(--accent-hover);font-weight:500}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span[aria-current]{color:var(--fg-2)}.page-heading{display:grid;grid-gap:6px;gap:6px}.page-heading--row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-heading h1{font-family:var(--font-display);font-weight:900;margin:0;color:var(--fg-1);font-size:var(--text-2xl);line-height:1.2;letter-spacing:-.02em}.page-heading p{max-width:720px;margin:0;color:var(--fg-3);font-size:var(--text-base);line-height:1.55}.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 16px;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);color:var(--fg-on-accent);cursor:pointer;font-weight:600;font-size:var(--text-base);white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.button:focus-visible,.button:hover{background:var(--accent-hover);border-color:var(--accent-hover);outline:none}.button:active{background:var(--accent-press);border-color:var(--accent-press)}.button:focus-visible{box-shadow:var(--shadow-focus-ring)}.button--ghost{background:var(--bg-surface);color:var(--accent-press)}.button--ghost:focus-visible,.button--ghost:hover{background:var(--accent-soft);color:var(--accent-press)}.button--neutral{background:var(--bg-surface);color:var(--fg-1);border-color:var(--border-default);box-shadow:var(--shadow-xs)}.button--neutral:hover{background:var(--bg-subtle)}.button--sm{min-height:30px;padding:0 10px;font-size:var(--text-sm)}.copy-button{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 8px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--accent-press);cursor:pointer;font-size:var(--text-xs);font-weight:600}.copy-button:focus-visible,.copy-button:hover{background:var(--accent-soft);border-color:var(--accent);outline:none}.inline-copy{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.panel{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-xs)}.panel>:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.panel>:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow-x:clip}.panel .usage-table-wrap{overflow-x:auto}.panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.panel__header h2{margin:0;color:var(--fg-1);font-size:var(--text-md);font-weight:600}.panel__header>div p{margin:2px 0 0;color:var(--fg-3);font-size:var(--text-sm)}.panel__body{padding:16px}.panel--link{display:block;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.panel--link:focus-visible,.panel--link:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px);outline:none}.panel--link h2{margin:0 0 6px;font-size:var(--text-md);font-weight:600}.panel--link p{margin:0;color:var(--fg-3);font-size:var(--text-base)}.panel--link .arrow{color:var(--accent-hover);font-size:var(--text-base);font-weight:600;margin-top:12px;display:inline-block}.panel-skeleton{min-height:180px;padding:16px;display:grid;align-content:start;grid-gap:12px;gap:12px}.panel-skeleton__header,.panel-skeleton__line{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--bg-muted),var(--bg-subtle),var(--bg-muted));background-size:200% 100%;animation:panel-skeleton-pulse 1.2s ease-in-out infinite}.panel-skeleton__header{width:42%;height:18px}.panel-skeleton__line{width:100%;height:12px}.panel-skeleton__line:nth-child(3){width:82%}.panel-skeleton__line:nth-child(4){width:64%}@keyframes panel-skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.metrics-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.usage-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card,.usage-metric{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-xs);display:grid;grid-gap:6px;gap:6px;padding:16px}.metric-card span,.usage-metric span{color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.metric-card strong,.usage-metric strong{color:var(--fg-1);font-size:var(--text-2xl);font-weight:600;line-height:1.1;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric-card p,.usage-metric p{margin:0;color:var(--fg-3);font-size:var(--text-sm)}.metric-card .delta--up{color:var(--jn-success-700)}.metric-card .delta--down{color:var(--jn-error-700)}.status-pill{display:inline-flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;min-height:22px;padding:2px 9px;border:1px solid var(--border-default);background:var(--bg-subtle);color:var(--fg-2);font-size:var(--text-xs);font-weight:600;text-transform:capitalize;white-space:nowrap}.status-pill,.status-pill .dot{border-radius:var(--radius-pill)}.status-pill .dot{width:6px;height:6px;background:currentColor}.status-pill--success{border-color:var(--jn-success-500);background:var(--jn-success-50);color:var(--jn-success-700)}.status-pill--info{border-color:var(--jn-info-500);background:var(--jn-info-50);color:var(--jn-info-700)}.status-pill--warn{border-color:var(--jn-warning-500);background:var(--jn-warning-50);color:var(--jn-warning-700)}.status-pill--danger{border-color:var(--jn-error-500);background:var(--jn-error-50);color:var(--jn-error-700)}.status-pill--muted{border-color:var(--border-default);background:var(--bg-muted);color:var(--fg-3)}.flash{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--fg-2);font-size:var(--text-base)}.flash a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}.flash--success{border-color:var(--jn-success-500);background:var(--jn-success-50);color:var(--jn-success-700)}.flash--error{border-color:var(--jn-error-500);background:var(--jn-error-50);color:var(--jn-error-700)}.form-stack{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-subtle)}.inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.inline-form label{display:grid;flex:1 1 220px;grid-gap:var(--space-1);gap:var(--space-1);color:var(--fg-2);font-size:var(--text-sm);font-weight:600}.inline-form input{min-height:38px;border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:0 var(--space-3);color:var(--fg-1);background:var(--bg-surface);font:inherit}.inline-form input:focus-visible{border-color:var(--accent);outline:none;box-shadow:var(--shadow-focus-ring)}.secret-callout{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--jn-warning-500);border-radius:var(--radius-md);background:var(--jn-warning-50);color:var(--fg-2)}.secret-callout p{margin:0 0 var(--space-1);color:var(--jn-warning-700);font-size:var(--text-base);font-weight:600}.secret-callout code{overflow-wrap:anywhere}.usage-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.usage-filter,.usage-segmented{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.usage-segment{display:inline-flex;align-items:center;min-height:32px;padding:5px 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--fg-2);font-size:var(--text-sm);font-weight:600;cursor:pointer}.usage-segment:hover{background:var(--bg-subtle)}.usage-segment--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-press)}.usage-filter label{color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.ops-form input,.usage-filter input,.usage-filter select{min-height:34px;border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:6px 10px;font:inherit;color:var(--fg-1);background:var(--bg-surface)}.ops-form input:focus-visible,.usage-filter input:focus-visible,.usage-filter select:focus-visible{border-color:var(--accent);outline:none;box-shadow:var(--shadow-focus-ring)}.usage-table-wrap{overflow-x:auto}.usage-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.usage-table td,.usage-table th{padding:10px 14px;border-top:1px solid var(--border-subtle);text-align:left;white-space:nowrap}.usage-table thead th{border-top:none;color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.usage-table tbody tr:hover,.usage-table thead th{background:var(--bg-subtle)}.usage-table .num{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.usage-table .strong{font-weight:600;color:var(--fg-1)}.usage-table .chain{display:inline-flex;align-items:center;gap:8px}.usage-table .chain img{width:16px;height:16px}.table-link{color:var(--accent-hover);font-weight:600}.table-link:hover{text-decoration:underline}.usage-trend li{grid-template-columns:minmax(120px,1fr) 1.4fr minmax(96px,max-content) minmax(72px,max-content);min-height:40px;padding:8px 16px}.usage-trend li:first-child{border-top:none}.spark{height:8px;background:var(--bg-muted);overflow:hidden}.spark,.spark__fill{border-radius:var(--radius-pill)}.spark__fill{height:100%;background:var(--accent)}.activity-strip{display:grid;grid-gap:1px;gap:1px;margin:0;padding:0;list-style:none}.activity-strip li{display:grid;grid-template-columns:minmax(120px,max-content) 1fr auto;grid-gap:12px;gap:12px;padding:10px 16px;border-top:1px solid var(--border-subtle);align-items:center}.activity-strip li:first-child{border-top:none}.activity-strip small,.activity-strip span{color:var(--fg-3);font-size:var(--text-sm)}.activity-strip strong{color:var(--fg-1);font-size:var(--text-base)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1px;gap:1px;margin:0;background:var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.detail-grid>div{display:grid;grid-gap:4px;gap:4px;padding:14px 16px;background:var(--bg-surface)}.detail-grid dt{color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.detail-grid dd{margin:0;color:var(--fg-1);font-size:var(--text-base);word-break:break-word}.detail-grid dd.num{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.report-registry{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--border-subtle)}.report-registry__item{display:grid;grid-gap:4px;gap:4px;min-height:84px;padding:14px 16px;background:var(--bg-surface);cursor:pointer}.report-registry__item:hover{background:var(--bg-subtle)}.report-registry__item--active{background:var(--accent-soft)}.report-registry__item strong{color:var(--fg-1);font-size:var(--text-base);font-weight:600}.report-registry__item span{color:var(--fg-3);font-size:var(--text-sm);line-height:1.45}.invoice-total{display:flex;align-items:baseline;justify-content:space-between;padding:14px 16px;border-top:2px solid var(--border-default)}.invoice-total .amount,.invoice-total .label{font-weight:600;color:var(--fg-1)}.invoice-total .amount{font-family:var(--font-mono);font-size:var(--text-2xl);letter-spacing:-.01em}.empty-state,.usage-empty{margin:0;padding:16px;color:var(--fg-3);font-size:var(--text-base)}.filter-bar{gap:10px;flex-wrap:wrap}.filter-bar,.filter-search{display:flex;align-items:center}.filter-search{gap:8px;min-width:260px;min-height:38px;padding:0 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface)}.filter-search svg{color:var(--fg-4);flex-shrink:0}.filter-search input{flex:1 1;border:0;background:none;font:inherit;color:var(--fg-1);outline:none}.filter-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--bg-surface);color:var(--fg-2);font-size:var(--text-sm);font-weight:500;cursor:pointer}.filter-chip:hover{background:var(--bg-subtle)}.filter-chip--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-press)}.filter-bar__spacer{flex:1 1}.entity-cell{display:inline-flex;align-items:center;gap:10px}.entity-cell--plain{align-items:flex-start;flex-direction:column;gap:2px}.entity-cell--plain .mono{color:var(--fg-3);font-size:var(--text-xs)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-press);font-size:var(--text-xs);font-weight:700;letter-spacing:-.01em}.entity-cell__meta{display:grid;grid-gap:1px;gap:1px}.entity-cell__meta b{font-size:var(--text-base);font-weight:600;color:var(--fg-1)}.entity-cell__meta span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--border-subtle)}.pagination__info{color:var(--fg-3);font-size:var(--text-sm)}.pagination__info .num{font-family:var(--font-mono);color:var(--fg-2)}.pagination__controls{display:inline-flex;gap:6px}.pagination__btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;padding:0 9px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--fg-2);font-size:var(--text-sm);font-weight:500;cursor:pointer}.pagination__btn:hover:not([disabled]){background:var(--bg-subtle)}.pagination__btn--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-press)}.pagination__btn[disabled]{opacity:.45;cursor:not-allowed}.page-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-subtle)}.page-tab{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:none;color:var(--fg-3);font:inherit;font-size:var(--text-base);font-weight:500;cursor:pointer}.page-tab:hover{color:var(--fg-1)}.page-tab--active{color:var(--fg-1);border-bottom-color:var(--accent)}.page-tab .count{font-family:var(--font-mono);font-size:var(--text-xs);padding:1px 6px;border-radius:var(--radius-pill);background:var(--bg-muted);color:var(--fg-2)}.ops-form{display:grid;grid-gap:18px;gap:18px}.ops-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.ops-form__row{display:grid;grid-gap:6px;gap:6px}.ops-form__row--full{grid-column:1/-1}.ops-form label{color:var(--fg-2);font-size:var(--text-sm);font-weight:600}.ops-form label .opt{color:var(--fg-4);font-weight:400}.ops-form input,.ops-form select,.ops-form textarea{width:100%;min-height:38px;border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:8px 11px;font:inherit;color:var(--fg-1);background:var(--bg-surface)}.ops-form textarea{min-height:84px;resize:vertical}.ops-form input:focus-visible,.ops-form select:focus-visible,.ops-form textarea:focus-visible{border-color:var(--accent);outline:none;box-shadow:var(--shadow-focus-ring)}.ops-form .hint{color:var(--fg-3);font-size:var(--text-xs)}.ops-form__check{display:flex!important;align-items:center;gap:var(--space-2)}.ops-form__actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--border-subtle);padding-top:18px}.input-prefix{display:flex;align-items:stretch;border:1px solid var(--border-default);border-radius:var(--radius-sm);overflow:hidden}.input-prefix:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus-ring)}.input-prefix span{display:inline-flex;align-items:center;padding:0 11px;background:var(--bg-subtle);color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-sm);border-right:1px solid var(--border-default)}.input-prefix input{border:0!important;box-shadow:none!important;border-radius:0}.jn-chart{position:relative;width:100%}.jn-chart__svg{display:block;width:100%;height:100%;overflow:visible}.jn-chart__svg--donut{margin:0 auto}.jn-chart__grid{stroke:var(--border-subtle);stroke-width:1;vector-effect:non-scaling-stroke}.jn-chart__axis{fill:var(--fg-4);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:-.01em}.jn-chart__bar{fill:var(--accent);opacity:.85;transition:opacity var(--dur-fast) var(--ease-out)}.jn-chart__bar:hover{opacity:1}.jn-chart__donut-value{fill:var(--fg-1);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em}.jn-chart__donut-sub{fill:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.chart-panel__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 16px 4px}.chart-panel__metric{display:grid;grid-gap:2px;gap:2px}.chart-panel__metric .label{color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.chart-panel__metric .value{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:600;color:var(--fg-1);letter-spacing:-.01em}.chart-panel__metric .delta--up{color:var(--jn-success-700);font-size:var(--text-sm)}.chart-panel__metric .delta--down{color:var(--jn-error-700);font-size:var(--text-sm)}.chart-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:8px 16px 4px}.chart-legend__item{display:inline-flex;align-items:center;gap:7px;font-size:var(--text-sm);color:var(--fg-2)}.chart-legend__swatch{width:10px;height:10px;border-radius:var(--radius-xs)}.chart-body{padding:8px 6px 12px}.donut-layout{display:grid;grid-template-columns:minmax(160px,220px) 1fr;align-items:center;grid-gap:20px;gap:20px;padding:16px}.donut-legend{display:grid;grid-gap:10px;gap:10px}.donut-legend__row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:10px;gap:10px;font-size:var(--text-base)}.donut-legend__row .sw{width:10px;height:10px;border-radius:var(--radius-xs)}.donut-legend__row .lab{color:var(--fg-2)}.donut-legend__row .val{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--fg-1);font-weight:600}@media (max-width:720px){.donut-layout{grid-template-columns:1fr}}.widget-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.widget-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-widget{position:relative;display:grid;align-content:start;grid-gap:var(--space-2);gap:var(--space-2);padding:var(--space-4);padding-right:3.5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-xs)}.stat-widget__label{color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.stat-widget__value{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);color:var(--fg-1);font-size:var(--text-2xl);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1.1}.stat-widget__foot{margin:0;color:var(--fg-3);font-size:var(--text-sm)}.stat-widget__foot a{color:var(--accent-hover);font-weight:600}.stat-widget__icon{position:absolute;top:var(--space-4);right:var(--space-4);display:grid;place-items:center;width:2.125rem;height:2.125rem;border-radius:var(--radius-pill);background:var(--bg-muted);color:var(--fg-3)}.stat-widget--success .stat-widget__icon{background:var(--jn-success-50);color:var(--jn-success-700)}.stat-widget--info .stat-widget__icon{background:var(--jn-info-50);color:var(--jn-info-700)}.stat-widget--warn .stat-widget__icon{background:var(--jn-warning-50);color:var(--jn-warning-700)}.stat-widget--danger .stat-widget__icon{background:var(--jn-error-50);color:var(--jn-error-700)}.trend-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:1px 8px;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--bg-subtle);color:var(--fg-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.trend-chip--up{border-color:var(--jn-success-500);background:var(--jn-success-50);color:var(--jn-success-700)}.trend-chip--down{border-color:var(--jn-error-500);background:var(--jn-error-50);color:var(--jn-error-700)}.trend-chip--flat{border-color:var(--border-default);background:var(--bg-muted);color:var(--fg-3)}.trend-chip--up.trend-chip--inverse{border-color:var(--jn-error-500);background:var(--jn-error-50);color:var(--jn-error-700)}.trend-chip--down.trend-chip--inverse{border-color:var(--jn-success-500);background:var(--jn-success-50);color:var(--jn-success-700)}.budget-bar{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.budget-bar__track{position:relative;height:var(--space-2);border-radius:var(--radius-pill);background:var(--bg-muted)}.budget-bar__fill{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-pill);background:var(--accent)}.budget-bar--warn .budget-bar__fill{background:var(--jn-warning-500)}.budget-bar--over .budget-bar__fill{background:var(--jn-error-500)}.budget-bar__mark{position:absolute;top:calc(var(--space-1) * -1);bottom:calc(var(--space-1) * -1);width:2px;border-radius:var(--radius-xs);background:var(--fg-4)}.budget-bar__legend{display:flex;justify-content:space-between;gap:var(--space-3);color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.budget-bar__legend b{color:var(--fg-1);font-weight:600}.spark-trend{display:inline-flex;align-items:center;color:var(--accent)}.spark-trend--down{color:var(--jn-error-500)}.spark-trend svg{display:block}.spark-trend polyline{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.key-token{gap:var(--space-2);min-height:28px;padding:2px 4px 2px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--fg-2);white-space:nowrap}.key-token,.key-token__copy{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-xs)}.key-token__copy{gap:var(--space-1);min-height:22px;padding:0 7px;border:0;border-radius:var(--radius-xs);background:none;color:var(--accent-hover);cursor:pointer;font-weight:600}.key-token__copy:hover{background:var(--accent-soft)}.key-token__copy.is-copied{color:var(--jn-success-700)}@media (max-width:860px){.app-shell--internal{grid-template-columns:1fr}.internal-nav{position:static;height:auto;border-right:0;border-bottom:1px solid var(--border-subtle)}.dashboard-grid,.metrics-grid,.metrics-grid--4,.ops-form__grid,.report-registry,.usage-summary-grid,.widget-grid,.widget-grid--3{grid-template-columns:1fr}}.usage-controls--dashboard{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.usage-controls__filters{display:inline-flex;flex-wrap:wrap;gap:8px}.time-picker{position:relative;display:inline-flex;gap:8px}.time-picker__button{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-1);font:inherit;font-size:var(--text-base);cursor:pointer}.time-picker__button:hover{background:var(--bg-subtle)}.time-picker__button[aria-expanded=true]{border-color:var(--accent)}.time-picker__button svg{color:var(--fg-3)}.time-picker__panel{position:absolute;top:calc(100% + 6px);left:0;z-index:30;display:flex;gap:16px;min-width:460px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-lg)}.time-picker__panel--refresh{left:auto;right:0;min-width:160px}.time-picker__panel strong{display:block;margin-bottom:8px;font-size:var(--text-sm);color:var(--fg-2)}.time-picker__panel ul{margin:0;padding:0;list-style:none;display:grid;grid-gap:2px;gap:2px}.time-picker__absolute{flex:1 1;display:grid;grid-gap:8px;gap:8px;align-content:start;padding-right:16px;border-right:1px solid var(--border-subtle)}.time-picker__absolute label{display:grid;grid-gap:4px;gap:4px;font-size:var(--text-xs);color:var(--fg-3)}.time-picker__absolute input[type=datetime-local]{min-height:32px;padding:0 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font:inherit;font-size:var(--text-sm)}.time-picker__absolute button{min-height:32px;padding:0 12px;border:0;border-radius:var(--radius-md);background:var(--accent);color:var(--fg-on-accent);font:inherit;font-size:var(--text-sm);cursor:pointer}.time-picker__quick{min-width:170px}.time-picker__quick-link{display:flex;align-items:center;min-height:30px;padding:0 10px;border-radius:var(--radius-sm);color:var(--fg-1);text-decoration:none;font-size:var(--text-base)}.time-picker__quick-link:hover{background:var(--bg-subtle)}.time-picker__quick-link--active{background:var(--accent-soft);color:var(--accent);font-weight:600}.filter-select{position:relative}.filter-select .filter-chip{cursor:pointer;font:inherit;font-size:var(--text-sm)}.filter-select__panel{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:220px;max-width:320px;padding:8px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-lg)}.filter-select__search{width:100%;min-height:30px;margin-bottom:6px;padding:0 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font:inherit;font-size:var(--text-sm)}.filter-select__options{max-height:260px;overflow-y:auto;display:grid;grid-gap:2px;gap:2px}.filter-select__option{display:flex;align-items:center;gap:8px;min-height:30px;padding:0 8px;border-radius:var(--radius-sm);color:var(--fg-1);text-decoration:none;font-size:var(--text-sm)}.filter-select__option:hover{background:var(--bg-subtle)}.filter-select__option--active{color:var(--accent);font-weight:600}.filter-select__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-sm)}.filter-select__mark{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:var(--fg-on-accent);flex:none}.filter-select__mark--checked{background:var(--accent);border-color:var(--accent)}.filter-select__empty{display:block;padding:8px;color:var(--fg-3);font-size:var(--text-sm)}.searchable-select{display:grid;grid-gap:var(--space-1);gap:var(--space-1);min-width:14rem}.node-commercial-form,.node-op-form{display:grid;grid-gap:var(--space-2);gap:var(--space-2);min-width:14rem}.detail-grid--compact{grid-template-columns:1fr;margin-top:var(--space-2)}.panel--wide{grid-column:1/-1}.op-table__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.op-table__toolbar .table-link{background:none;border:0;padding:0;font:inherit;font-size:var(--text-sm);cursor:pointer}.op-table__search{min-height:30px;padding:0 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font:inherit;font-size:var(--text-sm);min-width:200px}.op-table__note{margin:8px 0 0;color:var(--fg-3);font-size:var(--text-xs)}.usage-table tfoot td{border-top:2px solid var(--border-subtle);font-weight:600}.cell-clip{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.share-cell{display:inline-flex;align-items:center;gap:8px;justify-content:flex-end;min-width:90px}.share-cell__bar{display:inline-block;width:44px;height:6px;border-radius:var(--radius-xs);background:var(--bg-subtle);overflow:hidden}.share-cell__bar span{display:block;height:100%;border-radius:var(--radius-xs);background:var(--accent)}.widget-actions{display:inline-flex;align-items:center;gap:8px;flex:none}.widget-expand{display:grid;place-items:center;width:26px;height:26px;padding:0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-3);cursor:pointer}.widget-expand:focus-visible,.widget-expand:hover{color:var(--accent);border-color:var(--accent);outline:none}.widget-overlay{position:fixed;inset:0;z-index:90;display:flex;padding:3vh 3vw;background:var(--bg-overlay);-webkit-backdrop-filter:blur(var(--blur-backdrop));backdrop-filter:blur(var(--blur-backdrop))}.widget-overlay__panel{display:flex;flex-direction:column;flex:1 1;min-width:0;min-height:0;padding:18px 22px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-xl)}.widget-overlay__panel>.panel__header{flex:none}.widget-overlay__body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:auto}.widget-overlay__body .echart{flex:1 1 auto;min-height:0}.widget-overlay__body .usage-table-wrap{flex:1 1 auto;min-height:0;overflow:auto}@media (max-width:720px){.time-picker__panel{min-width:300px;flex-direction:column}.time-picker__absolute{padding-right:0;border-right:0}.widget-overlay{padding:0}.widget-overlay__panel{border-radius:0;border:0}}body,html{min-height:100%}.app-shell{min-height:100vh}.app-shell--auth{display:grid;grid-template-columns:minmax(0,1fr)}.app-main--auth{display:grid;align-items:center;justify-items:center;min-height:100vh;width:100%;padding:var(--space-6)}.app-shell--customer{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);min-height:100vh;transition:grid-template-columns var(--dur-fast) var(--ease-out)}.app-shell--customer.is-collapsed{grid-template-columns:4rem minmax(0,1fr)}.customer-nav__mobile-toggle,.customer-nav__scrim{display:none}.customer-nav{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;flex-direction:column;gap:var(--space-4);height:100vh;padding:var(--space-4) var(--space-3);border-right:1px solid var(--border-subtle);background:var(--bg-surface);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.customer-nav__brand,.customer-nav__link{display:flex;align-items:center}.customer-nav__brand{gap:10px;min-width:max-content;min-height:2.25rem;padding-inline:var(--space-2);color:var(--fg-1);font-size:var(--text-base);font-weight:700}.customer-nav__brand img{flex:none;width:1.75rem;height:1.75rem}.customer-nav__brand .sub{padding:1px 6px;border:1px solid var(--border-default);border-radius:var(--radius-pill);color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.customer-nav__links{display:grid;grid-gap:var(--space-3);gap:var(--space-3);align-content:start}.customer-nav__group{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.customer-nav__group-label{padding:0 var(--space-2);color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;line-height:1;text-transform:uppercase}.customer-nav__group-links{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.customer-nav__link{gap:8px;min-height:36px;width:100%;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--fg-2);font-size:var(--text-base);font-weight:500;text-align:left;white-space:nowrap}.customer-nav__collapse svg,.customer-nav__link svg{flex:none}.customer-nav__link:focus-visible,.customer-nav__link:hover{background:var(--bg-muted);color:var(--fg-1);outline:none}.customer-nav__link.is-active{background:var(--accent-soft);color:var(--accent-press);font-weight:600}.customer-nav__spacer{margin-top:auto}.customer-nav__collapse{display:flex;align-items:center;gap:var(--space-2);min-height:34px;width:100%;padding:var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--fg-3);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:500;white-space:nowrap}.customer-nav__collapse:focus-visible,.customer-nav__collapse:hover{background:var(--bg-muted);color:var(--fg-1);outline:none}.customer-nav__collapse kbd{margin-left:auto;padding:1px 5px;border:1px solid var(--border-default);border-radius:var(--radius-xs);background:var(--bg-subtle);color:var(--fg-4);font-family:var(--font-mono);font-size:var(--text-xs)}.customer-nav__session{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.customer-nav__avatar{display:grid;place-items:center;width:1.875rem;height:1.875rem;margin-inline:var(--space-2);border-radius:var(--radius-pill);background:var(--accent);color:var(--fg-on-accent);font-size:var(--text-xs);font-weight:700}.customer-nav__signout{margin:0}.customer-nav__signout button.customer-nav__link{border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--text-base);font-weight:500}.is-collapsed .customer-nav{padding-inline:var(--space-2)}.is-collapsed .customer-nav__brand,.is-collapsed .customer-nav__collapse,.is-collapsed .customer-nav__link{justify-content:center}.is-collapsed .customer-nav__brand{padding-inline:0}.is-collapsed .customer-nav__brand span,.is-collapsed .customer-nav__collapse kbd,.is-collapsed .customer-nav__collapse span,.is-collapsed .customer-nav__group-label,.is-collapsed .customer-nav__link span{display:none}.is-collapsed .customer-nav__avatar{margin-inline:auto}.panel{padding:16px}.endpoint-previews{display:grid;grid-gap:var(--space-1);gap:var(--space-1);margin-top:var(--space-3)}.endpoint-previews code{display:block;overflow-wrap:anywhere}.panel__header{padding:0 0 12px}.panel__header p{margin-top:4px;color:var(--fg-3);font-size:var(--text-base)}.estimator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.usage-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px}.usage-summary-grid--operational{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.usage-metric{min-height:132px}.usage-metric strong{overflow-wrap:anywhere}.usage-state{display:grid;grid-gap:6px;gap:6px;padding:16px}.usage-state strong{color:var(--fg-1)}.operational-panel-note{display:grid;grid-gap:var(--space-1);gap:var(--space-1);margin:0 0 var(--space-3);padding:var(--space-3);border:1px solid var(--jn-warning-500);border-radius:var(--radius-sm);background:var(--jn-warning-50);color:var(--jn-warning-700);font-size:var(--text-sm)}.operational-filter-state{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);color:var(--fg-3);font-size:var(--text-sm)}.usage-filter__menu{position:relative}.usage-filter__menu summary{list-style:none}.usage-filter__menu summary::-webkit-details-marker{display:none}.usage-time-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.usage-time-form label{display:grid;grid-gap:var(--space-1);gap:var(--space-1);color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;text-transform:uppercase}.usage-time-form input{min-height:34px;border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:6px 10px;background:var(--bg-surface);color:var(--fg-1);font:inherit;text-transform:none}.usage-time-form input:focus-visible{border-color:var(--accent);outline:none;box-shadow:var(--shadow-focus-ring)}.usage-filter__choices{position:absolute;z-index:10;display:grid;grid-gap:var(--space-2);gap:var(--space-2);min-width:180px;margin-top:var(--space-2);padding:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-sm)}.usage-trend{display:grid;grid-gap:1px;gap:1px;margin:0;padding:0;list-style:none}.usage-trend li{display:grid;grid-template-columns:minmax(140px,1fr) minmax(96px,max-content) minmax(72px,max-content);align-items:center;grid-gap:12px;gap:12px;min-height:42px;padding:10px 16px;border-top:1px solid var(--border-subtle)}.usage-trend small,.usage-trend span{color:var(--fg-3);font-size:var(--text-sm)}.usage-trend strong{color:var(--fg-1);font-size:var(--text-base);text-align:right;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.quote-page{display:grid;grid-gap:18px;gap:18px;max-width:860px}.quote-page h1{margin:0;font-family:var(--font-display);font-weight:900;letter-spacing:var(--tracking-tight);color:var(--fg-1);font-size:var(--text-2xl);line-height:1.25}.quote-summary{display:grid;grid-gap:6px;gap:6px;padding:16px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-xs)}.quote-summary strong{color:var(--fg-1);font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:var(--text-2xl)}.quote-expires,.quote-summary span{margin:0;color:var(--fg-3);font-size:var(--text-base)}.quote-actions{display:flex;flex-wrap:wrap;gap:10px}.quote-action{min-width:128px;min-height:42px;border:1px solid transparent;border-radius:var(--radius-sm);padding:0 16px;font-weight:700;line-height:1.1;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.quote-action:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}.quote-action--primary{border-color:var(--accent);background:var(--accent);color:var(--fg-on-accent)}.quote-action--primary:hover{border-color:var(--accent-hover);background:var(--accent-hover)}.quote-action--secondary{border-color:var(--accent);background:var(--bg-surface);color:var(--accent-press);box-shadow:var(--shadow-xs)}.quote-action--secondary:hover{border-color:var(--accent-hover);background:var(--accent-soft);color:var(--accent-press)}.quote-action--ghost{border-color:var(--border-default);background:transparent;color:var(--fg-2)}.quote-action--ghost:hover{border-color:var(--border-strong);background:var(--bg-muted);color:var(--fg-1)}.auth-page{width:100%;max-width:420px}.auth-form{display:grid;grid-gap:14px;gap:14px;padding:18px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.auth-form label{display:grid;grid-gap:6px;gap:6px;color:var(--fg-2);font-size:var(--text-base);font-weight:700}.auth-form input{min-height:40px;width:100%;border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:8px 10px;color:var(--fg-1);font:inherit;background:var(--bg-surface)}.auth-form input:focus-visible{border-color:var(--accent);outline:none;box-shadow:var(--shadow-focus-ring)}.auth-form button{min-height:40px;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--fg-on-accent);cursor:pointer;font:inherit;font-weight:700}.auth-form button:focus-visible,.auth-form button:hover{background:var(--accent-hover);outline:none}.passkey-login{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.auth-divider{display:flex;align-items:center;gap:var(--space-3);color:var(--fg-3);font-size:var(--text-xs);text-transform:uppercase}.auth-divider:after,.auth-divider:before{height:1px;flex:1 1;background:var(--border-subtle);content:""}.auth-form .passkey-login button{border:1px solid var(--border-default);background:var(--bg-surface);color:var(--fg-1)}.auth-form .passkey-login button:focus-visible,.auth-form .passkey-login button:hover{border-color:var(--border-strong);background:var(--bg-muted)}.credential-list{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin-bottom:var(--space-5)}.credential-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.credential-row>div{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.credential-row span{color:var(--fg-3);font-size:var(--text-sm)}.passkey-register-form{padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.button--danger{border-color:var(--jn-error-500);background:var(--jn-error-50);color:var(--jn-error-700)}.button--danger:focus-visible,.button--danger:hover{background:var(--jn-error-500);color:var(--fg-on-accent)}.form-error{margin:0;color:var(--jn-error-700);font-size:var(--text-base)}.key-details{padding:var(--space-3) 0}.key-details summary{cursor:pointer;color:var(--accent);font-weight:600}.endpoint-explorer,.endpoint-explorer__code{min-width:0}.endpoint-explorer__code{display:block;overflow-x:auto;white-space:nowrap}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));grid-gap:var(--space-4);gap:var(--space-4)}.pricing-card{display:flex;min-height:100%;flex-direction:column;justify-content:space-between;gap:var(--space-6)}.pricing-card__price{color:var(--fg-1);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:700}.notification-list,.onboarding-list{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.notification-card,.onboarding-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.notification-card.is-read,.onboarding-item.is-complete{background:var(--bg-subtle);color:var(--fg-3)}.notification-card h3,.notification-card p{margin:var(--space-1) 0}.onboarding-item{justify-content:flex-start;color:var(--fg-1);text-decoration:none}.onboarding-item small{margin-left:auto}.onboarding-item .status-dot{width:var(--space-2);height:var(--space-2);border-radius:var(--radius-pill);background:var(--jn-warning-500)}.onboarding-item.is-complete .status-dot{background:var(--jn-success-500)}@media (max-width:760px){.app-shell--customer,.app-shell--customer.is-collapsed{display:grid;grid-template-columns:minmax(0,1fr)}.customer-nav__mobile-toggle{position:-webkit-sticky;position:sticky;top:var(--space-3);z-index:40;display:inline-flex;align-items:center;justify-self:start;gap:var(--space-2);min-height:2.25rem;margin:var(--space-3) var(--space-5) 0;padding:0 var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--fg-1);box-shadow:var(--shadow-xs);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:600}.customer-nav__mobile-toggle:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}.customer-nav__scrim{position:fixed;inset:0;z-index:50;display:block;border:0;background:var(--bg-overlay);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out)}.is-mobile-nav-open .customer-nav__scrim{opacity:1;pointer-events:auto}.customer-nav{position:fixed;inset:0 auto 0 0;z-index:60;width:min(20rem,calc(100vw - var(--space-10)));height:100dvh;border-right:1px solid var(--border-subtle);border-bottom:0;box-shadow:var(--shadow-xl);transform:translateX(-100%);transition:transform var(--dur-base) var(--ease-out)}.is-mobile-nav-open .customer-nav{transform:translateX(0)}.is-collapsed .customer-nav{padding-inline:var(--space-3)}.is-collapsed .customer-nav__brand,.is-collapsed .customer-nav__collapse,.is-collapsed .customer-nav__link{justify-content:flex-start}.is-collapsed .customer-nav__brand span,.is-collapsed .customer-nav__collapse kbd,.is-collapsed .customer-nav__collapse span,.is-collapsed .customer-nav__group-label,.is-collapsed .customer-nav__link span{display:inline}.customer-nav__collapse{display:none}.app-main{padding:var(--space-5)}.estimator-grid,.usage-summary-grid{grid-template-columns:1fr}.usage-controls,.usage-segmented{align-items:stretch;width:100%}.usage-segment{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 6px);justify-content:center}.usage-trend li{grid-template-columns:1fr}.usage-trend strong{text-align:left}.quote-action{flex:1 1 100%;min-width:0}}@media (prefers-reduced-motion:reduce){.quote-action{transition:none}}