    .symbol {
      color:var(--blue);
      font-weight:900;
    }
    /* CryptoPro Charts symbol links */
    .tv-link { color:inherit; text-decoration:none; }
    .tv-link:hover { text-decoration:underline; opacity:.8; }

    input,
    select,
    textarea {
      width:100%;
      background:var(--surface2);
      color:var(--text);
      border:1px solid var(--border);
      border-radius:var(--radius);
      padding:9px 10px;
      font-family:inherit;
      font-size:13px;
    }

    textarea {
      min-height:86px;
      resize:vertical;
    }

    label {
      display:block;
      font-size:11px;
      color:var(--muted);
      text-transform:uppercase;
      letter-spacing:.5px;
      font-weight:900;
      margin-bottom:6px;
    }

    .form-grid {
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
      gap:12px;
      margin-bottom:12px;
    }

    .error {
      display:none;
      background:rgba(248,81,73,.1);
      border:1px solid rgba(248,81,73,.35);
      color:var(--red);
      padding:12px 14px;
      border-radius:var(--radius);
      margin-bottom:16px;
    }

    .placeholder {
      color:var(--muted);
      text-align:center;
      padding:32px;
    }

    .spinner {
      display:inline-block;
      width:13px;
      height:13px;
      border:2px solid var(--border);
      border-top-color:var(--blue);
      border-radius:50%;
      vertical-align:-2px;
      animation:spin .7s linear infinite;
    }

    @keyframes spin {
      to { transform:rotate(360deg); }
    }

    #tooltip {
      position:fixed;
      z-index:99999;
      max-width:330px;
      background:#1c2333;
      color:#e6edf3;
      border:1px solid #30363d;
      border-radius:8px;
      padding:8px 10px;
      font-size:12px;
      line-height:1.4;
      box-shadow:0 8px 24px rgba(0,0,0,.35);
      pointer-events:none;
      opacity:0;
      transform:translateY(4px);
      transition:opacity .12s,transform .12s;
    }

    [data-tip] {
      cursor:help;
    }

    .trade-actions {
      display:flex;
      gap:6px;
      flex-wrap:wrap;
    }

    .trade-action-btn {
      background:rgba(88,166,255,.15);
      color:var(--blue);
      border:1px solid rgba(88,166,255,.4);
      padding:5px 9px;
      border-radius:8px;
      cursor:pointer;
      font-size:12px;
      font-weight:850;
    }

    .trade-close-btn {
      background:rgba(248,81,73,.12);
      color:var(--red);
      border:1px solid rgba(248,81,73,.35);
      padding:5px 9px;
      border-radius:8px;
      cursor:pointer;
      font-size:12px;
      font-weight:850;
    }

    .modal-backdrop {
      position:fixed;
      inset:0;
      background:rgba(0,0,0,.62);
      z-index:99990;
      display:none;
      align-items:center;
      justify-content:center;
      padding:18px;
    }

    .modal {
      width:min(580px,100%);
      background:var(--surface);
      border:1px solid var(--border);
      border-radius:14px;
      box-shadow:0 24px 80px rgba(0,0,0,.55);
      overflow:hidden;
    }

    .modal-header {
      padding:16px 18px;
      border-bottom:1px solid var(--border);
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:12px;
    }

    .modal-title {
      font-size:16px;
      font-weight:900;
    }

    .modal-body {
      padding:18px;
    }

    .modal-footer {
      padding:16px 18px;
      border-top:1px solid var(--border);
      display:flex;
      justify-content:flex-end;
      gap:10px;
      flex-wrap:wrap;
    }

    /* ---------- Account / sign-in (Suite SSO) ---------- */
    .acct-btn { display:inline-flex; align-items:center; gap:6px; max-width:160px; }
    .acct-name { max-width:90px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .acct-avatar-fallback {
      display:inline-flex; align-items:center; justify-content:center;
      width:20px; height:20px; border-radius:50%; flex-shrink:0;
      background:var(--blue); color:#fff; font-size:11px; font-weight:700;
    }

    .trade-warning {
      background:rgba(210,153,34,.12);
      border:1px solid rgba(210,153,34,.35);
      color:var(--yellow);
      border-radius:10px;
      padding:10px 12px;
      font-size:12px;
      line-height:1.45;
      margin-bottom:14px;
    }

    .trade-danger {
      background:rgba(248,81,73,.12);
      border:1px solid rgba(248,81,73,.35);
      color:var(--red);
      border-radius:10px;
      padding:10px 12px;
      font-size:12px;
      line-height:1.45;
      margin-bottom:14px;
    }

    .trade-summary {
      background:var(--surface2);
      border:1px solid var(--border);
      border-radius:10px;
      padding:10px 12px;
      font-size:12px;
      color:var(--muted);
      line-height:1.45;
      margin-top:12px;
    }

    footer {
      color:var(--muted);
      font-size:12px;
      padding:16px 24px;
      border-top:1px solid var(--border);
      margin-top:20px;
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:4px 14px;
    }
    .footer-name {
      display:inline-flex;
      align-items:center;
      gap:6px;
      font-weight:700;
      color:var(--text);
      font-size:13px;
    }
    .footer-logo-icon { width:18px; height:18px; border-radius:4px; vertical-align:middle; }
    .footer-studio { display:inline-flex; align-items:center; gap:6px; }
    .footer-sep { color:var(--border); }
    .footer-disclaimer { color:var(--yellow); }
    .footer-terms-link {
      background:none;
      border:none;
      padding:0;
      color:var(--muted);
      font-size:12px;
      text-decoration:underline;
      cursor:pointer;
    }
    .footer-terms-link:hover { color:var(--text); }
    .footer-donate { color:#e0b45c; text-decoration:none; }
    .footer-donate:hover { color:#f0c876; }
    @media(max-width:700px) {
      footer { padding:16px; }
    }

