:root { --blue: #2167a5; --blue-deep: #174d7c; --ink: #13202a; --muted-white: rgb(255 255 255 / 90%); --danger: #b9382e; --danger-soft: #fff0ee; --success: #1d8054; --dark: #0c151d; --surface: #111e28; --surface-raised: #172936; --surface-active: #1b3547; --dark-line: #314957; --dark-muted: #c4d0d7; --accent: #55c5dc; font: 14px/1.45 Arial, Helvetica, sans-serif; } * { box-sizing: border-box; } body { width: 390px; min-width: 390px; min-height: 600px; margin: 0; background: var(--blue); color: white; } button, input, textarea, select { font: inherit; } button { cursor: pointer; } button:disabled { cursor: not-allowed; } .wallet-shell { position: relative; width: 390px; height: 600px; overflow: hidden; background: var(--blue); } .screen { width: 100%; height: 100%; background: var(--blue); } .screen[hidden] { display: none; } .wallet-header { height: 72px; display: flex; align-items: center; gap: 11px; padding: 0 20px; border-bottom: 1px solid rgb(255 255 255 / 70%); } .wallet-header img { width: 37px; filter: brightness(0) invert(1); } .wallet-header div { display: grid; } .wallet-header strong { font-size: 18px; } .wallet-header small { color: var(--muted-white); font-size: 14px; } .wallet-header > span { margin-left: auto; font-size: 13px; font-weight: 700; } .screen-content { padding: 28px 24px 22px; } .screen-content.compact { padding-top: 18px; } .eyebrow { font-size: 11px; font-weight: 700; text-transform: uppercase; } h1 { margin: 7px 0 9px; font-size: 27px; line-height: 1.12; letter-spacing: 0; } .intro { margin: 0 0 24px; color: var(--muted-white); line-height: 1.5; } label { display: block; margin-bottom: 8px; font-size: 12px; font-weight: 700; } .input-row { height: 49px; display: grid; grid-template-columns: 1fr auto; border: 1px solid white; background: white; } .input-row:focus-within, textarea:focus { outline: 2px solid rgb(255 255 255 / 28%); outline-offset: 2px; } .input-row input { min-width: 0; border: 0; padding: 0 13px; color: var(--ink); outline: 0; } .reveal { border: 0; border-left: 1px solid #d9e0e5; padding: 0 13px; background: white; color: var(--blue); font-size: 11px; font-weight: 700; } textarea { width: 100%; min-height: 82px; margin-bottom: 13px; resize: none; border: 1px solid white; padding: 11px 13px; color: var(--ink); outline: 0; } .note { display: grid; gap: 2px; margin: 18px 0 23px; border-left: 3px solid var(--accent); padding: 13px; background: var(--surface-raised); color: white; font-size: 12px; } .note span { color: var(--dark-muted); } .compact-note { margin: 12px 0 14px; padding: 10px 13px; } .warning { margin: 18px 0 25px; border-left: 3px solid var(--danger); padding: 13px; background: #321c20; color: #ffbbb5; font-size: 12px; line-height: 1.4; } .warning strong { display: block; } .primary, .secondary { width: 100%; min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 10px; border: 1px solid var(--accent); background: var(--accent); color: #08202b; font-weight: 700; } .primary span { font-size: 18px; } .secondary { min-height: 42px; margin-top: 9px; background: transparent; color: #dcecf3; font-size: 12px; } .secondary:disabled { border-color: rgb(255 255 255 / 35%); color: rgb(255 255 255 / 50%); } .text-button { width: 100%; margin-top: 8px; border: 0; padding: 8px; background: transparent; color: var(--muted-white); } .divider { display: flex; align-items: center; gap: 10px; margin: 17px 0 12px; color: rgb(255 255 255 / 68%); font-size: 12px; text-transform: uppercase; } .divider::before, .divider::after { height: 1px; flex: 1; background: rgb(255 255 255 / 30%); content: ""; } .file-heading { margin-top: 20px; } .file-picker { min-height: 86px; display: flex; align-items: center; gap: 13px; margin-bottom: 24px; border: 1px dashed rgb(255 255 255 / 72%); padding: 14px; background: rgb(255 255 255 / 10%); cursor: pointer; } .file-picker > span:last-child { display: grid; gap: 4px; } .file-picker small { color: rgb(255 255 255 / 68%); font-weight: 400; } .file-icon { width: 34px; height: 34px; display: grid; flex: 0 0 34px; place-items: center; border: 1px solid white; font-size: 22px; font-weight: 400; } .visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; } .loading-screen { position: relative; } .loading-brand { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 34px; } .loading-brand img, .large-logo { width: 148px; filter: brightness(0) invert(1); } .spinner { width: 28px; aspect-ratio: 1; border: 3px solid rgb(255 255 255 / 28%); border-top-color: white; border-radius: 50%; animation: spin 0.85s linear infinite; } .loading-screen > p { position: absolute; bottom: 35px; width: 100%; margin: 0; color: rgb(255 255 255 / 72%); font-size: 12px; text-align: center; text-transform: uppercase; } @keyframes spin { to { transform: rotate(360deg); } } .success-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #55c98a; background: #123727; color: #66dfa0; font-size: 22px; font-weight: 700; } .image-preview { position: relative; height: 142px; margin: 18px 0; overflow: hidden; border: 1px solid var(--dark-line); background: var(--surface); } .image-preview img { width: 100%; height: 100%; display: block; object-fit: contain; } .confirmation { display: grid; grid-template-columns: 18px 1fr; gap: 9px; align-items: start; margin: 14px 0; color: rgb(255 255 255 / 84%); font-size: 11px; line-height: 1.35; } .confirmation input { width: 16px; height: 16px; margin: 0; } .centered-content { height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 36px 28px; text-align: center; } .centered-content { align-items: stretch; } .centered-content .large-logo { align-self: center; width: 92px; margin-bottom: 25px; } .centered-content h1 { text-align: center; } .centered-content .primary { margin-top: 22px; } .dashboard-header { height: 66px; } .account-button { min-width: 105px; max-width: 132px; height: 34px; display: flex; align-items: center; gap: 7px; margin-left: auto; overflow: hidden; border: 1px solid rgb(255 255 255 / 45%); padding: 0 10px; background: transparent; color: white; font-size: 14px; } .account-button > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .network-dot { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #63d18d; } .assets-dashboard { height: calc(100% - 66px); overflow: hidden; } .portfolio-balance { padding: 22px 22px 19px; border-bottom: 1px solid rgb(255 255 255 / 24%); background: var(--blue-deep); } .portfolio-balance > span { color: var(--muted-white); font-size: 14px; text-transform: uppercase; } .portfolio-balance > strong { display: block; margin-top: 4px; font-size: 31px; line-height: 1.2; } .portfolio-balance > strong small { font-size: 13px; } .portfolio-balance p { max-width: 100%; margin: 7px 0 0; overflow: hidden; color: rgb(255 255 255 / 82%); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; } .wallet-actions { height: 88px; display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid rgb(255 255 255 / 24%); } .wallet-actions button { display: grid; place-items: center; align-content: center; gap: 5px; border: 0; border-right: 1px solid rgb(255 255 255 / 18%); background: transparent; color: white; font-size: 14px; font-weight: 700; } .wallet-actions button:last-child { border-right: 0; } .action-icon { width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid rgb(255 255 255 / 65%); font-size: 16px; font-weight: 400; } .asset-ledger { height: calc(100% - 209px); background: var(--dark); color: white; } .asset-filter { height: 42px; display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--dark-line); padding: 5px 19px; background: #0f1a22; } .asset-filter button { border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--dark-muted); font-size: 14px; font-weight: 700; } .asset-filter button.active { border-bottom-color: var(--accent); color: white; } .asset-ledger-heading { height: 45px; display: flex; align-items: center; justify-content: space-between; padding: 0 19px; border-bottom: 1px solid var(--dark-line); } .asset-ledger-heading h1 { margin: 0; font-size: 19px; } .asset-ledger-heading button { width: 30px; height: 30px; border: 0; background: transparent; color: var(--accent); font-size: 17px; } .asset-row { min-height: 66px; display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; gap: 11px; align-items: center; padding: 10px 19px; border-bottom: 1px solid var(--dark-line); background: var(--surface); } .asset-symbol { width: 36px; height: 36px; display: grid; place-items: center; background: var(--blue); color: white; font-size: 12px; font-weight: 700; } .contractless-symbol img { width: 25px; filter: brightness(0) invert(1); } .asset-name, .asset-value { min-width: 0; display: grid; gap: 2px; } .asset-name strong, .asset-value strong { overflow: hidden; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; } .asset-name span, .asset-value span { color: var(--dark-muted); font-size: 13px; } .asset-value { max-width: 125px; text-align: right; } .token-list { max-height: calc(100% - 148px); overflow-y: auto; } .empty-assets { display: grid; gap: 5px; padding: 27px 20px; color: var(--dark-muted); text-align: center; } .empty-assets strong { color: #dce8ee; font-size: 16px; } .empty-assets span { font-size: 14px; } .receive-screen { background: var(--dark); } .receive-screen .wallet-header { background: var(--blue); } .send-screen, .send-review-screen, .send-success-screen { background: var(--dark); color: white; } .send-screen .wallet-header, .send-review-screen .wallet-header, .send-success-screen .wallet-header { background: var(--blue); } .send-content, .send-review-content, .send-success-content { height: calc(100% - 72px); padding: 22px; overflow-y: auto; } .send-content { display: grid; align-content: start; gap: 17px; } .send-content label { color: white; font-size: 14px; } .send-content input, .send-content select { width: 100%; min-height: 48px; border: 1px solid var(--dark-line); padding: 0 13px; background: var(--surface); color: white; outline: 0; } .send-content input:focus, .send-content select:focus { border-color: var(--accent); } .send-amount-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; } .send-amount-row input { border-right: 0; } .send-amount-row > span { min-width: 64px; display: grid; place-items: center; border: 1px solid var(--dark-line); background: var(--surface-raised); color: var(--accent); font-weight: 700; } .field-note { display: block; margin-top: 7px; color: var(--dark-muted); font-size: 13px; } .send-continue { margin-top: 5px; } .send-review-content { padding: 0 22px 24px; } .send-review-amount { margin: 0 -22px 20px; padding: 24px 22px; background: var(--blue-deep); } .send-review-amount > span { color: var(--muted-white); font-size: 13px; text-transform: uppercase; } .send-review-amount strong { display: block; margin-top: 5px; font-size: 29px; } .send-review-amount small { color: var(--accent); font-size: 15px; } .send-review-details { margin: 0 0 18px; } .send-review-details > div { padding: 12px 0; border-bottom: 1px solid var(--dark-line); } .send-review-details dt { margin-bottom: 4px; color: var(--dark-muted); font-size: 13px; } .send-review-details dd { margin: 0; overflow-wrap: anywhere; color: white; font-weight: 700; } .signing-notice { margin: 18px 0; padding-left: 12px; border-left: 3px solid var(--accent); color: var(--dark-muted); } .send-success-content { text-align: center; } .send-success-content p { color: var(--dark-muted); } .send-txid { margin: 24px 0 14px; padding: 14px; border: 1px solid var(--dark-line); background: var(--surface); text-align: left; } .send-txid span { display: block; margin-bottom: 5px; color: var(--dark-muted); font-size: 13px; } .send-txid strong { overflow-wrap: anywhere; } .send-success-content .secondary { margin-bottom: 10px; } .receive-content { height: calc(100% - 72px); overflow-y: auto; padding: 25px 24px 22px; text-align: center; } .receive-label { color: var(--accent); font-size: 12px; font-weight: 700; text-transform: uppercase; } .receive-content h1 { margin-top: 8px; } .receive-content > p { margin: 0 auto 20px; color: var(--dark-muted); font-size: 11px; line-height: 1.45; } .qr-frame { width: 238px; height: 238px; display: grid; place-items: center; margin: 0 auto 19px; border: 1px solid #708693; padding: 8px; background: white; } .qr-frame canvas { width: 220px; height: 220px; display: block; } .receive-address { display: grid; gap: 6px; border: 1px solid var(--dark-line); padding: 13px; background: var(--surface); text-align: left; } .receive-address span { color: var(--dark-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; } .receive-address strong { overflow-wrap: anywhere; color: #e5f0f5; font: 12px/1.4 Consolas, monospace; } .receive-copy { margin-top: 13px; } .nfts-screen, .nft-detail-screen { background: var(--dark); color: white; } .nfts-screen .wallet-header, .nft-detail-screen .wallet-header { background: var(--blue); } .header-refresh { width: 34px; height: 34px; display: grid; place-items: center; margin-left: auto; border: 1px solid rgb(255 255 255 / 70%); background: transparent; color: white; font-size: 18px; } .nfts-content, .nft-detail-content { height: calc(100% - 72px); overflow-y: auto; } .nfts-summary { min-height: 42px; display: flex; align-items: center; justify-content: space-between; padding: 0 18px; border-bottom: 1px solid var(--dark-line); background: #0f1a22; color: var(--dark-muted); font-size: 13px; font-weight: 700; text-transform: uppercase; } .nfts-summary span:first-child { color: var(--accent); } .nfts-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: var(--dark-line); } .nft-card { min-width: 0; display: grid; align-content: start; border: 0; padding: 0; background: var(--surface); color: white; text-align: left; } .nft-card:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; } .nft-card-media { width: 100%; aspect-ratio: 1; display: grid; place-items: center; overflow: hidden; background: #17303e; color: var(--accent); font-size: 28px; font-weight: 700; } .nft-card-media img { width: 100%; height: 100%; display: block; object-fit: cover; } .nft-card-identity { min-height: 116px; display: grid; align-content: start; gap: 3px; padding: 11px 12px 13px; } .nft-card-identity > span { color: var(--accent); font-size: 11px; font-weight: 700; } .nft-card-identity strong { overflow: hidden; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; } .nft-card-identity small { overflow: hidden; color: var(--dark-muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; } .nft-card-identity b { margin-top: 5px; color: white; font-size: 12px; } .nft-card-identity em { color: #e9c667; font-size: 11px; font-style: normal; } .nfts-empty { grid-column: 1 / -1; min-height: 300px; display: grid; place-content: center; gap: 6px; padding: 30px; background: var(--surface); color: var(--dark-muted); text-align: center; } .nfts-empty strong { color: white; font-size: 17px; } .nfts-pagination { min-height: 52px; display: grid; grid-template-columns: 42px 1fr 42px; align-items: center; gap: 10px; padding: 7px 14px; border-top: 1px solid var(--dark-line); background: #0f1a22; text-align: center; } .nfts-pagination[hidden] { display: none; } .nfts-pagination button { width: 38px; height: 38px; border: 1px solid var(--dark-line); background: var(--surface); color: var(--accent); font-size: 17px; } .nfts-pagination button:disabled { color: #61727c; } .nfts-pagination span { color: var(--dark-muted); font-size: 13px; } .nft-detail-media { width: 100%; aspect-ratio: 16 / 11; display: grid; place-items: center; overflow: hidden; border-bottom: 1px solid var(--dark-line); background: #142934; } .nft-detail-media img { width: 100%; height: 100%; display: block; object-fit: contain; } .nft-detail-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 15px; align-items: end; padding: 18px 20px 14px; } .nft-detail-heading > div { min-width: 0; } .nft-detail-heading span { color: var(--accent); font-size: 11px; font-weight: 700; } .nft-detail-heading h1 { overflow-wrap: anywhere; margin: 4px 0 0; font-size: 23px; } .nft-detail-heading > strong { color: #63d18d; font-size: 13px; text-align: right; } .nft-detail-description { margin: 0; padding: 0 20px 17px; color: var(--dark-muted); font-size: 14px; line-height: 1.5; } .nft-detail-attributes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; padding: 0 20px 18px; } .nft-detail-attributes[hidden] { display: none; } .nft-detail-attributes > div { min-width: 0; display: grid; gap: 2px; border: 1px solid var(--dark-line); padding: 9px; background: var(--surface-raised); } .nft-detail-attributes span { overflow: hidden; color: var(--dark-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; } .nft-detail-attributes strong { overflow-wrap: anywhere; font-size: 13px; } .nft-detail-fields { margin: 0; border-top: 1px solid var(--dark-line); } .nft-detail-fields > div { display: grid; gap: 4px; padding: 12px 20px; border-bottom: 1px solid var(--dark-line); } .nft-detail-fields dt { color: var(--dark-muted); font-size: 12px; } .nft-detail-fields dd { margin: 0; overflow-wrap: anywhere; color: white; font: 12px/1.45 Consolas, monospace; } .nft-detail-actions { padding: 18px 20px 0; } .nft-provenance { padding: 18px 20px 25px; } .nft-provenance h2 { margin: 0 0 11px; font-size: 16px; } .nft-provenance p { color: var(--dark-muted); } .nft-history-row { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3px 12px; border: 0; padding: 10px 0; border-bottom: 1px solid var(--dark-line); background: transparent; color: white; text-align: left; } .nft-history-row:hover, .nft-history-row:focus-visible { background: var(--surface-raised); } .nft-history-row:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; } .nft-history-row strong { font-size: 13px; } .nft-history-row span { color: var(--dark-muted); font-size: 12px; text-align: right; } .nft-history-row small { grid-column: 1 / -1; color: var(--accent); font: 11px Consolas, monospace; } .activity-screen { background: var(--dark); color: white; } .activity-screen .wallet-header { background: var(--blue); } .activity-content { height: calc(100% - 72px); overflow-y: auto; } .activity-summary { min-height: 42px; display: flex; align-items: center; justify-content: space-between; padding: 0 18px; border-bottom: 1px solid var(--dark-line); background: #0f1a22; color: var(--dark-muted); font-size: 13px; text-transform: uppercase; } .activity-summary strong { color: var(--accent); font-size: 13px; } .activity-summary > div { display: flex; align-items: center; gap: 8px; } .activity-summary button { width: 30px; height: 30px; border: 1px solid var(--dark-line); background: transparent; color: var(--accent); font-size: 17px; } .activity-list { background: var(--surface); } .activity-row { width: 100%; min-height: 98px; display: grid; grid-template-columns: 31px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 11px 17px; border-bottom: 1px solid var(--dark-line); border-top: 0; border-right: 0; border-left: 0; background: transparent; color: white; text-align: left; } .activity-row:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; } .activity-marker { width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid #607987; color: var(--accent); font-size: 13px; font-weight: 700; } .activity-marker.incoming, .activity-status .incoming { color: #63d18d; } .activity-marker.outgoing, .activity-status .outgoing { color: white; } .activity-details, .activity-status { min-width: 0; display: grid; gap: 2px; } .activity-details strong { overflow: hidden; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; } .activity-details span { color: #c1d0d8; font: 13px Consolas, monospace; } .activity-details small, .activity-status span { color: var(--dark-muted); font-size: 13px; } .activity-status { max-width: 132px; text-align: right; } .activity-status strong { font-size: 14px; white-space: nowrap; } .activity-status .confirmed { color: #63d18d; } .activity-status .pending { color: #e9c667; } .activity-empty { display: grid; gap: 6px; padding: 42px 24px; color: var(--dark-muted); font-size: 14px; text-align: center; } .activity-empty strong { color: #dce8ee; font-size: 16px; } .activity-error { color: #ffaaa4; } .transaction-screen { background: var(--dark); color: white; } .transaction-screen .wallet-header { background: var(--blue); } .transaction-confirmed { color: #84e7aa; } .transaction-pending { color: #f1d27b; } .transaction-content { height: calc(100% - 72px); overflow-y: auto; padding-bottom: 24px; } .transaction-identity { display: grid; gap: 13px; padding: 18px; border-bottom: 1px solid var(--dark-line); background: var(--surface-raised); } .transaction-identity > div { display: grid; gap: 7px; } .transaction-identity span, .transaction-field span { color: var(--dark-muted); font-size: 12px; font-weight: 700; text-transform: uppercase; } .transaction-identity strong { overflow-wrap: anywhere; color: white; font: 13px/1.55 Consolas, monospace; } .transaction-identity button { min-height: 40px; border: 1px solid var(--accent); background: transparent; color: var(--accent); font-size: 14px; font-weight: 700; } .transaction-section { border-top: 1px solid var(--dark-line); } .transaction-section h2 { margin: 0; padding: 16px 18px 10px; font-size: 16px; } .transaction-fields { display: grid; } .transaction-field { display: grid; gap: 6px; padding: 13px 18px; border-bottom: 1px solid var(--dark-line); background: var(--surface); } .transaction-field strong { overflow-wrap: anywhere; color: white; font-size: 15px; font-weight: 600; line-height: 1.45; } .transaction-technical { border-top: 1px solid var(--dark-line); } .transaction-technical summary { padding: 17px 18px; color: var(--accent); font-size: 15px; font-weight: 700; cursor: pointer; } .technical-field strong { font: 12px/1.55 Consolas, monospace; word-break: break-all; } .drawer-backdrop { position: absolute; inset: 0; z-index: 10; background: rgb(9 26 39 / 54%); } .account-drawer { position: absolute; top: 0; right: 0; bottom: 0; z-index: 11; width: 338px; display: flex; flex-direction: column; border-left: 1px solid var(--dark-line); background: var(--dark); color: white; transform: translateX(100%); transition: transform 180ms ease-out; } .account-drawer.open { transform: translateX(0); } .drawer-header { height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 0 18px; border-bottom: 1px solid var(--dark-line); background: var(--blue); color: white; } .drawer-header > div { display: grid; gap: 2px; } .drawer-header strong { font-size: 19px; } .drawer-header span { color: var(--muted-white); font-size: 14px; } .drawer-header button { width: 34px; height: 34px; border: 1px solid rgb(255 255 255 / 45%); background: transparent; color: white; font-size: 23px; line-height: 1; } .drawer-section { max-height: 244px; overflow-y: auto; padding: 17px 15px 14px; border-bottom: 1px solid var(--dark-line); } .drawer-label { display: block; margin: 0 3px 8px; color: var(--dark-muted); font-size: 13px; font-weight: 700; text-transform: uppercase; } .known-address { width: 100%; min-height: 58px; display: grid; grid-template-columns: minmax(0, 1fr) 30px; gap: 4px; align-items: center; border: 1px solid var(--dark-line); padding: 4px; background: var(--surface); color: white; } .known-address + .known-address { margin-top: 7px; } .known-address.active-address { border-color: var(--accent); background: var(--surface-active); } .address-select { min-width: 0; min-height: 48px; display: grid; grid-template-columns: 36px minmax(0, 1fr) 20px; gap: 10px; align-items: center; border: 0; padding: 5px 6px; background: transparent; color: white; text-align: left; } .rename-address { width: 28px; height: 34px; border: 0; background: transparent; color: var(--accent); font-size: 16px; } .address-avatar { width: 34px; height: 34px; display: grid; place-items: center; background: #204f70; } .address-avatar img { width: 24px; filter: brightness(0) invert(1); } .address-details { min-width: 0; display: grid; gap: 2px; } .address-details strong { font-size: 15px; } .address-details small { overflow: hidden; color: var(--dark-muted); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; } .selected-mark { color: var(--success); font-size: 14px; font-weight: 700; } .drawer-navigation { display: grid; padding: 8px 0; } .drawer-navigation button { min-height: 72px; display: grid; grid-template-columns: 34px minmax(0, 1fr) 16px; gap: 10px; align-items: center; border: 0; border-bottom: 1px solid var(--dark-line); padding: 9px 18px; background: transparent; color: white; text-align: left; } .drawer-navigation button > span:nth-child(2) { display: grid; gap: 2px; } .drawer-navigation strong { font-size: 16px; } .drawer-navigation small { color: var(--dark-muted); font-size: 13px; } .menu-icon { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid #607987; color: var(--accent); font-size: 15px; font-weight: 700; } .menu-arrow { color: var(--dark-muted); font-size: 20px; text-align: right; } .drawer-lock { min-height: 46px; display: flex; align-items: center; justify-content: center; gap: 8px; margin: auto 15px 15px; border: 1px solid var(--dark-line); background: var(--surface-raised); color: #dce8ee; font-size: 14px; font-weight: 700; } .header-back { width: 34px; height: 34px; border: 1px solid rgb(255 255 255 / 45%); background: transparent; color: white; font-size: 18px; } .settings-screen { background: var(--dark); color: white; } .settings-screen .wallet-header { background: var(--blue); color: white; } .settings-content { height: calc(100% - 72px); overflow-y: auto; padding-bottom: 20px; } .settings-group { padding: 18px 20px; border-bottom: 1px solid var(--dark-line); background: var(--surface); } .settings-heading { display: grid; gap: 3px; margin-bottom: 15px; } .settings-heading strong { font-size: 13px; } .settings-heading span { color: var(--dark-muted); font-size: 12px; line-height: 1.4; } .settings-group label { color: #b7c6ce; font-size: 12px; text-transform: uppercase; } .settings-group input, .settings-group select { width: 100%; height: 44px; border: 1px solid #8699a5; padding: 0 11px; background: white; color: var(--ink); outline: 0; } .settings-group input:focus, .settings-group select:focus { border-color: var(--blue); outline: 2px solid rgb(33 103 165 / 14%); } .settings-save { width: calc(100% - 40px); margin: 16px 20px; border-color: var(--accent); background: var(--accent); color: #08202b; } .backup-settings { padding-right: 0; padding-left: 0; } .backup-settings .settings-heading { padding: 0 20px; } .settings-action { width: 100%; min-height: 61px; display: grid; grid-template-columns: 34px minmax(0, 1fr) 16px; gap: 10px; align-items: center; border: 0; border-top: 1px solid var(--dark-line); padding: 9px 20px; background: transparent; color: white; text-align: left; } .settings-action:last-child { border-bottom: 1px solid var(--dark-line); } .settings-action > span:nth-child(2) { display: grid; gap: 2px; } .settings-action strong { font-size: 14px; } .settings-action small { color: var(--dark-muted); font-size: 11px; } .settings-action > span:last-child { color: var(--dark-muted); font-size: 20px; } .settings-action-icon { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid #607987; color: var(--accent); font-size: 15px; font-weight: 700; } .private-key-result { margin: 16px 20px 0; border: 1px solid var(--dark-line); padding: 13px; background: var(--surface-raised); } .private-key-result > div { display: flex; align-items: center; justify-content: space-between; margin-bottom: 9px; } .private-key-result > div > strong { font-size: 11px; text-transform: uppercase; } .private-key-result > div > button { width: 28px; height: 28px; border: 0; background: transparent; color: var(--dark-muted); font-size: 19px; } .private-key-result textarea { height: 95px; min-height: 95px; margin: 0 0 10px; border: 1px solid #8699a5; padding: 9px; background: white; color: var(--ink); font-size: 11px; } .private-key-result .secondary { border-color: var(--accent); color: var(--accent); } .modal-backdrop { position: absolute; inset: 0; z-index: 30; background: rgb(9 26 39 / 68%); } .backup-key-modal { position: absolute; top: 50%; right: 20px; left: 20px; z-index: 31; border: 1px solid white; background: var(--blue); color: white; transform: translateY(-50%); } .backup-key-modal > header { min-height: 65px; display: flex; align-items: center; justify-content: space-between; padding: 12px 15px; border-bottom: 1px solid rgb(255 255 255 / 40%); } .backup-key-modal > header > div { display: grid; gap: 2px; } .backup-key-modal > header strong { font-size: 13px; } .backup-key-modal > header span { color: var(--muted-white); font-size: 11px; } .backup-key-modal > header button { width: 30px; height: 30px; border: 1px solid rgb(255 255 255 / 45%); background: transparent; color: white; font-size: 20px; } .backup-key-modal > div { padding: 17px 15px; } .backup-key-modal .primary { margin-top: 16px; } #notice { position: absolute; right: 18px; bottom: 14px; left: 18px; z-index: 40; margin: 0; padding: 10px 12px; border: 1px solid #8d4448; border-left: 3px solid #ff7168; background: #321c20; color: #ffc0bb; font-size: 11px; } #notice:empty { display: none; } .provider-approval-screen { display: flex; flex-direction: column; } .provider-approval-screen .screen-content { min-height: 0; flex: 1; overflow-y: auto; padding-bottom: 18px; } .approval-context { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .approval-context .eyebrow { min-width: 0; overflow-wrap: anywhere; } .risk-label { flex: 0 0 auto; padding: 5px 8px; border: 1px solid currentColor; font-size: 11px; font-weight: 700; text-transform: uppercase; } .risk-safe { background: #123b2d; color: #63e5a9; } .risk-low { background: #403612; color: #ffe16c; } .risk-high { background: #481f24; color: #ff8b8b; } .approval-details { display: grid; grid-template-columns: minmax(100px, 0.8fr) minmax(0, 1.4fr); margin: 20px 0; border: 1px solid #315466; background: #091923; } .approval-details dt, .approval-details dd { min-width: 0; margin: 0; padding: 11px 12px; border-bottom: 1px solid #203d4c; overflow-wrap: anywhere; } .approval-details dt { color: #85dce8; font-size: 12px; font-weight: 700; text-transform: capitalize; } .approval-details dd { color: #f5f9fb; font: 13px/1.45 Arial, Helvetica, sans-serif; white-space: pre-wrap; } .approval-details dt:last-of-type, .approval-details dd:last-of-type { border-bottom: 0; } .approval-actions { display: grid; flex: 0 0 auto; grid-template-columns: 1fr 1fr; gap: 10px; padding: 14px 24px 18px; border-top: 1px solid rgb(255 255 255 / 35%); background: var(--blue-deep); } .approval-actions button { min-height: 48px; margin: 0; } .approval-actions button.is-processing::before { width: 15px; height: 15px; content: ""; border: 2px solid currentcolor; border-right-color: transparent; border-radius: 50%; animation: approval-spin 700ms linear infinite; } .approval-actions button:disabled { opacity: 0.72; } @keyframes approval-spin { to { transform: rotate(360deg); } } .network-choice { display: grid; grid-template-columns: 1fr 1fr; width: 100%; margin: 0 0 18px; border: 1px solid #5b8caf; background: #0a1b27; } .network-choice button { min-height: 42px; border: 0; border-right: 1px solid #315466; background: transparent; color: #b9cfdb; font: 700 13px/1 Arial, Helvetica, sans-serif; } .network-choice button:last-child { border-right: 0; } .network-choice button.active { background: #43d6e8; color: #06151e; } .drawer-network { margin: 8px 0 0; } .settings-help { display: block; margin-top: 8px; color: #a9c2cf; font-size: 12px; line-height: 1.45; }