@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.text-gradient{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.shadow-soft{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-medium{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion: no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tomo-idv-container{min-height:100vh;background:linear-gradient(135deg,#f0f9ff 0%,#ffffff 50%,#faf5ff 100%);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.header{background:white;box-shadow:0 1px 3px #0000001a;border-bottom:1px solid #e5e7eb}.header-content{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center;height:80px}.logo{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.header-info{display:flex;align-items:center;gap:1.5rem}.connection-status{font-size:.875rem;color:#6b7280}.status-connected{display:flex;align-items:center;color:#059669}.status-disconnected{display:flex;align-items:center;color:#9ca3af}.status-dot{width:8px;height:8px;border-radius:50%;margin-right:.5rem}.status-dot.connected{background-color:#10b981}.status-dot.disconnected{background-color:#9ca3af}.session-info{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.session-label{font-weight:500}.session-id{font-family:Courier New,monospace;color:#111827;max-width:none;overflow:visible;text-overflow:clip;white-space:normal;word-break:break-all}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.left-panel,.right-panel{display:flex;flex-direction:column;gap:1.5rem}.results-panel{width:100%;margin-top:2rem}.results-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}@media (max-width: 1024px){.content-grid{grid-template-columns:1fr}}.product-section{grid-column:1}.product-card{background:white;border-radius:1rem;box-shadow:0 4px 12px #00000014;overflow:hidden;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.product-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0000001f}.product-image{height:180px;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);display:flex;align-items:center;justify-content:center}.product-info{text-align:center;color:#fff}.product-icon{font-size:2.5rem;margin-bottom:.5rem}.product-title{font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.product-subtitle{color:#bfdbfe;margin:0;font-size:.875rem}.product-details{padding:1rem}.product-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.product-name{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .125rem}.product-specs{color:#6b7280;margin:0;font-size:.75rem}.product-price{text-align:right}.price{font-size:1.125rem;font-weight:600;color:#111827}.shipping{font-size:.75rem;color:#059669}.product-features{margin-bottom:1rem}.feature{display:flex;align-items:center;font-size:.75rem;color:#6b7280;margin-bottom:.5rem}.feature-dot{width:6px;height:6px;border-radius:50%;margin-right:.5rem}.feature-dot.green{background-color:#10b981}.feature-dot.blue{background-color:#3b82f6}.feature-dot.purple{background-color:#8b5cf6}.purchase-button{width:100%;background:linear-gradient(135deg,#dc2626 0%,#ef4444 100%);color:#fff;padding:1rem 1.5rem;border-radius:.75rem;font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:all .3s ease-in-out;transform:scale(1);box-shadow:0 4px 15px #dc262640;position:relative;overflow:hidden}.purchase-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s}.purchase-button:hover:not(:disabled):before{left:100%}.purchase-button:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c 0%,#dc2626 100%);transform:scale(1.02);box-shadow:0 8px 25px #dc262659}.purchase-button:disabled{opacity:.5;cursor:not-allowed;transform:scale(1);box-shadow:0 2px 10px #0000001a;background:#e5e7eb;color:#9ca3af}.action-panel{grid-column:2;display:flex;flex-direction:column;gap:1.5rem}.action-section{background:white;border-radius:1rem;box-shadow:0 8px 25px #0000001f;padding:1.5rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.action-section:hover{transform:translateY(-2px);box-shadow:0 12px 35px #00000026}.section-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f3f4f6}.action-card{display:flex;flex-direction:column;gap:1rem}.action-header{display:flex;align-items:flex-start;gap:1rem}.action-icon{font-size:1.5rem;flex-shrink:0}.action-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 .25rem}.action-description{font-size:.875rem;color:#6b7280;margin:0;line-height:1.4}.primary-action-button{width:100%;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;padding:1.25rem 1.5rem;border-radius:1rem;font-size:1.125rem;font-weight:700;border:none;cursor:pointer;transition:all .3s ease-in-out;transform:scale(1);box-shadow:0 8px 25px #3b82f64d;position:relative;overflow:hidden}.primary-action-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s}.primary-action-button:hover:not(:disabled):before{left:100%}.primary-action-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%);transform:scale(1.02);box-shadow:0 12px 35px #3b82f666}.primary-action-button:disabled{opacity:.6;cursor:not-allowed;transform:scale(1);box-shadow:0 4px 15px #0000001a}.secondary-action-button{width:100%;background:linear-gradient(135deg,#059669 0%,#10b981 100%);color:#fff;padding:1.125rem 1.5rem;border-radius:1rem;font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:all .3s ease-in-out;transform:scale(1);box-shadow:0 6px 20px #05966940;position:relative;overflow:hidden}.secondary-action-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s}.secondary-action-button:hover:not(:disabled):before{left:100%}.secondary-action-button:hover:not(:disabled){background:linear-gradient(135deg,#047857 0%,#059669 100%);transform:scale(1.02);box-shadow:0 10px 30px #05966959}.secondary-action-button:disabled{opacity:.5;cursor:not-allowed;transform:scale(1);box-shadow:0 2px 10px #0000001a;background:#e5e7eb;color:#9ca3af}.utility-section{background:white;border-radius:1rem;box-shadow:0 4px 15px #00000014;padding:1.5rem}.utility-buttons{display:flex;flex-direction:column;gap:.75rem}.utility-button{width:100%;background:linear-gradient(135deg,#8b5cf6 0%,#a855f7 100%);color:#fff;padding:.875rem 1.25rem;border-radius:.75rem;font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:all .2s ease-in-out}.utility-button:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed 0%,#9333ea 100%);transform:scale(1.01)}.utility-button:disabled{opacity:.5;cursor:not-allowed;background:#e5e7eb;color:#9ca3af}.loading-content{display:flex;align-items:center;justify-content:center}.spinner{width:20px;height:20px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.status-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.status-card,.result-card,.dev-info-card{background:white;border-radius:1rem;box-shadow:0 4px 15px #00000014;padding:1.5rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.status-card:hover,.result-card:hover,.dev-info-card:hover{transform:translateY(-1px);box-shadow:0 8px 25px #0000001f}.status-title,.result-title,.dev-info-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem;display:flex;align-items:center}.status-icon{width:8px;height:8px;border-radius:50%;margin-right:.5rem}.status-icon.blue{background-color:#3b82f6}.status-icon.green{background-color:#10b981}.status-icon.purple{background-color:#8b5cf6}.status-content{display:flex;flex-direction:column;gap:.75rem}.status-item{display:flex;justify-content:space-between;align-items:center}.status-label{font-size:.875rem;color:#6b7280}.status-value{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-value.connected{background-color:#d1fae5;color:#065f46}.status-value.disconnected{background-color:#f3f4f6;color:#374151}.result-content{background-color:#f9fafb;border-radius:.5rem;padding:1rem}.json-display{background:#ffffff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.json-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-bottom:1px solid #e2e8f0}.json-type{font-size:.875rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.5rem}.json-type:before{content:"{ }";font-family:Courier New,monospace;font-size:.75rem;color:#8b5cf6;font-weight:700}.copy-button{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;border:none;padding:.5rem 1rem;border-radius:.5rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;display:flex;align-items:center;gap:.25rem}.copy-button:hover{background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.copy-button:active{transform:translateY(0)}.json-content{max-height:400px;overflow:auto}.result-json{font-size:.875rem;font-family:JetBrains Mono,Fira Code,Courier New,monospace;color:#1f2937;margin:0;padding:1rem;white-space:pre-wrap;word-break:break-word;line-height:1.6;background:#fafafa;border-radius:0;text-align:left}.result-json{color:#1f2937}.result-json{position:relative;background:#fafafa;border-left:4px solid #8b5cf6}.result-json{background-image:linear-gradient(90deg,transparent 0%,transparent 15px,rgba(139,92,246,.1) 15px,rgba(139,92,246,.1) 16px,transparent 16px);background-size:20px 100%;background-repeat:repeat-y}.no-result{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 2rem;text-align:center;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-radius:.75rem;border:1px solid #e2e8f0;position:relative;overflow:hidden}.no-result:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#10b981)}.no-result-icon{font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#8b5cf6;background:white;padding:1rem;border-radius:.5rem;box-shadow:0 4px 12px #8b5cf626;border:1px solid rgba(139,92,246,.2)}.no-result-text h4{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 .75rem;letter-spacing:-.025em}.no-result-text p{font-size:.875rem;color:#6b7280;margin:0;line-height:1.6;max-width:300px}.api-section{margin-bottom:1.5rem;padding:1rem;background:#f8fafc;border-radius:.75rem;border:1px solid #e2e8f0}.api-section:last-child{margin-bottom:0}.api-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.api-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.endpoint-info{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.endpoint-method{background:#3b82f6;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-weight:600;text-transform:uppercase}.endpoint-url{font-family:Courier New,monospace;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem}.api-description{font-size:.875rem;color:#6b7280;margin:0 0 1rem;line-height:1.4}.info-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.dev-info-content{display:flex;flex-direction:column;gap:1rem;font-size:.875rem;color:#6b7280}.feature-section{padding:.75rem;background:#f8fafc;border-radius:.5rem;border-left:3px solid #8b5cf6}.feature-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .5rem}.feature-section p{margin:0;line-height:1.4}.kyc-endpoints{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.endpoint-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;transition:all .2s ease-in-out}.endpoint-item:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.endpoint-code{display:flex;align-items:center;gap:.5rem;font-family:JetBrains Mono,Fira Code,Courier New,monospace}.endpoint-code .method{background:#3b82f6;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;min-width:50px;text-align:center}.endpoint-code .url{color:#1f2937;font-size:.875rem;font-weight:500;background:#ffffff;padding:.25rem .5rem;border-radius:.25rem;border:1px solid #e5e7eb}.endpoint-code .copy-icon{background:none;border:none;cursor:pointer;padding:.25rem;margin-left:.5rem;font-size:1rem;opacity:.7;transition:all .2s ease-in-out;border-radius:.25rem}.endpoint-code .copy-icon:hover{opacity:1;background:rgba(139,92,246,.1);transform:scale(1.1)}.endpoint-code .copy-icon:active{transform:scale(.95)}.test-button{padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease-in-out;color:#fff;min-width:120px;background:linear-gradient(135deg,#8b5cf6 0%,#a855f7 100%);box-shadow:0 4px 15px #8b5cf640}.test-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #8b5cf659;background:linear-gradient(135deg,#7c3aed 0%,#9333ea 100%)}.test-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 2px 10px #0000001a;background:#e5e7eb;color:#9ca3af}.test-button.base-url{background:linear-gradient(135deg,#059669 0%,#10b981 100%);box-shadow:0 4px 15px #05966940}.test-button.base-url:hover:not(:disabled){background:linear-gradient(135deg,#047857 0%,#059669 100%);box-shadow:0 6px 20px #05966959}@media (max-width: 768px){.endpoint-item{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem}.endpoint-code{justify-content:center}.test-button{width:100%;min-width:auto}}.result-json::-webkit-scrollbar{width:6px}.result-json::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.result-json::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.result-json::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.endpoint-item:has(.copy-icon){justify-content:center}.endpoint-item:has(.copy-icon) .endpoint-code{display:flex;align-items:center;gap:.5rem}.results-panel-compact{margin-top:1.5rem}.result-card-compact{background:white;border-radius:1rem;box-shadow:0 4px 15px #00000014;padding:1.25rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.result-card-compact:hover{transform:translateY(-1px);box-shadow:0 8px 25px #0000001f}.result-title-compact{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem;display:flex;align-items:center}.result-content-compact{background-color:#f9fafb;border-radius:.5rem;padding:.75rem}.json-display-compact{background:#ffffff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.json-header-compact{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-bottom:1px solid #e2e8f0}.json-type{font-size:.8125rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.5rem}.json-type:before{content:"{ }";font-family:Courier New,monospace;font-size:.6875rem;color:#8b5cf6;font-weight:700}.copy-button-compact{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;border:none;padding:.375rem .75rem;border-radius:.375rem;font-size:.6875rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;display:flex;align-items:center;gap:.25rem}.copy-button-compact:hover{background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.copy-button-compact:active{transform:translateY(0)}.json-content-compact{max-height:300px;overflow:auto}.result-json-compact{font-size:.75rem;font-family:JetBrains Mono,Fira Code,Courier New,monospace;color:#1f2937;margin:0;padding:.75rem;white-space:pre-wrap;word-break:break-word;line-height:1.5;background:#fafafa;border-radius:0;text-align:left}.no-result-compact{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;text-align:center;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-radius:.75rem;border:1px solid #e2e8f0;position:relative;overflow:hidden}.no-result-compact:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#10b981)}.no-result-icon{font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:2rem;font-weight:700;margin-bottom:.75rem;color:#8b5cf6;background:white;padding:.75rem;border-radius:.5rem;box-shadow:0 4px 12px #8b5cf626;border:1px solid rgba(139,92,246,.2)}.no-result-text h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .5rem;letter-spacing:-.025em}.no-result-text p{font-size:.8125rem;color:#6b7280;margin:0;line-height:1.5;max-width:250px}.result-json-compact::-webkit-scrollbar{width:4px}.result-json-compact::-webkit-scrollbar-track{background:#f1f1f1;border-radius:2px}.result-json-compact::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px}.result-json-compact::-webkit-scrollbar-thumb:hover{background:#a8a8a8}
