:root{color-scheme:light;--bg:#eef1f6;--bg-gradient:radial-gradient(1200px 600px at 80% -10%,rgba(37,99,235,0.06),transparent 60%),var(--bg);--surface:#ffffff;--surface-2:#f7f9fc;--surface-3:#eef2f7;--surface-inset:#f1f5f9;--border:#e2e8f0;--border-strong:#cbd5e1;--overlay:rgba(15,23,42,0.45);--text:#0f172a;--text-muted:#5a6b82;--text-subtle:#8996a8;--text-on-accent:#ffffff;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-active:#1e40af;--primary-soft:#e8f0fe;--primary-border:#bfd4fb;--success:#16a34a;--success-soft:#dcfce7;--success-text:#14672f;--warning:#b45309;--warning-soft:#fef3c7;--warning-text:#854d0e;--danger:#dc2626;--danger-soft:#fee2e2;--danger-text:#991b1b;--info:#0e7490;--info-soft:#cffafe;--focus-ring:rgba(37,99,235,0.45);--chart-grid:rgba(15,23,42,0.08);--chart-axis:#64748b;--chart-tooltip-bg:#0f172a;--chart-tooltip-text:#f8fafc;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(15,23,42,0.06);--shadow-md:0 4px 14px rgba(15,23,42,0.08);--shadow-lg:0 18px 40px rgba(15,23,42,0.14);--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;--font-mono:ui-monospace,"SF Mono","SFMono-Regular",Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--content-max:1120px;--header-height:62px}[data-theme=dark]{color-scheme:dark;--bg:#0a0f1c;--bg-gradient:radial-gradient(1200px 600px at 80% -10%,rgba(59,130,246,0.1),transparent 55%),var(--bg);--surface:#131a2a;--surface-2:#172033;--surface-3:#1e293f;--surface-inset:#0f1626;--border:#26324a;--border-strong:#3a4a68;--overlay:rgba(0,0,0,0.6);--text:#e8edf6;--text-muted:#9fb0c7;--text-subtle:#6b7c96;--text-on-accent:#ffffff;--primary:#4f8bff;--primary-hover:#6a9dff;--primary-active:#3b7bf5;--primary-soft:#17233d;--primary-border:#2f4670;--success:#34d399;--success-soft:#0f2a20;--success-text:#6ee7b7;--warning:#fbbf24;--warning-soft:#2c220b;--warning-text:#fcd34d;--danger:#f87171;--danger-soft:#2c1516;--danger-text:#fca5a5;--info:#38bdf8;--info-soft:#082330;--focus-ring:rgba(96,165,250,0.55);--chart-grid:rgba(226,232,240,0.1);--chart-axis:#94a3b8;--chart-tooltip-bg:#e2e8f0;--chart-tooltip-text:#0f172a;--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 6px 18px rgba(0,0,0,0.45);--shadow-lg:0 20px 44px rgba(0,0,0,0.55)}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-gradient);background-attachment:fixed;color:var(--text);line-height:1.5;min-height:100vh;transition:background-color .2s ease,color .2s ease}code,kbd,pre{font-family:var(--font-mono);font-size:.85em}h1,h2,h3,h4,h5{line-height:1.25;color:var(--text);font-weight:650}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:1rem;color:var(--text)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}::selection{background:var(--primary-soft)}*{scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--text-subtle);background-clip:content-box}.container{width:100%;max-width:var(--content-max);margin:0 auto;padding:0 1.25rem}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:var(--radius-pill);font-size:.78rem;font-weight:600;border:1px solid transparent;white-space:nowrap}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}#__next,.main-layout{min-height:100vh}.main-layout{display:flex;flex-direction:column}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:var(--header-height)}.brand{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;font-size:1.12rem;color:var(--text);letter-spacing:-.01em}.brand,.brand:hover{text-decoration:none}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--primary),var(--primary-active));color:#fff;font-size:1.05rem;box-shadow:var(--shadow-sm)}.brand-accent{color:var(--primary)}.nav-desktop{display:flex;align-items:center;gap:.35rem;margin-left:auto}.nav-link{position:relative;padding:.5rem .8rem;border-radius:var(--radius-md);color:var(--text-muted);font-weight:550;font-size:.92rem;text-decoration:none;transition:color .15s ease,background-color .15s ease}.nav-link:hover{color:var(--text);background:var(--surface-3);text-decoration:none}.nav-link.active{color:var(--primary);background:var(--primary-soft)}.header-actions{display:flex;align-items:center;gap:.5rem;margin-left:.5rem}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);transition:color .15s ease,background-color .15s ease,border-color .15s ease}.theme-toggle:hover{color:var(--text);background:var(--surface-2);border-color:var(--border-strong)}.menu-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface)}.menu-icon{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:18px}.menu-icon span{display:block;height:2px;width:100%;background:var(--text);border-radius:2px;transition:transform .2s ease,opacity .2s ease}.menu-icon.open span:first-child{transform:translateY(6px) rotate(45deg)}.menu-icon.open span:nth-child(2){opacity:0}.menu-icon.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav-mobile{display:flex;flex-direction:column;gap:.2rem;padding:.6rem 1rem 1rem;border-top:1px solid var(--border);background:var(--surface)}.nav-mobile .nav-link{padding:.7rem .8rem;font-size:1rem}.main-content{flex:1 1;width:100%;padding:1.75rem 0 3rem}.site-footer{border-top:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:.85rem}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.1rem;padding-bottom:1.1rem;flex-wrap:wrap}.footer-note{color:var(--text-subtle)}@media (max-width:760px){.nav-desktop{display:none}.menu-toggle{display:inline-flex}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.1rem;border-radius:var(--radius-md);border:1px solid transparent;font-size:.94rem;font-weight:600;line-height:1;min-height:42px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease,box-shadow .15s ease;text-decoration:none;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary);color:var(--text-on-accent);border-color:var(--primary);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);text-decoration:none}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--text-subtle);text-decoration:none}.btn-ghost{background:transparent;color:var(--text-muted);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text);text-decoration:none}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover:not(:disabled){filter:brightness(.95)}.btn-sm{padding:.4rem .75rem;min-height:34px;font-size:.85rem}.btn-lg{padding:.85rem 1.6rem;min-height:50px;font-size:1.02rem}.btn-block{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:1.35rem}.card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.badge-primary{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.badge-success{background:var(--success-soft);color:var(--success-text)}.badge-warning{background:var(--warning-soft);color:var(--warning-text)}.badge-danger{background:var(--danger-soft);color:var(--danger-text)}.badge-info{background:var(--info-soft);color:var(--info)}.badge-neutral{background:var(--surface-3);color:var(--text-muted)}.status-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.28rem .7rem;border-radius:var(--radius-pill);font-size:.8rem;font-weight:650;border:1px solid transparent}.status-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.status-badge.running{background:var(--info-soft);color:var(--info)}.status-badge.running:before{animation:pulse-dot 1.4s ease-in-out infinite}.status-badge.completed{background:var(--success-soft);color:var(--success-text)}.status-badge.failed{background:var(--danger-soft);color:var(--danger-text)}.status-badge.pending,.status-badge.unknown{background:var(--surface-3);color:var(--text-muted)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.protocol-chip{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;font-size:.85rem}.protocol-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.tag{display:inline-flex;align-items:center;padding:.22rem .6rem;background:var(--surface-3);color:var(--text-muted);border-radius:var(--radius-sm);font-size:.8rem;font-weight:500}.field{display:flex;flex-direction:column;gap:.4rem}.field-label{font-size:.9rem;font-weight:600;color:var(--text)}.field-hint{font-size:.8rem;color:var(--text-muted);font-weight:400}.input,.select,.textarea{width:100%;padding:.6rem .75rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.input::placeholder{color:var(--text-subtle)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.input.input-error{border-color:var(--danger)}.field-error{font-size:.82rem;color:var(--danger-text);font-weight:500}.alert{display:flex;gap:.7rem;align-items:flex-start;padding:.8rem 1rem;border-radius:var(--radius-md);border:1px solid transparent;font-size:.9rem}.alert-icon{flex-shrink:0;font-size:1rem;line-height:1.4}.alert-info{background:var(--info-soft);color:var(--info);border-color:color-mix(in srgb,var(--info) 30%,transparent)}.alert-warning{background:var(--warning-soft);color:var(--warning-text);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.alert-danger{background:var(--danger-soft);color:var(--danger-text);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.alert-success{background:var(--success-soft);color:var(--success-text);border-color:color-mix(in srgb,var(--success) 30%,transparent)}.data-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.data-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:520px}.data-table td,.data-table th{padding:.7rem .9rem;text-align:right;white-space:nowrap}.data-table td:first-child,.data-table th:first-child{text-align:left;position:sticky;left:0;background:var(--surface)}.data-table thead th{background:var(--surface-2);color:var(--text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border)}.data-table tbody tr+tr td{border-top:1px solid var(--border)}.data-table tbody tr:hover td{background:var(--surface-2)}.data-table td.best{color:var(--success-text);font-weight:700}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 1rem;color:var(--text-muted)}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--border-strong);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:3rem 1.5rem;background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);max-width:560px;margin:2rem auto}.empty-state .empty-icon,.error-state .empty-icon{font-size:2.2rem}.empty-state h2,.error-state h2{font-size:1.3rem}.empty-state p,.error-state p{color:var(--text-muted);max-width:42ch}.state-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-top:.5rem}.error-state{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-strong))}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.segmented{display:inline-flex;padding:3px;background:var(--surface-3);border-radius:var(--radius-md);border:1px solid var(--border)}.segmented button{border:none;background:transparent;color:var(--text-muted);font-weight:600;font-size:.85rem;padding:.4rem .85rem;border-radius:calc(var(--radius-md) - 3px);transition:background-color .15s ease,color .15s ease}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.muted,.section-description{color:var(--text-muted)}.section-description{font-size:.92rem}.attribute-selector{width:100%}.attribute-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.attribute-item{display:flex;gap:.85rem;padding:.85rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md)}.reorder-buttons{display:flex;flex-direction:column;align-items:center;gap:.25rem}.move-btn{width:30px;height:26px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);font-size:.85rem;line-height:1}.move-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.move-btn:disabled{opacity:.4;cursor:not-allowed}.attribute-rank{font-size:.75rem;font-weight:700;color:var(--text-subtle)}.attribute-body{flex:1 1;min-width:0}.attribute-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.attribute-name{font-weight:650;font-size:.98rem}.attribute-weight{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--primary)}.attribute-description{font-size:.82rem;color:var(--text-muted);margin:.15rem 0 .6rem}.slider-container{display:flex;align-items:center;gap:.85rem}.weight-slider{flex:1 1;height:6px;appearance:none;background:var(--surface-3);border-radius:var(--radius-pill);outline-offset:4px}.weight-slider::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border-radius:50%;background:var(--primary);border:2px solid var(--surface);box-shadow:var(--shadow-sm);cursor:pointer}.weight-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--primary);border:2px solid var(--surface);cursor:pointer}.number-wrap{position:relative;display:inline-flex;align-items:center}.number-input{width:72px;padding:.4rem 1.4rem .4rem .55rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.number-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.number-suffix{position:absolute;right:.5rem;color:var(--text-subtle);font-size:.82rem;pointer-events:none}.weight-summary{justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.weight-summary,.weight-total{display:flex;align-items:center;flex-wrap:wrap}.weight-total{gap:.75rem}.total-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:var(--radius-pill);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.9rem}.total-pill.valid{background:var(--success-soft);color:var(--success-text)}.total-pill.invalid{background:var(--danger-soft);color:var(--danger-text)}.weight-warning{font-size:.82rem;color:var(--danger-text)}.weight-actions{display:flex;gap:.5rem}@media (max-width:520px){.weight-actions{width:100%}.weight-actions .btn{flex:1 1}}.protocol-selector{width:100%}.select-card{position:relative;display:flex;flex-direction:column;gap:.45rem;padding:1rem 1rem .9rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .05s ease}.select-card:hover{border-color:var(--border-strong);background:var(--surface-2)}.select-card:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.select-card.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary) inset}.select-check{position:absolute;top:.6rem;right:.6rem;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;color:#fff;background:var(--surface)}.select-card.selected .select-check{background:var(--primary);border-color:var(--primary)}.select-card-title{font-weight:650;font-size:1rem;padding-right:1.5rem}.select-card-desc{font-size:.82rem;color:var(--text-muted)}.protocol-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.protocol-card-head{display:flex;align-items:center;gap:.5rem}.protocol-features{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.15rem}.scenario-selector{width:100%}.scenario-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem}.scenario-params{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.2rem}.configuration-page{width:100%}.config-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.75rem;align-items:start}.config-main{gap:1.5rem;min-width:0}.config-main,.page-head{display:flex;flex-direction:column}.page-head{gap:.4rem}.page-title{font-size:1.75rem;letter-spacing:-.02em}.config-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.35rem;box-shadow:var(--shadow-sm)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-title{font-size:1.12rem}.section-explainer{margin-bottom:1.1rem}.mode-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.mode-note{flex:1 1;min-width:220px}.endpoint-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.config-summary{position:sticky;top:calc(var(--header-height) + 1rem)}.summary-card{display:flex;flex-direction:column;gap:1rem}.summary-title{font-size:1.05rem}.summary-list{display:flex;flex-direction:column;gap:.6rem}.summary-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.9rem}.summary-row dt{color:var(--text-muted)}.summary-row dd{font-weight:600;text-align:right;max-width:60%;overflow-wrap:anywhere}.summary-blockers{background:var(--warning-soft);color:var(--warning-text);border-radius:var(--radius-md);padding:.75rem .9rem;font-size:.85rem}.summary-blockers-title{font-weight:700;margin-bottom:.35rem}.summary-blockers ul{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.25rem}.summary-foot{font-size:.82rem;text-align:center}@media (max-width:900px){.config-layout{grid-template-columns:1fr}.config-summary{position:sticky;bottom:0;top:auto;z-index:30;margin:0 -1.25rem -1rem}.summary-card{border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-lg)}.summary-foot,.summary-list{display:none}}.results-page{display:flex;flex-direction:column;gap:1.4rem}.section-heading{font-size:1.2rem;margin-bottom:.4rem}.link-btn{background:none;border:none;color:var(--primary);font:inherit;padding:0;text-decoration:underline;cursor:pointer}.results-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.results-title h1{font-size:1.75rem;letter-spacing:-.02em}.results-badges{margin-top:.5rem}.results-actions,.results-badges{display:flex;gap:.5rem;flex-wrap:wrap}.config-recap{display:flex;flex-direction:column;gap:.9rem}.recap-name h2{font-size:1.15rem;overflow-wrap:anywhere}.recap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.recap-grid dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle);margin-bottom:.3rem}.recap-grid dd{font-weight:550;display:flex;flex-wrap:wrap;gap:.4rem}.recap-chip{background:var(--surface-3);padding:.15rem .5rem;border-radius:var(--radius-sm)}.winner-card{position:relative;overflow:hidden;border:1px solid var(--primary-border);background:linear-gradient(135deg,var(--primary-soft),var(--surface) 65%)}.winner-ribbon{position:absolute;top:0;right:0;background:var(--primary);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.3rem .9rem;border-bottom-left-radius:var(--radius-md)}.winner-body{padding:1.5rem;display:flex;flex-direction:column;gap:.9rem}.winner-headline{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.winner-dot{width:46px;height:46px;border-radius:12px;flex-shrink:0;box-shadow:var(--shadow-sm)}.winner-eyebrow{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.winner-name{font-size:1.8rem;letter-spacing:-.01em}.winner-score{margin-left:auto;display:flex;align-items:baseline;gap:.2rem;flex-wrap:wrap;justify-content:flex-end}.winner-score-value{font-size:2.6rem;font-weight:750;line-height:1;color:var(--primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.winner-score-max{font-size:1.1rem;color:var(--text-muted)}.winner-score-label{width:100%;text-align:right;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.winner-reco{color:var(--text);max-width:70ch}.winner-strengths{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.confidence-note ul.confidence-list{margin:.4rem 0 0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.3rem}.ranking-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.35rem;box-shadow:var(--shadow-sm)}.ranking-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.ranking-row{display:flex;align-items:center;gap:1rem;padding:.7rem .9rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md)}.ranking-row.failed{opacity:.8}.rank-num{font-weight:750;font-size:1rem;color:var(--text-muted);min-width:34px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rank-score{margin-left:auto;display:flex;align-items:center;gap:.7rem;min-width:0}.score-bar{width:140px;max-width:30vw;height:8px;background:var(--surface-3);overflow:hidden}.score-bar,.score-bar span{border-radius:var(--radius-pill)}.score-bar span{display:block;height:100%}.score-num{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:58px;text-align:right}.score-explainer{margin-top:1rem;border-top:1px solid var(--border);padding-top:.9rem}.score-explainer summary{cursor:pointer;font-weight:600;color:var(--primary)}.score-explainer p{margin-top:.6rem;color:var(--text-muted);max-width:80ch;font-size:.92rem}.results-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.35rem;box-shadow:var(--shadow-sm)}.charts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.chart-block .chart-heading{font-size:1.05rem}.chart-block.full-span{grid-column:1/-1}.chart-canvas{position:relative;height:320px;margin-top:.8rem}.chart-canvas.radar{height:360px}.chart-empty{display:flex;align-items:center;justify-content:center;min-height:160px;color:var(--text-muted);font-size:.9rem;background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius-md)}.th-dir{display:block;font-size:.68rem;font-weight:500;text-transform:none;letter-spacing:0}.row-failed td,.row-failed th,.th-dir{color:var(--text-subtle)}.table-fail-badge{margin-left:.5rem}.results-footer-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end;padding-top:.5rem}@media (max-width:820px){.charts-grid{grid-template-columns:1fr}.winner-score{margin-left:0}}.history-page{display:flex;flex-direction:column;gap:1.25rem}.history-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.history-header h1{font-size:1.75rem;letter-spacing:-.02em}.history-list{list-style:none;display:flex;flex-direction:column;gap:.85rem}.history-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.1rem 1.25rem;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.history-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.skeleton-card{display:block}.history-card-main{flex:1 1;min-width:0}.history-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.85rem}.history-title-btn{background:none;border:none;padding:0;font-size:1.12rem;font-weight:650;color:var(--text);text-align:left;cursor:pointer;overflow-wrap:anywhere}.history-title-btn:hover{color:var(--primary);text-decoration:underline}.history-badges{display:flex;gap:.5rem;flex-wrap:wrap}.history-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.85rem 1.25rem}.history-meta dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle);margin-bottom:.25rem}.history-meta dd{font-size:.9rem;font-weight:500}.proto-list{display:flex;flex-wrap:wrap;gap:.4rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-actions{display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}@media (max-width:680px){.history-card{flex-direction:column}.history-actions{flex-direction:row;width:100%}.history-actions .btn{flex:1 1}}.live-page{display:flex;flex-direction:column;gap:1.4rem}.live-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.live-header h1{font-size:1.75rem;letter-spacing:-.02em}.live-subhead{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.5rem}.live-name{font-weight:600;color:var(--text-muted);overflow-wrap:anywhere}.progress-card{display:flex;flex-direction:column;gap:.75rem}.progress-top{display:flex;align-items:baseline;justify-content:space-between}.progress-top h2{font-size:1.05rem}.progress-percent{font-size:1.4rem;font-weight:750;color:var(--primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.progress-track{height:12px;background:var(--surface-3);overflow:hidden}.progress-fill,.progress-track{border-radius:var(--radius-pill)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-active));transition:width .4s ease}.progress-fill.animated{background-size:200% 100%;animation:progress-slide 1.6s linear infinite;background-image:linear-gradient(90deg,var(--primary),var(--primary-active),var(--primary))}@keyframes progress-slide{to{background-position:-200% 0}}.progress-meta{display:flex;gap:1.25rem;flex-wrap:wrap;color:var(--text-muted);font-size:.88rem}.protocol-status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem}.protocol-status-card{border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-2);padding:.9rem;display:flex;flex-direction:column;gap:.6rem}.protocol-status-card.running{border-left-color:var(--info);box-shadow:0 0 0 1px var(--info-soft)}.protocol-status-card.completed{border-left-color:var(--success)}.protocol-status-card.failed{border-left-color:var(--danger)}.protocol-status-card.pending{opacity:.85}.psc-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.psc-metrics{display:flex;flex-direction:column;gap:.3rem}.psc-metrics>div{display:flex;justify-content:space-between;font-size:.88rem}.psc-metrics dt{color:var(--text-muted)}.psc-metrics dd{font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.psc-note{font-size:.85rem;color:var(--text-muted)}.psc-note.danger{color:var(--danger-text)}.psc-foot{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--text-subtle);border-top:1px solid var(--border);padding-top:.5rem}.psc-lastlog{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.2rem}.log-toolbar{justify-content:space-between;gap:1rem;margin-bottom:.9rem}.log-controls,.log-toolbar{display:flex;align-items:center;flex-wrap:wrap}.log-controls{gap:.9rem}.auto-scroll{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-muted);cursor:pointer}.log-container{max-height:420px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-inset)}.log-empty{padding:2.5rem 1rem;text-align:center;color:var(--text-muted)}.log-list{list-style:none}.log-entry{display:flex;gap:.7rem;padding:.6rem .85rem;border-left:3px solid var(--border-strong)}.log-entry+.log-entry{border-top:1px solid var(--border)}.log-entry.tone-info{border-left-color:var(--info)}.log-entry.tone-primary{border-left-color:var(--primary)}.log-entry.tone-success{border-left-color:var(--success)}.log-entry.tone-danger{border-left-color:var(--danger);background:var(--danger-soft)}.log-entry.tone-neutral{border-left-color:var(--border-strong)}.log-icon{flex-shrink:0;width:20px;text-align:center;color:var(--text-muted)}.log-body{flex:1 1;min-width:0}.log-line{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.log-tag{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .4rem;border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-muted)}.log-tag.tone-info{background:var(--info-soft);color:var(--info)}.log-tag.tone-primary{background:var(--primary-soft);color:var(--primary)}.log-tag.tone-success{background:var(--success-soft);color:var(--success-text)}.log-tag.tone-danger{background:var(--danger-soft);color:var(--danger-text)}.log-proto{font-size:.75rem;font-weight:600;color:var(--text-muted)}.log-time{margin-left:auto;font-size:.75rem;color:var(--text-subtle);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.log-message{font-size:.88rem;margin-top:.15rem;overflow-wrap:anywhere}.log-formula{display:block;margin-top:.35rem;padding:.4rem .55rem;background:var(--surface-3);border-radius:var(--radius-sm);font-size:.78rem;color:var(--text-muted);overflow-x:auto}.jump-latest{align-self:center;margin-top:.75rem}@media (max-width:640px){.log-time{margin-left:0}}