:root{--color-background:#121416;--color-surface:#191c1e;--color-surface-raised:#202426;--color-surface-soft:#151819;--color-foreground:#f3f6ee;--color-muted:#a8b0a8;--color-subtle:#7d8781;--color-border:#343a38;--color-border-strong:#4b5650;--color-accent:#62d68f;--color-accent-strong:#35b76b;--color-accent-muted:#143322;--color-warning:#efbd62;--color-warning-muted:#3a2b12;--color-danger:#ff7468;--color-danger-muted:#3b1d1b;--color-info:#8ab4ff;--color-info-muted:#17202c;--color-code:#d8e7d7;--shadow-panel:0 18px 54px #00000052;--radius:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;color:var(--color-foreground);background:var(--color-background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--color-background)}body{background:var(--color-background);min-width:320px;margin:0}button,input,textarea,summary{font:inherit}button,summary{touch-action:manipulation}button{min-height:44px}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,.skip-link:focus-visible{outline:3px solid var(--color-info);outline-offset:3px}button:disabled,input:disabled,textarea:disabled{cursor:not-allowed}.skip-link{z-index:100;border-radius:var(--radius);color:#06120b;background:var(--color-accent);padding:10px 14px;font-weight:800;text-decoration:none;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.shell{min-height:100dvh;padding:24px}.app-shell{width:min(1440px,100%);margin:0 auto}.topbar{align-items:end;gap:var(--space-6);grid-template-columns:minmax(0,1fr) auto;padding:8px 0 22px;display:grid}.brand-block{min-width:0}.eyebrow,.section-kicker{color:var(--color-accent);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}h1,h2{color:var(--color-foreground);letter-spacing:0;margin:0}h1{max-width:760px;margin-top:8px;font-size:46px;line-height:1.06}h2{margin-top:4px;font-size:22px;line-height:1.2}.lead{max-width:760px;color:var(--color-muted);margin:14px 0 0;font-size:17px;line-height:1.65}.topbar-status{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;max-width:560px;display:flex}.phase-pill,.status-chip,.trace-count{border:1px solid var(--color-border);border-radius:var(--radius);min-height:34px;color:var(--color-muted);background:var(--color-surface);align-items:center;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.phase-pill{color:#07110b;background:var(--color-accent);border-color:var(--color-accent)}.status-chip-warning{color:var(--color-warning);background:var(--color-warning-muted);border-color:var(--color-warning)}.phase-idle{color:var(--color-muted);background:var(--color-surface);border-color:var(--color-border)}.phase-signing,.phase-signed,.phase-relaying,.phase-refreshing,.phase-checking{color:#121008;background:var(--color-warning);border-color:var(--color-warning)}.phase-error{color:#160807;background:var(--color-danger);border-color:var(--color-danger)}.workspace{gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(320px,390px);align-items:start;display:grid}.workspace-main,.workspace-sidebar{gap:var(--space-5);min-width:0;display:grid}.workspace-sidebar{position:sticky;top:20px}.surface{border:1px solid var(--color-border);border-radius:var(--radius);min-width:0;padding:var(--space-5);background:var(--color-surface);box-shadow:var(--shadow-panel)}.section-header{gap:4px;min-width:0;display:grid}.section-header p:not(.section-kicker),.signing-data-header small,.trace-panel-header small,.counter-state-header small,.typed-data-preview summary small,.trace-disclosure summary small{color:var(--color-muted);line-height:1.55}.setup-grid{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);display:grid}.field{gap:var(--space-2);min-width:0;color:var(--color-foreground);font-weight:800;display:grid}.field input{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-height:46px;color:var(--color-code);background:var(--color-surface-soft);padding:11px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.wallet-picker{gap:var(--space-2);min-width:0;display:grid}.wallet-picker-header{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-foreground);font-weight:800;display:flex}.wallet-picker-header button,.wallet-disconnect-button,.counter-state-header button,.tamper-actions button{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-foreground);background:var(--color-surface-raised);cursor:pointer;padding:8px 12px;transition:border-color .18s,background-color .18s,color .18s}.wallet-picker-header button:not(:disabled):hover,.counter-state-header button:not(:disabled):hover,.tamper-actions button:not(:disabled):hover{border-color:var(--color-accent);color:var(--color-accent)}.wallet-picker-header button:disabled,.counter-state-header button:disabled,.tamper-actions button:disabled{color:var(--color-subtle);background:var(--color-surface-soft)}.wallet-card{align-items:center;gap:var(--space-3);border:1px solid color-mix(in srgb, var(--color-accent) 55%, var(--color-border));border-radius:var(--radius);min-height:68px;color:var(--color-foreground);background:var(--color-accent-muted);text-align:left;grid-template-columns:40px minmax(0,1fr);padding:12px;display:grid}.wallet-card-connected{grid-template-columns:40px minmax(0,1fr) auto}.wallet-card img,.wallet-fallback{border-radius:var(--radius);width:40px;height:40px}.wallet-card img{object-fit:contain;background:#fff}.wallet-fallback{color:#06120b;background:var(--color-accent);place-items:center;font-weight:900;display:grid}.wallet-card span{min-width:0}.wallet-card strong,.wallet-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.wallet-disconnect-button{min-width:64px;color:var(--color-danger);background:color-mix(in srgb, var(--color-danger-muted) 68%, transparent);white-space:nowrap}.wallet-disconnect-button:not(:disabled):hover{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-muted)}.wallet-disconnect-button:disabled{color:var(--color-subtle);background:var(--color-surface-soft)}.wallet-card small,.wallet-empty{color:var(--color-muted);font-size:13px}.wallet-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface-soft);min-height:68px;margin:0;padding:14px;line-height:1.5}.actions{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.actions button{align-items:center;gap:3px var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);min-height:96px;color:var(--color-foreground);background:var(--color-surface-raised);text-align:left;cursor:pointer;grid-template-rows:auto auto;grid-template-columns:34px minmax(0,1fr);padding:13px;transition:transform .18s,border-color .18s,background-color .18s;display:grid}.actions button:hover{border-color:var(--color-accent);background:#242a27;transform:translateY(-1px)}.actions button:disabled{color:var(--color-subtle);background:var(--color-surface-soft);transform:none}.actions button>span{border-radius:var(--radius);width:34px;height:34px;color:var(--color-muted);background:var(--color-surface-soft);grid-row:1/span 2;place-items:center;font-size:12px;font-weight:900;display:grid}.actions button strong,.actions button small{min-width:0;display:block}.actions button strong{overflow-wrap:anywhere;font-size:14px}.actions button small{color:var(--color-muted);font-size:12px;line-height:1.35}.actions .primary-action{border-color:var(--color-info);color:#07111f;background:var(--color-info)}.actions .primary-action>span{color:var(--color-info);background:#07111f}.actions .primary-action small{color:#17202c}.actions .primary-action:hover{border-color:var(--color-info);background:#6fa2ee}.actions .primary-action:disabled{border-color:var(--color-border);color:var(--color-subtle);background:var(--color-surface-soft)}.actions button.ready{border-color:color-mix(in srgb, var(--color-info) 58%, var(--color-border));background:var(--color-info-muted)}.actions button.ready>span{color:var(--color-info);background:#0d1a2a}.actions button.ready small,.actions button.active small,.actions button.complete small,.actions button.error small{color:var(--color-muted)}.actions button.active{border-color:var(--color-warning);color:var(--color-foreground);background:var(--color-warning-muted)}.actions button.active>span{color:#121008;background:var(--color-warning);animation:1.3s ease-in-out infinite relay-pulse}.actions button.complete{border-color:color-mix(in srgb, var(--color-accent) 60%, var(--color-border));color:var(--color-foreground);background:var(--color-accent-muted)}.actions button.complete>span{color:#06120b;background:var(--color-accent)}.actions button.error{border-color:var(--color-danger);color:var(--color-foreground);background:var(--color-danger-muted)}.actions button.error>span{color:#160807;background:var(--color-danger)}.actions button.ready:disabled,.actions button.active:disabled,.actions button.complete:disabled,.actions button.error:disabled{color:var(--color-foreground)}.status{margin:var(--space-5) 0 0;border:1px solid color-mix(in srgb, var(--color-info) 42%, var(--color-border));border-radius:var(--radius);color:var(--color-foreground);overflow-wrap:anywhere;background:#17202c;padding:12px 14px;line-height:1.5}.signing-data-panel{gap:var(--space-4);display:grid}.signing-data-header,.relay-progress-header,.trace-panel-header,.counter-state-header{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto;display:grid}.signing-data-header small{margin-top:6px;display:block}.tamper-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;max-width:390px;display:flex}.tamper-actions button{min-height:36px;color:var(--color-warning);padding:7px 9px;font-size:13px}.tamper-actions button:hover{border-color:var(--color-warning);color:var(--color-warning);background:var(--color-warning-muted)}.tamper-actions button:disabled{color:var(--color-subtle);background:var(--color-surface-soft)}.request-editor{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.request-field{gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-soft);min-width:0;padding:12px;display:grid}.request-field span,.request-field strong,.request-field small{min-width:0;display:block}.request-field strong{color:var(--color-foreground);font-size:14px}.request-field small{color:var(--color-muted);margin-top:4px;font-size:12px;line-height:1.45}.request-field input,.request-field textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;min-width:0;color:var(--color-code);background:#0f1213;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.45}.request-field input{min-height:44px}.request-field textarea{resize:vertical;min-height:90px}.request-field input:disabled,.request-field textarea:disabled{color:var(--color-subtle);background:#16191a}.typed-data-preview,.trace-disclosure{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-soft);min-width:0;display:grid}.typed-data-preview summary,.trace-disclosure summary{cursor:pointer;gap:3px;padding:14px;list-style:none;display:grid}.typed-data-preview summary::-webkit-details-marker{display:none}.trace-disclosure summary::-webkit-details-marker{display:none}.typed-data-preview summary span,.trace-disclosure summary span{color:var(--color-foreground);font-weight:800}.typed-data-preview[open] summary,.trace-disclosure[open] summary{border-bottom:1px solid var(--color-border)}.typed-data-preview pre{max-height:430px;color:var(--color-code);white-space:pre-wrap;overflow-wrap:anywhere;background:#0f1213;margin:0;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;overflow:auto}.relay-progress{gap:var(--space-4);scroll-margin-top:var(--space-5);display:grid}.relay-progress:focus{outline:3px solid var(--color-info);outline-offset:3px}.relay-progress-header strong{border-radius:var(--radius);color:#06120b;background:var(--color-accent);align-items:center;min-height:34px;padding:6px 10px;font-size:13px;font-weight:900;display:inline-flex}.relay-progress[data-phase=error] .relay-progress-header strong{color:#160807;background:var(--color-danger)}.relay-progress[data-phase=idle] .relay-progress-header strong{color:var(--color-muted);background:var(--color-surface-raised)}.relay-progress[data-phase=checking] .relay-progress-header strong,.relay-progress[data-phase=signing] .relay-progress-header strong,.relay-progress[data-phase=signed] .relay-progress-header strong,.relay-progress[data-phase=relaying] .relay-progress-header strong,.relay-progress[data-phase=refreshing] .relay-progress-header strong{color:#121008;background:var(--color-warning)}.relay-progress-header small,.relay-detail,.relay-step small{color:var(--color-muted);font-size:13px}.relay-steps{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.relay-step{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-soft);grid-template-columns:30px minmax(0,1fr);min-width:0;padding:10px;display:grid}.relay-step>span{border-radius:var(--radius);width:30px;height:30px;color:var(--color-muted);background:var(--color-surface-raised);place-items:center;font-size:12px;font-weight:900;display:grid}.relay-step strong,.relay-step small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.relay-step strong{color:var(--color-foreground);font-size:13px}.relay-step.completed{border-color:color-mix(in srgb, var(--color-accent) 55%, var(--color-border));background:var(--color-accent-muted)}.relay-step.completed>span{color:#06120b;background:var(--color-accent)}.relay-step.active{border-color:var(--color-warning);background:var(--color-warning-muted)}.relay-step.active>span{color:#121008;background:var(--color-warning);animation:1.3s ease-in-out infinite relay-pulse}.relay-detail{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-soft);overflow-wrap:anywhere;margin:0;padding:12px;line-height:1.5}.trace-panel{gap:var(--space-4);display:grid}.trace-count{color:var(--color-accent)}.trace-current{align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-soft);grid-template-columns:40px minmax(0,1fr);padding:12px;display:grid}.trace-current>span{border-radius:var(--radius);width:40px;height:40px;color:var(--color-muted);background:var(--color-surface-raised);place-items:center;font-size:13px;font-weight:900;display:grid}.trace-current strong,.trace-current small{display:block}.trace-current small{color:var(--color-muted);margin-top:3px}.trace-current.active{border-color:var(--color-warning);background:var(--color-warning-muted)}.trace-current.active>span{color:#121008;background:var(--color-warning)}.trace-current.done{border-color:color-mix(in srgb, var(--color-accent) 55%, var(--color-border));background:var(--color-accent-muted)}.trace-current.done>span{color:#06120b;background:var(--color-accent)}.trace-current.error{border-color:var(--color-danger);background:var(--color-danger-muted)}.trace-current.error>span{color:#160807;background:var(--color-danger)}.trace-current.skipped{border-color:var(--color-border-strong);background:var(--color-surface-soft)}.trace-current.skipped>span{color:var(--color-background);background:var(--color-subtle)}.trace-warning{border:1px solid var(--color-danger);border-radius:var(--radius);color:var(--color-danger);background:var(--color-danger-muted);margin:0;padding:12px}.actor-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));padding:14px 14px 0;display:grid}.actor-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-raised);min-width:0;padding:12px}.actor-card strong,.actor-card small{display:block}.actor-card strong{color:var(--color-foreground)}.actor-card small{color:var(--color-muted);margin-top:6px;font-size:13px;line-height:1.45}.trace-list{gap:var(--space-3);margin:0;padding:14px;list-style:none;display:grid}.trace-step{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-raised);grid-template-columns:42px minmax(0,1fr);min-width:0;padding:14px;display:grid}.trace-step.waiting{background:#181b1c}.trace-step.active{border-color:var(--color-warning);background:var(--color-warning-muted)}.trace-step.done{border-color:color-mix(in srgb, var(--color-accent) 55%, var(--color-border));background:var(--color-accent-muted)}.trace-step.error{border-color:var(--color-danger);background:var(--color-danger-muted)}.trace-step.skipped{border-color:var(--color-border-strong);background:var(--color-surface-soft)}.trace-index{border-radius:var(--radius);width:34px;height:34px;color:var(--color-muted);background:var(--color-surface-soft);place-items:center;font-size:12px;font-weight:900;display:grid}.trace-step.active .trace-index{color:#121008;background:var(--color-warning);animation:1.3s ease-in-out infinite relay-pulse}.trace-step.done .trace-index{color:#06120b;background:var(--color-accent)}.trace-step.error .trace-index{color:#160807;background:var(--color-danger)}.trace-step.skipped .trace-index{color:var(--color-background);background:var(--color-subtle)}.trace-body{min-width:0}.trace-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.trace-title-row strong{color:var(--color-foreground)}.trace-title-row span{border-radius:var(--radius);color:var(--color-muted);background:var(--color-surface-soft);flex:none;padding:4px 8px;font-size:12px;font-weight:900}.trace-step.active .trace-title-row span{color:#121008;background:var(--color-warning)}.trace-step.done .trace-title-row span{color:#06120b;background:var(--color-accent)}.trace-step.error .trace-title-row span{color:#160807;background:var(--color-danger)}.trace-step.skipped .trace-title-row span{color:var(--color-background);background:var(--color-subtle)}.trace-body p{gap:var(--space-2);color:var(--color-muted);grid-template-columns:44px minmax(0,1fr);margin:8px 0 0;font-size:14px;line-height:1.55;display:grid}.trace-body b{color:var(--color-foreground)}.trace-details{gap:var(--space-2);margin:12px 0 0;display:grid}.trace-details div{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:#0f1213;grid-template-columns:minmax(120px,180px) minmax(0,1fr);min-width:0;padding:10px;display:grid}.trace-details dt{color:var(--color-muted);font-size:12px;font-weight:900}.trace-details dd{overflow-wrap:anywhere;white-space:pre-wrap;color:var(--color-code);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5}.inspector-panel,.counter-state{gap:var(--space-4);display:grid}.facts,.state-grid{gap:var(--space-3);margin:0;display:grid}.facts div,.state-grid div{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-soft);min-width:0;padding:12px}.state-grid-wide{grid-column:1/-1}.facts dt,.state-grid dt{color:var(--color-muted);text-transform:uppercase;font-size:12px;font-weight:900}.facts dd,.state-grid dd{overflow-wrap:anywhere;color:var(--color-code);margin:5px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.45}.metric-tile{border-color:color-mix(in srgb, var(--color-accent) 55%, var(--color-border))!important;background:var(--color-accent-muted)!important}.metric-tile dd{color:var(--color-accent);font-size:32px;font-weight:900;line-height:1.1}@media (width<=1180px){.workspace{grid-template-columns:1fr}.workspace-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));position:static}}@media (width<=900px){.shell{padding:16px}.topbar{grid-template-columns:1fr}.topbar-status{justify-content:flex-start}.setup-grid,.actions,.request-editor,.workspace-sidebar,.relay-steps{grid-template-columns:1fr}}@media (width<=640px){.shell{padding:12px}.surface{padding:16px}h1{font-size:34px}h2{font-size:20px}.lead{font-size:16px}.signing-data-header,.relay-progress-header,.trace-panel-header,.counter-state-header{grid-template-columns:1fr}.tamper-actions{justify-content:flex-start;max-width:none}.trace-step,.trace-details div{grid-template-columns:1fr}.trace-title-row{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes relay-pulse{0%,to{transform:scale(1)}50%{transform:scale(.92)}}
