/* ── Tokens (defaults — overridden by customizer via :root inline style) ── */
:root {
  --bg:      #0a0e17;
  --bg2:     #0d1120;
  --bg3:     #111827;
  --surface: #1a2035;
  --border:  #1e2a42;
  --text:    #e4e8f1;
  --text2:   #8892a8;
  --text3:   #4a5568;
  --accent:  #3375BB;
  --pos:     #22c47a;
  --neg:     #ff4d6a;
  --radius:  12px;
  --radius-sm: 7px;
}
[data-theme="light"] {
  --bg:#f5f7fa; --bg2:#ffffff; --bg3:#eef1f6; --surface:#e8ecf2;
  --border:#d1d9e6; --text:#1a202c; --text2:#4a5568; --text3:#a0aec0;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:15px;line-height:1.5;}
a{color:var(--accent);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;height:auto;}

.container{max-width:1100px;margin:0 auto;padding:0 20px;}

/* ── Header ── */
.twp-header{background:var(--bg2);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;}
.twp-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:60px;}
.twp-logo-text{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--text);}
.twp-logo-text:hover{text-decoration:none;}
.twp-nav-menu{display:flex;list-style:none;gap:24px;}
.twp-nav-menu a{font-size:13px;font-weight:600;color:var(--text2);transition:color .15s;}
.twp-nav-menu a:hover{color:var(--text);text-decoration:none;}
.twp-theme-toggle{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 10px;cursor:pointer;font-size:14px;color:var(--text2);transition:background .15s;}
.twp-theme-toggle:hover{background:var(--surface);}

/* ── Hero ── */
.twp-hero{padding:60px 0;background:linear-gradient(135deg,var(--bg2) 0%,var(--bg) 100%);border-bottom:1px solid var(--border);}
.twp-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:48px;flex-wrap:wrap;}
.twp-hero-text{flex:1;min-width:280px;}
.twp-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(51,117,187,.15);border:1px solid rgba(51,117,187,.3);border-radius:999px;padding:5px 14px;font-size:12px;font-weight:600;color:var(--accent);letter-spacing:.05em;text-transform:uppercase;margin-bottom:20px;}
.twp-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--pos);}
.twp-hero-text h1{font-size:40px;font-weight:800;line-height:1.15;color:var(--text);letter-spacing:-.02em;margin-bottom:16px;}
.twp-hero-text p{font-size:16px;line-height:1.65;color:var(--text2);max-width:460px;margin-bottom:28px;}
.twp-pills{display:flex;flex-wrap:wrap;gap:10px;}
.twp-pill{display:flex;align-items:center;gap:6px;background:var(--bg3);border:1px solid var(--border);border-radius:999px;padding:7px 14px;font-size:13px;color:var(--text2);font-weight:500;}
.twp-mock-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);padding:20px;min-width:260px;max-width:320px;}
.twp-mock-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.twp-mock-title{font-size:13px;font-weight:700;color:var(--text);}
.twp-mock-gear{color:var(--text3);font-size:16px;}
.twp-mock-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin-bottom:4px;}
.twp-mock-amount{font-size:28px;font-weight:800;color:var(--text);letter-spacing:-.02em;}
.twp-mock-change{font-size:13px;font-weight:600;margin-top:4px;}
.twp-mock-change.positive{color:var(--pos);}
.twp-mock-change.negative{color:var(--neg);}
.twp-mock-change.neutral{color:var(--text3);}

/* ── App Section ── */
.twp-app-section{padding:48px 0;}
.twp-app{max-width:480px;margin:0 auto;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;position:relative;}

/* Balance Card */
.twp-balance-card{padding:24px 20px 18px;background:linear-gradient(135deg,var(--bg2),var(--bg3));border-bottom:1px solid var(--border);text-align:center;}
.twp-balance-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);margin-bottom:6px;}
.twp-balance-amount{font-size:34px;font-weight:800;color:var(--text);letter-spacing:-.03em;}
.twp-balance-change{margin-top:6px;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px;}
.twp-balance-change.positive{color:var(--pos);}
.twp-balance-change.negative{color:var(--neg);}
.twp-balance-change.neutral{color:var(--text3);}

/* Tabs */
.twp-tabs{display:flex;background:var(--bg2);border-bottom:1px solid var(--border);}
.twp-tab{flex:1;padding:12px 0;font-size:13px;font-weight:600;color:var(--text3);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s;}
.twp-tab:hover{color:var(--text2);}
.twp-tab.active{color:var(--accent);border-bottom-color:var(--accent);}

/* Tab Content */
.twp-tab-content{display:none;min-height:260px;}
.twp-tab-content.active{display:block;}

/* Assets */
.twp-assets-list{padding:4px 0;}
.twp-asset-item{display:flex;align-items:center;padding:13px 20px;gap:12px;cursor:default;transition:background .12s;border-bottom:1px solid transparent;}
.twp-asset-item:hover{background:var(--bg3);}
.twp-asset-icon{width:40px;height:40px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#fff;flex-shrink:0;overflow:hidden;}
.twp-asset-icon img{width:100%;height:100%;border-radius:50%;}
.twp-asset-info{flex:1;min-width:0;}
.twp-asset-name{font-size:14px;font-weight:600;color:var(--text);}
.twp-asset-sub{font-size:12px;color:var(--text3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.twp-asset-vals{text-align:right;flex-shrink:0;}
.twp-asset-usd{font-size:14px;font-weight:600;color:var(--text);}
.twp-asset-pnl{font-size:12px;font-weight:500;margin-top:2px;}
.twp-asset-del{opacity:0;background:none;border:none;cursor:pointer;color:var(--neg);padding:4px;border-radius:4px;flex-shrink:0;transition:opacity .15s;}
.twp-asset-item:hover .twp-asset-del{opacity:1;}
.pos{color:var(--pos);}
.neg{color:var(--neg);}

/* Empty */
.twp-empty{padding:36px 20px;text-align:center;color:var(--text3);}
.twp-empty p{font-size:14px;}
.twp-empty .sub{font-size:12px;margin-top:6px;}

/* Wallet */
.twp-wallet-section{padding:16px 20px;}
.twp-wallet-row{display:flex;gap:6px;align-items:stretch;margin-top:6px;}
.twp-wallet-row input{flex:1;min-width:0;font-family:monospace;font-size:12px;}
.twp-chain-select{flex-shrink:0;width:76px;font-size:12px;font-weight:600;color:var(--accent);background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:0 6px;}
.twp-btn-action{flex-shrink:0;padding:0 14px;height:38px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:700;cursor:pointer;transition:opacity .15s;}
.twp-btn-action:hover{opacity:.85;}
.twp-wallet-list{margin-top:14px;display:flex;flex-direction:column;gap:8px;}
.twp-wallet-item{display:flex;align-items:center;gap:10px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:11px 14px;}
.twp-wallet-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.twp-wallet-info{flex:1;min-width:0;}
.twp-wallet-addr{font-size:12px;font-weight:600;color:var(--text);font-family:monospace;}
.twp-wallet-chain{font-size:11px;color:var(--text3);margin-top:2px;}
.twp-wallet-val{font-size:13px;font-weight:700;color:var(--text);}
.twp-wallet-rm{background:none;border:none;cursor:pointer;color:var(--text3);padding:3px;border-radius:4px;transition:color .15s;}
.twp-wallet-rm:hover{color:var(--neg);}

/* Add Form */
.twp-add-form{padding:16px 20px;display:flex;flex-direction:column;gap:14px;}
.twp-form-group{display:flex;flex-direction:column;gap:5px;}
.twp-form-group label{font-size:11px;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:6px;}
.twp-optional{font-size:10px;font-weight:400;text-transform:none;letter-spacing:0;opacity:.7;}
input[type=text],input[type=number]{width:100%;background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:13px;padding:9px 11px;outline:none;transition:border-color .15s;-moz-appearance:textfield;}
input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;}
input:focus{border-color:var(--accent);}
input::placeholder{color:var(--text3);}
.twp-search-results{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:180px;overflow-y:auto;margin-top:4px;}
.twp-search-results.hidden{display:none;}
.twp-search-item{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;transition:background .1s;}
.twp-search-item:hover{background:var(--surface);}
.twp-search-icon{width:28px;height:28px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--accent);flex-shrink:0;overflow:hidden;}
.twp-search-icon img{width:100%;height:100%;border-radius:50%;}
.twp-search-name{font-size:13px;font-weight:600;color:var(--text);}
.twp-search-sym{font-size:11px;color:var(--text3);}
.twp-btn-primary{width:100%;padding:11px;background:var(--accent);color:#fff;font-size:14px;font-weight:700;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .15s;}
.twp-btn-primary:hover:not(:disabled){opacity:.85;}
.twp-btn-primary:disabled{opacity:.4;cursor:not-allowed;}

/* Settings Panel */
.twp-panel{position:absolute;inset:0;background:var(--bg2);z-index:10;display:flex;flex-direction:column;}
.twp-panel.hidden{display:none;}
.twp-panel-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);}
.twp-panel-header h3{font-size:15px;font-weight:700;}
.twp-icon-btn{background:none;border:none;cursor:pointer;color:var(--text2);font-size:18px;padding:4px 8px;border-radius:var(--radius-sm);transition:background .15s;}
.twp-icon-btn:hover{background:var(--surface);}
.twp-panel-body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:14px;}
.twp-setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.twp-setting-row label{font-size:13px;font-weight:600;color:var(--text2);}
.twp-setting-row select,#twp-currency{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:13px;padding:6px 10px;outline:none;cursor:pointer;min-width:120px;}
.twp-setting-label{font-size:11px;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;}
.twp-lang-list{display:flex;flex-wrap:wrap;gap:7px;}
.twp-lang-btn{padding:6px 12px;font-size:12px;font-weight:600;background:var(--bg3);border:1px solid var(--border);border-radius:999px;color:var(--text2);cursor:pointer;transition:all .12s;}
.twp-lang-btn:hover{background:var(--surface);}
.twp-lang-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;}
hr{border:none;border-top:1px solid var(--border);}
.twp-btn-secondary{width:100%;padding:10px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text2);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;text-align:left;}
.twp-btn-secondary:hover{background:var(--surface);color:var(--text);}
.twp-btn-danger{width:100%;padding:10px;background:rgba(255,77,106,.1);border:1px solid rgba(255,77,106,.25);border-radius:var(--radius-sm);color:var(--neg);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;text-align:left;}
.twp-btn-danger:hover{background:rgba(255,77,106,.2);}
.twp-settings-fab{position:absolute;top:14px;right:14px;background:none;border:none;cursor:pointer;color:var(--text3);font-size:18px;padding:4px;border-radius:var(--radius-sm);transition:color .15s;}
.twp-settings-fab:hover{color:var(--text);}

/* ── Features Section ── */
.twp-features{padding:60px 0;}
.twp-section-title{font-size:28px;font-weight:800;color:var(--text);text-align:center;margin-bottom:36px;letter-spacing:-.02em;}
.twp-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;}
.twp-feature-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:border-color .15s;}
.twp-feature-card:hover{border-color:var(--accent);}
.twp-feature-icon{font-size:28px;margin-bottom:12px;}
.twp-feature-card h3{font-size:15px;font-weight:700;color:var(--text);margin-bottom:8px;}
.twp-feature-card p{font-size:13px;color:var(--text2);line-height:1.6;}

/* ── Footer ── */
.twp-footer{background:var(--bg2);border-top:1px solid var(--border);padding:24px 0;}
.twp-footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.twp-footer p{font-size:13px;color:var(--text3);}
.twp-footer-links a{font-size:13px;color:var(--text2);}

/* ── Responsive ── */
@media(max-width:680px){
  .twp-hero-text h1{font-size:28px;}
  .twp-hero-inner{flex-direction:column;}
  .twp-mock-card{width:100%;}
  .twp-app{border-radius:0;border-left:none;border-right:none;}
  .twp-footer-inner{flex-direction:column;text-align:center;}
}
