:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#f1f3f6;--border:#e3e6eb;--text:#15181e;--text-2:#4b5260;--muted:#6b7280;--accent:#2f5bea;--accent-hover:#2449c8;--accent-text:#fff;--accent-soft:#e9efff;--success:#12805c;--success-soft:#e3f5ee;--warning:#a15c00;--warning-soft:#fff3df;--danger:#c4302b;--danger-soft:#fdecec;--info:#2f5bea;--info-soft:#e9efff;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--radius:10px;--radius-sm:7px;--sidebar-w:236px;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0e1116;--surface:#161a21;--surface-2:#1d222b;--border:#2a303b;--text:#e7eaf0;--text-2:#b4bac6;--muted:#8b93a3;--accent:#6d8dff;--accent-hover:#87a1ff;--accent-text:#0b0e14;--accent-soft:#1f2a4d;--success:#3ccf91;--success-soft:#11291f;--warning:#f2b44b;--warning-soft:#2e2412;--danger:#ff6b66;--danger-soft:#331618;--info:#6d8dff;--info-soft:#1f2a4d;--shadow:0 1px 2px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;line-height:1.25}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.mp-icon{flex:none;display:block}.mp-muted{color:var(--muted)}.mp-small{font-size:12px}.mp-mono{font-family:var(--mono);font-size:13px}.mp-nowrap{white-space:nowrap}.mp-break{word-break:break-all}.mp-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mp-stack{flex-direction:column;gap:16px;display:flex}.mp-spacer{flex:1}.mp-skip{background:var(--surface);z-index:100;padding:8px 12px;position:absolute;top:8px;left:-9999px}.mp-skip:focus{left:8px}.mp-shell{min-height:100vh;display:flex}.mp-sidebar{width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);z-index:30;flex:none;height:100vh;padding:16px 12px;position:sticky;top:0;overflow-y:auto}.mp-brand{align-items:center;gap:10px;padding:4px 8px 16px;display:flex}.mp-brand-center{justify-content:center;padding-bottom:8px}.mp-logo{background:var(--accent);width:32px;height:32px;color:var(--accent-text);border-radius:9px;place-items:center;font-size:16px;font-weight:800;display:grid}.mp-brand-name{font-size:15px;font-weight:700}.mp-brand-tag{color:var(--muted);max-width:160px;font-size:11px;line-height:1.3}.mp-nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.mp-nav-link{border-radius:var(--radius-sm);color:var(--text-2);align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}.mp-nav-link:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.mp-nav-active,.mp-nav-active:hover{background:var(--accent-soft);color:var(--accent)}.mp-main-col{flex-direction:column;flex:1;min-width:0;display:flex}.mp-topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:20;align-items:center;gap:8px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.mp-topbar-spacer{flex:1}.mp-topbar-search{flex:0 360px;min-width:0}.mp-topbar-search form{display:flex}.mp-topbar-search .mp-input{height:34px}@media (max-width:640px){.mp-topbar-search{flex-basis:160px}}.mp-menu-btn{display:none}.mp-user{border-left:1px solid var(--border);align-items:center;gap:8px;margin-left:4px;padding-left:8px;display:flex}.mp-user-text{flex-direction:column;align-items:flex-end;line-height:1.2;display:flex}.mp-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;font-weight:600;overflow:hidden}.mp-user-role{color:var(--muted);text-transform:capitalize;font-size:11px}.mp-content{width:100%;max-width:1280px;margin:0 auto;padding:24px}.mp-scrim{display:none}@media (max-width:900px){.mp-sidebar{box-shadow:var(--shadow);transition:transform .18s;position:fixed;top:0;left:0;transform:translate(-100%)}.mp-sidebar-open{transform:translate(0)}.mp-scrim{z-index:25;background:#00000059;display:block;position:fixed;inset:0}.mp-menu-btn{display:inline-flex}.mp-content{padding:16px}.mp-topbar{padding:0 12px}.mp-user-text{display:none}}.mp-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.mp-page-title{font-size:22px;font-weight:700}.mp-page-desc{color:var(--muted);margin:4px 0 0}.mp-page-actions{flex-wrap:wrap;gap:8px;display:flex}.mp-grid{gap:16px;display:grid}.mp-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.mp-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.mp-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1100px){.mp-grid-4,.mp-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.mp-grid-2,.mp-grid-3,.mp-grid-4{grid-template-columns:minmax(0,1fr)}}.mp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.mp-card-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.mp-card-title{font-size:15px;font-weight:600}.mp-card-actions{flex-wrap:wrap;gap:8px;display:flex}.mp-card-body{padding:16px}.mp-stat{flex-direction:column;gap:6px;display:flex}.mp-stat-label{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.mp-stat-value{font-size:24px;font-weight:700}.mp-stat-sub{color:var(--muted);font-size:12px}.mp-stat-link{color:inherit}.mp-stat-link:hover{border-color:var(--accent);text-decoration:none}.mp-usage{flex-direction:column;gap:6px;display:flex}.mp-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);height:34px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:600;display:inline-flex}.mp-btn:hover:not(:disabled){background:var(--surface-2)}.mp-btn:disabled{opacity:.55;cursor:not-allowed}.mp-btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.mp-btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.mp-btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.mp-btn-danger:hover:not(:disabled){filter:brightness(.95);background:var(--danger)}.mp-btn-ghost{background:0 0;border-color:#0000}.mp-btn-block{width:100%}.mp-icon-btn{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.mp-icon-btn:hover{background:var(--surface-2);color:var(--text)}.mp-badge{text-transform:capitalize;white-space:nowrap;border-radius:999px;align-items:center;padding:1px 8px;font-size:12px;font-weight:600;display:inline-flex}.mp-badge-plain{text-transform:none}.mp-badge-neutral{background:var(--surface-2);color:var(--text-2)}.mp-badge-success{background:var(--success-soft);color:var(--success)}.mp-badge-warning{background:var(--warning-soft);color:var(--warning)}.mp-badge-danger{background:var(--danger-soft);color:var(--danger)}.mp-badge-info{background:var(--info-soft);color:var(--info)}.mp-notice{border-radius:var(--radius-sm);border:1px solid;padding:10px 14px;font-size:13px}.mp-notice-info{background:var(--info-soft);color:var(--text);border-color:#0000}.mp-notice-success{background:var(--success-soft);color:var(--text);border-color:#0000}.mp-notice-warning{background:var(--warning-soft);color:var(--text);border-color:#0000}.mp-notice-danger{background:var(--danger-soft);color:var(--text);border-color:#0000}.mp-banner{text-align:center;border-left:0;border-right:0;border-radius:0;margin:0}.mp-state{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 16px;display:flex}.mp-state strong{color:var(--text);font-size:15px}.mp-state p{max-width:460px;margin:0}.mp-error{color:var(--danger)}.mp-spinner{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite mp-spin}.mp-spinner-sm{border-width:2px;width:14px;height:14px}@keyframes mp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.mp-spinner{animation-duration:2s}.mp-sidebar{transition:none}}.mp-progress{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.mp-progress-fill{border-radius:999px;width:0;height:100%;transition:width .3s}.mp-progress-success{background:var(--success)}.mp-progress-warning{background:var(--warning)}.mp-progress-danger{background:var(--danger)}.mp-progress-info,.mp-progress-neutral{background:var(--accent)}.mp-form{flex-direction:column;gap:14px;display:flex}.mp-field{flex-direction:column;gap:5px;min-width:0;display:flex}.mp-field label{font-size:13px;font-weight:600}.mp-input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);height:36px;color:var(--text);font:inherit;width:100%;padding:0 10px}textarea.mp-input{resize:vertical;height:auto;min-height:96px;padding:8px 10px}.mp-input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.mp-field-invalid .mp-input{border-color:var(--danger)}.mp-field-error{color:var(--danger);font-size:12px}.mp-field-hint{color:var(--muted);font-size:12px}.mp-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (max-width:640px){.mp-form-row{grid-template-columns:minmax(0,1fr)}}.mp-copy{gap:8px;display:flex}.mp-checkbox{align-items:center;gap:8px;font-weight:500;display:flex}.mp-checkbox input{flex:none;margin:0}.mp-fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:10px;min-width:0;margin:0;padding:10px 12px 12px;display:flex}.mp-fieldset legend{padding:0 4px;font-size:13px;font-weight:600}.mp-history{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mp-history>li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr);gap:2px;padding:10px 0;display:grid}.mp-history>li:last-child{border-bottom:0}.mp-history-head{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.mp-history-changes{color:var(--text-2);margin:2px 0 0;padding-left:18px;font-size:13px}.mp-plain-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.mp-search{flex:240px;width:auto}.mp-steps{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.mp-steps li{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:12px}.mp-steps li.mp-step-done{color:var(--text);border-color:var(--accent);background:var(--surface-2)}.mp-code{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.mp-pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--mono);margin:0;font-size:12px}.mp-link-btn{font:inherit;color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.mp-link-btn:hover{text-decoration:underline}.mp-thread{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.mp-msg{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);max-width:92%;padding:10px 12px}.mp-msg-self{background:var(--surface);align-self:flex-end}.mp-msg-meta{color:var(--muted);margin-bottom:4px;font-size:12px}.mp-msg-body{white-space:pre-wrap;overflow-wrap:anywhere}.mp-table-wrap{margin:-16px;overflow-x:auto}.mp-table{border-collapse:collapse;width:100%}.mp-table th,.mp-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 16px}.mp-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;background:var(--surface-2);font-size:12px;font-weight:600}.mp-table tr:last-child td{border-bottom:0}.mp-table td.mp-actions{text-align:right;white-space:nowrap}.mp-kv{grid-template-columns:minmax(120px,max-content) 1fr;gap:8px 16px;margin:0;display:grid}.mp-kv>div{display:contents}.mp-kv dt{color:var(--muted)}.mp-kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.mp-modal{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:min(520px,100vw - 32px);color:var(--text);padding:0;box-shadow:0 20px 50px #00000040}.mp-modal::backdrop{background:#00000073}.mp-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.mp-modal-header h2{font-size:16px}.mp-modal-body{flex-direction:column;gap:12px;padding:16px;display:flex}.mp-modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.mp-auth{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.mp-auth-top{position:fixed;top:12px;right:12px}.mp-auth-card{background:var(--surface);border:1px solid var(--border);width:min(420px,100%);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:18px;padding:28px 24px;display:flex}.mp-auth-title{text-align:center;font-size:20px}.mp-auth-footer{text-align:center;color:var(--muted);font-size:13px}.mp-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.mp-tab{color:var(--text-2);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px;font-weight:600}.mp-tab[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.mp-crumbs{font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;display:flex}.mp-crumbs button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:2px 4px}.mp-file-name{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.mp-sparkline{width:100%;height:48px;display:block}.mp-sparkline path{fill:none;stroke:var(--accent);stroke-width:1.5px}.mp-sparkline .mp-sparkline-area{fill:var(--accent-soft);stroke:none}
