:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;--ink-950:#17201d;--ink-700:#46514d;--ink-500:#68736f;--surface:#fff;--surface-soft:#f5f7f5;--surface-raised:#fbfcfb;--line:#dce2df;--line-strong:#b9c4bf;--brand:#145b4e;--brand-strong:#0b453a;--brand-soft:#dceee9;--info:#225ea8;--warning:#9a6700;--danger:#b42318;--success:#18794e;--shadow:0 12px 32px #17201d14;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--surface-soft);min-width:320px}body{color:var(--ink-950);background:var(--surface-soft);margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:var(--brand);text-underline-offset:.2em}a:hover{color:var(--brand-strong)}:focus-visible{outline-offset:2px;outline:3px solid #5baee8}h1,h2,h3,p{margin-top:0}h1{margin-bottom:var(--space-2);letter-spacing:-.035em;font-size:clamp(1.75rem,4vw,2.55rem);line-height:1.08}h2{letter-spacing:-.01em;margin:0;font-size:1.15rem}h3{margin-bottom:var(--space-3);font-size:.95rem}small{color:var(--ink-500);font-size:.78rem;display:block}.app-shell{min-height:100vh}.topbar{z-index:10;min-height:68px;padding:0 var(--space-6);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{gap:var(--space-3);color:var(--ink-950);align-items:center;text-decoration:none;display:flex}.brand>span:last-child{display:grid}.brand small{font-size:.68rem}.brand-mark{color:#fff;background:var(--brand);letter-spacing:.05em;border-radius:9px;place-items:center;width:36px;height:36px;font-size:.72rem;font-weight:800;display:grid}.topbar nav{gap:var(--space-2);display:flex}.topbar nav a{border-radius:var(--radius-sm);color:var(--ink-700);padding:.55rem .8rem;font-size:.9rem;font-weight:650;text-decoration:none}.topbar nav a.active{color:var(--brand-strong);background:var(--brand-soft)}.page-frame{width:min(1440px,100%);padding:var(--space-8) var(--space-6);margin:0 auto}.page-heading{gap:var(--space-6);margin-bottom:var(--space-6);justify-content:space-between;align-items:flex-end;display:flex}.page-heading p:last-child{color:var(--ink-500);margin-bottom:0}.eyebrow{margin-bottom:var(--space-2);color:var(--brand);letter-spacing:.12em;text-transform:uppercase;font-size:.73rem;font-weight:800}.step-list{color:var(--ink-500);counter-reset:step;margin:0;padding:0;list-style:none;display:flex}.step-list li{gap:var(--space-1);border-top:2px solid var(--line);min-width:88px;padding-top:var(--space-2);font-size:.72rem;display:grid}.step-list li:before{color:var(--brand);counter-increment:step;content:"0" counter(step);font-variant-numeric:tabular-nums;font-weight:800}.stack,.setup-layout{gap:var(--space-5);display:grid}.panel{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;box-shadow:0 1px 2px #17201d08}.section-heading{gap:var(--space-5);margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.section-heading>div:first-child{gap:var(--space-2) var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.section-heading p{flex-basis:100%;margin:0}.step-number{width:28px;height:28px;color:var(--brand-strong);background:var(--brand-soft);border-radius:50%;place-items:center;font-size:.78rem;font-weight:800;display:grid}.selection-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));display:grid}.selection-card{gap:var(--space-3);min-height:90px;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raised);cursor:pointer;grid-template-columns:auto 1fr;display:grid}.selection-card:has(input:checked){border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.selection-card:has(input:disabled){cursor:default}.selection-card input,.check-label input{width:1rem;height:1rem;accent-color:var(--brand);margin:.15rem 0 0}.selection-title{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.segmented-control{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;padding:3px;display:flex}.segmented-control label{cursor:pointer;border-radius:5px;padding:.38rem .65rem;font-size:.8rem;font-weight:650;position:relative}.segmented-control label:has(input:checked){color:var(--brand-strong);background:var(--surface);box-shadow:0 1px 3px #17201d1f}.segmented-control input{opacity:0;position:absolute}.table-scroll{border:1px solid var(--line);border-radius:var(--radius-sm);max-width:100%;overflow-x:auto}table{border-spacing:0;border-collapse:separate;width:100%;min-width:760px;font-size:.82rem}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:.8rem .9rem}thead th{z-index:1;color:var(--ink-700);background:var(--surface-soft);letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;font-size:.7rem;position:sticky;top:0}tbody th{font-weight:650}tbody tr:last-child>*{border-bottom:0}tbody tr:hover>*{background:#f8faf9}.compatibility-table td{min-width:180px}.compatible,.incompatible{font-weight:700;display:block}.compatible{color:var(--success)}.incompatible{color:var(--warning)}.progress-cell{min-width:210px}.rank{color:var(--brand);font-weight:800}.fingerprint{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.field{gap:var(--space-2);color:var(--ink-700);font-size:.78rem;font-weight:700;display:grid}.field input,.field select,.compact-field select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-height:40px;color:var(--ink-950);background:var(--surface);padding:.55rem .7rem}.benchmark-filter{min-width:min(320px,100%)}.compact-field{gap:var(--space-2);color:var(--ink-500);align-items:center;font-size:.75rem;display:flex}.filter-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.panel-actions{margin-top:var(--space-4);justify-content:flex-end;display:flex}.button,.text-button,.icon-button{cursor:pointer;border:0;font-weight:720}.button{border-radius:var(--radius-sm);min-height:40px;padding:.55rem .9rem}.button.primary{color:#fff;background:var(--brand)}.button.primary:hover{background:var(--brand-strong)}.button.secondary{border:1px solid var(--line-strong);color:var(--ink-950);background:var(--surface)}.button.destructive{color:#fff;background:var(--danger)}.button:disabled{cursor:not-allowed;opacity:.5}.text-button{color:var(--brand);text-underline-offset:.2em;background:0 0;padding:.35rem;text-decoration:underline}.icon-button{width:38px;height:38px;color:var(--ink-950);background:var(--surface-soft);border-radius:50%;place-items:center;font-size:1.4rem;display:grid}.status-badge{width:max-content;color:var(--ink-700);background:var(--surface-soft);letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.28rem .48rem;font-size:.68rem;font-weight:800;display:inline-flex}.status-dot{background:var(--ink-500);border-radius:50%;width:.45rem;height:.45rem}.status-badge[data-status=ready],.status-badge[data-status=completed]{color:var(--success);background:#e5f5ec}.status-badge[data-status=ready] .status-dot,.status-badge[data-status=completed] .status-dot{background:var(--success)}.status-badge[data-status=running],.status-badge[data-status=preparing],.status-badge[data-status=aggregating]{color:var(--info);background:#e8f1fa}.status-badge[data-status=running] .status-dot,.status-badge[data-status=preparing] .status-dot,.status-badge[data-status=aggregating] .status-dot{background:var(--info)}.status-badge[data-status=failed],.status-badge[data-status=invalid],.status-badge[data-status=unavailable]{color:var(--danger);background:#fdecea}.status-badge[data-status=failed] .status-dot,.status-badge[data-status=invalid] .status-dot,.status-badge[data-status=unavailable] .status-dot{background:var(--danger)}.status-badge[data-status=partially-completed],.status-badge[data-status=missing]{color:var(--warning);background:#fff3d6}.status-badge[data-status=partially-completed] .status-dot,.status-badge[data-status=missing] .status-dot{background:var(--warning)}.progress-value{min-width:120px}.progress-label{margin-bottom:var(--space-2);justify-content:space-between;font-size:.75rem;font-weight:700;display:flex}progress{width:100%;height:7px;color:var(--brand);background:var(--line);border:0;border-radius:999px;display:block;overflow:hidden}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--brand)}progress::-moz-progress-bar{background:var(--brand)}.summary-strip{margin-top:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(2,1fr);display:grid}.summary-strip.compact{grid-template-columns:repeat(4,1fr)}.summary-strip div{padding:var(--space-3) var(--space-4);border-right:1px solid var(--line);gap:.15rem;display:grid}.summary-strip div:last-child{border-right:0}.summary-strip strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.summary-strip span{color:var(--ink-500);font-size:.72rem}.score-cell{gap:var(--space-2);align-items:center;min-width:150px;display:flex}.score-track{background:var(--line);border-radius:999px;width:76px;height:7px;overflow:hidden}.score-track span{border-radius:inherit;background:var(--brand);height:100%;display:block}.async-state{min-height:180px;padding:var(--space-6);border:1px dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;place-items:center;display:grid}.skeleton{background:linear-gradient(110deg, var(--surface) 20%, #edf1ef 40%, var(--surface) 60%);background-size:250% 100%;animation:1.5s linear infinite shimmer;position:relative;overflow:hidden}.empty-state{padding:var(--space-5);color:var(--ink-500);text-align:center}.error-state{color:var(--danger);background:#fff9f8}.inline-error{margin:var(--space-3) 0 0;color:var(--danger);font-size:.8rem;display:block}.toast-error{z-index:30;right:var(--space-5);bottom:var(--space-5);max-width:360px;padding:var(--space-4);border-radius:var(--radius-sm);color:#fff;background:var(--danger);box-shadow:var(--shadow);position:fixed}.muted{color:var(--ink-500)}.numeric{font-variant-numeric:tabular-nums}.code-value{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.76rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drawer-backdrop{z-index:20;background:#17201d6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{width:min(520px,100%);height:100%;padding:var(--space-5);background:var(--surface);box-shadow:var(--shadow);animation:.18s ease-out drawer-in;overflow-y:auto}.drawer-header{margin-bottom:var(--space-6);justify-content:space-between;display:flex}.drawer-header h2{overflow-wrap:anywhere;max-width:390px}.drawer section{margin-top:var(--space-6)}.detail-grid,.metric-list{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:1px;margin:0;display:grid}.detail-grid div,.metric-list div{padding:var(--space-3);background:var(--surface)}dt{color:var(--ink-500);text-transform:uppercase;font-size:.7rem;font-weight:700}dd{margin:var(--space-1) 0 0}.drawer-actions{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--line);justify-content:flex-end;display:flex}@keyframes shimmer{to{background-position-x:-250%}}@keyframes drawer-in{0%{transform:translate(100%)}}@media (width<=760px){.topbar{min-height:60px;padding:0 var(--space-4)}.brand small{display:none}.brand-mark{width:32px;height:32px}.topbar nav a{padding:.45rem .55rem;font-size:.78rem}.page-frame{padding:var(--space-6) var(--space-4)}.page-heading{flex-direction:column;align-items:stretch}.step-list{overflow-x:auto}.step-list li{min-width:74px}.panel{padding:var(--space-4)}.section-heading{flex-direction:column;align-items:flex-start}.summary-strip.compact{grid-template-columns:repeat(2,1fr)}.summary-strip.compact div:nth-child(2){border-right:0}.detail-grid,.metric-list{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
