:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#08111f;--glow-blue:#3b82f633;--glow-purple:#a855f72e;--surface:#080f1fe0;--surface-raised:#0f172aeb;--surface-sunken:#060c18e6;--surface-inset:#0f172abf;--step-number-bg:#1e293bf2;--border:#94a3b833;--border-soft:#94a3b824;--shadow:0 18px 40px #040a1859;--text:#e7eefc;--text-muted:#c8d5f2;--text-soft:#bed0f6;--text-dim:#9ab3e7;--text-faint:#9eb6e6;--heading-accent:#cfe1ff;--link:#8dc5ff;--accent-blue:#60a5fa;--accent-purple:#c084fc;--node-dot:#f8fafc;--toggle-thumb:#f8fafc;--metric-num:#b3d4ff;--step-time:#93c5fd;--good-surface:#071c14e6;--good-border:#22c55e59;--good-text:#b5f7c4;--good-strong-text:#b7f5c8;--info-text:#c7e3ff;--warn-surface:#221c07d9;--warn-border:#eab30880;--bad-surface:#220909e0;--bad-border:#dc26268c;--notice-border:#f8717157;--quote-bg:#0c1424e6;--quote-text:#d8e6ff;--pill-auth-bg:#16a34a2e;--pill-auth-text:#bbf7d0;--pill-pending-bg:#3b82f629;--pill-pending-text:#bfdbfe;--pill-tamper-bg:#dc262633;--pill-tamper-text:#fecaca;--skip-bg:#1e293b;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef2fb;--glow-blue:#3b82f61f;--glow-purple:#a855f71a;--surface:#fffffff0;--surface-raised:#fffffffa;--surface-sunken:#e2e8f5b3;--surface-inset:#e2e8f599;--step-number-bg:#e2e8f5f2;--border:#33415538;--border-soft:#33415524;--shadow:0 12px 30px #0f172a1f;--text:#0f1f3d;--text-muted:#243b66;--text-soft:#2c4574;--text-dim:#475d86;--text-faint:#51648a;--heading-accent:#1e3a66;--link:#1d4ed8;--accent-blue:#2563eb;--accent-purple:#7c3aed;--node-dot:#1e293b;--toggle-thumb:#fff;--metric-num:#1d4ed8;--step-time:#1d4ed8;--good-surface:#dcfce7d9;--good-border:#16a34a73;--good-text:#166534;--good-strong-text:#166534;--info-text:#1e40af;--warn-surface:#fef9c3d9;--warn-border:#ca8a048c;--bad-surface:#fee2e2e6;--bad-border:#dc26268c;--notice-border:#dc262666;--quote-bg:#e2e8f5b3;--quote-text:#243b66;--pill-auth-bg:#16a34a2e;--pill-auth-text:#166534;--pill-pending-bg:#2563eb29;--pill-pending-text:#1e40af;--pill-tamper-bg:#dc262629;--pill-tamper-text:#b91c1c;--skip-bg:#e2e8f0}*{box-sizing:border-box}body{background:radial-gradient(circle at top, var(--glow-blue), transparent 0, transparent 35%), radial-gradient(circle at right, var(--glow-purple), transparent 0, transparent 30%), var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,select,input,textarea{font:inherit}a{color:var(--link)}code,pre{font-family:SFMono-Regular,Consolas,monospace}#app{width:min(1200px,100vw - 2rem);margin:0 auto;padding:1.25rem 0 3rem}.app-shell{flex-direction:column;gap:1rem;display:flex}.hero,.panel,.metric-card,.wire-card,.chat-card,.table-card,.deployment-card,.match-card,.notice-card,.loading-card,.benchmark-card,.connection-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:18px}.hero{padding:1.35rem;position:relative}.theme-toggle{background:inherit;width:2.6rem;height:2.6rem;color:inherit;cursor:pointer;border:1px solid;border-radius:50%;place-items:center;display:grid;position:absolute;top:.9rem;right:.9rem}.theme-toggle:hover{background:color-mix(in srgb, currentColor 10%, transparent)}.hero h1{margin:0 0 .3rem;font-size:clamp(1.8rem,3vw,2.6rem)}.hero p{color:var(--text-muted);margin:.25rem 0}.hero-badges{flex-wrap:wrap;gap:.5rem;margin-top:.8rem;display:flex}.badge{border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:.85rem;display:inline-flex}.badge-good{color:var(--good-text);border-color:var(--good-border)}.badge-info{color:var(--info-text);border-color:#3b82f659}.badge-alert{color:var(--pill-tamper-text);border-color:#f8717159}.tabs{flex-wrap:wrap;gap:.55rem;display:flex}.tab-button,.action-button{border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;border-radius:12px;padding:.65rem .95rem;transition:transform .15s,border-color .15s,background .15s}.tab-button:hover,.action-button:hover{border-color:var(--accent-blue);transform:translateY(-1px)}.tab-button.active{color:#fff;background:linear-gradient(135deg,#2563ebf2,#7c3aedeb);border-color:#0000}.panel{padding:1rem}.panel h2,.panel h3,.panel h4{margin-top:0}.stepper{gap:.6rem;margin-bottom:1rem;display:grid}.step-item{background:var(--surface-inset);border:1px solid var(--border-soft);border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.75rem .9rem;display:grid}.step-item.done{border-color:var(--good-border)}.step-item.active{border-color:var(--accent-blue);box-shadow:inset 0 0 0 1px #60a5fa47}.step-number{background:var(--step-number-bg);border:1px solid var(--border);border-radius:999px;place-items:center;width:2rem;height:2rem;font-weight:700;display:grid}.step-title{font-weight:700}.step-detail{color:var(--text-soft);font-size:.92rem}.step-time{color:var(--step-time);font-size:.88rem}.button-row{flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;display:flex}.metrics-row,.cards-grid,.deployment-grid,.connection-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;display:grid}.metric-card,.wire-card,.chat-card,.table-card,.deployment-card,.benchmark-card,.connection-card{padding:1rem}.metric-card .big-number{color:var(--metric-num);font-size:1.4rem;font-weight:700}.live-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.8rem;display:grid}.wire-card.blue{border-color:#3b82f659}.wire-card.purple{border-color:#a855f759}.key-list{gap:.55rem;display:grid}.key-list div{background:var(--surface-inset);border-radius:10px;padding:.55rem .65rem}.label{color:var(--text-dim);margin-bottom:.2rem;font-size:.82rem;display:block}.value{word-break:break-all;font-family:SFMono-Regular,Consolas,monospace}.wire-diagram{background:var(--surface-sunken);border:1px solid var(--border-soft);border-radius:14px;margin:.9rem 0;padding:.5rem}.wire-diagram svg{width:100%;height:auto}.diagram-label{fill:var(--text-dim)}.diagram-label-blue{fill:var(--accent-blue)}.diagram-label-purple{fill:var(--accent-purple)}.diagram-break{fill:#ef4444}.wire-path{fill:none;stroke-width:6px;stroke-linecap:round;stroke-dasharray:18 10;opacity:.85}.wire-blue{stroke:var(--accent-blue)}.wire-purple{stroke:var(--accent-purple)}.wire-flow{animation:1.2s linear infinite wirePulse}.node-dot{fill:var(--node-dot)}@keyframes wirePulse{0%{stroke-dashoffset:0}to{stroke-dashoffset:-112px}}.match-card{border:1px solid var(--good-border);background:var(--good-surface);margin-top:.9rem;padding:1rem}.match-card h3{color:var(--good-strong-text)}.combiner-flow{flex-wrap:wrap;align-items:stretch;gap:.6rem;margin:.9rem 0;display:flex}.combiner-input,.combiner-output{border:1px solid var(--border);background:var(--surface-sunken);border-radius:12px;flex:160px;gap:.3rem;padding:.65rem .75rem;display:grid}.combiner-input.blue{border-color:#3b82f673}.combiner-input.purple{border-color:#a855f773}.combiner-output{border-color:var(--good-border);background:var(--good-surface)}.combiner-tag{letter-spacing:.02em;text-transform:uppercase;color:var(--text-dim);font-size:.72rem}.combiner-input code,.combiner-output code{word-break:break-all;font-size:.85rem}.combiner-op{color:var(--text-dim);place-items:center;padding:0 .2rem;font-weight:700;display:grid}.resilience-card{border:1px solid var(--accent-blue);background:var(--surface);border-radius:16px;margin:.9rem 0 1.2rem;padding:1rem}.resilience-card h3{margin-top:0}.resilience-controls{flex-wrap:wrap;gap:.7rem;margin:.4rem 0 .6rem;display:flex}.resilience-toggle{border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:.6rem;min-height:44px;padding:.55rem .8rem;transition:border-color .15s,background .15s;display:inline-flex}.resilience-toggle-track{background:#64748b73;border-radius:999px;flex:none;width:2.6rem;height:1.4rem;transition:background .15s;position:relative}.resilience-toggle-thumb{background:var(--toggle-thumb);border-radius:50%;width:1.08rem;height:1.08rem;transition:transform .15s;position:absolute;top:.16rem;left:.16rem;box-shadow:0 1px 2px #0000004d}.resilience-toggle.on .resilience-toggle-track{background:#dc2626cc}.resilience-toggle.on .resilience-toggle-thumb{transform:translate(1.2rem)}.resilience-toggle.on{border-color:var(--bad-border)}.resilience-toggle-label{font-size:.92rem;font-weight:600}.wire-broken{opacity:.4;stroke-dasharray:4 12!important;animation:none!important}.wire-blue.wire-broken,.wire-purple.wire-broken{stroke:#ef4444}.resilience-verdict{border:1px solid var(--border);background:var(--surface-raised);border-radius:14px;margin-top:.7rem;padding:.85rem 1rem}.resilience-verdict-head{align-items:center;gap:.5rem;margin-bottom:.3rem;font-size:1.05rem;display:flex}.resilience-verdict p{color:var(--text);margin:0}.resilience-verdict.protected{border-color:var(--good-border);background:var(--good-surface)}.resilience-verdict.degraded{border-color:var(--warn-border);background:var(--warn-surface)}.resilience-verdict.compromised{border-color:var(--bad-border);background:var(--bad-surface)}.formula{background:var(--surface-sunken);border:1px solid var(--border-soft);border-radius:12px;padding:.9rem;overflow-x:auto}.table-card table{border-collapse:collapse;width:100%}.table-card th,.table-card td{border-bottom:1px solid var(--border-soft);text-align:left;vertical-align:top;padding:.7rem .5rem}.table-card th{color:var(--heading-accent)}.quote{border-left:3px solid var(--accent-blue);background:var(--quote-bg);color:var(--quote-text);padding:.9rem 1rem}.chat-wrapper{gap:.8rem;margin-top:1rem;display:grid}.chat-meta{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;display:grid}.chat-form{gap:.7rem;display:grid}.chat-form-row{grid-template-columns:160px 1fr auto;gap:.6rem;display:grid}.input,.select{border:1px solid var(--border);background:var(--surface-raised);width:100%;color:var(--text);border-radius:10px;padding:.7rem .8rem}.message-list{gap:.7rem;display:grid}.message-card{border:1px solid var(--border-soft);background:var(--surface-raised);border-radius:14px;padding:.8rem}.message-card.alice{border-color:#3b82f659}.message-card.bob{border-color:#a855f759}.message-meta,.message-status{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.status-pill{border-radius:999px;padding:.2rem .55rem;font-size:.82rem;display:inline-flex}.status-authenticated{background:var(--pill-auth-bg);color:var(--pill-auth-text)}.status-pending{background:var(--pill-pending-bg);color:var(--pill-pending-text)}.status-tampered{background:var(--pill-tamper-bg);color:var(--pill-tamper-text)}.notice-card,.loading-card{padding:.85rem 1rem}.notice-card{border-color:var(--notice-border)}.footer-note{color:var(--text-faint);font-size:.92rem}@media (width<=760px){#app{width:min(100vw,100vw - 1rem)}.chat-form-row,.deployment-grid,.metrics-row,.cards-grid,.live-grid,.chat-meta{grid-template-columns:1fr}.table-card{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (width<=480px){.hero h1{font-size:1.5rem}.panel{padding:.75rem}.step-item{grid-template-columns:auto 1fr;gap:.5rem}.step-time{grid-column:2;font-size:.8rem}.tabs{gap:.35rem}.tab-button{padding:.55rem .7rem;font-size:.85rem}}.skip-link{background:var(--skip-bg);color:var(--text);border:2px solid var(--accent-blue);z-index:1000;border-radius:8px;padding:.6rem 1rem;font-size:.9rem;text-decoration:none;position:absolute;top:-100%;left:.5rem}.skip-link:focus{top:.5rem}.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}:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.tab-button:focus-visible,.action-button:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;box-shadow:0 0 0 4px #60a5fa40}.tab-button,.action-button{min-width:44px;min-height:44px}@media (prefers-reduced-motion:reduce){.wire-flow{animation:none}.tab-button:hover,.action-button:hover{transform:none}.resilience-toggle,.resilience-toggle-track,.resilience-toggle-thumb{transition:none}}
