:root{color-scheme:light;--color-brand-50:#f2f0ff;--color-brand-100:#e7e3ff;--color-brand-200:#d1caff;--color-brand-300:#afa5ff;--color-brand-400:#887cfd;--color-brand-500:#6b5ce7;--color-brand-600:#5347ce;--color-brand-700:#4338ad;--color-brand-800:#372f8d;--color-brand-900:#302a73;--color-brand-950:#1c1843;--color-accent-400:#38cfd9;--color-accent-500:#16c8c7;--color-accent-600:#0c9fa2;--color-action:#5347ce;--color-action-hover:#4338ad;--color-on-action:#ffffff;--color-accent:#16c8c7;--color-accent-hover:#0fb0af;--color-accent-strong:#0a6e70;--color-accent-bg:#e2f7f6;--color-accent-border:#9fe1df;--color-on-accent:#06373a;--color-tertiary:#4896fe;--color-tertiary-strong:#2864c9;--color-tertiary-bg:#e8f1ff;--color-tertiary-border:#b6d1fb;--color-tint-violet:#887cfd;--color-chart-series-1:#5347ce;--color-chart-series-2:#4896fe;--color-chart-series-3:#16c8c7;--color-chart-series-4:#887cfd;--color-chart-series-5:#23bdbd;--color-chart-grid:#dfe6e7;--color-chart-axis:#646477;--color-chart-tooltip-bg:#ffffff;--color-chart-tooltip-text:#19182a;--color-chart-tooltip-border:#c6d0d2;--color-success:#08775b;--color-success-bg:#e4f7ef;--color-success-border:#9bdfc8;--color-warning:#8a5100;--color-warning-bg:#fff2d6;--color-warning-border:#efc46f;--color-danger:#b42318;--color-danger-bg:#ffebe9;--color-danger-border:#f5aaa3;--color-info:#175cd3;--color-info-bg:#eaf2ff;--color-info-border:#a9c7f7;--color-divergent:#9c2bad;--color-divergent-bg:#f9eafa;--color-divergent-border:#dda5e5;--color-canvas:#f3f9f9;--color-canvas-subtle:#edf5f5;--color-surface:#ffffff;--color-surface-raised:#ffffff;--color-surface-muted:#f7fafa;--color-text:#19182a;--color-text-muted:#646477;--color-text-subtle:#77778a;--color-border:#dfe6e7;--color-border-strong:#a8b6b8;--color-overlay:rgb(25 24 42/56%);--font-sans:Inter,"Avenir Next",Avenir,"Segoe UI",system-ui,-apple-system,sans-serif;--font-mono:"Cascadia Code","SFMono-Regular",Consolas,monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.625rem;--text-3xl:2rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:.875rem;--radius-xl:1.125rem;--radius-pill:999px;--shadow-low:0 1px 2px rgb(28 24 67/5%),0 6px 18px rgb(28 24 67/3%);--shadow-medium:0 8px 24px rgb(28 24 67/8%),0 2px 6px rgb(28 24 67/4%);--shadow-high:0 20px 48px rgb(28 24 67/14%),0 6px 16px rgb(28 24 67/6%);--focus-ring:0 0 0 3px rgb(83 71 206/24%);--duration-fast:120ms;--duration-normal:180ms;--ease-out:cubic-bezier(.16,1,.3,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-brand-50:#241f48;--color-brand-100:#30295c;--color-brand-200:#433a7c;--color-brand-300:#6256aa;--color-brand-400:#9185f4;--color-brand-500:#a69cff;--color-brand-600:#b9b1ff;--color-brand-700:#d0cbff;--color-accent-400:#52dce0;--color-accent-500:#37cfd0;--color-accent-600:#8ce9e8;--color-action:#675bc7;--color-action-hover:#8579ed;--color-on-action:#ffffff;--color-accent:#37cfd0;--color-accent-hover:#52dce0;--color-accent-strong:#5fdedd;--color-accent-bg:#0f3d3e;--color-accent-border:#226b6c;--color-on-accent:#06282a;--color-tertiary:#78b1ff;--color-tertiary-strong:#9cc2ff;--color-tertiary-bg:#16294a;--color-tertiary-border:#34588f;--color-tint-violet:#9185f4;--color-chart-series-1:#a69cff;--color-chart-series-2:#78b1ff;--color-chart-series-3:#37cfd0;--color-chart-series-4:#c0b9ff;--color-chart-series-5:#66dedb;--color-chart-grid:#343847;--color-chart-axis:#b8b6c8;--color-chart-tooltip-bg:#212532;--color-chart-tooltip-text:#f4f2ff;--color-chart-tooltip-border:#484d5f;--color-success:#69ddb5;--color-success-bg:#103e34;--color-success-border:#226b58;--color-warning:#ffd081;--color-warning-bg:#49320f;--color-warning-border:#815b1e;--color-danger:#ff9f96;--color-danger-bg:#4d211f;--color-danger-border:#823932;--color-info:#9cc2ff;--color-info-bg:#192f57;--color-info-border:#34588f;--color-divergent:#e8a4f0;--color-divergent-bg:#45204d;--color-divergent-border:#73347d;--color-canvas:#11131b;--color-canvas-subtle:#171a24;--color-surface:#1b1e29;--color-surface-raised:#212532;--color-surface-muted:#171a24;--color-text:#f4f2ff;--color-text-muted:#b8b6c8;--color-text-subtle:#9b99ae;--color-border:#343847;--color-border-strong:#5e657b;--color-overlay:rgb(4 5 10/72%);--shadow-low:0 1px 2px rgb(0 0 0/18%),0 6px 18px rgb(0 0 0/12%);--shadow-medium:0 8px 24px rgb(0 0 0/24%),0 2px 6px rgb(0 0 0/18%);--shadow-high:0 20px 48px rgb(0 0 0/36%),0 6px 16px rgb(0 0 0/22%);--focus-ring:0 0 0 3px rgb(166 156 255/30%)}}:root[data-theme=dark]{color-scheme:dark;--color-brand-50:#241f48;--color-brand-100:#30295c;--color-brand-200:#433a7c;--color-brand-300:#6256aa;--color-brand-400:#9185f4;--color-brand-500:#a69cff;--color-brand-600:#b9b1ff;--color-brand-700:#d0cbff;--color-accent-400:#52dce0;--color-accent-500:#37cfd0;--color-accent-600:#8ce9e8;--color-action:#675bc7;--color-action-hover:#8579ed;--color-on-action:#ffffff;--color-accent:#37cfd0;--color-accent-hover:#52dce0;--color-accent-strong:#5fdedd;--color-accent-bg:#0f3d3e;--color-accent-border:#226b6c;--color-on-accent:#06282a;--color-tertiary:#78b1ff;--color-tertiary-strong:#9cc2ff;--color-tertiary-bg:#16294a;--color-tertiary-border:#34588f;--color-tint-violet:#9185f4;--color-chart-series-1:#a69cff;--color-chart-series-2:#78b1ff;--color-chart-series-3:#37cfd0;--color-chart-series-4:#c0b9ff;--color-chart-series-5:#66dedb;--color-chart-grid:#343847;--color-chart-axis:#b8b6c8;--color-chart-tooltip-bg:#212532;--color-chart-tooltip-text:#f4f2ff;--color-chart-tooltip-border:#484d5f;--color-success:#69ddb5;--color-success-bg:#103e34;--color-success-border:#226b58;--color-warning:#ffd081;--color-warning-bg:#49320f;--color-warning-border:#815b1e;--color-danger:#ff9f96;--color-danger-bg:#4d211f;--color-danger-border:#823932;--color-info:#9cc2ff;--color-info-bg:#192f57;--color-info-border:#34588f;--color-divergent:#e8a4f0;--color-divergent-bg:#45204d;--color-divergent-border:#73347d;--color-canvas:#11131b;--color-canvas-subtle:#171a24;--color-surface:#1b1e29;--color-surface-raised:#212532;--color-surface-muted:#171a24;--color-text:#f4f2ff;--color-text-muted:#b8b6c8;--color-text-subtle:#9b99ae;--color-border:#343847;--color-border-strong:#5e657b;--color-overlay:rgb(4 5 10/72%);--shadow-low:0 1px 2px rgb(0 0 0/18%),0 6px 18px rgb(0 0 0/12%);--shadow-medium:0 8px 24px rgb(0 0 0/24%),0 2px 6px rgb(0 0 0/18%);--shadow-high:0 20px 48px rgb(0 0 0/36%),0 6px 16px rgb(0 0 0/22%);--focus-ring:0 0 0 3px rgb(166 156 255/30%)}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}html{min-width:320px;background:var(--color-canvas)}body{margin:0;background:radial-gradient(circle at 72% -12%,rgb(83 71 206/7%),transparent 30rem),var(--color-canvas);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--color-brand-600);text-decoration:none}a:hover{color:var(--color-brand-700)}:where(a,button,input,select,textarea):focus-visible{outline:none;box-shadow:var(--focus-ring)}h1,h2,h3{color:var(--color-text);letter-spacing:-.025em;text-wrap:balance}h1{font-size:clamp(var(--text-2xl),2.5vw,var(--text-3xl));line-height:1.18;margin:0 0 var(--space-2);font-weight:680}h2{font-size:var(--text-lg);line-height:1.35;margin:var(--space-8) 0 var(--space-3);font-weight:650}p.sub{color:var(--color-text-muted);margin:0 0 var(--space-6);max-width:72ch}.shell{display:flex;min-height:100vh}.sidebar{position:-webkit-sticky;position:sticky;top:0;width:272px;height:100vh;flex-shrink:0;background:color-mix(in srgb,var(--color-surface) 96%,transparent);border-right:1px solid var(--color-border);padding:var(--space-5) var(--space-4);display:flex;flex-direction:column;gap:var(--space-5);overflow-y:auto;box-shadow:var(--shadow-low);z-index:10}.sidebar .brand{color:var(--color-brand-600);font-size:var(--text-xl);font-weight:750;letter-spacing:-.045em;padding:var(--space-1) var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav a{position:relative;padding:.58rem .7rem;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:560;transition:color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast) var(--ease-out)}.sidebar nav a:before{content:"";position:absolute;inset:0 auto 0 0;width:2px;border-radius:var(--radius-pill);background:transparent}.sidebar nav a:hover{color:var(--color-brand-700);background:var(--color-brand-50);transform:translateX(2px)}.sidebar nav a:hover:before{background:var(--color-accent)}.sidebar nav a[aria-current=page]{color:var(--color-brand-700);background:var(--color-brand-50);font-weight:680}.sidebar nav a[aria-current=page]:before{background:var(--color-accent);width:3px}.sidebar nav .group{margin:var(--space-5) var(--space-2) var(--space-1);color:var(--color-text-subtle);font-size:.6875rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.main{flex:1 1;width:calc(100% - 272px);max-width:1440px;padding:var(--space-8) clamp(var(--space-5),4vw,var(--space-12))}.card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-low)}.card,.cards{margin-bottom:var(--space-5)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.cards .card{position:relative;margin:0;min-height:118px;overflow:hidden}.cards .card:after{content:"";position:absolute;width:76px;height:76px;right:-28px;top:-32px;border-radius:50%;background:var(--color-brand-100);opacity:.7}.cards .card:nth-child(4n+1):after{background:color-mix(in srgb,var(--color-chart-series-1) 24%,var(--color-surface))}.cards .card:nth-child(4n+2):after{background:color-mix(in srgb,var(--color-accent) 30%,var(--color-surface))}.cards .card:nth-child(4n+3):after{background:color-mix(in srgb,var(--color-tertiary) 26%,var(--color-surface))}.cards .card:nth-child(4n+4):after{background:color-mix(in srgb,var(--color-tint-violet) 30%,var(--color-surface))}.metric{color:var(--color-text);font-size:clamp(var(--text-xl),2.2vw,var(--text-2xl));font-weight:720;letter-spacing:-.035em;line-height:1.15}.metric,.metric-label{margin-top:var(--space-2)}.metric-label{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.35}.card:has(>table){overflow-x:auto;padding:0}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:100%}.card:has(>table)>h2,.card:has(>table)>p{margin-left:var(--space-6);margin-right:var(--space-6)}.card:has(>table)>h2{margin-top:var(--space-5)!important}table{width:100%;min-width:620px;border-collapse:collapse;font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th{padding:.72rem var(--space-4);border-bottom:1px solid var(--color-border-strong);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:.71875rem;font-weight:700;letter-spacing:.055em;text-align:left;text-transform:uppercase;white-space:nowrap}td{padding:.78rem var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle}tbody tr{transition:background var(--duration-fast)}tbody tr:hover{background:color-mix(in srgb,var(--color-brand-50) 58%,transparent)}tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:28rem;padding:.18rem .55rem;border:1px solid var(--color-info-border);border-radius:var(--radius-pill);background:var(--color-info-bg);color:var(--color-info);font-size:var(--text-xs);font-weight:680;line-height:1.35}.badge:before{content:"";width:.38rem;height:.38rem;flex:0 0 auto;border-radius:50%;background:currentColor}.badge.ok{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.badge.warn{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning)}.badge.danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}.badge.divergent{background:var(--color-divergent-bg);border-color:var(--color-divergent-border);color:var(--color-divergent)}.badge.muted{background:var(--color-surface-muted);border-color:var(--color-border-strong);color:var(--color-text-muted)}form.stack{display:flex;flex-direction:column;gap:var(--space-4);max-width:480px}label{display:block;margin-bottom:var(--space-1);color:var(--color-text);font-size:var(--text-sm);font-weight:620}input,select,textarea{width:100%;min-height:42px;padding:.58rem .72rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);transition:border-color var(--duration-fast),box-shadow var(--duration-fast),background var(--duration-fast)}input::placeholder,textarea::placeholder{color:var(--color-text-subtle)}.action-list,.checklist{list-style:none;margin:0;padding:0}.action-list li,.checklist li{display:flex;gap:var(--space-4);align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.action-list li:last-child,.checklist li:last-child{border-bottom:none}.checklist li.done{color:var(--color-text-muted)}.checklist li.done strong{color:var(--color-success)}.checklist li.next{background:var(--color-brand-50);border-radius:var(--radius-md);padding-left:var(--space-3);padding-right:var(--space-3)}.appbar{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;margin:calc(var(--space-8) * -1) calc(-1 * clamp(var(--space-5), 4vw, var(--space-12))) var(--space-6);padding:var(--space-2) clamp(var(--space-5),4vw,var(--space-12));background:color-mix(in srgb,var(--color-surface) 92%,transparent);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-low);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.appbar-context{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.appbar-title{font-weight:660;font-size:var(--text-sm);color:var(--color-text);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appbar-sub{flex:0 0 auto;color:var(--color-text-subtle);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.appbar-actions{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto}.theme-toggle{min-height:36px;width:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:1rem}.theme-toggle:hover{background:var(--color-surface-muted);border-color:var(--color-brand-300);color:var(--color-text)}.user-menu-slot{margin-top:auto}.user-menu{position:relative}.user-menu-trigger{width:100%;min-height:0;padding:var(--space-2);gap:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);display:flex;align-items:center;text-align:left;font-weight:500}.user-menu-trigger:hover{border-color:var(--color-brand-300);background:var(--color-surface-muted);color:var(--color-text);transform:none;box-shadow:var(--shadow-low)}.user-menu-chip-id{display:flex;flex-direction:column;min-width:0;flex:1 1;line-height:1.25}.user-menu-chip-id strong{font-size:var(--text-sm)}.user-menu-chip-id .who,.user-menu-chip-id strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-caret{color:var(--color-text-muted);font-size:1rem;flex:0 0 auto}.avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:999px;background:var(--color-brand-600);color:var(--color-on-action);font-size:var(--text-xs);font-weight:700;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-lg{width:40px;height:40px;flex-basis:40px;font-size:var(--text-sm)}.user-menu-pop{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:50;max-height:70vh;overflow-y:auto;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-high);padding:var(--space-2);display:flex;flex-direction:column}.user-menu-head{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-3)}.user-menu-id{display:flex;flex-direction:column;min-width:0}.user-menu-id strong{font-size:var(--text-sm)}.user-menu-id .who{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}.user-menu-group{display:flex;flex-direction:column;padding:var(--space-1) 0;border-top:1px solid var(--color-border)}.user-menu-group:first-of-type{border-top:0}.user-menu-pop a[role=menuitem],.user-menu-signout{display:block;text-align:left;width:100%;padding:.5rem var(--space-3);border-radius:var(--radius-md);color:var(--color-text);text-decoration:none;font-size:var(--text-sm);background:none;border:none;min-height:0;font-weight:500}.user-menu-pop a[role=menuitem]:hover,.user-menu-signout:hover{background:var(--color-surface-muted);color:var(--color-text);transform:none;box-shadow:none}.theme-choice button:focus-visible,.user-menu-pop a[role=menuitem]:focus-visible,.user-menu-signout:focus-visible{outline:none;box-shadow:var(--focus-ring)}.user-menu-signout{color:var(--color-danger);font-weight:600}.user-menu-signout:hover{background:var(--color-danger-bg);color:var(--color-danger)}.user-menu-label{padding:.25rem var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted);font-weight:600}.theme-choice{display:flex;gap:4px;padding:0 var(--space-3) var(--space-2)}.theme-choice button{flex:1 1;min-height:0;padding:.35rem .3rem;font-size:var(--text-xs);font-weight:600;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-md)}.theme-choice button:hover{background:var(--color-surface-muted);transform:none;box-shadow:none}.theme-choice button.is-active{border-color:var(--color-action);background:var(--color-brand-50);color:var(--color-brand-700)}.theme-choice-inline{padding:0;max-width:340px}.settings-tabs{display:flex;flex-wrap:wrap;gap:var(--space-1);border-bottom:1px solid var(--color-border);margin:var(--space-5) 0 var(--space-6)}.settings-tabs a[role=tab]{padding:var(--space-2) var(--space-3);text-decoration:none;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.settings-tabs a[role=tab]:hover{color:var(--color-text);background:var(--color-surface-muted)}.settings-tabs a[role=tab][aria-selected=true]{color:var(--color-accent-strong);border-bottom-color:var(--color-accent);border-bottom-width:2.5px}.settings-tabs a[role=tab]:focus-visible{outline:none;box-shadow:var(--focus-ring)}.cta-new-company{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);margin-bottom:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);text-decoration:none;line-height:1.25}.cta-new-company:hover{border-color:var(--color-brand-300);background:var(--color-brand-50)}.cta-plus{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border-radius:var(--radius-md);background:var(--color-action);color:var(--color-on-action);font-weight:700}.empty-cnpj{padding:var(--space-3);line-height:1.3}.dropzone,.empty-cnpj{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md)}.dropzone{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-muted);cursor:pointer;font-weight:400}.dropzone.is-over,.dropzone:hover{border-color:var(--color-brand-500);background:var(--color-brand-50)}.dropzone-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border-strong)}:is(button,a,.btn).linkish{background:none;border:none;color:var(--color-text-muted);text-decoration:underline;min-height:0;padding:var(--space-1);font-weight:600;cursor:pointer}:is(button,a,.btn).linkish:hover{background:none;color:var(--color-text);transform:none;box-shadow:none}.usage-row{margin-bottom:var(--space-4)}.usage-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-1);font-size:var(--text-sm)}.usage-track{height:8px;border-radius:999px;background:var(--color-surface-muted);border:1px solid var(--color-border);overflow:hidden}.usage-fill{height:100%;background:var(--color-accent)}.usage-fill.over{background:var(--color-warning,#b8860b)}input[type=checkbox],input[type=radio]{width:auto;min-height:0;margin-right:var(--space-1);accent-color:var(--color-action);vertical-align:middle}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:flex;align-items:center;gap:var(--space-1);font-weight:500}input:hover,select:hover,textarea:hover{border-color:var(--color-brand-300)}input:focus,select:focus,textarea:focus{border-color:var(--color-brand-500);box-shadow:var(--focus-ring);outline:none}.btn,button{min-height:42px;padding:.58rem 1rem;border:1px solid var(--color-action);border-radius:var(--radius-md);background:var(--color-action);color:var(--color-on-action);font:inherit;font-size:var(--text-sm);font-weight:680;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),background var(--duration-fast),box-shadow var(--duration-fast)}.btn:hover,button:hover{background:var(--color-action-hover);transform:translateY(-1px);box-shadow:var(--shadow-low);color:var(--color-on-action)}.btn:active,button:active{transform:translateY(0)}.btn.secondary,button.secondary{border-color:var(--color-accent-border);background:var(--color-accent-bg);color:var(--color-accent-strong)}.btn.secondary:hover,button.secondary:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 18%,var(--color-surface));color:var(--color-accent-strong)}.btn.danger,button.danger{border-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger)}.btn.danger:hover,button.danger:hover{border-color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 16%,var(--color-surface));color:var(--color-danger)}.btn.sm,button.sm{min-height:32px;padding:.32rem .68rem;font-size:var(--text-xs)}button:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}.state-hover{background:var(--color-action-hover);transform:translateY(-1px);box-shadow:var(--shadow-low)}.state-focus{box-shadow:var(--focus-ring)}.state-loading{cursor:progress}.state-loading:before{content:"";width:.75rem;height:.75rem;display:inline-block;margin-right:var(--space-2);border:2px solid;border-right:2px solid transparent;border-radius:50%;vertical-align:-.12rem;animation:spin .8s linear infinite}.empty-state{padding:var(--space-8);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-muted);text-align:center}.error-panel{padding:var(--space-4);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger)}.skeleton{position:relative;overflow:hidden;background:var(--color-surface-muted);border-radius:var(--radius-sm);color:transparent!important}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-surface) 65%,transparent),transparent);animation:shimmer 1.4s infinite}.skeleton-line{height:.82rem;margin:.5rem 0}.skeleton-title{height:1.5rem;width:42%;margin-bottom:var(--space-4)}.skeleton-metric{height:1.9rem;width:60%;margin-top:var(--space-2)}@keyframes shimmer{to{transform:translateX(100%)}}.route-state{max-width:34rem;margin:4rem auto;text-align:center}.route-state .actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap;margin-top:var(--space-5)}@keyframes spin{to{transform:rotate(1turn)}}.inline-form{display:flex;gap:var(--space-2);align-items:flex-end;flex-wrap:wrap}.inline-form>div{min-width:160px}.filter-bar{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap;margin-bottom:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-muted)}.filter-bar>div{display:flex;flex-direction:column;gap:4px;min-width:150px;flex:1 1 150px}.filter-bar label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:600;margin:0}.filter-bar .filter-actions{flex:0 0 auto;flex-direction:row;align-items:flex-end;gap:var(--space-2);min-width:0}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted);flex-wrap:wrap}.pagination .pager{display:inline-flex;gap:var(--space-2)}.pagination a,.pagination span.disabled{display:inline-flex;align-items:center;min-height:36px;padding:.35rem .7rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);color:var(--color-text)}.pagination a:hover{border-color:var(--color-brand-300);background:var(--color-brand-50);color:var(--color-brand-700)}.pagination span.disabled{opacity:.45}@media (max-width:560px){.filter-bar{flex-direction:column;align-items:stretch}.filter-bar>div{min-width:0}.filter-bar .filter-actions button{width:100%}}.switchers{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-muted)}.switchers select{font-size:var(--text-xs)}.page-scope{display:inline-flex;flex-direction:column;gap:4px;max-width:380px;margin-bottom:var(--space-5);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted)}.page-scope label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:600}.banner,.page-scope select{font-size:var(--text-sm)}.banner{border:1px solid var(--color-warning-border);border-radius:var(--radius-md);background:var(--color-warning-bg);color:var(--color-warning);padding:.72rem var(--space-4);margin-bottom:var(--space-5);box-shadow:var(--shadow-low)}.banner a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}.banner.danger{border-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger)}.banner.success{border-color:var(--color-success-border);background:var(--color-success-bg);color:var(--color-success)}.banner.info{border-color:var(--color-info-border);background:var(--color-info-bg);color:var(--color-info)}.readonly-note{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);margin-top:var(--space-2);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);background:var(--color-warning-bg)}.readonly-note .rn-hint{line-height:1.4}.legend,.readonly-note .rn-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.legend{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin:0 0 var(--space-4)}.legend>span{display:inline-flex;align-items:center;gap:var(--space-1)}.error{color:var(--color-danger)}.error,.success{font-size:var(--text-sm)}.success{color:var(--color-success)}.mono{font-family:var(--font-mono);font-size:var(--text-xs);overflow-wrap:anywhere}.grid-cal{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.grid-cal .card{margin:0;min-height:132px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5)}.topbar .sub{margin-bottom:0}.topbar .who,.who{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.5}.modal,dialog{max-width:min(560px,calc(100vw - 2rem));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-high)}dialog::-webkit-backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}dialog::backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}@media (max-width:860px){.shell{display:block}.sidebar{position:relative;width:100%;height:auto;max-height:none;border-right:0;border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-4);gap:var(--space-3)}.sidebar .brand{padding-bottom:var(--space-2)}.sidebar nav{display:flex;flex-direction:row;align-items:center;gap:var(--space-2);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--space-1);margin-bottom:var(--space-1)}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav a{flex:0 0 auto;white-space:nowrap;padding:.38rem .75rem;border-radius:var(--radius-sm)}.sidebar nav .group{display:none}.switchers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar>form:last-child{display:flex;align-items:flex-end;gap:var(--space-3)}.sidebar>form:last-child .who{flex:1 1}.main{width:100%;padding:var(--space-6) var(--space-4)}.appbar{margin:calc(var(--space-6) * -1) calc(var(--space-4) * -1) var(--space-5);padding:var(--space-2) var(--space-4)}}@media (max-width:560px){body{font-size:var(--text-sm)}.switchers{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.card{padding:var(--space-4)}.card:has(>table)>h2,.card:has(>table)>p{margin-left:var(--space-4);margin-right:var(--space-4)}.topbar{display:block}.inline-form{align-items:stretch;flex-direction:column}.inline-form>div{min-width:0!important}.inline-form button{width:100%}}@media (max-width:390px){.cards{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-5)}.step-card{margin:0;padding:var(--space-3) var(--space-4);border-left:1px solid var(--color-border);border:1px solid var(--color-border);border-left-width:4px;background:var(--color-surface-muted);border-radius:var(--radius-md);opacity:.7;transition:border-color var(--duration-fast),background var(--duration-fast),opacity var(--duration-fast)}.step-card.active{border-left-color:var(--color-brand-600);background:var(--color-brand-50);opacity:1}.step-card.done{border-left-color:var(--color-success);background:var(--color-surface);opacity:1}.step-card-tag{font-size:var(--text-xs);font-weight:700;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.step-card.active .step-card-tag{color:var(--color-brand-600)}.step-card.done .step-card-tag{color:var(--color-success)}.step-card-title{font-weight:600;font-size:var(--text-sm);margin-top:2px}.badge.accent{background:var(--color-accent-bg);border-color:var(--color-accent-border);color:var(--color-accent-strong)}.badge.info{background:var(--color-tertiary-bg);border-color:var(--color-tertiary-border);color:var(--color-tertiary-strong)}.text-accent{color:var(--color-accent-strong)}.text-info{color:var(--color-tertiary-strong)}.card.accent-top{border-top:3px solid var(--color-accent)}.card.info-top{border-top:3px solid var(--color-tertiary)}.dash-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-5)}.dash-metric{position:relative;flex-direction:column;padding:var(--space-4) var(--space-5);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-low);overflow:hidden}.dash-metric,.dash-metric-head{display:flex;gap:var(--space-2)}.dash-metric-head{align-items:center;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.metric-chip{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:var(--radius-md);font-size:1rem}.metric-chip.violet{background:color-mix(in srgb,var(--color-chart-series-1) 16%,var(--color-surface));color:var(--color-brand-600)}.metric-chip.teal{background:var(--color-accent-bg);color:var(--color-accent-strong)}.metric-chip.blue{background:var(--color-tertiary-bg);color:var(--color-tertiary-strong)}.metric-chip.lviolet{background:color-mix(in srgb,var(--color-tint-violet) 20%,var(--color-surface));color:var(--color-brand-600)}.dash-metric .value{color:var(--color-text);font-size:clamp(var(--text-xl),2.2vw,var(--text-2xl));font-weight:720;letter-spacing:-.035em;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash-metric-foot{display:flex;gap:var(--space-2);color:var(--color-text-muted);flex-wrap:wrap}.dash-metric-foot,.delta{align-items:center;font-size:var(--text-xs)}.delta{display:inline-flex;gap:2px;padding:.1rem .4rem;border-radius:var(--radius-pill);font-weight:700}.delta.up{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.delta.down{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.delta.flat{background:var(--color-surface-muted);color:var(--color-text-muted);border:1px solid var(--color-border-strong)}.dash-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-5);align-items:start}.chart-card{grid-column:span 12;margin:0}.chart-card.wide{grid-column:span 8}.chart-card.narrow{grid-column:span 4}.chart-card.half{grid-column:span 6}.chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.chart-head h2{margin:0;font-size:var(--text-base)}.chart-head .who{margin-top:2px}.chart-box{width:100%}.chart-legend{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.chart-legend>span{display:inline-flex;align-items:center;gap:6px}.chart-legend .dot{width:10px;height:10px;border-radius:3px;flex:0 0 auto}.dist-figures{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-2)}.dist-figures>div{display:flex;flex-direction:column;gap:2px}.dist-figures .lbl{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--color-text-muted)}.dist-figures .lbl .dot{width:10px;height:10px;border-radius:3px}.dist-figures .amt{font-size:var(--text-base);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mini-bar{display:inline-block;width:84px;height:6px;border-radius:999px;background:var(--color-surface-muted);overflow:hidden;vertical-align:middle;border:1px solid var(--color-border)}.mini-bar>i{display:block;height:100%;background:var(--color-accent)}.app-logo{justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:var(--radius-md);font-weight:800;font-size:.9rem}.app-cell,.app-logo{display:inline-flex;align-items:center}.app-cell{gap:var(--space-3)}@media (max-width:1040px){.chart-card.half,.chart-card.narrow,.chart-card.wide{grid-column:span 12}}.app-logo.violet{background:color-mix(in srgb,var(--color-chart-series-1) 16%,var(--color-surface));color:var(--color-brand-600)}.app-logo.teal{background:var(--color-accent-bg);color:var(--color-accent-strong)}.app-logo.blue{background:var(--color-tertiary-bg);color:var(--color-tertiary-strong)}.app-logo.lviolet{background:color-mix(in srgb,var(--color-tint-violet) 20%,var(--color-surface));color:var(--color-brand-600)}.card:has(>table)>.chart-head{padding:var(--space-4) var(--space-5) var(--space-2);margin-bottom:0}.impersonation-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;border:1px solid var(--color-warning-border);border-left:4px solid var(--color-warning);background:var(--color-warning-bg);color:var(--color-warning);border-radius:var(--radius-md);padding:.6rem var(--space-4);margin-bottom:var(--space-5);font-size:var(--text-sm);box-shadow:var(--shadow-low)}.impersonation-banner .imp-ro{color:inherit;opacity:.85;font-weight:600}.impersonation-banner .imp-exit{min-height:34px;padding:.35rem .8rem;border-radius:var(--radius-md);border:1px solid var(--color-warning);background:var(--color-surface);color:var(--color-warning);font-weight:700;font-size:var(--text-sm)}.impersonation-banner .imp-exit:hover{background:var(--color-warning);color:var(--color-surface)}.drawer-overlay{position:fixed;inset:0;z-index:100;background:color-mix(in srgb,var(--color-text) 42%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:flex-end;animation:drawer-fade var(--duration-fast) var(--ease-out)}@keyframes drawer-fade{0%{opacity:0}to{opacity:1}}.drawer{width:min(560px,100%);height:100%;display:flex;flex-direction:column;background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:var(--shadow-high);animation:drawer-in var(--duration-normal,.22s) var(--ease-out)}@keyframes drawer-in{0%{transform:translateX(24px);opacity:.6}to{transform:translateX(0);opacity:1}}.drawer-head{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.drawer-head h2{margin:0;font-size:var(--text-lg)}.drawer-head .who{margin-top:2px}.drawer-close{min-height:34px;width:34px;padding:0;flex:0 0 auto;border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:1.1rem;line-height:1}.drawer-close:hover{background:var(--color-surface-muted)}.drawer-body{flex:1 1;overflow-y:auto;padding:var(--space-4) var(--space-5) var(--space-8)}.drawer-section{margin-bottom:var(--space-6)}.drawer-section>h3{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-subtle)}.drawer-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4);flex-wrap:wrap}.drawer-tab{min-height:0;padding:.5rem .8rem;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--color-text-muted);font-weight:620;font-size:var(--text-sm);border-radius:0}.drawer-tab[aria-selected=true]{color:var(--color-accent-strong);border-bottom-color:var(--color-accent)}.drawer-tab:hover{color:var(--color-text);background:transparent;transform:none;box-shadow:none}.usage-meter{height:10px;border-radius:var(--radius-pill);background:var(--color-surface-muted);overflow:hidden;display:flex}.usage-meter .fill{background:var(--color-brand-500)}.usage-meter .fill.over{background:var(--color-danger)}.usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.usage-stat{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.usage-stat .n{font-size:var(--text-xl);font-weight:720;letter-spacing:-.02em}.usage-stat .l{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}tr.row-clickable{cursor:pointer}tr.row-clickable:hover td{background:var(--color-surface-muted)}tr.row-clickable:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:-2px}@media (max-width:640px){.drawer{width:100%;height:100%;border-left:0}}.mp-logo{display:inline-flex;width:var(--logo-width);max-width:100%;vertical-align:middle;line-height:0}.mp-logo img{display:block;width:100%;height:auto}.mp-logo .mp-logo-dark{display:none}.mp-logo[data-tone=mono] .mp-logo-dark{filter:brightness(0) invert(1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mp-logo-light{display:none}:root:not([data-theme=light]) .mp-logo-dark{display:block}}:root[data-theme=dark] .mp-logo-light{display:none}:root[data-theme=dark] .mp-logo-dark{display:block}