:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e7eefc;background:#08111f;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{color:#e7eefc;background:radial-gradient(circle at top,#3b82f633,#0000 0 35%),radial-gradient(circle at 100%,#a855f72e,#0000 0 30%),#08111f;min-width:320px;min-height:100vh;margin:0}button,select,input,textarea{font:inherit}a{color:#8dc5ff}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{background:#080f1fe0;border:1px solid #94a3b833;border-radius:18px;box-shadow:0 18px 40px #040a1859}.hero{padding:1.35rem}.hero h1{margin:0 0 .3rem;font-size:clamp(1.8rem,3vw,2.6rem)}.hero p{color:#c8d5f2;margin:.25rem 0}.hero-badges{flex-wrap:wrap;gap:.5rem;margin-top:.8rem;display:flex}.badge{background:#0f172ae6;border:1px solid #94a3b840;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:.85rem;display:inline-flex}.badge-good{color:#b5f7c4;border-color:#22c55e59}.badge-info{color:#c7e3ff;border-color:#3b82f659}.badge-alert{color:#fcd4d4;border-color:#f8717159}.tabs{flex-wrap:wrap;gap:.55rem;display:flex}.tab-button,.action-button{color:#e7eefc;cursor:pointer;background:#0f172aeb;border:1px solid #94a3b833;border-radius:12px;padding:.65rem .95rem;transition:transform .15s,border-color .15s,background .15s}.tab-button:hover,.action-button:hover{border-color:#60a5fa8c;transform:translateY(-1px)}.tab-button.active{background:linear-gradient(135deg,#2563ebd9,#7c3aedcc);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:#0f172acc;border:1px solid #94a3b826;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.75rem .9rem;display:grid}.step-item.done{border-color:#22c55e59}.step-item.active{border-color:#60a5fa8c;box-shadow:inset 0 0 0 1px #60a5fa47}.step-number{background:#1e293bf2;border:1px solid #94a3b82e;border-radius:999px;place-items:center;width:2rem;height:2rem;font-weight:700;display:grid}.step-title{font-weight:700}.step-detail{color:#bed0f6;font-size:.92rem}.step-time{color:#93c5fd;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:#b3d4ff;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:#0f172abf;border-radius:10px;padding:.55rem .65rem}.label{color:#9ab3e7;margin-bottom:.2rem;font-size:.82rem;display:block}.value{word-break:break-all;font-family:SFMono-Regular,Consolas,monospace}.wire-diagram{background:#060c18e6;border:1px solid #94a3b824;border-radius:14px;margin:.9rem 0;padding:.5rem}.wire-diagram svg{width:100%;height:auto}.wire-path{fill:none;stroke-width:6px;stroke-linecap:round;stroke-dasharray:18 10;opacity:.85}.wire-blue{stroke:#60a5fa}.wire-purple{stroke:#c084fc}.wire-flow{animation:1.2s linear infinite wirePulse}.node-dot{fill:#f8fafc}@keyframes wirePulse{0%{stroke-dashoffset:0}to{stroke-dashoffset:-112px}}.match-card{background:#071c14e6;border:1px solid #22c55e4d;margin-top:.9rem;padding:1rem}.match-card h3{color:#b7f5c8}.formula{background:#060c18f2;border:1px solid #94a3b829;border-radius:12px;padding:.9rem;overflow-x:auto}.table-card table{border-collapse:collapse;width:100%}.table-card th,.table-card td{text-align:left;vertical-align:top;border-bottom:1px solid #94a3b824;padding:.7rem .5rem}.table-card th{color:#cfe1ff}.quote{color:#d8e6ff;background:#0c1424e6;border-left:3px solid #60a5faa6;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{color:#e7eefc;background:#0f172ad9;border:1px solid #94a3b833;border-radius:10px;width:100%;padding:.7rem .8rem}.message-list{gap:.7rem;display:grid}.message-card{background:#0b1222e6;border:1px solid #94a3b829;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{color:#bbf7d0;background:#16a34a2e}.status-pending{color:#bfdbfe;background:#3b82f629}.status-tampered{color:#fecaca;background:#dc262633}.notice-card,.loading-card{padding:.85rem 1rem}.notice-card{border-color:#f8717157}.footer-note{color:#9eb6e6;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{color:#e7eefc;z-index:1000;background:#1e293b;border:2px solid #60a5fa;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-offset:2px;outline:2px solid #60a5fa}.tab-button:focus-visible,.action-button:focus-visible{outline-offset:2px;outline:2px solid #60a5fa;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}}
