:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}body{background:radial-gradient(circle at top,#eef4ff 0%,#f8fafc 45%,#f9fafb 100%);min-height:100vh;margin:0}#root{min-height:100vh}.app-shell{max-width:980px;margin:0 auto;padding:40px 20px 60px}.app-shell__header h1{letter-spacing:-.02em;margin:0;font-size:2.15rem}.app-shell__header p{color:#475569;margin-top:8px;font-size:1rem}.app-shell__main{margin-top:24px}.stack{gap:14px;display:grid}.card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;box-shadow:0 6px 18px #0f172a0a}.card h2{margin-top:0;margin-bottom:8px;font-size:1.25rem}.card p{color:#374151;margin-top:0;margin-bottom:12px}.card ul{margin:0;padding-left:20px}.card li+li{margin-top:6px}.intent-form{margin-top:12px}.intent-textarea{resize:vertical;width:100%;min-height:96px;font:inherit;border:1px solid #d1d5db;border-radius:10px;padding:12px}.row{gap:8px;margin-top:10px;display:flex}.btn{color:#111827;cursor:pointer;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 12px;transition:all .12s}.btn-primary{color:#fff;background:#2563eb;border-color:#1d4ed8;font-weight:600}.btn:hover{transform:translateY(-1px)}.chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip{color:#1f2937;cursor:pointer;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:6px 10px;font-size:.85rem}.tabs{gap:8px;margin-bottom:14px;display:flex}.tab{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:6px 10px}.tab--active{color:#1e40af;background:#eff6ff;border-color:#1d4ed8}.summary h3{margin:0 0 8px}.summary p{margin-bottom:14px}.kv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.kv-grid div{background:#fbfdff;border:1px solid #eef2f7;border-radius:10px;padding:10px}.wallet-grid{margin-top:12px}.kv-grid span{color:#6b7280;font-size:.85rem;display:block}.kv-grid strong{margin-top:2px;display:block}.warnings{color:#b45309;margin:14px 0 0}.ok{color:#047857;margin-top:14px}.error{color:#b91c1c;white-space:pre-line;margin-top:12px}.mono{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.json-view{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin:0;padding:12px;font-size:.85rem;overflow:auto}.typed-data-preview{margin-top:12px}.summary-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:10px}.mode-card{background:#f8fafc;padding:10px 12px}.mode-row{margin-top:0}.flow-intro{margin-top:12px}.flow-intro-prereq,.flow-intro-seq-title{color:#374151;margin:0 0 8px;font-size:.9rem;line-height:1.45}.flow-intro-seq-title{margin-top:10px}.flow-intro-steps{color:#374151;margin:0 0 0 1.1rem;padding:0;font-size:.88rem;line-height:1.5}.flow-intro-steps li+li{margin-top:4px}.cta-row .btn-primary{min-width:112px}.cta-row-product{align-items:stretch;gap:12px}.cta-row-product .btn-sign-submit{min-width:min(100%,300px);padding:14px 24px;font-size:1.08rem;font-weight:650}.summary-box span,.result-box span{color:#6b7280;margin-bottom:4px;font-size:.85rem;display:block}.result-box{background:#eff6ff;border:1px solid #dbeafe;border-radius:10px;margin-top:12px;padding:10px}.prepare-grid{margin-top:12px}.approval-box{background:#fffbeb;border:1px solid #fbbf24;border-radius:10px;margin-top:12px;padding:12px}.approval-box h3{margin:0 0 6px;font-size:1rem}.small-text{margin-top:10px;font-size:.8rem}.demo-banner{color:#1e3a8a;background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;margin-bottom:10px;padding:8px 10px;font-size:.85rem}.danger-banner{color:#991b1b;background:#fef2f2;border-color:#fca5a5;font-weight:600}.signer-warning{color:#92400e;background:#fffbeb;border-color:#f59e0b}.badge{color:#374151;background:#f3f4f6;border-radius:999px;padding:4px 8px;font-size:.8rem;font-weight:600;display:inline-block}.badge-ok{color:#166534;background:#dcfce7}.badge-warn{color:#92400e;background:#fef3c7}.diagnosis-card{margin-top:12px}.diagnosis-banner{margin:0 0 8px;font-size:1.1rem;font-weight:700}.status-line{justify-content:space-between;align-items:center;gap:10px;display:flex}.status-badge{border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.status-ready{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.status-pending{color:#92400e;background:#fffbeb;border-color:#fde68a}.status-submitted{color:#0e7490;background:#ecfeff;border-color:#a5f3fc}.status-filled{color:#166534;background:#dcfce7;border-color:#86efac}.status-failed{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.status-pending-inline{color:#92400e}.stepper{gap:8px;display:grid}.step{border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.step-dot{background:#cbd5e1;border-radius:999px;width:9px;height:9px}.step-done{background:#f0fdf4}.step-done .step-dot{background:#22c55e}.step-current{background:#eff6ff}.step-current .step-dot{background:#3b82f6}.step-pending{background:#f8fafc}.step-failed{background:#fef2f2}.step-failed .step-dot{background:#ef4444}.diagnosis-pass{background:#f0fdf4;border-color:#86efac}.diagnosis-warn{background:#fffbeb;border-color:#fcd34d}.diagnosis-fail{background:#fef2f2;border-color:#fca5a5}details summary{cursor:pointer;color:#374151;font-weight:600}@media (width<=720px){.kv-grid{grid-template-columns:1fr}.cta-row{flex-wrap:wrap}.cta-row .btn{flex:1;min-width:120px}}
