:root{background:var(--ml-color-canvas);color:var(--ml-color-text);font-family:var(--ml-font-sans);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background:var(--ml-color-canvas)}button,input{font-family:inherit}button{cursor:pointer;-webkit-user-select:none;user-select:none}:root{color-scheme:light;--ml-navy-50:#f1f5f8;--ml-navy-100:#e5edf2;--ml-navy-200:#cad8e2;--ml-navy-300:#a8bdcc;--ml-navy-400:#7a96a8;--ml-navy-500:#526f83;--ml-navy-600:#38566d;--ml-navy-700:#234056;--ml-navy-800:#142f43;--ml-navy-900:#0d1b2a;--ml-navy-950:#07131f;--ml-green-50:#eff9f3;--ml-green-100:#d9f1e2;--ml-green-200:#b5e4c6;--ml-green-300:#83d29f;--ml-green-400:#44b678;--ml-green-500:#309c64;--ml-green-600:#267c50;--ml-green-700:#205f40;--ml-green-800:#194a34;--ml-green-900:#133b2a;--ml-neutral-0:#fff;--ml-neutral-50:#f7f9f8;--ml-neutral-100:#eef2f0;--ml-neutral-200:#e1e7e4;--ml-neutral-300:#cbd4d0;--ml-neutral-500:#718079;--ml-neutral-700:#435149;--ml-neutral-900:#1b2821;--ml-danger-100:#faeeee;--ml-danger-600:#a34444;--ml-danger-700:#873838;--ml-color-brand:var(--ml-navy-900);--ml-color-accent:var(--ml-green-400);--ml-color-accent-strong:var(--ml-green-700);--ml-color-canvas:var(--ml-neutral-0);--ml-color-surface:var(--ml-neutral-0);--ml-color-surface-subtle:var(--ml-neutral-50);--ml-color-surface-raised:var(--ml-neutral-0);--ml-color-text:var(--ml-neutral-900);--ml-color-text-muted:var(--ml-neutral-500);--ml-color-border:var(--ml-neutral-200);--ml-color-focus:var(--ml-green-500);--ml-color-danger:var(--ml-danger-600);--ml-font-sans:"Inter","Segoe UI",Arial,sans-serif;--ml-font-mono:"SFMono-Regular",Consolas,monospace;--ml-radius-sm:4px;--ml-radius-control:6px;--ml-radius-panel:8px;--ml-shadow-menu:0 10px 28px rgb(13 27 42/14%)}.ml-button,.ml-icon-button{border:1px solid transparent;font:inherit;font-weight:600;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.ml-button{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:var(--ml-radius-control);white-space:nowrap}.ml-button--sm{min-height:34px;padding:0 11px;font-size:13px}.ml-button--md{min-height:42px;padding:0 15px;font-size:14px}.ml-button--lg{min-height:50px;padding:0 19px;font-size:15px}.ml-button--full{width:100%}.ml-button__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.ml-button__icon svg{width:17px;height:17px}.ml-button__label{overflow:hidden;text-overflow:ellipsis}.ml-button--primary{border-color:var(--ml-navy-900);background:var(--ml-navy-900);color:white}.ml-button--primary:hover:not(:disabled){border-color:var(--ml-navy-800);background:var(--ml-navy-800)}.ml-button--secondary{border-color:var(--ml-navy-200);background:var(--ml-neutral-0);color:var(--ml-navy-900)}.ml-button--secondary:hover:not(:disabled){border-color:var(--ml-navy-300);background:var(--ml-navy-50)}.ml-button--quiet{border-color:transparent;background:transparent;color:var(--ml-navy-800)}.ml-button--quiet:hover:not(:disabled){background:var(--ml-neutral-100)}.ml-button--danger{border-color:var(--ml-danger-600);background:var(--ml-danger-600);color:#fff}.ml-button--danger:hover:not(:disabled){border-color:var(--ml-danger-700);background:var(--ml-danger-700)}.ml-button:disabled,.ml-icon-button:disabled{opacity:.56;cursor:not-allowed}.ml-button:focus-visible,.ml-icon-button:focus-visible,.ml-menu__item:focus-visible{outline:3px solid color-mix(in srgb,var(--ml-color-focus) 42%,transparent);outline-offset:2px}.ml-icon-button{display:inline-grid;flex:0 0 auto;place-items:center;padding:0;border-radius:var(--ml-radius-control)}.ml-icon-button--sm{width:34px;height:34px}.ml-icon-button--md{width:40px;height:40px}.ml-icon-button--lg{width:48px;height:48px}.ml-icon-button svg{width:18px;height:18px}.ml-icon-button--control,.ml-icon-button--quiet{border-color:transparent;background:transparent;color:var(--ml-navy-800)}.ml-icon-button--quiet:hover:not(:disabled){background:var(--ml-neutral-100)}.ml-icon-button--secondary{border-color:var(--ml-navy-200);background:var(--ml-neutral-0);color:var(--ml-navy-800)}.ml-icon-button--secondary:hover:not(:disabled){background:var(--ml-navy-50)}.ml-icon-button--primary{border-color:var(--ml-navy-900);background:var(--ml-navy-900);color:#fff}.ml-icon-button--danger{border-color:var(--ml-danger-600);background:var(--ml-danger-600);color:#fff}.ml-icon-button--control{border-color:transparent;background:var(--ml-color-control-surface,var(--ml-navy-700));color:var(--ml-color-control-text,var(--ml-neutral-0))}.ml-icon-button--control:hover:not(:disabled){background:var(--ml-color-control-hover,var(--ml-navy-600))}.ml-icon-button--control[aria-pressed=false]{background:var(--ml-color-danger,var(--ml-danger-600));color:#fff}.ml-menu{position:relative;display:inline-flex}.ml-menu__items{position:absolute;z-index:50;top:calc(100% + 7px);min-width:210px;display:grid;gap:2px;padding:5px;border:1px solid var(--ml-color-border);border-radius:var(--ml-radius-panel);background:var(--ml-color-surface-raised);box-shadow:var(--ml-shadow-menu)}.ml-menu--end>.ml-menu__items{right:0}.ml-menu--start>.ml-menu__items{left:0}.ml-menu__item{min-height:38px;display:flex;align-items:center;gap:10px;padding:0 10px;border:0;border-radius:var(--ml-radius-sm);background:transparent;color:var(--ml-color-text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.ml-menu__item:hover:not(:disabled){background:var(--ml-neutral-100)}.ml-menu__item:disabled{opacity:.5;cursor:not-allowed}.ml-menu__item--danger{color:var(--ml-color-danger)}.ml-menu__icon{width:18px;display:inline-flex;align-items:center;justify-content:center;color:currentColor}.ml-menu__icon svg{width:16px;height:16px}.ml-split-button{display:inline-flex;align-items:stretch}.ml-split-button>.ml-button{border-top-right-radius:0;border-bottom-right-radius:0}.ml-split-button>.ml-menu>.ml-icon-button{width:38px;height:100%;border-radius:0 var(--ml-radius-control) var(--ml-radius-control) 0}.ml-split-button>.ml-menu{margin-left:-1px}.ml-split-button>.ml-menu>.ml-icon-button--primary{border-left-color:rgb(255 255 255/24%)}.ml-split-button>.ml-menu>.ml-icon-button{min-height:100%}.ml-spinner{width:15px;height:15px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:ml-spin .65s linear infinite}@keyframes ml-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ml-button,.ml-icon-button{transition:none}.ml-spinner{animation-duration:1.5s}}