:root{--color-background:#e8e4df;--color-foreground:#1a1a1a;--color-primary:#4f9a85;--color-primary-foreground:#fff;--color-muted-foreground:#9a958f;--color-border:#d5d0cb;--color-error:#dc2626;--ink:#1a1a2e;--ink-secondary:#4a4a68;--ink-tertiary:#8888a4;--ink-faint:#b0b0c4;--surface-0:#f8f7f4;--surface-1:#fff;--surface-2:#f2f1ee;--surface-3:#eae9e4;--accent:#4338ca;--accent-hover:#3730a3;--accent-light:#eef2ff;--accent-border:#c7d2fe;--accent-glow:#4338ca14;--success:#059669;--success-light:#ecfdf5;--success-border:#a7f3d0;--warning:#d97706;--warning-light:#fffbeb;--warning-border:#fde68a;--error:#dc2626;--error-light:#fef2f2;--error-border:#fecaca;--border:#e5e4e0;--border-strong:#d4d3cf;--shadow-sm:0 1px 2px #1a1a2e0a,0 1px 3px #1a1a2e0f;--shadow-md:0 2px 4px #1a1a2e08,0 4px 12px #1a1a2e0f;--shadow-lg:0 4px 8px #1a1a2e08,0 8px 24px #1a1a2e14;--shadow-focus:0 0 0 3px #4338ca26;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:100px;font-family:DM Sans,system-ui,-apple-system,sans-serif}.primary{color:var(--color-primary)}.bg-primary{background-color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.border-border{border-color:var(--color-border)}.text-error,.bg-error{color:var(--color-error)}.bg-error{background-color:var(--color-error)}.app{max-width:960px;margin:0 auto;padding:24px 20px 48px}.home-header{text-align:center;margin-bottom:40px;padding:32px 0 28px;position:relative}.home-header:after{content:"";background:var(--accent);border-radius:1px;width:64px;height:2px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.home-header h1{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:1.75rem;font-weight:700;line-height:1.2}.home-header h1 .accent{color:var(--accent)}.subtitle{color:var(--ink-tertiary);letter-spacing:.02em;margin:6px 0 0;font-size:.9rem;font-weight:400}.wallet-connect{justify-content:center;align-items:center;gap:12px;margin-top:20px;display:flex}.contract-info{background:var(--surface-1);border-radius:var(--radius-md);border:1px solid var(--border);flex-wrap:wrap;gap:4px 24px;margin-bottom:24px;padding:16px 20px;display:flex}.contract-info p{color:var(--ink-secondary);margin:2px 0;font-size:.82rem}.contract-info strong{color:var(--ink);font-weight:600}.contract-info a{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.78rem;text-decoration:none}.contract-info a:hover{text-decoration:underline}.balance-card,.payment-card,.transfer-card{background:var(--surface-1);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:24px;transition:box-shadow .2s}.balance-card:hover,.payment-card:hover,.transfer-card:hover{box-shadow:var(--shadow-md)}.balance-card h3,.payment-card h3,.transfer-card h3{color:var(--ink);letter-spacing:-.01em;margin:0 0 4px;font-size:1.05rem;font-weight:700}.token-info{background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border);margin-bottom:16px;padding:12px 16px}.token-info p{color:var(--ink-secondary);margin:3px 0;font-size:.84rem}.token-info strong{color:var(--ink)}.balance-display{text-align:center;background:linear-gradient(135deg,var(--accent-light)0%,var(--surface-2)100%);border-radius:var(--radius-md);border:1px solid var(--accent-border);margin:16px 0;padding:28px 20px}.balance-amount{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:2.2rem;font-weight:700}.refresh-btn{background:var(--surface-2);color:var(--ink-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:100%;padding:10px 20px;font-family:DM Sans,system-ui,sans-serif;font-size:.88rem;font-weight:500;transition:all .15s}.refresh-btn:hover:not(:disabled){background:var(--surface-3);color:var(--ink);border-color:var(--border-strong)}.description{color:var(--ink-tertiary);margin:4px 0 20px;font-size:.88rem;line-height:1.55}.form-group{margin-bottom:16px}.form-group label{color:var(--ink-secondary);letter-spacing:.01em;margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.form-group input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--ink);width:100%;padding:11px 14px;font-family:DM Sans,system-ui,sans-serif;font-size:.9rem;transition:all .15s}.form-group input::placeholder{color:var(--ink-faint)}.form-group input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.form-group input:hover:not(:focus){border-color:var(--border-strong)}button{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px 20px;font-family:DM Sans,system-ui,sans-serif;font-size:.88rem;font-weight:600;line-height:1.4;transition:all .15s}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible{box-shadow:var(--shadow-focus);outline:none}.actions{gap:10px;margin-top:20px;display:flex}.sign-btn{background:var(--accent);color:#fff;flex:1}.sign-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md)}.execute-btn{background:var(--success);color:#fff;flex:1}.execute-btn:hover:not(:disabled){box-shadow:var(--shadow-md);background:#047857}.transfer-btn{background:var(--accent);color:#fff;width:100%;margin-top:12px;padding:12px 20px;font-weight:600}.transfer-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md)}.error{background:var(--error-light);border:1px solid var(--error-border);color:var(--error);border-radius:var(--radius-sm);word-break:break-word;margin-top:16px;padding:12px 16px;font-size:.85rem;line-height:1.5}.success{background:var(--success-light);border:1px solid var(--success-border);color:var(--success);border-radius:var(--radius-sm);margin-top:16px;padding:14px 16px}.success h4{margin:0 0 6px;font-size:.9rem}.success a{color:var(--accent);font-weight:600}.signature-info{background:var(--accent-light);border-radius:var(--radius-sm);border:1px solid var(--accent-border);margin-top:16px;padding:16px}.signature-info h4{color:var(--accent);margin:0 0 10px;font-size:.9rem;font-weight:700}.signature-info p{color:var(--ink-secondary);margin:5px 0;font-size:.82rem}.signature-info code{background:var(--surface-1);word-break:break-all;border:1px solid var(--border);color:var(--ink);border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:.78rem}.truncate{max-width:100%;display:inline-block}.transfers-section{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=768px){.transfers-section{grid-template-columns:1fr}}footer{text-align:center;color:var(--ink-faint);border-top:1px solid var(--border);margin-top:48px;padding-top:24px;font-size:.82rem}.x402-section{margin-bottom:40px}.x402-section h2,.manual-section h2{color:var(--ink);border-bottom:1px solid var(--border);letter-spacing:-.01em;margin-bottom:16px;padding-bottom:12px;font-size:1.15rem;font-weight:700}.manual-section h2{color:var(--ink-secondary)}.x402-card{background:var(--surface-1);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:28px;position:relative;overflow:hidden}.x402-card:before{content:"";background:linear-gradient(90deg,var(--accent),#7c3aed);border-radius:var(--radius-lg)var(--radius-lg)0 0;height:3px;position:absolute;top:0;left:0;right:0}.x402-card h3{color:var(--ink);letter-spacing:-.01em;margin:0 0 4px;font-size:1.15rem;font-weight:700}.x402-flow-indicator{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-bottom:24px;padding:16px 12px;display:flex}.x402-flow-indicator span{border-radius:var(--radius-pill);background:var(--surface-1);color:var(--ink-faint);border:1px solid var(--border);white-space:nowrap;padding:5px 14px;font-size:.78rem;font-weight:600;transition:all .25s}.x402-flow-indicator span.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 8px #4338ca40}.x402-flow-indicator span.done{background:var(--success-light);color:var(--success);border-color:var(--success-border)}.x402-flow-indicator .arrow{color:var(--ink-faint);background:0 0;border:none;padding:0 2px;font-size:.72rem}.x402-actions{text-align:center}.x402-actions .endpoint-info{background:var(--surface-2);border-radius:var(--radius-sm);text-align:left;border:1px solid var(--border);color:var(--ink-secondary);margin-bottom:20px;padding:12px 16px;font-size:.85rem}.x402-actions .endpoint-info strong{color:var(--ink)}.x402-actions .endpoint-info code{color:var(--accent);word-break:break-all;margin-top:6px;font-family:JetBrains Mono,monospace;font-size:.8rem;display:block}.x402-btn{border-radius:var(--radius-sm);margin:4px;padding:11px 24px;font-size:.88rem;font-weight:600;transition:all .15s}.x402-btn.primary{background:var(--accent);color:#fff;border:none}.x402-btn.primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 2px 12px #4338ca33}.x402-btn.secondary{background:var(--surface-2);color:var(--ink-secondary);border:1px solid var(--border)}.x402-btn.secondary:hover:not(:disabled){background:var(--surface-3);color:var(--ink);border-color:var(--border-strong)}.x402-status{text-align:center;color:var(--ink-secondary);padding:32px 20px;font-size:.95rem}.x402-status .small{color:var(--ink-faint);margin-top:8px;font-size:.82rem}.x402-payment-required,.x402-signed{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);padding:20px}.x402-payment-required h4{color:var(--warning);margin:0 0 14px;font-size:.95rem;font-weight:700}.x402-signed h4{color:var(--accent);margin:0 0 14px;font-size:.95rem;font-weight:700}.payment-details,.signature-details{background:var(--surface-1);border-radius:var(--radius-sm);border:1px solid var(--border);margin-bottom:16px;padding:14px 16px}.payment-details p,.signature-details p{color:var(--ink-secondary);margin:6px 0;font-size:.84rem}.payment-details strong,.signature-details strong{color:var(--ink)}.payment-details code,.signature-details code{background:var(--surface-2);word-break:break-all;color:var(--ink);border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:.78rem}.x402-success{background:var(--success-light);border:1px solid var(--success-border);border-radius:var(--radius-md);padding:20px}.x402-success h4{color:var(--success);margin:0 0 10px;font-size:.95rem;font-weight:700}.x402-success a{color:var(--accent);word-break:break-all;font-weight:600}.content-preview{background:var(--surface-1);border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--ink-secondary);max-height:200px;padding:14px;font-family:JetBrains Mono,monospace;font-size:.82rem;overflow-x:auto}.x402-error{background:var(--error-light);border:1px solid var(--error-border);border-radius:var(--radius-md);padding:20px}.x402-error h4{color:var(--error);margin:0 0 8px;font-size:.95rem;font-weight:700}.x402-error p{color:var(--error);margin:4px 0;font-size:.88rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.balance-card,.x402-card,.payment-card,.transfer-card{animation:.4s both fadeInUp}.x402-section{animation:.4s .1s both fadeInUp}.manual-section{animation:.4s .2s both fadeInUp}@keyframes modalIn{0%{opacity:0;transform:scale(.92)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.app{padding:16px 14px 40px}.home-header h1{font-size:1.4rem}.contract-info{flex-direction:column;gap:2px}.balance-amount{font-size:1.6rem}.x402-card{padding:20px 16px}.x402-flow-indicator{gap:4px;padding:12px 8px}.x402-flow-indicator span{padding:4px 10px;font-size:.72rem}.x402-btn{padding:10px 16px;font-size:.84rem}}