:root{--mx-surface-0:#fff;--mx-surface-1:#f8fafc;--mx-surface-2:#eef4f7;--mx-surface-3:#e2e8f0;--mx-page-bg:#f4f6fa;--mx-border-subtle:#eef0f4;--mx-border:#d8e0ea;--mx-border-strong:#c8d3df;--mx-text-primary:#0f1f33;--mx-text-secondary:#475569;--mx-text-muted:#66758a;--mx-text-soft:#94a3b8;--mx-text-inverse:#fff;--mx-brand:#17324d;--mx-brand-hover:#1e4569;--mx-accent:#0f766e;--mx-accent-soft:#e7f5f3;--mx-accent-border:#9fcec7;--mx-accent-strong:#0f5f59;--mx-success:#047857;--mx-success-bg:#e7f5f3;--mx-success-border:#9fcec7;--mx-success-text:#0f5f59;--mx-warn:#b45309;--mx-warn-bg:#fbf2d7;--mx-warn-border:#d7c58c;--mx-warn-text:#705a0f;--mx-danger:#b91c1c;--mx-danger-bg:#fdecec;--mx-danger-border:#f1a3a3;--mx-danger-text:#9b1c1c;--mx-info:#0369a1;--mx-info-bg:#e6f1fa;--mx-info-border:#b6d4e9;--mx-info-text:#075280;--mx-space-1:4px;--mx-space-2:8px;--mx-space-3:12px;--mx-space-4:16px;--mx-space-5:20px;--mx-space-6:24px;--mx-space-8:32px;--mx-space-10:40px;--mx-space-12:48px;--mx-radius-xs:4px;--mx-radius-sm:6px;--mx-radius-md:8px;--mx-radius-lg:12px;--mx-radius-xl:16px;--mx-radius-full:999px;--mx-font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--mx-font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--mx-text-2xs:11px;--mx-text-xs:12px;--mx-text-sm:13px;--mx-text-base:14px;--mx-text-md:16px;--mx-text-lg:18px;--mx-text-xl:22px;--mx-text-2xl:28px;--mx-leading-tight:1.2;--mx-leading-snug:1.4;--mx-leading-normal:1.55;--mx-leading-relaxed:1.7;--mx-tracking-eyebrow:.08em;--mx-tracking-tight:-.01em;--mx-shadow-xs:0 1px 1px #0f23370a;--mx-shadow-sm:0 1px 2px #0f23370f, 0 1px 1px #0f23370a;--mx-shadow-md:0 4px 12px #0f233714, 0 2px 4px #0f23370a;--mx-shadow-lg:0 16px 40px #0f23372e;--mx-ring-focus:0 0 0 2px var(--mx-accent);--mx-ease-out:cubic-bezier(.2, .8, .2, 1);--mx-duration-fast:.12s;--mx-duration-base:.18s;--mx-duration-slow:.28s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.mx-status-dot{border-radius:var(--mx-radius-full);background:var(--mx-text-soft);flex-shrink:0;width:8px;height:8px;display:inline-block}.mx-status-dot[data-state=success]{background:var(--mx-success);box-shadow:0 0 0 3px #04785729}.mx-status-dot[data-state=error]{background:var(--mx-danger);box-shadow:0 0 0 3px #b91c1c29}.mx-status-dot[data-state=pending]{background:var(--mx-warn);animation:mx-pulse 1.4s var(--mx-ease-out) infinite;box-shadow:0 0 0 3px #b4530929}@keyframes mx-pulse{0%,to{opacity:1}50%{opacity:.55}}.mx-eyebrow{align-items:center;gap:var(--mx-space-1);margin:0 0 var(--mx-space-1);color:var(--mx-accent-strong);font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;font-weight:700;display:inline-flex}.mx-mono{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);color:var(--mx-text-secondary)}.mx-tabular{font-variant-numeric:tabular-nums}.mx-card{background:var(--mx-surface-0);border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg)}.mx-card--elev{box-shadow:var(--mx-shadow-sm)}.mx-card--inset{background:var(--mx-surface-1);border-color:var(--mx-border-subtle)}.mx-kv{flex-direction:column;gap:2px;min-width:0;display:inline-flex}.mx-kv>.mx-kv-label{font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;color:var(--mx-text-muted);font-weight:700}.mx-kv>.mx-kv-value{font-size:var(--mx-text-sm);color:var(--mx-text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.mx-kv>.mx-kv-value.mx-mono{font-weight:500;font-size:var(--mx-text-xs)}.mx-stat-row{padding:var(--mx-space-3) var(--mx-space-4);background:var(--mx-surface-1);border:1px solid var(--mx-border-subtle);border-radius:var(--mx-radius-md);flex-wrap:wrap;align-items:stretch;gap:0;display:flex}.mx-stat-row>*{padding:0 var(--mx-space-4);border-right:1px solid var(--mx-border-subtle);align-items:center;display:flex}.mx-stat-row>:first-child{padding-left:0}.mx-stat-row>:last-child{border-right:0;padding-right:0}.mx-pill{align-items:center;gap:var(--mx-space-1);padding:3px var(--mx-space-2);border-radius:var(--mx-radius-xs);background:var(--mx-surface-2);border:1px solid var(--mx-border);color:var(--mx-text-secondary);font-size:var(--mx-text-2xs);letter-spacing:.02em;text-transform:none;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.4;display:inline-flex}.mx-pill--success{background:var(--mx-success-bg);border-color:var(--mx-success-border);color:var(--mx-success-text)}.mx-pill--warn{background:var(--mx-warn-bg);border-color:var(--mx-warn-border);color:var(--mx-warn-text)}.mx-pill--danger{background:var(--mx-danger-bg);border-color:var(--mx-danger-border);color:var(--mx-danger-text)}.mx-pill--info{background:var(--mx-info-bg);border-color:var(--mx-info-border);color:var(--mx-info-text)}.mx-pill--brand{background:var(--mx-brand);border-color:var(--mx-brand);color:var(--mx-text-inverse)}.mx-pill--mono{font-family:var(--mx-font-mono);font-weight:500}.mx-btn{justify-content:center;align-items:center;gap:var(--mx-space-2);height:36px;padding:0 var(--mx-space-4);border-radius:var(--mx-radius-md);background:var(--mx-brand);color:var(--mx-text-inverse);font-family:inherit;font-size:var(--mx-text-sm);letter-spacing:.01em;cursor:pointer;transition:background var(--mx-duration-fast) var(--mx-ease-out), border-color var(--mx-duration-fast) var(--mx-ease-out), color var(--mx-duration-fast) var(--mx-ease-out), box-shadow var(--mx-duration-fast) var(--mx-ease-out);border:1px solid #0000;font-weight:600;display:inline-flex}.mx-btn:hover:not(:disabled){background:var(--mx-brand-hover)}.mx-btn:disabled{opacity:.5;cursor:not-allowed}.mx-btn:focus-visible{box-shadow:var(--mx-ring-focus);outline:none}.mx-btn--ghost{background:var(--mx-surface-0);color:var(--mx-text-primary);border-color:var(--mx-border-strong)}.mx-btn--ghost:hover:not(:disabled){background:var(--mx-surface-2)}.mx-btn--danger{background:var(--mx-surface-0);color:var(--mx-danger-text);border-color:var(--mx-danger-border)}.mx-btn--danger:hover:not(:disabled){background:var(--mx-danger-bg)}.mx-btn--sm{height:28px;padding:0 var(--mx-space-3);font-size:var(--mx-text-xs);border-radius:var(--mx-radius-sm)}.mx-btn--icon{width:32px;padding:0}.mx-compare{gap:var(--mx-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mx-compare__pane{background:var(--mx-surface-1);border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg);aspect-ratio:1;position:relative;overflow:hidden}.mx-compare__pane img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.mx-compare__pane[data-tone=dark]{background:#1f2937}.mx-compare__label{top:var(--mx-space-3);left:var(--mx-space-3);z-index:2;padding:4px var(--mx-space-2);border-radius:var(--mx-radius-xs);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--mx-text-inverse);font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;background:#0f1f33c7;font-weight:700;position:absolute}.mx-compare__menu{top:var(--mx-space-3);right:var(--mx-space-3);z-index:2;gap:var(--mx-space-1);display:flex;position:absolute}.mx-compare__placeholder{place-items:center;gap:var(--mx-space-2);color:var(--mx-text-muted);font-size:var(--mx-text-sm);display:grid;position:absolute;inset:0}.mx-compare__placeholder--pending{background:linear-gradient(90deg, var(--mx-surface-1) 0%, var(--mx-surface-2) 50%, var(--mx-surface-1) 100%);background-size:200% 100%;animation:1.6s linear infinite mx-shimmer}@keyframes mx-shimmer{to{background-position:-200% 0}}.mx-compare__sidecar{right:var(--mx-space-3);bottom:var(--mx-space-3);z-index:2;border-radius:var(--mx-radius-sm);border:2px solid var(--mx-surface-0);width:80px;height:80px;box-shadow:var(--mx-shadow-md);background:#1f2937;position:absolute;overflow:hidden}.mx-compare__sidecar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.mx-compare__sidecar-label{border-radius:var(--mx-radius-xs);color:var(--mx-text-inverse);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;background:#0f1f33c7;padding:2px 6px;font-size:9px;font-weight:700;position:absolute;top:4px;left:4px}.mx-section-head{justify-content:space-between;align-items:center;gap:var(--mx-space-3);margin-bottom:var(--mx-space-3);display:flex}.mx-section-head h2{font-size:var(--mx-text-md);margin:0;font-weight:700}.mx-section-head .mx-section-aside{align-items:center;gap:var(--mx-space-2);color:var(--mx-text-muted);font-size:var(--mx-text-xs);display:inline-flex}.mx-compare-tray{top:var(--mx-space-2);z-index:5;justify-content:space-between;align-items:center;gap:var(--mx-space-4);padding:var(--mx-space-3) var(--mx-space-4);background:var(--mx-brand);color:var(--mx-text-inverse);border-radius:var(--mx-radius-md);box-shadow:var(--mx-shadow-md);display:flex;position:sticky}.mx-compare-tray__count{font-size:var(--mx-text-sm);font-weight:700}.mx-compare-tray__count em{color:var(--mx-accent-soft);font-style:normal}.mx-compare-tray__actions{gap:var(--mx-space-2);display:inline-flex}.mx-compare-tray .mx-btn--ghost{color:var(--mx-text-inverse);background:0 0;border-color:#ffffff52}.mx-compare-tray .mx-btn--ghost:hover:not(:disabled){background:#ffffff1f}nav a.active,nav a[aria-current=page]{background:var(--mx-surface-2);color:var(--mx-brand);border-left-color:var(--mx-accent);padding-left:10px}.mx-page-hero{justify-content:space-between;align-items:flex-end;gap:var(--mx-space-4);padding-bottom:var(--mx-space-4);border-bottom:1px solid var(--mx-border-subtle);display:flex}.mx-page-hero h1{font-size:var(--mx-text-2xl);letter-spacing:var(--mx-tracking-tight);line-height:var(--mx-leading-tight);margin:0}.mx-page-hero__lede{margin:var(--mx-space-1) 0 0;color:var(--mx-text-muted);font-size:var(--mx-text-sm);max-width:60ch}.mx-page-hero__actions{align-items:center;gap:var(--mx-space-2);flex-shrink:0;display:inline-flex}.mx-row-check{border-radius:var(--mx-radius-xs);border:1.5px solid var(--mx-border-strong);background:var(--mx-surface-0);cursor:pointer;width:18px;height:18px;transition:border-color var(--mx-duration-fast), background var(--mx-duration-fast);justify-content:center;align-items:center;display:inline-flex}.mx-row-check[aria-checked=true]{background:var(--mx-brand);border-color:var(--mx-brand);color:var(--mx-text-inverse)}.mx-row-check[aria-checked=true]:after{content:"";border-left:2px solid var(--mx-text-inverse);border-bottom:2px solid var(--mx-text-inverse);width:9px;height:5px;transform:rotate(-45deg)translate(1px,-2px)}.mx-icon-btn{border-radius:var(--mx-radius-sm);width:26px;height:26px;color:var(--mx-text-primary);cursor:pointer;transition:background var(--mx-duration-fast);background:#ffffffd9;border:1px solid #0000;place-items:center;display:inline-grid}.mx-icon-btn:hover{background:var(--mx-surface-0);border-color:var(--mx-border)}.mx-icon-btn svg{width:14px;height:14px}.mx-empty{place-items:center;gap:var(--mx-space-2);padding:var(--mx-space-8) var(--mx-space-4);text-align:center;border:1px dashed var(--mx-border);border-radius:var(--mx-radius-md);background:var(--mx-surface-1);color:var(--mx-text-muted);font-size:var(--mx-text-sm);display:grid}.mx-empty strong{color:var(--mx-text-secondary);font-size:var(--mx-text-sm);font-weight:700}.field__label-row{justify-content:space-between;align-items:center;gap:var(--mx-space-2);display:flex}.globals-body-row td{background:var(--mx-surface-1);padding-top:0;border-top:0!important}.globals-body-preview>summary{cursor:pointer;padding:var(--mx-space-2) 0;align-items:baseline;gap:var(--mx-space-2);font-size:var(--mx-text-xs);color:var(--mx-text-secondary);letter-spacing:.02em;font-weight:700;list-style:none;display:flex}.globals-body-preview>summary::-webkit-details-marker{display:none}.globals-body-preview>summary:before{content:"▸";color:var(--mx-text-soft);width:12px;transition:transform var(--mx-duration-fast);font-size:10px;display:inline-block}.globals-body-preview[open]>summary:before{transform:rotate(90deg)}.globals-body-preview>summary>.muted-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:400;overflow:hidden}.globals-body-preview[open]>summary>.muted-text{display:none}.globals-body-preview textarea.code-area{margin-top:var(--mx-space-2)}tbody tr.mx-row-interactive{transition:background var(--mx-duration-fast)}tbody tr.mx-row-interactive:hover{background:var(--mx-surface-1)}tbody tr[data-selected=true]{box-shadow:inset 2px 0 0 var(--mx-accent);background:#0f766e0f}.catalog-table-dense{table-layout:fixed;border-collapse:collapse;width:100%}.catalog-table-dense th,.catalog-table-dense td{padding:var(--mx-space-3) var(--mx-space-5);vertical-align:top;font-size:var(--mx-text-sm)}.catalog-table-dense td .mx-mono,.catalog-table-dense td code{overflow-wrap:anywhere}.catalog-table-dense tbody tr:last-child td{border-bottom:0}.case-cell{background:var(--mx-surface-1);border-right:1px solid var(--mx-border-subtle)}.case-cell--cont{padding-top:0;padding-bottom:0;border-top:0!important}.catalog-table-dense tbody tr[data-case-first=false] td{border-top:0}.catalog-table-dense tbody tr[data-case-first=true]+tr td{border-top:1px solid var(--mx-border-subtle)}.catalog-table-dense tbody tr[data-case-first=true]:not(:first-child) td{border-top:1px solid var(--mx-border)}.case-cell__title{margin-bottom:var(--mx-space-2);flex-direction:column;gap:2px;display:flex}.case-cell__title strong{font-size:var(--mx-text-base);color:var(--mx-text-primary);letter-spacing:-.005em;font-weight:700}.case-cell__title .mx-mono{font-size:var(--mx-text-2xs);color:var(--mx-text-muted);letter-spacing:.04em;text-transform:uppercase}.audience-summary{align-items:center;gap:var(--mx-space-2);font-size:var(--mx-text-xs);margin-top:var(--mx-space-1);white-space:nowrap;display:flex}.audience-summary__value{align-items:baseline;gap:var(--mx-space-1);color:var(--mx-text-secondary);font-variant-numeric:tabular-nums;font-weight:600;display:inline-flex}.audience-summary__divider{color:var(--mx-text-soft);margin:0 4px}.audience-summary__edit{color:var(--mx-accent);font-size:var(--mx-text-xs);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;flex-shrink:0;min-height:0;margin-left:auto;padding:0;font-weight:600;text-decoration:underline}.audience-summary__edit:hover{color:var(--mx-accent-strong)}.variant-cell{align-items:center;gap:var(--mx-space-2);font-size:var(--mx-text-sm);flex-wrap:wrap;display:flex}.variant-cell__label{color:var(--mx-text-primary);font-weight:600}.variant-cell .mx-mono{font-size:var(--mx-text-2xs);color:var(--mx-text-muted);letter-spacing:.04em;text-transform:uppercase}.variant-cell__audience-link{color:var(--mx-accent);font-size:var(--mx-text-xs);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;min-height:0;margin-left:auto;padding:0;font-weight:600;text-decoration:underline}.variant-cell__audience-link:hover{color:var(--mx-accent-strong)}.version-state{gap:var(--mx-space-1);flex-direction:column;display:flex}.version-state__line{gap:var(--mx-space-1);flex-wrap:wrap;display:flex}.version-state__validation{font-size:var(--mx-text-2xs);color:var(--mx-text-muted);letter-spacing:.02em}.version-state__validation strong{color:var(--mx-text-secondary);font-weight:700}.latest-run-cell{font-size:var(--mx-text-xs);white-space:nowrap;flex-direction:column;gap:4px;display:flex}.latest-run-cell__line{align-items:center;gap:var(--mx-space-2);min-width:0;display:inline-flex}.latest-run-cell__label{font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;color:var(--mx-text-muted);flex-shrink:0;width:28px;font-weight:700}.latest-run-cell__date{color:var(--mx-text-secondary);font-size:var(--mx-text-xs);flex-shrink:0}.catalog-actions{gap:var(--mx-space-1);grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.catalog-actions__btn{width:100%;font-size:var(--mx-text-2xs);letter-spacing:.02em;padding-left:0;padding-right:0;text-decoration:none}.catalog-actions__slot{display:inline-block}:root{color:var(--mx-text-primary);background:var(--mx-page-bg);font-family:var(--mx-font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,select{font:inherit}.app-shell{background:var(--mx-page-bg);grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{gap:var(--mx-space-6);padding:var(--mx-space-6) var(--mx-space-4);border-right:1px solid var(--mx-border);background:var(--mx-surface-0);flex-direction:column;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{border-radius:var(--mx-radius-md);background:var(--mx-brand);background-image:linear-gradient(135deg, var(--mx-brand) 0%, var(--mx-brand-hover) 100%);width:38px;height:38px;color:var(--mx-text-inverse);font-size:var(--mx-text-sm);letter-spacing:.02em;box-shadow:var(--mx-shadow-sm);place-items:center;font-weight:800;display:grid}.brand strong,.brand span{display:block}.brand strong{font-size:var(--mx-text-sm);color:var(--mx-text-primary);letter-spacing:-.005em}.brand span{color:var(--mx-text-muted);font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;margin-top:2px;font-weight:700}nav{gap:6px;display:grid}nav a{align-items:center;gap:var(--mx-space-3);padding:var(--mx-space-2) var(--mx-space-3);border-radius:var(--mx-radius-md);color:var(--mx-text-secondary);font-size:var(--mx-text-sm);transition:background var(--mx-duration-fast) var(--mx-ease-out), color var(--mx-duration-fast) var(--mx-ease-out);border-left:2px solid #0000;font-weight:600;text-decoration:none;display:flex;position:relative}nav a svg{color:var(--mx-text-soft);transition:color var(--mx-duration-fast) var(--mx-ease-out);flex-shrink:0}nav a:hover{background:var(--mx-surface-2);color:var(--mx-brand)}nav a:hover svg{color:var(--mx-text-secondary)}nav a.active svg,nav a[aria-current=page] svg{color:var(--mx-accent)}.main-panel{min-width:0;padding:var(--mx-space-8) var(--mx-space-8) var(--mx-space-10)}.page{gap:var(--mx-space-6);display:grid}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--mx-space-4);padding-bottom:var(--mx-space-3);border-bottom:1px solid var(--mx-border-subtle);display:flex}.eyebrow{margin:0 0 var(--mx-space-1);color:var(--mx-accent);font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;font-weight:700}h1,h2{letter-spacing:0;margin:0}h1{font-size:var(--mx-text-2xl);line-height:var(--mx-leading-tight);letter-spacing:var(--mx-tracking-tight);font-weight:700}h2{font-size:var(--mx-text-md);font-weight:700}.status-pill{color:#0f5f59;font-size:var(--mx-text-xs);background:#e7f5f3;border:1px solid #9fcec7;border-radius:999px;flex:none;padding:6px 10px;font-weight:700}.status-pill.muted{color:#705a0f;background:#fbf2d7;border-color:#d7c58c}.table-wrap,.panel{border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg);background:var(--mx-surface-0);box-shadow:var(--mx-shadow-sm)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:640px}th,td{padding:var(--mx-space-3) var(--mx-space-4);border-bottom:1px solid var(--mx-border-subtle);text-align:left;font-size:var(--mx-text-sm);vertical-align:middle}th{color:var(--mx-text-muted);font-size:var(--mx-text-2xs);letter-spacing:var(--mx-tracking-eyebrow);text-transform:uppercase;background:var(--mx-surface-1);font-weight:700}tbody tr:last-child td{border-bottom:0}.split-grid{grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:20px;display:grid}.panel{gap:var(--mx-space-4);padding:var(--mx-space-5);display:grid}label{gap:var(--mx-space-1);color:var(--mx-text-primary);font-size:var(--mx-text-sm);font-weight:600;display:grid}label .hint{font-size:var(--mx-text-xs);color:var(--mx-text-muted);font-weight:500}select{color:#17202a;background:#fff;border:1px solid #c8d3df;border-radius:8px;width:100%;min-height:40px;padding:0 10px}button{color:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:0;margin:0}button:disabled{cursor:not-allowed}.result-panel{min-height:280px}.empty-state{color:#66758a;min-height:220px;font-size:var(--mx-text-base);text-align:center;border:1px dashed #b9c5d2;border-radius:8px;place-items:center;display:grid}.user-menu{margin-top:auto;position:relative}.user-menu-trigger{color:#17324d;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:32px minmax(0,1fr) 14px;align-items:center;gap:10px;width:100%;min-height:0;padding:8px 10px;display:grid}.user-menu-trigger:hover,.user-menu-trigger.open{background:#eef4f7;border-color:#d8e0ea}.user-menu-trigger .avatar{color:#fff;width:32px;height:32px;font-size:var(--mx-text-2xs);letter-spacing:.4px;background:#17324d;border-radius:50%;place-items:center;font-weight:700;display:grid}.user-menu-trigger .who{min-width:0;display:grid}.user-menu-trigger .who strong{font-size:var(--mx-text-sm);color:#17324d;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-menu-trigger .who span{font-size:var(--mx-text-2xs);color:#66758a;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-menu-trigger .chevron{color:#9aa8b8;font-size:var(--mx-text-xs);transition:transform .15s;transform:rotate(180deg)}.user-menu-trigger.open .chevron{transform:rotate(0)}.user-menu-dropdown{z-index:10;background:#fff;border:1px solid #d8e0ea;border-radius:8px;padding:4px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;right:0;box-shadow:0 8px 24px #0f23371f}.user-menu-dropdown button{color:#17324d;text-align:left;font-weight:600;font-size:var(--mx-text-sm);background:0 0;border-radius:6px;min-height:0;padding:8px 10px}.user-menu-dropdown button:hover{background:#eef4f7}.user-menu-dropdown button.danger{color:#b91c1c}.user-menu-dropdown button.danger:hover{background:#fdecec}.loading-shell{color:#66758a;min-height:100vh;font-size:var(--mx-text-base);place-items:center;display:grid}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #d8e0ea;border-radius:12px;gap:20px;width:100%;max-width:380px;padding:28px;display:grid}.login-card header h1{font-size:var(--mx-text-xl)}.tab-row{background:#eef4f7;border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;padding:4px;display:grid}.tab{color:#66758a;background:0 0;border-radius:6px;min-height:36px;font-weight:600}.tab.active{color:#17324d;background:#fff;box-shadow:0 1px 2px #17324d1f}.login-form{gap:12px;display:grid}.login-form input{color:#17202a;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #c8d3df;border-radius:8px;padding:0 10px}.muted-text{color:#66758a;font-size:var(--mx-text-sm);margin:0}.error-text{color:#b91c1c;font-size:var(--mx-text-sm);margin:0}.ok-text{color:#0f766e;font-size:var(--mx-text-sm);margin:0}.profile-identity{align-items:center;gap:var(--mx-space-4);padding:var(--mx-space-4) var(--mx-space-5);background:var(--mx-surface-0);border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg);box-shadow:var(--mx-shadow-sm);display:flex}.profile-identity__avatar{background:var(--mx-brand);background-image:linear-gradient(135deg, var(--mx-brand) 0%, var(--mx-brand-hover) 100%);width:56px;height:56px;color:var(--mx-text-inverse);font-size:var(--mx-text-md);letter-spacing:.02em;box-shadow:var(--mx-shadow-sm);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.profile-identity__meta{gap:2px;min-width:0;display:grid}.profile-identity__meta strong{font-size:var(--mx-text-md);color:var(--mx-text-primary);font-weight:700}.profile-identity__meta .mx-mono{font-size:var(--mx-text-xs);color:var(--mx-text-muted)}.profile-grid{gap:var(--mx-space-5);grid-template-columns:repeat(auto-fit,minmax(360px,1fr));display:grid}.profile-card{gap:var(--mx-space-4);padding:var(--mx-space-5);background:var(--mx-surface-0);border:1px solid var(--mx-border);border-radius:var(--mx-radius-lg);box-shadow:var(--mx-shadow-sm);align-content:start;display:grid}.profile-card__head{padding-bottom:var(--mx-space-3);border-bottom:1px solid var(--mx-border-subtle);gap:2px;display:grid}.profile-card__head h2{font-size:var(--mx-text-md);margin:0;font-weight:700}.profile-form{gap:var(--mx-space-3);display:grid}.profile-form__actions{justify-content:flex-end;gap:var(--mx-space-2);margin-top:var(--mx-space-1);display:flex}.profile-status{padding:var(--mx-space-2) var(--mx-space-3);border-radius:var(--mx-radius-sm);font-size:var(--mx-text-sm);margin:0;font-weight:600}.profile-status--ok{background:var(--mx-success-bg);color:var(--mx-success-text);border:1px solid var(--mx-success-border)}.profile-status--err{background:var(--mx-danger-bg);color:var(--mx-danger-text);border:1px solid var(--mx-danger-border)}input:disabled{color:#66758a;cursor:not-allowed;background:#f0f4f8}.page-actions{align-items:center;gap:8px;display:flex}.ghost-button{min-height:36px;padding:0 var(--mx-space-4);background:var(--mx-surface-0);color:var(--mx-text-primary);border:1px solid var(--mx-border-strong);border-radius:var(--mx-radius-md);font-size:var(--mx-text-sm);cursor:pointer;transition:background var(--mx-duration-fast) var(--mx-ease-out), border-color var(--mx-duration-fast) var(--mx-ease-out);justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.ghost-button:hover:not(:disabled){background:var(--mx-surface-2);border-color:var(--mx-border)}.ghost-button:focus-visible,.primary-button:focus-visible,.danger-button:focus-visible,nav a:focus-visible,.user-menu-trigger:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--mx-accent);outline-offset:2px}.primary-button{min-height:36px;padding:0 var(--mx-space-5);background:var(--mx-brand);color:var(--mx-text-inverse);font-weight:700;font-size:var(--mx-text-sm);border-radius:var(--mx-radius-md);cursor:pointer;transition:background var(--mx-duration-fast) var(--mx-ease-out);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.primary-button:hover:not(:disabled){background:var(--mx-brand-hover)}.primary-button:disabled,.ghost-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.55}.danger-button{min-height:36px;padding:0 var(--mx-space-4);background:var(--mx-surface-0);color:var(--mx-danger-text);border:1px solid var(--mx-danger-border);border-radius:var(--mx-radius-md);font-weight:600;font-size:var(--mx-text-sm);cursor:pointer;transition:background var(--mx-duration-fast) var(--mx-ease-out);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.danger-button:hover:not(:disabled){background:var(--mx-danger-bg)}.badge{align-items:center;gap:var(--mx-space-1);padding:2px var(--mx-space-2);border-radius:var(--mx-radius-xs);font-size:var(--mx-text-2xs);letter-spacing:.04em;text-transform:uppercase;font-variant-numeric:tabular-nums;border:1px solid #0000;font-weight:700;line-height:1.4;display:inline-flex}.badge-ok{background:var(--mx-success-bg);color:var(--mx-success-text);border-color:var(--mx-success-border)}.badge-warn{background:var(--mx-warn-bg);color:var(--mx-warn-text);border-color:var(--mx-warn-border)}.badge-bad{background:var(--mx-danger-bg);color:var(--mx-danger-text);border-color:var(--mx-danger-border)}.badge-muted{background:var(--mx-surface-2);color:var(--mx-text-secondary);border-color:var(--mx-border)}.filter-bar{gap:var(--mx-space-2);padding:var(--mx-space-3) var(--mx-space-4);background:var(--mx-surface-0);border:1px solid var(--mx-border);border-radius:var(--mx-radius-md);margin-bottom:var(--mx-space-3);box-shadow:var(--mx-shadow-xs);flex-wrap:wrap;align-items:center;display:flex}.filter-input{min-width:200px;min-height:32px;padding:0 var(--mx-space-3);border:1px solid var(--mx-border-strong);border-radius:var(--mx-radius-sm);font-size:var(--mx-text-sm);background:var(--mx-surface-0);flex:240px}.filter-select{width:auto;min-width:140px;min-height:32px;padding:0 var(--mx-space-3);border:1px solid var(--mx-border-strong);border-radius:var(--mx-radius-sm);background:var(--mx-surface-0);font-size:var(--mx-text-sm);color:var(--mx-text-primary)}.latest-run-cell{font-size:var(--mx-text-xs);flex-direction:column;gap:2px;display:flex}.pagination{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.audit-target-cell{font-size:var(--mx-text-xs);flex-direction:column;gap:2px;display:flex}.audit-metadata{font-family:var(--mx-font-mono);font-size:var(--mx-text-2xs);white-space:pre-wrap;word-break:break-word;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;max-height:280px;margin:8px 0 0;padding:8px;overflow:auto}.run-thumb{object-fit:cover;border:1px solid var(--mx-border);border-radius:var(--mx-radius-sm);background:var(--mx-surface-0);width:56px;height:56px;transition:transform var(--mx-duration-fast) var(--mx-ease-out), box-shadow var(--mx-duration-fast) var(--mx-ease-out);display:block}.run-thumb-link:hover .run-thumb{box-shadow:var(--mx-shadow-md);transform:scale(1.04)}.run-thumb-link{line-height:0;display:inline-block}.upload-field-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.upload-field-actions{gap:6px;display:flex}.small-callout{font-size:var(--mx-text-xs);margin-top:-4px;padding:6px 10px}.r2-picker-dialog{flex-direction:column;width:min(960px,92vw);max-height:84vh;display:flex}.r2-picker-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.r2-picker-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:12px;padding-right:4px;display:grid;overflow-y:auto}.r2-picker-tile{cursor:pointer;text-align:left;background:#fff;border:1px solid #cbd5e1;border-radius:6px;flex-direction:column;align-items:stretch;gap:4px;padding:6px;display:flex}.r2-picker-tile:hover{border-color:#2563eb}.r2-picker-tile-selected{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.r2-picker-thumb{aspect-ratio:1;object-fit:cover;background:#fff;border-radius:4px;width:100%}.r2-picker-meta{font-size:var(--mx-text-2xs);color:#475569;font-family:var(--mx-font-mono)}.audience-chip-row{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.audience-chip-divider{color:#94a3b8;margin:0 2px}.audience-chip{font-size:var(--mx-text-2xs);color:#94a3b8;cursor:default;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:2px 7px;font-weight:600;display:inline-flex}button.audience-chip{cursor:pointer}.audience-chip-on{color:#fff;background:#1f2937;border-color:#1f2937}.audience-cell{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.audience-editor{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;gap:8px;width:100%;margin-top:4px;padding:10px;display:grid}.audience-toggle{font-size:var(--mx-text-xs);align-items:center;gap:6px;display:inline-flex}.chip-picker{gap:4px;display:grid}.chip-picker-label{font-size:var(--mx-text-2xs);text-transform:uppercase;letter-spacing:.4px;color:#64748b}.chip-picker-row{flex-wrap:wrap;gap:4px;display:flex}.ghost-button.small,.primary-button.small{font-size:var(--mx-text-xs);padding:4px 10px}.diff-panel{gap:8px;margin-top:12px;display:grid}.diff-panel h3{font-size:var(--mx-text-sm);margin:0}.diff-panel summary{cursor:pointer;font-size:var(--mx-text-xs);align-items:center;gap:8px;padding:4px 0;font-weight:600;display:flex}.diff-pre{font-family:var(--mx-font-mono);font-size:var(--mx-text-2xs);white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;margin:4px 0 0;padding:8px;line-height:1.5;overflow-x:auto}.diff-line{gap:8px;display:flex}.diff-marker{color:#94a3b8;text-align:center;flex-shrink:0;width:12px}.diff-add{background:#ecfdf5}.diff-add .diff-marker{color:#047857}.diff-del{background:#fef2f2}.diff-del .diff-marker{color:#b91c1c}.overlay-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px;display:grid}.overlay-panel{flex-direction:column;gap:6px;display:flex}.overlay-label{font-size:var(--mx-text-2xs);text-transform:uppercase;letter-spacing:.4px;color:#64748b;font-weight:600}.overlay-frame{aspect-ratio:1;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;display:flex;overflow:hidden}.overlay-frame img{object-fit:contain;max-width:100%;max-height:100%}.catalog-table{border-collapse:collapse;width:100%;font-size:var(--mx-text-sm)}.catalog-table th,.catalog-table td{padding:var(--mx-space-3) var(--mx-space-3);border-bottom:1px solid var(--mx-border-subtle);text-align:left;vertical-align:middle}.catalog-table th{font-size:var(--mx-text-2xs);text-transform:uppercase;letter-spacing:var(--mx-tracking-eyebrow);color:var(--mx-text-muted);border-bottom:1px solid var(--mx-border);background:var(--mx-surface-1);font-weight:700}.callout{gap:var(--mx-space-1);padding:var(--mx-space-3) var(--mx-space-4);border-radius:var(--mx-radius-md);font-size:var(--mx-text-sm);line-height:var(--mx-leading-snug);border:1px solid #0000;border-left-width:3px;display:grid}.callout strong{color:inherit;font-size:var(--mx-text-sm)}.callout-error{background:var(--mx-danger-bg);border-color:var(--mx-danger-border);border-left-color:var(--mx-danger);color:var(--mx-danger-text)}.callout-warn{background:var(--mx-warn-bg);border-color:var(--mx-warn-border);border-left-color:var(--mx-warn);color:var(--mx-warn-text)}.callout-ok{background:var(--mx-success-bg);border-color:var(--mx-success-border);border-left-color:var(--mx-success);color:var(--mx-success-text)}.case-cell{align-content:start;gap:4px;display:grid}.case-cell strong{font-size:var(--mx-text-base);color:#17324d}.case-cell .muted-text,.variant-cell .muted-text{font-size:var(--mx-text-2xs);color:#66758a;letter-spacing:.2px;margin:0}.variant-cell{gap:2px;display:grid}.row-actions{font-size:var(--mx-text-sm);flex-wrap:wrap;gap:8px;display:flex}.row-actions a{color:#17324d;border-bottom:1px solid #0000;font-weight:600;text-decoration:none}.row-actions a:hover{border-bottom-color:#17324d}.row-actions a:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #0f766e}.empty-row{text-align:center;color:#66758a;font-size:var(--mx-text-sm);padding:28px 16px}.editor-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);align-items:start;gap:20px;display:grid}.editor-stack{gap:18px;min-width:0;display:grid}.field{font-size:var(--mx-text-sm);color:#34475d;gap:8px;font-weight:700;display:grid}.field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.field .hint{font-size:var(--mx-text-2xs);color:#66758a;font-weight:500}textarea{width:100%;padding:var(--mx-space-3) var(--mx-space-3);border:1px solid var(--mx-border-strong);border-radius:var(--mx-radius-md);background:var(--mx-surface-0);color:var(--mx-text-primary);font:inherit;font-size:var(--mx-text-sm);line-height:var(--mx-leading-snug);resize:vertical;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;min-height:80px}textarea:disabled,textarea[readonly]{background:var(--mx-surface-1);color:var(--mx-text-secondary);cursor:default}textarea.code-area{border:1px solid var(--mx-border-strong);border-radius:var(--mx-radius-md);width:100%;min-height:200px;color:var(--mx-text-primary);font-family:var(--mx-font-mono);font-size:var(--mx-text-sm);resize:vertical;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;tab-size:2;background:#fbfcfe;padding:12px 14px;font-weight:400;line-height:1.55}textarea.code-area[readonly]{background:var(--mx-surface-1);color:var(--mx-text-secondary);cursor:default}input[type=number],input[type=text],input[type=email],input[type=password],input[type=search]{width:100%;min-height:36px;padding:0 var(--mx-space-3);border:1px solid var(--mx-border-strong);border-radius:var(--mx-radius-md);background:var(--mx-surface-0);color:var(--mx-text-primary);font:inherit;font-size:var(--mx-text-sm);transition:border-color var(--mx-duration-fast) var(--mx-ease-out), box-shadow var(--mx-duration-fast) var(--mx-ease-out)}input[type=number]:focus,input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=search]:focus{border-color:var(--mx-accent);outline:none;box-shadow:0 0 0 3px #0f766e29}.editor-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.editor-header .meta{gap:6px;display:grid}.editor-header .actions{flex-wrap:wrap;gap:8px;display:flex}.editor-header h1{font-size:var(--mx-text-xl)}.editor-summary{gap:var(--mx-space-2);font-size:var(--mx-text-xs);color:var(--mx-text-secondary);flex-wrap:wrap;display:flex}.editor-summary>span{align-items:center;gap:var(--mx-space-1);padding:2px var(--mx-space-2);border-radius:var(--mx-radius-xs);background:var(--mx-surface-2);border:1px solid var(--mx-border);display:inline-flex}.validation-panel{gap:14px;display:grid}.validation-panel ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.validation-panel li{font-size:var(--mx-text-xs);background:#fbfcfe;border:1px solid #d8e0ea;border-radius:6px;grid-template-columns:60px minmax(0,1fr);gap:8px;padding:10px 12px;line-height:1.5;display:grid}.validation-panel li.severity-fail{background:#fdecec;border-color:#f1a3a3}.validation-panel li.severity-warn{background:#fbf2d7;border-color:#d7c58c}.validation-panel li code{font-family:var(--mx-font-mono);font-size:var(--mx-text-2xs);color:#17324d;background:#17324d14;border-radius:4px;padding:2px 4px}.dialog-backdrop{z-index:100;background:#0f233766;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dialog{gap:var(--mx-space-3);width:100%;max-width:480px;padding:var(--mx-space-5);background:var(--mx-surface-0);border-radius:var(--mx-radius-lg);box-shadow:var(--mx-shadow-lg);display:grid}.dialog__header{justify-content:space-between;align-items:flex-start;gap:var(--mx-space-3);display:flex}.dialog__header h2{font-size:var(--mx-text-lg);margin:0}.dialog__header h2 .mx-mono{font-size:var(--mx-text-xs);font-weight:500}.dialog h2{font-size:var(--mx-text-lg);margin:0}.dialog .actions{justify-content:flex-end;gap:8px;display:flex}.dialog textarea,.dialog input[type=text]{width:100%;font:inherit;resize:vertical;border:1px solid #c8d3df;border-radius:8px;padding:10px 12px}@media (width<=960px){.editor-grid,.field-row{grid-template-columns:1fr}}@media (width<=760px){.app-shell,.split-grid{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #d8e0ea;border-right:0}.main-panel{padding:20px}}
