body{font-family:Segoe UI,sans-serif;background-color:#f5f5f5}.appbar{display:flex;justify-content:space-between;align-items:center;background-color:#0f172a;color:#fff;padding:.75rem 1.5rem;box-shadow:0 2px 8px #00000026;position:sticky;top:0;z-index:100;gap:2rem}.logo{font-size:1.6rem;font-weight:700;letter-spacing:.5px;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:1.5rem;flex:1;justify-content:center}.nav-links a{color:#e2e8f0;text-decoration:none;font-weight:500;position:relative;transition:color .25s ease}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;height:2px;width:0%;background-color:#38bdf8;transition:width .3s ease}.nav-links a:hover{color:#38bdf8}.nav-links a:hover:after{width:100%}.user-info{display:flex;align-items:center;gap:1.2rem;white-space:nowrap}.balances{display:flex;gap:1rem;font-size:.9rem;color:#cbd5e1}.balances span{position:relative;padding-right:1rem}.balances span:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);height:60%;width:1px;background-color:#475569}.balances span:last-child{padding-right:0}.balances span:last-child:after{display:none}.user-profile{display:flex;align-items:center;background-color:#1e293b;padding:.4rem .8rem;border-radius:9999px;gap:.5rem;cursor:pointer;transition:background-color .2s ease}.user-profile:hover{background-color:#334155}.user-profile img{width:28px;height:28px;border-radius:50%;object-fit:cover}.user-profile span{font-size:.85rem;color:#e2e8f0}.dropdown-arrow{font-size:.75rem;margin-left:.2rem;color:#cbd5e1}@media (max-width: 768px){.appbar{flex-wrap:wrap;flex-direction:column;align-items:flex-start;gap:1rem}.nav-links{justify-content:flex-start;flex-wrap:wrap}.user-info{align-self:stretch;justify-content:space-between;width:100%;flex-wrap:wrap;row-gap:.5rem}.balances{flex:1}.user-profile{margin-left:auto}}.left-section{display:flex;align-items:center;gap:2rem}.nav-links{display:flex;align-items:center;gap:1.5rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,sans-serif;background-color:#f1f5f9;color:#1e293b;line-height:1.5;min-height:100vh}.page-container{padding:2rem;max-width:800px;margin:0 auto}.page-title{font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.tool-list{display:flex;flex-direction:column;gap:1rem}.tool-link{display:block;padding:1rem 1.5rem;background-color:#0f172a;color:#fff;text-decoration:none;border-radius:8px;transition:background-color .3s ease;font-weight:500}.tool-link:hover{background-color:#1e40af}.button{background-color:#2563eb;color:#fff;padding:.6rem 1.2rem;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease;text-decoration:none;font-weight:500}.button:hover{background-color:#1d4ed8}.page-subtitle{font-size:1.8rem;font-weight:600;color:#0f172a;margin-bottom:1rem}.page-description{font-size:1rem;color:#475569;margin-bottom:1.5rem;max-width:600px}.external-link{font-weight:500;color:#2563eb;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s ease,border-bottom .2s ease}.external-link:hover{color:#1d4ed8;border-bottom:1px solid #1d4ed8}h3{font-size:1.25rem;font-weight:600;color:#0f172a;margin-top:2rem;margin-bottom:1rem}.step-navigation{display:flex;justify-content:space-between;margin-top:2rem;align-items:center}.nav-button{padding:.6rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:999px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.nav-button:hover{background-color:#1d4ed8}.nav-button:disabled{opacity:.5;cursor:not-allowed}.nav-button-back{justify-self:flex-start}.nav-button-next{justify-self:flex-end}.eip712-form{max-width:600px;padding:1.5rem 2rem;background-color:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 6px #0f172a14;font-family:Segoe UI,sans-serif}.eip712-form label{display:block;margin-bottom:1.2rem;font-size:1rem;font-weight:500;color:#1e293b}.eip712-form input{display:block;width:100%;margin-top:.35rem;padding:.55rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem;background-color:#f8fafc;color:#0f172a;transition:border-color .2s ease,box-shadow .2s ease}.eip712-form input:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf84d;background-color:#fff}.eip712-form+h3,h3{font-size:1.25rem;margin-bottom:1rem;color:#0f172a;font-weight:600}.eip712-form small{display:block;margin-top:.25rem;font-size:.875rem;color:#64748b}.eip712-message{margin-top:2rem;font-family:Segoe UI,sans-serif}.add-btn{font-size:1.5rem;width:40px;height:40px;border-radius:50%;background-color:#2563eb;color:#fff;border:none;cursor:pointer;margin-top:1rem;transition:background-color .2s ease}.add-btn:hover{background-color:#1d4ed8}.popup{position:fixed;top:0;left:0;width:100%;height:100%;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.popup-content{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 8px 16px #0003;min-width:300px}.popup-content label{display:block;font-weight:500;margin-bottom:1rem}.popup-content input{width:100%;padding:.5rem;font-size:1rem;margin-top:.5rem;border:1px solid #cbd5e1;border-radius:6px}.popup-buttons{display:flex;justify-content:space-between;margin-top:1.5rem}.popup-buttons button{padding:.5rem 1rem;border:none;background-color:#2563eb;color:#fff;font-weight:500;border-radius:6px;cursor:pointer}.popup-buttons button:hover{background-color:#1d4ed8}.typed-list{margin-top:1.5rem}.typed-item{background-color:#f8fafc;padding:1rem;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem}.typed-item h4{margin-bottom:.75rem;color:#0f172a}.typed-field{display:flex;gap:.75rem;margin-bottom:.75rem}.typed-field input{flex:1;padding:.5rem;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem}.sub-add-btn{width:30px;height:30px;border-radius:50%;font-size:1.2rem;background-color:#38bdf8;color:#fff;border:none;cursor:pointer}.sub-add-btn:hover{background-color:#0ea5e9}.remove-type-btn{float:right;font-size:.85rem;background:#ef4444;color:#fff;border:none;border-radius:6px;padding:4px 8px;cursor:pointer;transition:background-color .2s ease}.remove-type-btn:hover{background:#dc2626}.typed-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.eip712-message-data{margin-top:2rem;padding:2rem;border:1px solid #e2e8f0;border-radius:10px;background-color:#fff;box-shadow:0 2px 6px #0f172a14;font-family:Segoe UI,sans-serif}.eip712-message-data h3{font-size:1.25rem;font-weight:600;color:#0f172a;margin-bottom:1rem}.eip712-message-data p{font-size:.95rem;color:#475569;margin-bottom:1rem}.eip712-message-data h4{font-size:1.1rem;font-weight:500;color:#1e293b;margin:1rem 0 .5rem}.eip712-message-data select{width:100%;padding:.55rem .75rem;font-size:1rem;border:1px solid #cbd5e1;border-radius:6px;background-color:#f8fafc;transition:border-color .2s ease}.eip712-message-data select:focus{outline:none;border-color:#38bdf8;background-color:#fff;box-shadow:0 0 0 2px #38bdf84d}.struct-fields{margin-top:1rem;padding:1rem;background-color:#f1f5f9;border-radius:8px}.data-input-field{margin-bottom:1rem}.data-input-field label{display:block;margin-bottom:.3rem;font-weight:500;color:#0f172a}.data-input-field input,.data-input-field select{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem;background-color:#fff;transition:border-color .2s ease}.data-input-field input:focus,.data-input-field select:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf84d}.nested-struct{margin-top:1rem;padding:1rem;border-left:4px solid #94a3b8;background-color:#e2e8f0;border-radius:6px}.nested-struct h5{font-size:1rem;margin-bottom:.5rem;color:#334155;font-weight:600}.result-section{background-color:#fff;border:1px solid #e0e0e0;padding:32px;border-radius:16px;margin-top:32px;box-shadow:0 4px 16px #0000000d;animation:fadeIn .4s ease}.result-section h3{font-size:1.6rem;font-weight:600;margin-bottom:20px;color:#333}.params-box{background-color:#1e1e1e;color:#dcdcdc;padding:20px;border-radius:10px;overflow-x:auto;font-family:Courier New,Courier,monospace;font-size:.95rem;margin-bottom:28px;white-space:pre-wrap;line-height:1.6;border:1px solid #333}.signature-box{display:flex;align-items:center;justify-content:space-between;background-color:#f5f5f5;padding:14px 16px;border-radius:10px;font-family:Courier New,Courier,monospace;font-size:.9rem;word-break:break-all;margin-bottom:28px;border:1px solid #ccc}.copy-button{background-color:#007bff;color:#fff;border:none;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background-color .2s ease,transform .1s ease}.copy-button:hover{background-color:#0056b3}.copy-button:active{transform:scale(.95)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.error-page{max-width:600px;margin:4rem auto;padding:2rem;background-color:#fef2f2;color:#b91c1c;border:1px solid #fca5a5;border-radius:.75rem;text-align:center;box-shadow:0 4px 10px #0000000d}.error-page h1{font-size:2rem;font-weight:700;margin-bottom:1rem}.error-page p{font-size:1rem;line-height:1.6}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.popup{background:#fff;border:2px solid #ff4d4f;padding:20px 30px;border-radius:10px;text-align:center;box-shadow:0 5px 15px #0003}.popup h3{margin:0 0 10px;color:#d32f2f}.popup button{margin-top:15px;padding:8px 16px;background:#d32f2f;color:#fff;border:none;border-radius:6px;cursor:pointer}.popup button:hover{background:#b71c1c}.notfound-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:2rem;background-color:#f9fafb;color:#1e293b}.notfound-title{font-size:3rem;font-weight:700;color:#0f172a;margin-bottom:1rem}.notfound-text{font-size:1.2rem;color:#475569;margin-bottom:2rem}.notfound-link{text-decoration:none;font-size:1rem;color:#3b82f6;border:1px solid #3b82f6;padding:.6rem 1.2rem;border-radius:6px;transition:all .25s ease}.notfound-link:hover{background-color:#3b82f6;color:#fff}
