@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";#root{max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh}.app-container{display:flex;flex-direction:column;gap:2rem}.header{text-align:center;margin-bottom:3rem}.header h1{font-size:3rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header p{font-size:1.1rem;color:var(--text-secondary);margin:0}.connect-section{display:flex;justify-content:center;margin-bottom:2rem}.connect-button{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-hover));color:#fff;border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:600;border-radius:12px;box-shadow:0 4px 15px #3b82f64d;transition:all .3s ease;cursor:pointer}.connect-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.connect-button:active{transform:translateY(0)}.connected-info{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:1rem 2rem;border-radius:12px;text-align:center;box-shadow:0 4px 15px #10b9814d}.connected-info .address{font-family:Courier New,monospace;font-size:.9rem;opacity:.9;margin-top:.5rem}.connection-status{display:flex;justify-content:flex-end;align-items:center;gap:1rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.connection-status p{margin:0;color:var(--text-secondary)}.connection-status button{background-color:var(--surface-color);border:1px solid var(--border-color);color:var(--danger-color)}.connection-status button:hover:not(:disabled){background-color:#fef2f2}.info-box,.module-box{background-color:var(--surface-color);padding:2rem;border-radius:16px;box-shadow:0 8px 32px #0000001a;border:1px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease}.info-box:hover,.module-box:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.modules-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}@media (max-width: 768px){.modules-grid{grid-template-columns:1fr}}.info-box h2,.module-box h2{margin-top:0;margin-bottom:1.5rem;font-size:1.25rem;color:var(--text-primary);padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.info-box p{display:flex;justify-content:space-between;align-items:center;font-size:1rem;margin:.75rem 0}.info-box strong{color:var(--text-secondary)}.balance-value{font-weight:600;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;padding:8px 16px;border-radius:20px;font-size:1.1rem;display:inline-block;min-width:120px;text-align:center;box-shadow:0 2px 8px #1d4ed833}.module-box form{display:grid;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--text-primary);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.form-group input{padding:12px 16px;border:2px solid var(--border-color);border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fafafa}.form-group input:focus{border-color:var(--primary-color);background:#fff;box-shadow:0 0 0 4px #3b82f61a}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-hover));color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3b82f64d}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.btn-secondary{background:#fff;color:var(--secondary-color);border:2px solid var(--border-color);padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:var(--background-color);border-color:var(--secondary-color)}.approve-form{grid-template-columns:1fr auto;align-items:center}.create-escrow-form{grid-template-columns:1fr 1fr;gap:.75rem 1rem}.full-width{grid-column:1 / -1}.create-escrow-form button{grid-column:2 / -1;justify-self:end}form button{background-color:var(--primary-color);color:#fff}form button:hover:not(:disabled){background-color:var(--primary-color-hover)}.escrow-list{background:var(--surface-color);border-radius:16px;padding:2rem;box-shadow:0 8px 32px #0000001a}.table-container{margin-top:1rem;overflow-x:auto;border-radius:12px;border:1px solid var(--border-color)}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:1.5rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}th{color:var(--text-secondary);font-weight:600;background:#f8fafc;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}tbody tr:last-child td{border-bottom:none}.status-badge{padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:capitalize;display:inline-block;min-width:80px;text-align:center;box-shadow:0 2px 8px #0000001a}.status-active{background-color:#dbeafe;color:#1e40af}.status-pending{background-color:#f1f5f9;color:#475569}.status-released{background-color:#e0f2fe;color:#0369a1;border:1px solid #7dd3fc}.status-disputed{background-color:#fef9c3;color:#854d0e}.status-completed{background-color:#dcfce7;color:#166534}.auto-resolve-timer,.auto-resolve-ready{margin-top:8px;padding:6px 12px;border-radius:12px;font-size:.85rem;display:flex;align-items:center;gap:8px}.auto-resolve-timer{background-color:#f0f9ff;border:1px solid #bae6fd}.auto-resolve-ready{background-color:#fef3c7;border:1px solid #fbbf24;flex-wrap:wrap}.auto-resolve-status.active{color:#0369a1;font-weight:500}.auto-resolve-status.expired{color:#d97706;font-weight:600}.auto-resolve-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:4px 8px;font-size:.75rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap}.auto-resolve-btn:hover:not(:disabled){background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 4px 12px #d977064d}.auto-resolve-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.action-cell button{background:linear-gradient(135deg,var(--secondary-color),#475569);color:#fff;padding:8px 16px;font-size:.9rem;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #64748b4d}.action-cell button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #64748b66}.action-cell button:disabled{opacity:.5;cursor:not-allowed;transform:none}.status-message{margin-top:1rem;padding:1rem;border-radius:12px;font-weight:500}.status-message.success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border:1px solid #22c55e}.status-message.error{background:linear-gradient(135deg,#fef2f2,#fecaca);color:#dc2626;border:1px solid #ef4444}.status-message.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #f59e0b}.status-message code{font-family:Courier New,monospace;background:#0000001a;padding:2px 6px;border-radius:4px;font-size:.9rem;word-break:break-all}@media (max-width: 768px){#root{padding:1rem}.header h1{font-size:2rem}.modules-grid{grid-template-columns:1fr;gap:1rem}.form-group input{font-size:16px}.table-container{font-size:.9rem}th,td{padding:1rem .5rem}}.notification-container{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px;max-width:400px}.notification{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-radius:12px;box-shadow:0 8px 32px #00000026;animation:slideIn .3s ease-out;border-left:4px solid}.notification p{margin:0;font-weight:600;flex:1}.notification-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0;margin-left:1rem;opacity:.7;transition:opacity .2s}.notification-close:hover{opacity:1}.notification-success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border-left-color:#22c55e}.notification-info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border-left-color:#3b82f6}.notification-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-left-color:#f59e0b}.notification-error{background:linear-gradient(135deg,#fef2f2,#fecaca);color:#dc2626;border-left-color:#ef4444}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.notification-container{top:10px;right:10px;left:10px;max-width:none}}.inline-approve-btn{font-size:.85rem;padding:6px 12px;white-space:nowrap}.inline-approve-form{min-width:280px}@media (max-width: 768px){.inline-approve-form{min-width:auto}.inline-approve-form form{flex-direction:column;align-items:stretch}.inline-approve-form input{width:100%!important;margin-bottom:.5rem}}.balance-value-clickable{cursor:pointer;transition:all .2s ease;position:relative}.balance-value-clickable:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1d4ed84d}.balance-add-btn{position:absolute;top:-4px;right:-4px;background:var(--primary-color);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;box-shadow:0 2px 6px #3b82f666;transition:all .2s ease}.balance-value-clickable:hover .balance-add-btn{transform:scale(1.1)}.inline-approve-section{margin-top:1rem;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid var(--border-color);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.compact-form{padding:1.5rem}.compact-form h2{margin-bottom:1rem;font-size:1.1rem}.compact-escrow-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.compact-escrow-form .form-group{gap:.25rem}.compact-escrow-form .form-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.compact-escrow-form .form-group input{padding:10px 12px;font-size:.9rem}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:.75rem}}.app-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.header-content h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-content p{font-size:1.1rem;color:var(--text-secondary);margin:0}.wallet-section{display:flex;align-items:center}.wallet-connected{display:flex;align-items:center;gap:.5rem}.wallet-info{display:flex;align-items:center;gap:.5rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:.5rem 1rem;box-shadow:0 2px 8px #0000001a}.wallet-address{font-family:Courier New,monospace;font-size:.9rem;color:var(--text-primary);font-weight:500}.connection-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;animation:pulse 2s infinite}.disconnect-btn{background:none;border:1px solid var(--border-color);color:var(--text-secondary);padding:.5rem 1rem;border-radius:12px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.disconnect-btn:hover{background:var(--background-color);border-color:var(--danger-color);color:var(--danger-color)}.connect-wallet-btn{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-hover));color:#fff;border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3b82f64d}.connect-wallet-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.connect-error{margin-top:.5rem;color:var(--danger-color);font-size:.8rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 768px){.app-header{flex-direction:column;align-items:center;text-align:center;gap:1.5rem}.header-content h1{font-size:2rem}}.arbiter-actions{display:flex;gap:.5rem;align-items:center}.refund-btn,.resolve-btn{padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid;min-width:70px}.refund-btn{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-color:#f59e0b}.refund-btn:hover:not(:disabled){background:linear-gradient(135deg,#fde68a,#fcd34d);transform:translateY(-1px);box-shadow:0 2px 8px #f59e0b4d}.resolve-btn{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border-color:#22c55e}.resolve-btn:hover:not(:disabled){background:linear-gradient(135deg,#bbf7d0,#86efac);transform:translateY(-1px);box-shadow:0 2px 8px #22c55e4d}.refund-btn:disabled,.resolve-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.tx-status{font-size:.8rem;color:var(--text-secondary);margin-left:.5rem;font-style:italic}@media (max-width: 768px){.arbiter-actions{flex-direction:column;gap:.25rem}.refund-btn,.resolve-btn{width:100%;min-width:auto}}.header,.connect-section{display:none!important}.wallet-section .disconnect-btn{font-size:.85rem}.wallet-info:hover{box-shadow:0 4px 12px #00000026}.depositor-actions{display:flex;gap:.5rem;align-items:center}.release-btn,.dispute-btn,.withdraw-btn{padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid;min-width:70px}.release-btn{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border-color:#22c55e}.release-btn:hover:not(:disabled){background:linear-gradient(135deg,#bbf7d0,#86efac);transform:translateY(-1px);box-shadow:0 2px 8px #22c55e4d}.dispute-btn{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-color:#f59e0b}.dispute-btn:hover:not(:disabled){background:linear-gradient(135deg,#fde68a,#fcd34d);transform:translateY(-1px);box-shadow:0 2px 8px #f59e0b4d}.withdraw-btn{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border-color:#3b82f6}.withdraw-btn:hover:not(:disabled){background:linear-gradient(135deg,#bfdbfe,#93c5fd);transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.release-btn:disabled,.dispute-btn:disabled,.withdraw-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.depositor-actions{flex-direction:column;gap:.25rem}.release-btn,.dispute-btn,.withdraw-btn{width:100%;min-width:auto}}.escrow-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.filter-controls{display:flex;align-items:center}.toggle-container{display:flex;align-items:center;cursor:pointer;gap:.5rem;font-size:.9rem;color:var(--text-secondary)}.toggle-container input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border:2px solid var(--border-color);border-radius:4px;position:relative;cursor:pointer;transition:all .2s ease}.toggle-container input[type=checkbox]:checked{background:var(--primary-color);border-color:var(--primary-color)}.toggle-container input[type=checkbox]:checked:after{content:"✓";position:absolute;top:-2px;left:1px;color:#fff;font-size:12px;font-weight:700}.toggle-text{-webkit-user-select:none;user-select:none}@media (max-width: 768px){.escrow-controls{flex-direction:column;align-items:stretch;gap:.75rem}.filter-controls{justify-content:center}}.link-btn{background:none;border:none;color:var(--primary-color);text-decoration:underline;cursor:pointer;font-size:inherit;padding:0;margin-left:.5rem}.link-btn:hover{color:var(--primary-color-hover)}:root{--primary-color: #3b82f6;--primary-color-hover: #2563eb;--secondary-color: #64748b;--success-color: #16a34a;--danger-color: #dc2626;--background-color: #f8fafc;--surface-color: #ffffff;--border-color: #e2e8f0;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #94a3b8;--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--border-radius: .75rem}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;background-color:var(--background-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input[type=text]{font-family:inherit;font-size:1rem}button{cursor:pointer;padding:10px 16px;border:1px solid transparent;border-radius:8px;font-weight:500;transition:all .2s ease-in-out}button:disabled{cursor:not-allowed;opacity:.5}input[type=text]{padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;background-color:#fff;transition:border-color .2s,box-shadow .2s}input[type=text]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f633}
