:root{--primary: #0066cc;--card: #2d2d2d;--border: #404040;--text: #e5e5e5;--background: #1a1a1a}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--background);color:var(--text);line-height:1.6}.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}nav{background-color:var(--card);border-bottom:1px solid var(--border);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.nav-toggle{display:none;background:transparent;border:1px solid var(--border);color:var(--text);padding:.5rem .75rem;border-radius:4px;font-size:1.1rem;line-height:1}.nav-right{display:flex;align-items:center;gap:.6rem;flex-wrap:nowrap}.nav-right .nav-user{color:#8a8a8a;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:12ch}.nav-currency,.nav-signout{height:34px;font-size:.85rem;line-height:1;border:1px solid var(--border);border-radius:6px;background-color:var(--background);color:var(--text);cursor:pointer}.nav-signout{padding:0 .7rem;white-space:nowrap;transition:border-color .15s,color .15s}.nav-signout:hover{border-color:#6a6a6a;color:#fff;background-color:var(--background)}.nav-currency{width:auto;margin:0;appearance:none;-webkit-appearance:none;padding:0 1.7rem 0 .7rem;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%238a8a8a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:10px 7px}.nav-currency:hover{border-color:#6a6a6a}.nav-currency:focus-visible,.nav-signout:focus-visible{outline:2px solid var(--primary);outline-offset:1px}nav ul{list-style:none;display:flex;gap:0;align-items:center;position:relative}nav li{position:relative}nav button{background:transparent;border:none;color:var(--text);padding:.75rem 1rem;cursor:pointer;transition:background-color .2s;border-radius:0;font-size:.9rem;font-weight:500}nav button:hover{background-color:var(--border)}nav button.active{background-color:var(--primary);color:#fff}nav ul ul{position:absolute;top:100%;left:0;background:var(--card);border:1px solid var(--border);border-radius:0 0 8px 8px;min-width:200px;z-index:1000;box-shadow:0 4px 12px #0000004d;flex-direction:column;gap:0}nav ul ul li{width:100%}nav ul ul button{width:100%;text-align:left;padding:.75rem 1rem;border-radius:0}nav ul ul button:hover{background-color:var(--border)}nav ul ul button.active{background-color:var(--primary);color:#fff}main{flex:1;padding:2rem;margin:0 auto;width:90%}h1,h2,h3,h4,h5,h6{color:#fff}h1{font-size:2rem;font-weight:600}h2{font-size:1.5rem;font-weight:500}h3{font-size:1.25rem;font-weight:500}.card{background-color:#2d2d2d;border:1px solid #404040;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}table{width:100%;border-collapse:collapse;background-color:#2d2d2d;border-radius:8px;overflow:hidden;margin-bottom:1.5rem}thead{background-color:#404040}th,td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #404040}th{font-weight:600;color:#fff}tbody tr:hover{background-color:#333}form{background-color:#2d2d2d;padding:1.5rem;border-radius:8px;border:1px solid #404040}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;padding:.75rem;background-color:#1a1a1a;border:1px solid #404040;border-radius:4px;color:#e5e5e5;font-size:1rem;margin-bottom:1rem}input:focus,select:focus,textarea:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #06c3}label{display:block;margin-bottom:.5rem;font-weight:500;color:#fff}button{background-color:#06c;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500;transition:background-color .2s}button:hover{background-color:#0052a3}button:disabled{background-color:#666;cursor:not-allowed}button.secondary{background-color:#404040;color:#e5e5e5}button.secondary:hover{background-color:#505050}button.danger{background-color:#dc3545}button.danger:hover{background-color:#c82333}.message{padding:1rem;border-radius:4px;margin-bottom:1rem;border-left:4px solid}.message.success{background-color:#0f3a0f;border-color:#28a745;color:#d4edda}.message.error{background-color:#3a0f0f;border-color:#dc3545;color:#f8d7da}.message.warning{background-color:#3a300f;border-color:#ffc107;color:#fff3cd}.message.info{background-color:#0f2a3a;border-color:#17a2b8;color:#d1ecf1}.stats{display:flex;gap:1rem;margin-bottom:2rem}.stat-item{flex:1;background-color:#2d2d2d;padding:1.5rem;border-radius:8px;border:1px solid #404040;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.5rem}.stat-label{color:#b3b3b3;font-size:.9rem}.amount-positive{color:#28a745}.amount-negative{color:#dc3545}.dashboard{display:flex;flex-direction:column;gap:1.5rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column;padding:1rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #404040}.summary-item .label{font-size:.9rem;color:#b3b3b3;margin-bottom:.5rem}.summary-item .value{font-size:1.5rem;font-weight:600;color:#fff}.transaction-list{display:flex;flex-direction:column;gap:.5rem}.transaction-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:1rem;align-items:center;padding:.75rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #404040}.destination-list{display:flex;flex-direction:column;gap:.5rem}.destination-item{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:.75rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #404040}.transactions-page{display:flex;flex-direction:column;gap:1.5rem}.search-form{display:flex;gap:1rem;align-items:flex-end;background:none;border:none;padding:0}.search-form input{flex:1;margin-bottom:0}.search-form button{margin-bottom:0;white-space:nowrap}.transactions-list{display:flex;flex-direction:column;gap:.5rem}.transaction-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:1rem;align-items:center;padding:1rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #404040;transition:background-color .2s}.transaction-row:hover{background-color:#2a2a2a}.transaction-date{font-size:.9rem;color:#b3b3b3;white-space:nowrap}.transaction-description{display:flex;flex-direction:column;gap:.25rem}.transaction-description .description{font-weight:500}.transaction-description .merchant{font-size:.85rem;color:#b3b3b3}.transaction-amount{font-weight:600;text-align:right;white-space:nowrap}.transaction-amount.positive{color:#28a745}.transaction-amount.negative{color:#dc3545}.transaction-account{font-size:.9rem;color:#b3b3b3;text-align:right;white-space:nowrap}.load-more-button{align-self:center;margin-top:1rem}.manage-accounts{display:flex;flex-direction:column}.accounts-list{display:flex;flex-direction:column;gap:.5rem}.account-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:1rem;align-items:center;padding:1rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #404040;transition:background-color .2s}.account-row:hover{background-color:#2a2a2a}.account-name{font-weight:500}.account-type{color:#b3b3b3;text-transform:capitalize}.account-balance{font-weight:600;text-align:right}.account-created{font-size:.9rem;color:#b3b3b3;text-align:right}.analytics{display:flex;flex-direction:column;gap:1.5rem}.analytics-list{display:flex;flex-direction:column;gap:.5rem}.analytics-item{display:grid;grid-template-columns:2fr auto auto;gap:1rem;align-items:center;padding:.75rem;background-color:#1a1a1a;border-radius:6px;border:1px solid #404040}.text-center{text-align:center}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.flex{display:flex}.justify-between{justify-content:space-between}.align-center{align-items:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}@media (max-width: 768px){main{padding:1rem 1rem 6rem;width:100%}button{padding:.6rem .9rem;max-width:100%}input,select,textarea,.controls input[type=number],.controls input[type=text],.controls select{font-size:16px}nav{padding:.75rem 1rem}.nav-currency,.nav-signout{font-size:16px;height:38px}.nav-right{gap:.5rem}.nav-toggle{display:block;order:1}.nav-right{order:2;margin-left:auto}nav>ul{display:none;order:3;width:100%;flex-direction:column;align-items:stretch}nav>ul.open{display:flex}nav>ul li{width:100%}nav>ul button{width:100%;text-align:left;padding:.75rem 1rem}nav ul ul{position:static;border:none;border-left:2px solid var(--border);border-radius:0;box-shadow:none;min-width:0;display:block}.modal-box{padding:16px}.card-grid{grid-template-columns:1fr}.stats{flex-direction:column}table{font-size:.9rem}th,td{padding:.5rem}.transaction-row,.account-row{grid-template-columns:1fr;gap:.5rem;text-align:left}.transaction-amount,.transaction-account,.account-balance,.account-created{text-align:left}.analytics-item,.destination-item{grid-template-columns:1fr;gap:.5rem}.search-form{flex-direction:column;align-items:stretch}.search-form input,.search-form button{margin-bottom:.5rem}.stack-table,.stack-table tbody,.stack-table tr,.stack-table td{display:block;width:100%}.stack-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stack-table tr{padding:.55rem 0;border-bottom:1px solid var(--border)}.stack-table tr:last-child{border-bottom:none;padding-bottom:0}.stack-table td{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.15rem 0!important;text-align:right!important;white-space:normal!important}.stack-table td:before{content:attr(data-label);color:#8a8a8a;font-size:.8rem;font-weight:400;text-align:left;flex:0 0 auto}.stack-table td:first-child{font-weight:600;padding-bottom:.2rem!important}.tablewrap,.destinations-table-wrapper{overflow-x:visible}.modal-box{max-width:calc(100vw - 20px)!important}.txn-modal-table,.txn-modal-table tbody,.txn-modal-table tfoot{display:block;width:100%}.txn-modal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.txn-modal-table tr{display:grid;grid-template-columns:auto 1fr auto;column-gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.txn-modal-table tbody tr:last-child{border-bottom:none}.txn-modal-table td{padding:0!important;border:none!important;white-space:normal!important}.txn-desc{grid-column:1 / 3;grid-row:1;text-align:left!important}.txn-amt{grid-column:3;grid-row:1;text-align:right!important;white-space:nowrap!important}.txn-date{grid-column:1;grid-row:2;font-size:.8rem}.txn-acct{grid-column:2;grid-row:2;text-align:left!important;font-size:.8rem}.txn-orig{grid-column:3;grid-row:2;text-align:right!important;font-size:.8rem;white-space:nowrap!important}.txn-spacer{display:none}.txn-modal-table tfoot tr{border-bottom:none;border-top:1px solid var(--border)}.txn-total-label{grid-column:1 / 3;grid-row:1;text-align:left!important}}.tablewrap,.destinations-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.tablewrap table,.destinations-table-wrapper table{margin-bottom:0}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:999;padding:16px}.modal-box{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;width:100%;max-height:calc(100dvh - 32px);overflow-y:auto}.modal-box form{background:none;border:none;padding:0}.loading{display:inline-block;width:20px;height:20px;border:3px solid #404040;border-radius:50%;border-top-color:#06c;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.section-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.section-header h2{margin:0}.controls{display:flex;align-items:center;gap:.375rem;flex-wrap:wrap}.controls button{padding:.3rem .65rem;font-size:.78rem;line-height:1.4;background:#2a2a2a;border:1px solid #505050;border-radius:5px;color:#ccc;font-weight:500;transition:background .15s,border-color .15s,color .15s}.controls button:hover:not(:disabled){background:#363636;border-color:#666;color:#e5e5e5}.controls button:disabled{opacity:.45;cursor:not-allowed;background:#2a2a2a}.controls label{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:400;color:var(--text);margin-bottom:0;white-space:nowrap;cursor:default}.controls input[type=number],.controls input[type=text],.controls select{padding:.28rem .45rem;font-size:.78rem;margin-bottom:0;border-radius:5px;line-height:1.4;height:auto;width:auto;cursor:pointer}.checkbox-inline{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;font-size:.78rem;font-weight:400;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-inline input[type=checkbox]{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1.5px solid #555;border-radius:3px;background:#1a1a1a;transition:border-color .15s,background .15s;position:relative;cursor:pointer;margin:0;outline:none;flex-shrink:0}.checkbox-inline input[type=checkbox]:hover{border-color:#777}.checkbox-inline input[type=checkbox]:checked{border-color:var(--primary);background:var(--primary)}.checkbox-inline input[type=checkbox]:focus-visible{box-shadow:0 0 0 2px #0066cc4d}.checkbox-inline input[type=checkbox]:after{content:"";position:absolute;display:none;top:1px;left:4px;width:4px;height:7px;border:1.5px solid white;border-top:none;border-left:none;transform:rotate(45deg)}.checkbox-inline input[type=checkbox]:checked:after{display:block}.checkbox-inline input[type=checkbox]:disabled{border-color:#3a3a3a;background:#222;cursor:not-allowed;opacity:.5}.manage-accounts .search-bar input{width:100%;max-width:600px;padding:12px;border-radius:8px;border:1px solid var(--border);font-size:16px;box-shadow:0 2px 8px #0000001a}.manage-accounts .floating-create-btn{position:fixed;right:24px;bottom:24px;z-index:1000;width:56px;height:56px;border-radius:50%;background:var(--primary);color:#fff;font-size:32px;line-height:0;display:flex;align-items:center;justify-content:center;border:none;box-shadow:0 4px 12px #0003;cursor:pointer}.manage-accounts .modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:999}.manage-accounts .modal-content{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;width:min(420px,100%);max-width:90vw}.manage-accounts .form-inline{display:flex;gap:8px;flex-wrap:wrap}.manage-accounts .form-inline input,.manage-accounts .form-inline select{flex:1 1 180px}.manage-accounts .form-inline select[data-type=type]{flex:1 1 140px}.manage-accounts .form-inline select[data-type=currency]{flex:1 1 120px}.manage-accounts .form-inline .onchain-address-input{flex:1 1 100%;font-family:monospace;font-size:.85em}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.manage-accounts .form-buttons{display:flex;gap:12px;justify-content:flex-end;width:100%;margin-top:12px}.manage-accounts .type-badge{padding:4px 8px;border-radius:4px;font-size:.9em;text-transform:capitalize}.manage-accounts .edit-btn{padding:6px;border-radius:4px;border:1px solid var(--border);background-color:var(--card);cursor:pointer;display:flex;align-items:center;justify-content:center}.manage-accounts [data-testid=data-table]{background-color:var(--card)!important;border-radius:8px;overflow:hidden;border:1px solid var(--border)}.manage-accounts .rdt_TableHeader{background-color:var(--card)!important;color:var(--text)!important;border-bottom:1px solid var(--border)!important}.manage-accounts .rdt_TableHeadRow{background-color:var(--card)!important;border-bottom:1px solid var(--border)!important;min-height:48px}.manage-accounts .rdt_TableCol{color:var(--text)!important;font-weight:600!important;padding:12px 16px!important}.manage-accounts .rdt_TableCol:hover{background-color:var(--hover)!important}.manage-accounts .rdt_TableCol .rdt_TableCol_Sortable{color:var(--text)!important}.manage-accounts .rdt_TableBody{background-color:var(--card)!important}.manage-accounts .rdt_TableRow{background-color:var(--card)!important;border-bottom:1px solid var(--border)!important;color:var(--text)!important;min-height:45px}.manage-accounts .rdt_TableRow:nth-child(2n){background-color:var(--card-hover, rgba(255,255,255,.02))!important}.manage-accounts .rdt_TableRow:hover{background-color:var(--hover)!important}.manage-accounts .rdt_TableCell{padding:12px 16px!important;color:var(--text)!important}.manage-accounts .rdt_Pagination{background-color:var(--card)!important;border-top:1px solid var(--border)!important;color:var(--text)!important;padding:12px 16px!important}.manage-accounts .rdt_Pagination nav{color:var(--text)!important}.manage-accounts .rdt_Pagination button{background-color:var(--card)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:4px!important;padding:6px 12px!important;margin:0 2px!important}.manage-accounts .rdt_Pagination button:hover:not(:disabled){background-color:var(--hover)!important}.manage-accounts .rdt_Pagination button:disabled{opacity:.5!important;cursor:not-allowed!important}.manage-accounts .rdt_Pagination select{background-color:var(--card)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:4px!important;padding:4px 8px!important}.manage-accounts .rdt_TableWrapper .rdt_Table .rdt_TableBody .rdt_TableRow{text-align:center!important}.manage-accounts .rdt_ProgressWrapper{background-color:var(--card)!important}.manage-accounts .rdt_TableHeader input{background-color:var(--input-bg, var(--card))!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:4px!important;padding:8px 12px!important}.manage-accounts .rdt_TableWrapper{border-radius:8px;overflow:hidden}
