feat Add gradient-only card design and icon style picker (#3054)
What changed, and why it matters
This commit is a user-facing feature update for the Cake Wallet app. It adds a new 'gradient-only' card background option and lets users pick different icon styles for their wallet balance cards. It also updates the local database to store these new preferences and refreshes many coin icon graphics. There is nothing in the changes that suggests a security vulnerability or malicious behavior.
No security action required. This is a normal feature commit. Reviewers may optionally verify the new database migration handles existing user data gracefully, but the diff shows additive columns with safe defaults.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit introduces UI customization features for balance cards: a gradient-only background type and an icon-style picker. It extends the BalanceCardStyleSettings model and SQLite schema (version bump to 9) with iconStyleIndex and isGradientOnly fields, updates the CardDesign logic to support these modes, and adds a large set of SVG/WebP icon assets. The changes are purely presentational and involve no network, cryptographic, or permission-related code.
Changed components
cw_core/lib/balance_card_style_settings.dartcw_core/lib/card_design.dartcw_core/lib/db/sqlite.dartlib/new-ui/pages/card_customizer.dartlib/new-ui/viewmodels/card_customizer/card_customizer_bloc.dartlib/new-ui/viewmodels/card_customizer/card_customizer_event.dartlib/new-ui/viewmodels/card_customizer/card_customizer_state.dartlib/new-ui/widgets/coins_page/cards/balance_card.dartlib/src/widgets/cake_image_widget.dartInspect captured patch +2119 / −323
diff --git a/assets/images/xmr-og.webp b/assets/images/xmr-og.webp
new file mode 100644
index 00000000..94eda521
Binary files /dev/null and b/assets/images/xmr-og.webp differ
diff --git a/cw_core/lib/balance_card_style_settings.dart b/cw_core/lib/balance_card_style_settings.dart
index 6412f0d7..feed5b23 100644
--- a/cw_core/lib/balance_card_style_settings.dart
+++ b/cw_core/lib/balance_card_style_settings.dart
@@ -8,6 +8,8 @@ class BalanceCardStyleSettings {
final int gradientIndex;
final bool useSpecialDesign;
final String backgroundImagePath;
+ final int iconStyleIndex;
+ final bool isGradientOnly;
final int cardOrder;
BalanceCardStyleSettings(
@@ -16,6 +18,8 @@ class BalanceCardStyleSettings {
required this.gradientIndex,
required this.useSpecialDesign,
required this.backgroundImagePath,
+ this.iconStyleIndex = 0,
+ this.isGradientOnly = false,
required this.cardOrder});
static const tableName = "BalanceCardStyleSettings";
@@ -27,6 +31,8 @@ class BalanceCardStyleSettings {
"gradientIndex": gradientIndex,
"useSpecialDesign": useSpecialDesign ? 1 : 0,
"backgroundImagePath": backgroundImagePath,
+ "iconStyleIndex": iconStyleIndex,
+ "isGradientOnly": isGradientOnly ? 1 : 0,
"cardOrder": cardOrder,
};
return ret;
@@ -39,19 +45,35 @@ class BalanceCardStyleSettings {
gradientIndex: json["gradientIndex"] as int,
useSpecialDesign: json["useSpecialDesign"] == 1,
backgroundImagePath: json["backgroundImagePath"] as String? ?? "",
+ iconStyleIndex: json["iconStyleIndex"] as int? ?? 0,
+ isGradientOnly: json["isGradientOnly"] == 1,
cardOrder: json["cardOrder"] as int? ?? -1,
);
}
- static BalanceCardStyleSettings fromCardDesign(
- int walletInfoId, int accountIndex, int cardOrder, CardDesign design) {
+ static BalanceCardStyleSettings fromCardDesign({
+ required int walletInfoId,
+ required int accountIndex,
+ required int cardOrder,
+ required CardDesign design,
+ int iconStyleIndex = 0,
+ int? gradientIndexOverride,
+ }) {
+ final int gradientIndex = gradientIndexOverride ??
+ CardDesign.allGradients.indexOf(design.gradient);
return BalanceCardStyleSettings(
walletInfoId: walletInfoId,
accountIndex: accountIndex,
- gradientIndex: CardDesign.allGradients.indexOf(design.gradient),
- useSpecialDesign: design.backgroundType == CardDesignBackgroundTypes.svgFull,
+ gradientIndex: gradientIndex,
+ useSpecialDesign:
+ design.backgroundType == CardDesignBackgroundTypes.svgFull,
backgroundImagePath:
- design.backgroundType == CardDesignBackgroundTypes.image ? design.imagePath : "",
+ design.backgroundType == CardDesignBackgroundTypes.image
+ ? design.imagePath
+ : "",
+ iconStyleIndex: iconStyleIndex,
+ isGradientOnly:
+ design.backgroundType == CardDesignBackgroundTypes.gradientOnly,
cardOrder: cardOrder,
);
}
diff --git a/cw_core/lib/card_design.dart b/cw_core/lib/card_design.dart
index 5786abeb..9fcfe098 100644
--- a/cw_core/lib/card_design.dart
+++ b/cw_core/lib/card_design.dart
@@ -3,7 +3,7 @@ import 'package:cw_core/crypto_currency.dart';
import 'package:cw_core/utils/print_verbose.dart';
import 'package:flutter/material.dart';
-enum CardDesignBackgroundTypes { image, svgIcon, svgFull }
+enum CardDesignBackgroundTypes { image, svgIcon, svgFull, gradientOnly }
class CardColorCombination {
final Color textColor;
@@ -34,17 +34,26 @@ class CardColorCombination {
);
}
+class CardIconPath {
+ final String path;
+ final bool preColored;
+
+ const CardIconPath(this.path, {this.preColored = false});
+}
+
class CardDesign {
final Gradient gradient;
final String imagePath;
final CardDesignBackgroundTypes backgroundType;
final CardColorCombination colors;
+ final bool preColoredIcon;
const CardDesign(
{this.backgroundType = CardDesignBackgroundTypes.svgIcon,
this.gradient = const LinearGradient(colors: [Colors.black], begin: Alignment.topCenter, end: Alignment.bottomCenter),
this.imagePath = "assets/new-ui/blank.svg",
- this.colors = CardColorCombination.dark});
+ this.colors = CardColorCombination.dark,
+ this.preColoredIcon = false});
static const LinearGradient gradientOrange = LinearGradient(
colors: <Color>[Color(0xFFFF7C02), Color(0xFFFF5602)],
@@ -120,6 +129,10 @@ class CardDesign {
static const genericDefault = CardDesign(gradient: gradientBlue);
+ static const gradientOnlyDesign = CardDesign(
+ backgroundType: CardDesignBackgroundTypes.gradientOnly,
+ gradient: gradientBlue);
+
static const btc = CardDesign(
imagePath: "assets/new-ui/balance_card_icons/bitcoin.svg");
@@ -332,10 +345,68 @@ class CardDesign {
imagePath: "assets/new-ui/balance_card_backgrounds/bnb.svg");
CardDesign withGradient(Gradient gradient) => CardDesign(
- gradient: gradient, colors: preferredColorCombinations[gradient] ?? colors, imagePath: imagePath, backgroundType: backgroundType);
+ gradient: gradient,
+ colors: preferredColorCombinations[gradient] ?? colors,
+ imagePath: imagePath,
+ backgroundType: backgroundType,
+ preColoredIcon: preColoredIcon);
CardDesign withGradientAndColorCombination(Gradient gradient, CardColorCombination cardColorCombination) => CardDesign(
- gradient: gradient, colors: cardColorCombination, imagePath: imagePath, backgroundType: backgroundType);
+ gradient: gradient,
+ colors: cardColorCombination,
+ imagePath: imagePath,
+ backgroundType: backgroundType,
+ preColoredIcon: preColoredIcon);
+
+ CardDesign withIcon(CardIconPath icon) => CardDesign(
+ gradient: gradient,
+ colors: colors,
+ imagePath: icon.path,
+ backgroundType: backgroundType,
+ preColoredIcon: icon.preColored);
+
+ static const String _balanceCardIconPrefix = "assets/new-ui/balance_card_icons";
+ static const String _chainIconPrefix = "assets/new-ui/card_icons/chain_icons";
+ static const String _ogIconPrefix = "assets/new-ui/card_icons/og_icons";
+ static const String _outlineIconPrefix = "assets/new-ui/card_icons/outline_icons";
+ static const String _symbolIconPrefix = "assets/new-ui/card_icons/symbol_icons";
+ static const String _genericCakeIcon = "$_balanceCardIconPrefix/cake-card-icon.svg";
+
+ static const Map<CryptoCurrency, _CurrencyIconNames> _iconNames = {
+ CryptoCurrency.arbEth: _CurrencyIconNames(ticker: 'arb', longName: 'arbitrum'),
+ CryptoCurrency.baseEth: _CurrencyIconNames(ticker: 'base', longName: 'base', chainFile: 'base_icon'),
+ CryptoCurrency.bch: _CurrencyIconNames(ticker: 'bch', longName: 'bitcoin_cash', chainFile: 'bitcoin-cash'),
+ CryptoCurrency.btc: _CurrencyIconNames(ticker: 'btc', longName: 'bitcoin', outlineFile: 'BTC'),
+ CryptoCurrency.bnb: _CurrencyIconNames(ticker: 'bnb', longName: 'bnb'),
+ CryptoCurrency.dcr: _CurrencyIconNames(ticker: 'dcr', longName: 'decred'),
+ CryptoCurrency.doge: _CurrencyIconNames(ticker: 'doge', longName: 'dogecoin'),
+ CryptoCurrency.eth: _CurrencyIconNames(ticker: 'eth', longName: 'ethereum'),
+ CryptoCurrency.btcln: _CurrencyIconNames(ticker: 'ln', longName: 'lightning'),
+ CryptoCurrency.ltc: _CurrencyIconNames(ticker: 'ltc', longName: 'litecoin'),
+ CryptoCurrency.xmr: _CurrencyIconNames(
+ ticker: 'xmr', longName: 'monero', ogPath: 'assets/images/xmr-og.webp'),
+ CryptoCurrency.nano: _CurrencyIconNames(ticker: 'xno', longName: 'nano'),
+ CryptoCurrency.maticpoly: _CurrencyIconNames(ticker: 'pol', longName: 'polygon'),
+ CryptoCurrency.sol: _CurrencyIconNames(ticker: 'sol', longName: 'solana'),
+ CryptoCurrency.trx: _CurrencyIconNames(
+ ticker: 'trx', longName: 'tron', ogPath: '$_ogIconPrefix/tron-og.svg'),
+ CryptoCurrency.zano: _CurrencyIconNames(ticker: 'zano', longName: 'zano'),
+ CryptoCurrency.zec: _CurrencyIconNames(ticker: 'zec', longName: 'zcash'),
+ };
+
+ static List<CardIconPath> iconPathsForWalletType(CryptoCurrency currency) {
+ final n = _iconNames[currency];
+ if (n == null) return const [];
+
+ return [
+ CardIconPath('$_symbolIconPrefix/${n.ticker}-symbol.svg'),
+ CardIconPath('$_outlineIconPrefix/${n.outlineFile ?? n.ticker}-outline.svg'),
+ CardIconPath('$_balanceCardIconPrefix/${n.longName}.svg'),
+ CardIconPath('$_chainIconPrefix/${n.chainFile ?? n.longName}.svg', preColored: true),
+ CardIconPath(n.ogPath ?? '$_ogIconPrefix/${n.ticker}-og.svg', preColored: true),
+ const CardIconPath(_genericCakeIcon),
+ ];
+ }
static const List<CardDesign> all = [genericDefault, btc, eth, xmr, ltc, eth, pol, doge, base, sol, btcln, tron, zano, dcr, arbitrum, zec, bnb, ethSpecial, btcSpecial, xmrSpecial, ltcSpecial, lnSpecial, tronSpecial, bchSpecial, wowSpecial, dogeSpecial, polSpecial, dcrSpecial, zanoSpecial, arbitrumSpecial, zecSpecial, bnbSpecial];
@@ -403,31 +474,91 @@ class CardDesign {
CardDesign.gradientBlack: CardColorCombination.black,
};
+ CardDesign withIconStyleIndex(int iconStyleIndex, CryptoCurrency currency) {
+ final paths = iconPathsForWalletType(currency);
+ if (paths.isEmpty) return this;
+ if (iconStyleIndex < 0 || iconStyleIndex >= paths.length) return this;
+ return withIcon(paths[iconStyleIndex]);
+ }
+
+ static Gradient gradientForStoredIndex(
+ int gradientIndex,
+ CryptoCurrency walletCurrency,
+ ) {
+ final n = CardDesign.allGradients.length;
+ final special = specialDesignsForCurrencies[walletCurrency];
+ if (gradientIndex >= 0 && gradientIndex < n) {
+ return CardDesign.allGradients[gradientIndex];
+ }
+ if (gradientIndex == n && special != null) {
+ return special.gradient;
+ }
+ return gradientBlue;
+ }
+
static CardDesign fromStyleSettings(
BalanceCardStyleSettings? setting, CryptoCurrency walletCurrency) {
if (setting == null) {
return CardDesign.forCurrencySpecial(walletCurrency);
- } else if (setting.backgroundImagePath.isNotEmpty) {
- return CardDesign(
- imagePath: setting.backgroundImagePath,
+ }
+
+ if (setting.isGradientOnly) {
+ final gradient = gradientForStoredIndex(setting.gradientIndex, walletCurrency);
+ final textColors = preferredColorCombinations[gradient]
+ ?? specialDesignsForCurrencies[walletCurrency]?.colors
+ ?? gradientOnlyDesign.colors;
+ return gradientOnlyDesign.withGradientAndColorCombination(gradient, textColors);
+ }
+
+ if (setting.backgroundImagePath.isNotEmpty) {
+ return CardDesign(imagePath: setting.backgroundImagePath);
+ }
+
+ if (setting.useSpecialDesign && setting.gradientIndex != -1) {
+ return CardDesign.forCurrencySpecial(walletCurrency).withGradient(
+ gradientForStoredIndex(setting.gradientIndex, walletCurrency),
);
- } else if (setting.useSpecialDesign && setting.gradientIndex != -1) {
- return CardDesign.forCurrencySpecial(walletCurrency)
- .withGradient(CardDesign.allGradients[setting.gradientIndex]);
- } else if (!setting.useSpecialDesign && setting.gradientIndex == -1) {
+ }
+
+ if (!setting.useSpecialDesign && setting.gradientIndex == -1) {
final specialColors =
- specialDesignsForCurrencies[walletCurrency] ??
- genericDefault;
- return CardDesign.forCurrencyIcon(walletCurrency)
- .withGradientAndColorCombination(specialColors.gradient, specialColors.colors);
- } else if (setting.useSpecialDesign) {
- return CardDesign.forCurrencySpecial(walletCurrency);
- } else if (setting.gradientIndex != -1) {
- return CardDesign.forCurrencyIcon(walletCurrency)
- .withGradient(CardDesign.allGradients[setting.gradientIndex]);
- } else {
- printV("somehow, the user saved the design settings with literally no customization?");
+ specialDesignsForCurrencies[walletCurrency] ?? genericDefault;
+ final design = CardDesign.forCurrencyIcon(walletCurrency)
+ .withGradientAndColorCombination(
+ specialColors.gradient, specialColors.colors);
+ return design.withIconStyleIndex(setting.iconStyleIndex, walletCurrency);
+ }
+ if (setting.useSpecialDesign) {
return CardDesign.forCurrencySpecial(walletCurrency);
}
+ if (setting.gradientIndex != -1) {
+ final baseIcon = CardDesign.forCurrencyIcon(walletCurrency);
+ final gradient = gradientForStoredIndex(setting.gradientIndex, walletCurrency);
+ final textColors = preferredColorCombinations[gradient]
+ ?? specialDesignsForCurrencies[walletCurrency]?.colors
+ ?? baseIcon.colors;
+ return baseIcon
+ .withGradientAndColorCombination(gradient, textColors)
+ .withIconStyleIndex(setting.iconStyleIndex, walletCurrency);
+ }
+ printV("somehow, the user saved the design settings with literally no "
+ "customization?");
+ return CardDesign.forCurrencySpecial(walletCurrency);
}
+}
+
+class _CurrencyIconNames {
+ final String ticker;
+ final String longName;
+ final String? outlineFile;
+ final String? chainFile;
+ final String? ogPath;
+
+ const _CurrencyIconNames({
+ required this.ticker,
+ required this.longName,
+ this.outlineFile,
+ this.chainFile,
+ this.ogPath,
+ });
}
\ No newline at end of file
diff --git a/cw_core/lib/db/sqlite.dart b/cw_core/lib/db/sqlite.dart
index eea479a8..bcd1a275 100644
--- a/cw_core/lib/db/sqlite.dart
+++ b/cw_core/lib/db/sqlite.dart
@@ -1,4 +1,3 @@
-
import 'dart:io';
import 'package:cw_core/root_dir.dart';
@@ -7,8 +6,6 @@ import 'package:sqflite_common_ffi/sqflite_ffi.dart';
Database? db;
-
-
Future<void> _addColumnIfNotExists(
Database db, {
required String table,
@@ -41,11 +38,11 @@ Future<void> initDb({String? pathOverride}) async {
}
}
await db?.close();
- db = await openDatabase(dbFile.path, version: 8,
- onUpgrade: (Database db, int oldVersion, int newVersion) async {
- printV("migrating: $oldVersion, $newVersion");
- if (oldVersion <= 1) {
- await db.execute('''
+ db = await openDatabase(dbFile.path, version: 9,
+ onUpgrade: (Database db, int oldVersion, int newVersion) async {
+ printV("migrating: $oldVersion, $newVersion");
+ if (oldVersion <= 1) {
+ await db.execute('''
DELETE FROM WalletInfo
WHERE walletInfoId NOT IN (
SELECT MIN(walletInfoId)
@@ -56,9 +53,9 @@ WHERE walletInfoId NOT IN (
CREATE UNIQUE INDEX IF NOT EXISTS idx_walletinfo_id_unique
ON WalletInfo (id);
''');
- }
- if (oldVersion <= 2) {
- await db.execute('''
+ }
+ if (oldVersion <= 2) {
+ await db.execute('''
CREATE TABLE IF NOT EXISTS BalanceCardStyleSettings (
walletInfoId INTEGER,
accountIndex INTEGER DEFAULT -1,
@@ -69,48 +66,64 @@ CREATE TABLE IF NOT EXISTS BalanceCardStyleSettings (
FOREIGN KEY (walletInfoId) REFERENCES WalletInfo(walletInfoId)
);
''');
- await _addColumnIfNotExists(
- db,
- table: 'WalletInfo',
- column: 'receiveInfoboxDismissed',
- definition: 'BOOLEAN DEFAULT FALSE',
- );
+ await _addColumnIfNotExists(
+ db,
+ table: 'WalletInfo',
+ column: 'receiveInfoboxDismissed',
+ definition: 'BOOLEAN DEFAULT FALSE',
+ );
+
+ await _addColumnIfNotExists(
+ db,
+ table: 'BalanceCardStyleSettings',
+ column: 'cardOrder',
+ definition: 'INTEGER DEFAULT 0',
+ );
+ }
+ if (oldVersion <= 3) {
+ await _addColumnIfNotExists(db,
+ table: "WalletInfo", column: "showCombinedBalance", definition: "BOOLEAN DEFAULT TRUE");
+ // null - primary token (eth, sol etc)
+ // not null - address of fav token
+ // if address doesn't correspond to a valid token, fallback to primary token
+ await _addColumnIfNotExists(db,
+ table: "WalletInfo", column: "favoriteTokenAddress", definition: "TEXT DEFAULT NULL");
+ }
+
+ if (oldVersion <= 4) {
+ await _createBridgeTransferTable(db);
+ }
- await _addColumnIfNotExists(
- db,
- table: 'BalanceCardStyleSettings',
- column: 'cardOrder',
- definition: 'INTEGER DEFAULT 0',
- );
- }
- if (oldVersion <= 3) {
- await _addColumnIfNotExists(db, table: "WalletInfo", column: "showCombinedBalance", definition: "BOOLEAN DEFAULT TRUE");
- // null - primary token (eth, sol etc)
- // not null - address of fav token
- // if address doesn't correspond to a valid token, fallback to primary token
- await _addColumnIfNotExists(db, table: "WalletInfo", column: "favoriteTokenAddress", definition: "TEXT DEFAULT NULL");
- }
- if (oldVersion <= 4) {
- await _createBridgeTransferTable(db);
- }
- if (oldVersion <= 5) {
- await _createTradeTable(db);
- }
- if (oldVersion <= 6) {
- await _addColumnIfNotExists(
- db,
- table: 'Trade',
- column: 'toAddressExtraId',
- definition: 'TEXT',
- );
- }
- if(oldVersion <= 7) {
- await _createNodeTable(db);
- }
- },
- onCreate: (Database db, int version) async {
- await db.execute(
- '''
+ if (oldVersion <= 5) {
+ await _createTradeTable(db);
+ }
+ if (oldVersion <= 6) {
+ await _addColumnIfNotExists(
+ db,
+ table: 'Trade',
+ column: 'toAddressExtraId',
+ definition: 'TEXT',
+ );
+ }
+ if (oldVersion <= 7) {
+ await _createNodeTable(db);
+ }
+ if (oldVersion <= 8) {
+ await _addColumnIfNotExists(
+ db,
+ table: 'BalanceCardStyleSettings',
+ column: 'iconStyleIndex',
+ definition: 'INTEGER DEFAULT 0',
+ );
+ await _addColumnIfNotExists(
+ db,
+ table: 'BalanceCardStyleSettings',
+ column: 'isGradientOnly',
+ definition: 'BOOLEAN DEFAULT FALSE',
+ );
+ }
+ }, onCreate: (Database db, int version) async {
+ await db.execute('''
CREATE TABLE WalletInfo (
walletInfoId INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
id TEXT NOT NULL,
@@ -139,8 +152,7 @@ CREATE TABLE WalletInfo (
);
''');
- await db.execute(
- '''
+ await db.execute('''
CREATE TABLE WalletInfoDerivationInfo (
walletInfoDerivationInfoId INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
address TEXT NOT NULL,
@@ -153,8 +165,7 @@ CREATE TABLE WalletInfoDerivationInfo (
);
''');
- await db.execute(
- '''
+ await db.execute('''
CREATE TABLE WalletInfoAddress (
walletInfoAddressId INTEGER PRIMARY KEY AUTOINCREMENT,
walletInfoId INTEGER,
@@ -164,8 +175,7 @@ CREATE TABLE WalletInfoAddress (
);
''');
- await db.execute(
- '''
+ await db.execute('''
CREATE TABLE WalletInfoAddressInfo (
walletInfoAddressInfoId INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
walletInfoId INTEGER NOT NULL,
@@ -177,8 +187,7 @@ CREATE TABLE WalletInfoAddressInfo (
);
''');
- await db.execute(
- '''
+ await db.execute('''
CREATE TABLE "WalletInfoAddressMap" (
walletInfoAddressMapId INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
walletInfoId INTEGER NOT NULL,
@@ -186,29 +195,29 @@ CREATE TABLE "WalletInfoAddressMap" (
addressValue TEXT NOT NULL,
CONSTRAINT WalletInfoAddress_WalletInfo_FK FOREIGN KEY (walletInfoId) REFERENCES WalletInfo(walletInfoId)
);
- '''
- );
- await db.execute('''
+ ''');
+ await db.execute('''
CREATE UNIQUE INDEX IF NOT EXISTS idx_walletinfo_id_unique
ON WalletInfo (id);
''');
- await db.execute('''
+ await db.execute('''
CREATE TABLE BalanceCardStyleSettings (
walletInfoId INTEGER,
accountIndex INTEGER DEFAULT -1,
gradientIndex INTEGER DEFAULT -1,
useSpecialDesign BOOLEAN DEFAULT FALSE,
backgroundImagePath TEXT DEFAULT "",
+ iconStyleIndex INTEGER DEFAULT 0,
+ isGradientOnly BOOLEAN DEFAULT FALSE,
cardOrder INTEGER DEFAULT 0,
PRIMARY KEY (walletInfoId, accountIndex),
FOREIGN KEY (walletInfoId) REFERENCES WalletInfo(walletInfoId)
);
''');
- await _createBridgeTransferTable(db);
- await _createNodeTable(db);
- await _createTradeTable(db);
- }
- );
+ await _createBridgeTransferTable(db);
+ await _createNodeTable(db);
+ await _createTradeTable(db);
+ });
}
Future<void> _createTradeTable(Database db) async {
@@ -356,4 +365,4 @@ isBuiltin BOOLEAN DEFAULT FALSE,
isDefault BOOLEAN DEFAULT FALSE
);
""");
-}
\ No newline at end of file
+}
diff --git a/lib/new-ui/pages/account_customizer.dart b/lib/new-ui/pages/account_customizer.dart
index fd93e45d..f9456e0d 100644
--- a/lib/new-ui/pages/account_customizer.dart
+++ b/lib/new-ui/pages/account_customizer.dart
@@ -339,10 +339,10 @@ class _AccountCustomizerState extends State<AccountCustomizer> {
printV("$i: $idx");
await BalanceCardStyleSettings.fromCardDesign(
- widget.dashboardViewModel.wallet.walletInfo.internalId,
- i,
- idx,
- _items[idx].card.design)
+ walletInfoId: widget.dashboardViewModel.wallet.walletInfo.internalId,
+ accountIndex: i,
+ cardOrder: idx,
+ design: _items[idx].card.design)
.insert();
}
}
diff --git a/lib/new-ui/pages/card_customizer.dart b/lib/new-ui/pages/card_customizer.dart
index 47d91c95..7a41a4b1 100644
--- a/lib/new-ui/pages/card_customizer.dart
+++ b/lib/new-ui/pages/card_customizer.dart
@@ -5,6 +5,8 @@ import 'package:cake_wallet/generated/i18n.dart';
import 'package:cake_wallet/new-ui/viewmodels/card_customizer/card_customizer_bloc.dart';
import 'package:cake_wallet/new-ui/widgets/coins_page/cards/balance_card.dart';
import 'package:cake_wallet/new-ui/widgets/receive_page/receive_top_bar.dart';
+import 'package:cake_wallet/src/widgets/cake_image_widget.dart';
+import 'package:cw_core/card_design.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
@@ -23,7 +25,6 @@ class _CardCustomizerState extends State<CardCustomizer> {
bool editEnabled = false;
late final CardCustomizerBloc bloc;
-
@override
void initState() {
super.initState();
@@ -46,192 +47,306 @@ class _CardCustomizerState extends State<CardCustomizer> {
}
}
+ bool _showIconStylePanel(CardCustomizerState state) {
+ final design = state.availableDesigns[state.selectedDesignIndex];
+ return design.backgroundType == CardDesignBackgroundTypes.svgIcon &&
+ state.availableIconPaths.isNotEmpty;
+ }
+
+ CardDesign _cardStylePreviewDesign(CardCustomizerState state, int index) {
+ var design = state.availableDesigns[index].withGradient(state.selectedColor);
+ if (design.backgroundType == CardDesignBackgroundTypes.svgIcon &&
+ state.availableIconPaths.isNotEmpty) {
+ design = design.withIcon(state.availableIconPaths[state.selectedIconIndex]);
+ }
+ return design;
+ }
+
@override
Widget build(BuildContext context) {
return BlocListener<CardCustomizerBloc, CardCustomizerState>(
- listenWhen: (previous, current) =>
- previous.accountName != current.accountName,
+ listenWhen: (previous, current) => previous.accountName != current.accountName,
listener: (context, state) {
- if(accountNameController.text != state.accountName) {
+ if (accountNameController.text != state.accountName) {
accountNameController.text = state.accountName;
}
},
- child: BlocBuilder<CardCustomizerBloc, CardCustomizerState>(
- builder: (context, state) {
- if (state is CardCustomizerNotLoaded) return SizedBox.shrink();
- return PopScope(
- child: SingleChildScrollView(
- child: SafeArea(
- child: Column(
- spacing: 25.0,
- mainAxisSize: MainAxisSize.min,
- children: [
- ModalTopBar(
- title: editEnabled ? S.of(context).edit_account : S.of(context).edit_card,
- leadingIcon: Icon(Icons.close),
- // trailingIcon: editEnabled ? Icon(Icons.delete_forever) : null,
- onLeadingPressed: () => Navigator.of(context).maybePop(),
- // onTrailingPressed: () {},
- ),
- if (editEnabled)
- Padding(
- padding: const EdgeInsets.symmetric(horizontal: 18.0),
- child: Column(
- spacing: 8.0,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- Text(S.of(context).account_name),
- TextField(
- maxLength: 32,
- decoration: InputDecoration(counterText: ""),
- onChanged: (value) {
- context.read<CardCustomizerBloc>().add(AccountNameChanged(value));
- },
- controller: accountNameController,
- )
- ],
- ),
+ child: BlocBuilder<CardCustomizerBloc, CardCustomizerState>(
+ builder: (context, state) {
+ if (state is CardCustomizerNotLoaded) return SizedBox.shrink();
+ return PopScope(
+ child: SingleChildScrollView(
+ child: SafeArea(
+ child: Column(
+ spacing: 25.0,
+ mainAxisSize: MainAxisSize.min,
+ children: [
+ ModalTopBar(
+ title: editEnabled ? S.of(context).edit_account : S.of(context).edit_card,
+ leadingIcon: Icon(Icons.close),
+ // trailingIcon: editEnabled ? Icon(Icons.delete_forever) : null,
+ onLeadingPressed: () => Navigator.of(context).maybePop(),
+ // onTrailingPressed: () {},
),
- BalanceCard(
- width: min(MediaQuery.of(context).size.width * 0.87, 768),
- selected: true,
- designSwitchDuration: Duration(milliseconds: 300),
- accountName:
- editEnabled ? state.accountName:"" ,
- balance: "0.00",
- assetName: state.displaySats ? "sats" : widget.cryptoName,
- capitalizeAssetName: !state.displaySats,
- design: state.selectedDesign,
- ),
- Padding(
- padding: const EdgeInsets.symmetric(horizontal: 18.0),
- child: Container(
- decoration: BoxDecoration(
- color: Theme.of(context).colorScheme.surfaceContainer,
- borderRadius: BorderRadius.circular(16),
- ),
+ if (editEnabled)
+ Padding(
+ padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
+ spacing: 8.0,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
- Padding(
- padding: const EdgeInsets.all(12.0),
- child: Column(
- spacing: 8.0,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- Text(S.of(context).card_style),
- Container(
- height: 63,
- child: ListView.separated(
- scrollDirection: Axis.horizontal,
- itemCount: state.availableDesigns.length,
- separatorBuilder: (context, index) {
- return SizedBox(width: 8.0);
- },
- itemBuilder: (context, index) {
- return GestureDetector(
- onTap: () {
- context
- .read<CardCustomizerBloc>()
- .add(CardDesignSelected(index));
- },
- child: AnimatedContainer(
- duration: Duration(milliseconds: 300),
- decoration: ShapeDecoration(
- shape: RoundedSuperellipseBorder(
- side: BorderSide(color: ((index == state.selectedDesignIndex )? Theme.of(context).colorScheme.onSurface : Colors.transparent), width: 1),
- borderRadius: BorderRadiusGeometry.circular(12),
+ Text(S.of(context).account_name),
+ TextField(
+ maxLength: 32,
+ decoration: InputDecoration(counterText: ""),
+ onChanged: (value) {
+ context.read<CardCustomizerBloc>().add(AccountNameChanged(value));
+ },
+ controller: accountNameController,
+ )
+ ],
+ ),
+ ),
+ BalanceCard(
+ width: min(MediaQuery.of(context).size.width * 0.87, 768),
+ selected: true,
+ designSwitchDuration: Duration(milliseconds: 300),
+ accountName: editEnabled ? state.accountName : "",
+ balance: "0.00",
+ assetName: state.displaySats ? "sats" : widget.cryptoName,
+ capitalizeAssetName: !state.displaySats,
+ design: state.selectedDesign,
+ ),
+ Padding(
+ padding: const EdgeInsets.symmetric(horizontal: 18.0),
+ child: Container(
+ decoration: BoxDecoration(
+ color: Theme.of(context).colorScheme.surfaceContainer,
+ borderRadius: BorderRadius.circular(16),
+ ),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Padding(
+ padding: const EdgeInsets.all(12.0),
+ child: Column(
+ spacing: 8.0,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Text(S.of(context).card_style),
+ Container(
+ height: 63,
+ child: ListView.separated(
+ scrollDirection: Axis.horizontal,
+ itemCount: state.availableDesigns.length,
+ separatorBuilder: (context, index) {
+ return SizedBox(width: 8.0);
+ },
+ itemBuilder: (context, index) {
+ return GestureDetector(
+ onTap: () {
+ context
+ .read<CardCustomizerBloc>()
+ .add(CardDesignSelected(index));
+ },
+ child: AnimatedContainer(
+ duration: Duration(milliseconds: 300),
+ decoration: ShapeDecoration(
+ shape: RoundedSuperellipseBorder(
+ side: BorderSide(
+ color:
+ ((index == state.selectedDesignIndex)
+ ? Theme.of(context)
+ .colorScheme
+ .onSurface
+ : Colors.transparent),
+ width: 1),
+ borderRadius:
+ BorderRadiusGeometry.circular(12),
+ ),
),
- ),
- child: AnimatedScale(
- duration: Duration(milliseconds: 200),
- scale: index == state.selectedDesignIndex ? 0.94 : 1,
- child: BalanceCard(
- width: 96,
- borderRadius: 10,
- selected: false,
- designSwitchDuration: Duration(milliseconds: 300),
- design: state.availableDesigns[index],
- gradient: state.selectedDesign.gradient,
+ child: AnimatedScale(
+ duration: Duration(milliseconds: 200),
+ scale: index == state.selectedDesignIndex
+ ? 0.94
+ : 1,
+ child: BalanceCard(
+ width: 96,
+ borderRadius: 10,
+ selected: false,
+ designSwitchDuration:
+ Duration(milliseconds: 300),
+ design: _cardStylePreviewDesign(state, index),
+ ),
),
),
- ),
- );
- }),
+ );
+ }),
+ ),
+ ],
+ )),
+ AnimatedSwitcher(
+ duration: const Duration(milliseconds: 350),
+ switchInCurve: Curves.easeOut,
+ switchOutCurve: Curves.easeIn,
+ transitionBuilder: (Widget child, Animation<double> animation) {
+ return FadeTransition(
+ opacity: animation,
+ child: SizeTransition(
+ sizeFactor: animation,
+ axisAlignment: -1,
+ child: child,
),
- ],
- )),
- SizedBox(height: 8),
- Container(
- decoration: BoxDecoration(
- color: Theme.of(context).colorScheme.surfaceContainerHigh,
- borderRadius: BorderRadius.circular(16)),
- child: Padding(
- padding: const EdgeInsets.all(12.0),
- child: Column(
- spacing: 8.0,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- Text(S.of(context).color),
- Container(
- width: double.infinity,
- child: Wrap(
- direction: Axis.horizontal,
- spacing: 4, // space between items in a row
- runSpacing: 8,
- children:
- List.generate(state.availableColors.length, (index) {
- return Material(
- borderRadius: BorderRadius.circular(999999999),
- child: InkWell(
+ );
+ },
+ child: _showIconStylePanel(state)
+ ? Column(
+ key: const ValueKey('icon_style_panel'),
+ mainAxisSize: MainAxisSize.min,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ const SizedBox(height: 8),
+ Padding(
+ padding: const EdgeInsets.symmetric(horizontal: 12.0),
+ child: Column(
+ spacing: 8.0,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Text(S.of(context).icon_style),
+ SizedBox(
+ height: 48,
+ child: ListView.separated(
+ scrollDirection: Axis.horizontal,
+ itemCount: state.availableIconPaths.length,
+ separatorBuilder: (context, _) =>
+ const SizedBox(width: 8.0),
+ itemBuilder: (context, index) {
+ final icon = state.availableIconPaths[index];
+ final isSelected =
+ index == state.selectedIconIndex;
+ return GestureDetector(
+ onTap: () {
+ context
+ .read<CardCustomizerBloc>()
+ .add(IconStyleSelected(index));
+ },
+ child: AnimatedContainer(
+ duration:
+ const Duration(milliseconds: 200),
+ width: 48,
+ height: 48,
+ decoration: BoxDecoration(
+ borderRadius: BorderRadius.circular(18),
+ color: Theme.of(context)
+ .colorScheme
+ .surfaceContainerHigh,
+ border: Border.all(
+ color: isSelected
+ ? Theme.of(context)
+ .colorScheme
+ .onSurface
+ : Colors.transparent,
+ width: 2,
+ ),
+ ),
+ child: Padding(
+ padding: const EdgeInsets.all(10.0),
+ child: CakeImageWidget(imageUrl: icon.path),
+ ),
+ ),
+ );
+ },
+ ),
+ ),
+ ],
+ ),
+ ),
+ ],
+ )
+ : const SizedBox.shrink(key: ValueKey('icon_style_hidden')),
+ ),
+ SizedBox(height: 8),
+ Container(
+ decoration: BoxDecoration(
+ color: Theme.of(context).colorScheme.surfaceContainerHigh,
+ borderRadius: BorderRadius.circular(16)),
+ child: Padding(
+ padding: const EdgeInsets.all(12.0),
+ child: Column(
+ spacing: 8.0,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Text(S.of(context).color),
+ Container(
+ width: double.infinity,
+ child: Wrap(
+ direction: Axis.horizontal,
+ spacing: 4, // space between items in a row
+ runSpacing: 8,
+ children: List.generate(state.availableColors.length,
+ (index) {
+ return Material(
borderRadius: BorderRadius.circular(999999999),
- onTap: () {
- context
- .read<CardCustomizerBloc>()
- .add(ColorSelected(index));
- },
- child: Stack(
- children: [
- AnimatedOpacity(
- duration: Duration(milliseconds: 200),
- opacity: index == state.selectedColorIndex ? 1 : 0,
- child: Container(
- width:32,height:32,decoration: BoxDecoration(borderRadius: BorderRadius.circular(99999999),border: Border.all(color:Theme.of(context)
- .colorScheme
- .onSurface))
+ child: InkWell(
+ borderRadius: BorderRadius.circular(999999999),
+ onTap: () {
+ context
+ .read<CardCustomizerBloc>()
+ .add(ColorSelected(index));
+ },
+ child: Stack(
+ children: [
+ AnimatedOpacity(
+ duration: Duration(milliseconds: 200),
+ opacity: index == state.selectedColorIndex
+ ? 1
+ : 0,
+ child: Container(
+ width: 32,
+ height: 32,
+ decoration: BoxDecoration(
+ borderRadius:
+ BorderRadius.circular(99999999),
+ border: Border.all(
+ color: Theme.of(context)
+ .colorScheme
+ .onSurface))),
),
- ),
- AnimatedScale(
- duration: Duration(milliseconds: 200),
- scale: index == state.selectedColorIndex ? 0.8 : 1,
- child: Container(
- width: 32,
- height: 32,
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(99999999),
- gradient: state.availableColors[index]),
+ AnimatedScale(
+ duration: Duration(milliseconds: 200),
+ scale: index == state.selectedColorIndex
+ ? 0.8
+ : 1,
+ child: Container(
+ width: 32,
+ height: 32,
+ decoration: BoxDecoration(
+ borderRadius:
+ BorderRadius.circular(99999999),
+ gradient:
+ state.availableColors[index]),
+ ),
),
- ),
- ],
+ ],
+ ),
),
- ),
- );
- }),
- )),
- ],
+ );
+ }),
+ )),
+ ],
+ ),
),
- ),
- )
- ],
- ),
- )),
- ],
+ )
+ ],
+ ),
+ )),
+ ],
+ ),
),
),
- ),
- );
- },
- ),
-);
+ );
+ },
+ ),
+ );
}
}
diff --git a/lib/new-ui/viewmodels/card_customizer/card_customizer_bloc.dart b/lib/new-ui/viewmodels/card_customizer/card_customizer_bloc.dart
index 24f75fea..0bbd1a55 100644
--- a/lib/new-ui/viewmodels/card_customizer/card_customizer_bloc.dart
+++ b/lib/new-ui/viewmodels/card_customizer/card_customizer_bloc.dart
@@ -18,11 +18,14 @@ class CardCustomizerBloc extends Bloc<CardCustomizerEvent, CardCustomizerState>
final bool displaySats;
CardCustomizerBloc(this._wallet, {this.lightningMode = false, this.displaySats = false})
- : super(CardCustomizerNotLoaded(0, 0, [CardDesign.genericDefault], [], "", -1, displaySats, 0)) {
+ : super(CardCustomizerNotLoaded(
+ 0, 0, [CardDesign.genericDefault], [],
+ "", -1, displaySats, 0)) {
on<_Init>(_init);
on<CardDesignSelected>(_onDesignSelected);
on<ColorSelected>(_onColorSelected);
+ on<IconStyleSelected>(_onIconStyleSelected);
on<DesignSaved>(_onDesignSaved);
on<AccountNameChanged>(_onAccountNameChanged);
@@ -46,6 +49,7 @@ class CardCustomizerBloc extends Bloc<CardCustomizerEvent, CardCustomizerState>
final List<CardDesign> ret = List<CardDesign>.empty(growable: true);
final curr = lightningMode ? CryptoCurrency.btcln : _wallet.currency;
+ ret.add(CardDesign.gradientOnlyDesign);
ret.add(CardDesign.forCurrencyIcon(curr));
if (CardDesign.specialDesignsForCurrencies[curr] != null)
@@ -55,26 +59,30 @@ class CardCustomizerBloc extends Bloc<CardCustomizerEvent, CardCustomizerState>
}
int _initSelectedDesign(CardDesign currentDesign) {
- if (currentDesign.backgroundType == CardDesignBackgroundTypes.svgIcon)
+ if (currentDesign.backgroundType == CardDesignBackgroundTypes.gradientOnly) {
return 0;
- else if (currentDesign.backgroundType == CardDesignBackgroundTypes.svgFull)
+ }
+ if (currentDesign.backgroundType == CardDesignBackgroundTypes.svgIcon) {
return 1;
- else
- return 0;
+ }
+ if (currentDesign.backgroundType == CardDesignBackgroundTypes.svgFull) {
+ return 2;
+ }
+ return 0;
+ }
+
+ int _initSelectedIconIndex(
+ BalanceCardStyleSettings? settings,
+ List<CardIconPath> availableIconPaths,
+ ) {
+ if (settings == null || availableIconPaths.isEmpty) return 0;
+ if (settings.iconStyleIndex >= availableIconPaths.length) return 0;
+ return settings.iconStyleIndex;
}
int _initSelectedColor(CardDesign currentDesign) {
- int ret = CardDesign.allGradients.indexOf(currentDesign.gradient);
- if(ret == -1) {
- // special design with its own color. select last color in list.
- return CardDesign.allGradients.length;
- } else if (ret == -1) {
- // no color selected, select default.
- return 0;
- } else {
- // select whatever's selected.
- return ret;
- }
+ final ret = CardDesign.allGradients.indexOf(currentDesign.gradient);
+ return ret == -1 ? CardDesign.allGradients.length : ret;
}
void _init(_Init event, Emitter<CardCustomizerState> emit) async {
@@ -95,24 +103,40 @@ class CardCustomizerBloc extends Bloc<CardCustomizerEvent, CardCustomizerState>
} else {
accountIndex = -1;
}
+ final curr =
+ lightningMode ? CryptoCurrency.btcln : _wallet.currency;
final currentDesignSettings = await _loadCurrentDesignSettings(accountIndex);
- final currentDesign = CardDesign.fromStyleSettings(currentDesignSettings, lightningMode ? CryptoCurrency.btcln : _wallet.currency);
+ final currentDesign = CardDesign.fromStyleSettings(currentDesignSettings, curr);
final availableDesigns = _initAvailableDesigns(lightningMode: lightningMode);
final availableColors = _updateAvailableColors(currentDesign);
- final selectedDesign = _initSelectedDesign(currentDesign);
+ final selectedDesignIndex = _initSelectedDesign(currentDesign);
final selectedColor = _initSelectedColor(currentDesign);
-
- emit(CardCustomizerInitial(selectedDesign, selectedColor, availableDesigns, availableColors,
- accountName, accountIndex, displaySats, currentDesignSettings?.cardOrder ?? 0));
+ final availableIconPaths = CardDesign.iconPathsForWalletType(curr);
+ final selectedIconIndex = _initSelectedIconIndex(
+ currentDesignSettings, availableIconPaths);
+
+ emit(CardCustomizerInitial(
+ selectedDesignIndex,
+ selectedColor,
+ availableDesigns,
+ availableColors,
+ accountName,
+ accountIndex,
+ displaySats,
+ currentDesignSettings?.cardOrder ?? 0,
+ availableIconPaths: availableIconPaths,
+ selectedIconIndex: selectedIconIndex));
}
void _onDesignSelected(CardDesignSelected event, Emitter<CardCustomizerState> emit) {
final newColors = _updateAvailableColors(state.availableDesigns[event.newDesignIndex]);
late final int newColorIndex;
- if (newColors.length < state.availableColors.length) {
+ if (newColors.isEmpty) {
+ newColorIndex = 0;
+ } else if (newColors.length < state.availableColors.length) {
newColorIndex = 0;
} else {
- newColorIndex = state.selectedColorIndex;
+ newColorIndex = state.selectedColorIndex.clamp(0, newColors.length - 1);
}
emit(state.copyWith(
@@ -125,17 +149,36 @@ class CardCustomizerBloc extends Bloc<CardCustomizerEvent, CardCustomizerState>
emit(state.copyWith(selectedColorIndex: event.newColorIndex));
}
+ void _onIconStyleSelected(
+ IconStyleSelected event, Emitter<CardCustomizerState> emit) {
+ emit(state.copyWith(selectedIconIndex: event.iconIndex));
+ }
+
void _onAccountNameChanged(AccountNameChanged event, Emitter<CardCustomizerState> emit) {
emit(state.copyWith(accountName: event.newAccountName));
}
void _onDesignSaved(DesignSaved event, Emitter<CardCustomizerState> emit) {
BalanceCardStyleSettings.fromCardDesign(
- _wallet.walletInfo.internalId, state.accountIndex, state.cardOrder, state.selectedDesign)
+ walletInfoId: _wallet.walletInfo.internalId,
+ accountIndex: state.accountIndex,
+ cardOrder: state.cardOrder,
+ design: state.selectedDesign,
+ iconStyleIndex: state.selectedIconIndex,
+ gradientIndexOverride: state.selectedColorIndex)
.insert()
.then((value) {
- emit(CardCustomizerSaved(state.selectedDesignIndex, state.selectedColorIndex,
- state.availableDesigns, state.availableColors, state.accountName, state.accountIndex, state.displaySats, state.cardOrder));
+ emit(CardCustomizerSaved(
+ state.selectedDesignIndex,
+ state.selectedColorIndex,
+ state.availableDesigns,
+ state.availableColors,
+ state.accountName,
+ state.accountIndex,
+ state.displaySats,
+ state.cardOrder,
+ availableIconPaths: state.availableIconPaths,
+ selectedIconIndex: state.selectedIconIndex));
});
saveAccountName();
}
diff --git a/lib/new-ui/viewmodels/card_customizer/card_customizer_event.dart b/lib/new-ui/viewmodels/card_customizer/card_customizer_event.dart
index e6eba551..7b16b0e5 100644
--- a/lib/new-ui/viewmodels/card_customizer/card_customizer_event.dart
+++ b/lib/new-ui/viewmodels/card_customizer/card_customizer_event.dart
@@ -26,3 +26,9 @@ class AccountNameChanged extends CardCustomizerEvent {
class DesignSaved extends CardCustomizerEvent {}
+
+class IconStyleSelected extends CardCustomizerEvent {
+ final int iconIndex;
+
+ IconStyleSelected(this.iconIndex);
+}
diff --git a/lib/new-ui/viewmodels/card_customizer/card_customizer_state.dart b/lib/new-ui/viewmodels/card_customizer/card_customizer_state.dart
index 916c10ec..a9efc6aa 100644
--- a/lib/new-ui/viewmodels/card_customizer/card_customizer_state.dart
+++ b/lib/new-ui/viewmodels/card_customizer/card_customizer_state.dart
@@ -9,6 +9,8 @@ sealed class CardCustomizerState {
final bool displaySats;
final List<CardDesign> availableDesigns;
final List<Gradient> availableColors;
+ final List<CardIconPath> availableIconPaths;
+ final int selectedIconIndex;
CardCustomizerState(
this.selectedDesignIndex,
@@ -17,12 +19,30 @@ sealed class CardCustomizerState {
this.availableColors,
this.accountName,
this.accountIndex,
- this.displaySats,
- this.cardOrder
- );
+ this.displaySats,
+ this.cardOrder, {
+ this.availableIconPaths = const [],
+ this.selectedIconIndex = 0,
+ });
CardDesign get selectedDesign {
- return availableDesigns[selectedDesignIndex].withGradient(selectedColor);
+ final gradient = selectedColor;
+ final baseDesign = availableDesigns[selectedDesignIndex];
+
+ CardDesign design;
+ if (CardDesign.preferredColorCombinations.containsKey(gradient)) {
+ design = baseDesign.withGradient(gradient);
+ } else {
+ final specialDesign = availableDesigns.length > 2 ? availableDesigns.last : null;
+ final textColors = specialDesign?.colors ?? baseDesign.colors;
+ design = baseDesign.withGradientAndColorCombination(gradient, textColors);
+ }
+
+ if (design.backgroundType == CardDesignBackgroundTypes.svgIcon &&
+ availableIconPaths.isNotEmpty) {
+ design = design.withIcon(availableIconPaths[selectedIconIndex]);
+ }
+ return design;
}
CardCustomizerState copyWith({
@@ -33,6 +53,8 @@ sealed class CardCustomizerState {
String? accountName,
int? accountIndex,
int? cardOrder,
+ List<CardIconPath>? availableIconPaths,
+ int? selectedIconIndex,
});
Gradient get selectedColor => availableColors[selectedColorIndex];
@@ -42,7 +64,16 @@ final class CardCustomizerNotLoaded extends CardCustomizerState {
CardCustomizerNotLoaded(super.selectedDesignIndex, super.selectedColorIndex, super.availableDesigns, super.availableColors, super.accountName, super.accountIndex, super.displaySats, super.cardOrder);
@override
- CardCustomizerState copyWith({int? selectedDesignIndex, int? selectedColorIndex, List<CardDesign>? availableDesigns, List<Gradient>? availableColors, String? accountName, int? accountIndex, int? cardOrder}) {
+ CardCustomizerState copyWith(
+ {int? selectedDesignIndex,
+ int? selectedColorIndex,
+ List<CardDesign>? availableDesigns,
+ List<Gradient>? availableColors,
+ String? accountName,
+ int? accountIndex,
+ int? cardOrder,
+ List<CardIconPath>? availableIconPaths,
+ int? selectedIconIndex}) {
// this is never gonna be copied. it's near-instantly replaced with initial
throw UnimplementedError();
}
@@ -56,10 +87,14 @@ final class CardCustomizerInitial extends CardCustomizerState {
List<Gradient> availableColors,
String accountName,
int accountIndex,
- bool displaySats,
- int cardOrder,
- ) : super(selectedDesignIndex, selectedColorIndex, availableDesigns, availableColors, accountName,
- accountIndex, displaySats, cardOrder);
+ bool displaySats,
+ int cardOrder, {
+ List<CardIconPath> availableIconPaths = const [],
+ int selectedIconIndex = 0,
+ }) : super(selectedDesignIndex, selectedColorIndex, availableDesigns,
+ availableColors, accountName, accountIndex, displaySats, cardOrder,
+ availableIconPaths: availableIconPaths,
+ selectedIconIndex: selectedIconIndex);
CardCustomizerInitial copyWith({
int? selectedDesignIndex,
@@ -70,6 +105,8 @@ final class CardCustomizerInitial extends CardCustomizerState {
int? accountIndex,
bool? displaySats,
int? cardOrder,
+ List<CardIconPath>? availableIconPaths,
+ int? selectedIconIndex,
}) {
return CardCustomizerInitial(
selectedDesignIndex ?? this.selectedDesignIndex,
@@ -80,13 +117,17 @@ final class CardCustomizerInitial extends CardCustomizerState {
accountIndex ?? this.accountIndex,
displaySats ?? this.displaySats,
cardOrder ?? this.cardOrder,
+ availableIconPaths: availableIconPaths ?? this.availableIconPaths,
+ selectedIconIndex: selectedIconIndex ?? this.selectedIconIndex,
);
}
}
final class CardCustomizerSaved extends CardCustomizerState {
- CardCustomizerSaved(super.selectedDesignIndex, super.selectedColorIndex, super.availableDesigns,
- super.availableColors, super.accountName, super.accountIndex, super.displaySats, super.cardOrder);
+ CardCustomizerSaved(super.selectedDesignIndex, super.selectedColorIndex,
+ super.availableDesigns, super.availableColors, super.accountName,
+ super.accountIndex, super.displaySats, super.cardOrder,
+ {super.availableIconPaths, super.selectedIconIndex});
@override
CardCustomizerState copyWith(
@@ -96,8 +137,10 @@ final class CardCustomizerSaved extends CardCustomizerState {
List<Gradient>? availableColors,
String? accountName,
int? accountIndex,
- bool? displaySats,
- int? cardOrder}) {
+ bool? displaySats,
+ int? cardOrder,
+ List<CardIconPath>? availableIconPaths,
+ int? selectedIconIndex}) {
return CardCustomizerSaved(
selectedDesignIndex ?? this.selectedDesignIndex,
selectedColorIndex ?? this.selectedColorIndex,
@@ -107,6 +150,8 @@ final class CardCustomizerSaved extends CardCustomizerState {
accountIndex ?? this.accountIndex,
displaySats ?? this.displaySats,
cardOrder ?? this.cardOrder,
+ availableIconPaths: availableIconPaths ?? this.availableIconPaths,
+ selectedIconIndex: selectedIconIndex ?? this.selectedIconIndex,
);
}
}
diff --git a/lib/new-ui/widgets/coins_page/cards/balance_card.dart b/lib/new-ui/widgets/coins_page/cards/balance_card.dart
index 714fc5cc..88fff31d 100644
--- a/lib/new-ui/widgets/coins_page/cards/balance_card.dart
+++ b/lib/new-ui/widgets/coins_page/cards/balance_card.dart
@@ -2,7 +2,6 @@ import 'package:cake_wallet/generated/i18n.dart';
import 'package:cake_wallet/src/widgets/cake_image_widget.dart';
import 'package:cw_core/card_design.dart';
import 'package:flutter/material.dart';
-import 'package:flutter_svg/flutter_svg.dart';
class BalanceCardAction {
final String label;
@@ -247,16 +246,7 @@ class BalanceCard extends StatelessWidget {
switchInCurve: Curves.easeInOut,
switchOutCurve: Curves.easeInOut,
child: design.backgroundType == CardDesignBackgroundTypes.svgIcon
- ? CakeImageWidget(
- imageUrl: design.imagePath,
- key: const ValueKey('svgIcon'),
- height: iconWidth,
- width: iconWidth,
- colorFilter: ColorFilter.mode(
- design.colors.backgroundImageColor.withAlpha(80),
- BlendMode.srcIn,
- ),
- )
+ ? _CornerSvgIcon(design: design, iconWidth: iconWidth)
: const SizedBox.shrink(
key: ValueKey('svgIconOff'),
),
@@ -320,3 +310,26 @@ class BalanceCard extends StatelessWidget {
),
);
}
+
+class _CornerSvgIcon extends StatelessWidget {
+ const _CornerSvgIcon({required this.design, required this.iconWidth});
+
+ final CardDesign design;
+ final double iconWidth;
+
+ @override
+ Widget build(BuildContext context) {
+ return CakeImageWidget(
+ imageUrl: design.imagePath,
+ key: ValueKey(design.imagePath),
+ height: iconWidth,
+ width: iconWidth,
+ colorFilter: design.preColoredIcon
+ ? null
+ : ColorFilter.mode(
+ design.colors.backgroundImageColor.withValues(alpha: 0.33),
+ BlendMode.dstIn,
+ ),
+ );
+ }
+}
diff --git a/lib/src/widgets/cake_image_widget.dart b/lib/src/widgets/cake_image_widget.dart
index 8df0a7bc..a2807293 100644
--- a/lib/src/widgets/cake_image_widget.dart
+++ b/lib/src/widgets/cake_image_widget.dart
@@ -71,6 +71,7 @@ class CakeImageWidget extends StatelessWidget {
width: width,
fit: fit,
color: color,
+ errorBuilder: (_, __, ___) => _buildErrorWidget(context),
);
}
} else {
diff --git a/lib/view_model/monero_account_list/monero_account_edit_or_create_view_model.dart b/lib/view_model/monero_account_list/monero_account_edit_or_create_view_model.dart
index 6481efb2..8b1cc83a 100644
--- a/lib/view_model/monero_account_list/monero_account_edit_or_create_view_model.dart
+++ b/lib/view_model/monero_account_list/monero_account_edit_or_create_view_model.dart
@@ -52,10 +52,10 @@ abstract class MoneroAccountEditOrCreateViewModelBase with Store {
final gradients = await _getUsableCardGradients();
await BalanceCardStyleSettings.fromCardDesign(
- _wallet.walletInfo.internalId,
- _moneroAccountList.accounts.length,
- _moneroAccountList.accounts.length,
- CardDesign.specialDesignsForCurrencies[_wallet.currency]!
+ walletInfoId: _wallet.walletInfo.internalId,
+ accountIndex: _moneroAccountList.accounts.length,
+ cardOrder: _moneroAccountList.accounts.length,
+ design: CardDesign.specialDesignsForCurrencies[_wallet.currency]!
.withGradient(gradients[Random().nextInt(gradients.length)]))
.insert();
}
diff --git a/pubspec_base.yaml b/pubspec_base.yaml
index 99955ad4..416c6dea 100644
--- a/pubspec_base.yaml
+++ b/pubspec_base.yaml
@@ -284,6 +284,11 @@ flutter:
- assets/new-ui/navbar/
- assets/new-ui/changelog/icons/
- assets/new-ui/changelog/text/
+ - assets/new-ui/card_icons/
+ - assets/new-ui/card_icons/chain_icons/
+ - assets/new-ui/card_icons/og_icons/
+ - assets/new-ui/card_icons/outline_icons/
+ - assets/new-ui/card_icons/symbol_icons/
- assets/new-ui/crypto_full_icons/
fonts:
diff --git a/res/pictures/balance_card_icons/bnb.svg b/res/pictures/balance_card_icons/bnb.svg
index bac89c81..79eb9c84 100644
--- a/res/pictures/balance_card_icons/bnb.svg
+++ b/res/pictures/balance_card_icons/bnb.svg
@@ -1,3 +1,3 @@
-<svg width="150" height="175" viewBox="0 0 150 175" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path d="M28.9505 26.8049L75.0001 0L121.05 26.8049L104.12 36.7073L75.0001 19.8049L45.8804 36.7073L28.9505 26.8049ZM121.05 60.6098L104.12 50.7073L75.0001 67.6098L45.8804 50.7073L28.9505 60.6098V80.4147L58.0699 97.3171V131.122L75.0001 141.024L91.9301 131.122V97.3171L121.05 80.4147V60.6098ZM121.05 114.22V94.4147L104.12 104.317V124.122L121.05 114.22ZM133.07 121.22L103.951 138.122V157.927L150 131.122V77.5122L133.07 87.4147V121.22ZM116.14 43.7073L133.07 53.6098V73.4147L150 63.5122V43.7073L133.07 33.8049L116.14 43.7073ZM58.0699 145.293V165.098L75.0001 175L91.9301 165.098V145.293L75.0001 155.195L58.0699 145.293ZM28.9505 114.22L45.8804 124.122V104.317L28.9505 94.4147V114.22ZM58.0699 43.7073L75.0001 53.6098L91.9301 43.7073L75.0001 33.8049L58.0699 43.7073ZM16.93 53.6098L33.86 43.7073L16.93 33.8049L0 43.7073V63.5122L16.93 73.4147V53.6098ZM16.93 87.4147L0 77.5122V131.122L46.0496 157.927V138.122L16.93 121.22V87.4147Z" fill="white"/>
+<svg width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M0.659004 16.6807C3.59629 4.89364 15.5343 -2.2799 27.3192 0.65825C39.1069 3.59661 46.2802 15.5359 43.3416 27.3223C40.4029 39.1081 28.464 46.2809 16.6756 43.3418C4.89214 40.4034 -2.28099 28.4657 0.659004 16.6807ZM21.9998 33.8965L19.0203 32.1543V35.6397L21.9998 37.3829L24.9793 35.6397V32.1543L21.9998 33.8965ZM8.79963 29.6602L16.9041 34.378V30.8916L11.7791 27.917V21.9678L8.79963 20.2247V29.6602ZM32.2205 21.9678V27.917L27.0955 30.8916V34.378L35.2 29.6602V20.2247L32.2205 21.9678ZM21.9998 18.4815L16.8748 15.5069L13.8953 17.25V20.7354L19.0203 23.71V29.6602L21.9998 31.4024L24.9793 29.6602V23.71L30.1043 20.7354V17.25L27.1248 15.5069L21.9998 18.4815ZM13.8953 26.6846L16.8748 28.4278V24.9424L13.8953 23.1993V26.6846ZM27.1248 24.9424V28.4278L30.1043 26.6846V23.1993L27.1248 24.9424ZM8.79963 14.2745V17.7608L11.7791 19.503V16.0176L14.7596 14.2745L11.7791 12.5323L8.79963 14.2745ZM29.2401 14.2745L32.2205 16.0176V19.503L35.2 17.7608V14.2745L32.2205 12.5323L29.2401 14.2745ZM19.0203 14.2745L21.9998 16.0176L24.9793 14.2745L21.9998 12.5323L19.0203 14.2745ZM13.8953 11.2999L16.8748 13.043L21.9998 10.0684L27.1248 13.043L30.1043 11.2999L21.9998 6.58208L13.8953 11.2999Z" fill="white"/>
</svg>
diff --git a/res/pictures/balance_card_icons/cake-card-icon.svg b/res/pictures/balance_card_icons/cake-card-icon.svg
new file mode 100644
index 00000000..e1204e14
--- /dev/null
+++ b/res/pictures/balance_card_icons/cake-card-icon.svg
@@ -0,0 +1,13 @@
+<svg width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_18247_779162)">
+<path d="M35.2155 19.5085C34.752 19.9705 34.3662 20.4457 34.1055 21.142C33.8448 21.8383 33.7157 22.5965 33.5301 23.7956C33.2641 25.5028 32.7453 26.1741 32.3345 26.598C31.4957 27.4628 30.304 27.4141 28.8517 27.1271C27.9392 26.9468 27.7021 27.164 26.6171 28.1012L20.8972 33.7638L20.8945 42.3604C20.8945 42.5144 21.0815 42.5921 21.1908 42.4828L38.0847 25.6226C38.3125 25.3949 38.4416 25.0869 38.4416 24.7644L38.4626 16.2441L35.2155 19.5072V19.5085Z" fill="white"/>
+<path d="M28.3987 24.8874C29.4995 24.919 30.2671 25.7153 31.1731 25.144C32.079 24.5728 32.054 23.9371 32.2291 22.8867C32.4055 21.8349 32.7545 20.6121 33.0652 19.875C33.3773 19.1366 34.0739 18.1928 34.7823 17.5044L38.4336 13.7069L38.4573 9.8805C38.4573 9.64624 38.1755 9.52776 38.0096 9.6936L21.4041 26.2932C21.0775 26.6196 20.8945 27.0619 20.8945 27.5226V31.2897L26.5039 25.6614C26.5039 25.6614 27.2966 24.8571 28.3973 24.8887L28.3987 24.8874Z" fill="white"/>
+<path d="M38.4626 6.74317L20.8945 24.351V20.5917C20.8945 20.131 21.0775 19.6887 21.4041 19.3623L38.0136 2.75878C38.1782 2.59425 38.4613 2.71008 38.4613 2.94438V6.74317H38.4626Z" fill="white"/>
+<path d="M37.1094 0.052001L7.36798 6.52938C6.30273 6.76105 5.54297 7.70351 5.54297 8.7934V30.5028C5.54297 30.8252 5.67069 31.1346 5.89981 31.3636L18.4142 43.8735C18.6696 44.1289 19.1068 43.9485 19.1068 43.5866V20.32C19.1081 19.5526 19.4136 18.8155 19.9561 18.2732L37.4834 0.735148C37.7691 0.449517 37.5058 -0.033557 37.1108 0.052001H37.1094Z" fill="white"/>
+</g>
+<defs>
+<clipPath id="clip0_18247_779162">
+<rect width="32.9264" height="44" fill="white" transform="translate(5.54297)"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/arbitrum.svg b/res/pictures/card_icons/chain_icons/arbitrum.svg
new file mode 100644
index 00000000..376e1ccb
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/arbitrum.svg
@@ -0,0 +1,69 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M250 125C250 194.036 194.036 250 125 250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125Z" fill="url(#paint0_linear_11259_64413)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint1_linear_11259_64413)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint2_linear_11259_64413)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64413)"/>
+<path d="M138.141 139.357L129.775 162.309C129.568 162.931 129.568 163.622 129.775 164.314L144.155 203.789L160.816 194.18L140.837 139.357C140.353 138.112 138.625 138.112 138.141 139.357Z" fill="#041935"/>
+<path d="M154.94 100.78C154.456 99.5355 152.728 99.5355 152.244 100.78L143.879 123.732C143.672 124.355 143.672 125.046 143.879 125.737L167.454 190.377L184.115 180.768L154.94 100.849V100.78Z" fill="#041935"/>
+<path d="M125.316 39.8047C127.586 39.8103 129.854 40.3637 131.849 41.533L195.382 78.1737C199.461 80.5242 201.95 84.8105 201.95 89.5114V162.794C201.95 167.495 199.461 171.781 195.382 174.132L131.918 210.772C129.844 211.947 127.632 212.501 125.351 212.501C123.069 212.501 120.788 211.948 118.783 210.772L90.0345 194.174L98.2632 186.618L124.175 201.578C124.521 201.785 124.936 201.924 125.351 201.924C125.765 201.923 126.18 201.785 126.525 201.578L189.99 164.936C190.682 164.521 191.165 163.692 191.165 162.863V89.5812C191.165 88.7517 190.751 87.9223 189.99 87.5074L126.525 50.8656C126.18 50.6584 125.765 50.5203 125.351 50.5202V50.4516C124.936 50.4516 124.521 50.5896 124.175 50.797L60.71 87.4377C60.0188 87.8524 59.5354 88.682 59.5353 89.5114V162.863C59.5353 163.692 59.9497 164.521 60.71 164.936L87.0841 180.163L83.3619 190.322L55.3179 174.132C51.2391 171.781 48.7501 167.495 48.75 162.794V89.5114C48.7501 84.8105 51.2392 80.5242 55.3179 78.1737L118.783 41.533C120.846 40.3637 123.047 39.8102 125.316 39.8047Z" fill="#041935"/>
+<path d="M119.959 84.3269H103.851C102.675 84.3269 101.569 85.0874 101.155 86.1935L66.6568 180.768L83.318 190.378L121.342 86.1935C121.687 85.2257 120.996 84.2578 120.028 84.2578L119.959 84.3269Z" fill="#041935"/>
+<path d="M148.166 84.3271H132.058C130.883 84.3271 129.777 85.0876 129.362 86.1937L89.9558 194.181L106.617 203.79L149.48 86.1937C149.826 85.2258 149.134 84.258 148.166 84.258V84.3271Z" fill="#041935"/>
+<path d="M138.142 137.051L129.777 160.003C129.569 160.626 129.569 161.317 129.777 162.008L144.156 201.484L160.818 191.874L140.838 137.051C140.354 135.807 138.626 135.807 138.142 137.051Z" fill="url(#paint4_linear_11259_64413)"/>
+<path d="M154.942 98.4743C154.458 97.2299 152.729 97.2299 152.245 98.4743L143.88 121.427C143.673 122.049 143.673 122.74 143.88 123.432L167.455 188.072L184.116 178.462L154.942 98.5435V98.4743Z" fill="url(#paint5_linear_11259_64413)"/>
+<path d="M138.142 137.051C138.626 135.807 140.354 135.807 140.838 137.051L160.818 191.875L144.156 201.484L129.777 162.008C129.569 161.317 129.569 160.626 129.777 160.004L138.142 137.051ZM139.49 137.368C139.446 137.368 139.409 137.381 139.384 137.397C139.365 137.41 139.334 137.435 139.308 137.502L130.963 160.399L130.924 160.535C130.846 160.852 130.85 161.221 130.966 161.622L144.821 199.657L159.283 191.316L139.673 137.505C139.646 137.436 139.615 137.41 139.596 137.397C139.571 137.381 139.534 137.368 139.49 137.368ZM152.245 98.4753C152.729 97.2309 154.458 97.2309 154.942 98.4753V98.5437L184.116 178.463L167.455 188.072L143.88 123.432C143.699 122.827 143.677 122.222 143.813 121.664L143.88 121.427L152.245 98.4753ZM153.594 98.7917C153.55 98.7917 153.513 98.8044 153.488 98.821C153.468 98.8336 153.438 98.8589 153.411 98.9255L145.067 121.823L145.028 121.959C144.95 122.276 144.954 122.644 145.07 123.045L168.118 186.246L182.581 177.904L153.768 98.9724L153.718 98.8376C153.711 98.8309 153.705 98.8247 153.699 98.821C153.674 98.8045 153.638 98.7918 153.594 98.7917Z" fill="url(#paint6_linear_11259_64413)"/>
+<path d="M125.318 37.5C127.588 37.5054 129.858 38.0591 131.853 39.2285L195.386 75.8691C199.465 78.2197 201.954 82.506 201.954 87.207V160.489C201.954 165.19 199.465 169.477 195.386 171.827L131.921 208.468C129.847 209.643 127.635 210.196 125.354 210.196C123.072 210.196 120.791 209.643 118.786 208.468L90.0381 191.87L98.2676 184.313L124.179 199.273C124.524 199.481 124.939 199.619 125.354 199.619C125.768 199.619 126.184 199.481 126.529 199.273L189.994 162.632C190.685 162.217 191.169 161.387 191.169 160.558V87.2764C191.169 86.4469 190.754 85.617 189.994 85.2021L126.529 48.5615C126.184 48.3541 125.768 48.2158 125.354 48.2158V48.1465C124.939 48.1465 124.524 48.2849 124.179 48.4922L60.7139 85.1328C60.0226 85.5476 59.5381 86.3775 59.5381 87.207V160.558C59.5381 161.387 59.9534 162.217 60.7139 162.632L87.0869 177.858L83.3652 188.018L55.3213 171.827C51.2425 169.477 48.754 165.19 48.7539 160.489V87.207C48.754 82.506 51.2424 78.2197 55.3213 75.8691L118.786 39.2285C120.849 38.0593 123.049 37.5057 125.318 37.5Z" fill="url(#paint7_linear_11259_64413)"/>
+<path d="M200.704 160.489V87.207C200.704 83.0885 198.594 79.3238 195.104 77.1572L194.762 76.9521L131.229 40.3115L131.221 40.3066C129.436 39.2603 127.389 38.7555 125.318 38.75C123.26 38.7556 121.273 39.2566 119.402 40.3164L55.9463 76.9521H55.9453C52.367 79.0142 50.1461 82.715 50.0107 86.8096L50.0039 87.207V160.489C50.004 164.741 52.2517 168.616 55.9453 170.744H55.9463L82.7021 186.191L85.5508 178.415L60.0889 163.715V163.714C58.8877 163.045 58.2881 161.767 58.2881 160.558V87.207C58.2882 85.9306 59.0094 84.6972 60.0703 84.0605L60.0801 84.0557L60.0889 84.0498L123.554 47.4092C124.051 47.1146 124.679 46.8965 125.354 46.8965H126.604V47.21C126.8 47.2869 126.984 47.3782 127.153 47.4785L190.619 84.1191H190.618C191.821 84.7885 192.419 86.0676 192.419 87.2764V160.558C192.419 161.833 191.699 163.066 190.638 163.703L190.628 163.709L190.619 163.715L127.154 200.356L127.153 200.355C126.655 200.65 126.028 200.869 125.354 200.869C124.678 200.869 124.051 200.65 123.554 200.355V200.356L98.4365 185.854L92.1377 191.639L119.411 207.385L119.418 207.39C121.213 208.442 123.272 208.946 125.354 208.946V210.196C123.072 210.196 120.791 209.643 118.786 208.468L90.0381 191.87L98.2676 184.313L124.179 199.273C124.524 199.481 124.939 199.619 125.354 199.619C125.768 199.619 126.184 199.481 126.529 199.273L189.994 162.632C190.685 162.217 191.169 161.387 191.169 160.558V87.2764C191.169 86.4469 190.754 85.617 189.994 85.2021L126.529 48.5615C126.184 48.3541 125.768 48.2158 125.354 48.2158V48.1465C124.939 48.1465 124.524 48.2849 124.179 48.4922L60.7139 85.1328C60.0226 85.5476 59.5381 86.3775 59.5381 87.207V160.558C59.5381 161.387 59.9534 162.217 60.7139 162.632L87.0869 177.858L83.3652 188.018L55.3213 171.827C51.2425 169.477 48.754 165.19 48.7539 160.489V87.207C48.754 82.506 51.2424 78.2197 55.3213 75.8691L118.786 39.2285C120.849 38.0593 123.049 37.5057 125.318 37.5C127.588 37.5054 129.858 38.0591 131.853 39.2285L195.386 75.8691C199.465 78.2197 201.954 82.506 201.954 87.207V160.489C201.954 165.19 199.465 169.477 195.386 171.827L131.921 208.468C129.847 209.643 127.635 210.196 125.354 210.196V208.946C127.425 208.946 129.424 208.446 131.305 207.38L194.761 170.744H194.762C198.34 168.682 200.562 164.981 200.697 160.887L200.704 160.489Z" fill="url(#paint8_linear_11259_64413)"/>
+<path d="M119.958 82.0223H103.85C102.675 82.0223 101.569 82.7827 101.154 83.8889L66.6562 178.464L83.3175 188.073L121.341 83.8889C121.687 82.921 120.995 81.9531 120.028 81.9531L119.958 82.0223Z" fill="url(#paint9_linear_11259_64413)"/>
+<path d="M148.166 82.0224H132.058C130.882 82.0224 129.776 82.7829 129.362 83.8891L89.9553 191.876L106.617 201.486L149.479 83.8891C149.825 82.9212 149.134 81.9533 148.166 81.9533V82.0224Z" fill="url(#paint10_linear_11259_64413)"/>
+<path d="M148.166 81.9531C149.134 81.9532 149.825 82.921 149.48 83.8887L106.616 201.486L89.9551 191.876L129.361 83.8887C129.75 82.8519 130.747 82.119 131.838 82.0313L132.058 82.0225H148.166V81.9531ZM132.058 83.2725C131.401 83.2725 130.763 83.7126 130.532 84.3281L91.4893 191.318L105.952 199.658L148.305 83.4609C148.334 83.3743 148.316 83.3135 148.289 83.2725H132.058ZM120.027 81.9531C120.995 81.9531 121.686 82.9208 121.341 83.8887L83.3174 188.073L66.6562 178.464L101.154 83.8887C101.543 82.8518 102.54 82.1188 103.631 82.0313L103.851 82.0225H119.958L120.027 81.9531ZM103.851 83.2725C103.194 83.2725 102.555 83.7126 102.324 84.3281L68.1895 177.904L82.6533 186.246L120.164 83.4658C120.195 83.3764 120.178 83.3143 120.15 83.2725H103.851Z" fill="url(#paint11_linear_11259_64413)"/>
+<defs>
+<linearGradient id="paint0_linear_11259_64413" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#213147"/>
+<stop offset="1" stop-color="#0E1D32"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64413" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#526B8F"/>
+<stop offset="1" stop-color="#10365A"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64413" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#1E5588" stop-opacity="0"/>
+<stop offset="1" stop-color="#1E5588"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64413" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#5D85C0"/>
+<stop offset="0.15" stop-color="#5D85C0" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64413" x1="156.869" y1="97.541" x2="156.869" y2="201.484" gradientUnits="userSpaceOnUse">
+<stop stop-color="#12AAFF"/>
+<stop offset="1" stop-color="#006AA6"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64413" x1="156.869" y1="97.541" x2="156.869" y2="201.484" gradientUnits="userSpaceOnUse">
+<stop stop-color="#12AAFF"/>
+<stop offset="1" stop-color="#006AA6"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64413" x1="156.869" y1="97.5417" x2="156.869" y2="201.484" gradientUnits="userSpaceOnUse">
+<stop stop-color="#27B2FF"/>
+<stop offset="1" stop-color="#619EC9"/>
+</linearGradient>
+<linearGradient id="paint7_linear_11259_64413" x1="125.354" y1="37.5" x2="125.354" y2="210.196" gradientUnits="userSpaceOnUse">
+<stop stop-color="#9DCCED"/>
+<stop offset="1" stop-color="#5594C1"/>
+</linearGradient>
+<linearGradient id="paint8_linear_11259_64413" x1="125.354" y1="37.5" x2="125.354" y2="210.196" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D7EFFF"/>
+<stop offset="1" stop-color="#2672A6"/>
+</linearGradient>
+<linearGradient id="paint9_linear_11259_64413" x1="108.113" y1="81.9531" x2="108.113" y2="201.486" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#D0ECFF"/>
+</linearGradient>
+<linearGradient id="paint10_linear_11259_64413" x1="108.113" y1="81.9531" x2="108.113" y2="201.486" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#D0ECFF"/>
+</linearGradient>
+<linearGradient id="paint11_linear_11259_64413" x1="108.113" y1="81.9531" x2="108.113" y2="201.486" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#5796C3"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/base_icon.svg b/res/pictures/card_icons/chain_icons/base_icon.svg
new file mode 100644
index 00000000..33879508
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/base_icon.svg
@@ -0,0 +1,35 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M250 125C250 194.036 194.036 250 125 250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125Z" fill="url(#paint0_linear_11259_64337)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint1_linear_11259_64337)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint2_linear_11259_64337)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64337)"/>
+<path d="M124.857 211.875C170.21 211.875 206.977 175.172 206.977 129.898C206.977 84.624 170.21 47.9219 124.857 47.9219C81.8282 47.9219 46.5292 80.9578 43.0234 123.007H151.566V136.789H43.0234C46.5292 178.839 81.8282 211.875 124.857 211.875Z" fill="#0037AD"/>
+<path d="M124.857 207.078C170.21 207.078 206.977 170.375 206.977 125.102C206.977 79.8271 170.21 43.125 124.857 43.125C81.8282 43.125 46.5292 76.1609 43.0234 118.21H151.566V131.992H43.0234C46.5292 174.042 81.8282 207.078 124.857 207.078Z" fill="url(#paint4_linear_11259_64337)"/>
+<path d="M151.566 131.992V118.211H43.0234C46.5292 76.1614 81.8281 43.1251 124.856 43.125C170.21 43.125 206.977 79.8271 206.977 125.102C206.977 170.375 170.21 207.078 124.856 207.078V205.078C169.109 205.078 204.977 169.268 204.977 125.102C204.977 80.9349 169.109 45.125 124.856 45.125C83.6159 45.1251 49.6564 76.229 45.2275 116.211H153.566V133.992H45.2275C49.6567 173.975 83.6161 205.078 124.856 205.078V207.078C81.8282 207.078 46.5293 174.042 43.0234 131.992H151.566Z" fill="url(#paint5_linear_11259_64337)"/>
+<defs>
+<linearGradient id="paint0_linear_11259_64337" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0052FF"/>
+<stop offset="1" stop-color="#003CB9"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64337" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#2C70FF"/>
+<stop offset="1" stop-color="#005FDB"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64337" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#4A84FF" stop-opacity="0"/>
+<stop offset="1" stop-color="#4A84FF"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64337" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#578EFF"/>
+<stop offset="0.15" stop-color="#578EFF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64337" x1="125" y1="43.125" x2="125" y2="207.078" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#A7C3FF"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64337" x1="125" y1="43.125" x2="125" y2="207.078" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="white"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/bitcoin-cash.svg b/res/pictures/card_icons/chain_icons/bitcoin-cash.svg
new file mode 100644
index 00000000..42afabbe
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/bitcoin-cash.svg
@@ -0,0 +1,46 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_11259_64272)">
+<path d="M125 250C194.036 250 250 194.036 250 125C250 55.9644 194.036 0 125 0C55.9644 0 0 55.9644 0 125C0 194.036 55.9644 250 125 250Z" fill="url(#paint0_linear_11259_64272)"/>
+<path d="M125 250C194.036 250 250 194.036 250 125C250 55.9644 194.036 0 125 0C55.9644 0 0 55.9644 0 125C0 194.036 55.9644 250 125 250Z" fill="url(#paint1_linear_11259_64272)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint2_linear_11259_64272)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64272)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint4_linear_11259_64272)"/>
+<path d="M163.981 89.0268C157.7 74.7819 143.264 71.7362 125.593 74.6867L119.914 52.6689L106.526 56.1271L112.109 78.0814C108.588 78.9697 104.971 79.7311 101.386 80.7464L95.8023 58.9189L82.414 62.3771L88.093 84.3948C85.2059 85.2197 61.0625 91.4063 61.0625 91.4063L64.7427 105.746C64.7427 105.746 74.5777 102.986 74.4826 103.208C79.9394 101.781 82.5092 104.509 83.7148 107.079L99.3239 167.421C99.5143 169.166 99.197 172.149 95.4534 173.164C95.6754 173.291 85.7135 175.67 85.7135 175.67L87.1729 192.39C87.1729 192.39 111.094 186.267 114.235 185.474L119.977 207.745L133.366 204.287L127.623 181.857C131.304 181 134.889 180.112 138.378 179.192L144.089 201.495L157.477 198.037L151.735 175.797C172.357 170.784 186.919 157.777 183.937 137.885C182.033 125.892 168.931 116.057 158.049 114.947C164.743 109.014 168.137 100.353 163.981 89.0268ZM157.541 141.533C160.206 161.235 132.826 163.646 123.785 166.026L115.917 136.552C124.99 134.173 153.036 124.179 157.541 141.533ZM141.043 101.4C143.867 118.913 120.453 120.943 112.903 122.878L105.733 96.1334C113.315 94.2616 135.301 85.188 141.043 101.4Z" fill="url(#paint5_linear_11259_64272)"/>
+<path d="M163.981 83.0268C157.7 68.7819 143.264 65.7362 125.593 68.6867L119.914 46.6689L106.526 50.1271L112.109 72.0814C108.588 72.9697 104.971 73.7311 101.386 74.7464L95.8023 52.9189L82.414 56.3771L88.093 78.3948C85.2059 79.2197 61.0625 85.4063 61.0625 85.4063L64.7427 99.7463C64.7427 99.7463 74.5777 96.9862 74.4826 97.2083C79.9394 95.7806 82.5092 98.509 83.7148 101.079L99.3239 161.421C99.5143 163.166 99.197 166.149 95.4534 167.164C95.6754 167.291 85.7135 169.67 85.7135 169.67L87.1729 186.39C87.1729 186.39 111.094 180.267 114.235 179.474L119.977 201.745L133.366 198.287L127.623 175.857C131.304 175 134.889 174.112 138.378 173.192L144.089 195.495L157.477 192.037L151.735 169.797C172.357 164.784 186.919 151.777 183.937 131.885C182.033 119.892 168.931 110.057 158.049 108.947C164.743 103.014 168.137 94.353 163.981 83.0268ZM157.541 135.533C160.206 155.235 132.826 157.646 123.785 160.026L115.917 130.552C124.99 128.173 153.036 118.179 157.541 135.533ZM141.043 95.3999C143.867 112.913 120.453 114.943 112.903 116.878L105.733 90.1334C113.315 88.2616 135.301 79.188 141.043 95.3999Z" fill="white"/>
+<path d="M163.981 83.0268C157.7 68.7819 143.264 65.7362 125.593 68.6867L119.914 46.6689L106.526 50.1271L112.109 72.0814C108.588 72.9697 104.971 73.7311 101.386 74.7464L95.8023 52.9189L82.414 56.3771L88.093 78.3948C85.2059 79.2197 61.0625 85.4063 61.0625 85.4063L64.7427 99.7463C64.7427 99.7463 74.5777 96.9862 74.4826 97.2083C79.9394 95.7806 82.5092 98.509 83.7148 101.079L99.3239 161.421C99.5143 163.166 99.197 166.149 95.4534 167.164C95.6754 167.291 85.7135 169.67 85.7135 169.67L87.1729 186.39C87.1729 186.39 111.094 180.267 114.235 179.474L119.977 201.745L133.366 198.287L127.623 175.857C131.304 175 134.889 174.112 138.378 173.192L144.089 195.495L157.477 192.037L151.735 169.797C172.357 164.784 186.919 151.777 183.937 131.885C182.033 119.892 168.931 110.057 158.049 108.947C164.743 103.014 168.137 94.353 163.981 83.0268ZM157.541 135.533C160.206 155.235 132.826 157.646 123.785 160.026L115.917 130.552C124.99 128.173 153.036 118.179 157.541 135.533ZM141.043 95.3999C143.867 112.913 120.453 114.943 112.903 116.878L105.733 90.1334C113.315 88.2616 135.301 79.188 141.043 95.3999Z" fill="url(#paint6_linear_11259_64272)"/>
+<path d="M125.593 68.6865C143.264 65.736 157.7 68.7817 163.981 83.0264C168.138 94.3525 164.743 103.015 158.049 108.947C168.931 110.058 182.033 119.893 183.937 131.885C186.919 151.777 172.357 164.784 151.735 169.797L157.478 192.037L144.089 195.495L138.379 173.191C134.889 174.111 131.303 175 127.623 175.856L133.366 198.287L119.978 201.745L114.235 179.474C111.094 180.267 87.1729 186.39 87.1729 186.39L85.7139 169.67C85.7856 169.653 95.6744 167.291 95.4531 167.164C99.1965 166.149 99.5145 163.167 99.3242 161.422L83.7148 101.079C82.5093 98.5093 79.9393 95.7803 74.4824 97.208C74.5716 96.9886 64.8229 99.7237 64.7432 99.7461L61.0625 85.4062C61.0679 85.4049 85.2056 79.2194 88.0928 78.3945L82.4141 56.377L95.8027 52.9189L101.386 74.7461C104.971 73.7309 108.588 72.9694 112.109 72.0811L106.525 50.127L119.914 46.6689L125.593 68.6865ZM108.954 51.5645L114.542 73.5303L112.599 74.0205C108.961 74.9382 105.493 75.6622 101.931 76.6709L99.957 77.2295L94.3604 55.3564L84.8496 57.8135L90.5166 79.7822L88.6426 80.3184C87.1665 80.7401 80.3704 82.502 73.9941 84.1465C70.7952 84.9715 67.6868 85.7713 65.3779 86.3643C64.6688 86.5464 64.0348 86.7087 63.4971 86.8467L66.1719 97.2734C67.0301 97.036 68.0787 96.7473 69.126 96.4639C70.3517 96.1321 71.5869 95.8036 72.5146 95.5713C72.9737 95.4563 73.3821 95.3586 73.6826 95.2959C73.8212 95.267 73.9929 95.2338 74.1504 95.2148C74.1682 95.2127 74.2067 95.2083 74.2598 95.2041C77.2593 94.4772 79.7206 94.8091 81.6689 95.8984C83.5095 96.9276 84.665 98.5045 85.3867 99.9434L85.5254 100.229L85.6045 100.397L101.26 160.921L101.297 161.061L101.312 161.204C101.43 162.277 101.413 163.878 100.667 165.432C99.9094 167.01 98.4958 168.329 96.2627 169.009C96.1936 169.041 96.1436 169.062 96.126 169.069C95.9827 169.127 95.8193 169.179 95.6865 169.22C95.3978 169.308 94.9966 169.419 94.541 169.541C93.6205 169.787 92.382 170.1 91.1484 170.406C89.9638 170.7 88.7733 170.989 87.8555 171.211L88.96 183.867C89.4088 183.752 89.9135 183.624 90.4639 183.483C92.7556 182.897 95.8438 182.106 99.0303 181.291C105.401 179.662 112.17 177.932 113.745 177.534L115.675 177.047L121.414 199.308L130.934 196.849L125.179 174.372L127.17 173.909C130.832 173.057 134.398 172.173 137.868 171.258L139.816 170.744L145.529 193.057L155.041 190.601L149.291 168.333L151.263 167.854C161.323 165.408 169.717 161.054 175.215 155.067C180.658 149.141 183.359 141.52 181.959 132.182C181.099 126.801 177.692 121.748 173.073 117.866C168.449 113.98 162.819 111.444 157.846 110.937L153.311 110.474L156.722 107.45C159.832 104.694 162.106 101.368 163.152 97.4883C164.192 93.6332 164.06 89.0817 162.125 83.7773C159.22 77.2289 154.502 73.3063 148.433 71.3086C142.26 69.277 134.596 69.211 125.922 70.6592L124.114 70.9609L118.477 49.1055L108.954 51.5645ZM138.299 123.647C142.791 123.324 147.374 123.612 151.204 125.262C155.142 126.958 158.186 130.06 159.477 135.03L159.507 135.146L159.522 135.265C160.258 140.705 158.915 145.089 156.248 148.557C153.63 151.961 149.838 154.354 145.858 156.105C141.866 157.862 137.536 159.036 133.694 159.915C129.709 160.827 126.549 161.367 124.294 161.96L122.366 162.467L113.466 129.127L115.409 128.617C119.757 127.477 129.345 124.292 138.299 123.647ZM157.541 135.533C153.036 118.179 124.991 128.172 115.917 130.552L123.784 160.025C132.826 157.646 160.206 155.235 157.541 135.533ZM123.945 83.9893C127.702 83.7396 131.606 84.0639 135.019 85.6631C138.396 87.2457 141.143 90.0104 142.774 94.3115L142.929 94.7324L142.989 94.9023L143.018 95.082C143.802 99.9455 142.769 103.895 140.527 107.034C138.33 110.111 135.086 112.254 131.693 113.801C128.29 115.353 124.592 116.371 121.329 117.118C119.694 117.493 118.145 117.804 116.793 118.078C115.421 118.356 114.284 118.589 113.399 118.815L111.483 119.307L103.272 88.6807L105.253 88.1914C108.711 87.3379 116.555 84.4804 123.945 83.9893ZM141.044 95.4004C135.302 79.1885 113.315 88.262 105.732 90.1338L112.902 116.878C120.453 114.943 143.867 112.913 141.044 95.4004Z" fill="white"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_11259_64272" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#00D096"/>
+<stop offset="1" stop-color="#008F5D"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64272" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#00744C" stop-opacity="0"/>
+<stop offset="1" stop-color="#00744C" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64272" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#00FFB7"/>
+<stop offset="1" stop-color="#00AC9D"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64272" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#00C4E6" stop-opacity="0"/>
+<stop offset="1" stop-color="#00C4E6"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64272" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#56FFCF"/>
+<stop offset="0.15" stop-color="#56FFCF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64272" x1="122.693" y1="52.6689" x2="122.693" y2="207.745" gradientUnits="userSpaceOnUse">
+<stop stop-color="#01A06B"/>
+<stop offset="1" stop-color="#029262"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64272" x1="122.693" y1="46.6689" x2="122.693" y2="201.745" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#BCFFEC"/>
+</linearGradient>
+<clipPath id="clip0_11259_64272">
+<rect width="250" height="250" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/bitcoin.svg b/res/pictures/card_icons/chain_icons/bitcoin.svg
new file mode 100644
index 00000000..7b63e0e2
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/bitcoin.svg
@@ -0,0 +1,50 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M246.259 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.259 155.241Z" fill="url(#paint0_linear_11259_64222)"/>
+<path d="M246.259 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.259 155.241Z" fill="url(#paint1_linear_11259_64222)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint2_linear_11259_64222)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint3_linear_11259_64222)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint4_linear_11259_64222)"/>
+<path d="M180.117 113.191C182.605 96.5586 169.941 87.6172 152.625 81.6523L158.242 59.1211L144.527 55.7031L139.059 77.6406C135.453 76.7422 131.75 75.8945 128.07 75.0547L133.578 52.9727L119.871 49.5547L114.25 72.0781C111.266 71.3984 108.336 70.7266 105.492 70.0195L105.508 69.9492L86.5937 65.2266L82.9453 79.875C82.9453 79.875 93.1211 82.207 92.9062 82.3516C98.4609 83.7383 99.4648 87.4141 99.2969 90.3281L92.8984 115.996C93.2812 116.094 93.7773 116.234 94.3242 116.453C93.8672 116.34 93.3789 116.215 92.875 116.094L83.9062 152.051C83.2266 153.738 81.5039 156.27 77.6211 155.309C77.7578 155.508 67.6523 152.82 67.6523 152.82L60.8438 168.52L78.6914 172.969C82.0117 173.801 85.2656 174.672 88.4688 175.492L82.793 198.281L96.4922 201.699L102.113 179.152C105.855 180.168 109.488 181.105 113.043 181.988L107.441 204.43L121.156 207.848L126.832 185.102C150.219 189.527 167.805 187.742 175.207 166.59C181.172 149.559 174.91 139.734 162.605 133.328C171.566 131.262 178.316 125.367 180.117 113.191ZM148.781 157.133C144.543 174.164 115.867 164.957 106.57 162.648L114.102 132.457C123.398 134.777 153.211 139.371 148.781 157.133ZM153.023 112.945C149.156 128.438 125.289 120.566 117.547 118.637L124.375 91.2539C132.117 93.1836 157.051 96.7852 153.023 112.945Z" fill="url(#paint5_linear_11259_64222)"/>
+<path d="M180.117 107.191C182.605 90.5586 169.941 81.6172 152.625 75.6523L158.242 53.1211L144.527 49.7031L139.059 71.6406C135.453 70.7422 131.75 69.8945 128.07 69.0547L133.578 46.9727L119.871 43.5547L114.25 66.0781C111.266 65.3984 108.336 64.7266 105.492 64.0195L105.508 63.9492L86.5937 59.2266L82.9453 73.875C82.9453 73.875 93.1211 76.207 92.9062 76.3516C98.4609 77.7383 99.4648 81.4141 99.2969 84.3281L92.8984 109.996C93.2812 110.094 93.7773 110.234 94.3242 110.453C93.8672 110.34 93.3789 110.215 92.875 110.094L83.9062 146.051C83.2266 147.738 81.5039 150.27 77.6211 149.309C77.7578 149.508 67.6523 146.82 67.6523 146.82L60.8438 162.52L78.6914 166.969C82.0117 167.801 85.2656 168.672 88.4688 169.492L82.793 192.281L96.4922 195.699L102.113 173.152C105.855 174.168 109.488 175.105 113.043 175.988L107.441 198.43L121.156 201.848L126.832 179.102C150.219 183.527 167.805 181.742 175.207 160.59C181.172 143.559 174.91 133.734 162.605 127.328C171.566 125.262 178.316 119.367 180.117 107.191ZM148.781 151.133C144.543 168.164 115.867 158.957 106.57 156.648L114.102 126.457C123.398 128.777 153.211 133.371 148.781 151.133ZM153.023 106.945C149.156 122.438 125.289 114.566 117.547 112.637L124.375 85.2539C132.117 87.1836 157.051 90.7852 153.023 106.945Z" fill="white"/>
+<path d="M180.117 107.191C182.605 90.5586 169.941 81.6172 152.625 75.6523L158.242 53.1211L144.527 49.7031L139.059 71.6406C135.453 70.7422 131.75 69.8945 128.07 69.0547L133.578 46.9727L119.871 43.5547L114.25 66.0781C111.266 65.3984 108.336 64.7266 105.492 64.0195L105.508 63.9492L86.5937 59.2266L82.9453 73.875C82.9453 73.875 93.1211 76.207 92.9062 76.3516C98.4609 77.7383 99.4648 81.4141 99.2969 84.3281L92.8984 109.996C93.2812 110.094 93.7773 110.234 94.3242 110.453C93.8672 110.34 93.3789 110.215 92.875 110.094L83.9062 146.051C83.2266 147.738 81.5039 150.27 77.6211 149.309C77.7578 149.508 67.6523 146.82 67.6523 146.82L60.8438 162.52L78.6914 166.969C82.0117 167.801 85.2656 168.672 88.4688 169.492L82.793 192.281L96.4922 195.699L102.113 173.152C105.855 174.168 109.488 175.105 113.043 175.988L107.441 198.43L121.156 201.848L126.832 179.102C150.219 183.527 167.805 181.742 175.207 160.59C181.172 143.559 174.91 133.734 162.605 127.328C171.566 125.262 178.316 119.367 180.117 107.191ZM148.781 151.133C144.543 168.164 115.867 158.957 106.57 156.648L114.102 126.457C123.398 128.777 153.211 133.371 148.781 151.133ZM153.023 106.945C149.156 122.438 125.289 114.566 117.547 112.637L124.375 85.2539C132.117 87.1836 157.051 90.7852 153.023 106.945Z" fill="url(#paint6_linear_11259_64222)"/>
+<path d="M180.117 107.191C182.605 90.5586 169.941 81.6172 152.625 75.6523L158.242 53.1211L144.527 49.7031L139.059 71.6406C135.453 70.7422 131.75 69.8945 128.07 69.0547L133.578 46.9727L119.871 43.5547L114.25 66.0781C111.266 65.3984 108.336 64.7266 105.492 64.0195L105.508 63.9492L86.5937 59.2266L82.9453 73.875C82.9453 73.875 93.1211 76.207 92.9062 76.3516C98.4609 77.7383 99.4648 81.4141 99.2969 84.3281L92.8984 109.996C93.2812 110.094 93.7773 110.234 94.3242 110.453C93.8672 110.34 93.3789 110.215 92.875 110.094L83.9062 146.051C83.2266 147.738 81.5039 150.27 77.6211 149.309C77.7578 149.508 67.6523 146.82 67.6523 146.82L60.8438 162.52L78.6914 166.969C82.0117 167.801 85.2656 168.672 88.4688 169.492L82.793 192.281L96.4922 195.699L102.113 173.152C105.855 174.168 109.488 175.105 113.043 175.988L107.441 198.43L121.156 201.848L126.832 179.102C150.219 183.527 167.805 181.742 175.207 160.59C181.172 143.559 174.91 133.734 162.605 127.328C171.566 125.262 178.316 119.367 180.117 107.191ZM148.781 151.133C144.543 168.164 115.867 158.957 106.57 156.648L114.102 126.457C123.398 128.777 153.211 133.371 148.781 151.133ZM153.023 106.945C149.156 122.438 125.289 114.566 117.547 112.637L124.375 85.2539C132.117 87.1836 157.051 90.7852 153.023 106.945Z" fill="url(#paint7_linear_11259_64222)"/>
+<path d="M133.578 46.9727L128.07 69.0547C130.83 69.6846 133.603 70.3188 136.338 70.9756L139.059 71.6406L144.527 49.7031L158.242 53.1211L152.625 75.6523C169.941 81.6172 182.605 90.5586 180.117 107.191C178.316 119.367 171.566 125.262 162.605 127.328C174.91 133.734 181.172 143.559 175.207 160.59C167.805 181.742 150.219 183.527 126.832 179.102L121.156 201.848L107.441 198.43L113.043 175.988C109.488 175.105 105.855 174.168 102.113 173.152L96.4922 195.699L82.793 192.281L88.4687 169.492C85.2656 168.672 82.0117 167.801 78.6914 166.969L60.8438 162.52L67.6523 146.82C67.6523 146.82 77.7578 149.508 77.6211 149.309C81.5039 150.27 83.2266 147.738 83.9062 146.051L92.875 110.094C93.3789 110.215 93.8672 110.34 94.3242 110.453C93.7773 110.234 93.2812 110.094 92.8984 109.996L99.2969 84.3281C99.4648 81.4141 98.4609 77.7383 92.9062 76.3516C93.121 76.2071 82.9526 73.8767 82.9453 73.875L86.5937 59.2266L105.508 63.9492L105.492 64.0195C106.914 64.3731 108.357 64.7183 109.818 65.0596L114.25 66.0781L119.871 43.5547L133.578 46.9727ZM115.716 68.4629L113.806 68.0283C110.822 67.3488 107.875 66.6723 105.01 65.96L103.116 65.4902L103.132 65.417L88.0498 61.6514L85.376 72.3857C86.271 72.5942 87.373 72.8521 88.4707 73.1143C89.7317 73.4154 90.9987 73.7239 91.9414 73.9678C92.4077 74.0884 92.819 74.1996 93.1162 74.2891C93.2529 74.3302 93.4218 74.3832 93.5703 74.4424C93.5864 74.4488 93.625 74.4645 93.6777 74.4883C96.6943 75.2998 98.7248 76.7859 99.9365 78.6953C101.159 80.6223 101.393 82.7318 101.294 84.4434L101.283 84.6299L101.237 84.8115L94.8389 110.479L94.4873 110.392L94.457 110.488L94.8154 110.578L85.8467 146.535L85.8135 146.669L85.7617 146.798C85.3483 147.824 84.5623 149.263 83.1367 150.294C81.6823 151.345 79.7639 151.821 77.4209 151.312C77.3459 151.306 77.2917 151.3 77.2715 151.297C77.1278 151.278 76.9653 151.246 76.8271 151.218C76.5301 151.156 76.1201 151.061 75.6523 150.948C74.7084 150.72 73.4451 150.4 72.1885 150.076C70.9656 149.761 69.7399 149.439 68.8027 149.192L63.6172 161.149L79.1748 165.028H79.1777C82.4962 165.86 85.7982 166.744 88.9648 167.555L90.8896 168.048L85.2158 190.824L95.0352 193.274L100.667 170.688L102.637 171.223C106.363 172.234 109.983 173.167 113.525 174.047L115.469 174.53L109.866 196.973L119.699 199.423L125.349 176.785L127.204 177.137C138.83 179.337 148.668 179.913 156.426 177.526C164.002 175.195 169.806 169.969 173.319 159.93C176.191 151.731 176.021 145.564 173.925 140.776C171.817 135.962 167.608 132.188 161.682 129.103L156.872 126.598L162.156 125.379C166.333 124.416 169.877 122.591 172.583 119.688C175.288 116.786 177.285 112.668 178.139 106.898L178.14 106.896C179.286 99.2333 176.974 93.4637 172.378 88.8301C167.682 84.0963 160.534 80.4916 151.974 77.543L150.241 76.9463L155.817 54.5771L145.983 52.127L140.516 74.0645L138.575 73.5811C134.992 72.6881 131.307 71.8452 127.625 71.0049L125.636 70.5508L131.153 48.4287L121.327 45.9785L115.716 68.4629ZM114.586 124.517C119.032 125.626 129.133 127.425 137.415 131.184C141.573 133.071 145.51 135.547 148.114 138.879C150.791 142.304 151.986 146.549 150.722 151.617C149.498 156.532 146.449 159.618 142.505 161.338C138.664 163.013 134.032 163.378 129.469 163.141C120.358 162.666 110.587 159.707 106.088 158.59L104.146 158.107L112.646 124.032L114.586 124.517ZM106.57 156.648C115.867 158.957 144.543 168.164 148.781 151.133C153.211 133.371 123.398 128.777 114.102 126.457L106.57 156.648ZM124.858 83.3135C128.507 84.2229 137.032 85.6804 143.967 88.9541C147.46 90.603 150.787 92.8106 152.961 95.8447C155.198 98.9667 156.111 102.826 154.964 107.429C153.849 111.893 151.23 114.779 147.812 116.44C144.489 118.055 140.526 118.465 136.665 118.323C128.976 118.041 120.771 115.501 117.063 114.577L115.122 114.094L122.918 82.8301L124.858 83.3135ZM117.547 112.637C125.289 114.566 149.156 122.437 153.023 106.945C157.051 90.7852 132.117 87.1836 124.375 85.2539L117.547 112.637Z" fill="url(#paint8_linear_11259_64222)"/>
+<defs>
+<linearGradient id="paint0_linear_11259_64222" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F7BC1A"/>
+<stop offset="1" stop-color="#FF6A00"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64222" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#C94701" stop-opacity="0"/>
+<stop offset="1" stop-color="#C94701" stop-opacity="0.3"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64222" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFE091"/>
+<stop offset="1" stop-color="#FF9735"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64222" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#FFA54D" stop-opacity="0"/>
+<stop offset="1" stop-color="#FFA54D"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64222" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFF3DA"/>
+<stop offset="0.15" stop-color="#FFF3DA" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64222" x1="120.637" y1="49.5547" x2="120.637" y2="207.848" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F89A02"/>
+<stop offset="1" stop-color="#F56600"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64222" x1="120.637" y1="43.5547" x2="120.637" y2="201.848" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FFF1CF"/>
+</linearGradient>
+<linearGradient id="paint7_linear_11259_64222" x1="120.637" y1="43.5547" x2="120.637" y2="201.848" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FEEABD"/>
+</linearGradient>
+<linearGradient id="paint8_linear_11259_64222" x1="120.637" y1="43.5547" x2="120.637" y2="201.848" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="white"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/bnb.svg b/res/pictures/card_icons/chain_icons/bnb.svg
new file mode 100644
index 00000000..a8db2b10
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/bnb.svg
@@ -0,0 +1,39 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint0_linear_14353_354078)"/>
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint1_linear_14353_354078)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint2_linear_14353_354078)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint3_linear_14353_354078)"/>
+<path d="M79.2083 68.3049L125.258 41.5L171.307 68.3049L154.377 78.2073L125.258 61.3049L96.1383 78.2073L79.2083 68.3049ZM171.307 102.11L154.377 92.2073L125.258 109.11L96.1383 92.2073L79.2083 102.11V121.915L108.328 138.817V172.622L125.258 182.524L142.188 172.622V138.817L171.307 121.915V102.11ZM171.307 155.72V135.915L154.377 145.817V165.622L171.307 155.72ZM183.328 162.72L154.208 179.622V199.427L200.258 172.622V119.012L183.328 128.915V162.72ZM166.398 85.2073L183.328 95.1098V114.915L200.258 105.012V85.2073L183.328 75.3049L166.398 85.2073ZM108.328 186.793V206.598L125.258 216.5L142.188 206.598V186.793L125.258 196.695L108.328 186.793ZM79.2083 155.72L96.1383 165.622V145.817L79.2083 135.915V155.72ZM108.328 85.2073L125.258 95.1098L142.188 85.2073L125.258 75.3049L108.328 85.2073ZM67.1878 95.1098L84.1178 85.2073L67.1878 75.3049L50.2578 85.2073V105.012L67.1878 114.915V95.1098ZM67.1878 128.915L50.2578 119.012V172.622L96.3074 199.427V179.622L67.1878 162.72V128.915Z" fill="#F0B90B"/>
+<path d="M79.2083 68.3049L125.258 41.5L171.307 68.3049L154.377 78.2073L125.258 61.3049L96.1383 78.2073L79.2083 68.3049ZM171.307 102.11L154.377 92.2073L125.258 109.11L96.1383 92.2073L79.2083 102.11V121.915L108.328 138.817V172.622L125.258 182.524L142.188 172.622V138.817L171.307 121.915V102.11ZM171.307 155.72V135.915L154.377 145.817V165.622L171.307 155.72ZM183.328 162.72L154.208 179.622V199.427L200.258 172.622V119.012L183.328 128.915V162.72ZM166.398 85.2073L183.328 95.1098V114.915L200.258 105.012V85.2073L183.328 75.3049L166.398 85.2073ZM108.328 186.793V206.598L125.258 216.5L142.188 206.598V186.793L125.258 196.695L108.328 186.793ZM79.2083 155.72L96.1383 165.622V145.817L79.2083 135.915V155.72ZM108.328 85.2073L125.258 95.1098L142.188 85.2073L125.258 75.3049L108.328 85.2073ZM67.1878 95.1098L84.1178 85.2073L67.1878 75.3049L50.2578 85.2073V105.012L67.1878 114.915V95.1098ZM67.1878 128.915L50.2578 119.012V172.622L96.3074 199.427V179.622L67.1878 162.72V128.915Z" fill="#F1B80B"/>
+<path d="M79.2083 68.3049L125.258 41.5L171.307 68.3049L154.377 78.2073L125.258 61.3049L96.1383 78.2073L79.2083 68.3049ZM171.307 102.11L154.377 92.2073L125.258 109.11L96.1383 92.2073L79.2083 102.11V121.915L108.328 138.817V172.622L125.258 182.524L142.188 172.622V138.817L171.307 121.915V102.11ZM171.307 155.72V135.915L154.377 145.817V165.622L171.307 155.72ZM183.328 162.72L154.208 179.622V199.427L200.258 172.622V119.012L183.328 128.915V162.72ZM166.398 85.2073L183.328 95.1098V114.915L200.258 105.012V85.2073L183.328 75.3049L166.398 85.2073ZM108.328 186.793V206.598L125.258 216.5L142.188 206.598V186.793L125.258 196.695L108.328 186.793ZM79.2083 155.72L96.1383 165.622V145.817L79.2083 135.915V155.72ZM108.328 85.2073L125.258 95.1098L142.188 85.2073L125.258 75.3049L108.328 85.2073ZM67.1878 95.1098L84.1178 85.2073L67.1878 75.3049L50.2578 85.2073V105.012L67.1878 114.915V95.1098ZM67.1878 128.915L50.2578 119.012V172.622L96.3074 199.427V179.622L67.1878 162.72V128.915Z" fill="black"/>
+<path d="M79.2083 64.3049L125.258 37.5L171.307 64.3049L154.377 74.2073L125.258 57.3049L96.1383 74.2073L79.2083 64.3049ZM171.307 98.1098L154.377 88.2073L125.258 105.11L96.1383 88.2073L79.2083 98.1098V117.915L108.328 134.817V168.622L125.258 178.524L142.188 168.622V134.817L171.307 117.915V98.1098ZM171.307 151.72V131.915L154.377 141.817V161.622L171.307 151.72ZM183.328 158.72L154.208 175.622V195.427L200.258 168.622V115.012L183.328 124.915V158.72ZM166.398 81.2073L183.328 91.1098V110.915L200.258 101.012V81.2073L183.328 71.3049L166.398 81.2073ZM108.328 182.793V202.598L125.258 212.5L142.188 202.598V182.793L125.258 192.695L108.328 182.793ZM79.2083 151.72L96.1383 161.622V141.817L79.2083 131.915V151.72ZM108.328 81.2073L125.258 91.1098L142.188 81.2073L125.258 71.3049L108.328 81.2073ZM67.1878 91.1098L84.1178 81.2073L67.1878 71.3049L50.2578 81.2073V101.012L67.1878 110.915V91.1098ZM67.1878 124.915L50.2578 115.012V168.622L96.3074 195.427V175.622L67.1878 158.72V124.915Z" fill="#F0B90B"/>
+<path d="M79.2083 64.3049L125.258 37.5L171.307 64.3049L154.377 74.2073L125.258 57.3049L96.1383 74.2073L79.2083 64.3049ZM171.307 98.1098L154.377 88.2073L125.258 105.11L96.1383 88.2073L79.2083 98.1098V117.915L108.328 134.817V168.622L125.258 178.524L142.188 168.622V134.817L171.307 117.915V98.1098ZM171.307 151.72V131.915L154.377 141.817V161.622L171.307 151.72ZM183.328 158.72L154.208 175.622V195.427L200.258 168.622V115.012L183.328 124.915V158.72ZM166.398 81.2073L183.328 91.1098V110.915L200.258 101.012V81.2073L183.328 71.3049L166.398 81.2073ZM108.328 182.793V202.598L125.258 212.5L142.188 202.598V182.793L125.258 192.695L108.328 182.793ZM79.2083 151.72L96.1383 161.622V141.817L79.2083 131.915V151.72ZM108.328 81.2073L125.258 91.1098L142.188 81.2073L125.258 71.3049L108.328 81.2073ZM67.1878 91.1098L84.1178 81.2073L67.1878 71.3049L50.2578 81.2073V101.012L67.1878 110.915V91.1098ZM67.1878 124.915L50.2578 115.012V168.622L96.3074 195.427V175.622L67.1878 158.72V124.915Z" fill="#F1B80B"/>
+<path d="M79.2083 64.3049L125.258 37.5L171.307 64.3049L154.377 74.2073L125.258 57.3049L96.1383 74.2073L79.2083 64.3049ZM171.307 98.1098L154.377 88.2073L125.258 105.11L96.1383 88.2073L79.2083 98.1098V117.915L108.328 134.817V168.622L125.258 178.524L142.188 168.622V134.817L171.307 117.915V98.1098ZM171.307 151.72V131.915L154.377 141.817V161.622L171.307 151.72ZM183.328 158.72L154.208 175.622V195.427L200.258 168.622V115.012L183.328 124.915V158.72ZM166.398 81.2073L183.328 91.1098V110.915L200.258 101.012V81.2073L183.328 71.3049L166.398 81.2073ZM108.328 182.793V202.598L125.258 212.5L142.188 202.598V182.793L125.258 192.695L108.328 182.793ZM79.2083 151.72L96.1383 161.622V141.817L79.2083 131.915V151.72ZM108.328 81.2073L125.258 91.1098L142.188 81.2073L125.258 71.3049L108.328 81.2073ZM67.1878 91.1098L84.1178 81.2073L67.1878 71.3049L50.2578 81.2073V101.012L67.1878 110.915V91.1098ZM67.1878 124.915L50.2578 115.012V168.622L96.3074 195.427V175.622L67.1878 158.72V124.915Z" fill="url(#paint4_linear_14353_354078)"/>
+<path d="M141.188 202.023L125.258 211.341L109.328 202.023V184.536L124.753 193.559L125.258 193.854L125.763 193.559L141.188 184.536V202.023ZM66.1875 125.488V159.295L66.6855 159.584L95.3076 176.197V193.688L51.2578 168.047V116.755L66.1875 125.488ZM199.258 168.047L155.208 193.688V176.197L183.83 159.584L184.328 159.295V125.488L199.258 116.755V168.047ZM95.1387 142.391V159.878L80.208 151.146V133.658L95.1387 142.391ZM170.308 151.146L155.377 159.878V142.391L170.308 133.658V151.146ZM82.1367 81.207L66.6826 90.2471L66.1875 90.5361V109.171L51.2578 100.438V81.7803L67.1875 72.4629L82.1367 81.207ZM140.206 81.207L125.258 89.9512L110.309 81.207L125.258 72.4629L140.206 81.207ZM169.323 64.3066L154.374 73.0498L125.76 56.4404L125.258 56.1484L124.756 56.4404L96.1406 73.0498L81.1914 64.3066L125.258 38.6562L169.323 64.3066ZM109.328 134.241L108.83 133.952L80.208 117.339V98.6826L96.1396 89.3643L124.756 105.975L125.258 106.266L125.76 105.975L154.375 89.3643L170.308 98.6826V117.339L141.686 133.952L141.188 134.241V168.048L125.258 177.365L109.328 168.048V134.241ZM184.328 90.5361L183.833 90.2471L168.378 81.207L183.327 72.4629L199.258 81.7803V100.438L184.328 109.171V90.5361Z" stroke="url(#paint5_linear_14353_354078)" stroke-width="2"/>
+<defs>
+<linearGradient id="paint0_linear_14353_354078" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#252525"/>
+<stop offset="1" stop-color="#0C0C0C"/>
+</linearGradient>
+<linearGradient id="paint1_linear_14353_354078" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#231F10"/>
+<stop offset="1" stop-color="#0E0B03"/>
+</linearGradient>
+<linearGradient id="paint2_linear_14353_354078" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#231E11"/>
+<stop offset="1" stop-color="#523D00"/>
+</linearGradient>
+<linearGradient id="paint3_linear_14353_354078" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#8A8168"/>
+<stop offset="0.15" stop-color="#8A8168" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint4_linear_14353_354078" x1="125.258" y1="37.5" x2="125.258" y2="212.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F1B80B"/>
+<stop offset="1" stop-color="#9F7800"/>
+</linearGradient>
+<linearGradient id="paint5_linear_14353_354078" x1="125.258" y1="37.5" x2="125.258" y2="212.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFE69B"/>
+<stop offset="1" stop-color="#D69F00"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/decred.svg b/res/pictures/card_icons/chain_icons/decred.svg
new file mode 100644
index 00000000..cff4f8b3
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/decred.svg
@@ -0,0 +1,69 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M250.004 125C250.004 194.036 194.04 250 125.004 250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.04 0 250.004 55.9644 250.004 125Z" fill="url(#paint0_linear_18222_929590)"/>
+<path d="M250.004 125C250.004 194.036 194.04 250 125.004 250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.04 0 250.004 55.9644 250.004 125Z" fill="url(#paint1_linear_18222_929590)"/>
+<path d="M250.004 125C250.004 194.036 194.04 250 125.004 250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.04 0 250.004 55.9644 250.004 125Z" fill="url(#paint2_linear_18222_929590)"/>
+<path d="M250.004 125C250.004 194.036 194.04 250 125.004 250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.04 0 250.004 55.9644 250.004 125Z" fill="url(#paint3_linear_18222_929590)"/>
+<path d="M245.004 125C245.004 58.7258 191.278 5 125.004 5C58.7297 5 5.00391 58.7258 5.00391 125C5.00391 191.274 58.7297 245 125.004 245V250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.039 0 250.004 55.9644 250.004 125C250.004 194.036 194.039 250 125.004 250V245C191.278 245 245.004 191.274 245.004 125Z" fill="url(#paint4_linear_18222_929590)"/>
+<path d="M245.004 125C245.004 58.7258 191.278 5 125.004 5C58.7297 5 5.00391 58.7258 5.00391 125C5.00391 191.274 58.7297 245 125.004 245V250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.039 0 250.004 55.9644 250.004 125C250.004 194.036 194.039 250 125.004 250V245C191.278 245 245.004 191.274 245.004 125Z" fill="url(#paint5_linear_18222_929590)"/>
+<path d="M245.004 125C245.004 58.7258 191.278 5 125.004 5C58.7297 5 5.00391 58.7258 5.00391 125C5.00391 191.274 58.7297 245 125.004 245V250C55.9683 250 0.00390625 194.036 0.00390625 125C0.00390625 55.9644 55.9683 0 125.004 0C194.039 0 250.004 55.9644 250.004 125C250.004 194.036 194.039 250 125.004 250V245C191.278 245 245.004 191.274 245.004 125Z" fill="url(#paint6_linear_18222_929590)"/>
+<path d="M134.246 115.545H97.4163C90.8341 115.545 84.5218 118.16 79.8675 122.814C75.2132 127.469 72.598 133.781 72.598 140.363C72.598 146.946 75.2131 153.259 79.8675 157.913C84.5218 162.567 90.8342 165.183 97.4163 165.183H109.134L134.235 186.966H97.4163C86.6096 186.963 76.1398 183.206 67.7972 176.337C59.4545 169.468 53.7572 159.913 51.681 149.308C49.6047 138.702 51.2779 127.704 56.4144 118.196C61.5508 108.688 69.8312 101.26 79.8392 97.1826L50.8255 71.9658H84.0814L134.246 115.545Z" fill="url(#paint7_linear_18222_929590)"/>
+<path d="M153.095 71.9658C163.902 71.9682 174.372 75.7254 182.715 82.5947C191.058 89.464 196.754 99.0186 198.83 109.624C200.907 120.23 199.233 131.227 194.097 140.735C188.961 150.243 180.68 157.672 170.672 161.749L199.709 186.954H166.453L116.266 143.387H153.095C159.677 143.387 165.99 140.772 170.645 136.117C175.299 131.463 177.914 125.15 177.914 118.568C177.914 111.986 175.299 105.673 170.645 101.019C165.99 96.3642 159.677 93.749 153.095 93.749H141.377L116.266 71.9658H153.095Z" fill="url(#paint8_linear_18222_929590)"/>
+<path d="M134.249 111.546H97.4202C90.8379 111.546 84.5248 114.16 79.8704 118.814C75.216 123.469 72.6019 129.782 72.6019 136.364C72.6019 142.947 75.216 149.26 79.8704 153.914C84.5248 158.568 90.8379 161.183 97.4202 161.183H109.138L134.238 182.967H97.4202C86.6134 182.964 76.1428 179.207 67.8001 172.338C59.4576 165.469 53.7612 155.914 51.6849 145.309C49.6086 134.703 51.2818 123.705 56.4183 114.197C61.5547 104.689 69.835 97.261 79.8431 93.1836L50.8294 67.9668H84.0853L134.249 111.546ZM153.097 67.9668C163.904 67.9692 174.374 71.7264 182.717 78.5957C191.06 85.465 196.756 95.0196 198.832 105.625C200.909 116.231 199.235 127.228 194.099 136.736C188.962 146.244 180.682 153.673 170.674 157.75L199.711 182.955H166.455L116.268 139.388H153.097C159.679 139.388 165.992 136.773 170.647 132.118C175.301 127.464 177.916 121.151 177.916 114.569C177.916 107.987 175.301 101.674 170.647 97.0195C165.992 92.3651 159.679 89.75 153.097 89.75H141.379L116.268 67.9668H153.097Z" fill="url(#paint9_linear_18222_929590)"/>
+<path d="M134.249 111.546H97.4202C90.8379 111.546 84.5248 114.16 79.8704 118.814C75.216 123.469 72.6019 129.782 72.6019 136.364C72.6019 142.947 75.216 149.26 79.8704 153.914C84.5248 158.568 90.8379 161.183 97.4202 161.183H109.138L134.238 182.967H97.4202C86.6134 182.964 76.1428 179.207 67.8001 172.338C59.4576 165.469 53.7612 155.914 51.6849 145.309C49.6086 134.703 51.2818 123.705 56.4183 114.197C61.5547 104.689 69.835 97.261 79.8431 93.1836L50.8294 67.9668H84.0853L134.249 111.546ZM153.097 67.9668C163.904 67.9692 174.374 71.7264 182.717 78.5957C191.06 85.465 196.756 95.0196 198.832 105.625C200.909 116.231 199.235 127.228 194.099 136.736C188.962 146.244 180.682 153.673 170.674 157.75L199.711 182.955H166.455L116.268 139.388H153.097C159.679 139.388 165.992 136.773 170.647 132.118C175.301 127.464 177.916 121.151 177.916 114.569C177.916 107.987 175.301 101.674 170.647 97.0195C165.992 92.3651 159.679 89.75 153.097 89.75H141.379L116.268 67.9668H153.097Z" fill="url(#paint10_linear_18222_929590)"/>
+<path d="M134.25 111.546H97.4202V109.546H128.899L83.3382 69.9668H56.179L83.6107 93.8086L80.598 95.0361C71.0195 98.9385 63.0941 106.048 58.178 115.147C53.262 124.248 51.6606 134.774 53.6478 144.925C55.635 155.075 61.0879 164.219 69.0726 170.794C77.0571 177.368 87.0775 180.964 97.4202 180.967V182.967C86.6136 182.964 76.1437 179.207 67.8011 172.338C59.4584 165.469 53.7611 155.914 51.6849 145.309C49.6086 134.703 51.2818 123.705 56.4183 114.197C61.5547 104.689 69.8351 97.261 79.8431 93.1836L50.8294 67.9668H84.0853L134.25 111.546ZM70.6019 136.364C70.6019 129.252 73.428 122.431 78.4573 117.401C83.4867 112.372 90.3075 109.546 97.4202 109.546V111.546C90.838 111.546 84.5257 114.161 79.8714 118.815C75.2171 123.47 72.6019 129.782 72.6019 136.364C72.6019 142.947 75.217 149.26 79.8714 153.914C84.5257 158.568 90.8381 161.184 97.4202 161.184H109.138L134.239 182.967H97.4202V180.967H128.883L108.391 163.184H97.4202C90.3075 163.184 83.4866 160.357 78.4573 155.328C73.4279 150.299 70.6019 143.477 70.6019 136.364ZM153.099 67.9668C163.906 67.9692 174.376 71.7264 182.719 78.5957C191.062 85.465 196.758 95.0196 198.834 105.625C200.911 116.231 199.237 127.228 194.101 136.736C188.964 146.244 180.684 153.673 170.676 157.75L199.713 182.955H166.457L116.27 139.388H153.099C159.681 139.388 165.994 136.773 170.649 132.118C175.303 127.464 177.918 121.151 177.918 114.569C177.918 107.987 175.303 101.674 170.649 97.0195C165.994 92.3652 159.681 89.75 153.099 89.75V87.75C160.212 87.75 167.033 90.5761 172.063 95.6055C176.935 100.478 179.74 107.032 179.91 113.903L179.918 114.569C179.918 121.682 177.092 128.503 172.063 133.532C167.033 138.562 160.212 141.388 153.099 141.388H121.625L167.205 180.955H194.357L166.907 157.126L169.921 155.897C179.5 151.995 187.425 144.886 192.341 135.786C197.257 126.686 198.859 116.159 196.871 106.009C194.884 95.8586 189.432 86.7141 181.448 80.1396C173.712 73.7705 164.066 70.1967 154.067 69.9775L153.099 69.9668H121.627L142.127 87.75H153.099V89.75H141.381L116.27 67.9668H153.099Z" fill="url(#paint11_linear_18222_929590)"/>
+<path d="M134.25 111.546H97.4202V109.546H128.899L83.3382 69.9668H56.179L83.6107 93.8086L80.598 95.0361C71.0195 98.9385 63.0941 106.048 58.178 115.147C53.262 124.248 51.6606 134.774 53.6478 144.925C55.635 155.075 61.0879 164.219 69.0726 170.794C77.0571 177.368 87.0775 180.964 97.4202 180.967V182.967C86.6136 182.964 76.1437 179.207 67.8011 172.338C59.4584 165.469 53.7611 155.914 51.6849 145.309C49.6086 134.703 51.2818 123.705 56.4183 114.197C61.5547 104.689 69.8351 97.261 79.8431 93.1836L50.8294 67.9668H84.0853L134.25 111.546ZM70.6019 136.364C70.6019 129.252 73.428 122.431 78.4573 117.401C83.4867 112.372 90.3075 109.546 97.4202 109.546V111.546C90.838 111.546 84.5257 114.161 79.8714 118.815C75.2171 123.47 72.6019 129.782 72.6019 136.364C72.6019 142.947 75.217 149.26 79.8714 153.914C84.5257 158.568 90.8381 161.184 97.4202 161.184H109.138L134.239 182.967H97.4202V180.967H128.883L108.391 163.184H97.4202C90.3075 163.184 83.4866 160.357 78.4573 155.328C73.4279 150.299 70.6019 143.477 70.6019 136.364ZM153.099 67.9668C163.906 67.9692 174.376 71.7264 182.719 78.5957C191.062 85.465 196.758 95.0196 198.834 105.625C200.911 116.231 199.237 127.228 194.101 136.736C188.964 146.244 180.684 153.673 170.676 157.75L199.713 182.955H166.457L116.27 139.388H153.099C159.681 139.388 165.994 136.773 170.649 132.118C175.303 127.464 177.918 121.151 177.918 114.569C177.918 107.987 175.303 101.674 170.649 97.0195C165.994 92.3652 159.681 89.75 153.099 89.75V87.75C160.212 87.75 167.033 90.5761 172.063 95.6055C176.935 100.478 179.74 107.032 179.91 113.903L179.918 114.569C179.918 121.682 177.092 128.503 172.063 133.532C167.033 138.562 160.212 141.388 153.099 141.388H121.625L167.205 180.955H194.357L166.907 157.126L169.921 155.897C179.5 151.995 187.425 144.886 192.341 135.786C197.257 126.686 198.859 116.159 196.871 106.009C194.884 95.8586 189.432 86.7141 181.448 80.1396C173.712 73.7705 164.066 70.1967 154.067 69.9775L153.099 69.9668H121.627L142.127 87.75H153.099V89.75H141.381L116.27 67.9668H153.099Z" fill="url(#paint12_linear_18222_929590)"/>
+<defs>
+<linearGradient id="paint0_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#033DBC"/>
+<stop offset="1" stop-color="#000D62"/>
+</linearGradient>
+<linearGradient id="paint1_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0043D3"/>
+<stop offset="1" stop-color="#00138C"/>
+</linearGradient>
+<linearGradient id="paint2_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0043D3"/>
+<stop offset="1" stop-color="#00138C"/>
+</linearGradient>
+<linearGradient id="paint3_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#000F3C" stop-opacity="0"/>
+<stop offset="1" stop-color="#000F3C" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint4_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0C52E0"/>
+<stop offset="1" stop-color="#002186"/>
+</linearGradient>
+<linearGradient id="paint5_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#003EFF" stop-opacity="0"/>
+<stop offset="1" stop-color="#0027E3"/>
+</linearGradient>
+<linearGradient id="paint6_linear_18222_929590" x1="125.004" y1="0" x2="125.004" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#5A8DFF"/>
+<stop offset="0.15" stop-color="#2B71FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint7_linear_18222_929590" x1="125.261" y1="71.9658" x2="125.261" y2="186.966" gradientUnits="userSpaceOnUse">
+<stop stop-color="#001E78"/>
+<stop offset="1" stop-color="#001553"/>
+</linearGradient>
+<linearGradient id="paint8_linear_18222_929590" x1="125.261" y1="71.9658" x2="125.261" y2="186.966" gradientUnits="userSpaceOnUse">
+<stop stop-color="#001E78"/>
+<stop offset="1" stop-color="#001553"/>
+</linearGradient>
+<linearGradient id="paint9_linear_18222_929590" x1="92.5332" y1="67.9668" x2="92.5332" y2="182.966" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#9ABBFF"/>
+</linearGradient>
+<linearGradient id="paint10_linear_18222_929590" x1="92.5332" y1="67.9668" x2="92.5332" y2="182.966" gradientUnits="userSpaceOnUse">
+<stop stop-color="#E0E9FF"/>
+<stop offset="1" stop-color="#9ABBFF"/>
+</linearGradient>
+<linearGradient id="paint11_linear_18222_929590" x1="125.265" y1="67.9668" x2="125.265" y2="182.967" gradientUnits="userSpaceOnUse">
+<stop stop-color="white" stop-opacity="0.5"/>
+<stop offset="1" stop-color="white" stop-opacity="0.2"/>
+</linearGradient>
+<linearGradient id="paint12_linear_18222_929590" x1="125.265" y1="67.9668" x2="125.265" y2="182.967" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="white"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/dogecoin.svg b/res/pictures/card_icons/chain_icons/dogecoin.svg
new file mode 100644
index 00000000..f9448acd
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/dogecoin.svg
@@ -0,0 +1,50 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_11259_64264)">
+<circle cx="125" cy="125" r="125" fill="url(#paint0_linear_11259_64264)"/>
+<circle cx="125" cy="125" r="125" fill="url(#paint1_linear_11259_64264)"/>
+<circle cx="125" cy="125" r="125" fill="url(#paint2_linear_11259_64264)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64264)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint4_linear_11259_64264)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint5_linear_11259_64264)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M121.493 61.4005C130.686 61.4005 191.562 59.4928 191.562 130.085C191.562 201.846 127.911 196.512 127.911 196.512H82.6416V136.329H66.6836V121.587H82.6406V61.4005H121.493ZM108.14 86.3742V121.585H136.238V136.328H108.14V171.536H126.875C131.69 171.536 166.395 172.079 166.341 130.571C166.287 89.0638 132.681 86.3743 126 86.3742H108.14Z" fill="url(#paint6_linear_11259_64264)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M121.493 57.4005C130.686 57.4005 191.562 55.4928 191.562 126.085C191.562 197.846 127.911 192.512 127.911 192.512H82.6416V132.329H66.6836V117.587H82.6406V57.4005H121.493ZM108.14 82.3742V117.585H136.238V132.328H108.14V167.536H126.875C131.69 167.536 166.395 168.079 166.341 126.571C166.287 85.0638 132.681 82.3743 126 82.3742H108.14Z" fill="url(#paint7_linear_11259_64264)"/>
+<path d="M121.493 57.4005C130.686 57.4005 191.562 55.4929 191.562 126.085C191.562 197.846 127.911 192.512 127.911 192.512H82.6416V132.329H66.6836V117.587H82.6406V57.4005H121.493ZM121.493 59.4005H84.6406V119.587H68.6836V130.329H84.6416V190.512H127.995L128.078 190.519H128.077C128.078 190.519 128.079 190.52 128.081 190.52C128.086 190.52 128.094 190.521 128.106 190.522C128.131 190.523 128.171 190.526 128.225 190.529C128.333 190.537 128.499 190.547 128.719 190.557C129.158 190.577 129.813 190.598 130.652 190.601C132.332 190.606 134.747 190.537 137.649 190.235C143.465 189.629 151.182 188.096 158.871 184.406C166.545 180.724 174.185 174.898 179.919 165.682C185.654 156.464 189.562 143.724 189.562 126.085C189.562 108.73 185.823 95.9837 180.192 86.6017C174.564 77.2235 166.971 71.0838 159.066 67.0529C143.179 58.9509 126.122 59.4005 121.493 59.4005ZM126 80.3742C129.516 80.3742 140.026 81.0682 149.727 87.2189C159.577 93.4648 168.313 105.167 168.341 126.568C168.355 137.228 166.135 145.335 162.608 151.479C159.079 157.628 154.305 161.697 149.391 164.375C140.854 169.028 131.87 169.49 128.137 169.532L126.875 169.536H106.14V130.328H134.238V119.585H106.14V80.3742H126ZM108.14 117.585H136.238V132.328H108.14V167.536H126.875C131.69 167.536 166.395 168.079 166.341 126.571C166.287 85.0639 132.681 82.3743 126 82.3742H108.14V117.585Z" fill="white"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_11259_64264" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FFE991"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64264" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#C2A633"/>
+<stop offset="1" stop-color="#9A6A00"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64264" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#825101" stop-opacity="0"/>
+<stop offset="1" stop-color="#825101" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64264" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#E9CB57"/>
+<stop offset="1" stop-color="#BD8202"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64264" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#D08E00" stop-opacity="0.12549"/>
+<stop offset="1" stop-color="#D08E00"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64264" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFE379"/>
+<stop offset="0.15" stop-color="#FFE379" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64264" x1="129.123" y1="61.3955" x2="129.123" y2="196.601" gradientUnits="userSpaceOnUse">
+<stop stop-color="#BD8400"/>
+<stop offset="1" stop-color="#8E6500"/>
+</linearGradient>
+<linearGradient id="paint7_linear_11259_64264" x1="129.123" y1="57.3955" x2="129.123" y2="192.601" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FFECA3"/>
+</linearGradient>
+<clipPath id="clip0_11259_64264">
+<rect width="250" height="250" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/ethereum.svg b/res/pictures/card_icons/chain_icons/ethereum.svg
new file mode 100644
index 00000000..88ac153f
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/ethereum.svg
@@ -0,0 +1,74 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M250 125C250 194.036 194.036 250 125 250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125Z" fill="url(#paint0_linear_11259_64252)"/>
+<path d="M250 125C250 194.036 194.036 250 125 250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125Z" fill="url(#paint1_linear_11259_64252)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint2_linear_11259_64252)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64252)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint4_linear_11259_64252)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint5_linear_11259_64252)"/>
+<path d="M124.961 220.624L69.9609 143.175L124.961 175.624L179.961 143.073L124.961 220.624Z" fill="url(#paint6_linear_11259_64252)"/>
+<path d="M179.961 132.563L124.961 165.012L69.9609 132.563L124.961 41.2363L179.961 132.563Z" fill="url(#paint7_linear_11259_64252)"/>
+<path d="M124.961 169.624V214.624L179.961 137.073L124.961 169.624Z" fill="url(#paint8_linear_11259_64252)"/>
+<path d="M69.9609 137.175L124.961 214.624V169.624L69.9609 137.175Z" fill="url(#paint9_linear_11259_64252)"/>
+<path d="M179.961 126.563L124.961 35.2363V159.012L179.961 126.563Z" fill="url(#paint10_linear_11259_64252)"/>
+<path d="M124.961 35.2363L69.9609 126.563L124.961 159.012V35.2363Z" fill="url(#paint11_linear_11259_64252)"/>
+<path d="M124.961 214.625V214.624L69.9609 137.175L124.961 169.624L179.961 137.073L124.961 214.625ZM125.979 171.345C125.352 171.716 124.572 171.717 123.944 171.347L77.0215 143.663L124.96 211.168L172.895 143.578L125.979 171.345ZM179.961 126.563L124.961 159.012V159.013L69.9609 126.563L124.961 35.2363L179.961 126.563ZM72.7148 125.865L124.96 156.689L177.206 125.865L124.961 39.1123L72.7148 125.865Z" fill="url(#paint12_linear_11259_64252)"/>
+<path d="M124.961 214.625V214.624L69.9609 137.175L124.961 169.624L179.961 137.073L124.961 214.625ZM125.979 171.345C125.352 171.716 124.572 171.717 123.944 171.347L77.0215 143.663L124.96 211.168L172.895 143.578L125.979 171.345ZM179.961 126.563L124.961 159.012V159.013L69.9609 126.563L124.961 35.2363L179.961 126.563ZM72.7148 125.865L124.96 156.689L177.206 125.865L124.961 39.1123L72.7148 125.865Z" fill="url(#paint13_linear_11259_64252)"/>
+<defs>
+<linearGradient id="paint0_linear_11259_64252" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#5970FF"/>
+<stop offset="1" stop-color="#3D1BFF"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64252" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#301CB7" stop-opacity="0"/>
+<stop offset="1" stop-color="#301CB7" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64252" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#798BFF"/>
+<stop offset="1" stop-color="#001EE2"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64252" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#798BFF"/>
+<stop offset="1" stop-color="#5A41FF"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64252" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#8774FF" stop-opacity="0"/>
+<stop offset="1" stop-color="#8774FF"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64252" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#A9B5FF"/>
+<stop offset="0.15" stop-color="#A9B5FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64252" x1="124.961" y1="41.2363" x2="124.961" y2="220.624" gradientUnits="userSpaceOnUse">
+<stop offset="0.246132" stop-color="#3F39F9"/>
+<stop offset="1" stop-color="#3122D3"/>
+</linearGradient>
+<linearGradient id="paint7_linear_11259_64252" x1="124.961" y1="41.2363" x2="124.961" y2="220.624" gradientUnits="userSpaceOnUse">
+<stop offset="0.246132" stop-color="#3F39F9"/>
+<stop offset="1" stop-color="#3122D3"/>
+</linearGradient>
+<linearGradient id="paint8_linear_11259_64252" x1="152.461" y1="137.073" x2="152.461" y2="214.624" gradientUnits="userSpaceOnUse">
+<stop stop-color="#98A6FF"/>
+<stop offset="1" stop-color="#526AFF"/>
+</linearGradient>
+<linearGradient id="paint9_linear_11259_64252" x1="97.461" y1="137.175" x2="97.461" y2="214.624" gradientUnits="userSpaceOnUse">
+<stop stop-color="#B8C2FF"/>
+<stop offset="1" stop-color="#8B9BFF"/>
+</linearGradient>
+<linearGradient id="paint10_linear_11259_64252" x1="152.461" y1="35.2363" x2="152.461" y2="159.012" gradientUnits="userSpaceOnUse">
+<stop stop-color="#B4BFFF"/>
+<stop offset="1" stop-color="#6278FE"/>
+</linearGradient>
+<linearGradient id="paint11_linear_11259_64252" x1="97.461" y1="35.2363" x2="97.461" y2="159.012" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F4F5FF"/>
+<stop offset="1" stop-color="#AEB9FF"/>
+</linearGradient>
+<linearGradient id="paint12_linear_11259_64252" x1="124.961" y1="35.2363" x2="124.961" y2="214.625" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="0.546865" stop-color="white" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint13_linear_11259_64252" x1="124.961" y1="35.2363" x2="124.961" y2="214.625" gradientUnits="userSpaceOnUse">
+<stop offset="0.751951" stop-color="white" stop-opacity="0"/>
+<stop offset="1" stop-color="white" stop-opacity="0.5"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/lightning.svg b/res/pictures/card_icons/chain_icons/lightning.svg
new file mode 100644
index 00000000..bab1adf9
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/lightning.svg
@@ -0,0 +1,47 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M246.252 155.241C229.557 222.205 161.732 262.959 94.7596 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7758C20.451 27.8031 88.2752 -12.9547 155.228 3.74061C222.197 20.4359 262.947 88.2719 246.252 155.241Z" fill="#F7931A"/>
+<path d="M246.252 155.241C229.557 222.205 161.732 262.959 94.7596 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7758C20.451 27.8031 88.2752 -12.9547 155.228 3.74061C222.197 20.4359 262.947 88.2719 246.252 155.241Z" fill="url(#paint0_linear_14352_348907)"/>
+<path d="M246.252 155.241C229.557 222.205 161.732 262.959 94.7596 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7758C20.451 27.8031 88.2752 -12.9547 155.228 3.74061C222.197 20.4359 262.947 88.2719 246.252 155.241Z" fill="url(#paint1_linear_14352_348907)"/>
+<path d="M246.252 155.241C229.557 222.205 161.732 262.959 94.7596 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7758C20.451 27.8031 88.2752 -12.9547 155.228 3.74061C222.197 20.4359 262.947 88.2719 246.252 155.241Z" fill="url(#paint2_linear_14352_348907)"/>
+<path d="M3.76352 94.7757C20.4512 27.8033 88.2754 -12.9547 155.228 3.74058C222.197 20.4359 262.947 88.272 246.252 155.241L245.852 156.806C228.634 222.319 162.265 262.198 96.329 246.641L94.7597 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7757ZM154.018 8.59214C89.7456 -7.43476 24.6351 31.6917 8.61509 95.9847V95.9866C-7.41942 160.268 31.7034 225.381 95.9686 241.408C160.262 257.44 225.373 218.317 241.4 154.032C257.428 89.7415 218.307 24.6193 154.018 8.59214Z" fill="url(#paint3_linear_14352_348907)"/>
+<path d="M3.76352 94.7757C20.4512 27.8033 88.2754 -12.9547 155.228 3.74058C222.197 20.4359 262.947 88.272 246.252 155.241L245.852 156.806C228.634 222.319 162.265 262.198 96.329 246.641L94.7597 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7757ZM154.018 8.59214C89.7456 -7.43476 24.6351 31.6917 8.61509 95.9847V95.9866C-7.41942 160.268 31.7034 225.381 95.9686 241.408C160.262 257.44 225.373 218.317 241.4 154.032C257.428 89.7415 218.307 24.6193 154.018 8.59214Z" fill="url(#paint4_linear_14352_348907)"/>
+<path d="M3.76352 94.7757C20.4512 27.8033 88.2754 -12.9547 155.228 3.74058C222.197 20.4359 262.947 88.272 246.252 155.241L245.852 156.806C228.634 222.319 162.265 262.198 96.329 246.641L94.7597 246.26C27.8143 229.565 -12.9396 161.737 3.76352 94.7757ZM154.018 8.59214C89.7456 -7.43476 24.6351 31.6917 8.61509 95.9847V95.9866C-7.41942 160.268 31.7034 225.381 95.9686 241.408C160.262 257.44 225.373 218.317 241.4 154.032C257.428 89.7415 218.307 24.6193 154.018 8.59214Z" fill="url(#paint5_linear_14352_348907)"/>
+<path d="M59.8672 139.11L153.37 58.5384C157.444 55.9292 161.327 58.5384 158.841 63.0146L128.999 121.703H182.216C182.216 121.703 190.671 121.703 182.216 128.666L90.2058 209.734C83.7402 215.205 79.264 212.221 83.7402 203.766L112.587 146.57H59.8672C59.8672 146.57 51.4121 146.57 59.8672 139.11Z" fill="#F66E00"/>
+<path d="M59.8672 139.11L153.37 58.5384C157.444 55.9292 161.327 58.5384 158.841 63.0146L128.999 121.703H182.216C182.216 121.703 190.671 121.703 182.216 128.666L90.2058 209.734C83.7402 215.205 79.264 212.221 83.7402 203.766L112.587 146.57H59.8672C59.8672 146.57 51.4121 146.57 59.8672 139.11Z" fill="url(#paint6_linear_14352_348907)"/>
+<path d="M59.8672 129.11L153.37 48.5384C157.444 45.9292 161.327 48.5384 158.841 53.0146L128.999 111.703H182.216C182.216 111.703 190.671 111.703 182.216 118.666L90.2058 199.734C83.7402 205.205 79.264 202.221 83.7402 193.766L112.587 136.57H59.8672C59.8672 136.57 51.4122 136.57 59.8672 129.11Z" fill="url(#paint7_linear_14352_348907)"/>
+<path d="M153.37 48.5381C157.444 45.9293 161.327 48.5386 158.841 53.0146L128.999 111.703H182.216C182.216 111.703 190.671 111.703 182.216 118.666L90.206 199.734L89.9043 199.984C83.6025 205.11 79.3339 202.089 83.7402 193.766L112.587 136.57H59.8672L59.5205 136.556C58.0447 136.456 52.6656 135.667 59.4834 129.454L59.8672 129.11L153.37 48.5381ZM157.358 49.7138C157.097 49.5162 156.108 49.2016 154.55 50.1601L61.1728 130.625C59.1363 132.425 58.3889 133.553 58.1709 134.13C58.1586 134.162 58.1504 134.192 58.1425 134.217C58.3059 134.302 58.5992 134.409 59.0254 134.484C59.2691 134.527 59.4939 134.55 59.6562 134.561C59.7358 134.566 59.7973 134.568 59.8349 134.569C59.8537 134.57 59.8664 134.57 59.872 134.57H115.835L85.5263 194.667L85.5166 194.685L85.5078 194.702C84.4623 196.677 84.0261 198.177 83.9463 199.191C83.907 199.691 83.9586 200.015 84.0185 200.202C84.0743 200.376 84.1322 200.421 84.1367 200.425C84.1439 200.431 84.1966 200.473 84.3623 200.492C84.5453 200.513 84.8502 200.5 85.292 200.375C86.1886 200.12 87.4319 199.461 88.914 198.207L180.894 117.165L180.919 117.143L180.944 117.122C182.863 115.542 183.621 114.527 183.878 113.995C183.7 113.924 183.434 113.843 183.08 113.785C182.831 113.744 182.602 113.722 182.436 113.712C182.355 113.707 182.291 113.704 182.252 113.703H125.738L157.058 52.1084L157.074 52.0752L157.092 52.0429C157.573 51.1768 157.647 50.5775 157.616 50.2461C157.588 49.9474 157.477 49.8036 157.358 49.7138Z" fill="white"/>
+<defs>
+<linearGradient id="paint0_linear_14352_348907" x1="125.006" y1="0" x2="125.006" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F7BC1A"/>
+<stop offset="1" stop-color="#FF7700"/>
+</linearGradient>
+<linearGradient id="paint1_linear_14352_348907" x1="125.006" y1="0" x2="125.006" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F7BC1A"/>
+<stop offset="1" stop-color="#FF6A00"/>
+</linearGradient>
+<linearGradient id="paint2_linear_14352_348907" x1="125.006" y1="0" x2="125.006" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#C94701" stop-opacity="0"/>
+<stop offset="1" stop-color="#C94701" stop-opacity="0.3"/>
+</linearGradient>
+<linearGradient id="paint3_linear_14352_348907" x1="125.006" y1="0.000349739" x2="125.006" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFE091"/>
+<stop offset="1" stop-color="#FF9735"/>
+</linearGradient>
+<linearGradient id="paint4_linear_14352_348907" x1="125.006" y1="0.000349739" x2="125.006" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#FFA54D" stop-opacity="0"/>
+<stop offset="1" stop-color="#FFA54D"/>
+</linearGradient>
+<linearGradient id="paint5_linear_14352_348907" x1="125.006" y1="0.000349739" x2="125.006" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFF3DA"/>
+<stop offset="0.15" stop-color="#FFF3DA" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint6_linear_14352_348907" x1="121.042" y1="57.5" x2="121.042" y2="212.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F89A02"/>
+<stop offset="1" stop-color="#F56600"/>
+</linearGradient>
+<linearGradient id="paint7_linear_14352_348907" x1="121.042" y1="47.5" x2="121.042" y2="202.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FEEABD"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/litecoin.svg b/res/pictures/card_icons/chain_icons/litecoin.svg
new file mode 100644
index 00000000..426237a3
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/litecoin.svg
@@ -0,0 +1,40 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M249.998 124.999C249.998 194.035 194.035 250 125 250C55.9641 250 0 194.035 0 124.999C0 55.9641 55.9641 0 125 0C194.034 0 249.998 55.9641 249.998 124.999Z" fill="url(#paint0_linear_11259_64244)"/>
+<path d="M249.998 124.999C249.998 194.035 194.035 250 125 250C55.9641 250 0 194.035 0 124.999C0 55.9641 55.9641 0 125 0C194.034 0 249.998 55.9641 249.998 124.999Z" fill="url(#paint1_linear_11259_64244)"/>
+<path d="M244.998 124.999C244.998 58.7253 191.273 5 125 5C58.7255 5 5.00011 58.7254 5 124.999C5 191.274 58.7255 245 125 245V250L123.385 249.989C55.0932 249.124 0 193.496 0 124.999C0.000111329 55.9639 55.9641 0 125 0C194.034 0 249.998 55.9639 249.998 124.999C249.998 194.035 194.035 250 125 250V245C191.274 245 244.998 191.274 244.998 124.999Z" fill="url(#paint2_linear_11259_64244)"/>
+<path d="M244.998 124.999C244.998 58.7253 191.273 5 125 5C58.7255 5 5.00011 58.7254 5 124.999C5 191.274 58.7255 245 125 245V250L123.385 249.989C55.0932 249.124 0 193.496 0 124.999C0.000111329 55.9639 55.9641 0 125 0C194.034 0 249.998 55.9639 249.998 124.999C249.998 194.035 194.035 250 125 250V245C191.274 245 244.998 191.274 244.998 124.999Z" fill="url(#paint3_linear_11259_64244)"/>
+<path d="M244.998 124.999C244.998 58.7253 191.273 5 125 5C58.7255 5 5.00011 58.7254 5 124.999C5 191.274 58.7255 245 125 245V250L123.385 249.989C55.0932 249.124 0 193.496 0 124.999C0.000111329 55.9639 55.9641 0 125 0C194.034 0 249.998 55.9639 249.998 124.999C249.998 194.035 194.035 250 125 250V245C191.274 245 244.998 191.274 244.998 124.999Z" fill="url(#paint4_linear_11259_64244)"/>
+<path d="M119.689 164.393L127.808 133.821L147.03 126.798L151.811 108.831L151.648 108.385L132.726 115.298L146.36 63.9639H107.696L89.867 130.956L74.9812 136.394L70.0625 154.917L84.9369 149.483L74.4292 188.965H177.329L183.925 164.393H119.689Z" fill="url(#paint5_linear_11259_64244)"/>
+<path d="M117.689 158.393L125.808 127.821L145.03 120.798L149.811 102.831L149.648 102.385L130.726 109.298L144.36 57.9639H105.696L87.867 124.956L72.9812 130.394L68.0625 148.917L82.9369 143.483L72.4292 182.965H175.329L181.925 158.393H117.689Z" fill="url(#paint6_linear_11259_64244)"/>
+<path d="M144.359 57.9639L130.727 109.298L149.648 102.385L149.812 102.831L145.03 120.798L125.808 127.82L117.688 158.393H181.925L175.328 182.965H72.4287L82.9365 143.483L68.0625 148.917L72.9814 130.394L87.8672 124.956L105.696 57.9639H144.359ZM89.5322 126.477L74.6465 131.914L70.9795 145.721L85.8574 140.287L75.0312 180.965H173.794L179.317 160.393H115.088L124.143 126.3L143.365 119.275L147.04 105.467L127.809 112.493L141.759 59.9639H107.233L89.5322 126.477Z" fill="white"/>
+<defs>
+<linearGradient id="paint0_linear_11259_64244" x1="124.999" y1="0" x2="124.999" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#1C60CA"/>
+<stop offset="1" stop-color="#002394"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64244" x1="124.999" y1="0" x2="124.999" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#000E6C" stop-opacity="0"/>
+<stop offset="1" stop-color="#000E6C" stop-opacity="0.3"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64244" x1="124.999" y1="0" x2="124.999" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#2974ED"/>
+<stop offset="1" stop-color="#0031C9"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64244" x1="124.999" y1="0" x2="124.999" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#0059AD" stop-opacity="0"/>
+<stop offset="1" stop-color="#0059AD"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64244" x1="124.999" y1="0" x2="124.999" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#5294FF"/>
+<stop offset="0.15" stop-color="#5294FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64244" x1="126.994" y1="63.9639" x2="126.994" y2="188.965" gradientUnits="userSpaceOnUse">
+<stop stop-color="#063ABA"/>
+<stop offset="1" stop-color="#002A9C"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64244" x1="124.994" y1="57.9639" x2="124.994" y2="182.965" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#C7DCFF"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/monero.svg b/res/pictures/card_icons/chain_icons/monero.svg
new file mode 100644
index 00000000..2685b87d
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/monero.svg
@@ -0,0 +1,56 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_11259_64230)">
+<path d="M125 250C194.036 250 250 194.036 250 125C250 55.9644 194.036 0 125 0C55.9644 0 0 55.9644 0 125C0 194.036 55.9644 250 125 250Z" fill="url(#paint0_linear_11259_64230)"/>
+<path d="M206.251 170.49H241.463C237.925 179.541 233.364 188.079 227.92 195.96H179.141V129.78L125.001 183.92L70.8613 129.78V195.96H22.082C16.6357 188.076 12.0735 179.535 8.53516 170.48H43.751V65.3096L125.001 146.561L206.251 65.3096V170.49Z" fill="#CE2901"/>
+<path d="M125 2.5C192.655 2.5 247.5 57.3451 247.5 125C247.5 192.655 192.655 247.5 125 247.5C57.3451 247.5 2.5 192.655 2.5 125C2.5 57.3451 57.3451 2.5 125 2.5Z" stroke="url(#paint1_linear_11259_64230)" stroke-width="5"/>
+<path d="M125 2.5C192.655 2.5 247.5 57.3451 247.5 125C247.5 192.655 192.655 247.5 125 247.5C57.3451 247.5 2.5 192.655 2.5 125C2.5 57.3451 57.3451 2.5 125 2.5Z" stroke="url(#paint2_linear_11259_64230)" stroke-width="5"/>
+<path d="M125 2.5C192.655 2.5 247.5 57.3451 247.5 125C247.5 192.655 192.655 247.5 125 247.5C57.3451 247.5 2.5 192.655 2.5 125C2.5 57.3451 57.3451 2.5 125 2.5Z" stroke="url(#paint3_linear_11259_64230)" stroke-width="5"/>
+<path d="M205.251 165.489H242.233C239.384 173.737 235.689 181.6 231.254 188.96H180.141V121.365L125.001 176.505L69.8613 121.365V188.96H18.7578C14.3135 181.6 10.6174 173.737 7.76758 165.479H44.751V61.7236L125.001 141.974L205.251 61.7236V165.489Z" fill="url(#paint4_linear_11259_64230)"/>
+<path d="M205.251 165.489H242.233C239.384 173.737 235.689 181.6 231.254 188.96H180.141V121.365L125.001 176.505L69.8613 121.365V188.96H18.7578C14.3135 181.6 10.6174 173.737 7.76758 165.479H44.751V61.7236L125.001 141.974L205.251 61.7236V165.489Z" stroke="url(#paint5_linear_11259_64230)" stroke-width="2"/>
+<path d="M205.251 165.489H242.233C239.384 173.737 235.689 181.6 231.254 188.96H180.141V121.365L125.001 176.505L69.8613 121.365V188.96H18.7578C14.3135 181.6 10.6174 173.737 7.76758 165.479H44.751V61.7236L125.001 141.974L205.251 61.7236V165.489Z" stroke="url(#paint6_linear_11259_64230)" stroke-width="2"/>
+<path d="M206.251 164.481V59.3105L125.001 140.561L43.7511 59.3105V164.481H6.37109C9.36109 173.471 13.3411 182.011 18.1911 189.961H70.8611V123.781L125.001 177.921L179.141 123.781V189.961H231.821C236.661 182.011 240.641 173.471 243.631 164.491H206.251V164.481Z" fill="url(#paint7_linear_11259_64230)" fill-opacity="0.3"/>
+<path d="M206.251 164.481V59.3105L125.001 140.561L43.7511 59.3105V164.481H6.37109C9.36109 173.471 13.3411 182.011 18.1911 189.961H70.8611V123.781L125.001 177.921L179.141 123.781V189.961H231.821C236.661 182.011 240.641 173.471 243.631 164.491H206.251V164.481Z" fill="url(#paint8_linear_11259_64230)" fill-opacity="0.3"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_11259_64230" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FF6600"/>
+<stop offset="0.662892" stop-color="#EA3E00"/>
+<stop offset="1" stop-color="#B51500"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64230" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FF9A59"/>
+<stop offset="1" stop-color="#F23400"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64230" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#FF7752" stop-opacity="0"/>
+<stop offset="1" stop-color="#FF7752"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64230" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFBE94"/>
+<stop offset="0.15" stop-color="#FFBE94" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64230" x1="125.001" y1="59.3096" x2="125.001" y2="189.96" gradientUnits="userSpaceOnUse">
+<stop offset="0.312806" stop-color="white"/>
+<stop offset="0.750482" stop-color="#FFC7B2"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64230" x1="125.154" y1="59.2912" x2="125.154" y2="189.96" gradientUnits="userSpaceOnUse">
+<stop offset="0.628934" stop-color="white"/>
+<stop offset="1" stop-color="white" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64230" x1="125.154" y1="59.2912" x2="125.154" y2="189.96" gradientUnits="userSpaceOnUse">
+<stop offset="0.929637" stop-color="white" stop-opacity="0"/>
+<stop offset="1" stop-color="white"/>
+</linearGradient>
+<linearGradient id="paint7_linear_11259_64230" x1="243.631" y1="125.158" x2="80.419" y2="272.169" gradientUnits="userSpaceOnUse">
+<stop offset="0.734344" stop-color="#CD2700" stop-opacity="0"/>
+<stop offset="0.9535" stop-color="#CD2700"/>
+</linearGradient>
+<linearGradient id="paint8_linear_11259_64230" x1="243.631" y1="189.96" x2="80.419" y2="42.9497" gradientUnits="userSpaceOnUse">
+<stop offset="0.0476409" stop-color="#CD2700"/>
+<stop offset="0.26512" stop-color="#CD2700" stop-opacity="0"/>
+</linearGradient>
+<clipPath id="clip0_11259_64230">
+<rect width="250" height="250" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/nano.svg b/res/pictures/card_icons/chain_icons/nano.svg
new file mode 100644
index 00000000..6d5c7bbd
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/nano.svg
@@ -0,0 +1,45 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_11259_64383)">
+<path d="M125 250C194.036 250 250 194.036 250 125C250 55.9644 194.036 0 125 0C55.9644 0 0 55.9644 0 125C0 194.036 55.9644 250 125 250Z" fill="url(#paint0_linear_11259_64383)"/>
+<path d="M125 250C194.036 250 250 194.036 250 125C250 55.9644 194.036 0 125 0C55.9644 0 0 55.9644 0 125C0 194.036 55.9644 250 125 250Z" fill="url(#paint1_linear_11259_64383)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint2_linear_11259_64383)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64383)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint4_linear_11259_64383)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M125.449 117.517L168.359 51.7363H179.988L134.604 121.763H172.413V130.646H134.413L145.707 148.414H172.417V157.298H151.354L183.542 207.935H171.386L138.878 157.298H111.42L78.415 207.935H66.3594L99.0088 157.298H77.8906L77.8945 148.414H104.737L116.193 130.646H77.8945V121.763H115.81L71.0361 51.7363H83.4287L125.449 117.517ZM117.21 148.414H133.175L125.253 136.074L117.21 148.414Z" fill="url(#paint5_linear_11259_64383)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M125.449 113.517L168.359 47.7363H179.988L134.604 117.763H172.413V126.646H134.413L145.707 144.414H172.417V153.298H151.354L183.542 203.935H171.386L138.878 153.298H111.42L78.415 203.935H66.3594L99.0088 153.298H77.8906L77.8945 144.414H104.737L116.193 126.646H77.8945V117.763H115.81L71.0361 47.7363H83.4287L125.449 113.517ZM117.21 144.414H133.175L125.253 132.074L117.21 144.414Z" fill="url(#paint6_linear_11259_64383)"/>
+<path d="M125.449 113.517L168.359 47.7363H179.988L134.604 117.763H172.413V126.646H134.413L145.707 144.414H172.417V153.298H151.354L183.542 203.935H171.386L138.878 153.298H111.42L78.415 203.935H66.3594L99.0088 153.298H77.8906L77.8945 144.414H104.737L116.193 126.646H77.8945V117.763H115.81L71.0361 47.7363H83.4287L125.449 113.517ZM119.462 119.763H79.8945V124.646H119.862L105.827 146.414H79.8936L79.8916 151.298H102.678L70.0283 201.935H77.3311L110.336 151.298H139.971L172.478 201.935H179.901L147.713 151.298H170.417V146.414H144.608L130.771 124.646H170.413V119.763H130.924L176.309 49.7363H169.442L125.432 117.204L82.333 49.7363H74.6885L119.462 119.763ZM136.835 146.414H113.52L125.266 128.392L136.835 146.414ZM117.21 144.414H133.175L125.253 132.074L117.21 144.414Z" fill="white"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_11259_64383" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#209CE9"/>
+<stop offset="1" stop-color="#007AC5"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64383" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#003F88" stop-opacity="0"/>
+<stop offset="1" stop-color="#003F88" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64383" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#5EC1FF"/>
+<stop offset="1" stop-color="#009EFF"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64383" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#3AB4FF" stop-opacity="0"/>
+<stop offset="1" stop-color="#3AB4FF"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64383" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#98D8FF"/>
+<stop offset="0.15" stop-color="#98D8FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64383" x1="124.951" y1="51.7363" x2="124.951" y2="207.935" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0E86D2"/>
+<stop offset="1" stop-color="#0069AE"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64383" x1="124.951" y1="47.7363" x2="124.951" y2="203.935" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#A4DCFF"/>
+</linearGradient>
+<clipPath id="clip0_11259_64383">
+<rect width="250" height="250" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/polygon.svg b/res/pictures/card_icons/chain_icons/polygon.svg
new file mode 100644
index 00000000..161fbf79
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/polygon.svg
@@ -0,0 +1,45 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_11259_64345)">
+<path d="M125 250C194.271 250 250 194.271 250 125C250 55.7288 194.271 0 125 0C55.7288 0 0 55.7288 0 125C0 194.271 55.7288 250 125 250Z" fill="url(#paint0_linear_11259_64345)"/>
+<path d="M125 250C194.271 250 250 194.271 250 125C250 55.7288 194.271 0 125 0C55.7288 0 0 55.7288 0 125C0 194.271 55.7288 250 125 250Z" fill="url(#paint1_linear_11259_64345)"/>
+<path d="M245 125C245 58.4902 191.51 5 125 5C58.4902 5 5 58.4902 5 125C5 191.51 58.4902 245 125 245V250C55.7288 250 0 194.271 0 125C0 55.7288 55.7288 0 125 0C194.271 0 250 55.7288 250 125C250 194.271 194.271 250 125 250V245C191.51 245 245 191.51 245 125Z" fill="url(#paint2_linear_11259_64345)"/>
+<path d="M245 125C245 58.4902 191.51 5 125 5C58.4902 5 5 58.4902 5 125C5 191.51 58.4902 245 125 245V250C55.7288 250 0 194.271 0 125C0 55.7288 55.7288 0 125 0C194.271 0 250 55.7288 250 125C250 194.271 194.271 250 125 250V245C191.51 245 245 191.51 245 125Z" fill="url(#paint3_linear_11259_64345)"/>
+<path d="M245 125C245 58.4902 191.51 5 125 5C58.4902 5 5 58.4902 5 125C5 191.51 58.4902 245 125 245V250C55.7288 250 0 194.271 0 125C0 55.7288 55.7288 0 125 0C194.271 0 250 55.7288 250 125C250 194.271 194.271 250 125 250V245C191.51 245 245 191.51 245 125Z" fill="url(#paint4_linear_11259_64345)"/>
+<path d="M161.448 63.5L119.363 87.6703V163.107L96.1427 176.568L72.7803 163.096V136.164L96.1427 122.823L111.165 131.535V109.744L96.0117 101.142L53.9375 125.585V173.937L96.1536 198.249L138.228 173.937V98.5109L161.59 85.0392L184.942 98.5109V125.323L161.59 138.915L146.437 130.126V151.808L161.448 160.465L203.938 136.295V87.6703L161.448 63.5Z" fill="url(#paint5_linear_11259_64345)"/>
+<path d="M157.448 57.5L115.363 81.6703V157.107L92.1427 170.568L68.7803 157.096V130.164L92.1427 116.823L107.165 125.535V103.744L92.0117 95.1419L49.9375 119.585V167.937L92.1536 192.249L134.228 167.937V92.5109L157.59 79.0392L180.942 92.5109V119.323L157.59 132.915L142.437 124.126V145.808L157.448 154.465L199.938 130.295V81.6703L157.448 57.5Z" fill="url(#paint6_linear_11259_64345)"/>
+<path d="M199.938 81.6699V130.295L157.448 154.465L142.438 145.808V124.127L157.59 132.915L180.941 119.323V92.5107L157.59 79.0391L134.228 92.5107V167.937L92.1533 192.249L49.9375 167.937V119.585L92.0117 95.1416L107.165 103.744V125.534L92.1426 116.823L68.7803 130.164V157.096L92.1426 170.567L115.363 157.106V81.6699L157.448 57.5L199.938 81.6699ZM182.941 120.474L157.592 135.228L144.438 127.598V144.652L157.455 152.16L197.938 129.131V82.833L157.453 59.8027L117.363 82.8271V158.259L92.1455 172.878L66.7803 158.252V129.003L92.1504 114.516L105.165 122.062V104.908L92.0234 97.4473L51.9375 120.736V166.779L92.1514 189.939L132.228 166.782V91.3555L157.59 76.7305L182.941 91.3555V120.474Z" fill="white"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_11259_64345" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#7158FF"/>
+<stop offset="1" stop-color="#4A2AFF"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64345" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#3115CD" stop-opacity="0"/>
+<stop offset="1" stop-color="#3115CD" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64345" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#8570FF"/>
+<stop offset="1" stop-color="#4A4DFF"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64345" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#7072FF" stop-opacity="0"/>
+<stop offset="1" stop-color="#7072FF"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64345" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#A392FF"/>
+<stop offset="0.15" stop-color="#A392FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64345" x1="128.938" y1="63.5" x2="128.938" y2="198.249" gradientUnits="userSpaceOnUse">
+<stop stop-color="#5132FF"/>
+<stop offset="1" stop-color="#4C2CFF"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64345" x1="124.938" y1="57.5" x2="124.938" y2="192.249" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#B9ADFF"/>
+</linearGradient>
+<clipPath id="clip0_11259_64345">
+<rect width="250" height="250" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/solana.svg b/res/pictures/card_icons/chain_icons/solana.svg
new file mode 100644
index 00000000..dcae65e6
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/solana.svg
@@ -0,0 +1,63 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M250 125C250 194.036 194.036 250 125 250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125Z" fill="url(#paint0_linear_11259_64280)"/>
+<path d="M250 125C250 194.036 194.036 250 125 250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125Z" fill="url(#paint1_linear_11259_64280)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint2_linear_11259_64280)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint3_linear_11259_64280)"/>
+<path d="M245 125C245 58.7258 191.274 5 125 5C58.7258 5 5 58.7258 5 125C5 191.274 58.7258 245 125 245V250C55.9644 250 0 194.036 0 125C0 55.9644 55.9644 0 125 0C194.036 0 250 55.9644 250 125C250 194.036 194.036 250 125 250V245C191.274 245 245 191.274 245 125Z" fill="url(#paint4_linear_11259_64280)"/>
+<path d="M193.292 163.555L170.593 187.27C170.1 187.785 169.503 188.196 168.84 188.477C168.176 188.757 167.46 188.902 166.737 188.902H59.1351C58.6217 188.902 58.1195 188.755 57.6901 188.481C57.2608 188.207 56.923 187.816 56.7184 187.358C56.5137 186.899 56.4511 186.392 56.5382 185.899C56.6252 185.406 56.8582 184.949 57.2085 184.583L79.9241 160.868C80.4163 160.354 81.0113 159.944 81.6726 159.664C82.3339 159.383 83.0473 159.238 83.7687 159.236H191.365C191.878 159.236 192.38 159.383 192.81 159.657C193.239 159.931 193.577 160.322 193.782 160.78C193.986 161.239 194.049 161.746 193.962 162.239C193.875 162.732 193.642 163.189 193.292 163.555ZM170.593 115.8C170.1 115.284 169.503 114.874 168.84 114.593C168.176 114.312 167.46 114.168 166.737 114.168H59.1351C58.6217 114.168 58.1195 114.314 57.6901 114.588C57.2608 114.863 56.923 115.253 56.7184 115.712C56.5137 116.171 56.4511 116.678 56.5382 117.171C56.6252 117.663 56.8582 118.121 57.2085 118.487L79.9241 142.202C80.4163 142.715 81.0113 143.125 81.6726 143.406C82.3339 143.687 83.0473 143.832 83.7687 143.833H191.365C191.878 143.833 192.38 143.687 192.81 143.413C193.239 143.138 193.577 142.748 193.782 142.289C193.986 141.831 194.049 141.324 193.962 140.831C193.875 140.338 193.642 139.88 193.292 139.515L170.593 115.8ZM59.1351 98.7649H166.737C167.46 98.7652 168.176 98.6206 168.84 98.3399C169.503 98.0592 170.1 97.6484 170.593 97.1333L193.292 73.4182C193.642 73.0525 193.875 72.5951 193.962 72.1021C194.049 71.6092 193.986 71.1022 193.782 70.6435C193.577 70.1848 193.239 69.7943 192.81 69.52C192.38 69.2458 191.878 69.0996 191.365 69.0996H83.7687C83.0473 69.1008 82.3339 69.2462 81.6726 69.5269C81.0113 69.8075 80.4163 70.2174 79.9241 70.7312L57.2144 94.4463C56.8644 94.8116 56.6315 95.2686 56.5443 95.7609C56.457 96.2533 56.5191 96.7598 56.7231 97.2184C56.927 97.6769 57.2638 98.0673 57.6923 98.342C58.1208 98.6168 58.6222 98.7637 59.1351 98.7649Z" fill="url(#paint5_linear_11259_64280)"/>
+<path d="M193.292 155.555L170.593 179.27C170.1 179.785 169.503 180.196 168.84 180.477C168.176 180.757 167.46 180.902 166.737 180.902H59.1351C58.6217 180.902 58.1195 180.755 57.6901 180.481C57.2608 180.207 56.923 179.816 56.7184 179.358C56.5137 178.899 56.4511 178.392 56.5382 177.899C56.6252 177.406 56.8582 176.949 57.2085 176.583L79.9241 152.868C80.4163 152.354 81.0113 151.944 81.6726 151.664C82.3339 151.383 83.0473 151.238 83.7687 151.236H191.365C191.878 151.236 192.38 151.383 192.81 151.657C193.239 151.931 193.577 152.322 193.782 152.78C193.986 153.239 194.049 153.746 193.962 154.239C193.875 154.732 193.642 155.189 193.292 155.555ZM170.593 107.8C170.1 107.284 169.503 106.874 168.84 106.593C168.176 106.312 167.46 106.168 166.737 106.168H59.1351C58.6217 106.168 58.1195 106.314 57.6901 106.588C57.2608 106.863 56.923 107.253 56.7184 107.712C56.5137 108.171 56.4511 108.678 56.5382 109.171C56.6252 109.663 56.8582 110.121 57.2085 110.487L79.9241 134.202C80.4163 134.715 81.0113 135.125 81.6726 135.406C82.3339 135.687 83.0473 135.832 83.7687 135.833H191.365C191.878 135.833 192.38 135.687 192.81 135.413C193.239 135.138 193.577 134.748 193.782 134.289C193.986 133.831 194.049 133.324 193.962 132.831C193.875 132.338 193.642 131.88 193.292 131.515L170.593 107.8ZM59.1351 90.7649H166.737C167.46 90.7652 168.176 90.6206 168.84 90.3399C169.503 90.0592 170.1 89.6484 170.593 89.1333L193.292 65.4182C193.642 65.0525 193.875 64.5951 193.962 64.1021C194.049 63.6092 193.986 63.1022 193.782 62.6435C193.577 62.1848 193.239 61.7943 192.81 61.52C192.38 61.2458 191.878 61.0996 191.365 61.0996H83.7687C83.0473 61.1008 82.3339 61.2462 81.6726 61.5269C81.0113 61.8075 80.4163 62.2174 79.9241 62.7312L57.2144 86.4463C56.8644 86.8116 56.6315 87.2686 56.5443 87.7609C56.457 88.2533 56.5191 88.7598 56.7231 89.2184C56.927 89.6769 57.2638 90.0673 57.6923 90.342C58.1208 90.6168 58.6222 90.7637 59.1351 90.7649Z" fill="url(#paint6_linear_11259_64280)"/>
+<path d="M193.292 159.555L170.593 183.27C170.1 183.785 169.503 184.196 168.84 184.477C168.176 184.757 167.46 184.902 166.737 184.902H59.1351C58.6217 184.902 58.1195 184.755 57.6901 184.481C57.2608 184.207 56.923 183.816 56.7184 183.358C56.5137 182.899 56.4511 182.392 56.5382 181.899C56.6252 181.406 56.8582 180.949 57.2085 180.583L79.9241 156.868C80.4163 156.354 81.0113 155.944 81.6726 155.664C82.3339 155.383 83.0473 155.238 83.7687 155.236H191.365C191.878 155.236 192.38 155.383 192.81 155.657C193.239 155.931 193.577 156.322 193.782 156.78C193.986 157.239 194.049 157.746 193.962 158.239C193.875 158.732 193.642 159.189 193.292 159.555ZM170.593 111.8C170.1 111.284 169.503 110.874 168.84 110.593C168.176 110.312 167.46 110.168 166.737 110.168H59.1351C58.6217 110.168 58.1195 110.314 57.6901 110.588C57.2608 110.863 56.923 111.253 56.7184 111.712C56.5137 112.171 56.4511 112.678 56.5382 113.171C56.6252 113.663 56.8582 114.121 57.2085 114.487L79.9241 138.202C80.4163 138.715 81.0113 139.125 81.6726 139.406C82.3339 139.687 83.0473 139.832 83.7687 139.833H191.365C191.878 139.833 192.38 139.687 192.81 139.413C193.239 139.138 193.577 138.748 193.782 138.289C193.986 137.831 194.049 137.324 193.962 136.831C193.875 136.338 193.642 135.88 193.292 135.515L170.593 111.8ZM59.1351 94.7649H166.737C167.46 94.7652 168.176 94.6206 168.84 94.3399C169.503 94.0592 170.1 93.6484 170.593 93.1333L193.292 69.4182C193.642 69.0525 193.875 68.5951 193.962 68.1021C194.049 67.6092 193.986 67.1022 193.782 66.6435C193.577 66.1848 193.239 65.7943 192.81 65.52C192.38 65.2458 191.878 65.0996 191.365 65.0996H83.7687C83.0473 65.1008 82.3339 65.2462 81.6726 65.5269C81.0113 65.8075 80.4163 66.2174 79.9241 66.7312L57.2144 90.4463C56.8644 90.8116 56.6315 91.2686 56.5443 91.7609C56.457 92.2533 56.5191 92.7598 56.7231 93.2184C56.927 93.6769 57.2638 94.0673 57.6923 94.342C58.1208 94.6168 58.6222 94.7637 59.1351 94.7649Z" fill="url(#paint7_linear_11259_64280)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M166.737 110.167C167.46 110.167 168.176 110.312 168.84 110.593C169.503 110.873 170.1 111.285 170.594 111.8L193.292 135.515C193.642 135.88 193.875 136.338 193.962 136.831C194.049 137.324 193.986 137.831 193.782 138.289L193.699 138.458C193.491 138.844 193.186 139.173 192.811 139.413L192.646 139.51C192.255 139.721 191.814 139.833 191.365 139.833H83.7686C83.1374 139.832 82.5123 139.721 81.9229 139.505L81.6729 139.406C81.0944 139.161 80.5659 138.816 80.1133 138.39L79.9238 138.202L57.208 114.486C56.9018 114.166 56.6849 113.776 56.5772 113.354L56.5381 113.171C56.4619 112.74 56.5006 112.297 56.6485 111.886L56.7188 111.712C56.8978 111.311 57.1783 110.961 57.5332 110.696L57.6904 110.589C58.1196 110.315 58.6215 110.167 59.1348 110.167H166.737ZM59.1348 112.168C58.9998 112.168 58.8715 112.206 58.7666 112.273C58.6621 112.34 58.5877 112.431 58.5449 112.526C58.5025 112.622 58.4906 112.724 58.5078 112.822C58.5253 112.921 58.5732 113.02 58.6533 113.104L81.3682 136.818C81.6704 137.134 82.0394 137.389 82.4531 137.564C82.8676 137.74 83.3169 137.832 83.7715 137.833H191.365C191.499 137.833 191.627 137.794 191.732 137.728L191.806 137.674C191.873 137.616 191.924 137.546 191.957 137.472C191.998 137.377 192.009 137.275 191.992 137.179C191.975 137.08 191.927 136.981 191.847 136.897L169.148 113.183C168.846 112.867 168.476 112.61 168.061 112.435C167.645 112.259 167.194 112.168 166.738 112.168H59.1348Z" fill="url(#paint8_linear_11259_64280)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M191.556 155.243C192.002 155.275 192.434 155.416 192.81 155.656C193.239 155.931 193.577 156.322 193.782 156.78C193.986 157.239 194.049 157.746 193.962 158.239L193.923 158.422C193.815 158.845 193.598 159.235 193.292 159.555L170.594 183.27L170.403 183.458C169.949 183.885 169.42 184.231 168.84 184.477L168.589 184.575C167.997 184.791 167.37 184.902 166.737 184.901H59.1346C58.6856 184.901 58.2449 184.79 57.8543 184.578L57.6902 184.481C57.3148 184.242 57.0092 183.912 56.8016 183.526L56.7186 183.357C56.5395 182.956 56.469 182.518 56.5125 182.084L56.5379 181.899C56.6141 181.468 56.8025 181.064 57.0828 180.725L57.2078 180.583L79.9236 156.868C80.3543 156.419 80.8639 156.048 81.4275 155.774L81.6727 155.664C82.334 155.383 83.047 155.237 83.7684 155.235H191.365L191.556 155.243ZM83.6014 157.241C83.2049 157.262 82.8162 157.351 82.4539 157.505C82.0401 157.68 81.6706 157.935 81.368 158.251L58.6522 181.967C58.5725 182.05 58.525 182.149 58.5076 182.247C58.4904 182.345 58.5023 182.448 58.5447 182.543C58.5876 182.639 58.6619 182.729 58.7664 182.796L58.8494 182.841C58.9361 182.88 59.0338 182.901 59.1346 182.901H166.738C167.194 182.902 167.645 182.811 168.06 182.635C168.476 182.459 168.845 182.203 169.148 181.887L191.846 158.172C191.926 158.089 191.974 157.99 191.992 157.891C192.009 157.794 191.998 157.693 191.957 157.599L191.918 157.525C191.873 157.455 191.81 157.392 191.732 157.342C191.627 157.275 191.499 157.236 191.365 157.236H83.7723L83.6014 157.241Z" fill="url(#paint9_linear_11259_64280)"/>
+<path d="M191.557 155.243C192.003 155.275 192.435 155.416 192.811 155.656C193.239 155.931 193.577 156.322 193.782 156.78C193.986 157.239 194.049 157.746 193.962 158.239L193.923 158.422C193.815 158.845 193.598 159.235 193.292 159.555L170.594 183.27L170.403 183.458C169.95 183.886 169.42 184.231 168.84 184.477L168.589 184.575C167.997 184.791 167.37 184.902 166.737 184.902H59.1348V182.902H166.738C167.194 182.902 167.645 182.811 168.061 182.635C168.476 182.459 168.845 182.203 169.148 181.887L191.847 158.172C191.927 158.089 191.975 157.99 191.992 157.891C192.009 157.794 191.998 157.694 191.957 157.599L191.918 157.526C191.873 157.455 191.81 157.392 191.732 157.342V157.341C191.627 157.274 191.499 157.237 191.365 157.236H83.7725L83.6016 157.241C83.2051 157.262 82.8164 157.351 82.4541 157.505C82.0404 157.681 81.6709 157.935 81.3682 158.251L58.6524 181.967C58.5726 182.05 58.5253 182.149 58.5079 182.247C58.4905 182.346 58.5025 182.448 58.545 182.543C58.5878 182.639 58.662 182.729 58.7667 182.796L58.8497 182.841C58.9365 182.88 59.0339 182.902 59.1348 182.902V184.902C58.6857 184.902 58.2452 184.79 57.8545 184.578L57.6905 184.482C57.3149 184.242 57.0094 183.912 56.8018 183.527L56.7188 183.358C56.5397 182.956 56.4691 182.518 56.5128 182.084L56.5381 181.9C56.6143 181.468 56.8026 181.064 57.0831 180.725L57.2081 180.583L79.9239 156.868C80.3545 156.419 80.8641 156.048 81.4278 155.775L81.6729 155.664C82.3342 155.384 83.0473 155.238 83.7686 155.236H191.365L191.557 155.243ZM59.1348 110.168H166.737C167.46 110.168 168.176 110.312 168.84 110.593C169.503 110.874 170.1 111.285 170.594 111.8L193.292 135.515C193.642 135.881 193.875 136.338 193.962 136.831C194.049 137.324 193.986 137.831 193.782 138.289L193.699 138.458C193.491 138.844 193.186 139.173 192.811 139.413L192.645 139.51C192.255 139.721 191.814 139.833 191.365 139.833V137.833C191.499 137.833 191.627 137.795 191.732 137.728L191.806 137.674C191.873 137.616 191.924 137.546 191.957 137.472C191.998 137.377 192.009 137.276 191.992 137.179C191.975 137.08 191.927 136.981 191.847 136.898V136.897L169.148 113.183V113.182C168.845 112.866 168.476 112.61 168.061 112.435C167.645 112.259 167.194 112.168 166.738 112.168H59.1348C58.9998 112.168 58.8716 112.207 58.7667 112.274C58.662 112.34 58.5878 112.431 58.545 112.526C58.5024 112.622 58.4906 112.724 58.5079 112.822C58.5253 112.921 58.5731 113.02 58.6534 113.104H58.6524L81.3682 136.818C81.6705 137.134 82.0393 137.389 82.4532 137.565C82.8676 137.74 83.3168 137.832 83.7715 137.833H191.365V139.833H83.7686C83.1374 139.832 82.5123 139.721 81.9229 139.505L81.6729 139.406C81.0943 139.161 80.566 138.816 80.1133 138.39L79.9239 138.202L57.2081 114.486C56.9017 114.166 56.6849 113.776 56.5772 113.354L56.5381 113.171C56.4619 112.74 56.5005 112.297 56.6485 111.886L56.7188 111.712C56.8979 111.311 57.1782 110.961 57.5333 110.696L57.6905 110.589C58.1197 110.315 58.6215 110.168 59.1348 110.168ZM191.365 65.0996C191.878 65.0997 192.381 65.2463 192.811 65.5205C193.239 65.7948 193.577 66.185 193.782 66.6436C193.986 67.1023 194.049 67.6096 193.962 68.1025L193.923 68.2852C193.815 68.708 193.598 69.098 193.292 69.418L170.594 93.1329L170.403 93.3213C169.95 93.7488 169.42 94.0943 168.84 94.3399L168.589 94.4385C167.997 94.6544 167.37 94.7649 166.737 94.7647H59.1348C58.6863 94.7636 58.2463 94.6515 57.8565 94.4395L57.6924 94.3418C57.3175 94.1014 57.0127 93.7725 56.8057 93.3868L56.7227 93.2188C56.5188 92.7603 56.4567 92.2532 56.544 91.7608C56.6313 91.2686 56.8641 90.8115 57.2139 90.4463L79.9239 66.7314C80.3545 66.2819 80.8641 65.9112 81.4278 65.6377L81.6729 65.5273C82.3342 65.2467 83.0473 65.1008 83.7686 65.0996H191.365ZM83.6016 67.1045C83.2052 67.125 82.8165 67.2144 82.4541 67.3682C82.0402 67.5439 81.6709 67.7983 81.3682 68.1143L58.6592 91.8291L58.6583 91.8301C58.5787 91.9133 58.5312 92.0119 58.5137 92.1104C58.4964 92.2084 58.5085 92.3101 58.5508 92.4053C58.5934 92.501 58.6671 92.5912 58.7715 92.6583C58.8763 92.7254 59.0046 92.7643 59.1397 92.7647H166.738C167.195 92.7648 167.645 92.6738 168.061 92.4981C168.476 92.3223 168.845 92.0664 169.148 91.75L191.847 68.0352C191.927 67.9516 191.975 67.8532 191.992 67.7539C192.009 67.6574 191.998 67.5567 191.957 67.4619L191.918 67.3887C191.873 67.3183 191.811 67.2551 191.732 67.2051V67.2041C191.653 67.1541 191.562 67.1204 191.465 67.1064L191.365 67.0996H83.7725L83.6016 67.1045Z" fill="url(#paint10_linear_11259_64280)"/>
+<defs>
+<linearGradient id="paint0_linear_11259_64280" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#4701AA"/>
+<stop offset="1" stop-color="#19004B"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64280" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#0C0025" stop-opacity="0"/>
+<stop offset="1" stop-color="#0C0025" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64280" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#6A00FF"/>
+<stop offset="1" stop-color="#004148"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64280" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#006974" stop-opacity="0"/>
+<stop offset="1" stop-color="#006974"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64280" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#9A53FF"/>
+<stop offset="0.15" stop-color="#8D3CFF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64280" x1="125.25" y1="69.0996" x2="125.25" y2="188.902" gradientUnits="userSpaceOnUse">
+<stop offset="0.179856" stop-color="#320080"/>
+<stop offset="1" stop-color="#190041"/>
+</linearGradient>
+<linearGradient id="paint6_linear_11259_64280" x1="125.25" y1="61.0996" x2="125.25" y2="180.902" gradientUnits="userSpaceOnUse">
+<stop offset="0.0856031" stop-color="#4E12A7"/>
+<stop offset="1" stop-color="#330083"/>
+</linearGradient>
+<linearGradient id="paint7_linear_11259_64280" x1="68.1066" y1="187.757" x2="177.654" y2="60.9934" gradientUnits="userSpaceOnUse">
+<stop offset="0.08" stop-color="#9945FF"/>
+<stop offset="0.3" stop-color="#8752F3"/>
+<stop offset="0.5" stop-color="#5497D5"/>
+<stop offset="0.6" stop-color="#43B4CA"/>
+<stop offset="0.72" stop-color="#28E0B9"/>
+<stop offset="0.97" stop-color="#19FB9B"/>
+</linearGradient>
+<linearGradient id="paint8_linear_11259_64280" x1="71.0002" y1="133.999" x2="71.0002" y2="110" gradientUnits="userSpaceOnUse">
+<stop stop-color="#24E7B1" stop-opacity="0"/>
+<stop offset="1" stop-color="#62BDF2"/>
+</linearGradient>
+<linearGradient id="paint9_linear_11259_64280" x1="123" y1="183.999" x2="124" y2="159" gradientUnits="userSpaceOnUse">
+<stop stop-color="#B087FF"/>
+<stop offset="1" stop-color="#7070E6" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint10_linear_11259_64280" x1="125.25" y1="65.0996" x2="126" y2="104" gradientUnits="userSpaceOnUse">
+<stop stop-color="#58FFBE"/>
+<stop offset="1" stop-color="#24E7B1" stop-opacity="0"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/tron.svg b/res/pictures/card_icons/chain_icons/tron.svg
new file mode 100644
index 00000000..adf4f4b9
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/tron.svg
@@ -0,0 +1,45 @@
+<svg opacity="0.85" width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_18375_211277)">
+<path d="M22 44C34.1917 44 44 34.1917 44 22C44 9.80826 34.1917 0 22 0C9.80826 0 0 9.80826 0 22C0 34.1917 9.80826 44 22 44Z" fill="url(#paint0_linear_18375_211277)"/>
+<path d="M22 44C34.1917 44 44 34.1917 44 22C44 9.80826 34.1917 0 22 0C9.80826 0 0 9.80826 0 22C0 34.1917 9.80826 44 22 44Z" fill="url(#paint1_linear_18375_211277)"/>
+<path d="M43.12 22C43.12 10.2943 33.7057 0.88 22 0.88C10.2943 0.88 0.88 10.2943 0.88 22C0.88 33.7057 10.2943 43.12 22 43.12V44C9.80826 44 0 34.1917 0 22C0 9.80826 9.80826 0 22 0C34.1917 0 44 9.80826 44 22C44 34.1917 34.1917 44 22 44V43.12C33.7057 43.12 43.12 33.7057 43.12 22Z" fill="url(#paint2_linear_18375_211277)"/>
+<path d="M43.12 22C43.12 10.2943 33.7057 0.88 22 0.88C10.2943 0.88 0.88 10.2943 0.88 22C0.88 33.7057 10.2943 43.12 22 43.12V44C9.80826 44 0 34.1917 0 22C0 9.80826 9.80826 0 22 0C34.1917 0 44 9.80826 44 22C44 34.1917 34.1917 44 22 44V43.12C33.7057 43.12 43.12 33.7057 43.12 22Z" fill="url(#paint3_linear_18375_211277)"/>
+<path d="M43.12 22C43.12 10.2943 33.7057 0.88 22 0.88C10.2943 0.88 0.88 10.2943 0.88 22C0.88 33.7057 10.2943 43.12 22 43.12V44C9.80826 44 0 34.1917 0 22C0 9.80826 9.80826 0 22 0C34.1917 0 44 9.80826 44 22C44 34.1917 34.1917 44 22 44V43.12C33.7057 43.12 43.12 33.7057 43.12 22Z" fill="url(#paint4_linear_18375_211277)"/>
+<path d="M35.5292 18.3272C34.2272 17.1249 32.426 15.2891 30.959 13.987L30.8722 13.9263C30.7278 13.8103 30.565 13.7193 30.3905 13.6572C26.8532 12.9975 10.391 9.92029 10.0699 9.95935C9.97987 9.97196 9.89385 10.0046 9.81813 10.0548L9.73567 10.1199C9.63413 10.2231 9.55701 10.3476 9.50998 10.4845L9.48828 10.5409V10.8491V10.8968C11.3415 16.0573 18.659 32.9622 20.1 36.9291C20.1868 37.1982 20.3517 37.7103 20.6598 37.7363H20.7293C20.8942 37.7363 21.5973 36.8075 21.5973 36.8075C21.5973 36.8075 34.1664 21.5649 35.4381 19.9417C35.6027 19.7418 35.748 19.5267 35.8721 19.2994C35.9038 19.1215 35.8888 18.9385 35.8287 18.7681C35.7686 18.5977 35.6655 18.4458 35.5292 18.3272ZM24.822 20.1023L30.1865 15.6536L33.3331 18.5529L24.822 20.1023ZM22.7388 19.8115L13.5029 12.2423L28.4461 14.9983L22.7388 19.8115ZM23.5721 21.795L33.0249 20.2716L22.218 33.292L23.5721 21.795ZM12.2486 12.9975L21.9662 21.2438L20.56 33.3007L12.2486 12.9975Z" fill="url(#paint5_linear_18375_211277)"/>
+<path d="M35.5292 17.6231C34.2272 16.4208 32.426 14.585 30.959 13.2829L30.8722 13.2222C30.7278 13.1062 30.565 13.0152 30.3905 12.9531C26.8532 12.2934 10.391 9.21619 10.0699 9.25525C9.97987 9.26786 9.89385 9.30048 9.81813 9.35073L9.73567 9.41584C9.63413 9.51896 9.55701 9.64354 9.50998 9.78041L9.48828 9.83683V10.145V10.1927C11.3415 15.3532 18.659 32.2581 20.1 36.225C20.1868 36.4941 20.3517 37.0062 20.6598 37.0322H20.7293C20.8942 37.0322 21.5973 36.1034 21.5973 36.1034C21.5973 36.1034 34.1664 20.8608 35.4381 19.2376C35.6027 19.0377 35.748 18.8226 35.8721 18.5953C35.9038 18.4174 35.8888 18.2344 35.8287 18.064C35.7686 17.8936 35.6655 17.7417 35.5292 17.6231ZM24.822 19.3982L30.1865 14.9495L33.3331 17.8488L24.822 19.3982ZM22.7388 19.1074L13.5029 11.5382L28.4461 14.2942L22.7388 19.1074ZM23.5721 21.0909L33.0249 19.5675L22.218 32.5879L23.5721 21.0909ZM12.2486 12.2934L21.9662 20.5397L20.56 32.5966L12.2486 12.2934Z" fill="url(#paint6_linear_18375_211277)"/>
+<path d="M10.0699 9.25525C10.3926 9.21649 26.8535 12.2935 30.3905 12.9531C30.565 13.0153 30.7279 13.1062 30.8723 13.2221L30.9591 13.283C32.426 14.585 34.2272 16.4209 35.5292 17.6232C35.6655 17.7418 35.7687 17.8937 35.8288 18.064C35.8889 18.2344 35.9038 18.4174 35.8721 18.5953L35.8245 18.68C35.7113 18.8762 35.5821 19.0627 35.4381 19.2376C34.1673 20.8597 21.614 36.0833 21.5974 36.1035C21.5974 36.1035 20.8942 37.0323 20.7292 37.0323H20.6598L20.6315 37.0284C20.3415 36.9745 20.1841 36.4857 20.1 36.225C18.6591 32.2581 11.3416 15.3534 9.48828 10.1928V9.83687L9.50994 9.7805C9.55696 9.64363 9.63407 9.5189 9.73561 9.41578L9.81811 9.35081C9.89382 9.30056 9.97991 9.26785 10.0699 9.25525ZM10.0933 9.60879C10.0674 9.61515 10.0427 9.62566 10.0199 9.63973L9.97417 9.67582C9.91565 9.73882 9.87084 9.81335 9.84286 9.89479L9.8408 9.90081L9.84028 9.90218V10.1309C10.7761 12.7243 13.047 18.1885 15.2736 23.5209C17.442 28.7138 19.5695 33.7842 20.3587 35.9086L20.4309 36.1049L20.435 36.1169C20.48 36.2565 20.5335 36.4197 20.6053 36.5504C20.63 36.5953 20.6529 36.6279 20.6718 36.6507C20.677 36.6458 20.6828 36.641 20.6885 36.6354C20.7657 36.5601 20.8606 36.4538 20.9565 36.3405C21.051 36.2287 21.1413 36.1161 21.2083 36.031C21.2416 35.9886 21.2689 35.9533 21.2878 35.9287C21.2973 35.9164 21.3046 35.9068 21.3095 35.9003C21.3119 35.8971 21.3138 35.8947 21.315 35.8931C21.3156 35.8923 21.3161 35.8918 21.3164 35.8914L21.3165 35.8911L21.321 35.8852L21.3257 35.8795L21.5974 36.1035C21.332 35.8847 21.3259 35.8796 21.3258 35.8794C21.3259 35.8793 21.3262 35.8791 21.3263 35.8789C21.3267 35.8784 21.3273 35.8777 21.3281 35.8768C21.3296 35.875 21.3318 35.8722 21.3348 35.8685C21.3408 35.8612 21.3498 35.8502 21.3617 35.8357C21.3856 35.8068 21.421 35.764 21.4671 35.708C21.5595 35.596 21.6952 35.4314 21.8683 35.2214C22.2144 34.8015 22.7104 34.1998 23.3094 33.4726C24.5076 32.0183 26.1184 30.0623 27.7689 28.0556C31.0725 24.0392 34.5285 19.8278 35.1609 19.0205L35.1637 19.0172L35.1662 19.014C35.3036 18.8471 35.4259 18.6685 35.5325 18.4806C35.5426 18.3796 35.5307 18.2773 35.4967 18.1811C35.4569 18.068 35.3884 17.9672 35.2981 17.8885L35.2941 17.8853L35.2905 17.8817C34.6354 17.2768 33.8549 16.5128 33.0609 15.7432C32.2695 14.976 31.4629 14.2018 30.7396 13.559L30.6703 13.5105L30.6609 13.5038L30.6518 13.4966C30.5444 13.4104 30.424 13.3419 30.2953 13.2933C28.5 12.9584 23.5314 12.0303 18.9603 11.1883C16.6616 10.7649 14.464 10.3634 12.8213 10.0703C11.9997 9.92369 11.3179 9.80446 10.832 9.72309C10.5888 9.68236 10.3964 9.65136 10.2607 9.63131C10.1925 9.62123 10.1412 9.61423 10.106 9.61017C10.1013 9.60962 10.097 9.60919 10.0933 9.60879ZM21.7292 33.7278L23.2536 20.7857L33.8947 19.0709L21.7292 33.7278ZM22.3377 20.3933L20.9097 32.6375L20.2342 32.7299L11.9229 12.4267L12.4763 12.025L22.3377 20.3933ZM20.56 32.5966L21.9662 20.5397L12.2486 12.2933L20.56 32.5966ZM23.5721 21.0909L22.218 32.588L33.025 19.5674L23.5721 21.0909ZM34.0912 18.0685L23.5628 19.9852L30.1987 14.4821L34.0912 18.0685ZM29.2424 14.083L22.7421 19.5652L13.2798 11.8105L13.5667 11.1921L29.2424 14.083ZM24.8221 19.3983L33.333 17.8488L30.1865 14.9496L24.8221 19.3983ZM22.7388 19.1075L28.4461 14.2941L13.5029 11.5383L22.7388 19.1075Z" fill="white"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_18375_211277" x1="22" y1="0" x2="22" y2="44" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F9181C"/>
+<stop offset="1" stop-color="#C40003"/>
+</linearGradient>
+<linearGradient id="paint1_linear_18375_211277" x1="22" y1="0" x2="22" y2="44" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#850305" stop-opacity="0"/>
+<stop offset="1" stop-color="#850305" stop-opacity="0.5"/>
+</linearGradient>
+<linearGradient id="paint2_linear_18375_211277" x1="22" y1="0" x2="22" y2="44" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FF6062"/>
+<stop offset="1" stop-color="#FF0004"/>
+</linearGradient>
+<linearGradient id="paint3_linear_18375_211277" x1="22" y1="0" x2="22" y2="44" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#FF3F42" stop-opacity="0"/>
+<stop offset="1" stop-color="#FF3F42"/>
+</linearGradient>
+<linearGradient id="paint4_linear_18375_211277" x1="22" y1="0" x2="22" y2="44" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FF9293"/>
+<stop offset="0.15" stop-color="#FF9293" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint5_linear_18375_211277" x1="22.6883" y1="9.95898" x2="22.6883" y2="37.7363" gradientUnits="userSpaceOnUse">
+<stop stop-color="#D30508"/>
+<stop offset="1" stop-color="#B40003"/>
+</linearGradient>
+<linearGradient id="paint6_linear_18375_211277" x1="22.6883" y1="9.25488" x2="22.6883" y2="37.0322" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FFA4A6"/>
+</linearGradient>
+<clipPath id="clip0_18375_211277">
+<rect width="44" height="44" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/zano.svg b/res/pictures/card_icons/chain_icons/zano.svg
new file mode 100644
index 00000000..6d4e4359
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/zano.svg
@@ -0,0 +1,76 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_11259_64391)">
+<path d="M125 250C194.271 250 250 194.271 250 125C250 55.7288 194.271 0 125 0C55.7288 0 0 55.7288 0 125C0 194.271 55.7288 250 125 250Z" fill="url(#paint0_linear_11259_64391)"/>
+<path d="M245 125C245 58.4902 191.51 5 125 5C58.4902 5 5 58.4902 5 125C5 191.51 58.4902 245 125 245V250C55.7288 250 0 194.271 0 125C0 55.7288 55.7288 0 125 0C194.271 0 250 55.7288 250 125C250 194.271 194.271 250 125 250V245C191.51 245 245 191.51 245 125Z" fill="url(#paint1_linear_11259_64391)"/>
+<path d="M245 125C245 58.4902 191.51 5 125 5C58.4902 5 5 58.4902 5 125C5 191.51 58.4902 245 125 245V250C55.7288 250 0 194.271 0 125C0 55.7288 55.7288 0 125 0C194.271 0 250 55.7288 250 125C250 194.271 194.271 250 125 250V245C191.51 245 245 191.51 245 125Z" fill="url(#paint2_linear_11259_64391)"/>
+<path d="M245 125C245 58.4902 191.51 5 125 5C58.4902 5 5 58.4902 5 125C5 191.51 58.4902 245 125 245V250C55.7288 250 0 194.271 0 125C0 55.7288 55.7288 0 125 0C194.271 0 250 55.7288 250 125C250 194.271 194.271 250 125 250V245C191.51 245 245 191.51 245 125Z" fill="url(#paint3_linear_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M155.153 54C161.035 53.9999 165.984 53.9999 170.035 54.3369C174.273 54.6895 178.309 55.4559 182.144 57.4453C187.984 60.4756 192.732 65.3106 195.708 71.2578C197.661 75.1621 198.414 79.2728 198.76 83.5879C199.091 87.7133 199.091 92.7533 199.091 98.7432V115.329C199.091 121.319 199.091 126.359 198.76 130.484C198.414 134.799 197.661 138.91 195.708 142.814C192.732 148.762 187.984 153.597 182.144 156.627C178.309 158.616 174.273 159.383 170.035 159.735C165.986 160.072 161.041 160.071 155.163 160.071V160.403C155.163 165.866 155.163 170.462 154.887 174.234C154.598 178.176 153.97 181.943 152.336 185.571C149.238 192.449 143.82 197.966 137.066 201.121C133.504 202.786 129.804 203.425 125.934 203.719C122.229 204 117.715 204 112.352 204H94.9375C93.467 204 92.0546 204 90.7002 203.995C86.6371 203.979 83.0938 203.916 80.0557 203.663C75.8181 203.31 71.7814 202.544 67.9473 200.555C62.1071 197.525 57.3586 192.689 54.3828 186.742C52.4293 182.838 51.6773 178.727 51.3311 174.412C51.0001 170.287 50.9999 165.247 51 159.257V142.671C50.9999 136.681 51.0001 131.641 51.3311 127.516C51.6773 123.201 52.4293 119.09 54.3828 115.186C57.3586 109.238 62.1071 104.403 67.9473 101.373C71.7814 99.3837 75.8181 98.6172 80.0557 98.2647C83.8967 97.9452 88.5449 97.9294 94.0303 97.9287C93.9664 92.4661 93.9329 87.824 94.1973 83.9707C94.4962 79.6117 95.2099 75.4543 97.1475 71.499C100.096 65.479 104.854 60.5742 110.729 57.4981C114.59 55.477 118.664 54.6994 122.94 54.3418C127.031 53.9998 132.033 53.9999 137.98 54H155.153ZM95.2959 116.143C88.9611 116.143 84.7475 116.15 81.5117 116.419C78.3804 116.679 76.9597 117.139 76.0674 117.602C73.5928 118.886 71.5812 120.935 70.3203 123.455C69.8658 124.364 69.4141 125.81 69.1582 128.999C68.8939 132.294 68.8867 136.584 68.8867 143.035V158.893C68.8867 165.343 68.8939 169.634 69.1582 172.929C69.4141 176.117 69.8658 177.564 70.3203 178.473C71.5812 180.993 73.5928 183.042 76.0674 184.326C76.9597 184.789 78.3804 185.248 81.5117 185.509C84.7475 185.778 88.9611 185.785 95.2959 185.785H112.025C113.469 185.785 114.792 185.785 116.011 185.781C119.667 185.769 122.382 185.723 124.602 185.555C127.47 185.337 128.785 184.95 129.608 184.565C132.47 183.229 134.766 180.891 136.079 177.977C136.457 177.138 136.836 175.799 137.05 172.879C137.271 169.866 137.276 165.954 137.276 160.072H103.871C100.269 160.072 97.018 157.872 95.624 154.489C94.2303 151.107 94.9658 147.203 97.4893 144.585L124.908 116.143H95.2959ZM138.342 72.2148C131.938 72.2148 127.676 72.2216 124.404 72.4951C121.236 72.76 119.803 73.2276 118.908 73.6963C116.419 74.9998 114.403 77.0781 113.153 79.6289C112.704 80.5463 112.262 82.011 112.04 85.2402C111.83 88.3107 111.852 92.2341 111.918 97.9277H146.22C151.159 97.9278 155.163 102.005 155.163 107.035C155.163 109.52 154.184 111.771 152.6 113.414L152.602 113.416L125.184 141.857H154.795C161.13 141.857 165.343 141.85 168.579 141.581C171.71 141.321 173.131 140.861 174.023 140.398C176.498 139.114 178.51 137.065 179.771 134.545C180.225 133.636 180.677 132.19 180.933 129.001C181.197 125.706 181.204 121.416 181.204 114.965V99.1074C181.204 92.6567 181.197 88.3663 180.933 85.0713C180.677 81.8827 180.225 80.4361 179.771 79.5273C178.51 77.0074 176.498 74.958 174.023 73.6738C173.131 73.2109 171.71 72.7517 168.579 72.4912C166.152 72.2893 163.175 72.2343 159.166 72.2197L154.795 72.2148H138.342Z" fill="url(#paint4_linear_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M137.981 50H155.153C161.035 49.9999 165.984 49.9998 170.035 50.3368C174.273 50.6894 178.309 51.4556 182.143 53.445C187.984 56.4753 192.732 61.3106 195.708 67.2579C197.661 71.1622 198.414 75.2726 198.76 79.5877C199.091 83.7131 199.091 88.7528 199.091 94.7428V111.329C199.091 117.319 199.091 122.359 198.76 126.484C198.414 130.8 197.661 134.91 195.708 138.814C192.732 144.762 187.984 149.597 182.143 152.627C178.309 154.617 174.273 155.383 170.035 155.735C165.984 156.073 161.035 156.072 155.153 156.072H103.871C100.269 156.072 97.0181 153.871 95.6242 150.489C94.2304 147.107 94.9654 143.203 97.4889 140.585L139.838 96.656L152.602 109.416L125.183 137.858H154.795C161.13 137.858 165.343 137.851 168.579 137.581C171.71 137.321 173.131 136.861 174.023 136.398C176.498 135.114 178.51 133.065 179.771 130.545C180.225 129.637 180.677 128.19 180.933 125.001C181.197 121.706 181.204 117.416 181.204 110.965V95.1075C181.204 88.6566 181.197 84.3662 180.933 81.0711C180.677 77.8823 180.225 76.4359 179.771 75.5271C178.51 73.0071 176.498 70.9583 174.023 69.6741C173.131 69.2111 171.71 68.7512 168.579 68.4907C165.343 68.2215 161.13 68.2144 154.795 68.2144H138.342C131.938 68.2144 127.675 68.2216 124.404 68.4951C121.236 68.76 119.804 69.2278 118.908 69.6964C116.419 71 114.402 73.0782 113.153 75.6292C112.704 76.5465 112.262 78.0105 112.04 81.2397C111.812 84.5742 111.857 88.9143 111.935 95.4353L112.024 102.925L94.1392 103.147L94.0451 95.2899C93.9723 89.2332 93.9112 84.1401 94.1973 79.9706C94.4962 75.6116 95.2097 71.4542 97.1472 67.4989C100.096 61.4787 104.854 56.5738 110.73 53.4977C114.59 51.4766 118.664 50.6994 122.94 50.3418C127.031 49.9998 132.033 49.9999 137.981 50Z" fill="url(#paint5_linear_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M137.981 50H155.153C161.035 49.9999 165.984 49.9998 170.035 50.3368C174.273 50.6894 178.309 51.4556 182.143 53.445C187.984 56.4753 192.732 61.3106 195.708 67.2579C197.661 71.1622 198.414 75.2726 198.76 79.5877C199.091 83.7131 199.091 88.7528 199.091 94.7428V111.329C199.091 117.319 199.091 122.359 198.76 126.484C198.414 130.8 197.661 134.91 195.708 138.814C192.732 144.762 187.984 149.597 182.143 152.627C178.309 154.617 174.273 155.383 170.035 155.735C165.984 156.073 161.035 156.072 155.153 156.072H103.871C100.269 156.072 97.0181 153.871 95.6242 150.489C94.2304 147.107 94.9654 143.203 97.4889 140.585L139.838 96.656L152.602 109.416L125.183 137.858H154.795C161.13 137.858 165.343 137.851 168.579 137.581C171.71 137.321 173.131 136.861 174.023 136.398C176.498 135.114 178.51 133.065 179.771 130.545C180.225 129.637 180.677 128.19 180.933 125.001C181.197 121.706 181.204 117.416 181.204 110.965V95.1075C181.204 88.6566 181.197 84.3662 180.933 81.0711C180.677 77.8823 180.225 76.4359 179.771 75.5271C178.51 73.0071 176.498 70.9583 174.023 69.6741C173.131 69.2111 171.71 68.7512 168.579 68.4907C165.343 68.2215 161.13 68.2144 154.795 68.2144H138.342C131.938 68.2144 127.675 68.2216 124.404 68.4951C121.236 68.76 119.804 69.2278 118.908 69.6964C116.419 71 114.402 73.0782 113.153 75.6292C112.704 76.5465 112.262 78.0105 112.04 81.2397C111.812 84.5742 111.857 88.9143 111.935 95.4353L112.024 102.925L94.1392 103.147L94.0451 95.2899C93.9723 89.2332 93.9112 84.1401 94.1973 79.9706C94.4962 75.6116 95.2097 71.4542 97.1472 67.4989C100.096 61.4787 104.854 56.5738 110.73 53.4977C114.59 51.4766 118.664 50.6994 122.94 50.3418C127.031 49.9998 132.033 49.9999 137.981 50Z" fill="url(#paint6_radial_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M137.981 50H155.153C161.035 49.9999 165.984 49.9998 170.035 50.3368C174.273 50.6894 178.309 51.4556 182.143 53.445C187.984 56.4753 192.732 61.3106 195.708 67.2579C197.661 71.1622 198.414 75.2726 198.76 79.5877C199.091 83.7131 199.091 88.7528 199.091 94.7428V111.329C199.091 117.319 199.091 122.359 198.76 126.484C198.414 130.8 197.661 134.91 195.708 138.814C192.732 144.762 187.984 149.597 182.143 152.627C178.309 154.617 174.273 155.383 170.035 155.735C165.984 156.073 161.035 156.072 155.153 156.072H103.871C100.269 156.072 97.0181 153.871 95.6242 150.489C94.2304 147.107 94.9654 143.203 97.4889 140.585L139.838 96.656L152.602 109.416L125.183 137.858H154.795C161.13 137.858 165.343 137.851 168.579 137.581C171.71 137.321 173.131 136.861 174.023 136.398C176.498 135.114 178.51 133.065 179.771 130.545C180.225 129.637 180.677 128.19 180.933 125.001C181.197 121.706 181.204 117.416 181.204 110.965V95.1075C181.204 88.6566 181.197 84.3662 180.933 81.0711C180.677 77.8823 180.225 76.4359 179.771 75.5271C178.51 73.0071 176.498 70.9583 174.023 69.6741C173.131 69.2111 171.71 68.7512 168.579 68.4907C165.343 68.2215 161.13 68.2144 154.795 68.2144H138.342C131.938 68.2144 127.675 68.2216 124.404 68.4951C121.236 68.76 119.804 69.2278 118.908 69.6964C116.419 71 114.402 73.0782 113.153 75.6292C112.704 76.5465 112.262 78.0105 112.04 81.2397C111.812 84.5742 111.857 88.9143 111.935 95.4353L112.024 102.925L94.1392 103.147L94.0451 95.2899C93.9723 89.2332 93.9112 84.1401 94.1973 79.9706C94.4962 75.6116 95.2097 71.4542 97.1472 67.4989C100.096 61.4787 104.854 56.5738 110.73 53.4977C114.59 51.4766 118.664 50.6994 122.94 50.3418C127.031 49.9998 132.033 49.9999 137.981 50Z" fill="url(#paint7_radial_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M137.981 50H155.153C161.035 49.9999 165.984 49.9998 170.035 50.3368C174.273 50.6894 178.309 51.4556 182.143 53.445C187.984 56.4753 192.732 61.3106 195.708 67.2579C197.661 71.1622 198.414 75.2726 198.76 79.5877C199.091 83.7131 199.091 88.7528 199.091 94.7428V111.329C199.091 117.319 199.091 122.359 198.76 126.484C198.414 130.8 197.661 134.91 195.708 138.814C192.732 144.762 187.984 149.597 182.143 152.627C178.309 154.617 174.273 155.383 170.035 155.735C165.984 156.073 161.035 156.072 155.153 156.072H103.871C100.269 156.072 97.0181 153.871 95.6242 150.489C94.2304 147.107 94.9654 143.203 97.4889 140.585L139.838 96.656L152.602 109.416L125.183 137.858H154.795C161.13 137.858 165.343 137.851 168.579 137.581C171.71 137.321 173.131 136.861 174.023 136.398C176.498 135.114 178.51 133.065 179.771 130.545C180.225 129.637 180.677 128.19 180.933 125.001C181.197 121.706 181.204 117.416 181.204 110.965V95.1075C181.204 88.6566 181.197 84.3662 180.933 81.0711C180.677 77.8823 180.225 76.4359 179.771 75.5271C178.51 73.0071 176.498 70.9583 174.023 69.6741C173.131 69.2111 171.71 68.7512 168.579 68.4907C165.343 68.2215 161.13 68.2144 154.795 68.2144H138.342C131.938 68.2144 127.675 68.2216 124.404 68.4951C121.236 68.76 119.804 69.2278 118.908 69.6964C116.419 71 114.402 73.0782 113.153 75.6292C112.704 76.5465 112.262 78.0105 112.04 81.2397C111.812 84.5742 111.857 88.9143 111.935 95.4353L112.024 102.925L94.1392 103.147L94.0451 95.2899C93.9723 89.2332 93.9112 84.1401 94.1973 79.9706C94.4962 75.6116 95.2097 71.4542 97.1472 67.4989C100.096 61.4787 104.854 56.5738 110.73 53.4977C114.59 51.4766 118.664 50.6994 122.94 50.3418C127.031 49.9998 132.033 49.9999 137.981 50Z" fill="url(#paint8_radial_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M81.5118 181.509C84.7476 181.778 88.9608 181.786 95.2956 181.786H112.025C117.801 181.786 121.643 181.78 124.602 181.555C127.47 181.337 128.785 180.951 129.608 180.566C132.47 179.229 134.766 176.891 136.079 173.977C136.456 173.138 136.836 171.799 137.05 168.879C137.271 165.865 137.277 161.953 137.277 156.071H155.163V156.403C155.163 161.866 155.163 166.462 154.887 170.235C154.598 174.176 153.971 177.943 152.336 181.572C149.238 188.449 143.82 193.966 137.066 197.121C133.503 198.786 129.804 199.424 125.934 199.718C122.229 200 117.715 200 112.351 200H94.9372C89.0552 200 84.1062 200 80.0553 199.663C75.8178 199.31 71.7814 198.544 67.9473 196.555C62.107 193.525 57.3588 188.689 54.383 182.742C52.4294 178.838 51.677 174.727 51.3307 170.412C50.9998 166.287 50.9999 161.247 51 155.257V138.671C50.9999 132.681 50.9998 127.641 51.3307 123.515C51.677 119.2 52.4294 115.09 54.383 111.186C57.3588 105.238 62.107 100.403 67.9473 97.3726C71.7814 95.3833 75.8178 94.617 80.0553 94.2645C84.1064 93.9276 89.0554 93.9276 94.9374 93.9277H146.22C151.159 93.9277 155.163 98.0052 155.163 103.035C155.163 108.065 151.159 112.142 146.22 112.142H95.2956C88.9608 112.142 84.7476 112.149 81.5118 112.418C78.3804 112.679 76.96 113.139 76.0676 113.602C73.593 114.886 71.581 116.935 70.32 119.455C69.8655 120.363 69.4138 121.81 69.1579 124.999C68.8936 128.294 68.8866 132.584 68.8866 139.035V154.892C68.8866 161.343 68.8936 165.634 69.1579 168.929C69.4138 172.118 69.8655 173.564 70.32 174.473C71.581 176.993 73.593 179.042 76.0676 180.326C76.96 180.789 78.3804 181.249 81.5118 181.509Z" fill="url(#paint9_linear_11259_64391)"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M81.5118 181.509C84.7476 181.778 88.9608 181.786 95.2956 181.786H112.025C117.801 181.786 121.643 181.78 124.602 181.555C127.47 181.337 128.785 180.951 129.608 180.566C132.47 179.229 134.766 176.891 136.079 173.977C136.456 173.138 136.836 171.799 137.05 168.879C137.271 165.865 137.277 161.953 137.277 156.071H155.163V156.403C155.163 161.866 155.163 166.462 154.887 170.235C154.598 174.176 153.971 177.943 152.336 181.572C149.238 188.449 143.82 193.966 137.066 197.121C133.503 198.786 129.804 199.424 125.934 199.718C122.229 200 117.715 200 112.351 200H94.9372C89.0552 200 84.1062 200 80.0553 199.663C75.8178 199.31 71.7814 198.544 67.9473 196.555C62.107 193.525 57.3588 188.689 54.383 182.742C52.4294 178.838 51.677 174.727 51.3307 170.412C50.9998 166.287 50.9999 161.247 51 155.257V138.671C50.9999 132.681 50.9998 127.641 51.3307 123.515C51.677 119.2 52.4294 115.09 54.383 111.186C57.3588 105.238 62.107 100.403 67.9473 97.3726C71.7814 95.3833 75.8178 94.617 80.0553 94.2645C84.1064 93.9276 89.0554 93.9276 94.9374 93.9277H146.22C151.159 93.9277 155.163 98.0052 155.163 103.035C155.163 108.065 151.159 112.142 146.22 112.142H95.2956C88.9608 112.142 84.7476 112.149 81.5118 112.418C78.3804 112.679 76.96 113.139 76.0676 113.602C73.593 114.886 71.581 116.935 70.32 119.455C69.8655 120.363 69.4138 121.81 69.1579 124.999C68.8936 128.294 68.8866 132.584 68.8866 139.035V154.892C68.8866 161.343 68.8936 165.634 69.1579 168.929C69.4138 172.118 69.8655 173.564 70.32 174.473C71.581 176.993 73.593 179.042 76.0676 180.326C76.96 180.789 78.3804 181.249 81.5118 181.509Z" fill="url(#paint10_radial_11259_64391)"/>
+<path d="M112.352 198V200H94.9375V198H112.352ZM153.163 156.403V154.071H155.163C161.07 154.071 165.922 154.071 169.869 153.742C173.979 153.4 177.72 152.669 181.223 150.852C186.683 148.018 191.13 143.493 193.919 137.92C195.71 134.341 196.43 130.518 196.767 126.324C197.09 122.296 197.091 117.347 197.091 111.329V94.7432C197.091 88.7251 197.09 83.7758 196.767 79.748C196.43 75.5542 195.71 71.7311 193.919 68.1523C191.13 62.5788 186.683 58.0542 181.223 55.2207C177.72 53.4035 173.979 52.6721 169.869 52.3301C166.907 52.0836 163.436 52.0207 159.392 52.0049L155.153 52H137.98C132.003 51.9999 127.096 52.0015 123.107 52.335C118.959 52.6819 115.183 53.4236 111.657 55.2695C106.163 58.146 101.707 62.7366 98.9434 68.3789C97.1674 72.0043 96.4829 75.8704 96.1924 80.1074C95.9345 83.8658 95.9662 88.4245 96.0303 93.9053L96.0537 95.9287H94.0303C88.5233 95.9294 83.9638 95.9466 80.2217 96.2578C76.1114 96.5997 72.3706 97.3312 68.8682 99.1484C63.4073 101.982 58.9608 106.507 56.1719 112.08C54.3812 115.659 53.6607 119.482 53.3242 123.676C53.0819 126.697 53.0204 130.236 53.0049 134.355L53 138.671V155.257C52.9999 161.275 53.0011 166.224 53.3242 170.252C53.6607 174.446 54.3812 178.269 56.1719 181.848C58.9608 187.421 63.4074 191.946 68.8682 194.779C72.3705 196.597 76.1112 197.328 80.2217 197.67C83.174 197.915 86.6481 197.979 90.708 197.995C92.0577 198 93.4659 198 94.9375 198V200C93.467 200 92.0546 200 90.7002 199.995C86.6371 199.979 83.0938 199.916 80.0557 199.663C75.8181 199.31 71.7814 198.544 67.9473 196.555C62.1071 193.524 57.3586 188.689 54.3828 182.742C52.4293 178.838 51.6773 174.727 51.3311 170.412C51.0001 166.287 50.9999 161.247 51 155.257V138.671C50.9999 132.681 51.0001 127.641 51.3311 123.516C51.6773 119.201 52.4293 115.09 54.3828 111.186C57.3586 105.238 62.1071 100.403 67.9473 97.373C71.7814 95.3837 75.8181 94.6171 80.0557 94.2646C83.8967 93.9452 88.5449 93.9294 94.0303 93.9287C93.9664 88.4661 93.9329 83.824 94.1973 79.9707C94.4962 75.6117 95.2099 71.4543 97.1475 67.499C100.096 61.479 104.854 56.5742 110.729 53.4981C114.59 51.477 118.664 50.6994 122.94 50.3418C127.031 49.9998 132.033 49.9999 137.98 50H155.153C161.035 49.9999 165.984 49.9999 170.035 50.3369C174.273 50.6895 178.309 51.4559 182.144 53.4453C187.984 56.4756 192.732 61.3106 195.708 67.2578C197.661 71.1621 198.414 75.2728 198.76 79.5879C199.091 83.7133 199.091 88.7533 199.091 94.7432V111.329C199.091 117.319 199.091 122.359 198.76 126.484C198.414 130.799 197.661 134.91 195.708 138.814C192.732 144.762 187.984 149.597 182.144 152.627C178.309 154.616 174.273 155.383 170.035 155.735C165.986 156.072 161.041 156.071 155.163 156.071V156.403C155.163 161.866 155.163 166.462 154.887 170.234C154.598 174.176 153.97 177.943 152.336 181.571C149.238 188.449 143.82 193.966 137.066 197.121C133.504 198.786 129.804 199.425 125.934 199.719C122.229 200 117.715 200 112.352 200V198C117.742 198 122.17 197.999 125.782 197.725C129.537 197.439 132.966 196.829 136.22 195.309C142.534 192.359 147.608 187.197 150.513 180.75C152.011 177.424 152.611 173.919 152.892 170.088C153.162 166.405 153.163 161.891 153.163 156.403ZM139.276 154.072V156.072C139.276 161.923 139.273 165.922 139.045 169.025C138.851 171.674 138.516 173.232 138.091 174.346L137.902 174.798C136.395 178.143 133.756 180.836 130.455 182.378C129.321 182.908 127.735 183.322 124.753 183.549C122.453 183.724 119.671 183.769 116.018 183.781C114.795 183.785 113.468 183.785 112.025 183.785H95.2959C88.9958 183.785 84.684 183.78 81.3457 183.502C78.0902 183.231 76.372 182.737 75.1465 182.102C72.2925 180.621 69.9788 178.26 68.5313 175.367C67.9136 174.132 67.4305 172.397 67.165 169.089C66.8928 165.695 66.8867 161.31 66.8867 154.893V139.035C66.8867 132.618 66.8928 128.233 67.165 124.839C67.4305 121.531 67.9135 119.795 68.5313 118.561C69.9788 115.668 72.2925 113.307 75.1465 111.826C76.372 111.19 78.0902 110.697 81.3457 110.426C84.684 110.148 88.9958 110.143 95.2959 110.143V112.143C88.9611 112.143 84.7475 112.15 81.5117 112.419C78.3804 112.679 76.9597 113.139 76.0674 113.602C73.5928 114.886 71.5812 116.935 70.3203 119.455C69.8658 120.364 69.4141 121.81 69.1582 124.999C68.8939 128.294 68.8867 132.584 68.8867 139.035V154.893C68.8867 161.343 68.8939 165.634 69.1582 168.929C69.4141 172.117 69.8658 173.564 70.3203 174.473C71.5812 176.993 73.5928 179.042 76.0674 180.326C76.9597 180.789 78.3804 181.248 81.5117 181.509C84.7475 181.778 88.9611 181.785 95.2959 181.785H112.025C113.469 181.785 114.792 181.785 116.011 181.781C119.667 181.769 122.382 181.723 124.602 181.555C127.47 181.337 128.785 180.95 129.608 180.565C132.47 179.229 134.766 176.891 136.079 173.977C136.457 173.138 136.836 171.799 137.05 168.879C137.271 165.866 137.276 161.954 137.276 156.072H103.871V154.072H139.276ZM129.614 110.143L98.9287 141.973C96.9608 144.014 96.3801 147.074 97.4736 149.728C98.5653 152.376 101.096 154.072 103.871 154.072V156.072C100.269 156.072 97.018 153.872 95.624 150.489C94.2303 147.107 94.9658 143.203 97.4893 140.585L124.908 112.143H95.2959V110.143H129.614ZM153.163 103.035C153.163 99.1993 150.214 96.125 146.574 95.9365L146.22 95.9277H109.941L109.918 93.9512C109.853 88.281 109.828 84.2703 110.045 81.1035C110.275 77.7541 110.746 75.9972 111.357 74.749L111.637 74.2061C113.084 71.5249 115.289 69.334 117.98 67.9248C119.211 67.2805 120.944 66.7773 124.237 66.502C127.612 66.2198 131.973 66.2148 138.342 66.2148V68.2148C131.938 68.2148 127.676 68.2216 124.404 68.4951C121.236 68.76 119.803 69.2276 118.908 69.6963C116.419 70.9998 114.403 73.0781 113.153 75.6289C112.704 76.5463 112.262 78.011 112.04 81.2402C111.83 84.3107 111.852 88.2341 111.918 93.9277H146.22C151.159 93.9278 155.163 98.0054 155.163 103.035C155.163 105.52 154.184 107.771 152.6 109.414L152.602 109.416L125.184 137.857H154.795C161.13 137.857 165.343 137.85 168.579 137.581C171.71 137.321 173.131 136.861 174.023 136.398C176.498 135.114 178.51 133.065 179.771 130.545C180.225 129.636 180.677 128.19 180.933 125.001C181.197 121.706 181.204 117.416 181.204 110.965V95.1074C181.204 88.6566 181.197 84.3663 180.933 81.0713C180.677 77.8827 180.225 76.4361 179.771 75.5273C178.51 73.0074 176.498 70.958 174.023 69.6738C173.131 69.2109 171.71 68.7517 168.579 68.4912C166.152 68.2893 163.175 68.2343 159.166 68.2197L154.795 68.2148H138.342V66.2148H154.797L159.168 66.2197H159.173C163.18 66.2343 166.23 66.2888 168.745 66.4981C172 66.7689 173.719 67.2626 174.944 67.8984C177.798 69.3795 180.112 71.7399 181.56 74.6328C182.177 75.8678 182.66 77.6032 182.926 80.9111C183.13 83.4565 183.185 86.5595 183.199 90.6592L183.204 95.1074V110.965C183.204 117.382 183.198 121.767 182.926 125.161C182.66 128.469 182.177 130.205 181.56 131.439C180.112 134.332 177.798 136.693 174.944 138.174C173.719 138.81 172 139.303 168.745 139.574C165.407 139.852 161.095 139.857 154.795 139.857H120.478L149.799 109.441L149.797 109.439L151.16 108.025C152.32 106.823 153.066 105.203 153.154 103.398L153.163 103.035Z" fill="url(#paint11_linear_11259_64391)"/>
+<path d="M112.352 198V200H94.9375V198H112.352ZM153.163 156.403V154.071H155.163C161.07 154.071 165.922 154.071 169.869 153.742C173.979 153.4 177.72 152.669 181.223 150.852C186.683 148.018 191.13 143.493 193.919 137.92C195.71 134.341 196.43 130.518 196.767 126.324C197.09 122.296 197.091 117.347 197.091 111.329V94.7432C197.091 88.7251 197.09 83.7758 196.767 79.748C196.43 75.5542 195.71 71.7311 193.919 68.1523C191.13 62.5788 186.683 58.0542 181.223 55.2207C177.72 53.4035 173.979 52.6721 169.869 52.3301C166.907 52.0836 163.436 52.0207 159.392 52.0049L155.153 52H137.98C132.003 51.9999 127.096 52.0015 123.107 52.335C118.959 52.6819 115.183 53.4236 111.657 55.2695C106.163 58.146 101.707 62.7366 98.9434 68.3789C97.1674 72.0043 96.4829 75.8704 96.1924 80.1074C95.9345 83.8658 95.9662 88.4245 96.0303 93.9053L96.0537 95.9287H94.0303C88.5233 95.9294 83.9638 95.9466 80.2217 96.2578C76.1114 96.5997 72.3706 97.3312 68.8682 99.1484C63.4073 101.982 58.9608 106.507 56.1719 112.08C54.3812 115.659 53.6607 119.482 53.3242 123.676C53.0819 126.697 53.0204 130.236 53.0049 134.355L53 138.671V155.257C52.9999 161.275 53.0011 166.224 53.3242 170.252C53.6607 174.446 54.3812 178.269 56.1719 181.848C58.9608 187.421 63.4074 191.946 68.8682 194.779C72.3705 196.597 76.1112 197.328 80.2217 197.67C83.174 197.915 86.6481 197.979 90.708 197.995C92.0577 198 93.4659 198 94.9375 198V200C93.467 200 92.0546 200 90.7002 199.995C86.6371 199.979 83.0938 199.916 80.0557 199.663C75.8181 199.31 71.7814 198.544 67.9473 196.555C62.1071 193.524 57.3586 188.689 54.3828 182.742C52.4293 178.838 51.6773 174.727 51.3311 170.412C51.0001 166.287 50.9999 161.247 51 155.257V138.671C50.9999 132.681 51.0001 127.641 51.3311 123.516C51.6773 119.201 52.4293 115.09 54.3828 111.186C57.3586 105.238 62.1071 100.403 67.9473 97.373C71.7814 95.3837 75.8181 94.6171 80.0557 94.2646C83.8967 93.9452 88.5449 93.9294 94.0303 93.9287C93.9664 88.4661 93.9329 83.824 94.1973 79.9707C94.4962 75.6117 95.2099 71.4543 97.1475 67.499C100.096 61.479 104.854 56.5742 110.729 53.4981C114.59 51.477 118.664 50.6994 122.94 50.3418C127.031 49.9998 132.033 49.9999 137.98 50H155.153C161.035 49.9999 165.984 49.9999 170.035 50.3369C174.273 50.6895 178.309 51.4559 182.144 53.4453C187.984 56.4756 192.732 61.3106 195.708 67.2578C197.661 71.1621 198.414 75.2728 198.76 79.5879C199.091 83.7133 199.091 88.7533 199.091 94.7432V111.329C199.091 117.319 199.091 122.359 198.76 126.484C198.414 130.799 197.661 134.91 195.708 138.814C192.732 144.762 187.984 149.597 182.144 152.627C178.309 154.616 174.273 155.383 170.035 155.735C165.986 156.072 161.041 156.071 155.163 156.071V156.403C155.163 161.866 155.163 166.462 154.887 170.234C154.598 174.176 153.97 177.943 152.336 181.571C149.238 188.449 143.82 193.966 137.066 197.121C133.504 198.786 129.804 199.425 125.934 199.719C122.229 200 117.715 200 112.352 200V198C117.742 198 122.17 197.999 125.782 197.725C129.537 197.439 132.966 196.829 136.22 195.309C142.534 192.359 147.608 187.197 150.513 180.75C152.011 177.424 152.611 173.919 152.892 170.088C153.162 166.405 153.163 161.891 153.163 156.403ZM139.276 154.072V156.072C139.276 161.923 139.273 165.922 139.045 169.025C138.851 171.674 138.516 173.232 138.091 174.346L137.902 174.798C136.395 178.143 133.756 180.836 130.455 182.378C129.321 182.908 127.735 183.322 124.753 183.549C122.453 183.724 119.671 183.769 116.018 183.781C114.795 183.785 113.468 183.785 112.025 183.785H95.2959C88.9958 183.785 84.684 183.78 81.3457 183.502C78.0902 183.231 76.372 182.737 75.1465 182.102C72.2925 180.621 69.9788 178.26 68.5313 175.367C67.9136 174.132 67.4305 172.397 67.165 169.089C66.8928 165.695 66.8867 161.31 66.8867 154.893V139.035C66.8867 132.618 66.8928 128.233 67.165 124.839C67.4305 121.531 67.9135 119.795 68.5313 118.561C69.9788 115.668 72.2925 113.307 75.1465 111.826C76.372 111.19 78.0902 110.697 81.3457 110.426C84.684 110.148 88.9958 110.143 95.2959 110.143V112.143C88.9611 112.143 84.7475 112.15 81.5117 112.419C78.3804 112.679 76.9597 113.139 76.0674 113.602C73.5928 114.886 71.5812 116.935 70.3203 119.455C69.8658 120.364 69.4141 121.81 69.1582 124.999C68.8939 128.294 68.8867 132.584 68.8867 139.035V154.893C68.8867 161.343 68.8939 165.634 69.1582 168.929C69.4141 172.117 69.8658 173.564 70.3203 174.473C71.5812 176.993 73.5928 179.042 76.0674 180.326C76.9597 180.789 78.3804 181.248 81.5117 181.509C84.7475 181.778 88.9611 181.785 95.2959 181.785H112.025C113.469 181.785 114.792 181.785 116.011 181.781C119.667 181.769 122.382 181.723 124.602 181.555C127.47 181.337 128.785 180.95 129.608 180.565C132.47 179.229 134.766 176.891 136.079 173.977C136.457 173.138 136.836 171.799 137.05 168.879C137.271 165.866 137.276 161.954 137.276 156.072H103.871V154.072H139.276ZM129.614 110.143L98.9287 141.973C96.9608 144.014 96.3801 147.074 97.4736 149.728C98.5653 152.376 101.096 154.072 103.871 154.072V156.072C100.269 156.072 97.018 153.872 95.624 150.489C94.2303 147.107 94.9658 143.203 97.4893 140.585L124.908 112.143H95.2959V110.143H129.614ZM153.163 103.035C153.163 99.1993 150.214 96.125 146.574 95.9365L146.22 95.9277H109.941L109.918 93.9512C109.853 88.281 109.828 84.2703 110.045 81.1035C110.275 77.7541 110.746 75.9972 111.357 74.749L111.637 74.2061C113.084 71.5249 115.289 69.334 117.98 67.9248C119.211 67.2805 120.944 66.7773 124.237 66.502C127.612 66.2198 131.973 66.2148 138.342 66.2148V68.2148C131.938 68.2148 127.676 68.2216 124.404 68.4951C121.236 68.76 119.803 69.2276 118.908 69.6963C116.419 70.9998 114.403 73.0781 113.153 75.6289C112.704 76.5463 112.262 78.011 112.04 81.2402C111.83 84.3107 111.852 88.2341 111.918 93.9277H146.22C151.159 93.9278 155.163 98.0054 155.163 103.035C155.163 105.52 154.184 107.771 152.6 109.414L152.602 109.416L125.184 137.857H154.795C161.13 137.857 165.343 137.85 168.579 137.581C171.71 137.321 173.131 136.861 174.023 136.398C176.498 135.114 178.51 133.065 179.771 130.545C180.225 129.636 180.677 128.19 180.933 125.001C181.197 121.706 181.204 117.416 181.204 110.965V95.1074C181.204 88.6566 181.197 84.3663 180.933 81.0713C180.677 77.8827 180.225 76.4361 179.771 75.5273C178.51 73.0074 176.498 70.958 174.023 69.6738C173.131 69.2109 171.71 68.7517 168.579 68.4912C166.152 68.2893 163.175 68.2343 159.166 68.2197L154.795 68.2148H138.342V66.2148H154.797L159.168 66.2197H159.173C163.18 66.2343 166.23 66.2888 168.745 66.4981C172 66.7689 173.719 67.2626 174.944 67.8984C177.798 69.3795 180.112 71.7399 181.56 74.6328C182.177 75.8678 182.66 77.6032 182.926 80.9111C183.13 83.4565 183.185 86.5595 183.199 90.6592L183.204 95.1074V110.965C183.204 117.382 183.198 121.767 182.926 125.161C182.66 128.469 182.177 130.205 181.56 131.439C180.112 134.332 177.798 136.693 174.944 138.174C173.719 138.81 172 139.303 168.745 139.574C165.407 139.852 161.095 139.857 154.795 139.857H120.478L149.799 109.441L149.797 109.439L151.16 108.025C152.32 106.823 153.066 105.203 153.154 103.398L153.163 103.035Z" fill="url(#paint12_linear_11259_64391)"/>
+</g>
+<defs>
+<linearGradient id="paint0_linear_11259_64391" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0004B4"/>
+<stop offset="1" stop-color="#170069"/>
+</linearGradient>
+<linearGradient id="paint1_linear_11259_64391" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#0002FF"/>
+<stop offset="1" stop-color="#2E07D8"/>
+</linearGradient>
+<linearGradient id="paint2_linear_11259_64391" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#7A5CFF" stop-opacity="0"/>
+<stop offset="1" stop-color="#7A5CFF"/>
+</linearGradient>
+<linearGradient id="paint3_linear_11259_64391" x1="125" y1="0" x2="125" y2="250" gradientUnits="userSpaceOnUse">
+<stop stop-color="#3355FF"/>
+<stop offset="0.15" stop-color="#3355FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint4_linear_11259_64391" x1="125.045" y1="54" x2="125.045" y2="204" gradientUnits="userSpaceOnUse">
+<stop stop-color="#100180"/>
+<stop offset="1" stop-color="#0E005B"/>
+</linearGradient>
+<linearGradient id="paint5_linear_11259_64391" x1="121.562" y1="155.249" x2="122.777" y2="49.8651" gradientUnits="userSpaceOnUse">
+<stop offset="0.43118" stop-color="#498FFD"/>
+<stop offset="1" stop-color="#16D1D6"/>
+</linearGradient>
+<radialGradient id="paint6_radial_11259_64391" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(92.7436 82.1156) rotate(-15.6853) scale(67.6271 67.9608)">
+<stop stop-color="#18CFD7"/>
+<stop offset="1" stop-color="#18CFD7" stop-opacity="0"/>
+</radialGradient>
+<radialGradient id="paint7_radial_11259_64391" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(132.236 112.229) rotate(152.175) scale(25.3449 25.4144)">
+<stop stop-color="#4990FE"/>
+<stop offset="0.353962" stop-color="#4990FE"/>
+<stop offset="1" stop-color="#4990FE" stop-opacity="0"/>
+</radialGradient>
+<radialGradient id="paint8_radial_11259_64391" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(101.282 146.645) rotate(-46.1564) scale(46.2265 46.1414)">
+<stop stop-color="#4990FE"/>
+<stop offset="0.405688" stop-color="#4990FE"/>
+<stop offset="1" stop-color="#4990FE" stop-opacity="0"/>
+</radialGradient>
+<linearGradient id="paint9_linear_11259_64391" x1="155.717" y1="200.418" x2="156.108" y2="92.8708" gradientUnits="userSpaceOnUse">
+<stop stop-color="#2950FF"/>
+<stop offset="0.821717" stop-color="#498FFD"/>
+</linearGradient>
+<radialGradient id="paint10_radial_11259_64391" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(155.717 155.247) rotate(129.077) scale(45.7178 45.1677)">
+<stop offset="0.337169" stop-color="#2950FF"/>
+<stop offset="0.792226" stop-color="#2950FF" stop-opacity="0"/>
+</radialGradient>
+<linearGradient id="paint11_linear_11259_64391" x1="125.045" y1="50" x2="125.045" y2="200" gradientUnits="userSpaceOnUse">
+<stop stop-color="#26F3FF"/>
+<stop offset="0.296879" stop-color="#3D65FF" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint12_linear_11259_64391" x1="125.045" y1="50" x2="125.045" y2="200" gradientUnits="userSpaceOnUse">
+<stop offset="0.703121" stop-color="#2A53FE" stop-opacity="0"/>
+<stop offset="1" stop-color="#6582FF"/>
+</linearGradient>
+<clipPath id="clip0_11259_64391">
+<rect width="250" height="250" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/chain_icons/zcash.svg b/res/pictures/card_icons/chain_icons/zcash.svg
new file mode 100644
index 00000000..3e5115e3
--- /dev/null
+++ b/res/pictures/card_icons/chain_icons/zcash.svg
@@ -0,0 +1,71 @@
+<svg opacity="0.85" width="250" height="250" viewBox="0 0 250 250" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint0_linear_14352_348651)"/>
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint1_linear_14352_348651)"/>
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint2_linear_14352_348651)"/>
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint3_linear_14352_348651)"/>
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint4_linear_14352_348651)"/>
+<path d="M246.258 155.241C229.561 222.205 161.73 262.959 94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7758C20.4337 27.8031 88.2651 -12.9547 155.225 3.74061C222.201 20.4359 262.956 88.2719 246.258 155.241Z" fill="url(#paint5_linear_14352_348651)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint6_linear_14352_348651)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint7_linear_14352_348651)"/>
+<path d="M3.74439 94.7757C20.4338 27.8033 88.2653 -12.9547 155.225 3.74058C222.201 20.4359 262.955 88.272 246.259 155.241L245.858 156.806C228.638 222.319 162.263 262.198 96.3197 246.641L94.7502 246.26C27.7977 229.565 -12.9605 161.737 3.74439 94.7757ZM154.015 8.59214C89.7356 -7.43476 24.6182 31.6917 8.59647 95.9847V95.9866C-7.43974 160.268 31.6872 225.381 95.9593 241.408C160.26 257.44 225.377 218.317 241.407 154.032C257.436 89.7415 218.311 24.6193 154.015 8.59214Z" fill="url(#paint8_linear_14352_348651)"/>
+<path d="M171.586 90.0135V70.9903H137.48V50.0273H116.517V70.9903H82.4102V96.2218H135.262L82.4102 167.981V187.004H116.517V207.912H137.48V187.004H171.586V161.773H118.679L171.586 90.0135Z" fill="url(#paint9_linear_14352_348651)"/>
+<path d="M171.586 90.0135V70.9903H137.48V50.0273H116.517V70.9903H82.4102V96.2218H135.262L82.4102 167.981V187.004H116.517V207.912H137.48V187.004H171.586V161.773H118.679L171.586 90.0135Z" fill="url(#paint10_linear_14352_348651)"/>
+<path d="M169.586 86.0135V66.9903H135.48V46.0273H114.517V66.9903H80.4102V92.2218H133.262L80.4102 163.981V183.004H114.517V203.912H135.48V183.004H169.586V157.773H116.679L169.586 86.0135Z" fill="url(#paint11_linear_14352_348651)"/>
+<path d="M169.586 86.0135V66.9903H135.48V46.0273H114.517V66.9903H80.4102V92.2218H133.262L80.4102 163.981V183.004H114.517V203.912H135.48V183.004H169.586V157.773H116.679L169.586 86.0135Z" fill="url(#paint12_linear_14352_348651)"/>
+<path d="M133.479 48.0273H116.517V68.9902H82.4102V90.2217H137.219L82.4102 164.638V181.004H116.517V201.911H133.479V181.004H167.586V159.772H112.72L167.586 85.3555V68.9902H133.479V48.0273ZM169.586 66.9902V86.0137L116.679 157.772H169.586V183.004H135.479V203.911H114.517V183.004H80.4102V163.981L133.262 92.2217H80.4102V66.9902H114.517V46.0273H135.479V66.9902H169.586Z" fill="white"/>
+<defs>
+<linearGradient id="paint0_linear_14352_348651" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFC130"/>
+<stop offset="1" stop-color="#E8A200"/>
+</linearGradient>
+<linearGradient id="paint1_linear_14352_348651" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFB300"/>
+<stop offset="1" stop-color="#CF8700"/>
+</linearGradient>
+<linearGradient id="paint2_linear_14352_348651" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFB300"/>
+<stop offset="1" stop-color="#B87700"/>
+</linearGradient>
+<linearGradient id="paint3_linear_14352_348651" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.725084" stop-color="#CA6800" stop-opacity="0"/>
+<stop offset="1" stop-color="#CA6800" stop-opacity="0.3"/>
+</linearGradient>
+<linearGradient id="paint4_linear_14352_348651" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F3B724"/>
+<stop offset="1" stop-color="#CD9200"/>
+</linearGradient>
+<linearGradient id="paint5_linear_14352_348651" x1="125" y1="0" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F6B71D"/>
+<stop offset="1" stop-color="#B68200"/>
+</linearGradient>
+<linearGradient id="paint6_linear_14352_348651" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFD361"/>
+<stop offset="1" stop-color="#FFCF6D"/>
+</linearGradient>
+<linearGradient id="paint7_linear_14352_348651" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop offset="0.85" stop-color="#FFBF20"/>
+<stop offset="1" stop-color="#DFA310"/>
+</linearGradient>
+<linearGradient id="paint8_linear_14352_348651" x1="125" y1="0.000349739" x2="125" y2="250.003" gradientUnits="userSpaceOnUse">
+<stop stop-color="#FFECC4"/>
+<stop offset="0.15" stop-color="#FFECC4" stop-opacity="0"/>
+</linearGradient>
+<linearGradient id="paint9_linear_14352_348651" x1="126.998" y1="50.0273" x2="126.998" y2="207.912" gradientUnits="userSpaceOnUse">
+<stop stop-color="#DC9B00"/>
+<stop offset="1" stop-color="#AE7B00"/>
+</linearGradient>
+<linearGradient id="paint10_linear_14352_348651" x1="126.998" y1="50.0273" x2="126.998" y2="207.912" gradientUnits="userSpaceOnUse">
+<stop stop-color="#DC9B00"/>
+<stop offset="1" stop-color="#AA7700"/>
+</linearGradient>
+<linearGradient id="paint11_linear_14352_348651" x1="124.998" y1="46.0273" x2="124.998" y2="203.912" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="1" stop-color="#FADD99"/>
+</linearGradient>
+<linearGradient id="paint12_linear_14352_348651" x1="124.998" y1="46.0273" x2="124.998" y2="203.912" gradientUnits="userSpaceOnUse">
+<stop stop-color="white"/>
+<stop offset="0.25" stop-color="#FFF5DC"/>
+<stop offset="1" stop-color="#FADD99"/>
+</linearGradient>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/og_icons/arb-og.svg b/res/pictures/card_icons/og_icons/arb-og.svg
new file mode 100644
index 00000000..fe32a50f
--- /dev/null
+++ b/res/pictures/card_icons/og_icons/arb-og.svg
@@ -0,0 +1,10 @@
+<svg opacity="0.85" width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M44 22C44 34.1503 34.1503 44 22 44C9.84974 44 0 34.1503 0 22C0 9.84974 9.84974 0 22 0C34.1503 0 44 9.84974 44 22Z" fill="#05163D"/>
+<path d="M10.1992 16.6965V27.9153C10.1992 28.6271 10.5788 29.2917 11.2022 29.6438L20.9097 35.2498C21.527 35.6088 22.2929 35.6088 22.9095 35.2498L32.6232 29.6438C33.2405 29.2848 33.6262 28.6271 33.6262 27.9153V16.6965C33.6262 15.9847 33.2467 15.3202 32.6232 14.9612L22.9095 9.35517C22.2929 8.99619 21.527 8.99619 20.9097 9.35517L11.196 14.9612C10.5856 15.3202 10.1992 15.9778 10.1992 16.6965Z" fill="#05163D"/>
+<path d="M24.0375 24.4792L22.6475 28.2752C22.6071 28.3766 22.6071 28.4986 22.6475 28.6006L25.0268 35.1356L27.7856 33.5428L24.4773 24.473C24.4027 24.2696 24.1115 24.2696 24.0368 24.4799L24.0375 24.4792Z" fill="#12AAFF"/>
+<path d="M26.8084 18.0865C26.7337 17.8761 26.4426 17.8761 26.3611 18.0865L24.9717 21.8825C24.9313 21.9907 24.9313 22.1058 24.9717 22.2079L28.8767 32.9116L31.6355 31.3188L26.8091 18.0865H26.8084Z" fill="#12AAFF"/>
+<path d="M21.9143 9.76887C21.9821 9.76887 22.0499 9.78943 22.1109 9.823L32.618 15.8901C32.7399 15.9579 32.8146 16.0867 32.8146 16.2292V28.3633C32.8146 28.5058 32.7399 28.6346 32.618 28.7024L22.1109 34.7763C22.0499 34.8099 21.9821 34.8304 21.9143 34.8304C21.8465 34.8304 21.7787 34.8099 21.7177 34.7763L11.2106 28.7093C11.0887 28.6414 11.014 28.5126 11.014 28.3701V16.2292C11.014 16.0867 11.0887 15.9579 11.2106 15.8901L21.7177 9.823C21.7787 9.78943 21.8465 9.76887 21.9143 9.76887ZM21.9143 8C21.5416 8 21.1621 8.10139 20.8298 8.29116L10.3228 14.3582C9.65823 14.7446 9.23828 15.4564 9.23828 16.2292V28.3633C9.23828 29.1361 9.65207 29.8547 10.3228 30.2411L20.8298 36.3082C21.1621 36.5048 21.5348 36.5993 21.9143 36.5993C22.2938 36.5993 22.6665 36.4979 22.9988 36.3082L33.5058 30.2411C34.1772 29.8547 34.5903 29.1429 34.5903 28.3633V16.2292C34.5903 15.4564 34.1765 14.7378 33.5058 14.3514L22.9988 8.29116C22.6597 8.10139 22.287 8 21.9143 8Z" fill="#9DCCED"/>
+<path d="M14.9688 32.925L15.9381 30.2812L17.8769 31.8946L16.0669 33.5552L14.9688 32.925Z" fill="#05163D"/>
+<path d="M21.0267 15.3669H18.3625C18.1658 15.3669 17.9829 15.4888 17.9151 15.6786L12.207 31.3375L14.9658 32.9303L21.2569 15.6848C21.311 15.5286 21.196 15.3662 21.0261 15.3662L21.0267 15.3669Z" fill="white"/>
+<path d="M25.6925 15.3682H23.0282C22.8316 15.3682 22.6486 15.4901 22.5808 15.6799L16.0664 33.5556L18.8252 35.1485L25.9158 15.6867C25.9768 15.5305 25.8548 15.3682 25.6918 15.3682H25.6925Z" fill="white"/>
+</svg>
diff --git a/res/pictures/card_icons/og_icons/base-og.svg b/res/pictures/card_icons/og_icons/base-og.svg
new file mode 100644
index 00000000..b7acf821
--- /dev/null
+++ b/res/pictures/card_icons/og_icons/base-og.svg
@@ -0,0 +1,4 @@
+<svg opacity="0.85" width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M44 22C44 34.1503 34.1503 44 22 44C9.84974 44 0 34.1503 0 22C0 9.84974 9.84974 0 22 0C34.1503 0 44 9.84974 44 22Z" fill="#0052FE"/>
+<path d="M21.9729 36.4456C29.9552 36.4456 36.4261 29.9859 36.4261 22.0177C36.4261 14.0494 29.9552 7.58984 21.9729 7.58984C14.4 7.58984 8.18733 13.4042 7.57031 20.8049H26.6739V23.2304H7.57031C8.18733 30.6313 14.4 36.4456 21.9729 36.4456Z" fill="white"/>
+</svg>
diff --git a/res/pictures/card_icons/og_icons/bch-og.svg b/res/pictures/card_icons/og_icons/bch-og.svg
new file mode 100644
index 00000000..c7b2f805
--- /dev/null
+++ b/res/pictures/card_icons/og_icons/bch-og.svg
@@ -0,0 +1,11 @@
+<svg opacity="0.85" width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g clip-path="url(#clip0_17214_303342)">
+<path d="M22 44C34.1503 44 44 34.1503 44 22C44 9.84974 34.1503 0 22 0C9.84974 0 0 9.84974 0 22C0 34.1503 9.84974 44 22 44Z" fill="#0AC18E"/>
+<path d="M28.8637 14.6129C27.7581 12.1057 25.2175 11.5697 22.1074 12.089L21.1079 8.21387L18.7515 8.8225L19.7343 12.6865C19.1145 12.8428 18.4779 12.9768 17.847 13.1555L16.8642 9.31387L14.5079 9.9225L15.5074 13.7976C14.9992 13.9428 10.75 15.0316 10.75 15.0316L11.3977 17.5555C11.3977 17.5555 13.1287 17.0697 13.1119 17.1088C14.0723 16.8575 14.5246 17.3377 14.7368 17.79L17.484 28.4103C17.5175 28.7174 17.4617 29.2423 16.8028 29.421C16.8419 29.4433 15.0886 29.8621 15.0886 29.8621L15.3454 32.8047C15.3454 32.8047 19.5556 31.7271 20.1084 31.5875L21.119 35.5073L23.4754 34.8986L22.4647 30.9509C23.1124 30.8002 23.7434 30.6438 24.3576 30.4819L25.3627 34.4073L27.719 33.7986L26.7084 29.8844C30.3378 29.0022 32.9008 26.7129 32.3759 23.2118C32.0409 21.1012 29.7348 19.3702 27.8195 19.1748C28.9977 18.1306 29.5952 16.6063 28.8637 14.6129ZM27.7302 23.854C28.1992 27.3215 23.3805 27.7458 21.7891 28.1646L20.4043 22.9773C22.0013 22.5585 26.9373 20.7997 27.7302 23.854ZM24.8266 16.7905C25.3236 19.8728 21.2028 20.2301 19.8739 20.5707L18.6119 15.8636C19.9464 15.5342 23.816 13.9372 24.8266 16.7905Z" fill="white"/>
+</g>
+<defs>
+<clipPath id="clip0_17214_303342">
+<rect width="44" height="44" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/res/pictures/card_icons/og_icons/bnb-og.svg b/res/pictures/card_icons/og_icons/bnb-og.svg
new file mode 100644
index 00000000..2480c3af
--- /dev/null
+++ b/res/pictures/card_icons/og_icons/bnb-og.svg
@@ -0,0 +1,11 @@
+<svg opacity="0.85" width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M43.3415 27.3223C40.4028 39.1082 28.4645 46.2808 16.676 43.3418C4.8924 40.4034 -2.28105 28.4657 0.659012 16.6805C3.59632 4.89335 15.5347 -2.28003 27.3197 0.658347C39.1074 3.59672 46.2802 15.5358 43.3415 27.3223Z" fill="url(#paint0_linear_17214_303282)"/>
+<path d="M43.3415 27.3223C40.4028 39.1082 28.4645 46.2808 16.676 43.3418C4.8924 40.4034 -2.28105 28.4657 0.659012 16.6805C3.59632 4.89335 15.5347 -2.28003 27.3197 0.658347C39.1074 3.59672 46.2802 15.5358 43.3415 27.3223Z" fill="black"/>
+<path d="M13.9429 11.3173L22.0477 6.59961L30.1524 11.3173L27.1727 13.0601L22.0477 10.0853L16.9226 13.0601L13.9429 11.3173ZM30.1524 17.2669L27.1727 15.5241L22.0477 18.4989L16.9226 15.5241L13.9429 17.2669V20.7526L19.068 23.7274V29.6771L22.0477 31.4199L25.0273 29.6771V23.7274L30.1524 20.7526V17.2669ZM30.1524 26.7023V23.2166L27.1727 24.9594V28.4451L30.1524 26.7023ZM32.268 27.9343L27.143 30.9091V34.3947L35.2477 29.6771V20.2418L32.268 21.9846V27.9343ZM29.2883 14.2921L32.268 16.0349V19.5206L35.2477 17.7778V14.2921L32.268 12.5493L29.2883 14.2921ZM19.068 32.1711V35.6568L22.0477 37.3996L25.0273 35.6568V32.1711L22.0477 33.9139L19.068 32.1711ZM13.9429 26.7023L16.9226 28.4451V24.9594L13.9429 23.2166V26.7023ZM19.068 14.2921L22.0477 16.0349L25.0273 14.2921L22.0477 12.5493L19.068 14.2921ZM11.8273 16.0349L14.807 14.2921L11.8273 12.5493L8.84766 14.2921V17.7778L11.8273 19.5206V16.0349ZM11.8273 21.9846L8.84766 20.2418V29.6771L16.9524 34.3947V30Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.